GNOME Bugzilla – Bug 666435
avdec: use new avcodec_decode_audio4() API
Last modified: 2012-11-20 10:45:06 UTC
avcodec_decode_audio3 now fails with custom get_buffer function. The decoder should either set the custom get_buffer only for video or use decode_audio4.
Any more information, such as a repro test file and command line/code ?
Unless this got fixed in the meanwhile if you build gst-ffmpeg with recent libav *any* audio file decoding will fail.
Are you using the internal libav snapshot?
No, this is with recent libav. I know I shouldn't :) but I suppose gst-ffmpeg libav will eventual get upgraded and this will be broken. I wanted to submit a patch but got too busy.
This fails with gst-ffmpeg GIT too, I've updated it to a newer libav version recently. I'd say that this is API breakage in libav though, it worked just fine before. Matej, could you file a bug against libav for this? I'll change it to use decode_audio4.
Or maybe not, this will need some refactoring. I've worked around this by just not setting get_buffer() for audio: commit 99d47920144f08f7efd0ca03ec5ab583046c496d Author: Sebastian Dröge <sebastian.droege@collabora.co.uk> Date: Wed Jan 18 10:05:09 2012 +0100 ffdec: Only set get_buffer() function for video Fixes bug #666435.
That's pretty much what I suggested in first comment, though it's probably not very future proof.
commit 9456fb86c760b178d25ed9d3647bbfb3dceeda70 Author: Sebastian Dröge <sebastian.droege@collabora.co.uk> Date: Tue Nov 20 11:39:45 2012 +0100 avauddec: Port to non-deprecated avcodec_decode_audio4() API Fixes bug #666435.