Debian Bug report logs -
#655890
libavcodec53: Breaks decoding using gst-ffmpeg
Toggle useless messages
Report forwarded
to debian-bugs-dist@lists.debian.org, Debian multimedia packages maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>:
Bug#655890; Package libavcodec53.
(Sat, 14 Jan 2012 15:51:05 GMT) (full text, mbox, link).
Acknowledgement sent
to reiter.christoph@gmail.com:
New Bug report received and forwarded. Copy sent to Debian multimedia packages maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>.
(Sat, 14 Jan 2012 15:51:05 GMT) (full text, mbox, link).
Message #5 received at submit@bugs.debian.org (full text, mbox, reply):
Package: libavcodec53
Version: 4:0.8~beta2-1
Severity: important
The recent upload of 0.8 to sid broke gst-ffmpeg and more specific WMA decoding
since gst-ffmpeg is used for this in totem etc. by default (playbin)
I get lots of
ffmpeg :0:: A custom get_buffer() cannot be used with avcodec_decode_audio3()
Downgrading libav to 0.7 fixes it.
-- System Information:
Debian Release: wheezy/sid
APT prefers unstable
APT policy: (900, 'unstable'), (900, 'testing'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 3.1.0-1-686-pae (SMP w/2 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages libavcodec53 depends on:
ii libavutil51 4:0.8~beta2-1
ii libc6 2.13-24
ii libdirac-encoder0 1.0.2-4
ii libgsm1 1.0.13-3
ii libmp3lame0 3.99.3+repack1-1
ii libopenjpeg2 1.3+dfsg-4
ii libschroedinger-1.0-0 1.0.10-2.1
ii libspeex1 1.2~rc1-3
ii libtheora0 1.1.1+dfsg.1-3
ii libva1 1.0.14-1
ii libvorbis0a 1.3.2-1.1
ii libvorbisenc2 1.3.2-1.1
ii libvpx0 0.9.7.p1-2
ii libx264-118 2:0.118.2092+git6eac7c3-2
ii libxvidcore4 2:1.3.2-6
ii multiarch-support 2.13-24
ii zlib1g 1:1.2.3.4.dfsg-3
libavcodec53 recommends no packages.
libavcodec53 suggests no packages.
-- no debconf information
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian multimedia packages maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>:
Bug#655890; Package libavcodec53.
(Sun, 15 Jan 2012 15:27:08 GMT) (full text, mbox, link).
Acknowledgement sent
to Reinhard Tartler <siretart@tauware.de>:
Extra info received and forwarded to list. Copy sent to Debian multimedia packages maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>.
(Sun, 15 Jan 2012 15:27:08 GMT) (full text, mbox, link).
Message #10 received at 655890@bugs.debian.org (full text, mbox, reply):
forwarded 655890 justin.ruggles@gmail.com
stop
On Sa, Jan 14, 2012 at 16:51:27 (CET), reiter.christoph@gmail.com wrote:
> Package: libavcodec53
> Version: 4:0.8~beta2-1
> Severity: important
>
> The recent upload of 0.8 to sid broke gst-ffmpeg and more specific WMA decoding
> since gst-ffmpeg is used for this in totem etc. by default (playbin)
>
> I get lots of
>
> ffmpeg :0:: A custom get_buffer() cannot be used with avcodec_decode_audio3()
>
> Downgrading libav to 0.7 fixes it.
Using git blame, I have identified the following commit, which
introduces the error message cited above to libavcodec/utils.c:
commit 0eea212943544d40f99b05571aa7159d78667154
Author: Justin Ruggles <justin.ruggles@gmail.com>
Date: Tue Sep 6 12:17:45 2011 -0400
Add avcodec_decode_audio4().
Deprecate avcodec_decode_audio3().
Implement audio support in avcodec_default_get_buffer().
Implement the new audio decoder API in all audio decoders.
This commits adds the following entries to doc/APIchanges:
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -13,6 +13,13 @@ libavutil: 2011-04-18
API changes, most recent first:
+2011-xx-xx - xxxxxxx - lavc 53.25.0
+ Add nb_samples and extended_data fields to AVFrame.
+ Deprecate AVCODEC_MAX_AUDIO_FRAME_SIZE.
+ Deprecate avcodec_decode_audio3() in favor of avcodec_decode_audio4().
+ avcodec_decode_audio4() writes output samples to an AVFrame, which allows
+ audio decoders to use get_buffer().
+
2011-xx-xx - xxxxxxx - lavc 53.24.0
Change AVFrame.data[4]/base[4]/linesize[4]/error[4] to [8] at next major bump.
Change AVPicture.data[4]/linesize[4] to [8] at next major bump.
Justin, it seems that additionally to what is documented above, this
change breaks applications such as gst-ffmpeg, which have successfully
used avcodec_decode_audio3() with a custom get_buffer(). If this is
correct, what can we do to restore this functionality? Would the
following patch be likely to unbreak gst-ffmpeg?
http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c3846e3ebab610be691adb8b40d376dc2f675dc4
Cheers,
Reinhard
--
Gruesse/greetings,
Reinhard Tartler, KeyID 945348A4
Set Bug forwarded-to-address to 'justin.ruggles@gmail.com'.
Request was from Reinhard Tartler <siretart@tauware.de>
to control@bugs.debian.org.
(Sun, 15 Jan 2012 15:27:10 GMT) (full text, mbox, link).
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian multimedia packages maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>:
Bug#655890; Package libavcodec53.
(Sun, 15 Jan 2012 16:27:06 GMT) (full text, mbox, link).
Acknowledgement sent
to Anton Khirnov <anton@khirnov.net>:
Extra info received and forwarded to list. Copy sent to Debian multimedia packages maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>.
(Sun, 15 Jan 2012 16:27:06 GMT) (full text, mbox, link).
Message #17 received at 655890@bugs.debian.org (full text, mbox, reply):
On Sun, 15 Jan 2012 16:18:51 +0100, Reinhard Tartler <siretart@tauware.de> wrote:
> forwarded 655890 justin.ruggles@gmail.com
> stop
>
> On Sa, Jan 14, 2012 at 16:51:27 (CET), reiter.christoph@gmail.com wrote:
>
> > Package: libavcodec53
> > Version: 4:0.8~beta2-1
> > Severity: important
> >
> > The recent upload of 0.8 to sid broke gst-ffmpeg and more specific WMA decoding
> > since gst-ffmpeg is used for this in totem etc. by default (playbin)
> >
> > I get lots of
> >
> > ffmpeg :0:: A custom get_buffer() cannot be used with avcodec_decode_audio3()
> >
> > Downgrading libav to 0.7 fixes it.
>
> Using git blame, I have identified the following commit, which
> introduces the error message cited above to libavcodec/utils.c:
>
> commit 0eea212943544d40f99b05571aa7159d78667154
> Author: Justin Ruggles <justin.ruggles@gmail.com>
> Date: Tue Sep 6 12:17:45 2011 -0400
>
> Add avcodec_decode_audio4().
>
> Deprecate avcodec_decode_audio3().
> Implement audio support in avcodec_default_get_buffer().
> Implement the new audio decoder API in all audio decoders.
>
>
> This commits adds the following entries to doc/APIchanges:
>
> --- a/doc/APIchanges
> +++ b/doc/APIchanges
> @@ -13,6 +13,13 @@ libavutil: 2011-04-18
>
> API changes, most recent first:
>
> +2011-xx-xx - xxxxxxx - lavc 53.25.0
> + Add nb_samples and extended_data fields to AVFrame.
> + Deprecate AVCODEC_MAX_AUDIO_FRAME_SIZE.
> + Deprecate avcodec_decode_audio3() in favor of avcodec_decode_audio4().
> + avcodec_decode_audio4() writes output samples to an AVFrame, which allows
> + audio decoders to use get_buffer().
> +
> 2011-xx-xx - xxxxxxx - lavc 53.24.0
> Change AVFrame.data[4]/base[4]/linesize[4]/error[4] to [8] at next major bump.
> Change AVPicture.data[4]/linesize[4] to [8] at next major bump.
>
>
> Justin, it seems that additionally to what is documented above, this
> change breaks applications such as gst-ffmpeg, which have successfully
> used avcodec_decode_audio3() with a custom get_buffer(). If this is
> correct, what can we do to restore this functionality? Would the
> following patch be likely to unbreak gst-ffmpeg?
Setting custom get_buffer() for audio was not valid before
avcodec_decode_audio3(), so IMO the proper solution would be to simply
not do that for non-video streams.
--
Anton Khirnov
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian multimedia packages maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>:
Bug#655890; Package libavcodec53.
(Sun, 15 Jan 2012 18:39:05 GMT) (full text, mbox, link).
Acknowledgement sent
to Reinhard Tartler <siretart@tauware.de>:
Extra info received and forwarded to list. Copy sent to Debian multimedia packages maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>.
(Sun, 15 Jan 2012 18:39:05 GMT) (full text, mbox, link).
Message #22 received at 655890@bugs.debian.org (full text, mbox, reply):
reassign 655890 libavcodec53,gstreamer0.10-ffmpeg
stop
On So, Jan 15, 2012 at 16:41:27 (CET), Anton Khirnov wrote:
[...]
> Setting custom get_buffer() for audio was not valid before
> avcodec_decode_audio3(), so IMO the proper solution would be to simply
> not do that for non-video streams.
Clarification from Justin, copied from irc channel #libav-devel with his
permission:
19:12 <ruggles> the documentation for AVCodecContext.get_buffer(), prior
to the new audio API had this: "if CODEC_CAP_DR1 is not
set then get_buffer() must call
avcodec_default_get_buffer() instead of providing
buffers allocated by some other means."
19:13 <ruggles> no audio decoders set CODEC_CAP_DR1 prior to the new
api, therefore setting it to something other than
avcodec_default_get_buffer() was contrary to the
documented API
[...]
19:15 <ruggles> siretart: but i suppose we could be clearer in the
current documentation that you cannot set a custom
get_buffer() if using avcodec_encode_audio3()
19:15 <siretart> ruggles: I guess that would be helpful
19:16 <siretart> ruggles: I'm surprised that just setting get_buffer()
back to its default unbreaks gst-ffmpeg
19:16 <ruggles> because their custom get_buffer() never did anything
19:16 <ruggles> it was never called for audio in the first place
19:17 <ruggles> even if it actually did try to handle audio, it was
pointless code that was never called
19:17 <siretart> "fun"
I have copied the debian gstreamer0.10-ffmpeg maintainer Sebastian Dröge
as well as the upstream gst-ffmpeg maintainer Edward Hervey in this
email. Dear gst-ffmpeg maintainers, can you please comment on the
get_buffer API abuse as stated above? What do you propose to fix the issue?
(please use reply-to-all when answering; see
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=655890 for the full bug-log)
Cheers,
Reinhard
--
Gruesse/greetings,
Reinhard Tartler, KeyID 945348A4
Bug No longer marked as found in versions libav/4:0.8~beta2-1.
Request was from Reinhard Tartler <siretart@tauware.de>
to control@bugs.debian.org.
(Sun, 15 Jan 2012 18:39:07 GMT) (full text, mbox, link).
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian multimedia packages maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>, Maintainers of GStreamer packages <pkg-gstreamer-maintainers@lists.alioth.debian.org>:
Bug#655890; Package libavcodec53,gstreamer0.10-ffmpeg.
(Sun, 15 Jan 2012 20:33:10 GMT) (full text, mbox, link).
Acknowledgement sent
to Anton Khirnov <anton@khirnov.net>:
Extra info received and forwarded to list. Copy sent to Debian multimedia packages maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>, Maintainers of GStreamer packages <pkg-gstreamer-maintainers@lists.alioth.debian.org>.
(Sun, 15 Jan 2012 20:33:10 GMT) (full text, mbox, link).
Message #31 received at 655890@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
A possible patch (completely untested).
--
Anton Khirnov
[0001-ffmpegdec-only-override-AVCodecContext.get_buffer-an.patch (text/x-diff, attachment)]
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian multimedia packages maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>, Maintainers of GStreamer packages <pkg-gstreamer-maintainers@lists.alioth.debian.org>:
Bug#655890; Package libavcodec53,gstreamer0.10-ffmpeg.
(Sun, 15 Jan 2012 21:00:05 GMT) (full text, mbox, link).
Acknowledgement sent
to Reinhard Tartler <siretart@tauware.de>:
Extra info received and forwarded to list. Copy sent to Debian multimedia packages maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>, Maintainers of GStreamer packages <pkg-gstreamer-maintainers@lists.alioth.debian.org>.
(Sun, 15 Jan 2012 21:00:05 GMT) (full text, mbox, link).
Message #36 received at 655890@bugs.debian.org (full text, mbox, reply):
reassign 655890 gstreamer0.10-ffmpeg
tags 655890 patch
stop
On So, Jan 15, 2012 at 19:37:27 (CET), Reinhard Tartler wrote:
> On So, Jan 15, 2012 at 16:41:27 (CET), Anton Khirnov wrote:
>
>> Setting custom get_buffer() for audio was not valid before
>> avcodec_decode_audio3(), so IMO the proper solution would be to simply
>> not do that for non-video streams.
Thanks for your patch, I'm curious to learn what the gst-ffmpeg
maintainers think about it.
Additionally, I have just pushed the following change to libav/master,
which is likely to unbreak gst-ffmpeg as well:
http://git.libav.org/?p=libav.git;a=commitdiff;h=e2ff436ef64589de8486517352e17f513886e15b
It will be part of the final 0.8 release. Nevertheless, gst-ffmpeg
should update to avcodec_decode_audio4(), or apply Anton's patch for now.
Cheers,
Reinhard
--
Gruesse/greetings,
Reinhard Tartler, KeyID 945348A4
Added tag(s) patch.
Request was from Reinhard Tartler <siretart@tauware.de>
to control@bugs.debian.org.
(Sun, 15 Jan 2012 21:00:07 GMT) (full text, mbox, link).
Information forwarded
to debian-bugs-dist@lists.debian.org, Maintainers of GStreamer packages <pkg-gstreamer-maintainers@lists.alioth.debian.org>:
Bug#655890; Package gstreamer0.10-ffmpeg.
(Sun, 26 Feb 2012 20:15:04 GMT) (full text, mbox, link).
Acknowledgement sent
to Alexander Kurtz <kurtz.alex@googlemail.com>:
Extra info received and forwarded to list. Copy sent to Maintainers of GStreamer packages <pkg-gstreamer-maintainers@lists.alioth.debian.org>.
(Sun, 26 Feb 2012 20:15:04 GMT) (full text, mbox, link).
Message #45 received at 655890@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
forwarded 655890 https://bugzilla.gnome.org/show_bug.cgi?id=666435
tags 655890 upstream patch fixed-upstream
thanks
Hi,
This issue has been fixed upstream:
http://cgit.freedesktop.org/gstreamer/gst-ffmpeg/commit/?id=99d47920144f08f7efd0ca03ec5ab583046c496d
Best regards
Alexander Kurtz
[signature.asc (application/pgp-signature, inline)]
Added tag(s) upstream and fixed-upstream.
Request was from Alexander Kurtz <kurtz.alex@googlemail.com>
to control@bugs.debian.org.
(Sun, 26 Feb 2012 20:15:08 GMT) (full text, mbox, link).
Marked as found in versions 0.10.35-1.
Request was from Alexander Kurtz <alexander@kurtz.be>
to control@bugs.debian.org.
(Sat, 11 May 2013 10:48:42 GMT) (full text, mbox, link).
No longer marked as found in versions 0.10.35-1.
Request was from Alexander Kurtz <alexander@kurtz.be>
to control@bugs.debian.org.
(Sat, 11 May 2013 11:03:21 GMT) (full text, mbox, link).
Marked as found in versions 0.10.35-1.
Request was from Alexander Kurtz <alexander@kurtz.be>
to control@bugs.debian.org.
(Sat, 11 May 2013 11:03:22 GMT) (full text, mbox, link).
Reply sent
to Alexander Kurtz <alexander@kurtz.be>:
You have taken responsibility.
(Sat, 11 May 2013 11:15:23 GMT) (full text, mbox, link).
Notification sent
to reiter.christoph@gmail.com:
Bug acknowledged by developer.
(Sat, 11 May 2013 11:15:23 GMT) (full text, mbox, link).
Message #64 received at 655890-done@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
Version: 1.0.7-1
Hi,
the upstream bug report [0] has been marked as fixed for quite some
time. It mentions two commits [1][2] which should fix this bug.
Both have been included in the "1.0" branch [3][4] and Debian has the
latest release from that branch (1.0.7).
I'm therefore closing this bug now. Please feel free to reopen if
necessary!
Best regards
Alexander Kurtz
[0] https://bugzilla.gnome.org/show_bug.cgi?id=666435
[1] http://cgit.freedesktop.org/gstreamer/gst-ffmpeg/commit/?id=99d47920144f08f7efd0ca03ec5ab583046c496d
[2] http://cgit.freedesktop.org/gstreamer/gst-ffmpeg/commit/?id=9456fb86c760b178d25ed9d3647bbfb3dceeda70
[3] http://cgit.freedesktop.org/gstreamer/gst-ffmpeg/commit/?h=1.0&id=99d47920144f08f7efd0ca03ec5ab583046c496d
[4] http://cgit.freedesktop.org/gstreamer/gst-ffmpeg/commit/?h=1.0&id=9456fb86c760b178d25ed9d3647bbfb3dceeda70
[signature.asc (application/pgp-signature, inline)]
Bug archived.
Request was from Debbugs Internal Request <owner@bugs.debian.org>
to internal_control@bugs.debian.org.
(Sun, 09 Jun 2013 07:47:25 GMT) (full text, mbox, link).
Send a report that this bug log contains spam.
Debian bug tracking system administrator <owner@bugs.debian.org>.
Last modified:
Mon Mar 29 09:04:06 2021;
Machine Name:
buxtehude
Debian Bug tracking system
Debbugs is free software and licensed under the terms of the GNU
Public License version 2. The current version can be obtained
from https://bugs.debian.org/debbugs-source/.
Copyright © 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson,
2005-2017 Don Armstrong, and many other contributors.