Package: gstreamer0.10-ffmpeg
Version: 0.10.10-1
Severity: wishlist
The gstreamer0.10-ffmpeg package is configured with the --with-system-ffmpeg
option so that it uses external versions of the ffmpeg libraries and headers
(libavcodec, libavformat, libavutil, etc). The current version in
testing/unstable (0.10.10-1) was built against ffmpeg 0.5.2 and
therefore works
correctly if the 0.5.2 versions of
libavcodec52/libavformat52/libavutil49 are
installed.
However, if ffmpeg 0.6 versions of these libraries are installed (using the
packages from experimental or debian-multimedia) then
gstreamer0.10-ffmpeg will
misbehave. The particular case which I encountered was a failure to decode
h264 in a mkv container. totem was exiting with the following error:
** Message: Error: Internal GStreamer error: negotiation problem.
Please file
a bug at http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer.
gstffmpegdec.c(1267): gst_ffmpegdec_negotiate ():
/GstPlayBin2:play/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/ffdec_h264:ffdec_h2640:
could not find caps for codec (h264), unknown type
By running it at the GST_DEBUG=9 log level I saw the following output:
ffmpeg gstffmpegdec.c:1181:gst_ffmpegdec_negotiate:<ffdec_h2640>
Renegotiating
video from 0x0@ -1/-1 fps to 512x384@ 8000000/333667 fps
ffmpeg gstffmpegcodecmap.c:1795:gst_ffmpeg_codectype_to_video_caps:
context:0x97f3330, codec_id:28, encode:0, codec:(nil)
ffmpeg gstffmpegcodecmap.c:1675:gst_ffmpeg_pixfmt_to_caps: No caps found for
pix_fmt=12
ffmpeg gstffmpegdec.c:1267:gst_ffmpegdec_negotiate:<ffdec_h2640> error:
could
not find caps for codec (h264), unknown type
And by comparing libavutil/pixfmt.h between ffmpeg 0.5.2 and 0.6 I can
see that
the definition for the PixelFormat enum has indeed changed, meaning that
pix_fmt=12 is no longer equal to PIX_FMT_YUVJ420P.
This is no doubt the root cause of
https://bugzilla.gnome.org/show_bug.cgi?id=626495 and
https://bugzilla.gnome.org/show_bug.cgi?id=626007
Therefore gstreamer0.10-ffmpeg needs to be rebuilt (and preferably
updated to
0.10.11) if/when the ffmpeg 0.6-based versions of
libavcodec52/libavformat52/libavutil49 are migrated from experimental to
unstable. However, I think this is just one symptom of what may turn
out to be
a bigger problem - numerous other packages use libavformat and they will all
suffer similar misbehaviour if they are not rebuilt. My recommendation
would
be that the ffmpeg 0.6-based packages are not called
libavcodec52/libavformat52
(as in currently being done in experimental and debian-multimedia) but
instead new
packages called libavcodec60/libavformat60 are created. That way, packages
which were built against 0.5.2 will not be immediately broken and they
can be
migrated to 0.6 over time. It is quite possible that this approach has
already
been considered and rejected for a good reason but I do not know of it.
-- System Information:
Debian Release: squeeze/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: i386 (i686)
Kernel: Linux 2.6.34.1 (SMP w/2 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/dash
Versions of packages gstreamer0.10-ffmpeg depends on:
ii libavcodec52 5:0.6~svn20100726-0.0 library to encode decode
multimedi
ii libavformat52 5:0.6~svn20100726-0.0 ffmpeg file format library
ii libavutil49 4:0.5.2-1 ffmpeg utility library
ii libc6 2.11.2-2 Embedded GNU C Library:
Shared lib
ii libglib2.0-0 2.24.1-1 The GLib library of C routines
ii libgstreamer-plugi 0.10.30-1 GStreamer libraries from
the "base
ii libgstreamer0.10-0 0.10.30-1 Core GStreamer libraries
and eleme
ii liboil0.3 0.3.17-1 Library of Optimized Inner
Loops
ii libpostproc51 5:0.6~svn20100726-0.0 postproc shared libraries
ii libswscale0 5:0.6~svn20100726-0.0 ffmpeg video scaling library
gstreamer0.10-ffmpeg recommends no packages.
gstreamer0.10-ffmpeg suggests no packages.
-- no debconf information
Confidentiality Notice: This message (including attachments) is a private communication solely for use of the intended recipient(s).
If you are not the intended recipient(s) or believe you received this message in error, notify the sender immediately and then delete this
message. Any other use, retention, dissemination or copying is prohibited and may be a violation of law, including the Electronic
Communication Privacy Act of 1986."
--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org