summaryrefslogtreecommitdiff
path: root/pjmedia/src/test/vid_port_test.c
diff options
context:
space:
mode:
authorLiong Sauw Ming <ming@teluu.com>2011-12-01 10:49:07 +0000
committerLiong Sauw Ming <ming@teluu.com>2011-12-01 10:49:07 +0000
commitc04000a192a00f047ea6d04e131e42f0b72bc11b (patch)
treea3f1a4ba2cd467087640c5cb2bd9509570c5acff /pjmedia/src/test/vid_port_test.c
parent5a41db1f3ba90b676e9485a15841e5fec656ed58 (diff)
Closed #1420: Add support for event manager
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3893 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjmedia/src/test/vid_port_test.c')
-rw-r--r--pjmedia/src/test/vid_port_test.c16
1 files changed, 7 insertions, 9 deletions
diff --git a/pjmedia/src/test/vid_port_test.c b/pjmedia/src/test/vid_port_test.c
index fed61bb1..dd3bf37e 100644
--- a/pjmedia/src/test/vid_port_test.c
+++ b/pjmedia/src/test/vid_port_test.c
@@ -32,10 +32,10 @@
static pj_bool_t is_quitting = PJ_FALSE;
-static pj_status_t vid_event_cb(pjmedia_event_subscription *esub,
- pjmedia_event *event)
+static pj_status_t vid_event_cb(pjmedia_event *event,
+ void *user_data)
{
- PJ_UNUSED_ARG(esub);
+ PJ_UNUSED_ARG(user_data);
if (event->type == PJMEDIA_EVENT_WND_CLOSED)
is_quitting = PJ_TRUE;
@@ -52,7 +52,6 @@ static int capture_render_loopback(pj_bool_t active,
pjmedia_vid_dev_info cdi, rdi;
pjmedia_vid_port_param param;
pjmedia_video_format_detail *vfd;
- pjmedia_event_subscription esub;
pj_status_t status;
int rc = 0, i;
@@ -118,10 +117,7 @@ static int capture_render_loopback(pj_bool_t active,
}
/* Set event handler */
- pjmedia_event_subscription_init(&esub, &vid_event_cb, NULL);
- pjmedia_event_subscribe(
- pjmedia_vid_port_get_event_publisher(renderer),
- &esub);
+ pjmedia_event_subscribe(NULL, pool, &vid_event_cb, NULL, renderer);
/* Connect capture to renderer */
status = pjmedia_vid_port_connect(
@@ -153,8 +149,10 @@ on_return:
if (capture)
pjmedia_vid_port_destroy(capture);
- if (renderer)
+ if (renderer) {
+ pjmedia_event_unsubscribe(NULL, &vid_event_cb, NULL, renderer);
pjmedia_vid_port_destroy(renderer);
+ }
pj_pool_release(pool);
return rc;