зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1248861: P11. Fix current downmixer. r=rillian
Current downmixer was using vorbis channel order (which isn't surprising as it was extracted from the Ogg reader). Make it use SMPTE order as that's now what all MediaDataDecoder output. MozReview-Commit-ID: 5Kf7UnC52wL --HG-- extra : rebase_source : b8499b8abbe2aa7a37acea19d3d33edc3d41e8a3
This commit is contained in:
Родитель
380ff74c54
Коммит
24f0f28af4
|
@ -148,12 +148,12 @@ int DownmixAudioToStereo(mozilla::AudioDataValue* buffer,
|
|||
#ifdef MOZ_SAMPLE_TYPE_FLOAT32
|
||||
// Downmix matrix. Per-row normalization 1 for rows 3,4 and 2 for rows 5-8.
|
||||
static const float dmatrix[6][8][2]= {
|
||||
/*3*/{{0.5858f,0},{0.4142f,0.4142f},{0, 0.5858f}},
|
||||
/*4*/{{0.4226f,0},{0, 0.4226f},{0.366f,0.2114f},{0.2114f,0.366f}},
|
||||
/*5*/{{0.6510f,0},{0.4600f,0.4600f},{0, 0.6510f},{0.5636f,0.3254f},{0.3254f,0.5636f}},
|
||||
/*6*/{{0.5290f,0},{0.3741f,0.3741f},{0, 0.5290f},{0.4582f,0.2645f},{0.2645f,0.4582f},{0.3741f,0.3741f}},
|
||||
/*7*/{{0.4553f,0},{0.3220f,0.3220f},{0, 0.4553f},{0.3943f,0.2277f},{0.2277f,0.3943f},{0.2788f,0.2788f},{0.3220f,0.3220f}},
|
||||
/*8*/{{0.3886f,0},{0.2748f,0.2748f},{0, 0.3886f},{0.3366f,0.1943f},{0.1943f,0.3366f},{0.3366f,0.1943f},{0.1943f,0.3366f},{0.2748f,0.2748f}},
|
||||
/*3*/{{0.5858f,0},{0,0.5858f},{0.4142f,0.4142f}},
|
||||
/*4*/{{0.4226f,0},{0,0.4226f},{0.366f, 0.2114f},{0.2114f,0.366f}},
|
||||
/*5*/{{0.6510f,0},{0,0.6510f},{0.4600f,0.4600f},{0.5636f,0.3254f},{0.3254f,0.5636f}},
|
||||
/*6*/{{0.5290f,0},{0,0.5290f},{0.3741f,0.3741f},{0.3741f,0.3741f},{0.4582f,0.2645f},{0.2645f,0.4582f}},
|
||||
/*7*/{{0.4553f,0},{0,0.4553f},{0.3220f,0.3220f},{0.3220f,0.3220f},{0.2788f,0.2788f},{0.3943f,0.2277f},{0.2277f,0.3943f}},
|
||||
/*8*/{{0.3886f,0},{0,0.3886f},{0.2748f,0.2748f},{0.2748f,0.2748f},{0.3366f,0.1943f},{0.1943f,0.3366f},{0.3366f,0.1943f},{0.1943f,0.3366f}},
|
||||
};
|
||||
// Re-write the buffer with downmixed data
|
||||
for (uint32_t i = 0; i < frames; i++) {
|
||||
|
@ -170,12 +170,12 @@ int DownmixAudioToStereo(mozilla::AudioDataValue* buffer,
|
|||
// Downmix matrix. Per-row normalization 1 for rows 3,4 and 2 for rows 5-8.
|
||||
// Coefficients in Q14.
|
||||
static const int16_t dmatrix[6][8][2]= {
|
||||
/*3*/{{9598, 0},{6786,6786},{0, 9598}},
|
||||
/*3*/{{9598, 0},{0, 9598},{6786,6786}},
|
||||
/*4*/{{6925, 0},{0, 6925},{5997,3462},{3462,5997}},
|
||||
/*5*/{{10663,0},{7540,7540},{0, 10663},{9234,5331},{5331,9234}},
|
||||
/*6*/{{8668, 0},{6129,6129},{0, 8668},{7507,4335},{4335,7507},{6129,6129}},
|
||||
/*7*/{{7459, 0},{5275,5275},{0, 7459},{6460,3731},{3731,6460},{4568,4568},{5275,5275}},
|
||||
/*8*/{{6368, 0},{4502,4502},{0, 6368},{5514,3184},{3184,5514},{5514,3184},{3184,5514},{4502,4502}}
|
||||
/*5*/{{10663,0},{0, 10663},{7540,7540},{9234,5331},{5331,9234}},
|
||||
/*6*/{{8668, 0},{0, 8668},{6129,6129},{6129,6129},{7507,4335},{4335,7507}},
|
||||
/*7*/{{7459, 0},{0, 7459},{5275,5275},{5275,5275},{4568,4568},{6460,3731},{3731,6460}},
|
||||
/*8*/{{6368, 0},{0, 6368},{4502,4502},{4502,4502},{5514,3184},{3184,5514},{5514,3184},{3184,5514}}
|
||||
};
|
||||
// Re-write the buffer with downmixed data
|
||||
for (uint32_t i = 0; i < frames; i++) {
|
||||
|
|
Загрузка…
Ссылка в новой задаче