diff --git a/api/neteq/neteq.h b/api/neteq/neteq.h index 5300c5601e..43e0e09784 100644 --- a/api/neteq/neteq.h +++ b/api/neteq/neteq.h @@ -76,6 +76,7 @@ struct NetEqLifetimeStatistics { uint64_t packets_discarded = 0; // Below stats are not part of the spec. uint64_t delayed_packet_outage_samples = 0; + uint64_t delayed_packet_outage_events = 0; // This is sum of relative packet arrival delays of received packets so far. // Since end-to-end delay of a packet is difficult to measure and is not // necessarily useful for measuring jitter buffer performance, we report a diff --git a/modules/audio_coding/neteq/statistics_calculator.cc b/modules/audio_coding/neteq/statistics_calculator.cc index 52d3fa90f1..70cfc2b3a8 100644 --- a/modules/audio_coding/neteq/statistics_calculator.cc +++ b/modules/audio_coding/neteq/statistics_calculator.cc @@ -300,6 +300,7 @@ void StatisticsCalculator::LogDelayedPacketOutageEvent(int num_samples, 100 /* bucket count */); delayed_packet_outage_counter_.RegisterSample(); lifetime_stats_.delayed_packet_outage_samples += num_samples; + ++lifetime_stats_.delayed_packet_outage_events; } void StatisticsCalculator::StoreWaitingTime(int waiting_time_ms) { diff --git a/modules/audio_coding/neteq/tools/neteq_stats_plotter.cc b/modules/audio_coding/neteq/tools/neteq_stats_plotter.cc index 162a4c9300..47bcd314bc 100644 --- a/modules/audio_coding/neteq/tools/neteq_stats_plotter.cc +++ b/modules/audio_coding/neteq/tools/neteq_stats_plotter.cc @@ -90,6 +90,8 @@ void NetEqStatsPlotter::SimulationEnded(int64_t simulation_time_ms) { lifetime_stats.concealment_events); printf(" delayed_packet_outage_samples: %" PRIu64 "\n", lifetime_stats.delayed_packet_outage_samples); + printf(" delayed_packet_outage_events: %" PRIu64 "\n", + lifetime_stats.delayed_packet_outage_events); printf(" num_interruptions: %d\n", lifetime_stats.interruption_count); printf(" sum_interruption_length_ms: %d ms\n", lifetime_stats.total_interruption_duration_ms);