Further relax thresholds in mixing test.
TBR=mikhal Review URL: https://webrtc-codereview.appspot.com/1019004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@3327 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
parent
00c7c4315b
commit
b2b628d5cd
@ -189,13 +189,13 @@ class MixingTest : public AfterInitializationFixture {
|
||||
};
|
||||
|
||||
// These tests assume a maximum of three mixed participants. We typically allow
|
||||
// a +/- 10% range around the expected output level to account for distortion
|
||||
// a +/- 15% range around the expected output level to account for distortion
|
||||
// from coding and processing in the loopback chain.
|
||||
TEST_F(MixingTest, FourChannelsWithOnlyThreeMixed) {
|
||||
const int16_t kInputValue = 1000;
|
||||
const int16_t kExpectedOutput = kInputValue * 3;
|
||||
RunMixingTest(4, 0, 4, kInputValue, 1.1 * kExpectedOutput,
|
||||
0.9 * kExpectedOutput);
|
||||
RunMixingTest(4, 0, 4, kInputValue, 1.15 * kExpectedOutput,
|
||||
0.85 * kExpectedOutput);
|
||||
}
|
||||
|
||||
// Ensure the mixing saturation protection is working. We can do this because
|
||||
@ -207,8 +207,8 @@ TEST_F(MixingTest, VerifySaturationProtection) {
|
||||
// If this isn't satisfied, we're not testing anything.
|
||||
ASSERT_GT(kInputValue * 3, kInt16Max);
|
||||
ASSERT_LT(1.1 * kExpectedOutput, kInt16Max);
|
||||
RunMixingTest(3, 0, 3, kInputValue, 1.1 * kExpectedOutput,
|
||||
0.9 * kExpectedOutput);
|
||||
RunMixingTest(3, 0, 3, kInputValue, 1.15 * kExpectedOutput,
|
||||
0.85 * kExpectedOutput);
|
||||
}
|
||||
|
||||
TEST_F(MixingTest, SaturationProtectionHasNoEffectOnOneChannel) {
|
||||
@ -224,22 +224,22 @@ TEST_F(MixingTest, SaturationProtectionHasNoEffectOnOneChannel) {
|
||||
TEST_F(MixingTest, VerifyAnonymousAndNormalParticipantMixing) {
|
||||
const int16_t kInputValue = 1000;
|
||||
const int16_t kExpectedOutput = kInputValue * 2;
|
||||
RunMixingTest(1, 1, 1, kInputValue, 1.1 * kExpectedOutput,
|
||||
0.9 * kExpectedOutput);
|
||||
RunMixingTest(1, 1, 1, kInputValue, 1.15 * kExpectedOutput,
|
||||
0.85 * kExpectedOutput);
|
||||
}
|
||||
|
||||
TEST_F(MixingTest, AnonymousParticipantsAreAlwaysMixed) {
|
||||
const int16_t kInputValue = 1000;
|
||||
const int16_t kExpectedOutput = kInputValue * 4;
|
||||
RunMixingTest(3, 1, 3, kInputValue, 1.1 * kExpectedOutput,
|
||||
0.9 * kExpectedOutput);
|
||||
RunMixingTest(3, 1, 3, kInputValue, 1.15 * kExpectedOutput,
|
||||
0.85 * kExpectedOutput);
|
||||
}
|
||||
|
||||
TEST_F(MixingTest, VerifyStereoAndMonoMixing) {
|
||||
const int16_t kInputValue = 1000;
|
||||
const int16_t kExpectedOutput = kInputValue * 2;
|
||||
RunMixingTest(2, 0, 1, kInputValue, 1.1 * kExpectedOutput,
|
||||
0.9 * kExpectedOutput);
|
||||
RunMixingTest(2, 0, 1, kInputValue, 1.15 * kExpectedOutput,
|
||||
0.85 * kExpectedOutput);
|
||||
}
|
||||
|
||||
} // namespace webrtc
|
||||
|
Loading…
Reference in New Issue
Block a user