| Index: webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus.cc
|
| diff --git a/webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus.cc b/webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus.cc
|
| index bac963f4e8e2de9ff047ac78d889e9b187c6469e..5b58da4857db3ccf95350b2f0874fb16b18a8c17 100644
|
| --- a/webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus.cc
|
| +++ b/webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus.cc
|
| @@ -293,15 +293,19 @@ void AudioEncoderOpus::DisableAudioNetworkAdaptor() {
|
| }
|
|
|
| void AudioEncoderOpus::OnReceivedUplinkPacketLossFraction(
|
| - float uplink_packet_loss_fraction) {
|
| + const rtc::Optional<float>& uplink_packet_loss_fraction) {
|
| if (!audio_network_adaptor_) {
|
| - packet_loss_fraction_smoother_->AddSample(uplink_packet_loss_fraction);
|
| - float average_fraction_loss = packet_loss_fraction_smoother_->GetAverage();
|
| - return SetProjectedPacketLossRate(average_fraction_loss);
|
| + if (uplink_packet_loss_fraction) {
|
| + packet_loss_fraction_smoother_->AddSample(*uplink_packet_loss_fraction);
|
| + float average_fraction_loss =
|
| + packet_loss_fraction_smoother_->GetAverage();
|
| + SetProjectedPacketLossRate(average_fraction_loss);
|
| + }
|
| + } else {
|
| + audio_network_adaptor_->SetUplinkPacketLossFraction(
|
| + uplink_packet_loss_fraction);
|
| + ApplyAudioNetworkAdaptor();
|
| }
|
| - audio_network_adaptor_->SetUplinkPacketLossFraction(
|
| - uplink_packet_loss_fraction);
|
| - ApplyAudioNetworkAdaptor();
|
| }
|
|
|
| void AudioEncoderOpus::OnReceivedUplinkBandwidth(
|
|
|