mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-03-06 10:26:41 +00:00
update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@10447 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
0cb51fb336
commit
abcc0357d4
src
@ -111,7 +111,7 @@ SWITCH_DECLARE(switch_port_t) switch_rtp_set_end_port(switch_port_t port);
|
|||||||
SWITCH_DECLARE(switch_port_t) switch_rtp_request_port(const char *ip);
|
SWITCH_DECLARE(switch_port_t) switch_rtp_request_port(const char *ip);
|
||||||
SWITCH_DECLARE(void) switch_rtp_release_port(const char *ip, switch_port_t port);
|
SWITCH_DECLARE(void) switch_rtp_release_port(const char *ip, switch_port_t port);
|
||||||
|
|
||||||
SWITCH_DECLARE(void) switch_rtp_change_interval(switch_rtp_t *rtp_session, uint32_t ms_per_packet, uint32_t samples_per_interval);
|
SWITCH_DECLARE(switch_status_t) switch_rtp_change_interval(switch_rtp_t *rtp_session, uint32_t ms_per_packet, uint32_t samples_per_interval);
|
||||||
/*!
|
/*!
|
||||||
\brief create a new RTP session handle
|
\brief create a new RTP session handle
|
||||||
\param new_rtp_session a poiter to aim at the new session
|
\param new_rtp_session a poiter to aim at the new session
|
||||||
|
@ -757,9 +757,12 @@ static switch_status_t sofia_read_frame(switch_core_session_t *session, switch_f
|
|||||||
tech_pvt->read_codec.implementation->samples_per_packet;
|
tech_pvt->read_codec.implementation->samples_per_packet;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch_rtp_change_interval(tech_pvt->rtp_session,
|
if (switch_rtp_change_interval(tech_pvt->rtp_session,
|
||||||
tech_pvt->read_codec.implementation->samples_per_packet,
|
tech_pvt->read_codec.implementation->samples_per_packet,
|
||||||
tech_pvt->codec_ms * 1000);
|
tech_pvt->codec_ms * 1000) != SWITCH_STATUS_SUCCESS) {
|
||||||
|
switch_channel_hangup(tech_pvt->channel, SWITCH_CAUSE_DESTINATION_OUT_OF_ORDER);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
tech_pvt->check_frames = MAX_CODEC_CHECK_FRAMES;
|
tech_pvt->check_frames = MAX_CODEC_CHECK_FRAMES;
|
||||||
}
|
}
|
||||||
|
@ -754,7 +754,7 @@ SWITCH_DECLARE(switch_status_t) switch_rtp_add_crypto_key(switch_rtp_t *rtp_sess
|
|||||||
return SWITCH_STATUS_SUCCESS;
|
return SWITCH_STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
SWITCH_DECLARE(void) switch_rtp_change_interval(switch_rtp_t *rtp_session, uint32_t ms_per_packet, uint32_t samples_per_interval)
|
SWITCH_DECLARE(switch_status_t) switch_rtp_change_interval(switch_rtp_t *rtp_session, uint32_t ms_per_packet, uint32_t samples_per_interval)
|
||||||
{
|
{
|
||||||
rtp_session->ms_per_packet = ms_per_packet;
|
rtp_session->ms_per_packet = ms_per_packet;
|
||||||
rtp_session->samples_per_interval = rtp_session->conf_samples_per_interval = samples_per_interval;
|
rtp_session->samples_per_interval = rtp_session->conf_samples_per_interval = samples_per_interval;
|
||||||
@ -764,11 +764,19 @@ SWITCH_DECLARE(void) switch_rtp_change_interval(switch_rtp_t *rtp_session, uint3
|
|||||||
if (rtp_session->timer.timer_interface) {
|
if (rtp_session->timer.timer_interface) {
|
||||||
switch_core_timer_destroy(&rtp_session->timer);
|
switch_core_timer_destroy(&rtp_session->timer);
|
||||||
}
|
}
|
||||||
switch_core_timer_init(&rtp_session->timer, rtp_session->timer_name, ms_per_packet / 1000, samples_per_interval, rtp_session->pool);
|
if (switch_core_timer_init(&rtp_session->timer,
|
||||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG,
|
rtp_session->timer_name, ms_per_packet / 1000, samples_per_interval, rtp_session->pool) == SWITCH_STATUS_SUCCESS) {
|
||||||
"RE-Starting timer [%s] %d bytes per %dms\n", rtp_session->timer_name, samples_per_interval, ms_per_packet);
|
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG,
|
||||||
|
"RE-Starting timer [%s] %d bytes per %dms\n", rtp_session->timer_name, samples_per_interval, ms_per_packet);
|
||||||
|
} else {
|
||||||
|
memset(&rtp_session->timer, 0, sizeof(rtp_session->timer));
|
||||||
|
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR,
|
||||||
|
"Problem RE-Starting timer [%s] %d bytes per %dms\n", rtp_session->timer_name, samples_per_interval, ms_per_packet);
|
||||||
|
return SWITCH_STATUS_FALSE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return SWITCH_STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
SWITCH_DECLARE(switch_status_t) switch_rtp_create(switch_rtp_t **new_rtp_session,
|
SWITCH_DECLARE(switch_status_t) switch_rtp_create(switch_rtp_t **new_rtp_session,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user