OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2004 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2004 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 3249 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3260 EXPECT_EQ(0, nonexistent_parameters.encodings.size()); | 3260 EXPECT_EQ(0, nonexistent_parameters.encodings.size()); |
3261 | 3261 |
3262 nonexistent_parameters.encodings.push_back(webrtc::RtpEncodingParameters()); | 3262 nonexistent_parameters.encodings.push_back(webrtc::RtpEncodingParameters()); |
3263 EXPECT_FALSE(channel_->SetRtpParameters(last_ssrc_, nonexistent_parameters)); | 3263 EXPECT_FALSE(channel_->SetRtpParameters(last_ssrc_, nonexistent_parameters)); |
3264 } | 3264 } |
3265 | 3265 |
3266 TEST_F(WebRtcVideoChannel2Test, | 3266 TEST_F(WebRtcVideoChannel2Test, |
3267 CannotSetRtpParametersWithIncorrectNumberOfEncodings) { | 3267 CannotSetRtpParametersWithIncorrectNumberOfEncodings) { |
3268 // This test verifies that setting RtpParameters succeeds only if | 3268 // This test verifies that setting RtpParameters succeeds only if |
3269 // the structure contains exactly one encoding. | 3269 // the structure contains exactly one encoding. |
3270 // TODO(skvlad): Update this test when we strat supporting setting parameters | 3270 // TODO(skvlad): Update this test when we start supporting setting parameters |
3271 // for each encoding individually. | 3271 // for each encoding individually. |
3272 | 3272 |
3273 AddSendStream(); | 3273 AddSendStream(); |
3274 // Setting RtpParameters with no encoding is expected to fail. | 3274 // Setting RtpParameters with no encoding is expected to fail. |
3275 webrtc::RtpParameters parameters; | 3275 webrtc::RtpParameters parameters; |
3276 EXPECT_FALSE(channel_->SetRtpParameters(last_ssrc_, parameters)); | 3276 EXPECT_FALSE(channel_->SetRtpParameters(last_ssrc_, parameters)); |
3277 // Setting RtpParameters with exactly one encoding should succeed. | 3277 // Setting RtpParameters with exactly one encoding should succeed. |
3278 parameters.encodings.push_back(webrtc::RtpEncodingParameters()); | 3278 parameters.encodings.push_back(webrtc::RtpEncodingParameters()); |
3279 EXPECT_TRUE(channel_->SetRtpParameters(last_ssrc_, parameters)); | 3279 EXPECT_TRUE(channel_->SetRtpParameters(last_ssrc_, parameters)); |
3280 // Two or more encodings should result in failure. | 3280 // Two or more encodings should result in failure. |
3281 parameters.encodings.push_back(webrtc::RtpEncodingParameters()); | 3281 parameters.encodings.push_back(webrtc::RtpEncodingParameters()); |
3282 EXPECT_FALSE(channel_->SetRtpParameters(last_ssrc_, parameters)); | 3282 EXPECT_FALSE(channel_->SetRtpParameters(last_ssrc_, parameters)); |
3283 } | 3283 } |
3284 | 3284 |
| 3285 // Test that a stream will not be sending if its encoding is made |
| 3286 // inactive through SetRtpParameters. |
| 3287 // TODO(deadbeef): Update this test when we start supporting setting parameters |
| 3288 // for each encoding individually. |
| 3289 TEST_F(WebRtcVideoChannel2Test, SetRtpParametersEncodingsActive) { |
| 3290 FakeVideoSendStream* stream = AddSendStream(); |
| 3291 EXPECT_TRUE(channel_->SetSend(true)); |
| 3292 EXPECT_TRUE(stream->IsSending()); |
| 3293 |
| 3294 // Get current parameters and change "active" to false. |
| 3295 webrtc::RtpParameters parameters = channel_->GetRtpParameters(last_ssrc_); |
| 3296 ASSERT_EQ(1u, parameters.encodings.size()); |
| 3297 ASSERT_TRUE(parameters.encodings[0].active); |
| 3298 parameters.encodings[0].active = false; |
| 3299 EXPECT_TRUE(channel_->SetRtpParameters(last_ssrc_, parameters)); |
| 3300 EXPECT_FALSE(stream->IsSending()); |
| 3301 |
| 3302 // Now change it back to active and verify we resume sending. |
| 3303 parameters.encodings[0].active = true; |
| 3304 EXPECT_TRUE(channel_->SetRtpParameters(last_ssrc_, parameters)); |
| 3305 EXPECT_TRUE(stream->IsSending()); |
| 3306 } |
| 3307 |
3285 void WebRtcVideoChannel2Test::TestReceiverLocalSsrcConfiguration( | 3308 void WebRtcVideoChannel2Test::TestReceiverLocalSsrcConfiguration( |
3286 bool receiver_first) { | 3309 bool receiver_first) { |
3287 EXPECT_TRUE(channel_->SetSendParameters(send_parameters_)); | 3310 EXPECT_TRUE(channel_->SetSendParameters(send_parameters_)); |
3288 | 3311 |
3289 const uint32_t kSenderSsrc = 0xC0FFEE; | 3312 const uint32_t kSenderSsrc = 0xC0FFEE; |
3290 const uint32_t kSecondSenderSsrc = 0xBADCAFE; | 3313 const uint32_t kSecondSenderSsrc = 0xBADCAFE; |
3291 const uint32_t kReceiverSsrc = 0x4711; | 3314 const uint32_t kReceiverSsrc = 0x4711; |
3292 const uint32_t kExpectedDefaultReceiverSsrc = 1; | 3315 const uint32_t kExpectedDefaultReceiverSsrc = 1; |
3293 | 3316 |
3294 if (receiver_first) { | 3317 if (receiver_first) { |
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3469 } | 3492 } |
3470 | 3493 |
3471 // Test that we normalize send codec format size in simulcast. | 3494 // Test that we normalize send codec format size in simulcast. |
3472 TEST_F(WebRtcVideoChannel2SimulcastTest, SetSendCodecsWithOddSizeInSimulcast) { | 3495 TEST_F(WebRtcVideoChannel2SimulcastTest, SetSendCodecsWithOddSizeInSimulcast) { |
3473 cricket::VideoCodec codec(kVp8Codec270p); | 3496 cricket::VideoCodec codec(kVp8Codec270p); |
3474 codec.width += 1; | 3497 codec.width += 1; |
3475 codec.height += 1; | 3498 codec.height += 1; |
3476 VerifySimulcastSettings(codec, 2, 2); | 3499 VerifySimulcastSettings(codec, 2, 2); |
3477 } | 3500 } |
3478 } // namespace cricket | 3501 } // namespace cricket |
OLD | NEW |