ac3enc: remove bandwidth reduction as fallback for bit allocation failure.
It was only needed at low bitrates, which now already use a low bandwidth, so the bandwidth reduction is no longer needed.
This commit is contained in:
parent
ba6bce5140
commit
a1d0f511fc
@ -1122,27 +1122,6 @@ static int downgrade_exponents(AC3EncodeContext *s)
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Reduce the bandwidth to reduce the number of bits used for a given SNR offset.
|
||||
* This is a second fallback for when bit allocation still fails after exponents
|
||||
* have been downgraded.
|
||||
* @return non-zero if bandwidth reduction was unsuccessful
|
||||
*/
|
||||
static int reduce_bandwidth(AC3EncodeContext *s, int min_bw_code)
|
||||
{
|
||||
int ch;
|
||||
|
||||
if (s->bandwidth_code[0] > min_bw_code) {
|
||||
for (ch = 0; ch < s->fbw_channels; ch++) {
|
||||
s->bandwidth_code[ch]--;
|
||||
s->nb_coefs[ch] = s->bandwidth_code[ch] * 3 + 73;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Perform bit allocation search.
|
||||
* Finds the SNR offset value that maximizes quality and fits in the specified
|
||||
@ -1168,15 +1147,6 @@ static int compute_bit_allocation(AC3EncodeContext *s)
|
||||
continue;
|
||||
}
|
||||
|
||||
/* fallback 2: reduce bandwidth */
|
||||
/* only do this if the user has not specified a specific cutoff
|
||||
frequency */
|
||||
if (!s->cutoff && !reduce_bandwidth(s, 0)) {
|
||||
process_exponents(s);
|
||||
ret = compute_bit_allocation(s);
|
||||
continue;
|
||||
}
|
||||
|
||||
/* fallbacks were not enough... */
|
||||
break;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user