| Index: webrtc/logging/rtc_event_log/rtc_event_log.cc
|
| diff --git a/webrtc/logging/rtc_event_log/rtc_event_log.cc b/webrtc/logging/rtc_event_log/rtc_event_log.cc
|
| index 976ff2321c08106dcea319a19c63f50619ebb0af..d35bd72010e87a5c34fc7f11a4b99081c5dbc102 100644
|
| --- a/webrtc/logging/rtc_event_log/rtc_event_log.cc
|
| +++ b/webrtc/logging/rtc_event_log/rtc_event_log.cc
|
| @@ -77,6 +77,12 @@ class RtcEventLogImpl final : public RtcEventLog {
|
| void LogBwePacketLossEvent(int32_t bitrate,
|
| uint8_t fraction_loss,
|
| int32_t total_packets) override;
|
| + void LogAnaDecisionEvent(rtc::Optional<int> bitrate_bps,
|
| + rtc::Optional<int> frame_length_ms,
|
| + rtc::Optional<float> uplink_packet_loss_fraction,
|
| + rtc::Optional<bool> enable_fec,
|
| + rtc::Optional<bool> enable_dtx,
|
| + rtc::Optional<size_t> num_channels) override;
|
|
|
| private:
|
| void StoreEvent(std::unique_ptr<rtclog::Event>* event);
|
| @@ -429,7 +435,7 @@ void RtcEventLogImpl::LogBwePacketLossEvent(int32_t bitrate,
|
| int32_t total_packets) {
|
| std::unique_ptr<rtclog::Event> event(new rtclog::Event());
|
| event->set_timestamp_us(clock_->TimeInMicroseconds());
|
| - event->set_type(rtclog::Event::BWE_PACKET_LOSS_EVENT);
|
| + event->set_type(rtclog::Event::AUDIO_NETWORK_ADAPTOR_EVENT);
|
| auto bwe_event = event->mutable_bwe_packet_loss_event();
|
| bwe_event->set_bitrate(bitrate);
|
| bwe_event->set_fraction_loss(fraction_loss);
|
| @@ -437,6 +443,32 @@ void RtcEventLogImpl::LogBwePacketLossEvent(int32_t bitrate,
|
| StoreEvent(&event);
|
| }
|
|
|
| +void RtcEventLogImpl::LogAnaDecisionEvent(
|
| + rtc::Optional<int> bitrate_bps,
|
| + rtc::Optional<int> frame_length_ms,
|
| + rtc::Optional<float> uplink_packet_loss_fraction,
|
| + rtc::Optional<bool> enable_fec,
|
| + rtc::Optional<bool> enable_dtx,
|
| + rtc::Optional<size_t> num_channels) {
|
| + std::unique_ptr<rtclog::Event> event(new rtclog::Event());
|
| + event->set_timestamp_us(clock_->TimeInMicroseconds());
|
| + event->set_type(rtclog::Event::BWE_PACKET_LOSS_EVENT);
|
| + auto ana_event = event->mutable_audio_network_adaptor_decition();
|
| + if (bitrate_bps)
|
| + ana_event->set_bitrate_bps(*bitrate_bps);
|
| + if (frame_length_ms)
|
| + ana_event->set_frame_length_ms(*frame_length_ms);
|
| + if (uplink_packet_loss_fraction)
|
| + ana_event->set_uplink_packet_loss_fraction(*uplink_packet_loss_fraction);
|
| + if (enable_fec)
|
| + ana_event->set_enable_fec(*enable_fec);
|
| + if (enable_dtx)
|
| + ana_event->set_enable_dtx(*enable_dtx);
|
| + if (num_channels)
|
| + ana_event->set_num_channels(*num_channels);
|
| + StoreEvent(&event);
|
| +}
|
| +
|
| void RtcEventLogImpl::StoreEvent(std::unique_ptr<rtclog::Event>* event) {
|
| if (!event_queue_.Insert(event)) {
|
| LOG(LS_ERROR) << "WebRTC event log queue full. Dropping event.";
|
|
|