5 #ifndef PACKAGER_MEDIA_CODECS_AAC_AUDIO_SPECIFIC_CONFIG_H_
6 #define PACKAGER_MEDIA_CODECS_AAC_AUDIO_SPECIFIC_CONFIG_H_
25 enum AudioObjectType {
43 AOT_ER_AAC_SCALABLE = 20,
64 AOT_SLS_NON_CORE = 38,
83 virtual bool Parse(
const std::vector<uint8_t>& data);
93 std::vector<uint8_t>* audio_frame)
const;
116 bool ParseAudioObjectType(
BitReader* bit_reader);
117 bool ParseDecoderGASpecificConfig(
BitReader* bit_reader);
118 bool SkipErrorSpecificConfig()
const;
121 bool ParseGASpecificConfig(
BitReader* bit_reader);
123 bool ParseProgramConfigElement(
BitReader* bit_reader);
127 AudioObjectType audio_object_type_ = AOT_NULL;
128 uint8_t frequency_index_ = 0;
129 uint8_t channel_config_ = 0;
131 bool sbr_present_ =
false;
133 bool ps_present_ =
false;
138 uint32_t frequency_ = 0;
139 uint32_t extension_frequency_ = 0;
140 uint8_t num_channels_ = 0;
All the methods that are virtual are virtual for mocking.