diff options
author | Liong Sauw Ming <ming@teluu.com> | 2011-12-01 10:49:07 +0000 |
---|---|---|
committer | Liong Sauw Ming <ming@teluu.com> | 2011-12-01 10:49:07 +0000 |
commit | c04000a192a00f047ea6d04e131e42f0b72bc11b (patch) | |
tree | a3f1a4ba2cd467087640c5cb2bd9509570c5acff /pjmedia/src/test/vid_dev_test.c | |
parent | 5a41db1f3ba90b676e9485a15841e5fec656ed58 (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_dev_test.c')
-rw-r--r-- | pjmedia/src/test/vid_dev_test.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/pjmedia/src/test/vid_dev_test.c b/pjmedia/src/test/vid_dev_test.c index 7425e49b..5782337b 100644 --- a/pjmedia/src/test/vid_dev_test.c +++ b/pjmedia/src/test/vid_dev_test.c @@ -76,10 +76,10 @@ static int enum_devs(void) return PJ_SUCCESS; } -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; @@ -95,7 +95,6 @@ static int capture_render_loopback(int cap_dev_id, int rend_dev_id, 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; @@ -161,10 +160,7 @@ static int capture_render_loopback(int cap_dev_id, int rend_dev_id, } /* 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( @@ -196,8 +192,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; |