summaryrefslogtreecommitdiff
path: root/libavcodec/ac3dec.c
diff options
context:
space:
mode:
authorJohn Stebbins <stebbins@jetheaddev.com>2013-11-20 09:26:45 -0800
committerAnton Khirnov <anton@khirnov.net>2013-12-09 08:54:42 +0100
commitc9ca220ef26e36abd22085e6fa156c0dbc43bbf0 (patch)
tree5755b4ed2e8e7783003c8e889f957db1d0072870 /libavcodec/ac3dec.c
parent37a749012aaacc801fe860428417a6d7b81c103f (diff)
ac3dec: make drc_scale exponentially
The a52 spec suggests that "partial compression" should scale the drc value in this manner. Signed-off-by: Anton Khirnov <anton@khirnov.net>
Diffstat (limited to 'libavcodec/ac3dec.c')
-rw-r--r--libavcodec/ac3dec.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/ac3dec.c b/libavcodec/ac3dec.c
index 7172e6378d..e1c696269e 100644
--- a/libavcodec/ac3dec.c
+++ b/libavcodec/ac3dec.c
@@ -756,8 +756,8 @@ static int decode_audio_block(AC3DecodeContext *s, int blk)
i = !s->channel_mode;
do {
if (get_bits1(gbc)) {
- s->dynamic_range[i] = ((dynamic_range_tab[get_bits(gbc, 8)] - 1.0) *
- s->drc_scale) + 1.0;
+ s->dynamic_range[i] = powf(dynamic_range_tab[get_bits(gbc, 8)],
+ s->drc_scale);
} else if (blk == 0) {
s->dynamic_range[i] = 1.0f;
}