本帖最后由 chenr 于 2018-9-18 18:14 编辑
AnyChat支持多路录像任务能力,即在BRAC_StreamRecordCtrlEx发起录像后,通过调用BRAC_SDKControl接口再发起新的本地录像任务,满足音视频多路录像任务的应用场景。
一、接口说明 1.1 新增录像接口 - var ANYCHAT_SDKCTRL_RECORD = 5; //新增控制码
- var jsonObj = {
- "taskguid":"B2078329-FDB9-2746-87B1-A44DF6720612",
- "flags": ANYCHAT_RECORD_FLAGS_VIDEO + ANYCHAT_RECORD_FLAGS_AUDIO,
- "userid":-1,
- "start":1,
- "userstr":{"filename":"localfile_180828"}
- };
- BRAC_SDKControl(ANYCHAT_SDKCTRL_RECORD,JSON.stringify(jsonObj));
复制代码参数说明: 1)新增加的SDK控制码 ANYCHAT_SDKCTRL_RECORD 2)录像参数为JSON字符串,各个key值说明如下 taskguid:录像任务的唯一标识,请自行产生唯一GUID传入,保证每个录像任务的唯一性 userid: 发起录像用户userid flags:录像标记位ANYCHAT_RECORD_FLAGS_XXX,如 ANYCHAT_RECORD_FLAGS_VIDEO 等 start:1 表示开始录像, 0 表示停止录像 userstr:自定义字符串,可设置录制文件名,也可为空
1.2 录像完成事件回调 - // 收到录像或拍照完成事件
- function OnAnyChatRecordSnapShotEx(dwUserId, lpFileName, dwElapse, dwFlags, dwParam, lpUserStr)
复制代码 回调说明:
客户端调用BRAC_SDKControl停止录制任务,会触发录像完成事件。
二、示例代码 - function sdkcontrol_record_start(){
- //BRAC_StreamRecordCtrl录像功能
- var dwFlags = ANYCHAT_RECORD_FLAGS_VIDEO + ANYCHAT_RECORD_FLAGS_AUDIO;
- BRAC_SetSDKOption(BRAC_SO_RECORD_TMPDIR,"d:\\record\\local");
- BRAC_StreamRecordCtrl(-1,1,dwFlags, 0);
-
- BRAC_SetSDKOption(BRAC_SO_RECORD_TMPDIR,"d:\\record\\SDKControl本地录制视频");
- var FILE_TYPE = 0; //录制为MP4格式
- BRAC_SetSDKOption(BRAC_SO_RECORD_FILETYPE, FILE_TYPE);
- var jsonObj = {
- "taskguid":"B2078329-FDB9-2746-87B1-A44DF6720612",
- "flags": ANYCHAT_RECORD_FLAGS_VIDEO + ANYCHAT_RECORD_FLAGS_AUDIO,
- "userid":-1,
- "start":1,
- "userstr":{"filename":"anychatvideo.mp4"}
- };
- //BRAC_SDKControl录像功能
- var sdk_ret = BRAC_SDKControl(ANYCHAT_SDKCTRL_RECORD,JSON.stringify(jsonObj));
- var jsonParse = JSON.parse(sdk_ret);
- if (jsonParse.errorcode != 0){
- console.log("录制失败"+"errorcode: "+jsonParse.errorcode);
- }
- }
复制代码- //录制视频-结束
- function sdkcontrol_record_stop(){
- var dwFlags = ANYCHAT_RECORD_FLAGS_VIDEO + ANYCHAT_RECORD_FLAGS_AUDIO;
- BRAC_StreamRecordCtrl(-1,0,dwFlags, 0);
-
- var jsonObj = {
- "taskguid":"B2078329-FDB9-2746-87B1-A44DF6720612",
- "flags": ANYCHAT_RECORD_FLAGS_VIDEO + ANYCHAT_RECORD_FLAGS_AUDIO,
- "userid":-1,
- "start":0,
- "userstr":{"filename":"anychatvideo.mp4"}
- };
-
- BRAC_SDKControl(ANYCHAT_SDKCTRL_RECORD,JSON.stringify(jsonObj));
- }
复制代码 |