OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 964 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
975 StartRecording(); | 975 StartRecording(); |
976 StartPlayout(); | 976 StartPlayout(); |
977 test_is_done_->Wait(std::max(kTestTimeOutInMilliseconds, | 977 test_is_done_->Wait(std::max(kTestTimeOutInMilliseconds, |
978 1000 * kFullDuplexTimeInSec)); | 978 1000 * kFullDuplexTimeInSec)); |
979 StopPlayout(); | 979 StopPlayout(); |
980 StopRecording(); | 980 StopRecording(); |
981 | 981 |
982 // These thresholds are set rather high to accomodate differences in hardware | 982 // These thresholds are set rather high to accomodate differences in hardware |
983 // in several devices, so this test can be used in swarming. | 983 // in several devices, so this test can be used in swarming. |
984 // See http://bugs.webrtc.org/6464 | 984 // See http://bugs.webrtc.org/6464 |
985 EXPECT_LE(fifo_audio_stream->average_size(), 30u); | 985 EXPECT_LE(fifo_audio_stream->average_size(), 60u); |
986 EXPECT_LE(fifo_audio_stream->largest_size(), 40u); | 986 EXPECT_LE(fifo_audio_stream->largest_size(), 70u); |
987 } | 987 } |
988 | 988 |
989 // Measures loopback latency and reports the min, max and average values for | 989 // Measures loopback latency and reports the min, max and average values for |
990 // a full duplex audio session. | 990 // a full duplex audio session. |
991 // The latency is measured like so: | 991 // The latency is measured like so: |
992 // - Insert impulses periodically on the output side. | 992 // - Insert impulses periodically on the output side. |
993 // - Detect the impulses on the input side. | 993 // - Detect the impulses on the input side. |
994 // - Measure the time difference between the transmit time and receive time. | 994 // - Measure the time difference between the transmit time and receive time. |
995 // - Store time differences in a vector and calculate min, max and average. | 995 // - Store time differences in a vector and calculate min, max and average. |
996 // This test requires a special hardware called Audio Loopback Dongle. | 996 // This test requires a special hardware called Audio Loopback Dongle. |
(...skipping 17 matching lines...) Expand all Loading... |
1014 StopPlayout(); | 1014 StopPlayout(); |
1015 StopRecording(); | 1015 StopRecording(); |
1016 // Verify that the correct number of transmitted impulses are detected. | 1016 // Verify that the correct number of transmitted impulses are detected. |
1017 EXPECT_EQ(latency_audio_stream->num_latency_values(), | 1017 EXPECT_EQ(latency_audio_stream->num_latency_values(), |
1018 static_cast<size_t>( | 1018 static_cast<size_t>( |
1019 kImpulseFrequencyInHz * kMeasureLatencyTimeInSec - 1)); | 1019 kImpulseFrequencyInHz * kMeasureLatencyTimeInSec - 1)); |
1020 latency_audio_stream->PrintResults(); | 1020 latency_audio_stream->PrintResults(); |
1021 } | 1021 } |
1022 | 1022 |
1023 } // namespace webrtc | 1023 } // namespace webrtc |
OLD | NEW |