| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2008 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2008 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 377 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 388 resulting_parameters.encodings[0].max_bitrate_bps); | 388 resulting_parameters.encodings[0].max_bitrate_bps); |
| 389 | 389 |
| 390 // Verify that the codec settings have the expected bitrate. | 390 // Verify that the codec settings have the expected bitrate. |
| 391 EXPECT_EQ(expected_codec_bitrate, GetCodecBitrate(kSsrcX)); | 391 EXPECT_EQ(expected_codec_bitrate, GetCodecBitrate(kSsrcX)); |
| 392 } | 392 } |
| 393 | 393 |
| 394 void SetSendCodecsShouldWorkForBitrates(const char* min_bitrate_kbps, | 394 void SetSendCodecsShouldWorkForBitrates(const char* min_bitrate_kbps, |
| 395 int expected_min_bitrate_bps, | 395 int expected_min_bitrate_bps, |
| 396 const char* start_bitrate_kbps, | 396 const char* start_bitrate_kbps, |
| 397 int expected_start_bitrate_bps, | 397 int expected_start_bitrate_bps, |
| 398 const char* max_bitrate_kbps, | 398 const char* max_bitrate_kbps) { |
| 399 int expected_max_bitrate_bps) { | |
| 400 EXPECT_TRUE(SetupSendStream()); | 399 EXPECT_TRUE(SetupSendStream()); |
| 401 auto& codecs = send_parameters_.codecs; | 400 auto& codecs = send_parameters_.codecs; |
| 402 codecs.clear(); | 401 codecs.clear(); |
| 403 codecs.push_back(kOpusCodec); | 402 codecs.push_back(kOpusCodec); |
| 404 codecs[0].params[cricket::kCodecParamMinBitrate] = min_bitrate_kbps; | 403 codecs[0].params[cricket::kCodecParamMinBitrate] = min_bitrate_kbps; |
| 405 codecs[0].params[cricket::kCodecParamStartBitrate] = start_bitrate_kbps; | 404 codecs[0].params[cricket::kCodecParamStartBitrate] = start_bitrate_kbps; |
| 406 codecs[0].params[cricket::kCodecParamMaxBitrate] = max_bitrate_kbps; | 405 codecs[0].params[cricket::kCodecParamMaxBitrate] = max_bitrate_kbps; |
| 407 SetSendParameters(send_parameters_); | 406 SetSendParameters(send_parameters_); |
| 408 | 407 |
| 409 EXPECT_EQ(expected_min_bitrate_bps, | 408 EXPECT_EQ(expected_min_bitrate_bps, |
| 410 call_.GetConfig().bitrate_config.min_bitrate_bps); | 409 call_.GetConfig().bitrate_config.min_bitrate_bps); |
| 411 EXPECT_EQ(expected_start_bitrate_bps, | 410 EXPECT_EQ(expected_start_bitrate_bps, |
| 412 call_.GetConfig().bitrate_config.start_bitrate_bps); | 411 call_.GetConfig().bitrate_config.start_bitrate_bps); |
| 413 EXPECT_EQ(expected_max_bitrate_bps, | |
| 414 call_.GetConfig().bitrate_config.max_bitrate_bps); | |
| 415 } | 412 } |
| 416 | 413 |
| 417 void TestSetSendRtpHeaderExtensions(const std::string& ext) { | 414 void TestSetSendRtpHeaderExtensions(const std::string& ext) { |
| 418 EXPECT_TRUE(SetupSendStream()); | 415 EXPECT_TRUE(SetupSendStream()); |
| 419 | 416 |
| 420 // Ensure extensions are off by default. | 417 // Ensure extensions are off by default. |
| 421 EXPECT_EQ(0u, GetSendStreamConfig(kSsrcX).rtp.extensions.size()); | 418 EXPECT_EQ(0u, GetSendStreamConfig(kSsrcX).rtp.extensions.size()); |
| 422 | 419 |
| 423 // Ensure unknown extensions won't cause an error. | 420 // Ensure unknown extensions won't cause an error. |
| 424 send_parameters_.extensions.push_back( | 421 send_parameters_.extensions.push_back( |
| (...skipping 1054 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1479 parameters.codecs[0].params["maxaveragebitrate"] = "510001"; | 1476 parameters.codecs[0].params["maxaveragebitrate"] = "510001"; |
| 1480 SetSendParameters(parameters); | 1477 SetSendParameters(parameters); |
| 1481 EXPECT_EQ(510000, GetCodecBitrate(kSsrcX)); | 1478 EXPECT_EQ(510000, GetCodecBitrate(kSsrcX)); |
| 1482 | 1479 |
| 1483 parameters.codecs[0].params["maxaveragebitrate"] = "200000"; | 1480 parameters.codecs[0].params["maxaveragebitrate"] = "200000"; |
| 1484 SetSendParameters(parameters); | 1481 SetSendParameters(parameters); |
| 1485 EXPECT_EQ(200000, GetCodecBitrate(kSsrcX)); | 1482 EXPECT_EQ(200000, GetCodecBitrate(kSsrcX)); |
| 1486 } | 1483 } |
| 1487 | 1484 |
| 1488 TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsWithBitrates) { | 1485 TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsWithBitrates) { |
| 1489 SetSendCodecsShouldWorkForBitrates("100", 100000, "150", 150000, "200", | 1486 SetSendCodecsShouldWorkForBitrates("100", 100000, "150", 150000, "200"); |
| 1490 200000); | |
| 1491 } | 1487 } |
| 1492 | 1488 |
| 1493 TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsWithHighMaxBitrate) { | 1489 TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsWithHighMaxBitrate) { |
| 1494 SetSendCodecsShouldWorkForBitrates("", 0, "", -1, "10000", 10000000); | 1490 SetSendCodecsShouldWorkForBitrates("", 0, "", -1, "10000"); |
| 1495 } | 1491 } |
| 1496 | 1492 |
| 1497 TEST_F(WebRtcVoiceEngineTestFake, | 1493 TEST_F(WebRtcVoiceEngineTestFake, |
| 1498 SetSendCodecsWithoutBitratesUsesCorrectDefaults) { | 1494 SetSendCodecsWithoutBitratesUsesCorrectDefaults) { |
| 1499 SetSendCodecsShouldWorkForBitrates("", 0, "", -1, "", -1); | 1495 SetSendCodecsShouldWorkForBitrates("", 0, "", -1, ""); |
| 1500 } | 1496 } |
| 1501 | 1497 |
| 1502 TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsCapsMinAndStartBitrate) { | 1498 TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsCapsMinAndStartBitrate) { |
| 1503 SetSendCodecsShouldWorkForBitrates("-1", 0, "-100", -1, "", -1); | 1499 SetSendCodecsShouldWorkForBitrates("-1", 0, "-100", -1, ""); |
| 1504 } | 1500 } |
| 1505 | 1501 |
| 1506 TEST_F(WebRtcVoiceEngineTestFake, | 1502 TEST_F(WebRtcVoiceEngineTestFake, |
| 1507 SetMaxSendBandwidthShouldPreserveOtherBitrates) { | 1503 SetMaxSendBandwidthShouldPreserveOtherBitrates) { |
| 1508 SetSendCodecsShouldWorkForBitrates("100", 100000, "150", 150000, "200", | 1504 SetSendCodecsShouldWorkForBitrates("100", 100000, "150", 150000, "200"); |
| 1509 200000); | |
| 1510 send_parameters_.max_bandwidth_bps = 300000; | 1505 send_parameters_.max_bandwidth_bps = 300000; |
| 1511 SetSendParameters(send_parameters_); | 1506 SetSendParameters(send_parameters_); |
| 1512 EXPECT_EQ(100000, call_.GetConfig().bitrate_config.min_bitrate_bps) | 1507 EXPECT_EQ(100000, call_.GetConfig().bitrate_config.min_bitrate_bps) |
| 1513 << "Setting max bitrate should keep previous min bitrate."; | 1508 << "Setting max bitrate should keep previous min bitrate."; |
| 1514 EXPECT_EQ(-1, call_.GetConfig().bitrate_config.start_bitrate_bps) | 1509 EXPECT_EQ(-1, call_.GetConfig().bitrate_config.start_bitrate_bps) |
| 1515 << "Setting max bitrate should not reset start bitrate."; | 1510 << "Setting max bitrate should not reset start bitrate."; |
| 1516 EXPECT_EQ(300000, call_.GetConfig().bitrate_config.max_bitrate_bps); | 1511 EXPECT_EQ(300000, call_.GetConfig().bitrate_config.max_bitrate_bps); |
| 1517 } | 1512 } |
| 1518 | 1513 |
| 1519 // Test that we can enable NACK with opus as caller. | 1514 // Test that we can enable NACK with opus as caller. |
| (...skipping 2275 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3795 // Without this cast, the comparison turned unsigned and, thus, failed for -1. | 3790 // Without this cast, the comparison turned unsigned and, thus, failed for -1. |
| 3796 const int num_specs = static_cast<int>(specs.size()); | 3791 const int num_specs = static_cast<int>(specs.size()); |
| 3797 EXPECT_GE(find_codec({"cn", 8000, 1}), num_specs); | 3792 EXPECT_GE(find_codec({"cn", 8000, 1}), num_specs); |
| 3798 EXPECT_GE(find_codec({"cn", 16000, 1}), num_specs); | 3793 EXPECT_GE(find_codec({"cn", 16000, 1}), num_specs); |
| 3799 EXPECT_EQ(find_codec({"cn", 32000, 1}), -1); | 3794 EXPECT_EQ(find_codec({"cn", 32000, 1}), -1); |
| 3800 EXPECT_GE(find_codec({"telephone-event", 8000, 1}), num_specs); | 3795 EXPECT_GE(find_codec({"telephone-event", 8000, 1}), num_specs); |
| 3801 EXPECT_GE(find_codec({"telephone-event", 16000, 1}), num_specs); | 3796 EXPECT_GE(find_codec({"telephone-event", 16000, 1}), num_specs); |
| 3802 EXPECT_GE(find_codec({"telephone-event", 32000, 1}), num_specs); | 3797 EXPECT_GE(find_codec({"telephone-event", 32000, 1}), num_specs); |
| 3803 EXPECT_GE(find_codec({"telephone-event", 48000, 1}), num_specs); | 3798 EXPECT_GE(find_codec({"telephone-event", 48000, 1}), num_specs); |
| 3804 } | 3799 } |
| OLD | NEW |