From: Brian West Date: Wed, 12 Nov 2008 10:28:16 +0000 (+0000) Subject: Don't copy the time stampes over when the sample rates differ X-Git-Tag: v1.0.2~569 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ee7008087fd1edab5690668964fcb4a00147afd0;p=thirdparty%2Ffreeswitch.git Don't copy the time stampes over when the sample rates differ git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@10341 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- diff --git a/src/switch_core_io.c b/src/switch_core_io.c index b2b25e1e3f..a2e15add26 100644 --- a/src/switch_core_io.c +++ b/src/switch_core_io.c @@ -421,7 +421,11 @@ SWITCH_DECLARE(switch_status_t) switch_core_session_read_frame(switch_core_sessi case SWITCH_STATUS_SUCCESS: session->enc_read_frame.samples = session->read_codec->implementation->decoded_bytes_per_packet / sizeof(int16_t); if (perfect) { - session->enc_read_frame.timestamp = read_frame->timestamp; + if (enc_frame->codec->implementation->samples_per_packet != session->read_codec->implementation->samples_per_packet) { + session->enc_read_frame.timestamp = 0; + } else { + session->enc_read_frame.timestamp = read_frame->timestamp; + } session->enc_read_frame.rate = read_frame->rate; session->enc_read_frame.ssrc = read_frame->ssrc; session->enc_read_frame.seq = read_frame->seq; @@ -793,7 +797,11 @@ SWITCH_DECLARE(switch_status_t) switch_core_session_write_frame(switch_core_sess case SWITCH_STATUS_SUCCESS: session->enc_write_frame.codec = session->write_codec; session->enc_write_frame.samples = enc_frame->datalen / sizeof(int16_t); - session->enc_write_frame.timestamp = frame->timestamp; + if (frame->codec->implementation->samples_per_packet != session->write_codec->implementation->samples_per_packet) { + session->enc_write_frame.timestamp = 0; + } else { + session->enc_write_frame.timestamp = frame->timestamp; + } session->enc_write_frame.payload = session->write_codec->implementation->ianacode; session->enc_write_frame.m = frame->m; session->enc_write_frame.ssrc = frame->ssrc;