GNOME Bugzilla – Bug 327257
playing mpeg video hangs
Last modified: 2006-01-18 09:34:52 UTC
gst-launch-0.10 --gst-debug="*:3" filesrc location=avseq01.mpg ! mpegdemux .video_00 ! ffdec_mpeg2video ! xvimagesink the mpeg has been produced by 'vcdxrip'. The is the part from the --gst-debug="*:3" output. The 'ffdec_mpeg2video0' lines go into a loop. INFO (0x8134068 - 0:00:01.232544000) GST_EVENT(15322) gstevent.c(446):gst_event_new_new_segment: creating newsegment update 0, rate 1,000000, format GST_FORMAT_TIME, start 0:00:00. 000000000, stop 5124095:34:33.709551615, position 0:00:00.000000000 WARN (0x8134068 - 0:00:01.232692000) mpegdemux(15322) gstmpegdemux.c(724):gst_mpeg_demux_parse_packet:<mpegdemux0> unknown stream id 0xbe WARN (0x8134068 - 0:00:01.232783000) ffmpeg(15322) gstffmpegdec.c(1223):gst_ffmpegdec_chain:<ffdec_mpeg2video0> error: ffdec_mpeg2video: input format was not set before data sta rt INFO (0x8134068 - 0:00:01.232894000) GST_ERROR_SYSTEM(15322) gstelement.c(1479):gst_element_message_full:<ffdec_mpeg2video0> posting message: Internal GStreamer error: negotiation problem . Please file a bug at http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer. INFO (0x8134068 - 0:00:01.233000000) GST_ERROR_SYSTEM(15322) gstelement.c(1493):gst_element_message_full:<ffdec_mpeg2video0> posted message: Internal GStreamer error: negotiation problem. Please file a bug at http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer. WARN (0x8134068 - 0:00:01.290499000) ffmpeg(15322) gstffmpegdec.c(1223):gst_ffmpegdec_chain:<ffdec_mpeg2video0> error: ffdec_mpeg2video: input format was not set before data sta rt
unknown stream id 0xbe should not appear in CVS, because it's suppressed for that (known) padding stream type now. "input format was not set before data sta rt" implies that the decoder was never opened, which implies in turn that the setcaps method of the ffmpeg decoder was never called. We need to figure out why that might happen. Perhaps buffers are being pushed without caps, which the mpeg demuxer should never do.
gst-launch-0.10 playbin uri=file:///home/ensonic/projects/gstreamer-0.10/media/avseq01.mpg now works with cvs of today
also tried these with no success > gst-launch-0.10 --gst-debug="*:3" filesrc location=avseq01.mpg ! flupsdemux .audio_00 ! flump3dec ! alsasink > gst-launch-0.10 --gst-debug="*:2" filesrc location=avseq01.mpg ! flupsdemux .video_00 ! ffdec_mpeg2video ! xvimagesink WARN (0x8051230 - 0:00:00.967595000) ffmpeg(20252) gstffmpegcodecmap.c(843):gst_ffmpeg_codecid_to_caps: No caps found for codec_id=94209 WARN (0x8051230 - 0:00:00.972152000) ffmpeg(20252) gstffmpegcodecmap.c(843):gst_ffmpeg_codecid_to_caps: No caps found for codec_id=1 WARN (0x8051230 - 0:00:01.077518000) ffmpeg(20252) gstffmpegcodecmap.c(843):gst_ffmpeg_codecid_to_caps: No caps found for codec_id=86016 WARN (0x8051230 - 0:00:01.135155000) ffmpeg(20252) gstffmpegcodecmap.c(843):gst_ffmpeg_codecid_to_caps: No caps found for codec_id=86022 WARN (0x8051230 - 0:00:01.137964000) ffmpeg(20252) gstffmpegcodecmap.c(843):gst_ffmpeg_codecid_to_caps: No caps found for codec_id=94208 WARN (0x8051230 - 0:00:01.255092000) ffmpeg(20252) gstffmpegcodecmap.c(843):gst_ffmpeg_codecid_to_caps: No caps found for codec_id=94209 Setting pipeline to PAUSED ... Pipeline is PREROLLING ...
eheh, mpegdemux wasn't setting caps on outgoing buffers :) 2006-01-18 Edward Hervey <edward@fluendo.com> * gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_send_subbuffer): tss tss... always set caps on outgoing buffer.