summaryrefslogtreecommitdiff
path: root/pjsip-apps
diff options
context:
space:
mode:
authorNanang Izzuddin <nanang@teluu.com>2011-02-17 15:59:52 +0000
committerNanang Izzuddin <nanang@teluu.com>2011-02-17 15:59:52 +0000
commit18cecc69115001ad1b6e980ce7fa13dc3b059c1a (patch)
treef712f2a4f12ef229f1cca63c33db178711beadfc /pjsip-apps
parentae4232ce581640d4536d82b1ab30ac13f01e17bf (diff)
Misc (re #1175): fix sample app pcaputil.c bug, it always fails in reading the first/reference packet when the codec is not PCMU (default payload type was hardcoded to zero/PCMU).
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3415 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip-apps')
-rw-r--r--pjsip-apps/src/samples/pcaputil.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/pjsip-apps/src/samples/pcaputil.c b/pjsip-apps/src/samples/pcaputil.c
index a40b8e0a..9bca477e 100644
--- a/pjsip-apps/src/samples/pcaputil.c
+++ b/pjsip-apps/src/samples/pcaputil.c
@@ -120,7 +120,8 @@ static void err_exit(const char *title, pj_status_t status)
static void read_rtp(pj_uint8_t *buf, pj_size_t bufsize,
pjmedia_rtp_hdr **rtp,
pj_uint8_t **payload,
- unsigned *payload_size)
+ unsigned *payload_size,
+ pj_bool_t check_pt)
{
pj_status_t status;
@@ -182,7 +183,7 @@ static void read_rtp(pj_uint8_t *buf, pj_size_t bufsize,
#endif
/* Update RTP session */
- pjmedia_rtp_session_update(&app.rtp_sess, r, &seq_st);
+ pjmedia_rtp_session_update2(&app.rtp_sess, r, &seq_st, PJ_FALSE);
/* Skip out-of-order packet */
if (seq_st.diff == 0) {
@@ -191,7 +192,7 @@ static void read_rtp(pj_uint8_t *buf, pj_size_t bufsize,
}
/* Skip if payload type is different */
- if (r->pt != app.pt) {
+ if (check_pt && r->pt != app.pt) {
printf("Skipping RTP packet with bad payload type\n");
continue;
}
@@ -270,7 +271,7 @@ static void pcap2wav(const char *wav_filename, const pj_str_t *srtp_crypto,
/* Read first packet */
read_rtp(pkt0.buffer, sizeof(pkt0.buffer), &pkt0.rtp,
- &pkt0.payload, &pkt0.payload_len);
+ &pkt0.payload, &pkt0.payload_len, PJ_FALSE);
cmgr = pjmedia_endpt_get_codec_mgr(app.mept);
@@ -325,7 +326,7 @@ static void pcap2wav(const char *wav_filename, const pj_str_t *srtp_crypto,
/* Read next packet */
read_rtp(pkt1.buffer, sizeof(pkt1.buffer), &pkt1.rtp,
- &pkt1.payload, &pkt1.payload_len);
+ &pkt1.payload, &pkt1.payload_len, PJ_TRUE);
/* Fill in the gap (if any) between pkt0 and pkt1 */
ts_gap = pj_ntohl(pkt1.rtp->ts) - pj_ntohl(pkt0.rtp->ts) -