summaryrefslogtreecommitdiff
path: root/pjmedia
diff options
context:
space:
mode:
authorNanang Izzuddin <nanang@teluu.com>2009-06-13 15:51:30 +0000
committerNanang Izzuddin <nanang@teluu.com>2009-06-13 15:51:30 +0000
commit95b0b178d8f25b6342f8821747404c8ac3d047e7 (patch)
tree59759d2a351789e99eeca147e503394f3882fdf2 /pjmedia
parente2b2434d21da2d71dd0a76ba40cb8c5de68b3ec1 (diff)
Ticket #883:
- Fixed stream bug in generating RTP header for keep-alive packet with empty RTP. - Updated stream to skip suspending the VAD when PJMEDIA_STREAM_VAD_SUSPEND_MSEC is set to 0. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2761 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjmedia')
-rw-r--r--pjmedia/src/pjmedia/stream.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/pjmedia/src/pjmedia/stream.c b/pjmedia/src/pjmedia/stream.c
index 9b6d245a..d103979a 100644
--- a/pjmedia/src/pjmedia/stream.c
+++ b/pjmedia/src/pjmedia/stream.c
@@ -207,16 +207,19 @@ static void send_keep_alive_packet(pjmedia_stream *stream)
/* Keep-alive packet is empty RTP */
pj_status_t status;
+ void *rtphdr;
int pkt_len;
status = pjmedia_rtp_encode_rtp( &stream->enc->rtp,
- stream->enc->pt, 1,
+ stream->enc->pt, 0,
1,
0,
- (const void**)stream->enc->out_pkt,
+ (const void**)&rtphdr,
&pkt_len);
pj_assert(status == PJ_SUCCESS);
+
+ pj_memcpy(stream->enc->out_pkt, rtphdr, pkt_len);
pjmedia_transport_send_rtp(stream->transport, stream->enc->out_pkt,
pkt_len);
TRC_((stream->port.info.name.ptr, "Keep-alive sent (empty RTP)"));
@@ -1805,7 +1808,7 @@ PJ_DEF(pj_status_t) pjmedia_stream_create( pjmedia_endpt *endpt,
/* Initially disable the VAD in the stream, to help traverse NAT better */
stream->vad_enabled = stream->codec_param.setting.vad;
- if (stream->vad_enabled) {
+ if (PJMEDIA_STREAM_VAD_SUSPEND_MSEC > 0 && stream->vad_enabled) {
stream->codec_param.setting.vad = 0;
stream->ts_vad_disabled = 0;
stream->codec->op->modify(stream->codec, &stream->codec_param);