Lines Matching refs:gb
33 static int parse_config_ALS(GetBitContext *gb, MPEG4AudioConfig *c, void *logctx) in parse_config_ALS() argument
35 if (get_bits_left(gb) < 112) in parse_config_ALS()
38 if (get_bits_long(gb, 32) != MKBETAG('A','L','S','\0')) in parse_config_ALS()
43 c->sample_rate = get_bits_long(gb, 32); in parse_config_ALS()
51 skip_bits_long(gb, 32); in parse_config_ALS()
55 c->channels = get_bits(gb, 16) + 1; in parse_config_ALS()
84 static inline int get_object_type(GetBitContext *gb) in get_object_type() argument
86 int object_type = get_bits(gb, 5); in get_object_type()
88 object_type = 32 + get_bits(gb, 6); in get_object_type()
92 static inline int get_sample_rate(GetBitContext *gb, int *index) in get_sample_rate() argument
94 *index = get_bits(gb, 4); in get_sample_rate()
95 return *index == 0x0f ? get_bits(gb, 24) : in get_sample_rate()
99 int ff_mpeg4audio_get_config_gb(MPEG4AudioConfig *c, GetBitContext *gb, in ff_mpeg4audio_get_config_gb() argument
103 int start_bit_index = get_bits_count(gb); in ff_mpeg4audio_get_config_gb()
104 c->object_type = get_object_type(gb); in ff_mpeg4audio_get_config_gb()
105 c->sample_rate = get_sample_rate(gb, &c->sampling_index); in ff_mpeg4audio_get_config_gb()
106 c->chan_config = get_bits(gb, 4); in ff_mpeg4audio_get_config_gb()
117 !(show_bits(gb, 3) & 0x03 && !(show_bits(gb, 9) & 0x3F)))) { in ff_mpeg4audio_get_config_gb()
122 c->ext_sample_rate = get_sample_rate(gb, &c->ext_sampling_index); in ff_mpeg4audio_get_config_gb()
123 c->object_type = get_object_type(gb); in ff_mpeg4audio_get_config_gb()
125 c->ext_chan_config = get_bits(gb, 4); in ff_mpeg4audio_get_config_gb()
130 specific_config_bitindex = get_bits_count(gb); in ff_mpeg4audio_get_config_gb()
133 skip_bits(gb, 5); in ff_mpeg4audio_get_config_gb()
134 if (show_bits(gb, 24) != MKBETAG('\0','A','L','S')) in ff_mpeg4audio_get_config_gb()
135 skip_bits(gb, 24); in ff_mpeg4audio_get_config_gb()
137 specific_config_bitindex = get_bits_count(gb); in ff_mpeg4audio_get_config_gb()
139 ret = parse_config_ALS(gb, c, logctx); in ff_mpeg4audio_get_config_gb()
145 while (get_bits_left(gb) > 15) { in ff_mpeg4audio_get_config_gb()
146 if (show_bits(gb, 11) == 0x2b7) { // sync extension in ff_mpeg4audio_get_config_gb()
147 get_bits(gb, 11); in ff_mpeg4audio_get_config_gb()
148 c->ext_object_type = get_object_type(gb); in ff_mpeg4audio_get_config_gb()
149 if (c->ext_object_type == AOT_SBR && (c->sbr = get_bits1(gb)) == 1) { in ff_mpeg4audio_get_config_gb()
150 c->ext_sample_rate = get_sample_rate(gb, &c->ext_sampling_index); in ff_mpeg4audio_get_config_gb()
154 if (get_bits_left(gb) > 11 && get_bits(gb, 11) == 0x548) in ff_mpeg4audio_get_config_gb()
155 c->ps = get_bits1(gb); in ff_mpeg4audio_get_config_gb()
158 get_bits1(gb); // skip 1 bit in ff_mpeg4audio_get_config_gb()
176 GetBitContext gb; in avpriv_mpeg4audio_get_config() local
182 ret = init_get_bits(&gb, buf, bit_size); in avpriv_mpeg4audio_get_config()
186 return ff_mpeg4audio_get_config_gb(c, &gb, sync_extension, NULL); in avpriv_mpeg4audio_get_config()
193 GetBitContext gb; in avpriv_mpeg4audio_get_config2() local
199 ret = init_get_bits8(&gb, buf, size); in avpriv_mpeg4audio_get_config2()
203 return ff_mpeg4audio_get_config_gb(c, &gb, sync_extension, logctx); in avpriv_mpeg4audio_get_config2()