Mercurial > libavcodec.hg
comparison aac.c @ 8281:f93efc084e41 libavcodec
Make av_log_missing_feature an internal function, and change its name
to ff_log_missing_feature.
author | stefano |
---|---|
date | Mon, 08 Dec 2008 21:21:38 +0000 |
parents | 843d82925adf |
children | f4ead16781e4 |
comparison
equal
deleted
inserted
replaced
8280:63aba08af550 | 8281:f93efc084e41 |
---|---|
75 Parametric Stereo. | 75 Parametric Stereo. |
76 */ | 76 */ |
77 | 77 |
78 | 78 |
79 #include "avcodec.h" | 79 #include "avcodec.h" |
80 #include "internal.h" | |
80 #include "bitstream.h" | 81 #include "bitstream.h" |
81 #include "dsputil.h" | 82 #include "dsputil.h" |
82 #include "lpc.h" | 83 #include "lpc.h" |
83 | 84 |
84 #include "aac.h" | 85 #include "aac.h" |
260 static int decode_ga_specific_config(AACContext * ac, GetBitContext * gb, int channel_config) { | 261 static int decode_ga_specific_config(AACContext * ac, GetBitContext * gb, int channel_config) { |
261 enum ChannelPosition new_che_pos[4][MAX_ELEM_ID]; | 262 enum ChannelPosition new_che_pos[4][MAX_ELEM_ID]; |
262 int extension_flag, ret; | 263 int extension_flag, ret; |
263 | 264 |
264 if(get_bits1(gb)) { // frameLengthFlag | 265 if(get_bits1(gb)) { // frameLengthFlag |
265 av_log_missing_feature(ac->avccontext, "960/120 MDCT window is", 1); | 266 ff_log_missing_feature(ac->avccontext, "960/120 MDCT window is", 1); |
266 return -1; | 267 return -1; |
267 } | 268 } |
268 | 269 |
269 if (get_bits1(gb)) // dependsOnCoreCoder | 270 if (get_bits1(gb)) // dependsOnCoreCoder |
270 skip_bits(gb, 14); // coreCoderDelay | 271 skip_bits(gb, 14); // coreCoderDelay |
519 } else if (ac->m4ac.object_type == AOT_AAC_LC) { | 520 } else if (ac->m4ac.object_type == AOT_AAC_LC) { |
520 av_log(ac->avccontext, AV_LOG_ERROR, "Prediction is not allowed in AAC-LC.\n"); | 521 av_log(ac->avccontext, AV_LOG_ERROR, "Prediction is not allowed in AAC-LC.\n"); |
521 memset(ics, 0, sizeof(IndividualChannelStream)); | 522 memset(ics, 0, sizeof(IndividualChannelStream)); |
522 return -1; | 523 return -1; |
523 } else { | 524 } else { |
524 av_log_missing_feature(ac->avccontext, "Predictor bit set but LTP is", 1); | 525 ff_log_missing_feature(ac->avccontext, "Predictor bit set but LTP is", 1); |
525 memset(ics, 0, sizeof(IndividualChannelStream)); | 526 memset(ics, 0, sizeof(IndividualChannelStream)); |
526 return -1; | 527 return -1; |
527 } | 528 } |
528 } | 529 } |
529 } | 530 } |
953 } | 954 } |
954 } | 955 } |
955 if ((tns->present = get_bits1(gb)) && decode_tns(ac, tns, gb, ics)) | 956 if ((tns->present = get_bits1(gb)) && decode_tns(ac, tns, gb, ics)) |
956 return -1; | 957 return -1; |
957 if (get_bits1(gb)) { | 958 if (get_bits1(gb)) { |
958 av_log_missing_feature(ac->avccontext, "SSR", 1); | 959 ff_log_missing_feature(ac->avccontext, "SSR", 1); |
959 return -1; | 960 return -1; |
960 } | 961 } |
961 } | 962 } |
962 | 963 |
963 if (decode_spectrum_and_dequant(ac, out, gb, sce->sf, pulse_present, &pulse, ics, sce->band_type) < 0) | 964 if (decode_spectrum_and_dequant(ac, out, gb, sce->sf, pulse_present, &pulse, ics, sce->band_type) < 0) |
1157 * | 1158 * |
1158 * @return Returns number of bytes consumed from the TYPE_FIL element. | 1159 * @return Returns number of bytes consumed from the TYPE_FIL element. |
1159 */ | 1160 */ |
1160 static int decode_sbr_extension(AACContext * ac, GetBitContext * gb, int crc, int cnt) { | 1161 static int decode_sbr_extension(AACContext * ac, GetBitContext * gb, int crc, int cnt) { |
1161 // TODO : sbr_extension implementation | 1162 // TODO : sbr_extension implementation |
1162 av_log_missing_feature(ac->avccontext, "SBR", 0); | 1163 ff_log_missing_feature(ac->avccontext, "SBR", 0); |
1163 skip_bits_long(gb, 8*cnt - 4); // -4 due to reading extension type | 1164 skip_bits_long(gb, 8*cnt - 4); // -4 due to reading extension type |
1164 return cnt; | 1165 return cnt; |
1165 } | 1166 } |
1166 | 1167 |
1167 /** | 1168 /** |