Index: webrtc/call/call_perf_tests.cc |
diff --git a/webrtc/call/call_perf_tests.cc b/webrtc/call/call_perf_tests.cc |
index f4422f4433ea48326ebb5ab4d93e22ccdd99189f..2bb836aecbbd19f402d753126df8d3fb4c9debdc 100644 |
--- a/webrtc/call/call_perf_tests.cc |
+++ b/webrtc/call/call_perf_tests.cc |
@@ -49,8 +49,14 @@ namespace webrtc { |
class CallPerfTest : public test::CallTest { |
protected: |
- void TestAudioVideoSync(bool fec, |
- bool create_audio_first, |
+ enum class FecMode { |
+ kOn, kOff |
+ }; |
+ enum class CreateOrder { |
+ kAudioFirst, kVideoFirst |
+ }; |
+ void TestAudioVideoSync(FecMode fec, |
+ CreateOrder create_first, |
float video_ntp_speed, |
float video_rtp_speed, |
float audio_rtp_speed); |
@@ -196,8 +202,8 @@ class VideoRtcpAndSyncObserver : public SyncRtcpObserver, public VideoRenderer { |
int64_t first_time_in_sync_; |
}; |
-void CallPerfTest::TestAudioVideoSync(bool fec, |
- bool create_audio_first, |
+void CallPerfTest::TestAudioVideoSync(FecMode fec, |
+ CreateOrder create_first, |
float video_ntp_speed, |
float video_rtp_speed, |
float audio_rtp_speed) { |
@@ -308,7 +314,7 @@ void CallPerfTest::TestAudioVideoSync(bool fec, |
EXPECT_EQ(0, voe_codec->SetSendCodec(send_channel_id, isac)); |
video_send_config_.rtp.nack.rtp_history_ms = kNackRtpHistoryMs; |
- if (fec) { |
+ if (fec == FecMode::kOn) { |
video_send_config_.rtp.fec.red_payload_type = kRedPayloadType; |
video_send_config_.rtp.fec.ulpfec_payload_type = kUlpfecPayloadType; |
video_receive_configs_[0].rtp.fec.red_payload_type = kRedPayloadType; |
@@ -326,7 +332,7 @@ void CallPerfTest::TestAudioVideoSync(bool fec, |
AudioReceiveStream* audio_receive_stream; |
- if (create_audio_first) { |
+ if (create_first == CreateOrder::kAudioFirst) { |
audio_receive_stream = |
receiver_call_->CreateAudioReceiveStream(audio_recv_config); |
CreateVideoStreams(); |
@@ -377,48 +383,24 @@ void CallPerfTest::TestAudioVideoSync(bool fec, |
VoiceEngine::Delete(voice_engine); |
} |
-TEST_F(CallPerfTest, PlaysOutAudioAndVideoInSyncWithAudioCreatedFirst) { |
- TestAudioVideoSync(false, true, DriftingClock::kNoDrift, |
- DriftingClock::kNoDrift, DriftingClock::kNoDrift); |
-} |
- |
-TEST_F(CallPerfTest, PlaysOutAudioAndVideoInSyncWithVideoCreatedFirst) { |
- TestAudioVideoSync(false, false, DriftingClock::kNoDrift, |
- DriftingClock::kNoDrift, DriftingClock::kNoDrift); |
-} |
- |
-TEST_F(CallPerfTest, PlaysOutAudioAndVideoInSyncWithFec) { |
- TestAudioVideoSync(true, false, DriftingClock::kNoDrift, |
- DriftingClock::kNoDrift, DriftingClock::kNoDrift); |
-} |
- |
// TODO(danilchap): Reenable after adding support for frame capture clock |
// that is not in sync with local TickTime clock. |
TEST_F(CallPerfTest, DISABLED_PlaysOutAudioAndVideoInSyncWithVideoNtpDrift) { |
- TestAudioVideoSync(false, true, DriftingClock::PercentsFaster(10.0f), |
+ TestAudioVideoSync(FecMode::kOff, CreateOrder::kAudioFirst, |
+ DriftingClock::PercentsFaster(10.0f), |
DriftingClock::kNoDrift, DriftingClock::kNoDrift); |
} |
-TEST_F(CallPerfTest, PlaysOutAudioAndVideoInSyncWithAudioRtpDrift) { |
- TestAudioVideoSync(false, true, DriftingClock::kNoDrift, |
- DriftingClock::kNoDrift, |
- DriftingClock::PercentsFaster(30.0f)); |
-} |
- |
-TEST_F(CallPerfTest, PlaysOutAudioAndVideoInSyncWithVideoRtpDrift) { |
- TestAudioVideoSync(false, true, DriftingClock::kNoDrift, |
- DriftingClock::PercentsFaster(30.0f), |
- DriftingClock::kNoDrift); |
-} |
- |
TEST_F(CallPerfTest, PlaysOutAudioAndVideoInSyncWithAudioFasterThanVideoDrift) { |
- TestAudioVideoSync(false, true, DriftingClock::kNoDrift, |
+ TestAudioVideoSync(FecMode::kOff, CreateOrder::kAudioFirst, |
+ DriftingClock::kNoDrift, |
DriftingClock::PercentsSlower(30.0f), |
DriftingClock::PercentsFaster(30.0f)); |
} |
TEST_F(CallPerfTest, PlaysOutAudioAndVideoInSyncWithVideoFasterThanAudioDrift) { |
- TestAudioVideoSync(false, true, DriftingClock::kNoDrift, |
+ TestAudioVideoSync(FecMode::kOn, CreateOrder::kVideoFirst, |
+ DriftingClock::kNoDrift, |
DriftingClock::PercentsFaster(30.0f), |
DriftingClock::PercentsSlower(30.0f)); |
} |