Reland "Reland "Return audio stats regarless if we have a codec.""
This is a reland of commit 4334cdfc5c0619a5f06125ea1f039cb123ccf21e
Original change's description:
> Reland "Return audio stats regarless if we have a codec."
>
> This is a reland of commit 7fff587a096c6ef40f5601f47ef50b221b3a4abf
>
> Original change's description:
> > Return audio stats regarless if we have a codec.
> >
> > Bug: b/331602608
> > Change-Id: I2d12a3ed83645fe1e7cbd8950fd86d5ba2d7c94d
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/361743
> > Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
> > Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
> > Cr-Commit-Position: refs/heads/main@{#42964}
>
> Bug: b/331602608
> Change-Id: I95c89e7059005bc8dd8569ef41bfe9e863b4082f
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/361762
> Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
> Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#42969}
Bug: b/331602608
Change-Id: I743f0d623230bf871de262792981de35c156ba3e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364461
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43142}
diff --git a/audio/audio_receive_stream.cc b/audio/audio_receive_stream.cc
index bf2da5d..269c851 100644
--- a/audio/audio_receive_stream.cc
+++ b/audio/audio_receive_stream.cc
@@ -257,13 +257,15 @@
webrtc::CallReceiveStatistics call_stats =
channel_receive_->GetRTCPStatistics();
- // TODO(solenberg): Don't return here if we can't get the codec - return the
- // stats we *can* get.
auto receive_codec = channel_receive_->GetReceiveCodec();
- if (!receive_codec) {
- return stats;
+ if (receive_codec) {
+ stats.codec_name = receive_codec->second.name;
+ stats.codec_payload_type = receive_codec->first;
+ int clockrate_khz = receive_codec->second.clockrate_hz / 1000;
+ if (clockrate_khz > 0) {
+ stats.jitter_ms = call_stats.jitterSamples / clockrate_khz;
+ }
}
-
stats.payload_bytes_received = call_stats.payload_bytes_received;
stats.header_and_padding_bytes_received =
call_stats.header_and_padding_bytes_received;
@@ -272,12 +274,6 @@
stats.nacks_sent = call_stats.nacks_sent;
stats.capture_start_ntp_time_ms = call_stats.capture_start_ntp_time_ms_;
stats.last_packet_received = call_stats.last_packet_received;
- stats.codec_name = receive_codec->second.name;
- stats.codec_payload_type = receive_codec->first;
- int clockrate_khz = receive_codec->second.clockrate_hz / 1000;
- if (clockrate_khz > 0) {
- stats.jitter_ms = call_stats.jitterSamples / clockrate_khz;
- }
stats.delay_estimate_ms = channel_receive_->GetDelayEstimate();
stats.audio_level = channel_receive_->GetSpeechOutputLevelFullRange();
stats.total_output_energy = channel_receive_->GetTotalOutputEnergy();