跳转至

服务器录制和本地录制

最近更新时间:2021-02-05 16:29:05

startServerRecord

简要描述 - 开启服务器录制

我们提供了课程录制功能,可以完全的还原上课过程。调用此接口可以,录制课程。 - 开启录制后,回调:录制状态的回调 -(void)onRoomServerRecordStateChange(TK_RECORD_STATE state, String userId, String mp4RecordId, String commonRecordId);

接口名称

1
- (int)startServerRecord(Map<String, Object> recordParams, long expiresabs, long expires);
`

参数

参数名 必填 类型 说明
recordParams Map 录制参数,包含standard和mix两种录制模式,详细见方法示例
expiresabs long 录制时长,0:表示不限时长,直到调用停止录制
expires long 结束录制时的时间戳,0:表示不设置结束时间

方法示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
//---------------standard模式---------//
//standard模式标准常规录制,为默认模式
Map<String, Object> recordParams = new HashMap<String, Object>();
recordParams.put("recordMode",SERVER_RECORD_MODE.STANDARD);
TKRoomManager.getInstance().startServerRecord(recordParams,0,0);


//---------------  mix模式 ------------//
//mix模式自定义混流录制,需要传入以下参数
Map<String, Object> recordParams = new HashMap<String, Object>();
recordParams.put("recordMode",SERVER_RECORD_MODE.MIX);
//mix参数
Map<String, Object> mixStreamParams = new HashMap<String, Object>();
// 必选,混流布局模板ID,0等分布局; 1画中画布局; 2自定义布局
mixStreamParams.put("template",0);
// 颜色值
mixStreamParams.put("backgroundColor","#0d69fb");
//自定义参数
Map<String, Object> customConfigParams = new HashMap<String, Object>();
// 开始混流后,房间中没有以下指定用户的流,30秒后停止混流
customConfigParams.put("noStreamTimeout_s",30);
// 为兼容,若指定,则优先级高于外层背景色配置
customConfigParams.put("backgroundColor","#0d69fb");
//自定义样式集合
List<Map<String,Object>> videoLayoutList = new ArrayList<>();
//某个用户的样式
Map<String,Object> videoLayoutUser = new HashMap<>();
//// 用户 ID,若为桌面共享的视频,此 ID 为&#039;用户ID:screen&#039;
videoLayoutUser.put("uid","xxx");
// 窗口x坐标,取值为相对于整个视频宽度百分比
videoLayoutUser.put("x_coord",0.81);
 // 窗口y坐标,取值为相对于整个视频高度百分比
videoLayoutUser.put("y_coord",0.1);
// 窗口宽,取值为相对于整个视频宽度百分比
videoLayoutUser.put("width",0.18);
// 窗口高,取值为相对于整个视频高度百分比
videoLayoutUser.put("height",0.24);
// 窗口透明度
videoLayoutUser.put("alpha",1);
// 缺省值 true;true:显示视频窗口,false:不显示视频窗口
videoLayoutUser.put("play_video",true);
// 缺省值 true;true:播放音频,false:不播放音频
videoLayoutUser.put("play_audio",true);
videoLayoutList.add(videoLayoutUser);
customConfigParams.put("videoLayout",videoLayoutList);
mixStreamParams.put("customConfig",customConfigParams);
recordParams.put("mixStreamParams",mixStreamParams);
TKRoomManager.getInstance().startServerRecord(recordParams,0,0);
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

stopServerRecord

简要描述 - 停止服务器录制

接口名称
- - (int)stopServerRecord();

方法示例

1
   TKRoomManager.getInstance().stopServerRecord();
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

pauseServerRecord

简要描述 - 暂停服务器录制

接口名称
- - (int)pauseServerRecord();

方法示例

1
   TKRoomManager.getInstance().pauseServerRecord();
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

resumeServerRecord

简要描述 - 恢复服务器录制

接口名称
- - (int)resumeServerRecord();

方法示例

1
   TKRoomManager.getInstance().resumeServerRecord();
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

startAudioRecording

简要描述 - 开启本地音频录制

会录制房间所有的声音数据,然后保存到沙盒中。

接口名称
- - (int)startAudioRecording(String filePath);

参数

参数名 必填 类型 说明
filePath String 录制文件保存的路径,必须是有效的沙盒文件路径,如xxx/Library/Caches/audioRecord.mp3。
注: 1、保存音频文件为MP3格式;
2、如果两次传入的路径相同,录制数据会覆盖;
3、文件路径必须是有效路径,否则录制失败。例如:路径不存在或者不是文件路径(而是文件夹路径),则录制失败。

方法示例

1
     TKRoomManagerImpl.getInstance().startAudioRecording(filePath);
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

pauseAudioRecording

简要描述 - 是否暂停本地音频录制

接口名称
- - (int)pauseAudioRecording(boolean isPause);

参数

参数名 必填 类型 说明
isPause boolean 是否暂停录制

方法示例

1
   TKRoomManager.getInstance().pauseAudioRecording(false);
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

stopAudioRecord

简要描述 - 停止本地音频录制

接口名称
- - (int)stopAudioRecording();

方法示例

1
    TKRoomManagerImpl.getInstance().stopAudioRecording();
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

© 2016-2023 北京拓课网络科技有限公司 版权所有  京ICP备17018423号-1 京公网安备11010502043461号