logo
当前页

混流录制


功能描述

云端录制支持如下两种录制模式:

  • 单流录制:分别录制房间内每条音视频流、白板,每条音视频流都会生成对应的音视频文件,所有白板会生成一个视频文件。
  • 混流录制:房间内所有音视频流、白板混合录制成一个音视频文件。

本文介绍如何通过使用云端录制 API 进行混流录制。

实现方法

在调用 StartRecord 方法时,将 RecordMode 参数设为 “2” 即可启用混流录制模式。

通过将 OutputFileFormat 参数设为 “mp4”、“flv” 或 “hls” 可以生成对应格式的视频文件。假设 OutputFileFormat 设为 “mp4” ,根据录制内容的不同,生成的文件如下:

录制内容参数设置录制生成文件
仅录制音频StreamType 设为 1生成一个 mp4 文件,mp4 文件内存储该房间所有 streamID 的音频数据。
仅录制视频StreamType 设为 2生成一个 mp4 文件,mp4 文件内存储该房间所有 streamID 和所有白板的视频数据。
录制音视频(合并)StreamType 设为 3生成一个 mp4 文件,mp4 文件内存储该房间所有 streamID 的音视频数据和所有白板的视频数据。
录制音视频(分离)StreamType 设为 4生成一个 mp4 文件和一个 aac 文件,mp4 文件内存储该房间所有 streamID 和所有白板的视频数据,aac 文件内存储该房间所有 streamID 的音频数据。

混流录制模式下,需要通过 MixOutputVideoConfig 参数设置输出视频的分辨率、帧率、码率等属性,建议参考下面的对照表进行设置。

注意
  • 分辨率并不是越高越好,建议不要超过原始视频流的分辨率,否则最终录制文件可能会变模糊。
  • 该分辨率为混流模式下视频画布的分辨率,其宽高比无需与原始视频流一致。输出的画面中用户画面的宽高比取决于视频画布的宽高比以及混流布局方式。
  • 对照表中的基准码率适用于通信场景。直播场景下通常需要较大码率来提升视频质量,直播码率为基准码率的两倍。
分辨率(宽 * 高)帧率 (fps)基准码率(bps,适用于通信)直播码率(bps,适用于直播)
160 * 1201565000130000
120 * 1201550000100000
320 * 18015140000280000
180 * 18015100000200000
240 * 18015120000240000
320 * 24015200000400000
240 * 24015140000280000
424 * 24015220000440000
640 * 36015400000800000
360 * 36015260000520000
640 * 360306000001200000
360 * 36030400000800000
480 * 36015320000640000
480 * 36030490000980000
640 * 480155000001000000
480 * 48015400000800000
640 * 480307500001500000
480 * 480306000001200000
848 * 480156100001220000
848 * 480309300001860000
640 * 48010400000800000
1280 * 7201511300002260000
1280 * 7203017100003420000
960 * 720159100001820000
960 * 7203013800002760000
1920 * 10801520800004160000
1920 * 10803031500006300000

请求示例

Content-typeapplication/json;charset=utf-8,StartRecord 请求包体内容如下:

Untitled
{
	"RoomId": "xxxx",
	"RecordInputParams": {
		"RecordMode": 2,
		"StreamType": 3,
		"MaxIdleTime": 60,
		"MixConfig": {
			"MixMode": 2,
			"MixOutputStreamId": "mix",
			"MixOutputVideoConfig": {
	                "Width": 1280, 
	                "Height": 720, 
	                "Fps": 15, 
	                "Bitrate": 1130000
	        }
		}
	},
	"RecordOutputParams": {
		"OutputFileFormat": "mp4",
		"OutputFolder": "record/"
	},
	"StorageParams": {
		"Vendor": 2,
		"Region": "oss-xxxx",
		"Bucket": "xxxx",
		"AccessKeyId": "xxxx",
		"AccessKeySecret": "xxxx"
	}
}
1
Copied!

常见问题

Previous

单流录制

Next

设置混流布局