From c14cadf163d8352308d77c751f2777b365395b9f Mon Sep 17 00:00:00 2001 From: Anthony Minessale Date: Tue, 7 Feb 2017 14:32:01 -0600 Subject: [PATCH] FS-10017: [freeswitch-core] add rtp_nack_buffer_size #resolve --- src/switch_rtp.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/switch_rtp.c b/src/switch_rtp.c index ab015251b6..e9270cc4cc 100644 --- a/src/switch_rtp.c +++ b/src/switch_rtp.c @@ -7913,8 +7913,20 @@ static int rtp_common_write(switch_rtp_t *rtp_session, } if (rtp_session->flags[SWITCH_RTP_FLAG_NACK]) { + switch_channel_t *channel = switch_core_session_get_channel(rtp_session->session); + int nack_size = 100; + const char *var; + + if ((var = switch_channel_get_variable(channel, "rtp_nack_buffer_size"))) { + int tmp = atoi(var); + + if (tmp > 0 && tmp < 500) { + nack_size = tmp; + } + } + if (!rtp_session->vbw) { - switch_jb_create(&rtp_session->vbw, SJB_VIDEO, 30, 30, rtp_session->pool); + switch_jb_create(&rtp_session->vbw, SJB_VIDEO, nack_size, nack_size, rtp_session->pool); if (rtp_session->vbw) { switch_jb_set_flag(rtp_session->vbw, SJB_QUEUE_ONLY); //switch_jb_debug_level(rtp_session->vbw, 10);