After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 173007 - [faad] Failed to decode buffer: Channel coupling not yet implemented
[faad] Failed to decode buffer: Channel coupling not yet implemented
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other All
: Normal normal
: 0.10.3
Assigned To: GStreamer Maintainers
GStreamer Maintainers
: 339948 (view as bug list)
Depends on:
Blocks: 138435
 
 
Reported: 2005-04-07 21:55 UTC by David Schleef
Modified: 2006-05-03 21:48 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
possible fix (7.64 KB, patch)
2006-04-21 11:03 UTC, Tim-Philipp Müller
none Details | Review
updated patch (9.82 KB, patch)
2006-04-21 11:46 UTC, Tim-Philipp Müller
none Details | Review

Description David Schleef 2005-04-07 21:55:54 UTC
Please describe the problem:
http://stream.state.gov/streamvol/journals/fullversion.mov

Doesn't play.

Steps to reproduce:


Actual results:


Expected results:


Does this happen every time?


Other information:
Comment 1 Edward Hervey 2005-12-07 20:13:03 UTC
confirmed, still raises the same error.
Comment 2 Tim-Philipp Müller 2006-04-21 11:03:31 UTC
Created attachment 64030 [details] [review]
possible fix

This patch fixes the issue for this file (and many others).

It creates a 'fake' private codec data chunk based on the sample rate and number of channels as provided by the demuxer and re-opens the decoder using faacDecInit2() if things didn't work out with faacDecInit() and the demuxer hasn't provided any private codec data of its own.

The implementation is fairly conservative on purpose, ie. it only adds a fallback if things don't work as they do now (faad could certainly use some refactoring though), it's not meant to be pretty ;)
Comment 3 Tim-Philipp Müller 2006-04-21 11:46:13 UTC
Created attachment 64035 [details] [review]
updated patch

updated patch, makes files from bug #332892 work as well.
Comment 4 Wim Taymans 2006-04-28 08:26:35 UTC
*** Bug 339948 has been marked as a duplicate of this bug. ***
Comment 5 Tim-Philipp Müller 2006-04-28 11:09:14 UTC
Committed to CVS:

 2006-04-28  Tim-Philipp Müller  <tim at centricular dot net>

        * ext/faad/gstfaad.c: (gst_faad_init), (aac_rate_idx),
        (gst_faad_setcaps), (gst_faad_chain), (gst_faad_open_decoder),
        (gst_faad_close_decoder), (gst_faad_change_state):
        * ext/faad/gstfaad.h:
          If we run into a decoding error, try re-opening the decoder
          with faacDecInit2() using fake codec data created from the
          data the demuxer gave us. Should fix a whole bunch of
          GStreamer-faad problems incl. 'channel coupling not
          implemented', 'maximum number of scalefactor bands exceeded'
          etc. (#173007, #332892).