主頁(yè) > 服務(wù)與支持 > 開發(fā)平臺(tái) > 客戶端SDK參考 > Android Native SDK > 接口參考 音視頻呼叫
更新時(shí)間:2019-12-10
接口名稱 |
接口描述 |
---|---|
獲取呼叫對(duì)象。 |
|
開始呼叫。 |
|
播放本地音頻文件。 |
|
停止鈴音播放。 |
|
獲取設(shè)備列表。 |
|
設(shè)置視頻設(shè)備。 |
|
獲取視頻設(shè)備。 |
|
設(shè)置輸出設(shè)備音量。 |
|
獲取輸出音量。 |
|
打開本地預(yù)覽。 |
|
關(guān)閉本地預(yù)覽。 |
|
設(shè)置移動(dòng)音頻路由。 |
|
獲取移動(dòng)音頻路由。 |
注意事項(xiàng)
因代碼中多處使用到TsdkCall對(duì)象,可定義一個(gè)全局變量,方便調(diào)用。
TsdkCall tsdkCall = TsdkManager.getInstance().getCallManager().getCallByCallId(callId); |
參數(shù)描述
變量名 |
類型 |
描述 |
Getter |
Setter |
---|---|---|---|---|
callInfo |
呼叫信息。 |
Y |
Y |
接口名稱 |
接口描述 |
---|---|
構(gòu)造方法 |
|
接聽呼叫 |
|
結(jié)束呼叫 |
|
二次撥號(hào) |
|
設(shè)置視頻窗口 |
|
增加視頻 |
|
刪除視頻 |
|
接受音頻轉(zhuǎn)視頻 |
|
視頻控制 |
|
設(shè)置視頻方向 |
|
設(shè)置(或取消)麥克風(fēng)靜音 |
|
保持通話 |
|
取消保持通話 |
|
呼叫偏轉(zhuǎn) |
|
呼叫盲轉(zhuǎn) |
|
設(shè)置視頻顯示窗口屬性 |
|
設(shè)置攝像頭采集方向 |
|
設(shè)置窗口顯示方向 |
|
設(shè)置攝像頭圖片 |
|
設(shè)置SVC會(huì)議視頻窗口信息 |
|
獲取呼叫統(tǒng)計(jì)信息 |
接口描述
通過(guò)呼叫ID得到呼叫對(duì)象。
注意事項(xiàng)
無(wú)。
接口所屬類
TsdkCallManager
方法定義
public TsdkCall getCallByCallId(long callId) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
callId |
long |
呼叫ID。 |
返回值
類型 |
描述 |
---|---|
TsdkCall |
返回呼叫對(duì)象。 |
代碼示例
//java code TsdkCall call = TsdkManager.getInstance().getCallManager().getCallByCallId(callID); |
接口描述
發(fā)起一路普通VOIP呼叫。
注意事項(xiàng)
呼叫ID作為一路通話的唯一標(biāo)示,UI應(yīng)保存并管理,以用于后繼的呼叫相關(guān)操作。
接口所屬類
TsdkCallManager
方法定義
public synchronized TsdkCall startCall(String calleeNumber, boolean isVideo) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
calleeNumber |
String |
呼叫號(hào)碼。最大有效長(zhǎng)度255。 |
isVideo |
boolean |
是否是視頻。 |
返回值
類型 |
描述 |
---|---|
TsdkCall |
返回呼叫對(duì)象 |
使用示例
// Java code TsdkCall call = TsdkManager.getInstance().getCallManager().startCall(toNumber, isVideoCall); |
接口描述
播放本地音頻文件(振鈴音、回鈴音、撥號(hào)(提示)音、DTMF音、忙碌提示音和本地按健音等)。
注意事項(xiàng)
WAV文件,目前支持PCMA、PCMU、G.729格式或采樣精度為8或16位、采樣率8k~48K的PCM數(shù)據(jù),支持雙聲道。
接口所屬類
TsdkCallManager
方法定義
public int startPlayMedia(int loops, String playFile) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
loops |
int |
循環(huán)次數(shù)(0表示循環(huán)播放)。 |
playFile |
String |
待播放的音頻文件(目前支持wav格式)。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回播放句柄。失敗返回-1。 |
代碼示例
//java code ringBackToneHandle = TsdkManager.getInstance().getCallManager().startPlayMedia(0, ringingFile); |
接口描述
停止鈴音播放。
注意事項(xiàng)
無(wú)。
接口所屬類
TsdkCallManager
方法定義
public int stopPlayMedia(int handle) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
handle |
int |
播放句柄。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS。失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code result = TsdkManager.getInstance().getCallManager().stopPlayMedia(ringBackToneHandle); |
接口描述
獲取音頻視頻設(shè)備列表。
注意事項(xiàng)
應(yīng)用程序在任何階段均可以獲取當(dāng)前可用的音視頻設(shè)備信息,為更方便地進(jìn)行后繼具體設(shè)備管理,建議應(yīng)用程序在初始化階段和系統(tǒng)檢測(cè)到設(shè)備變化時(shí),獲取設(shè)備信息并保存維護(hù)。
接口所屬類
TsdkCallManager
方法定義
public List<TsdkDeviceInfo> getDevices(TsdkDeviceType deviceType) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
deviceType |
設(shè)備類型。 |
返回值
類型 |
描述 |
---|---|
List<TsdkDeviceInfo> |
成功返回音頻視頻設(shè)備列表。失敗返回null。 |
代碼示例
//Java code cameraList = TsdkManager.getInstance().getCallManager().getDevices(TsdkDeviceType.TSDK_E_DEVICE_CAMERA); |
注意事項(xiàng)
設(shè)備序號(hào)一般在系統(tǒng)初始化后通過(guò)getDevices()獲取。
接口所屬類
TsdkCallManager
方法定義
1 |
public int setVideoIndex(int index) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
index |
int |
視頻設(shè)備序號(hào)。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
1 |
//java code
|
注意事項(xiàng)
用于接口測(cè)試或產(chǎn)品調(diào)試,實(shí)際產(chǎn)品業(yè)務(wù)場(chǎng)景中無(wú)需調(diào)用。
接口所屬類
TsdkCallManager
方法定義
1 |
public int getVideoIndex() |
參數(shù)描述
無(wú)。
返回值
類型 |
描述 |
---|---|
int |
成功返回設(shè)備序號(hào),失敗返回-1。 |
代碼示例
1 |
//java code
|
接口描述
設(shè)置當(dāng)前輸出設(shè)備音量大小。
注意事項(xiàng)
無(wú)。
接口所屬類
TsdkCallManager
方法定義
public int setSpeakVolume(int volume) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
volume |
int |
音量大小,取值范圍[0, 100] |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//java code int setMediaSpeakVolumeResult = TsdkManager.getInstance().getCallManager().setSpeakVolume( 60); |
接口描述
獲取輸出音量大小。
注意事項(xiàng)
無(wú)。
接口所屬類
TsdkCallManager
方法定義
public int getSpeakVolume() |
參數(shù)描述
無(wú)。
返回值
類型 |
描述 |
---|---|
int |
成功返回輸出音量大小,失敗返回-1。 |
代碼示例
//Java code int ret = TsdkManager.getInstance().getCallManager().getSpeakVolume(); |
接口描述
打開本地預(yù)覽窗口。
注意事項(xiàng)
該接口一般用于設(shè)備設(shè)置時(shí),檢測(cè)本地?cái)z像頭工作狀態(tài)是否正常。
接口所屬類
TsdkCallManager
方法定義
public int openVideoPreview(int index, int handle) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
index |
int |
攝相頭索引。 |
handle |
int |
窗口句柄。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code
|
接口描述
關(guān)閉并刪除本地預(yù)覽窗口。
注意事項(xiàng)
無(wú)。
接口所屬類
TsdkCallManager
方法定義
public int closeVideoPreview() |
參數(shù)描述
無(wú)。
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//java code
|
接口描述
設(shè)置移動(dòng)音頻路由設(shè)備。
注意事項(xiàng)
用于移動(dòng)設(shè)備。
接口所屬類
TsdkCallManager
方法定義
public int setMobileAudioRoute(TsdkMobileAuidoRoute route) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
route |
移動(dòng)音頻路由。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//java code private boolean setAudioRoute(TsdkMobileAuidoRoute audioSwitch) { return TsdkManager.getInstance().getCallManager().setMobileAudioRoute(audioSwitch) == 0; } |
接口描述
獲取移動(dòng)音頻路由設(shè)備。
注意事項(xiàng)
用于移動(dòng)設(shè)備。
接口所屬類
TsdkCallManager
方法定義
public TsdkMobileAuidoRoute getMobileAudioRoute() |
參數(shù)描述
無(wú)。
返回值
類型 |
描述 |
---|---|
TsdkMobileAuidoRoute |
成功返回移動(dòng)音頻路由,失敗返回為null。 |
代碼示例
//java code public int getCurrentAudioRoute() { return TsdkManager.getInstance().getCallManager().getMobileAudioRoute().getIndex(); } |
接口描述
構(gòu)造方法。
注意事項(xiàng)
無(wú)。
方法定義
public TsdkCall(TsdkCallInfo callInfo) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
callInfo |
呼叫信息。 |
返回值
無(wú)。
代碼示例
//Java code
|
接口描述
被叫方收到呼叫請(qǐng)求時(shí),調(diào)用該接口接聽呼叫。
注意事項(xiàng)
若被叫方需要拒絕接聽呼叫,則需要調(diào)用endCall接口。
方法定義
public int answerCall(boolean isVideo) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
isVideo |
boolean |
是否接聽視頻呼叫。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
//Java code int result = tsdkCall.answerCall(iVideoCall==1? true:false); |
接口描述
結(jié)束和其他用戶的通話或者來(lái)電。通話雙方均可以主動(dòng)結(jié)束呼叫。
注意事項(xiàng)
無(wú)。
方法定義
public int endCall() |
參數(shù)描述
無(wú)。
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code int result = tsdkCall.endCall(); |
接口描述
一些業(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)
方法定義
public int sendDtmf(TsdkDtmfTone tone) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
tone |
DTMF鍵值。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code public boolean reDial(int code) { TsdkDtmfTone tsdkDtmfTone = TsdkDtmfTone.enumOf(code); LogUtil.d(TAG, "Dtmf Tone :" + tsdkDtmfTone.getIndex()); int result = tsdkCall.sendDtmf(tsdkDtmfTone); if (result != 0) { LogUtil.e(TAG, "sendDTMF return failed, result = " + result); return false; } return true; } |
接口描述
注意事項(xiàng)
呼叫存在時(shí),callid填寫對(duì)應(yīng)的有效值;呼叫不存在(未建立,主叫呼出時(shí)),callid填寫非法值。
方法定義
public int setVideoWindow(List<TsdkVideoWndInfo> list) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
list |
List<TsdkVideoWndInfo> |
視頻窗口信息列表。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code // 設(shè)置本地視頻窗口 TsdkVideoWndInfo localWndInfo = new TsdkVideoWndInfo(); localWndInfo.setVideoWndType(TsdkVideoWndType.TSDK_E_VIDEO_WND_LOCAL); localWndInfo.setRender(ViERenderer.getIndexOfSurface(localVideoView)); localWndInfo.setDisplayMode(TsdkVideoWndDisplayMode.TSDK_E_VIDEO_WND_DISPLAY_FULL); //設(shè)置遠(yuǎn)端視頻窗口 TsdkVideoWndInfo remoteWndInfo = new TsdkVideoWndInfo(); remoteWndInfo.setVideoWndType(TsdkVideoWndType.TSDK_E_VIDEO_WND_REMOTE); remoteWndInfo.setRender(ViERenderer.getIndexOfSurface(remoteVideoView)); remoteWndInfo.setDisplayMode(TsdkVideoWndDisplayMode.TSDK_E_VIDEO_WND_DISPLAY_CUT); List<TsdkVideoWndInfo> list = new ArrayList<>(); list.add(localWndInfo); list.add(remoteWndInfo); TsdkManager.getInstance().getCallManager().getCallByCallId(callId).setVideoWindow(list); |
接口描述
發(fā)起音頻轉(zhuǎn)視頻呼叫請(qǐng)求。
注意事項(xiàng)
無(wú)。
方法定義
public int addVideo() |
參數(shù)描述
無(wú)。
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code public boolean addVideo() { initVideoWindow(); int result = tsdkCall.addVideo(); if (result != 0) { LogUtil.e(TAG, "addVideo return failed, result = " + result); return false; } setCallStatus(CallConstant.CallStatus.VIDEO_CALLING); return true; } |
接口描述
發(fā)起視頻轉(zhuǎn)音頻呼叫請(qǐng)求。
注意事項(xiàng)
前提條件:視頻通話已建立,主被叫正在通話中。
方法定義
public int delVideo() |
參數(shù)描述
無(wú)。
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code public boolean delVideo() { int result = tsdkCall.delVideo(); if (result != 0) { LogUtil.e(TAG, "delVideo return failed, result = " + result); return false; } setCallStatus(CallConstant.CallStatus.AUDIO_CALLING); return true; } |
接口描述
對(duì)方請(qǐng)求音頻轉(zhuǎn)視頻呼叫時(shí),本方選擇同意或者拒絕。
注意事項(xiàng)
無(wú)。
方法定義
public int replyAddVideo(boolean isAccept) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
isAccept |
boolean |
是否同意。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code public boolean acceptAddVideo() { initVideoWindow(); int result = tsdkCall.replyAddVideo(true); if (result != 0) { LogUtil.e(TAG, "replyAddVideo(accept) return failed, result = " + result); return false; } return true; } |
接口描述
視頻控制。
注意事項(xiàng)
無(wú)。
方法定義
public int videoControl(TsdkVideoCtrlInfo videoCtrlInfo) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
videoCtrlInfo |
視頻控制參數(shù)。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code module = 0x02 | 0x04; operation = 0x04; TsdkVideoCtrlInfo tsdkVideoCtrlInfo = new TsdkVideoCtrlInfo(0, operation, module); result = call.videoControl(tsdkVideoCtrlInfo); |
接口描述
設(shè)置視頻方向。
注意事項(xiàng)
用于移動(dòng)設(shè)備。
方法定義
public int setVideoOrient(int index, TsdkVideoOrient orient) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
index |
int |
設(shè)備(攝像頭)索引。 |
orient |
視頻方向(橫豎屏)參數(shù)。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code if (cameraIndex == CallConstant.FRONT_CAMERA) { portrait = 3; landscape = 0; seascape = 2; } else if (cameraIndex == CallConstant.BACK_CAMERA) { portrait = 1; landscape = 0; seascape = 2; } /** * 橫豎屏信息stOrient 設(shè)置標(biāo)志位 * @param int callId 0表示全局設(shè)置,不為0表示 會(huì)話中設(shè)置 * @param int index 攝像頭index * @param int orient 視頻橫豎屏情況 1:豎屏;2:橫屏;3:反向橫屏 * @param int portrait 豎屏視頻捕獲(逆時(shí)針旋轉(zhuǎn))角度 0:0度;1:90度;2:180度;3:270度; * @param int landscape 橫屏視頻捕獲(逆時(shí)針旋轉(zhuǎn))角度 0:0度;1:90度;2:180度;3:270度; * @param int seascape 反向橫屏視頻捕獲(逆時(shí)針旋轉(zhuǎn))角度 0:0度;1:90度;2:180度;3:270度; * @return int result 視頻角度 */ TsdkVideoOrient videoOrient = new TsdkVideoOrient(portrait, seascape, landscape,orient); int result = callManager.getCallByCallId(callId).setVideoOrient(cameraIndex, videoOrient); |
接口描述
設(shè)置(或取消)麥克風(fēng)靜音。
注意事項(xiàng)
方法定義
public int muteMic(boolean isMute) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
isMute |
boolean |
是否靜音。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code public boolean muteMic(boolean mute) { int result = tsdkCall.muteMic(mute); if (result != 0) { LogUtil.e(TAG, "mediaMuteMic return failed, result = " + result); return false; } return true; } |
接口描述
保持通話。
注意事項(xiàng)
方法定義
public int holdCall() |
參數(shù)描述
無(wú)。
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code public boolean holdCall() { int result = tsdkCall.holdCall(); if (result != 0) { LogUtil.e(TAG, "holdCall return failed, result = " + result); return false; } return true; } |
接口描述
取消保持通話(恢復(fù)通話)。
注意事項(xiàng)
方法定義
public int unholdCall() |
參數(shù)描述
無(wú)。
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code public boolean unHoldCall() { int result = tsdkCall.unholdCall(); if (result != 0) { LogUtil.e(TAG, "unholdCall return failed, result = " + result); return false; } return true; } |
接口描述
注意事項(xiàng)
前提條件:收到來(lái)電,本地正在振鈴。
方法定義
public int divertCall(String divertNumber) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
divertNumber |
String |
偏轉(zhuǎn)目的號(hào)碼。最大長(zhǎng)度32。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code public boolean divertCall(String divertNumber) { int result = tsdkCall.divertCall(divertNumber); if (result != 0) { LogUtil.e(TAG, "divertCall return failed, result = " + result); return false; } return true; } |
接口描述
發(fā)起呼叫盲轉(zhuǎn)請(qǐng)求。
注意事項(xiàng)
方法定義
public int blindTransfer(String transtoNumber) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
transtoNumber |
String |
盲轉(zhuǎn)目的號(hào)碼。最大長(zhǎng)度32。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code public boolean blindTransfer(String transferNumber) { int result = tsdkCall.blindTransfer(transferNumber); if (result != 0) { LogUtil.e(TAG, "blindTransfer return failed, result = " + result); return false; } return true; } |
接口描述
設(shè)置視頻顯示窗口屬性。
注意事項(xiàng)
無(wú)。
方法定義
public int setVideoRender(TsdkVideoRenderInfo videoRender) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
videoRender |
視頻顯示窗口屬性。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code // 窗口鏡像模式 0:不做鏡像(默認(rèn)值) 1:上下鏡像(目前未支持) 2:左右鏡像 // 本地視頻前置攝像頭做左右鏡像,所以設(shè)置mirror type為 2 TsdkVideoRenderInfo videoRenderInfo = new TsdkVideoRenderInfo(); videoRenderInfo.setRenderType(TsdkVideoWndType.TSDK_E_VIDEO_WND_LOCAL); videoRenderInfo.setMirrorType(TsdkVideoWndMirrorType.TSDK_E_VIDEO_WND_MIRROR_HORIZONTAL); videoRenderInfo.setDisplayType(TsdkVideoWndDisplayMode.TSDK_E_VIDEO_WND_DISPLAY_CUT); TsdkManager.getInstance().getCallManager().getCallByCallId(currentCallId).setVideoRender(videoRenderInfo); |
接口描述
設(shè)置攝像頭采集方向。
注意事項(xiàng)
無(wú)。
方法定義
public int setCaptureRotation(int cameraIndex, int captureRotation) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
cameraIndex |
int |
采集設(shè)備(攝像頭)索引。 |
captureRotation |
int |
攝像頭采集角度 {0,1,2,3} 僅對(duì)移動(dòng)平臺(tái)有效。默認(rèn)為0。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code result = call.setCaptureRotation(CallConstant.FRONT_CAMERA, 0); |
接口描述
設(shè)置窗口顯示方向。
注意事項(xiàng)
無(wú)。
方法定義
public int setDisplayRotation(TsdkVideoWndType windowType, int displayRotation) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
windowType |
視頻窗口類型。 |
|
displayRotation |
int |
窗口顯示角度 {0,1,2,3} 僅對(duì)移動(dòng)平臺(tái)有效。默認(rèn)為0。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code public boolean setDisplayRotation(TsdkVideoWndType type, int rotation) { TsdkManager.getInstance().getCallManager().getCallByCallId(currentCallId).setDisplayRotation(type, rotation); return true; } |
接口描述
設(shè)置攝像頭圖片。
注意事項(xiàng)
無(wú)。
方法定義
public int setCameraPicture(String fileName) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
fileName |
String |
圖片路徑,不超過(guò)1920*1200的BMP格式圖片。 |
返回值
類型 |
描述 |
---|---|
int |
成功返回TSDK_SUCCESS,失敗返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code //采用發(fā)送默認(rèn)圖版本方式,替代關(guān)閉攝相頭動(dòng)作 String picturePath = Environment.getExternalStorageDirectory() + File.separator + BMP_FILE; result = call.setCameraPicture(picturePath); |
接口描述
設(shè)置SVC會(huì)議視頻窗口信息。
注意事項(xiàng)
無(wú)。
方法定義
public int setSvcVideoWindow(List<TsdkSvcVideoWndInfo> list) |
參數(shù)描述
參數(shù)名 |
類型 |
描述 |
---|---|---|
list |
List<TsdkSvcVideoWndInfo> |
SVC視頻窗口信息列表。 |
返回值
類型 |
描述 |
---|---|
int |
成功則返回TSDK_SUCCESS,失敗則返回相應(yīng)錯(cuò)誤碼。 |
代碼示例
//Java code public void initSvcVideoWindow(final long callId, List<Long> svcLabel) { LogUtil.i(TAG, "initVideoWindow() enter" + callId); currentSvcLabel = svcLabel; handler.post(new Runnable() { @Override public void run() { if (isInitializedVideoWindows == false) { createVideoRenderer(true); } else { LogUtil.i(TAG, "p2p to conference."); createVideoRenderer(true); } isInitializedVideoWindows = true; setCurrentCallId(callId); //設(shè)置視頻窗口方向參數(shù) setVideoOrient(callId, CallConstant.FRONT_CAMERA); TsdkCall tsdkCall = callManager.getCallByCallId(callId); if (tsdkCall == null) { return; } // 設(shè)置本地視頻窗口 TsdkVideoWndInfo localWndInfo = new TsdkVideoWndInfo(); localWndInfo.setVideoWndType(TsdkVideoWndType.TSDK_E_VIDEO_WND_LOCAL); localWndInfo.setRender(ViERenderer.getIndexOfSurface(localVideoView)); localWndInfo.setDisplayMode(TsdkVideoWndDisplayMode.TSDK_E_VIDEO_WND_DISPLAY_CUT); List<TsdkVideoWndInfo> list = new ArrayList<>(); list.add(localWndInfo); tsdkCall.setVideoWindow(list); //設(shè)置SVC遠(yuǎn)端視頻窗口 TsdkSvcVideoWndInfo bigSvcVideoWndInfo = new TsdkSvcVideoWndInfo(); bigSvcVideoWndInfo.setRender(ViERenderer.getIndexOfSurface(remoteBigVideoView)); bigSvcVideoWndInfo.setLabel(currentSvcLabel.get(0)); bigSvcVideoWndInfo.setWidth(960); // (960*540) usBandWidth[1300] (320*180) usBandWidth[195] (640*360) usBandWidth[620] bigSvcVideoWndInfo.setHeight(540); TsdkSvcVideoWndInfo smallSvcVideoWndInfo_01 = new TsdkSvcVideoWndInfo(); smallSvcVideoWndInfo_01.setRender(ViERenderer.getIndexOfSurface(remoteSmallVideoView_01)); smallSvcVideoWndInfo_01.setLabel(currentSvcLabel.get(1)); smallSvcVideoWndInfo_01.setWidth(160); //320 smallSvcVideoWndInfo_01.setHeight(90);//180 TsdkSvcVideoWndInfo smallSvcVideoWndInfo_02 = new TsdkSvcVideoWndInfo(); smallSvcVideoWndInfo_02.setRender(ViERenderer.getIndexOfSurface(remoteSmallVideoView_02)); smallSvcVideoWndInfo_02.setLabel(currentSvcLabel.get(2)); smallSvcVideoWndInfo_02.setWidth(160); //320 smallSvcVideoWndInfo_02.setHeight(90);//180 TsdkSvcVideoWndInfo smallSvcVideoWndInfo_03 = new TsdkSvcVideoWndInfo(); smallSvcVideoWndInfo_03.setRender(ViERenderer.getIndexOfSurface(remoteSmallVideoView_03)); smallSvcVideoWndInfo_03.setLabel(currentSvcLabel.get(3)); smallSvcVideoWndInfo_03.setWidth(160); //320 smallSvcVideoWndInfo_03.setHeight(90);//180 List<TsdkSvcVideoWndInfo> svcWndInfoList = new ArrayList<>(); svcWndInfoList.add(bigSvcVideoWndInfo); svcWndInfoList.add(smallSvcVideoWndInfo_01); svcWndInfoList.add(smallSvcVideoWndInfo_02); svcWndInfoList.add(smallSvcVideoWndInfo_03); tsdkCall.setSvcVideoWindow(svcWndInfoList); } }); } |
接口描述
獲取呼叫統(tǒng)計(jì)信息。
注意事項(xiàng)
無(wú)。
方法定義
public TsdkCallStatisticInfo getCallStatisticInfo() |
參數(shù)描述
無(wú)
返回值
類型 |
描述 |
---|---|
TsdkCallStatisticInfo |
成功返回呼叫統(tǒng)計(jì)信息,失敗返回null。 |
代碼示例
//Java code
|