GNOME Bugzilla – Bug 587402
[ffdemux_dv] can't handle any dv file.
Last modified: 2013-07-17 09:03:23 UTC
-- steps to reproduce: download pond.dv from http://prdownloads.sourceforge.net/libdv/pond.dv?download ( http://libdv.sourceforge.net/ ) [KO] gst-launch-0.10 filesrc location=pond.dv ! ffdemux_dv ! ffdec_dvvideo ! xvimagesink [KO] gst-launch-0.10 filesrc location=pond.dv ! dvdemux ! ffdec_dvideo ! xvimagesink [KO] gst-launch-0.10 filesrc location=pond.dv ! ffdemux_dv ! dvdec ! xvimagesink [OK] gst-launch-0.10 filesrc location=pond.dv ! dvdemux ! dvdec ! xvimagesink [OK] ffplay pond.dv -- Expected Results: ffdemux_dv and ffdec_dvvideo should work because ffplay can play the pond.dv file. -- Other informations: libdv not available on win32 (mingw or vc) dshowdecwrapper could supports the dshow "DV Video Decoder" filter. but gstreamer has not wrapper for dshow demuxers ("DV Splitter" here)
The main problem is with the demuxer. It scans the *whole* file looking for streams... which takes forever with these big dv files. So I'm seeing the following: ffdemux_dv ! ffdec_dvvideo FAIL ffdemux_dv ! dvdec FAIL dvdemux ! ffdec_dvvideo OK dvdemux ! dvdec OK When using ffdemux_dv and that file ... we get the following message: ffmpeg :0:: Can't determine profile of DV input stream. With some other files (that have both audio and video), I get this message when ffmpeg has finished parsing the whole file: ffmpeg :0:: Cannot find DV header. ...
Is it an unsolvable problem ? Any other information ?
This is what I have with the currect git version: ffdemux_dv ! ffdec_dvvideo FAIL dvdemux ! ffdec_dvvideo FAIL ffdemux_dv ! dvdec OK dvdemux ! dvdec OK So now the problem seems to come only from ffdec_video. ** log when using dvdemux ! ffdec_dvvideo: 2 warnings : ffmpeg gstffmpegdec.c:1820:gst_ffmpegdec_video_frame: Change in interlacing ! picture:1, recorded:0 ffmpeg gstffmpegdec.c:2259:gst_ffmpegdec_frame:<ffdec_dvvideo0> ffdec_dvvideo: decoding error (len: -1, have_data: 0) ** log when using ffdemux_dv ! ffdec_dvvideo: 6warnings: ffmpeg gstffmpegcodecmap.c:138:gst_ff_channel_layout_to_gst: Unknown channels in channel layout - assuming NONE layout ffmpeg gstffmpegdec.c:1820:gst_ffmpegdec_video_frame: Change in interlacing ! picture:1, recorded:0 ffmpeg gstffmpegdec.c:2259:gst_ffmpegdec_frame:<ffdec_dvvideo0> ffdec_dvvideo: decoding error (len: -1, have_data: 0) ffmpeg gstffmpegdemux.c:1467:gst_ffmpegdemux_loop:<ffdemux_dv0> stream_movi flow: not-negotiated / not-negotiated ffmpeg gstffmpegdemux.c:1516:gst_ffmpegdemux_loop:<ffdemux_dv0> error: Internal data stream error. ffmpeg gstffmpegdemux.c:1516:gst_ffmpegdemux_loop:<ffdemux_dv0> error: streaming stopped, reason not-negotiated
ffmpeg DV demuxer isn't exposed anymore. dvdemux ! dvdec works fine dvdemux ! avdec_dvvideo works fine