mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-02-13 21:49:53 +00:00
FS-10770: [freeswitch-core] Make nack buffer bigger by default
This commit is contained in:
parent
d395223fa2
commit
5a6f4679cd
@ -423,6 +423,7 @@ struct switch_rtp {
|
|||||||
switch_payload_t recv_te;
|
switch_payload_t recv_te;
|
||||||
switch_payload_t cng_pt;
|
switch_payload_t cng_pt;
|
||||||
switch_mutex_t *flag_mutex;
|
switch_mutex_t *flag_mutex;
|
||||||
|
switch_mutex_t *nack_mutex;
|
||||||
switch_mutex_t *read_mutex;
|
switch_mutex_t *read_mutex;
|
||||||
switch_mutex_t *write_mutex;
|
switch_mutex_t *write_mutex;
|
||||||
switch_mutex_t *ice_mutex;
|
switch_mutex_t *ice_mutex;
|
||||||
@ -4210,6 +4211,7 @@ SWITCH_DECLARE(switch_status_t) switch_rtp_create(switch_rtp_t **new_rtp_session
|
|||||||
rtp_session->session = session;
|
rtp_session->session = session;
|
||||||
|
|
||||||
switch_mutex_init(&rtp_session->flag_mutex, SWITCH_MUTEX_NESTED, pool);
|
switch_mutex_init(&rtp_session->flag_mutex, SWITCH_MUTEX_NESTED, pool);
|
||||||
|
switch_mutex_init(&rtp_session->nack_mutex, SWITCH_MUTEX_NESTED, pool);
|
||||||
switch_mutex_init(&rtp_session->read_mutex, SWITCH_MUTEX_NESTED, pool);
|
switch_mutex_init(&rtp_session->read_mutex, SWITCH_MUTEX_NESTED, pool);
|
||||||
switch_mutex_init(&rtp_session->write_mutex, SWITCH_MUTEX_NESTED, pool);
|
switch_mutex_init(&rtp_session->write_mutex, SWITCH_MUTEX_NESTED, pool);
|
||||||
switch_mutex_init(&rtp_session->ice_mutex, SWITCH_MUTEX_NESTED, pool);
|
switch_mutex_init(&rtp_session->ice_mutex, SWITCH_MUTEX_NESTED, pool);
|
||||||
@ -6475,7 +6477,12 @@ static switch_status_t process_rtcp_report(switch_rtp_t *rtp_session, rtcp_msg_t
|
|||||||
|
|
||||||
|
|
||||||
for (i = 0; i < ntohs(extp->header.length) - 2; i++) {
|
for (i = 0; i < ntohs(extp->header.length) - 2; i++) {
|
||||||
handle_nack(rtp_session, *nack);
|
//handle_nack(rtp_session, *nack);
|
||||||
|
switch_mutex_lock(rtp_session->nack_mutex);
|
||||||
|
if (rtp_session->nack_idx < MAX_NACKS) {
|
||||||
|
rtp_session->nack_buf[rtp_session->nack_idx++] = *nack;
|
||||||
|
}
|
||||||
|
switch_mutex_unlock(rtp_session->nack_mutex);
|
||||||
nack++;
|
nack++;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -8603,6 +8610,17 @@ SWITCH_DECLARE(int) switch_rtp_write_frame(switch_rtp_t *rtp_session, switch_fra
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
switch_mutex_lock(rtp_session->nack_mutex);
|
||||||
|
if (rtp_session->nack_idx) {
|
||||||
|
int i = 0;
|
||||||
|
|
||||||
|
for(i = 0; i < rtp_session->nack_idx; i++) {
|
||||||
|
handle_nack(rtp_session, rtp_session->nack_buf[i]);
|
||||||
|
}
|
||||||
|
rtp_session->nack_idx = 0;
|
||||||
|
}
|
||||||
|
switch_mutex_unlock(rtp_session->nack_mutex);
|
||||||
|
|
||||||
//if (rtp_session->flags[SWITCH_RTP_FLAG_VIDEO]) {
|
//if (rtp_session->flags[SWITCH_RTP_FLAG_VIDEO]) {
|
||||||
// rtp_session->flags[SWITCH_RTP_FLAG_DEBUG_RTP_READ]++;
|
// rtp_session->flags[SWITCH_RTP_FLAG_DEBUG_RTP_READ]++;
|
||||||
// rtp_session->flags[SWITCH_RTP_FLAG_DEBUG_RTP_WRITE]++;
|
// rtp_session->flags[SWITCH_RTP_FLAG_DEBUG_RTP_WRITE]++;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user