From 0294ae2a98b94d86ed2a5ab15c1a9d6f153fbd31 Mon Sep 17 00:00:00 2001 From: Nanang Izzuddin Date: Thu, 5 Apr 2012 08:38:49 +0000 Subject: Misc (Re #1446): Add pjsua app video command for modifying video codec size/resolution. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@4027 74dad513-b988-da41-8d7b-12977e46ad98 --- pjsip-apps/src/pjsua/pjsua_app.c | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) (limited to 'pjsip-apps/src/pjsua/pjsua_app.c') diff --git a/pjsip-apps/src/pjsua/pjsua_app.c b/pjsip-apps/src/pjsua/pjsua_app.c index 0b04dd4f..23c5b215 100644 --- a/pjsip-apps/src/pjsua/pjsua_app.c +++ b/pjsip-apps/src/pjsua/pjsua_app.c @@ -3594,6 +3594,7 @@ static void vid_show_help(void) puts("| vid codec prio ID PRIO Set codec ID priority to PRIO |"); puts("| vid codec fps ID NUM DEN Set codec ID framerate to (NUM/DEN) fps |"); puts("| vid codec bw ID AVG MAX Set codec ID bitrate to AVG & MAX kbps |"); + puts("| vid codec size ID W H Set codec ID size/resolution to W x H |"); puts("| vid win list List all active video windows |"); puts("| vid win arrange Auto arrange windows |"); puts("| vid win show|hide ID Show/hide the specified video window ID |"); @@ -4261,8 +4262,8 @@ static void vid_handle_menu(char *menuin) } else { unsigned i; PJ_LOG(3,(THIS_FILE, "Found %d video codecs:", count)); - PJ_LOG(3,(THIS_FILE, "codec id prio fps br(kbps)")); - PJ_LOG(3,(THIS_FILE, "----------------------------------")); + PJ_LOG(3,(THIS_FILE, "codec id prio fps bw(kbps) size")); + PJ_LOG(3,(THIS_FILE, "------------------------------------------")); for (i=0; ifps.num*1.0/vfd->fps.denum), - vfd->avg_bps/1000, vfd->max_bps/1000)); + vfd->avg_bps/1000, vfd->max_bps/1000, + vfd->size.w, vfd->size.h)); } } } else if (argc==5 && strcmp(argv[2], "prio")==0) { @@ -4319,6 +4321,21 @@ static void vid_handle_menu(char *menuin) } if (status != PJ_SUCCESS) PJ_PERROR(1,(THIS_FILE, status, "Set codec bitrate error")); + } else if (argc==6 && strcmp(argv[2], "size")==0) { + pjmedia_vid_codec_param cp; + pj_str_t cid; + int M, N; + cid = pj_str(argv[3]); + M = atoi(argv[4]); + N = atoi(argv[5]); + status = pjsua_vid_codec_get_param(&cid, &cp); + if (status == PJ_SUCCESS) { + cp.enc_fmt.det.vid.size.w = M; + cp.enc_fmt.det.vid.size.h = N; + status = pjsua_vid_codec_set_param(&cid, &cp); + } + if (status != PJ_SUCCESS) + PJ_PERROR(1,(THIS_FILE, status, "Set codec bitrate error")); } else goto on_error; } else -- cgit v1.2.3