黄h片网址在线观看,五月婷婷网址,一级一级一级毛片免费毛片,欧美一级视频免费观看

智慧服務(wù),成就美好體驗(yàn) 項(xiàng)目咨詢

主頁(yè) > 服務(wù)與支持 > 開(kāi)發(fā)平臺(tái) > 客戶端SDK參考 > Windows Native SDK > 接口參考 音視頻呼叫

入門使用

音視頻呼叫

更新時(shí)間:2019-12-10

音頻呼叫

接口名稱

接口描述

tsdk_start_call

發(fā)起呼叫。

tsdk_end_call

結(jié)束呼叫。

tsdk_accept_call

接聽(tīng)呼叫。

tsdk_send_dtmf

二次撥號(hào)。

tsdk_hold_call

保持通話。

tsdk_unhold_call

恢復(fù)通話。

視頻呼叫

接口名稱

接口描述

tsdk_set_video_window

設(shè)置視頻窗口。

tsdk_set_video_orient

設(shè)置視頻方向。

tsdk_add_video

添加視頻。

tsdk_del_video

刪除視頻。

tsdk_reply_add_video

響應(yīng)添加視頻請(qǐng)求。

tsdk_video_control

視頻控制。

tsdk_set_video_render

設(shè)置視頻窗口屬性。

tsdk_set_capture_rotation

設(shè)置攝像頭采集方向。

tsdk_set_display_rotation

設(shè)置窗口顯示方向。

tsdk_set_camera_picture

設(shè)置攝像頭圖片。

tsdk_set_svc_video_window

設(shè)置SVC會(huì)議視頻窗口信息。

tsdk_get_call_statistic_info

獲取呼叫統(tǒng)計(jì)信息。

設(shè)備管理

接口名稱

接口描述

tsdk_mute_mic

閉音麥克風(fēng)。

tsdk_get_devices

獲取設(shè)備列表。

tsdk_set_mic_index

設(shè)置麥克風(fēng)序號(hào)。

tsdk_get_mic_index

獲取麥克風(fēng)序號(hào)。

tsdk_set_speak_index

設(shè)置揚(yáng)聲器序號(hào)。

tsdk_get_speak_index

獲取揚(yáng)聲器序號(hào)。

tsdk_set_video_index

設(shè)置視頻序號(hào)。

tsdk_get_video_index

獲取視頻序號(hào)。

tsdk_set_speak_volume

設(shè)置輸出音量。

tsdk_get_speak_volume

獲取輸出音量。

tsdk_open_video_preview

打開(kāi)本地預(yù)覽窗口。

tsdk_close_video_preview

關(guān)閉本地預(yù)覽窗口。

媒體

接口名稱

接口描述

tsdk_start_play_media

開(kāi)始播放音頻文件。

tsdk_stop_play_media

停止播放音頻文件。

tsdk_start_call

接口描述

