FS-7499: ignore replay errs when nack is enabled

This commit is contained in:
Anthony Minessale 2015-02-28 16:02:52 -06:00 committed by Michael Jerris
parent baa3d9cd7c
commit eb78d2ae7b
2 changed files with 9 additions and 0 deletions

View File

@ -1820,6 +1820,7 @@ static void *SWITCH_THREAD_FUNC conference_video_muxing_thread_run(switch_thread
if (conference->canvas->send_keyframe) {
need_keyframe = SWITCH_TRUE;
need_refresh = SWITCH_TRUE;
conference->canvas->send_keyframe = 0;
}

View File

@ -5087,6 +5087,14 @@ static switch_status_t read_rtp_packet(switch_rtp_t *rtp_session, switch_size_t
if (!(*flags & SFF_PLC)) {
stat = srtp_unprotect(rtp_session->recv_ctx[rtp_session->srtp_idx_rtp], &rtp_session->recv_msg.header, &sbytes);
if (rtp_session->flags[SWITCH_RTP_FLAG_NACK] && stat == err_status_replay_fail) {
/* false alarm nack */
switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(rtp_session->session), SWITCH_LOG_DEBUG, "REPLAY ERR, FALSE NACK");
stat = 0;
sbytes = 0;
*bytes = 0;
goto more;
}
}
if (stat && rtp_session->recv_msg.header.pt != rtp_session->recv_te && rtp_session->recv_msg.header.pt != rtp_session->cng_pt) {