[FFmpeg-cvslog] r16249 - trunk/libavcodec/aac.c

superdump subversion
Sun Dec 21 06:08:32 CET 2008


Author: superdump
Date: Sun Dec 21 06:08:32 2008
New Revision: 16249

Log:
AAC: Don't write an illegal sampling_index in a PCE to the MPEG4AudioConfig
member

Patch by Alex Converse (alex converse gmail com)


Modified:
   trunk/libavcodec/aac.c

Modified: trunk/libavcodec/aac.c
==============================================================================
--- trunk/libavcodec/aac.c	(original)
+++ trunk/libavcodec/aac.c	Sun Dec 21 06:08:32 2008
@@ -167,15 +167,16 @@ static void decode_channel_map(enum Chan
  */
 static int decode_pce(AACContext * ac, enum ChannelPosition new_che_pos[4][MAX_ELEM_ID],
         GetBitContext * gb) {
-    int num_front, num_side, num_back, num_lfe, num_assoc_data, num_cc;
+    int num_front, num_side, num_back, num_lfe, num_assoc_data, num_cc, sampling_index;
 
     skip_bits(gb, 2);  // object_type
 
-    ac->m4ac.sampling_index = get_bits(gb, 4);
-    if(ac->m4ac.sampling_index > 11) {
+    sampling_index = get_bits(gb, 4);
+    if(sampling_index > 11) {
         av_log(ac->avccontext, AV_LOG_ERROR, "invalid sampling rate index %d\n", ac->m4ac.sampling_index);
         return -1;
     }
+    ac->m4ac.sampling_index = sampling_index;
     ac->m4ac.sample_rate = ff_mpeg4audio_sample_rates[ac->m4ac.sampling_index];
     num_front       = get_bits(gb, 4);
     num_side        = get_bits(gb, 4);




More information about the ffmpeg-cvslog mailing list