發(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;
 

tsdk_end_call

接口描述

結(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;
 

tsdk_accept_call

接口描述

被叫方收到呼叫請(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;
 

tsdk_send_dtmf

接口描述

一些業(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)

  • 處于通話中才可以發(fā)送二次撥號(hào)信息。
  • TSDK不提供DTMF按鍵音功能。為了實(shí)現(xiàn)更友好的最終用戶體驗(yàn),UI應(yīng)同步調(diào)用SDK提供的媒體播放接口或系統(tǒng)提供的播放接口,實(shí)現(xiàn)播放DTMF按鍵音。

方法定義

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

TSDK_E_DTMF_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;
 

tsdk_hold_call

接口描述

保持通話。

注意事項(xiàng)

  • 處于通話中才可以調(diào)用該接口。
  • 視頻通話被保持時(shí),視頻將會(huì)自動(dòng)被關(guān)閉,恢復(fù)時(shí),視頻將會(huì)自動(dòng)打開(kāi)。

方法定義

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;
 

tsdk_unhold_call

接口描述

取消保持通話(恢復(fù)通話)。

注意事項(xiàng)

  • 處于通話保持狀態(tài)才可以調(diào)用該接口。
  • 因通話雙方均可以在本端處于通話態(tài)發(fā)起保持操作,即通話可能會(huì)處于雙向保持態(tài),在任一保持方發(fā)起恢復(fù)通話時(shí),僅能恢復(fù)本端通話狀態(tài),不會(huì)恢復(fù)對(duì)端的通話狀態(tài)。
  • 視頻通話雙向保持狀態(tài)中,任一方先恢復(fù)通話,不會(huì)自動(dòng)打開(kāi)視頻;雙方均恢復(fù)通話后,視頻才會(huì)打開(kāi)。

方法定義

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;
 

tsdk_set_video_window

接口描述

用戶建立視頻呼叫時(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;
 

tsdk_set_video_orient

接口描述

設(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

TSDK_S_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;
 

tsdk_add_video

接口描述

發(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;
 

tsdk_del_video

接口描述

發(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;
 

tsdk_reply_add_video

接口描述

對(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)求。

  • true:同意
  • false:拒絕

返回值

類型

描述

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;
 

tsdk_video_control

接口描述

該接口用于控制暫停或繼續(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

TSDK_S_VIDEO_CTRL_INFO*

視頻控制參數(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;
 

tsdk_set_video_render

接口描述

該接口用于設(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_S_VIDEO_RENDER_INFO*

視頻顯示窗口屬性。

返回值

類型

描述

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;
 

tsdk_set_capture_rotation

接口描述

該接口用于設(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;  
 

tsdk_set_display_rotation

接口描述

該接口用于設(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

TSDK_E_VIDEO_WND_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;
 

tsdk_set_camera_picture

接口描述

該接口用于設(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;
 

tsdk_set_svc_video_window

接口描述

設(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
 

tsdk_get_call_statistic_info

接口描述

獲取呼叫統(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

TSDK_S_CALL_STATISTIC_INFO*

呼叫統(tǒng)計(jì)信息。

返回值

類型

描述

TSDK_RESULT

成功則返回TSDK_SUCCESS,失敗則返回相應(yīng)錯(cuò)誤碼。

代碼示例

None
 

tsdk_mute_mic

接口描述

設(shè)置(或取消)麥克風(fēng)靜音,即關(guān)閉或打開(kāi)麥克風(fēng),停止或重啟音頻輸入。

注意事項(xiàng)

  • 前提條件:通話已建立,主被叫正在通話中。
  • 設(shè)置和取消閉音麥克風(fēng)針對(duì)指定通話,不是針對(duì)設(shè)備。
  • 設(shè)置和取消閉音麥克風(fēng)操作本地媒體,通話對(duì)端不感知。

方法定義

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

是否靜音。

  • true:靜音(麥克風(fēng)關(guān)閉)
  • false:非靜音(麥克風(fēng)打開(kāi))

返回值

類型

描述

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;
 

tsdk_get_devices

接口描述

獲取音頻視頻設(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

TSDK_E_DEVICE_TYPE

設(shè)備類型。

  • TSDK_E_DEVICE_MIC:獲取麥克風(fēng)列表
  • TSDK_E_DEVICE_SPEAKER:獲取揚(yáng)聲器列表
  • TSDK_E_DEVICE_CAMERA:獲取攝像頭列表

[in/out] num

TSDK_UINT32 *

輸入時(shí)表示上層分配的設(shè)備個(gè)數(shù),輸出時(shí)表示獲取到得設(shè)備的個(gè)數(shù)。

[out] device_info

TSDK_S_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;
 

tsdk_set_mic_index

接口描述

設(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;
 

tsdk_get_mic_index

接口描述

獲取當(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;
 

tsdk_set_speak_index

接口描述

設(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;
 

tsdk_get_speak_index

接口描述

獲取當(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;
 

tsdk_set_video_index

接口描述

設(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;
 

tsdk_get_video_index

接口描述

獲取當(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;
 

tsdk_set_speak_volume

接口描述

設(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;
 

tsdk_get_speak_volume

接口描述

獲取輸出音量大小。

注意事項(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;
 

tsdk_open_video_preview

接口描述

打開(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;
 

tsdk_close_video_preview

接口描述

關(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;
 

tsdk_start_play_media

接口描述

播放本地音頻文件,包括振鈴音、回鈴音、撥號(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;
 

tsdk_stop_play_media

接口描述

停止音頻文件播放。

注意事項(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;