summaryrefslogtreecommitdiff
path: root/pjsip/src/pjsua-lib/pjsua_core.c
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2006-03-15 19:32:41 +0000
committerBenny Prijono <bennylp@teluu.com>2006-03-15 19:32:41 +0000
commitb50cc8a5b479f2bece31381846bc5c63c5e8cdff (patch)
treefafd368e9eaa885ee96b4bab4bd1d95f62cfcf10 /pjsip/src/pjsua-lib/pjsua_core.c
parent4bffa85a3577b72dab0141c44da5ca57914aec1f (diff)
Added Null port, and changed conference so that it does not call port get_frame() when there is no listener on the port
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@318 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip/src/pjsua-lib/pjsua_core.c')
-rw-r--r--pjsip/src/pjsua-lib/pjsua_core.c21
1 files changed, 18 insertions, 3 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_core.c b/pjsip/src/pjsua-lib/pjsua_core.c
index da2ab0f2..c8188fc9 100644
--- a/pjsip/src/pjsua-lib/pjsua_core.c
+++ b/pjsip/src/pjsua-lib/pjsua_core.c
@@ -753,15 +753,22 @@ static pj_status_t init_media(void)
return status;
}
+ /* Add NULL port to the bridge. */
+ status = pjmedia_null_port_create( pjsua.pool, pjsua.clock_rate,
+ pjsua.clock_rate * 20 / 1000, 16,
+ &pjsua.null_port);
+ pjmedia_conf_add_port( pjsua.mconf, pjsua.pool, pjsua.null_port,
+ &pjsua.null_port->info.name, NULL );
+
/* Create WAV file player if required: */
if (pjsua.wav_file) {
- pjmedia_port *port;
pj_str_t port_name;
/* Create the file player port. */
status = pjmedia_file_player_port_create( pjsua.pool, pjsua.wav_file,
- 0, -1, NULL, &port);
+ 0, -1, NULL,
+ &pjsua.file_port);
if (status != PJ_SUCCESS) {
pjsua_perror(THIS_FILE,
"Error playing media file",
@@ -770,7 +777,8 @@ static pj_status_t init_media(void)
}
/* Add port to conference bridge: */
- status = pjmedia_conf_add_port(pjsua.mconf, pjsua.pool, port,
+ status = pjmedia_conf_add_port(pjsua.mconf, pjsua.pool,
+ pjsua.file_port,
pj_cstr(&port_name, pjsua.wav_file),
&pjsua.wav_slot);
if (status != PJ_SUCCESS) {
@@ -1049,6 +1057,13 @@ pj_status_t pjsua_destroy(void)
if (pjsua.mconf)
pjmedia_conf_destroy(pjsua.mconf);
+ /* Destroy file port */
+ pjmedia_port_destroy(pjsua.file_port);
+
+ /* Destroy null port. */
+ pjmedia_port_destroy(pjsua.null_port);
+
+
/* Destroy sound framework:
* (this should be done in pjmedia_shutdown())
*/