[mythtv-users] [mythtv] Problem Audio on Freeview HD BBC Channels

Simon Jones sijones2010 at gmail.com
Tue Oct 4 14:37:13 UTC 2011


On 4 October 2011 10:24, David Watkins <watkinshome at gmail.com> wrote:
>> I have created a patch for it if anyone else wants to test.
>
> I'd be happy to give it a spin tonight.

I dont know if the patch is created correctly or will work at all, so
please make sure you have a backup to be able to revert this, the only
thing I can say is that FFmpeg does compile, that's all I can confirm,
it may fail completely!

diff --git a/mythtv/external/FFmpeg/libavcodec/aacdec.c b/mythtv/external/FFmpeg
index a362d6a..8356cb3 100644
--- a/mythtv/external/FFmpeg/libavcodec/aacdec.c
+++ b/mythtv/external/FFmpeg/libavcodec/aacdec.c
@@ -2246,6 +2246,7 @@ static int latm_decode_audio_specific_config(struct LATMCo
 {
    AVCodecContext *avctx = latmctx->aac_ctx.avctx;
    MPEG4AudioConfig m4ac;
+    AACContext *ac= &latmctx->aac_ctx;
    int  config_start_bit = get_bits_count(gb);
    int     bits_consumed, esize;

@@ -2255,12 +2256,13 @@ static int latm_decode_audio_specific_config(struct LATM
        return AVERROR_INVALIDDATA;
    } else {
        bits_consumed =
-            decode_audio_specific_config(NULL, avctx, &m4ac,
+            decode_audio_specific_config(ac, avctx, &m4ac,
                                         gb->buffer + (config_start_bit / 8),
                                         get_bits_left(gb) / 8);

        if (bits_consumed < 0)
            return AVERROR_INVALIDDATA;
+        ac->m4ac= m4ac;

        esize = (bits_consumed+7) / 8;


More information about the mythtv-users mailing list