GNOME Bugzilla – Bug 433491
GStreamer / FFMpeg Plug-in / MPEG4 / MP4 / mpeg4 video
Last modified: 2007-04-26 08:38:11 UTC
# gst-launch -v filesrc location=/MEDIA/test_qcif.m4v ! ffdec_mpeg4 ! identity ! ffmpegcolorspace ! videoscale ! autovideosink --> LOG .......................... [gstffmpegdec.c:1666] [gst_ffmpegdec_sink_event] /pipeline0/identity0: last-message = "event ******* (identity0:sink) E (type: 102, GstEventNewsegment, update=(boolean)false, rate=(double)1, applied_rate=(double)1, format=(GstFormat)GST_FORMAT_TIME, start=(gint64)0, stop=(gint64)-1, position=(gint64)0) 0x9fc20a0" [gstffmpegdec.c:1806] [gst_ffmpegdec_chain] ERROR: from element /pipeline0/ffdec_mpeg40: Internal GStreamer error: negotiation problem. Please file a bug at http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer. Additional debug info: gstffmpegdec.c(2010): gst_ffmpegdec_chain (): /pipeline0/ffdec_mpeg40: ffdec_mpeg4: input format was not set before data start ERROR: pipeline doesn't want to preroll. Setting pipeline to NULL ... [gstffmpegdec.c:2025] [gst_ffmpegdec_change_state] [gstffmpegdec.c:445] [gst_ffmpegdec_close] [gstffmpegdec.c:2025] [gst_ffmpegdec_change_state] FREEING pipeline ... ..... my ??? Questions!! 1) Why error occured? please tell me, solution of this ploblem. 2) What is pipeline for MPEG 4 video play? < What do i using element or plug-in? > -- please help me. ah.. using playbin plug-in, mpeg 4 video play. so command-line(gst-launch), manual pipeline can't play.
*** Bug 433500 has been marked as a duplicate of this bug. ***
This is the problem: gstffmpegdec.c(2010): gst_ffmpegdec_chain (): /pipeline0/ffdec_mpeg40: ffdec_mpeg4: input format was not set before data start At the very minimum you need a typefind element in front of ffdec_mpeg4, so that caps are set on the incoming buffers, so that ffdec_* knows which format it is. If this is a raw video bitstream that is not in a container, you might need a parser in front of ffdec_mpeg4 as well, but I am not sure if we even have a parser for this. In general, it's better to put MPEG-4 content into a container and then use demuxer ! ffdec_mpeg4. If playbin/decodebin play it, check what elements it is plugging (gst-launch-0.10 -v will tell you the element names when the caps change). Also check the gstreamer-devel mailing list for additional support.