Implement AudioEncoder::GetFrameLengthRange() for all audio encoders.

The WebRTC-SendSideBwe-WithOverhead field trial requires audio
encoders to properly implement the
AudioEncoder::GetFrameLengthRange() function. Thic CL implements
the function for all audio encoders in WebRTC in preparation for
making that function pure virtual in the interface.


Bug: webrtc:11427
Change-Id: Ieab6b6c72c62af6ac9525a20fcb39bd477079551
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171503
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Minyue Li <minyue@webrtc.org>
Commit-Queue: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30890}
This commit is contained in:
Ali Tofigh
2020-03-24 16:00:51 +01:00
committed by Commit Bot
parent d4262dffa0
commit 7e5dfdbca3
16 changed files with 108 additions and 0 deletions

View File

@ -127,6 +127,12 @@ void AudioEncoderIlbcImpl::Reset() {
num_10ms_frames_buffered_ = 0;
}
absl::optional<std::pair<TimeDelta, TimeDelta>>
AudioEncoderIlbcImpl::GetFrameLengthRange() const {
return {{TimeDelta::Millis(num_10ms_frames_per_packet_ * 10),
TimeDelta::Millis(num_10ms_frames_per_packet_ * 10)}};
}
size_t AudioEncoderIlbcImpl::RequiredOutputSizeBytes() const {
switch (num_10ms_frames_per_packet_) {
case 2: