Changes between Version 29 and Version 30 of Video_Users_Guide


Ignore:
Timestamp:
Jan 3, 2012 7:09:57 AM (12 years ago)
Author:
ming
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Video_Users_Guide

    v29 v30  
    197197[[BR]] 
    198198 
    199 === Incoming Video Display === 
     199=== Incoming Video Call === 
    200200 
    201201Incoming video will be accepted/rejected depending on whether video is enabled in the call setting (see above). If video is enabled, incoming video will be accepted as long as we have matching codec for it. However, this does not necessarily mean that the video will be displayed automatically to the screen, nor that outgoing video will be transmitted automatically, as there will be separate settings for these. Outgoing video behavior will be explained in the next section. 
     
    232232 1. Using the video window ID, you may retrieve the associated native video handle with {{{pjsua_vid_win_get_info()}}} and then show or hide the video window using native API, or use {{{pjsua_vid_win_set_show()}}} to show/hide the window using PJSUA API. See [#wwin Working with Window] section below for information on manipulating video windows. 
    233233 
    234 ==== Controlling Incoming Video Stream ==== 
     234==== Controlling Incoming Video Stream ==== #civs 
    235235 
    236236Controlling the video window above will not cause any re-INVITE or UPDATE to be sent to remote, since the operation occurs locally. However, if you wish, you may alter the incoming video stream with {{{pjsua_call_set_vid_strm()}}} API, and this '''will''' cause re-INVITE or UPDATE to be sent to negotiate the new SDP. The relevant operation to control incoming video with {{{pjsua_call_set_vid_strm()}}} are: 
     
    241241Since {{{pjsua_call_set_vid_strm()}}} will result in renegotiation of the SDP in a re-INVITE or UPDATE transaction, the result of this operation will not be available immediately. Application can monitor the status by implementing {{{on_call_media_state()}}} callback and enumerate the media stream status with pjsua_call_info. 
    242242 
     243==== Incoming Re-offer ==== 
     244 
     245If the re-offer contains video, incoming re-offer will be automatically answered with current video setting in the call setting. Currently there is no callback for this, however application can always watch for media update via {{{on_call_media_state()}}} callback. 
     246 
    243247[[BR]] 
    244248 
    245 === Outgoing Video Transmission === 
     249=== Outgoing Video Call === 
     250 
     251Outgoing video is enabled/disabled depending on the call setting. To initiate a call with video in the SDP as inactive, you can disable the video in the call setting and set '''{{{pjsua_call_setting.flag}}}''' with '''{{{PJSUA_CALL_INCLUDE_DISABLED_MEDIA}}}'''. 
     252 
     253==== Outgoing Video Transmission ==== 
    246254 
    247255Outgoing video transmission is independent from the incoming video transmission; each can be operated separately. Note that outgoing video transmission '''is not started by default''', not even when incoming offer contains video support. This behavior is controlled by {{{pjsua_acc_config.vid_out_auto_transmit}}} setting, which default to ''PJ_FALSE''. Setting this to ''PJ_TRUE'' will cause video transmission to be started automatically on each outgoing calls and on incoming calls that indicates video support in its offer. However, it is more flexible and appropriate to leave this setting at PJ_FALSE, and add video later during the call by using {{{pjsua_call_set_vid_strm()}}} API, as will be explained shortly. 
     
    251259The default capture device that is used by an account is configured in {{{pjsua_acc_config.vid_cap_dev}}} setting. It is more convenient to set the "correct" device here rather than having to set it in every other API calls later. 
    252260 
    253 ==== Controlling Video Stream ==== 
     261==== Controlling Video Stream ==== #cvs 
    254262 
    255263Application uses {{{pjsua_call_set_vid_strm()}}} API to control video stream on a call. The following ''op_code'' can be used on the API to control the video media: 
     
    265273[[BR]] 
    266274 
     275=== Add or Remove Video === 
     276 
     277You can set the field '''{{{vid_cnt}}}''' of '''{{{pjsua_call_setting}}}''' to the desired video count to add/remove video, then send the reinvite/update. Alternatively, you can use {{{pjsua_call_set_vid_strm()}}} API to control the video stream on a call (see [#civs Controlling Incoming Video Stream] or [#cvs Controlling Video Stream] above). 
     278 
     279[[BR]] 
     280 
    267281=== Working with Video Window === #wwin 
    268282