Index: webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus_unittest.cc |
diff --git a/webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus_unittest.cc b/webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus_unittest.cc |
index 6a4c47c0e33a189bcb910a5290dfd7facad3905f..fba37cf9da9ca4b06db19035061b5e43ce9efbff 100644 |
--- a/webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus_unittest.cc |
+++ b/webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus_unittest.cc |
@@ -34,6 +34,7 @@ AudioEncoderOpus::Config CreateConfig(const CodecInst& codec_inst) { |
config.payload_type = codec_inst.pltype; |
config.application = config.num_channels == 1 ? AudioEncoderOpus::kVoip |
: AudioEncoderOpus::kAudio; |
+ config.supported_frame_lengths_ms.push_back(config.frame_size_ms); |
return config; |
} |
@@ -222,9 +223,26 @@ TEST(AudioEncoderOpusTest, PacketLossRateOptimized) { |
// clang-format on |
} |
+TEST(AudioEncoderOpusTest, SetReceiverFrameLengthRange) { |
+ auto states = CreateCodec(2); |
+ // Before calling to |SetReceiverFrameLengthRange|, |
+ // |supported_frame_lengths_ms| should contain only the frame length being |
+ // used. |
+ EXPECT_EQ(std::vector<int>({states.encoder->next_frame_length_ms()}), |
+ states.encoder->supported_frame_lengths_ms()); |
+ states.encoder->SetReceiverFrameLengthRange(0, 12345); |
+ EXPECT_EQ(std::vector<int>({20, 60}), |
+ states.encoder->supported_frame_lengths_ms()); |
+ states.encoder->SetReceiverFrameLengthRange(21, 60); |
+ EXPECT_EQ(std::vector<int>({60}), |
+ states.encoder->supported_frame_lengths_ms()); |
+ states.encoder->SetReceiverFrameLengthRange(20, 59); |
+ EXPECT_EQ(std::vector<int>({20}), |
+ states.encoder->supported_frame_lengths_ms()); |
+} |
+ |
TEST(AudioEncoderOpusTest, InvokeAudioNetworkAdaptorOnSetUplinkBandwidth) { |
auto states = CreateCodec(2); |
- printf("passed!\n"); |
states.encoder->EnableAudioNetworkAdaptor("", nullptr); |
auto config = CreateEncoderRuntimeConfig(); |
@@ -292,24 +310,6 @@ TEST(AudioEncoderOpusTest, InvokeAudioNetworkAdaptorOnSetRtt) { |
} |
TEST(AudioEncoderOpusTest, |
- InvokeAudioNetworkAdaptorOnSetReceiverFrameLengthRange) { |
- auto states = CreateCodec(2); |
- states.encoder->EnableAudioNetworkAdaptor("", nullptr); |
- |
- auto config = CreateEncoderRuntimeConfig(); |
- EXPECT_CALL(**states.mock_audio_network_adaptor, GetEncoderRuntimeConfig()) |
- .WillOnce(Return(config)); |
- |
- constexpr int kMinFrameLength = 10; |
- constexpr int kMaxFrameLength = 60; |
- EXPECT_CALL(**states.mock_audio_network_adaptor, |
- SetReceiverFrameLengthRange(kMinFrameLength, kMaxFrameLength)); |
- states.encoder->SetReceiverFrameLengthRange(kMinFrameLength, kMaxFrameLength); |
- |
- CheckEncoderRuntimeConfig(states.encoder.get(), config); |
-} |
- |
-TEST(AudioEncoderOpusTest, |
PacketLossFractionSmoothedOnSetUplinkPacketLossFraction) { |
auto states = CreateCodec(2); |