Public 属性 | |
boolean | isAudioOnly |
boolean | isVideoOnly |
boolean | isMixingEnabled |
MIXED_AV_CODEC_TYPE | mixedVideoAudio |
String | mixResolution |
String | decryptionMode |
String | secret |
String | appliteDir |
String | recordFileRootDir |
String | cfgFilePath |
VIDEO_FORMAT_TYPE | decodeVideo |
AUDIO_FORMAT_TYPE | decodeAudio |
int | lowUdpPort |
int | highUdpPort |
int | idleLimitSec |
int | captureInterval |
int | audioIndicationInterval |
CHANNEL_PROFILE_TYPE | channelProfile |
REMOTE_VIDEO_STREAM_TYPE | streamType |
int | triggerMode |
int | proxyType |
String | proxyServer |
int | audioProfile |
String | defaultVideoBgPath |
String | defaultUserBgPath |
boolean | autoSubscribe |
boolean | enableCloudProxy |
String | subscribeVideoUids |
String | subscribeAudioUids |
boolean | enableIntraRequest |
boolean | enableH265Support |
录制的详细设置。
boolean io.agora.recording.common.RecordingConfig.isAudioOnly |
设置是否仅启用音频录制功能:
与 isVideoOnly 结合使用:
boolean io.agora.recording.common.RecordingConfig.isVideoOnly |
设置是否仅启用视频录制功能:
与 isAudioOnly 结合使用:
boolean io.agora.recording.common.RecordingConfig.isMixingEnabled |
设置是否启用合流模式:
MIXED_AV_CODEC_TYPE io.agora.recording.common.RecordingConfig.mixedVideoAudio |
合流模式下将一个音频录制文件和一个视频录制文件实时混合成一个既有音频也有视频的 MP4 文件。
该参数有六种模式,详见 MIXED_AV_CODEC_TYPE。
mixedVideoAudio
为 AV_CODEC_MIXED_TS_ONLY(6)
或 AV_CODEC_MIXED_TS_AND_MP4(7)
,以保证录制进程崩溃后录制文件的可用性。如果设置为 AV_CODEC_MIXED_TS_AND_MP4(7),录制会有一定程度的性能回退。 String io.agora.recording.common.RecordingConfig.mixResolution |
如果你启用了合流模式,可以通过该参数设置录制文件的视频属性,格式为:width,hight,fps,kbps,分别对应合流的宽、高、帧率和码率。默认设置为 360 x 640, 15 fps, 500 Kbps。
请参考视频属性对照表设置分辨率、帧率、码率。
String io.agora.recording.common.RecordingConfig.decryptionMode |
当整个频道进行加密时,录制 SDK 启用内置的解密功能。默认为 NULL。
目前支持以下几种解密方式:
String io.agora.recording.common.RecordingConfig.secret |
启用解密模式后,设置的解密密码。
String io.agora.recording.common.RecordingConfig.appliteDir |
必填,设置为 AgoraCoreServices 存放的目录。
SDK 包内 AgoraCoreServices 的默认路径为:Agora_Recording_SDK_for_Linux_FULL/bin/
String io.agora.recording.common.RecordingConfig.recordFileRootDir |
设置录制文件存放的根目录。默认值为 NULL。
设置该参数后,会按照录制日期自动生成子目录保存录制文件。
String io.agora.recording.common.RecordingConfig.cfgFilePath |
指定 JSON 配置文件的路径。默认为 NULL。示例:--cfgFilePath /home/guest/recording_dir/cfg.json
。 在该配置文件里,你可以设置以下参数:
Recording_Dir
: 字符串类型,存放录制文件的绝对路径。指定路径后,SDK 不会自动生成子目录。
示例:{"Recording_Dir": "/home/guest/recording_dir/"}
,表示录制文件存放的绝对路径为 /home/guest/recording_dir/
。
Chunk_Time_Span
: 字符串类型,设置直播场景中单流录制模式下录制文件切片的间隔时间,单位为秒,最小值为 10。
示例:{"Chunk_Time_Span": "15"}
,表示每隔 15 秒生成一个录制文件。
Secondary_Recorder
: 字符串类型,表示录制两种格式的音频文件,Secondary_Recorder
为增加的音频文件格式。
示例:{"Secondary_Recorder":"mp3"}
,表示生成 AAC 和 MP3 两种格式的音频文件。
Audio_Only_Record
: 字符串类型,表示仅录制一种格式的音频文件,Audio_Only_Record
为仅录制的音频文件格式。
示例:{"Audio_Only_Record":"mp3"}
,表示只生成 MP3 格式的音频文件。
Audio_Sample_Rate
: Number 类型,设置录制的音频的采样率。
示例:{"Audio_Sample_Rate":16000}
,表示录制音频的采样率是 16000Hz。
Pcm_Sample_Rate
: Number 类型,设置录制 PCM 帧格式的原始音频数据(getAudioFrame
为 2
或 3
)的采样率。
示例:{"Pcm_Sample_Rate":16000}
,表示录制 PCM 帧格式的原始音频数据的采样率是 16000Hz。
Chunk_Time_Span
参数仅适用于直播场景下的单流录制模式。Chunk_Time_Span
参数,必须将 enableIntraRequest
设为 true
,请求发流端发送关键帧。发流端是否发送关键帧,由发流端使用的 RTC SDK 版本决定。Audio_Sample_Rate
可以设置为 16000Hz,32000Hz,44100Hz,48000Hz。如果设置的采样率不在上述范围内,则默认采样率为 16000Hz。Pcm_Sample_Rate
可以设置为 8000Hz, 16000Hz, 32000Hz。如果设置的采样率不在上述范围内,则配置不生效。 VIDEO_FORMAT_TYPE io.agora.recording.common.RecordingConfig.decodeVideo |
设置视频解码格式。详见 VIDEO_FORMAT_TYPE。
AUDIO_FORMAT_TYPE io.agora.recording.common.RecordingConfig.decodeAudio |
设置音频解码格式,详见 AUDIO_FORMAT_TYPE。
int io.agora.recording.common.RecordingConfig.lowUdpPort |
设置最低 UDP 端口。高 UDP 端口与低 UDP 端口差值不能小于 6。
int io.agora.recording.common.RecordingConfig.highUdpPort |
设置最高 UDP 端口。高 UDP 端口与低 UDP 端口差值不能小于 6。
int io.agora.recording.common.RecordingConfig.idleLimitSec |
设置空闲频道的超时退出时间。该值需大于等于 3 秒,默认值为 300 秒。
该值需大于等于 3 秒。录制时,如果频道空闲(无用户)超过设定的时间,录制端自动退出频道,停止录制。
idleLimitSec
,录制程序会自动退出。 int io.agora.recording.common.RecordingConfig.captureInterval |
设置视频截图的时间间隔,最小值为 1 秒,默认为 5 秒。
int io.agora.recording.common.RecordingConfig.audioIndicationInterval |
说话者监测的时间间隔。
CHANNEL_PROFILE_TYPE io.agora.recording.common.RecordingConfig.channelProfile |
设置频道模式。必须与 Native/Web SDK 的保持一致。详见 CHANNEL_PROFILE_TYPE。
REMOTE_VIDEO_STREAM_TYPE io.agora.recording.common.RecordingConfig.streamType |
选择大小流。仅在 Native SDK/Web SDK 选择的是双流模式时有效,详见 REMOTE_VIDEO_STREAM_TYPE。
int io.agora.recording.common.RecordingConfig.triggerMode |
选择录制启动模式。
int io.agora.recording.common.RecordingConfig.proxyType |
设置代理服务器类型:
设置 proxyType
参数后,需在 proxyServer
参数中进行相应设置。详见使用云代理服务。
String io.agora.recording.common.RecordingConfig.proxyServer |
根据 proxyType
参数中选择的代理服务器类型设置代理服务器的 IP 地址(域名)和端口,从而实现在内网进行录制:
proxyType
为 0,proxyServer
设为 "<ip>:<port>"
。 proxyType
为 1,proxyServer
设为 "<domain>:<port>"
。 proxyType
为 2,proxyServer
设为 "<ip1>,<ip2>,...,<ipx>:<port>"
。 详见使用云代理服务。
int io.agora.recording.common.RecordingConfig.audioProfile |
如果你启用了合流模式,可以通过该参数设置录制文件的音频属性。
String io.agora.recording.common.RecordingConfig.defaultVideoBgPath |
设置合流模式下画布的默认背景图片的路径。如不设置会显示背景色。
String io.agora.recording.common.RecordingConfig.defaultUserBgPath |
设置合流模式下用户的默认背景图片的路径。如不设置会显示背景色。
合流模式下,如果用户没有视频流,就会显示该图片。
boolean io.agora.recording.common.RecordingConfig.autoSubscribe |
设置录制全部用户还是指定 UID 用户:
autoSubscribe
设为 false 后,必须设置 subscribeVideoUids 或 subscribeAudioUids 参数选择音频流或视频流进行录制,否则就不会录制。 boolean io.agora.recording.common.RecordingConfig.enableCloudProxy |
String io.agora.recording.common.RecordingConfig.subscribeVideoUids |
录制指定 UID 的视频流。UID 组成的数组,为用逗号隔开的字符串,例如 "1","2","3"。
当 autoSubscribe 为 false 时,你可设置此参数来指定 UID 进行录制。该参数设为 NULL 则表示录制所有发流用户的视频。
String io.agora.recording.common.RecordingConfig.subscribeAudioUids |
录制指定 UID 的音频流。UID 组成的数组,为用逗号隔开的字符串,例如 "1","2","3"。
当 autoSubscribe 为 false 时,你可设置此参数来指定 UID 进行录制。该参数设为 NULL 则表示录制所有发流用户的音频。
boolean io.agora.recording.common.RecordingConfig.enableIntraRequest |
是否启用关键帧请求。该参数默认为 true,可改善弱网下的音视频体验。如需使单流模式下录制的视频可指定播放位置,须将 enableIntraRequest
设为 false。
boolean io.agora.recording.common.RecordingConfig.enableH265Support |
设置是否支持录制 H.265 视频流: