diff --git a/src/switch_core_media.c b/src/switch_core_media.c index 9d08068a31e..c880ccab4b1 100644 --- a/src/switch_core_media.c +++ b/src/switch_core_media.c @@ -16463,6 +16463,14 @@ SWITCH_DECLARE(switch_status_t) switch_core_session_write_frame(switch_core_sess } error: + if (frame->received_ts > 0) { + int64_t d = (switch_micro_time_now() - frame->received_ts)/1000; + if (d > 5000) { + switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(session), SWITCH_LOG_INFO, "[%ld]-[%ld]=[%ld]\n", (int64_t)(switch_micro_time_now()/1000), (int64_t)(frame->received_ts/1000), d); + } + packet_stats_update(&session->stats, d); + } + packet_stats_update(&session->stats, (switch_micro_time_now() - frame->received_ts)/1000); session->stats.io_info.out_codec = write_frame->codec->implementation->iananame; session->stats.io_info.in_codec = frame->codec->implementation->iananame; diff --git a/src/switch_ivr_bridge.c b/src/switch_ivr_bridge.c index b68da0b6e61..62f59126a32 100644 --- a/src/switch_ivr_bridge.c +++ b/src/switch_ivr_bridge.c @@ -815,6 +815,7 @@ static void *audio_bridge_thread(switch_thread_t *thread, void *obj) } if (switch_test_flag((read_frame), SFF_PLC)) { + read_frame->received_ts = 0; switch_core_session_increment_plc(session_b); } else { if (read_frame->packetlen > 0)