[FFmpeg-soc] [soc]: r1606 - in eac3: ac3dec.c ffmpeg.patch
jbr
subversion at mplayerhq.hu
Thu Dec 20 00:00:42 CET 2007
Author: jbr
Date: Thu Dec 20 00:00:42 2007
New Revision: 1606
Log:
update to FFmpeg SVN-r11274
Modified:
eac3/ac3dec.c
eac3/ffmpeg.patch
Modified: eac3/ac3dec.c
==============================================================================
--- eac3/ac3dec.c (original)
+++ eac3/ac3dec.c Thu Dec 20 00:00:42 2007
@@ -67,9 +67,6 @@ static const uint8_t quantization_tab[16
/** dynamic range table. converts codes to scale factors. */
float ff_ac3_dynamic_range_tab[256];
-/** dialog normalization table */
-float ff_ac3_dialog_norm_tab[32];
-
const float ff_ac3_mix_levels[9] = {
LEVEL_PLUS_3DB,
LEVEL_PLUS_1POINT5DB,
@@ -149,7 +146,6 @@ typedef struct {
int out_channels; ///< number of output channels
float downmix_coeffs[AC3_MAX_CHANNELS][2]; ///< stereo downmix coefficients
- float dialog_norm[2]; ///< dialog normalization
float dynamic_range[2]; ///< dynamic range
float cpl_coords[AC3_MAX_CHANNELS][18]; ///< coupling coordinates
int num_cpl_bands; ///< number of coupling bands
@@ -264,14 +260,6 @@ void ff_ac3_tables_init(void)
ff_ac3_dynamic_range_tab[i] = powf(2.0f, v) * ((i & 0x1F) | 0x20);
}
- /* generate dialog normalization table
- references: Section 5.4.2.8 dialnorm
- Section 7.6 Dialogue Normalization */
- for(i=1; i<32; i++) {
- ff_ac3_dialog_norm_tab[i] = expf((i-31) * M_LN10 / 20.0f);
- }
- ff_ac3_dialog_norm_tab[0] = ff_ac3_dialog_norm_tab[31];
-
/* generate scale factors for exponents and asymmetrical dequantization
reference: Section 7.3.2 Expansion of Mantissas for Asymmetric Quantization */
for (i = 0; i < 25; i++)
@@ -370,7 +358,7 @@ static int ac3_parse_header(AC3DecodeCon
/* read the rest of the bsi. read twice for dual mono mode. */
i = !(ctx->channel_mode);
do {
- ctx->dialog_norm[i] = ff_ac3_dialog_norm_tab[get_bits(gb, 5)]; // dialog normalization
+ skip_bits(gb, 5); // skip dialog normalization
if (get_bits1(gb))
skip_bits(gb, 8); //skip compression
if (get_bits1(gb))
@@ -1035,13 +1023,13 @@ static int ac3_parse_audio_block(AC3Deco
ctx->num_rematrixing_bands, ctx->rematrixing_flags);
}
- /* apply scaling to coefficients (headroom, dialnorm, dynrng) */
+ /* apply scaling to coefficients (headroom, dynrng) */
for(ch=1; ch<=ctx->channels; ch++) {
float gain = 2.0f * ctx->mul_bias;
if(ctx->channel_mode == AC3_CHMODE_DUALMONO) {
- gain *= ctx->dialog_norm[ch-1] * ctx->dynamic_range[ch-1];
+ gain *= ctx->dynamic_range[ch-1];
} else {
- gain *= ctx->dialog_norm[0] * ctx->dynamic_range[0];
+ gain *= ctx->dynamic_range[0];
}
for(i=0; i<ctx->end_freq[ch]; i++) {
ctx->transform_coeffs[ch][i] *= gain;
Modified: eac3/ffmpeg.patch
==============================================================================
--- eac3/ffmpeg.patch (original)
+++ eac3/ffmpeg.patch Thu Dec 20 00:00:42 2007
@@ -1,6 +1,6 @@
Index: libavcodec/aac_ac3_parser.c
===================================================================
---- libavcodec/aac_ac3_parser.c (revision 11226)
+--- libavcodec/aac_ac3_parser.c (revision 11274)
+++ libavcodec/aac_ac3_parser.c (working copy)
@@ -50,7 +50,7 @@
@@ -22,7 +22,7 @@ Index: libavcodec/aac_ac3_parser.c
}
Index: libavcodec/aac_ac3_parser.h
===================================================================
---- libavcodec/aac_ac3_parser.h (revision 11226)
+--- libavcodec/aac_ac3_parser.h (revision 11274)
+++ libavcodec/aac_ac3_parser.h (working copy)
@@ -30,7 +30,7 @@
uint8_t *inbuf_ptr;
@@ -35,7 +35,7 @@ Index: libavcodec/aac_ac3_parser.h
} AACAC3ParseContext;
Index: libavcodec/Makefile
===================================================================
---- libavcodec/Makefile (revision 11226)
+--- libavcodec/Makefile (revision 11274)
+++ libavcodec/Makefile (working copy)
@@ -67,6 +67,7 @@
OBJS-$(CONFIG_DVVIDEO_DECODER) += dv.o
@@ -55,7 +55,7 @@ Index: libavcodec/Makefile
OBJS-$(CONFIG_H264_PARSER) += h264_parser.o
Index: libavcodec/aac_parser.c
===================================================================
---- libavcodec/aac_parser.c (revision 11226)
+--- libavcodec/aac_parser.c (revision 11274)
+++ libavcodec/aac_parser.c (working copy)
@@ -38,7 +38,7 @@
};
@@ -68,7 +68,7 @@ Index: libavcodec/aac_parser.c
GetBitContext bits;
Index: libavcodec/allcodecs.c
===================================================================
---- libavcodec/allcodecs.c (revision 11226)
+--- libavcodec/allcodecs.c (revision 11274)
+++ libavcodec/allcodecs.c (working copy)
@@ -178,6 +178,7 @@
REGISTER_DECODER (COOK, cook);
@@ -88,7 +88,7 @@ Index: libavcodec/allcodecs.c
REGISTER_PARSER (H264, h264);
Index: libavcodec/ac3_parser.c
===================================================================
---- libavcodec/ac3_parser.c (revision 11226)
+--- libavcodec/ac3_parser.c (revision 11274)
+++ libavcodec/ac3_parser.c (working copy)
@@ -84,7 +84,7 @@
return 0;
@@ -130,7 +130,7 @@ Index: libavcodec/ac3_parser.c
+};
Index: libavcodec/avcodec.h
===================================================================
---- libavcodec/avcodec.h (revision 11226)
+--- libavcodec/avcodec.h (revision 11274)
+++ libavcodec/avcodec.h (working copy)
@@ -274,6 +274,7 @@
CODEC_ID_APE,
@@ -142,7 +142,7 @@ Index: libavcodec/avcodec.h
CODEC_ID_DVD_SUBTITLE= 0x17000,
Index: libavcodec/ac3enc.c
===================================================================
---- libavcodec/ac3enc.c (revision 11226)
+--- libavcodec/ac3enc.c (revision 11274)
+++ libavcodec/ac3enc.c (working copy)
@@ -479,7 +479,8 @@
for(ch=0;ch<s->nb_all_channels;ch++) {
More information about the FFmpeg-soc
mailing list