static int decode_gain_control(GetBitContext *gb, GainBlock *block,
int num_bands)
{
- int i, b;
- int i, j, num_data;
++ int j, b;
++
int *level, *loc;
- GainInfo *gain = block->g_block;
+ AtracGainInfo *gain = block->g_block;
- for (i = 0; i <= num_bands; i++) {
- num_data = get_bits(gb, 3);
- gain[i].num_gain_data = num_data;
- level = gain[i].lev_code;
- loc = gain[i].loc_code;
+ for (b = 0; b <= num_bands; b++) {
+ gain[b].num_points = get_bits(gb, 3);
+ level = gain[b].levcode;
+ loc = gain[b].loccode;
- for (i = 0; i < gain[b].num_points; i++) {
- level[i] = get_bits(gb, 4);
- loc [i] = get_bits(gb, 5);
- if (i && loc[i] <= loc[i-1])
- for (j = 0; j < gain[i].num_gain_data; j++) {
++ for (j = 0; j < gain[b].num_points; j++) {
+ level[j] = get_bits(gb, 4);
+ loc[j] = get_bits(gb, 5);
+ if (j && loc[j] <= loc[j - 1])
return AVERROR_INVALIDDATA;
}
}