Merge commit 'b6d5e6aa10a2f09351f287e876f7ed4504e1f75d'

* commit 'b6d5e6aa10a2f09351f287e876f7ed4504e1f75d':
  dca: convert dca_default_coeffs to float.

Conflicts:
	libavcodec/dcadata.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer
2013-11-29 00:32:14 +01:00
2 changed files with 13 additions and 13 deletions

View File

@@ -7556,17 +7556,17 @@ static const float dca_downmix_scale_factors[241] = {
1.000000 1.000000
}; };
static const uint8_t dca_default_coeffs[10][5][2] = { static const float dca_default_coeffs[10][5][2] = {
{ { 13, 13 }, }, { { 0.707946, 0.707946 }, }, // A
{ { 0, 64 }, { 64, 0 }, }, { { 1.000000, 0.000000 }, { 0.000000, 1.000000 }, }, // A + B (dual mono)
{ { 0, 64 }, { 64, 0 }, }, { { 1.000000, 0.000000 }, { 0.000000, 1.000000 }, }, // L + R (stereo)
{ { 0, 64 }, { 64, 0 }, }, { { 1.000000, 0.000000 }, { 0.000000, 1.000000 }, }, // (L+R) + (L-R) (sum-difference)
{ { 0, 64 }, { 64, 0 }, }, { { 1.000000, 0.000000 }, { 0.000000, 1.000000 }, }, // LT + RT (left and right total)
{ { 6, 6 }, { 0, 25 }, { 25, 0 }, }, { { 0.865964, 0.865964 }, { 1.000000, 0.501187 }, { 0.501187, 1.000000 }, }, // C + L + R
{ { 0, 25 }, { 25, 0 }, { 13, 13 }, }, { { 1.000000, 0.501187 }, { 0.501187, 1.000000 }, { 0.707946, 0.707946 }, }, // L + R + S
{ { 6, 6 }, { 0, 25 }, { 25, 0 }, { 13, 13 }, }, { { 0.865964, 0.865964 }, { 1.000000, 0.501187 }, { 0.501187, 1.000000 }, { 0.707946, 0.707946 }, }, // C + L + R + S
{ { 0, 25 }, { 25, 0 }, { 0, 13 }, { 13, 0 }, }, { { 1.000000, 0.501187 }, { 0.501187, 1.000000 }, { 1.000000, 0.707946 }, { 0.707946, 1.000000 }, }, // L + R + SL + SR
{ { 6, 6 }, { 0, 25 }, { 25, 0 }, { 0, 13 }, { 13, 0 }, }, { { 0.865964, 0.865964 }, { 1.000000, 0.501187 }, { 0.501187, 1.000000 }, { 1.000000, 0.707946 }, { 0.707946, 1.000000 }, }, // C + L + R + SL + SR
}; };
/* downmix coeffs /* downmix coeffs

View File

@@ -975,8 +975,8 @@ static int dca_subframe_header(DCAContext *s, int base_channel, int block_index)
} }
for (j = base_channel; j < s->prim_channels; j++) { for (j = base_channel; j < s->prim_channels; j++) {
s->downmix_coef[j][0] = dca_downmix_coeffs[dca_default_coeffs[am][j][0]]; s->downmix_coef[j][0] = dca_default_coeffs[am][j][0];
s->downmix_coef[j][1] = dca_downmix_coeffs[dca_default_coeffs[am][j][1]]; s->downmix_coef[j][1] = dca_default_coeffs[am][j][1];
} }
} }
} }