Internal data flow error on appsink appsrc pipelines
Tim-Philipp Müller
t.i.m at zen.co.uk
Tue May 28 11:41:07 PDT 2013
On Mon, 2013-05-27 at 16:29 -0700, Richard Cagley wrote:
> I have an appsink that is reading from a file. This gets modified and
> then read from an appsrc and goes out to a display.
> Here are in/out pipelines
> // creating pipelines from strings
> sprintf(pipelineInStr, "filesrc location=movie.avi ! decodebin !
> ffmpegcolorspace ! queue ! appsink name=\"%s\"",app_sink_name);
> sprintf(pipelineOutStr, "appsrc name=\"%s\" ! queue !
> ximagesink",app_src_name);
>
>
> I always get a "Internal data flow error." What would cause this?
Do you set caps on appsrc before pushing a buffer into it? If not, do
you set caps on the buffer that you push into it?
I'm assuming the internal flow error you get is a 'not-negotiated' one.
This can be caused by a) no caps specified where caps are required b)
wrong caps, c) incomplete caps (some field missing, check the debug log
of GST_DEBUG=*:sink), d) incompatible caps.
One problem here is that no negotiation happens across that
appsink/appsrc link. Maybe you need another ffmpegcolorspace in front of
the ximagesink.
Otherwise check the GST_DEBUG=*:6 log and grep for the first occurence
of "not-negotiated", then look at the lines before that.
Cheers
-Tim
More information about the gstreamer-devel
mailing list