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:
andrew@webrtc.org 2013-01-02 18:50:13 +00:00
parent 00c7c4315b
commit b2b628d5cd

View File

@ -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