主頁(yè) > 服務(wù)與支持 > 開(kāi)發(fā)平臺(tái) > 客戶端SDK參考 > Windows Native SDK > 接口參考 音視頻呼叫
更新時(shí)間:2019-12-10
接口名稱 |
接口描述 |
---|---|
發(fā)起呼叫。 |
|
結(jié)束呼叫。 |
|
接聽(tīng)呼叫。 |
|
二次撥號(hào)。 |
|
保持通話。 |
|
恢復(fù)通話。 |
接口名稱 |
接口描述 |
---|---|
設(shè)置視頻窗口。 |
|
設(shè)置視頻方向。 |
|
添加視頻。 |
|
刪除視頻。 |
|
響應(yīng)添加視頻請(qǐng)求。 |
|
視頻控制。 |
|
設(shè)置視頻窗口屬性。 |
|
設(shè)置攝像頭采集方向。 |
|
設(shè)置窗口顯示方向。 |
|
設(shè)置攝像頭圖片。 |
|
設(shè)置SVC會(huì)議視頻窗口信息。 |
|
獲取呼叫統(tǒng)計(jì)信息。 |
接口名稱 |
接口描述 |
---|---|
閉音麥克風(fēng)。 |
|
獲取設(shè)備列表。 |
|
設(shè)置麥克風(fēng)序號(hào)。 |
|
獲取麥克風(fēng)序號(hào)。 |
|
設(shè)置揚(yáng)聲器序號(hào)。 |
|
獲取揚(yáng)聲器序號(hào)。 |
|
設(shè)置視頻序號(hào)。 |
|
獲取視頻序號(hào)。 |
|
設(shè)置輸出音量。 |
|
獲取輸出音量。 |
|
打開(kāi)本地預(yù)覽窗口。 |
|
關(guān)閉本地預(yù)覽窗口。 |
接口名稱 |
接口描述 |
---|---|
開(kāi)始播放音頻文件。 |
|
停止播放音頻文件。 |
接口描述
發(fā)起一路普通VOIP呼叫。
注意事項(xiàng)
呼叫ID作為一路通話的唯一標(biāo)示,UI應(yīng)保存并管理,以用于后繼的呼叫相關(guān)操作。
方法定義
TSDK_API TSDK_RESULT tsdk_start_call(OUT TSDK_UINT32 *callid, IN const TSDK_CHAR* callee_number, IN TSDK_BOOL is_video) |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[out] callid |
是 |
TSDK_UINT32 * |
呼叫的ID,標(biāo)識(shí)唯一的呼叫。 |
[in] callee_number |
是 |
const TSDK_CHAR* |
被叫號(hào)碼,最大有效長(zhǎng)度255。 |
[in] is_video |
是 |
TSDK_BOOL |
是否發(fā)起視頻呼叫。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_start_call(&callid, call_number, FALSE); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("start call failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
結(jié)束和其他用戶的通話或者來(lái)電。通話雙方均可以主動(dòng)結(jié)束呼叫。
注意事項(xiàng)
無(wú)。
方法定義
TSDK_API TSDK_RESULT tsdk_end_call(IN TSDK_UINT32 call_id); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫的ID,標(biāo)識(shí)唯一的呼叫。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_end_call(callid); if(TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("end call failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
被叫方收到呼叫請(qǐng)求時(shí),調(diào)用該接口接聽(tīng)呼叫。
注意事項(xiàng)
若被叫方需要拒絕接聽(tīng)呼叫,則需要調(diào)用tsdk_end_call()接口。
方法定義
TSDK_API TSDK_RESULT tsdk_accept_call(IN TSDK_UINT32 call_id, IN TSDK_BOOL is_video); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫的ID,標(biāo)識(shí)唯一的呼叫。 |
[in] is_video |
是 |
TSDK_BOOL |
是否接聽(tīng)視頻呼叫。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_accept_call(callid, (TSDK_BOOL)isVideo); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("accept call failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
一些業(yè)務(wù)場(chǎng)景中,用戶需要通過(guò)終端按鍵與網(wǎng)絡(luò)進(jìn)行交互,如充值、撥打總機(jī)后再撥打分機(jī)號(hào)碼、撥打客服中心號(hào)碼等。本接口用于在通話中發(fā)送二次撥號(hào)信息,每調(diào)用一次發(fā)送一次信號(hào)。
注意事項(xiàng)
方法定義
TSDK_API TSDK_RESULT tsdk_send_dtmf(IN TSDK_UINT32 call_id, IN TSDK_E_DTMF_TONE tone); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫的ID,標(biāo)識(shí)唯一的呼叫。 |
[in] tone |
是 |
DTMF鍵值。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_send_dtmf(callid, tone); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("send dtmf failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
保持通話。
注意事項(xiàng)
方法定義
TSDK_API TSDK_RESULT tsdk_hold_call(IN TSDK_UINT32 call_id); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫ID。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_hold_call(callid); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("hold failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
取消保持通話(恢復(fù)通話)。
注意事項(xiàng)
方法定義
TSDK_API TSDK_RESULT tsdk_unhold_call(IN TSDK_UINT32 call_id); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫ID。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_unhold_call(callid); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("unhold failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
用戶建立視頻呼叫時(shí),調(diào)用本接口設(shè)置視頻窗口與呼叫的綁定關(guān)系。
如果用戶僅選擇音頻接聽(tīng),則無(wú)需調(diào)用此接口。
注意事項(xiàng)
呼叫存在時(shí),callid填寫(xiě)對(duì)應(yīng)的有效值;呼叫不存在(未建立,主叫呼出時(shí)),callid填寫(xiě)非法值。
方法定義
TSDK_API TSDK_RESULT tsdk_set_video_window(IN TSDK_UINT32 call_id, IN TSDK_UINT32 count, IN const TSDK_S_VIDEO_WND_INFO *window); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫的ID,標(biāo)識(shí)唯一的呼叫。 |
[in] count |
是 |
TSDK_UINT32 |
窗口個(gè)數(shù),一般為2。 |
[in] window |
是 |
const TSDK_S_VIDEO_WND_INFO * |
視頻窗口信息。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; TSDK_S_VIDEO_WND_INFO video_window_info[SERVICE_CALL_D_VIDEO_WINDOW_NUM] = { TSDK_E_VIDEO_WND_REMOTE }; video_window_info[TSDK_E_VIDEO_WND_LOCAL].render = (TSDK_UINT32)local_video_wnd; video_window_info[TSDK_E_VIDEO_WND_LOCAL].video_wnd_type = TSDK_E_VIDEO_WND_LOCAL; video_window_info[TSDK_E_VIDEO_WND_LOCAL].index = 1; video_window_info[TSDK_E_VIDEO_WND_LOCAL].display_mode = TSDK_E_VIDEO_WND_DISPLAY_FULL; video_window_info[TSDK_E_VIDEO_WND_REMOTE].render = (TSDK_UINT32)remote_video_wnd; video_window_info[TSDK_E_VIDEO_WND_REMOTE].video_wnd_type = TSDK_E_VIDEO_WND_REMOTE; video_window_info[TSDK_E_VIDEO_WND_REMOTE].index = 0; video_window_info[TSDK_E_VIDEO_WND_REMOTE].display_mode = TSDK_E_VIDEO_WND_DISPLAY_FULL; ret = tsdk_set_video_window(callid, SERVICE_CALL_D_VIDEO_WINDOW_NUM,video_window_info); if( TSDK_SUCCESS != ret ) { LOG_D_CALL_ERROR("set video window info failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
設(shè)置移動(dòng)視頻設(shè)備。
注意事項(xiàng)
用于移動(dòng)設(shè)備。
方法定義
TSDK_API TSDK_RESULT tsdk_set_video_orient(IN TSDK_UINT32 call_id, IN TSDK_UINT32 index, IN TSDK_S_VIDEO_ORIENT *video_orient); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫ID。 |
[in] index |
是 |
TSDK_UINT32 |
設(shè)備(攝像頭)索引。 |
[in] video_orient |
是 |
視頻方向(橫豎屏)參數(shù)。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_UINT32 confHandle = get_data_conf_handle(); TSDK_RESULT ret; ret = tsdk_set_video_orient(callId,index,videoOrient); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("set video orient failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
發(fā)起添加視頻(音頻轉(zhuǎn)視頻呼叫)請(qǐng)求。
注意事項(xiàng)
無(wú)。
方法定義
TSDK_API TSDK_RESULT tsdk_add_video(IN TSDK_UINT32 call_id); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫的ID,標(biāo)識(shí)唯一的呼叫。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_add_video(callid); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("add video failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
發(fā)起刪除視頻(視頻轉(zhuǎn)音頻呼叫)請(qǐng)求。
注意事項(xiàng)
前提條件:視頻通話已建立,主被叫正在通話中。
方法定義
TSDK_API TSDK_RESULT tsdk_del_video(IN TSDK_UINT32 call_id); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫的ID,標(biāo)識(shí)唯一的呼叫。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_del_video(callid); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("delete video failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
對(duì)方請(qǐng)求音頻轉(zhuǎn)視頻呼叫時(shí),本方選擇同意或者拒絕。
注意事項(xiàng)
無(wú)。
方法定義
TSDK_API TSDK_RESULT tsdk_reply_add_video(IN TSDK_UINT32 call_id, IN TSDK_BOOL is_accept); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫的ID,標(biāo)識(shí)唯一的呼叫。 |
[in] is_accept |
是 |
TSDK_BOOL |
是否同意音頻轉(zhuǎn)視頻呼叫的請(qǐng)求。
|
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_reply_add_video(callid,isAccept); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("reply add video failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
該接口用于控制暫停或繼續(xù)視頻采集。
注意事項(xiàng)
無(wú)。
方法定義
TSDK_API TSDK_RESULT tsdk_video_control(IN TSDK_UINT32 call_id, IN TSDK_S_VIDEO_CTRL_INFO *video_control); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫ID。 |
[in] video_control |
是 |
視頻控制參數(shù)。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; TSDK_S_VIDEO_CTRL_INFO videoControl; videoControl.is_sync = TRUE; videoControl.object = TSDK_E_VIDEO_CTRL_CAMERA | TSDK_E_VIDEO_CTRL_LOCAL_WND; if(isStop) { videoControl.operation = TSDK_E_VIDEO_CTRL_STOP; } else { videoControl.operation = TSDK_E_VIDEO_CTRL_START; } ret = tsdk_video_control(callid,&videoControl); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("control video failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
該接口用于設(shè)置視頻顯示窗口屬性。
注意事項(xiàng)
無(wú)。
方法定義
TSDK_API TSDK_RESULT tsdk_set_video_render(IN TSDK_UINT32 call_id, IN const TSDK_S_VIDEO_RENDER_INFO* video_render); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫ID。 |
[in] video_render |
是 |
視頻顯示窗口屬性。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_UINT32 confHandle = get_data_conf_handle(); TSDK_RESULT ret; ret = tsdk_set_video_render(callId,videoRender); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("set video render failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
該接口用于設(shè)置攝像頭采集方向。
注意事項(xiàng)
無(wú)。
方法定義
TSDK_API TSDK_RESULT tsdk_set_capture_rotation(IN TSDK_UINT32 call_id, IN TSDK_UINT32 camera_index, IN TSDK_UINT32 capture_rotation); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫ID。 |
[in] camera_index |
是 |
TSDK_UINT32 |
采集設(shè)備(攝像頭)索引。 |
[in] capture_rotation |
是 |
TSDK_UINT32 |
攝像頭采集角度 {0,1,2,3} 僅對(duì)移動(dòng)平臺(tái)有效,默認(rèn)為0。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_set_capture_rotation(callId, cameraIndex, captureRotation); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("set capture rotation failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
該接口用于設(shè)置窗口顯示方向。
注意事項(xiàng)
無(wú)。
方法定義
TSDK_API TSDK_RESULT tsdk_set_display_rotation(IN TSDK_UINT32 call_id, IN TSDK_E_VIDEO_WND_TYPE window_type, IN TSDK_UINT32 display_rotation); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫ID。 |
[in] window_type |
是 |
視頻窗口類型。 |
|
[in] display_rotation |
是 |
TSDK_UINT32 |
窗口顯示角度 {0,1,2,3} 僅對(duì)移動(dòng)平臺(tái)有效,默認(rèn)為0。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_set_display_rotation(callId, windowType, displayRotation); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("set display rotation failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
該接口用于設(shè)置攝像頭圖片。
注意事項(xiàng)
無(wú)。
方法定義
TSDK_API TSDK_RESULT tsdk_set_camera_picture(IN TSDK_UINT32 call_id, IN TSDK_CHAR *file_name); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫ID。 |
[in] file_name |
是 |
TSDK_CHAR * |
文件名,不超過(guò)1920*1200的BMP格式圖片。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_set_camera_picture(callId,fileName); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("set camera picture failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
設(shè)置SVC會(huì)議視頻窗口信息。
注意事項(xiàng)
無(wú)。
方法定義
TSDK_API TSDK_RESULT tsdk_set_svc_video_window(IN TSDK_UINT32 call_id, IN TSDK_UINT32 count, IN const TSDK_S_SVC_VIDEO_WND_INFO *window); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫的ID,標(biāo)識(shí)唯一的呼叫。 |
[in] count |
是 |
TSDK_UINT32 |
SVC窗口個(gè)數(shù)。 |
[in] window |
是 |
const TSDK_S_SVC_VIDEO_WND_INFO * |
SVC視頻窗口信息。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功則返回TSDK_SUCCESS,失敗則返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
None
|
接口描述
獲取呼叫統(tǒng)計(jì)信息。
注意事項(xiàng)
無(wú)。
方法定義
TSDK_API TSDK_RESULT tsdk_get_call_statistic_info(IN TSDK_UINT32 call_id, OUT TSDK_S_CALL_STATISTIC_INFO *statistic_info); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫的ID,標(biāo)識(shí)唯一的呼叫。 |
[out] statistic_info |
是 |
呼叫統(tǒng)計(jì)信息。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功則返回TSDK_SUCCESS,失敗則返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
None
|
接口描述
設(shè)置(或取消)麥克風(fēng)靜音,即關(guān)閉或打開(kāi)麥克風(fēng),停止或重啟音頻輸入。
注意事項(xiàng)
方法定義
TSDK_API TSDK_RESULT tsdk_mute_mic(IN TSDK_UINT32 call_id, IN TSDK_BOOL is_mute); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] call_id |
是 |
TSDK_UINT32 |
呼叫的ID,標(biāo)識(shí)唯一的呼叫。 |
[in] is_mute |
是 |
TSDK_BOOL |
是否靜音。
|
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_mute_mic(callid, isMute); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("mute mic failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
獲取音頻視頻設(shè)備列表。
注意事項(xiàng)
應(yīng)用程序在任何階段均可以獲取當(dāng)前可用的音視頻設(shè)備信息,為更方便地進(jìn)行后繼具體設(shè)備管理,建議應(yīng)用程序在初始化階段和系統(tǒng)檢測(cè)到設(shè)備變化時(shí),獲取設(shè)備信息并保存維護(hù)。
方法定義
TSDK_API TSDK_RESULT tsdk_get_devices(IN TSDK_E_DEVICE_TYPE device_type, IO TSDK_UINT32* num, OUT TSDK_S_DEVICE_INFO* device_info); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] device_type |
是 |
設(shè)備類型。
|
|
[in/out] num |
是 |
TSDK_UINT32 * |
輸入時(shí)表示上層分配的設(shè)備個(gè)數(shù),輸出時(shí)表示獲取到得設(shè)備的個(gè)數(shù)。 |
[out] device_info |
是 |
設(shè)備信息數(shù)組指針。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_get_devices(device_type, device_num, device_info); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("get devices failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
設(shè)置當(dāng)前使用的麥克風(fēng)設(shè)備序號(hào)。
注意事項(xiàng)
設(shè)備序號(hào)一般在系統(tǒng)初始化后通過(guò)tsdk_get_devices()獲取, 用于PC。
方法定義
TSDK_API TSDK_RESULT tsdk_set_mic_index(IN TSDK_UINT32 index); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] index |
是 |
TSDK_UINT32 |
麥克風(fēng)設(shè)備序號(hào)。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
ret = tsdk_set_mic_index(index); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("set mic index failed. result=%#x", ret); return -1; } break; |
接口描述
獲取當(dāng)前使用的麥克風(fēng)設(shè)備序號(hào)。
注意事項(xiàng)
用于接口測(cè)試或產(chǎn)品調(diào)試,實(shí)際產(chǎn)品業(yè)務(wù)場(chǎng)景中無(wú)需調(diào)用。
方法定義
TSDK_API TSDK_RESULT tsdk_get_mic_index(OUT TSDK_UINT32* index); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[out] index |
是 |
TSDK_UINT32 * |
麥克風(fēng)設(shè)備序號(hào)。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
ret = tsdk_get_mic_index(index); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("get mic index failed. result=%#x", ret); return -1; } break; |
接口描述
設(shè)置當(dāng)前使用的揚(yáng)聲器設(shè)備序號(hào)。
注意事項(xiàng)
設(shè)備序號(hào)一般在系統(tǒng)初始化后通過(guò)tsdk_get_devices()獲取, 用于PC。
方法定義
TSDK_API TSDK_RESULT tsdk_set_speak_index ( IN TSDK_UINT32 index ) |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] index |
是 |
TSDK_UINT32 |
揚(yáng)聲器設(shè)備序號(hào)。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
ret = tsdk_set_speak_index(index); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("set speak index failed. result=%#x", ret); return -1; } break; |
接口描述
獲取當(dāng)前使用的揚(yáng)聲器設(shè)備序號(hào)。
注意事項(xiàng)
用于接口測(cè)試或產(chǎn)品調(diào)試,實(shí)際產(chǎn)品業(yè)務(wù)場(chǎng)景中無(wú)需調(diào)用。
方法定義
TSDK_API TSDK_RESULT tsdk_get_speak_index(OUT TSDK_UINT32* index); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[out] index |
是 |
TSDK_UINT32 * |
揚(yáng)聲器設(shè)備序號(hào)。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
ret = tsdk_get_speak_index(index); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("get speak index failed. result=%#x", ret); return -1; } break; |
接口描述
設(shè)置當(dāng)前使用的視頻設(shè)備序號(hào)。
注意事項(xiàng)
設(shè)備序號(hào)一般在系統(tǒng)初始化后通過(guò)tsdk_get_devices()獲取。
方法定義
TSDK_API TSDK_RESULT tsdk_set_video_index ( IN TSDK_UINT32 index ) |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] index |
是 |
TSDK_UINT32 |
視頻設(shè)備序號(hào)。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
ret = tsdk_set_video_index(index); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("set video index failed. result=%#x", ret); return -1; } break; |
接口描述
獲取當(dāng)前使用的視頻設(shè)備序號(hào)。
注意事項(xiàng)
用于接口測(cè)試或產(chǎn)品調(diào)試,實(shí)際產(chǎn)品業(yè)務(wù)場(chǎng)景中無(wú)需調(diào)用。
方法定義
TSDK_API TSDK_RESULT tsdk_get_video_index( OUT TSDK_UINT32 * index ) |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[out] index |
是 |
TSDK_UINT32 * |
視頻設(shè)備序號(hào)。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
ret = tsdk_get_video_index(index); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("get video index failed. result=%#x", ret); return -1; } break; |
接口描述
設(shè)置輸出音量大小。
注意事項(xiàng)
無(wú)。
方法定義
TSDK_API TSDK_RESULT tsdk_set_speak_volume(IN TSDK_UINT32 volume); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] volume |
是 |
TSDK_UINT32 |
音量大小,取值范圍[0, 100]。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_set_speak_volume(volume); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("set speak volume failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
獲取輸出音量大小。
注意事項(xiàng)
無(wú)。
方法定義
TSDK_API TSDK_RESULT tsdk_get_speak_volume( OUT TSDK_UINT32 * volume ) |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[out] volume |
是 |
TSDK_UINT32* |
音量大小,取值范圍[0, 100]。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_get_speak_volume(volume); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("get speak volume failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
打開(kāi)本地預(yù)覽窗口。
注意事項(xiàng)
該接口一般用于設(shè)備設(shè)置時(shí),檢測(cè)本地?cái)z像頭工作狀態(tài)是否正常。
方法定義
TSDK_API TSDK_RESULT tsdk_open_video_preview( IN TSDK_UPTR handle, IN TSDK_UINT32 index ) |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] handle |
是 |
TSDK_UPTR |
窗口句柄。 |
[in] index |
是 |
TSDK_UINT32 |
攝像頭索引。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_open_video_preview(local_preview_wnd, index); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("open video preview failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
關(guān)閉并刪除本地預(yù)覽窗口。
注意事項(xiàng)
無(wú)。
方法定義
TSDK_API TSDK_RESULT tsdk_close_video_preview( TSDK_VOID ) |
參數(shù)描述
無(wú)。
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_close_video_preview(); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("close video preview failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
播放本地音頻文件,包括振鈴音、回鈴音、撥號(hào)(提示)音、DTMF音、忙碌提示音和本地按鍵音等。
注意事項(xiàng)
WAV文件,目前支持PCMA、PCMU、G.729格式或采樣精度為8或16位、采樣率8k~48K的PCM數(shù)據(jù),支持雙聲道。
方法定義
TSDK_API TSDK_RESULT tsdk_start_play_media(IN TSDK_UINT32 loops, IN const TSDK_CHAR* play_file, OUT TSDK_INT32* play_handle); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] loops |
是 |
TSDK_UINT32 |
循環(huán)次數(shù),0表示循環(huán)播放。 |
[in] play_file |
是 |
const TSDK_CHAR * |
待播放的音頻文件,目前支持wav格式。 |
[out] play_handle |
是 |
TSDK_INT32 * |
播放句柄(用于停止播放時(shí)的參數(shù))。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_start_play_media(loops, play_file_path,play_handle); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("call media start play failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |
接口描述
停止音頻文件播放。
注意事項(xiàng)
無(wú)。
方法定義
TSDK_API TSDK_RESULT tsdk_stop_play_media(IN TSDK_INT32 play_handle); |
參數(shù)描述
參數(shù)名 |
是否必須 |
類型 |
描述 |
---|---|---|---|
[in] play_handle |
是 |
TSDK_INT32 |
播放句柄。 |
返回值
類型 |
描述 |
---|---|
TSDK_RESULT |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
TSDK_RESULT ret; ret = tsdk_stop_play_media(play_handle); if (TSDK_SUCCESS != ret) { LOG_D_CALL_ERROR("call media stop play failed. result=%#x", ret); return -1; } return TSDK_SUCCESS; |