| Index: webrtc/voice_engine/test/auto_test/standard/video_sync_test.cc
|
| diff --git a/webrtc/voice_engine/test/auto_test/standard/video_sync_test.cc b/webrtc/voice_engine/test/auto_test/standard/video_sync_test.cc
|
| deleted file mode 100644
|
| index 0aacd53bb28a5873b294afc3a846f01ce8b0086d..0000000000000000000000000000000000000000
|
| --- a/webrtc/voice_engine/test/auto_test/standard/video_sync_test.cc
|
| +++ /dev/null
|
| @@ -1,129 +0,0 @@
|
| -/*
|
| - * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
|
| - *
|
| - * Use of this source code is governed by a BSD-style license
|
| - * that can be found in the LICENSE file in the root of the source
|
| - * tree. An additional intellectual property rights grant can be found
|
| - * in the file PATENTS. All contributing project authors may
|
| - * be found in the AUTHORS file in the root of the source tree.
|
| - */
|
| -
|
| -#include <math.h>
|
| -
|
| -#include <numeric>
|
| -#include <vector>
|
| -
|
| -#include "webrtc/voice_engine/test/auto_test/fixtures/after_streaming_fixture.h"
|
| -
|
| -#ifdef WEBRTC_IOS
|
| - const int kMinimumReasonableDelayEstimateMs = 30;
|
| -#else
|
| - const int kMinimumReasonableDelayEstimateMs = 45;
|
| -#endif // !WEBRTC_IOS
|
| -
|
| -class VideoSyncTest : public AfterStreamingFixture {
|
| - protected:
|
| - // This test will verify that delay estimates converge (e.g. the standard
|
| - // deviation for the last five seconds' estimates is less than 20) without
|
| - // manual observation. The test runs for 15 seconds, sampling once per second.
|
| - // All samples are checked so they are greater than |min_estimate|.
|
| - int CollectEstimatesDuring15Seconds(int min_estimate) {
|
| - Sleep(1000);
|
| -
|
| - std::vector<int> all_delay_estimates;
|
| - for (int second = 0; second < 15; second++) {
|
| - int jitter_buffer_delay_ms = 0;
|
| - int playout_buffer_delay_ms = 0;
|
| - EXPECT_EQ(0, voe_vsync_->GetDelayEstimate(channel_,
|
| - &jitter_buffer_delay_ms,
|
| - &playout_buffer_delay_ms));
|
| -
|
| - EXPECT_GT(jitter_buffer_delay_ms, min_estimate) <<
|
| - "The delay estimate can not conceivably get lower than " <<
|
| - min_estimate << " ms, it's unrealistic.";
|
| -
|
| - all_delay_estimates.push_back(jitter_buffer_delay_ms);
|
| - Sleep(1000);
|
| - }
|
| -
|
| - return ComputeStandardDeviation(
|
| - all_delay_estimates.begin() + 10, all_delay_estimates.end());
|
| - }
|
| -
|
| - void CheckEstimatesConvergeReasonablyWell(int min_estimate) {
|
| - float standard_deviation = CollectEstimatesDuring15Seconds(min_estimate);
|
| - EXPECT_LT(standard_deviation, 30.0f);
|
| - }
|
| -
|
| - // Computes the standard deviation by first estimating the sample variance
|
| - // with an unbiased estimator.
|
| - float ComputeStandardDeviation(std::vector<int>::const_iterator start,
|
| - std::vector<int>::const_iterator end) const {
|
| - int num_elements = end - start;
|
| - int mean = std::accumulate(start, end, 0) / num_elements;
|
| - assert(num_elements > 1);
|
| -
|
| - float variance = 0;
|
| - for (; start != end; ++start) {
|
| - variance += (*start - mean) * (*start - mean) / (num_elements - 1);
|
| - }
|
| - return sqrt(variance);
|
| - }
|
| -};
|
| -
|
| -TEST_F(VideoSyncTest,
|
| - CanNotGetPlayoutTimestampWhilePlayingWithoutSettingItFirst) {
|
| - unsigned int ignored;
|
| - EXPECT_EQ(-1, voe_vsync_->GetPlayoutTimestamp(channel_, ignored));
|
| -}
|
| -
|
| -TEST_F(VideoSyncTest, CannotSetInitTimestampWhilePlaying) {
|
| - EXPECT_EQ(-1, voe_vsync_->SetInitTimestamp(channel_, 12345));
|
| -}
|
| -
|
| -TEST_F(VideoSyncTest, CannotSetInitSequenceNumberWhilePlaying) {
|
| - EXPECT_EQ(-1, voe_vsync_->SetInitSequenceNumber(channel_, 123));
|
| -}
|
| -
|
| -TEST_F(VideoSyncTest, CanSetInitTimestampWhileStopped) {
|
| - EXPECT_EQ(0, voe_base_->StopSend(channel_));
|
| - EXPECT_EQ(0, voe_vsync_->SetInitTimestamp(channel_, 12345));
|
| -}
|
| -
|
| -TEST_F(VideoSyncTest, CanSetInitSequenceNumberWhileStopped) {
|
| - EXPECT_EQ(0, voe_base_->StopSend(channel_));
|
| - EXPECT_EQ(0, voe_vsync_->SetInitSequenceNumber(channel_, 123));
|
| -}
|
| -
|
| -// TODO(phoglund): pending investigation in
|
| -// http://code.google.com/p/webrtc/issues/detail?id=438
|
| -TEST_F(VideoSyncTest,
|
| - DISABLED_DelayEstimatesStabilizeDuring15sAndAreNotTooLow) {
|
| - EXPECT_EQ(0, voe_base_->StopSend(channel_));
|
| - EXPECT_EQ(0, voe_vsync_->SetInitTimestamp(channel_, 12345));
|
| - EXPECT_EQ(0, voe_vsync_->SetInitSequenceNumber(channel_, 123));
|
| - EXPECT_EQ(0, voe_base_->StartSend(channel_));
|
| -
|
| - CheckEstimatesConvergeReasonablyWell(kMinimumReasonableDelayEstimateMs);
|
| -}
|
| -
|
| -// TODO(phoglund): pending investigation in
|
| -// http://code.google.com/p/webrtc/issues/detail?id=438
|
| -TEST_F(VideoSyncTest,
|
| - DISABLED_DelayEstimatesStabilizeAfterNetEqMinDelayChanges45s) {
|
| - EXPECT_EQ(0, voe_base_->StopSend(channel_));
|
| - EXPECT_EQ(0, voe_vsync_->SetInitTimestamp(channel_, 12345));
|
| - EXPECT_EQ(0, voe_vsync_->SetInitSequenceNumber(channel_, 123));
|
| - EXPECT_EQ(0, voe_base_->StartSend(channel_));
|
| -
|
| - CheckEstimatesConvergeReasonablyWell(kMinimumReasonableDelayEstimateMs);
|
| - EXPECT_EQ(0, voe_vsync_->SetMinimumPlayoutDelay(channel_, 200));
|
| - CheckEstimatesConvergeReasonablyWell(kMinimumReasonableDelayEstimateMs);
|
| - EXPECT_EQ(0, voe_vsync_->SetMinimumPlayoutDelay(channel_, 0));
|
| - CheckEstimatesConvergeReasonablyWell(kMinimumReasonableDelayEstimateMs);
|
| -}
|
| -
|
| -TEST_F(VideoSyncTest, CanGetPlayoutBufferSize) {
|
| - int ignored;
|
| - EXPECT_EQ(0, voe_vsync_->GetPlayoutBufferSize(ignored));
|
| -}
|
|
|