summaryrefslogtreecommitdiff
path: root/pjsip-apps/src/samples/streamutil.c
diff options
context:
space:
mode:
Diffstat (limited to 'pjsip-apps/src/samples/streamutil.c')
-rw-r--r--pjsip-apps/src/samples/streamutil.c91
1 files changed, 29 insertions, 62 deletions
diff --git a/pjsip-apps/src/samples/streamutil.c b/pjsip-apps/src/samples/streamutil.c
index 7237b7b8..7037a94e 100644
--- a/pjsip-apps/src/samples/streamutil.c
+++ b/pjsip-apps/src/samples/streamutil.c
@@ -100,37 +100,7 @@ int hex_string_to_octet_string(char *raw, char *hex, int len);
*/
static pj_status_t init_codecs(pjmedia_endpt *med_endpt)
{
- pj_status_t status;
-
- /* To suppress warning about unused var when all codecs are disabled */
- PJ_UNUSED_ARG(status);
-
-#if defined(PJMEDIA_HAS_G711_CODEC) && PJMEDIA_HAS_G711_CODEC!=0
- status = pjmedia_codec_g711_init(med_endpt);
- PJ_ASSERT_RETURN(status == PJ_SUCCESS, status);
-#endif
-
-#if defined(PJMEDIA_HAS_GSM_CODEC) && PJMEDIA_HAS_GSM_CODEC!=0
- status = pjmedia_codec_gsm_init(med_endpt);
- PJ_ASSERT_RETURN(status == PJ_SUCCESS, status);
-#endif
-
-#if defined(PJMEDIA_HAS_SPEEX_CODEC) && PJMEDIA_HAS_SPEEX_CODEC!=0
- status = pjmedia_codec_speex_init(med_endpt, 0, -1, -1);
- PJ_ASSERT_RETURN(status == PJ_SUCCESS, status);
-#endif
-
-#if defined(PJMEDIA_HAS_G722_CODEC) && PJMEDIA_HAS_G722_CODEC!=0
- status = pjmedia_codec_g722_init(med_endpt);
- PJ_ASSERT_RETURN(status == PJ_SUCCESS, status);
-#endif
-
-#if defined(PJMEDIA_HAS_L16_CODEC) && PJMEDIA_HAS_L16_CODEC!=0
- status = pjmedia_codec_l16_init(med_endpt, 0);
- PJ_ASSERT_RETURN(status == PJ_SUCCESS, status);
-#endif
-
- return PJ_SUCCESS;
+ return pjmedia_codec_register_audio_codecs(med_endpt, NULL);
}
@@ -505,8 +475,7 @@ int main(int argc, char *argv[])
if (play_file) {
unsigned wav_ptime;
- wav_ptime = stream_port->info.samples_per_frame * 1000 /
- stream_port->info.clock_rate;
+ wav_ptime = PJMEDIA_PIA_PTIME(&stream_port->info);
status = pjmedia_wav_player_port_create(pool, play_file, wav_ptime,
0, -1, &play_file_port);
if (status != PJ_SUCCESS) {
@@ -532,10 +501,10 @@ int main(int argc, char *argv[])
} else if (rec_file) {
status = pjmedia_wav_writer_port_create(pool, rec_file,
- stream_port->info.clock_rate,
- stream_port->info.channel_count,
- stream_port->info.samples_per_frame,
- stream_port->info.bits_per_sample,
+ PJMEDIA_PIA_SRATE(&stream_port->info),
+ PJMEDIA_PIA_CCNT(&stream_port->info),
+ PJMEDIA_PIA_SPF(&stream_port->info),
+ PJMEDIA_PIA_BITS(&stream_port->info),
0, 0, &rec_file_port);
if (status != PJ_SUCCESS) {
app_perror(THIS_FILE, "Unable to use file", status);
@@ -562,24 +531,24 @@ int main(int argc, char *argv[])
/* Create sound device port. */
if (dir == PJMEDIA_DIR_ENCODING_DECODING)
status = pjmedia_snd_port_create(pool, -1, -1,
- stream_port->info.clock_rate,
- stream_port->info.channel_count,
- stream_port->info.samples_per_frame,
- stream_port->info.bits_per_sample,
+ PJMEDIA_PIA_SRATE(&stream_port->info),
+ PJMEDIA_PIA_CCNT(&stream_port->info),
+ PJMEDIA_PIA_SPF(&stream_port->info),
+ PJMEDIA_PIA_BITS(&stream_port->info),
0, &snd_port);
else if (dir == PJMEDIA_DIR_ENCODING)
status = pjmedia_snd_port_create_rec(pool, -1,
- stream_port->info.clock_rate,
- stream_port->info.channel_count,
- stream_port->info.samples_per_frame,
- stream_port->info.bits_per_sample,
+ PJMEDIA_PIA_SRATE(&stream_port->info),
+ PJMEDIA_PIA_CCNT(&stream_port->info),
+ PJMEDIA_PIA_SPF(&stream_port->info),
+ PJMEDIA_PIA_BITS(&stream_port->info),
0, &snd_port);
else
status = pjmedia_snd_port_create_player(pool, -1,
- stream_port->info.clock_rate,
- stream_port->info.channel_count,
- stream_port->info.samples_per_frame,
- stream_port->info.bits_per_sample,
+ PJMEDIA_PIA_SRATE(&stream_port->info),
+ PJMEDIA_PIA_CCNT(&stream_port->info),
+ PJMEDIA_PIA_SPF(&stream_port->info),
+ PJMEDIA_PIA_BITS(&stream_port->info),
0, &snd_port);
@@ -757,11 +726,9 @@ static void print_stream_stat(pjmedia_stream *stream,
now.msec);
- printf(" Info: audio %.*s@%dHz, %dms/frame, %sB/s (%sB/s +IP hdr)\n",
- (int)port->info.encoding_name.slen,
- port->info.encoding_name.ptr,
- port->info.clock_rate,
- port->info.samples_per_frame * 1000 / port->info.clock_rate,
+ printf(" Info: audio %dHz, %dms/frame, %sB/s (%sB/s +IP hdr)\n",
+ PJMEDIA_PIA_SRATE(&port->info),
+ PJMEDIA_PIA_PTIME(&port->info),
good_number(bps, (codec_param->info.avg_bps+7)/8),
good_number(ipbps, ((codec_param->info.avg_bps+7)/8) +
(40 * 1000 /
@@ -900,14 +867,14 @@ static void print_stream_stat(pjmedia_stream *stream,
unsigned jmin, jmax, jmean, jdev;
SAMPLES_TO_USEC(jmin, xr_stat.rx.stat_sum.jitter.min,
- port->info.clock_rate);
+ port->info.fmt.det.aud.clock_rate);
SAMPLES_TO_USEC(jmax, xr_stat.rx.stat_sum.jitter.max,
- port->info.clock_rate);
+ port->info.fmt.det.aud.clock_rate);
SAMPLES_TO_USEC(jmean, xr_stat.rx.stat_sum.jitter.mean,
- port->info.clock_rate);
+ port->info.fmt.det.aud.clock_rate);
SAMPLES_TO_USEC(jdev,
pj_math_stat_get_stddev(&xr_stat.rx.stat_sum.jitter),
- port->info.clock_rate);
+ port->info.fmt.det.aud.clock_rate);
sprintf(jitter, "%7.3f %7.3f %7.3f %7.3f",
jmin/1000.0, jmean/1000.0, jmax/1000.0, jdev/1000.0);
} else
@@ -963,14 +930,14 @@ static void print_stream_stat(pjmedia_stream *stream,
unsigned jmin, jmax, jmean, jdev;
SAMPLES_TO_USEC(jmin, xr_stat.tx.stat_sum.jitter.min,
- port->info.clock_rate);
+ port->info.fmt.det.aud.clock_rate);
SAMPLES_TO_USEC(jmax, xr_stat.tx.stat_sum.jitter.max,
- port->info.clock_rate);
+ port->info.fmt.det.aud.clock_rate);
SAMPLES_TO_USEC(jmean, xr_stat.tx.stat_sum.jitter.mean,
- port->info.clock_rate);
+ port->info.fmt.det.aud.clock_rate);
SAMPLES_TO_USEC(jdev,
pj_math_stat_get_stddev(&xr_stat.tx.stat_sum.jitter),
- port->info.clock_rate);
+ port->info.fmt.det.aud.clock_rate);
sprintf(jitter, "%7.3f %7.3f %7.3f %7.3f",
jmin/1000.0, jmean/1000.0, jmax/1000.0, jdev/1000.0);
} else