diff options
Diffstat (limited to 'decoder/ixheaacd_create.c')
| -rw-r--r-- | decoder/ixheaacd_create.c | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/decoder/ixheaacd_create.c b/decoder/ixheaacd_create.c index 962b98c..6990399 100644 --- a/decoder/ixheaacd_create.c +++ b/decoder/ixheaacd_create.c @@ -22,7 +22,7 @@ #include <string.h> #include <assert.h> -#include <ixheaacd_type_def.h> +#include "ixheaacd_type_def.h" #include "ixheaacd_cnst.h" @@ -60,13 +60,12 @@ #include "ixheaacd_arith_dec.h" -#include <ixheaacd_type_def.h> #include "ixheaacd_memory_standards.h" #include "ixheaacd_sbrdecsettings.h" #include "ixheaacd_defines.h" -#include <ixheaacd_aac_rom.h> +#include "ixheaacd_aac_rom.h" #include "ixheaacd_common_rom.h" -#include <ixheaacd_sbr_rom.h> +#include "ixheaacd_sbr_rom.h" #include "ixheaacd_bitbuffer.h" #include "ixheaacd_pulsedata.h" #include "ixheaacd_pns.h" @@ -99,19 +98,19 @@ #include "ixheaacd_func_def.h" #include "ixheaacd_interface.h" -extern ia_huff_code_word_struct ixheaacd_huff_book_scl[]; +extern const ia_huff_code_word_struct ixheaacd_huff_book_scl[]; -extern WORD32 ixheaacd_book_scl_index[]; -extern WORD16 ixheaacd_book_scl_code_book[]; +extern const WORD32 ixheaacd_book_scl_index[]; +extern const WORD16 ixheaacd_book_scl_code_book[]; -extern ia_usac_samp_rate_info ixheaacd_samp_rate_info[]; +extern const ia_usac_samp_rate_info ixheaacd_samp_rate_info[]; extern const WORD32 ixheaacd_sampling_boundaries[(1 << LEN_SAMP_IDX)]; const WORD32 ixheaacd_sampl_freq_idx_table[17] = { 96000, 88200, 64000, 48000, 44100, 32000, 24000, 22050, 16000, 12000, 11025, 8000, 7350, -1, -1, -1, -1}; -static VOID ixheaacd_info_init(ia_usac_samp_rate_info *ptr_samp_info, +static VOID ixheaacd_info_init(const ia_usac_samp_rate_info *ptr_samp_info, WORD32 block_size_samples, ia_sfb_info_struct *pstr_sfb_info_long, ia_sfb_info_struct *pstr_sfb_info_short, @@ -279,8 +278,11 @@ WORD32 ixheaacd_decode_init( for (i = 0; i < MAX_NUM_CHANNELS; i++) { usac_data->str_tddec[i] = &usac_data->arr_str_tddec[i]; - usac_data->str_tddec[i]->fscale = - ((fscale)*usac_data->ccfl) / LEN_SUPERFRAME; + if (usac_data->ccfl == 768) + usac_data->str_tddec[i]->fscale = pstr_stream_config->sampling_frequency; + else + usac_data->str_tddec[i]->fscale = + ((fscale)*usac_data->ccfl) / LEN_SUPERFRAME; usac_data->len_subfrm = usac_data->ccfl / 4; usac_data->num_subfrm = (MAX_NUM_SUBFR * usac_data->ccfl) / LEN_SUPERFRAME; |
