### **開始錄制**
int startRecord(AnyChatRecordOpt recordOpt,AnyChatRecordEvent recordEvent)
#### 接口說明:
開始錄制,錄像可以錄制單方視頻流,也可以錄制多方視頻流。
#### 返回值:
錄制操作返回的狀態碼(0代表錄制成功 )
#### 接口參數簡介:
| 名稱 |類型 |說明 |是否必須 |
| --- | --- | --- | --- |
| recordOpt| AnyChatRecordOpt | 錄制配置類 | 是|
| recordEvent| AnyChatRecordEvent | 錄制結果回調事件 | 是|
AnyChatRecordOpt錄制配置類簡介:
| 名稱 |類型 |說明 |是否必須 |
| --- | --- | --- | --- |
| userID | int | 用戶id | 是 |
| recordLayoutOpt | AnyChatRecordLayoutOpt | 錄制畫面布局配置類 | 是 |
| width | int | 錄制畫面寬度(默認640) | 否 |
| height | int | 錄制畫面高度 (默認480) | 否 |
| mode | int | 錄制模式<br>BRAC_RECORD_LOCAL_MODE--本地錄制(默認)<br>BRAC_RECORD_SERVER_MODE --服務器端錄制 <br> BRAC_RECORD_STREAM_MODE --服務器端合成流錄制 <br>BRAC_RECORD_LOCAL_STREAM_MODE --本地合成流錄制 |否 |
| content | int | 錄制內容<br>BRAC_RECORD_DEFAULT_CONTENT--既錄音又錄像(默認) <br>BRAC_RECORD_AUDIO--只錄音 <br>BRAC_RECORD_VIDEO--只錄像 | 否 |
| fileType | int | 錄制文件類型<br>BRAC_RECORD_FILE_TYPE_MP4-- MP4(默認) <br> BRAC_RECORD_FILE_TYPE_WMV—WMV <br>BRAC_RECORD_FILE_TYPE_FLV-- FLV <br> BRAC_RECORD_FILE_TYPE_MP3-- MP3| 否|
| fileName | String | 錄制文件名 | 否 |
| category | String | 設置錄像文件保存目錄(針對服務器錄制有效) | 否 |
| localFilePath | String | 本地錄制文件存放目錄 | 否 |
| encryptionKey | String | 本地錄制文件加密的密鑰為空不加密,傳了密鑰普通加密 | 否 |
| recordClipMode| int | 裁剪模式<br>BRAC_RECORD_CLIPMODE_UNKNOW--不作裁剪 <br>BRAC_RECORD_CLIPMODE_AUT--以最大比例進行裁剪,然后再整體拉伸,畫面保持比例,但被裁剪畫面較大 <br> BRAC_RECORD_CLIPMODE_OVERLAP--重疊模式,只取最大有效部分,對邊緣進行裁剪 <br>BRAC_RECORD_CLIPMODE_SHRINK--縮小模式,縮小到合適的比例,不進行裁剪 <br>BRAC_RECORD_CLIPMODE_STRETCH--平鋪模式,不進行裁剪,但可能導致畫面不成比例 | 否 |
AnyChatRecordLayoutOpt 錄制畫面布局配置類簡介:
| 返回值 | 名稱 |說明 |備注 |
| --- | --- | --- | --- |
| recordlayout| int | 視頻布局,視頻流數量,即多少個視頻畫面| 是|
| layoutstyle| int | 三路流和四路流的視頻畫面布局風格:0-并列風格(默認) ,1-畫中畫風格,2-三畫面并列風格| 否
| streamlist | List | 錄制對象AnyChatRecordStreamOpt的list集合。<br>AnyChatRecordStreamOpt對象包含三個屬性:<br>1、userID(String)錄制對象ID<br>2、streamIndex(int):錄制對象的視頻流號,移動端默認為0;<br>3、recordIndex(int):錄制對象在錄制視頻上的位置 | 否 |
AnyChatRecordEvent回調簡介:
| 返回值 | 名稱 |說明 |備注 |
| --- | --- | --- | --- |
| void | onRecordStart | result(AnyChatResult): 操作狀態信息<br>JsonData(JSONObject):返回結果 | result.errCode: 0表示成功<br>其他表示錯誤代號.<br>result.msg: 錯誤描述.<br>JsonData.userId:用戶id<br>JsonData.status:錄像狀態,值為"prepare" "start"<br>JsonData.statuscode:錄像狀態,1為prepare 2為start|
| void | onRecordDone | result(AnyChatResult): 操作狀態信息<br>JsonData(JSONObject):返回結果 | result.errCode: 0表示成功<br>其他表示錯誤代號.<br>result.msg: 錯誤描述.<br>JsonData.filePath:錄像文件地址<br>JsonData.elapse:錄像文件時長<br>JsonData.startTime:錄像開始時間<br>JsonData.endTime:錄像結束時間<br>JsonData.filemd5:錄像md5|
示例代碼
public int startRecord() {
AnyChatRecordOpt recordOpt = new AnyChatRecordOpt();
recordOpt.setMode(AnyChatRecordMode.BRAC_RECORD_LOCAL_MODE);// 設置為本地錄制
if (null != flePath) {
recordOpt.setLocalFilePath(flePath + "/record");// 設置本地存儲路徑
}
recordOpt.setRecordClipMode(AnyChatRecordClipMode.BRAC_RECORD_CLIPMODE_AUTO);// 設置裁剪模式
recordOpt.setUserID(-1);
recordOpt.setContent(AnyChatRecordContent.BRAC_RECORD_DEFAULT_CONTENT);// 設置錄制音視頻
List<AnyChatRecordStreamOpt> streamlist = new ArrayList<AnyChatRecordStreamOpt>();
AnyChatRecordStreamOpt recordEntity = new AnyChatRecordStreamOpt();
recordEntity.setUserID(-1);
recordEntity.setStreamindex(0); //用戶的視頻流編號,用戶可能存在多個攝像頭
recordEntity.setRecordindex(0);//錄制畫面編號, 由數字從小到大向右排序
streamlist.add(recordEntity);
AnyChatRecordStreamOpt recordEntity_1 = new AnyChatRecordStreamOpt();
recordEntity_1.setUserID(dwTargetUserId);
recordEntity_1.setStreamindex(0);//用戶的視頻流編號,用戶可能存在多個攝像頭
recordEntity_1.setRecordindex(1);//錄制畫面編號, 由數字從小到大向右排序
streamlist.add(recordEntity_1);
recordOpt.setImagepath(picPath);
String fileName = "" + System.currentTimeMillis();
recordOpt.setFileName(fileName);
AnyChatRecordLayoutOpt anyChatRecordLayoutOpt = new AnyChatRecordLayoutOpt();
anyChatRecordLayoutOpt.setRecordlayout(2);
anyChatRecordLayoutOpt.setStreamlist(streamList);
recordOpt.setAnyChatRecordLayoutOPt(anyChatRecordLayoutOpt);
return AnyChatSDK.getInstance().startRecord(recordOpt, this);
}
- SDK介紹
- 工程準備
- 下載AnyChat Java SDK
- 導入SDK
- 開發流程
- 初始化SDK
- 初始化及自動登錄
- 退出及釋放連接
- 版本信息查詢
- 登錄方式說明
- 服務器連接斷開通知事件
- 會話保持注冊和銷毀事件
- 房間管理
- 注冊房間管理事件
- 注銷房間管理事件
- 進入房間
- 獲取房間中的用戶列表
- 房間內的文字交流
- 退出房間
- 音視頻操作
- 音視頻互動
- 本地麥克風管理
- 打開本地麥克風
- 關閉本地麥克風
- 本地攝像頭管理
- 打開本地攝像頭
- 關閉本地攝像頭
- 切換本地攝像頭
- 接收/終止對方音頻流
- 接收遠程音頻流
- 關閉遠程音頻流
- 接收/終止對方視頻流
- 接收遠程視頻流
- 關閉遠程視頻流
- 視頻呼叫
- 注冊視頻呼叫事件
- 客戶呼叫
- 客戶取消呼叫
- 接受視頻呼叫
- 拒絕接聽
- 掛斷通話
- 注銷視頻呼叫事件
- 錄制(錄音錄像)
- 開始錄制
- 在錄制文件中添加圖片水印
- 在錄制文件中添加文字水印
- 在錄像中插入圖片
- 結束錄制
- 視頻拍照
- 抓拍
- 智能排隊
- 初始化排隊模塊
- 營業廳操作
- 獲取營業廳列表
- 進入營業廳
- 席座服務狀態設置
- 離開營業廳
- 排隊操作
- 排隊
- 取消排隊
- 狀態查詢
- 查詢坐席狀態
- 查詢隊列排隊人數
- 查詢當前排隊時間
- 注冊智能排隊事件的監聽
- 注銷智能排隊事件的監聽
- 文件傳輸
- 初始化文件模塊
- 注冊文件接收通知事件
- 注銷文件接收通知事件
- 創建文件下載任務
- 創建文件傳輸任務
- 文件上傳到服務器
- 初始化文件上傳到服務器功能
- 創建上傳文件到服務器任務
- 透明通道
- 透明通道發送消息
- 注冊接收透明通道通知事件
- 注銷接收透明通道通知事件
- 錯誤碼