GNOME Bugzilla – Bug 589361
[ffdec_flac] extradata NULL or too small error
Last modified: 2011-09-26 18:59:03 UTC
tpm@zingle:~/gst/git/gst-ffmpeg$ gst-launch-0.10 filesrc location=dilvie_-_the_dragonfly.flac ! typefind ! ffdec_flac ! fakesink Setting pipeline to PAUSED ... Pipeline is PREROLLING ... 0:00:00.255465870 13928 0xa34a00 ERROR ffmpeg :0:: extradata NULL or too small. 0:00:00.255549190 13928 0xa34a00 ERROR ffmpeg gstffmpegdec.c:2115:gst_ffmpegdec_frame:<ffdec_flac0> no codec context ERROR: from element /GstPipeline:pipeline0/GstFileSrc:filesrc0: Internal data flow error. Additional debug info: gstbasesrc.c(2374): gst_base_src_loop (): /GstPipeline:pipeline0/GstFileSrc:filesrc0: streaming task paused, reason not-negotiated (-4) ERROR: pipeline doesn't want to preroll. Why/what does it want as codec data? ffdec_flac should be given RANK_NONE if it can't be used in a normal autoplugging scenario IMHO.
That's interesting as this error can only ever happen if there is codec data but it's too small. If it's NULL a check before this will simply switch ffdec_flac into raw FLAC decoding mode and everything should work fine. So there's a bug somewhere that prevents it from working ;) The codec data that it wants is the FLAC stream header.
commit 8a34abff64dcfac2025c8a923ea6fbf1797c89c1 Author: Tim-Philipp Müller <tim.muller@collabora.co.uk> Date: Mon Sep 26 19:55:54 2011 +0100 ffmpegdec: disable parser for already-parsed FLAC input Not needed to make anything work, just seems to make sense. https://bugzilla.gnome.org/show_bug.cgi?id=589361 commit 902ee8a9059f55eff1fefeecf1f9b96d99781ae3 Author: Tim-Philipp Müller <tim.muller@collabora.co.uk> Date: Mon Sep 26 19:54:52 2011 +0100 ffmpegcodecmap: don't create dummy codec data for FLAC decoder Since then it just errors out because it's too small, as it wants the flac headers as codec data if there is codec data. https://bugzilla.gnome.org/show_bug.cgi?id=589361