[gst-devel] Problem with a pipeline: Internal data flow error/Internal data stream error

Stefano Balocco stefano.balocco at gmail.com
Sun Feb 6 16:40:40 CET 2011


Hello,
       I have a strange error with a pipeline. I tried to run this pipeline:
demuxer.current_audio ! a52dec mode=2 ! twolame bitrate=224 ! queue
max-size-buffers=0 max-size-bytes=0 max-size-time=0 ! muxer.
demuxer.current_video ! mpeg2dec ! ffdeinterlace ! ffvideoscale
method=10 ! video/x-raw-yuv, width=352, height=576 ! mpeg2enc format=8
aspect=2
bitrate=2304 non-video-bitrate=224 quantisation=8
motion-search-radius=32  reduction-4x4=1 reduction-2x2=1
max-gop-size=15 closed-gop=true
force-b-b-p=true intra-dc-prec=10  quant-matrix=1 bufsize=230
interlace-mode=0  ! queue max-size-buffers=0 max-size-bytes=0
max-size-time=0 ! muxer.   mplex name=muxer format=8 vbr=true
bufsize=230 ! filesink location=filename.mpg  filesrc
location=filename.vob ! dvddemux name=demuxer

This pipeline end with this error:
ERRORE dall'elemento /GstPipeline:pipeline0/GstFileSrc:filesrc0:
Errore interno nel flusso di dati. (that's the italian translation of
internal data flow error)
Informazioni di debug aggiuntive:
gstbasesrc.c(2543): gst_base_src_loop ():
/GstPipeline:pipeline0/GstFileSrc:filesrc0:
streaming task paused, reason not-negotiated (-4)

Using GST_DEBUG="*:3" gst-launch-0.10 ...

I notice a warning before the error:
0:16:32.129169246 24389 0x7f7f10002090 WARN           basetransform
gstbasetransform.c:1054:gst_base_transform_acceptcaps:<capsfilter0>
transform could not transform video/x-raw-yuv, format=(fourcc)I420,
width=(int)720, height=(int)576, pixel-aspect-ratio=(fraction)16/15,
framerate=(fraction)25/1, interlaced=(boolean)false in anything we
support
0:16:32.130138551 24389 0x7f7f10002090 WARN           basetransform
gstbasetransform.c:1054:gst_base_transform_acceptcaps:<ffmpegscale0>
transform could not transform video/x-raw-yuv, format=(fourcc)I420,
width=(int)720, height=(int)576, pixel-aspect-ratio=(fraction)16/15,
framerate=(fraction)25/1, interlaced=(boolean)false in anything we
support

I tried also to change from dvddemux to ffdemux_mpeg and I received a
different error:
ERRORE: dall'elemento /GstPipeline:pipeline0/ffdemux_mpeg:demuxer:
Internal data stream error.
Informazioni di debug aggiuntive:
gstffmpegdemux.c(1502): gst_ffmpegdemux_loop ():
/GstPipeline:pipeline0/ffdemux_mpeg:demuxer:
streaming stopped, reason not-negotiated

I tried also to change the decoder from mpeg2dec to ffdec_mpeg2video
but the error was the same.

If I simply try to demux/mux it with a pipe like:
demuxer.current_audio ! queue max-size-buffers=0 max-size-bytes=0
max-size-time=0 ! muxer.   demuxer.current_video ! queue
max-size-buffers=0 max-size-bytes=0 max-size-time=0 ! muxer.   mplex
name=muxer format=8 vbr=true bufsize=230 ! filesink
location=filename.mpg  filesrc
location=filename.vob ! dvddemux name=demuxer

I receive no errors.

I thought that was an error in the original file but the length of the
outputs is different:
1) Original file is 3609.84 sec long (but with mplayer I can see till
3611.3, but is only a black screen after the end).
2) The transcoded file that I obtained decoding with mpeg2dec is
reported as 3605.14 sec long (but with mplayer I can see till 3608.4).
3) The transcoded file that I obtained decoding with ffdec_mpeg2video
is 3605.35 sec long (but with mplayer I can see till 3608.1).

Regards,
            Stefano

-- 
Stefano Balocco




More information about the gstreamer-devel mailing list