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."; |