Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(827)

Unified Diff: talk/media/base/videoengine_unittest.h

Issue 1327933002: Full impl of NnChannel::SetSendParameters and NnChannel::SetRecvParameters (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: rebase Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: talk/media/base/videoengine_unittest.h
diff --git a/talk/media/base/videoengine_unittest.h b/talk/media/base/videoengine_unittest.h
index c74479c7da718df63896e8d2bdf0ea2383f7e3b3..3dc01f49a362896c008b1d813cf361881c7be2f3 100644
--- a/talk/media/base/videoengine_unittest.h
+++ b/talk/media/base/videoengine_unittest.h
@@ -463,7 +463,9 @@ class VideoMediaChannelTest : public testing::Test,
network_interface_.SetDestination(channel_.get());
channel_->SetInterface(&network_interface_);
media_error_ = cricket::VideoMediaChannel::ERROR_NONE;
- channel_->SetRecvCodecs(engine_.codecs());
+ cricket::VideoRecvParameters parameters;
+ parameters.codecs = engine_.codecs();
+ channel_->SetRecvParameters(parameters);
EXPECT_TRUE(channel_->AddSendStream(DefaultSendStreamParams()));
video_capturer_.reset(CreateFakeVideoCapturer());
cricket::VideoFormat format(640, 480,
@@ -524,9 +526,6 @@ class VideoMediaChannelTest : public testing::Test,
return SetOneCodec(cricket::VideoCodec(pt, name, w, h, fr, 0));
}
bool SetOneCodec(const cricket::VideoCodec& codec) {
- std::vector<cricket::VideoCodec> codecs;
- codecs.push_back(codec);
-
cricket::VideoFormat capture_format(codec.width, codec.height,
cricket::VideoFormat::FpsToInterval(codec.framerate),
cricket::FOURCC_I420);
@@ -540,10 +539,14 @@ class VideoMediaChannelTest : public testing::Test,
bool sending = channel_->sending();
bool success = SetSend(false);
- if (success)
- success = channel_->SetSendCodecs(codecs);
- if (success)
+ if (success) {
+ cricket::VideoSendParameters parameters;
+ parameters.codecs.push_back(codec);
+ success = channel_->SetSendParameters(parameters);
+ }
+ if (success) {
success = SetSend(sending);
+ }
return success;
}
bool SetSend(bool send) {
@@ -854,9 +857,9 @@ class VideoMediaChannelTest : public testing::Test,
void GetStatsMultipleRecvStreams() {
cricket::FakeVideoRenderer renderer1, renderer2;
EXPECT_TRUE(SetOneCodec(DefaultCodec()));
- cricket::VideoOptions vmo;
- vmo.conference_mode.Set(true);
- EXPECT_TRUE(channel_->SetOptions(vmo));
+ cricket::VideoSendParameters parameters;
+ parameters.options.conference_mode.Set(true);
+ EXPECT_TRUE(channel_->SetSendParameters(parameters));
EXPECT_TRUE(SetSend(true));
EXPECT_TRUE(channel_->AddRecvStream(
cricket::StreamParams::CreateLegacy(1)));
@@ -902,9 +905,9 @@ class VideoMediaChannelTest : public testing::Test,
// Normal setup; note that we set the SSRC explicitly to ensure that
// it will come first in the senders map.
EXPECT_TRUE(SetOneCodec(DefaultCodec()));
- cricket::VideoOptions vmo;
- vmo.conference_mode.Set(true);
- EXPECT_TRUE(channel_->SetOptions(vmo));
+ cricket::VideoSendParameters parameters;
+ parameters.options.conference_mode.Set(true);
+ EXPECT_TRUE(channel_->SetSendParameters(parameters));
EXPECT_TRUE(channel_->AddRecvStream(
cricket::StreamParams::CreateLegacy(kSsrc)));
EXPECT_TRUE(channel_->SetRenderer(kSsrc, &renderer_));
@@ -969,8 +972,11 @@ class VideoMediaChannelTest : public testing::Test,
// Test that we can set the bandwidth.
void SetSendBandwidth() {
- EXPECT_TRUE(channel_->SetMaxSendBandwidth(-1)); // <= 0 means unlimited.
- EXPECT_TRUE(channel_->SetMaxSendBandwidth(128 * 1024));
+ cricket::VideoSendParameters parameters;
+ parameters.max_bandwidth_bps = -1; // <= 0 means unlimited.
+ EXPECT_TRUE(channel_->SetSendParameters(parameters));
+ parameters.max_bandwidth_bps = 128 * 1024;
+ EXPECT_TRUE(channel_->SetSendParameters(parameters));
}
// Test that we can set the SSRC for the default send source.
void SetSendSsrc() {
@@ -1076,33 +1082,13 @@ class VideoMediaChannelTest : public testing::Test,
EXPECT_EQ(789u, ssrc);
}
- // Tests adding streams already exists returns false.
- void AddRecvStreamsAlreadyExist() {
- cricket::VideoOptions vmo;
- vmo.conference_mode.Set(true);
- EXPECT_TRUE(channel_->SetOptions(vmo));
-
- EXPECT_FALSE(channel_->AddRecvStream(
- cricket::StreamParams::CreateLegacy(0)));
-
- EXPECT_TRUE(channel_->AddRecvStream(
- cricket::StreamParams::CreateLegacy(1)));
- EXPECT_FALSE(channel_->AddRecvStream(
- cricket::StreamParams::CreateLegacy(1)));
-
- EXPECT_TRUE(channel_->RemoveRecvStream(1));
- EXPECT_FALSE(channel_->AddRecvStream(
- cricket::StreamParams::CreateLegacy(0)));
- EXPECT_TRUE(channel_->AddRecvStream(
- cricket::StreamParams::CreateLegacy(1)));
- }
-
// Tests setting up and configuring multiple incoming streams.
void AddRemoveRecvStreams() {
cricket::FakeVideoRenderer renderer1, renderer2;
- cricket::VideoOptions vmo;
- vmo.conference_mode.Set(true);
- EXPECT_TRUE(channel_->SetOptions(vmo));
+ cricket::VideoSendParameters parameters;
+ parameters.options.conference_mode.Set(true);
+ EXPECT_TRUE(channel_->SetSendParameters(parameters));
+
// Ensure we can't set the renderer on a non-existent stream.
EXPECT_FALSE(channel_->SetRenderer(1, &renderer1));
EXPECT_FALSE(channel_->SetRenderer(2, &renderer2));
@@ -1232,9 +1218,9 @@ class VideoMediaChannelTest : public testing::Test,
void SimulateConference() {
cricket::FakeVideoRenderer renderer1, renderer2;
EXPECT_TRUE(SetDefaultCodec());
- cricket::VideoOptions vmo;
- vmo.conference_mode.Set(true);
- EXPECT_TRUE(channel_->SetOptions(vmo));
+ cricket::VideoSendParameters parameters;
+ parameters.options.conference_mode.Set(true);
+ EXPECT_TRUE(channel_->SetSendParameters(parameters));
EXPECT_TRUE(SetSend(true));
EXPECT_TRUE(channel_->SetRender(true));
EXPECT_TRUE(channel_->AddRecvStream(
@@ -1752,10 +1738,10 @@ class VideoMediaChannelTest : public testing::Test,
// Tests that we can send and receive frames with early receive.
void TwoStreamsSendAndUnsignalledRecv(const cricket::VideoCodec& codec) {
- cricket::VideoOptions vmo;
- vmo.conference_mode.Set(true);
- vmo.unsignalled_recv_stream_limit.Set(1);
- EXPECT_TRUE(channel_->SetOptions(vmo));
+ cricket::VideoSendParameters parameters;
+ parameters.options.conference_mode.Set(true);
+ parameters.options.unsignalled_recv_stream_limit.Set(1);
+ EXPECT_TRUE(channel_->SetSendParameters(parameters));
SetUpSecondStreamWithNoRecv();
// Test sending and receiving on first stream.
EXPECT_TRUE(channel_->SetRender(true));
@@ -1782,65 +1768,6 @@ class VideoMediaChannelTest : public testing::Test,
EXPECT_EQ_WAIT(1, renderer2_.num_rendered_frames(), kTimeout);
}
- // Tests that we cannot receive key frames with unsignalled recv disabled.
pthatcher1 2015/09/14 19:42:02 We are you removing the tests for unsignalled_recv
the sun 2015/09/14 19:58:00 These are helper functions which turned out to be
- void TwoStreamsSendAndFailUnsignalledRecv(const cricket::VideoCodec& codec) {
- cricket::VideoOptions vmo;
- vmo.conference_mode.Set(true);
- vmo.unsignalled_recv_stream_limit.Set(0);
- EXPECT_TRUE(channel_->SetOptions(vmo));
- SetUpSecondStreamWithNoRecv();
- // Test sending and receiving on first stream.
- EXPECT_TRUE(channel_->SetRender(true));
- Send(codec);
- EXPECT_EQ_WAIT(2, NumRtpPackets(), kTimeout);
- rtc::Thread::Current()->ProcessMessages(100);
- EXPECT_EQ_WAIT(1, renderer_.num_rendered_frames(), kTimeout);
- EXPECT_EQ_WAIT(0, renderer2_.num_rendered_frames(), kTimeout);
- // Give a chance for the decoder to process before adding the receiver.
- rtc::Thread::Current()->ProcessMessages(10);
- // Test sending and receiving on second stream.
- EXPECT_TRUE(channel_->AddRecvStream(
- cricket::StreamParams::CreateLegacy(kSsrc + 2)));
- EXPECT_TRUE(channel_->SetRenderer(kSsrc + 2, &renderer2_));
- SendFrame();
- EXPECT_TRUE_WAIT(renderer_.num_rendered_frames() >= 1, kTimeout);
- EXPECT_EQ_WAIT(4, NumRtpPackets(), kTimeout);
- // We dont expect any frames here, because the key frame would have been
- // lost in the earlier packet. This is the case we want to solve with early
- // receive.
- EXPECT_EQ(0, renderer2_.num_rendered_frames());
- }
-
- // Tests that we drop key frames when conference mode is disabled and we
- // receive rtp packets on unsignalled streams.
- void TwoStreamsSendAndFailUnsignalledRecvInOneToOne(
- const cricket::VideoCodec& codec) {
- cricket::VideoOptions vmo;
- vmo.conference_mode.Set(false);
- vmo.unsignalled_recv_stream_limit.Set(1);
- EXPECT_TRUE(channel_->SetOptions(vmo));
- SetUpSecondStreamWithNoRecv();
- // Test sending and receiving on first stream.
- EXPECT_TRUE(channel_->SetRender(true));
- Send(codec);
- EXPECT_EQ_WAIT(2, NumRtpPackets(), kTimeout);
- // In one-to-one mode, we deliver frames to the default channel if there
- // is no registered recv channel for the ssrc.
- EXPECT_TRUE_WAIT(renderer_.num_rendered_frames() >= 1, kTimeout);
- // Give a chance for the decoder to process before adding the receiver.
- rtc::Thread::Current()->ProcessMessages(100);
- // Test sending and receiving on second stream.
- EXPECT_TRUE(channel_->AddRecvStream(
- cricket::StreamParams::CreateLegacy(kSsrc + 2)));
- EXPECT_TRUE(channel_->SetRenderer(kSsrc + 2, &renderer2_));
- SendFrame();
- EXPECT_TRUE_WAIT(renderer_.num_rendered_frames() >= 1, kTimeout);
- EXPECT_EQ_WAIT(4, NumRtpPackets(), kTimeout);
- // We dont expect any frames here, because the key frame would have been
- // delivered to default channel.
- EXPECT_EQ(0, renderer2_.num_rendered_frames());
- }
-
// Tests that we drop key frames when conference mode is enabled and we
// receive rtp packets on unsignalled streams. Removal of a unsignalled recv
// stream is successful.

Powered by Google App Engine
This is Rietveld 408576698