iSAC encoder: Make it possible to change target bitrate at any time

Not just at construction time.

Bug: webrtc:11704
Change-Id: I952c7dbe20774cc976065c7d2f992a80074ebf63
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/177663
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31550}
This commit is contained in:
Karl Wiberg
2020-06-22 15:06:25 +02:00
committed by Commit Bot
parent 09867d37ed
commit 30a3e78794
5 changed files with 130 additions and 4 deletions

View File

@ -536,7 +536,11 @@ TEST_F(AudioDecoderIsacFloatTest, EncodeDecode) {
}
TEST_F(AudioDecoderIsacFloatTest, SetTargetBitrate) {
TestSetAndGetTargetBitratesWithFixedCodec(audio_encoder_.get(), 32000);
EXPECT_EQ(10000, SetAndGetTargetBitrate(audio_encoder_.get(), 9999));
EXPECT_EQ(10000, SetAndGetTargetBitrate(audio_encoder_.get(), 10000));
EXPECT_EQ(23456, SetAndGetTargetBitrate(audio_encoder_.get(), 23456));
EXPECT_EQ(32000, SetAndGetTargetBitrate(audio_encoder_.get(), 32000));
EXPECT_EQ(32000, SetAndGetTargetBitrate(audio_encoder_.get(), 32001));
}
TEST_F(AudioDecoderIsacSwbTest, EncodeDecode) {
@ -549,7 +553,11 @@ TEST_F(AudioDecoderIsacSwbTest, EncodeDecode) {
}
TEST_F(AudioDecoderIsacSwbTest, SetTargetBitrate) {
TestSetAndGetTargetBitratesWithFixedCodec(audio_encoder_.get(), 32000);
EXPECT_EQ(10000, SetAndGetTargetBitrate(audio_encoder_.get(), 9999));
EXPECT_EQ(10000, SetAndGetTargetBitrate(audio_encoder_.get(), 10000));
EXPECT_EQ(23456, SetAndGetTargetBitrate(audio_encoder_.get(), 23456));
EXPECT_EQ(56000, SetAndGetTargetBitrate(audio_encoder_.get(), 56000));
EXPECT_EQ(56000, SetAndGetTargetBitrate(audio_encoder_.get(), 56001));
}
TEST_F(AudioDecoderIsacFixTest, EncodeDecode) {
@ -569,7 +577,11 @@ TEST_F(AudioDecoderIsacFixTest, EncodeDecode) {
}
TEST_F(AudioDecoderIsacFixTest, SetTargetBitrate) {
TestSetAndGetTargetBitratesWithFixedCodec(audio_encoder_.get(), 32000);
EXPECT_EQ(10000, SetAndGetTargetBitrate(audio_encoder_.get(), 9999));
EXPECT_EQ(10000, SetAndGetTargetBitrate(audio_encoder_.get(), 10000));
EXPECT_EQ(23456, SetAndGetTargetBitrate(audio_encoder_.get(), 23456));
EXPECT_EQ(32000, SetAndGetTargetBitrate(audio_encoder_.get(), 32000));
EXPECT_EQ(32000, SetAndGetTargetBitrate(audio_encoder_.get(), 32001));
}
TEST_F(AudioDecoderG722Test, EncodeDecode) {