Ignore:
Timestamp:
Aug 25, 2011 11:59:39 AM (13 years ago)
Author:
bennylp
Message:

Re #1351: option to initially hide video preview window to avoid floating window. Also added pjsua_vid_preview_param_default()

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjsip/src/pjsua-lib/pjsua_vid.c

    r3694 r3724  
    117117} 
    118118 
     119PJ_DEF(void) pjsua_vid_preview_param_default(pjsua_vid_preview_param *p) 
     120{ 
     121    p->rend_id = PJMEDIA_VID_DEFAULT_RENDER_DEV; 
     122    p->show = PJ_TRUE; 
     123} 
     124 
     125 
    119126/***************************************************************************** 
    120127 * Devices. 
     
    339346        if (wid != PJSUA_INVALID_ID) { 
    340347            /* Yes, it exists */ 
    341  
    342             /* Show window if requested */ 
    343             if (show) { 
    344                 pjmedia_vid_dev_stream *rdr; 
    345                 pj_bool_t hide = PJ_FALSE; 
    346                  
    347                 rdr = pjmedia_vid_port_get_stream(pjsua_var.win[wid].vp_rend); 
    348                 pj_assert(rdr); 
    349                 status = pjmedia_vid_dev_stream_set_cap( 
    350                                         rdr, 
    351                                         PJMEDIA_VID_DEV_CAP_OUTPUT_HIDE, 
    352                                         &hide); 
    353             } 
     348            /* Show/hide window */ 
     349            pjmedia_vid_dev_stream *rdr; 
     350            pj_bool_t hide = !show; 
     351 
     352            rdr = pjmedia_vid_port_get_stream(pjsua_var.win[wid].vp_rend); 
     353            pj_assert(rdr); 
     354            status = pjmedia_vid_dev_stream_set_cap( 
     355                                    rdr, PJMEDIA_VID_DEV_CAP_OUTPUT_HIDE, 
     356                                    &hide); 
    354357 
    355358            /* Done */ 
     
    833836 */ 
    834837PJ_DEF(pj_status_t) pjsua_vid_preview_start(pjmedia_vid_dev_index id, 
    835                                             pjsua_vid_preview_param *prm) 
     838                                            const pjsua_vid_preview_param *prm) 
    836839{ 
    837840    pjsua_vid_win_id wid; 
    838841    pjsua_vid_win *w; 
    839842    pjmedia_vid_dev_index rend_id; 
     843    pjsua_vid_preview_param default_param; 
    840844    pj_status_t status; 
    841845 
    842846    PJSUA_LOCK(); 
    843847 
    844     if (prm) { 
    845         rend_id = prm->rend_id; 
    846     } else { 
    847         rend_id = PJMEDIA_VID_DEFAULT_RENDER_DEV; 
    848     } 
     848    if (!prm) { 
     849        pjsua_vid_preview_param_default(&default_param); 
     850        prm = &default_param; 
     851    } 
     852 
     853    rend_id = prm->rend_id; 
    849854 
    850855    status = create_vid_win(PJSUA_WND_TYPE_PREVIEW, NULL, rend_id, id, 
    851                             PJ_TRUE, &wid); 
     856                            prm->show, &wid); 
    852857    if (status != PJ_SUCCESS) { 
    853858        PJSUA_UNLOCK(); 
Note: See TracChangeset for help on using the changeset viewer.