
com.tencentcloudapi.trtc.v20190722.models.RecordParams Maven / Gradle / Ivy
/*
* Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.tencentcloudapi.trtc.v20190722.models;
import com.tencentcloudapi.common.AbstractModel;
import com.google.gson.annotations.SerializedName;
import com.google.gson.annotations.Expose;
import java.util.HashMap;
public class RecordParams extends AbstractModel{
/**
* 录制模式:
1:单流录制,分别录制房间的订阅UserId的音频和视频,将录制文件上传至云存储;
2:混流录制,将房间内订阅UserId的音视频混录成一个音视频文件,将录制文件上传至云存储;
*/
@SerializedName("RecordMode")
@Expose
private Long RecordMode;
/**
* 房间内持续没有主播的状态超过MaxIdleTime的时长,自动停止录制,单位:秒。默认值为 30 秒,该值需大于等于 5秒,且小于等于 86400秒(24小时)。
*/
@SerializedName("MaxIdleTime")
@Expose
private Long MaxIdleTime;
/**
* 录制的媒体流类型:
0:录制音频+视频流(默认);
1:仅录制音频流;
2:仅录制视频流,
*/
@SerializedName("StreamType")
@Expose
private Long StreamType;
/**
* 指定订阅流白名单或者黑名单。
*/
@SerializedName("SubscribeStreamUserIds")
@Expose
private SubscribeStreamUserIds SubscribeStreamUserIds;
/**
* 输出文件的格式,上传到云点播时此参数无效,存储到云点播时请关注TencentVod内的MediaType参数。0:(默认)输出文件为hls格式。1:输出文件格式为hls+mp4(hls录制完成后转mp4文件)。
*/
@SerializedName("OutputFormat")
@Expose
private Long OutputFormat;
/**
* 单流录制模式下,用户的音视频是否合并,0:单流音视频不合并(默认)。1:单流音视频合并成一个ts。混流录制此参数无需设置,默认音视频合并。
*/
@SerializedName("AvMerge")
@Expose
private Long AvMerge;
/**
* Get 录制模式:
1:单流录制,分别录制房间的订阅UserId的音频和视频,将录制文件上传至云存储;
2:混流录制,将房间内订阅UserId的音视频混录成一个音视频文件,将录制文件上传至云存储;
* @return RecordMode 录制模式:
1:单流录制,分别录制房间的订阅UserId的音频和视频,将录制文件上传至云存储;
2:混流录制,将房间内订阅UserId的音视频混录成一个音视频文件,将录制文件上传至云存储;
*/
public Long getRecordMode() {
return this.RecordMode;
}
/**
* Set 录制模式:
1:单流录制,分别录制房间的订阅UserId的音频和视频,将录制文件上传至云存储;
2:混流录制,将房间内订阅UserId的音视频混录成一个音视频文件,将录制文件上传至云存储;
* @param RecordMode 录制模式:
1:单流录制,分别录制房间的订阅UserId的音频和视频,将录制文件上传至云存储;
2:混流录制,将房间内订阅UserId的音视频混录成一个音视频文件,将录制文件上传至云存储;
*/
public void setRecordMode(Long RecordMode) {
this.RecordMode = RecordMode;
}
/**
* Get 房间内持续没有主播的状态超过MaxIdleTime的时长,自动停止录制,单位:秒。默认值为 30 秒,该值需大于等于 5秒,且小于等于 86400秒(24小时)。
* @return MaxIdleTime 房间内持续没有主播的状态超过MaxIdleTime的时长,自动停止录制,单位:秒。默认值为 30 秒,该值需大于等于 5秒,且小于等于 86400秒(24小时)。
*/
public Long getMaxIdleTime() {
return this.MaxIdleTime;
}
/**
* Set 房间内持续没有主播的状态超过MaxIdleTime的时长,自动停止录制,单位:秒。默认值为 30 秒,该值需大于等于 5秒,且小于等于 86400秒(24小时)。
* @param MaxIdleTime 房间内持续没有主播的状态超过MaxIdleTime的时长,自动停止录制,单位:秒。默认值为 30 秒,该值需大于等于 5秒,且小于等于 86400秒(24小时)。
*/
public void setMaxIdleTime(Long MaxIdleTime) {
this.MaxIdleTime = MaxIdleTime;
}
/**
* Get 录制的媒体流类型:
0:录制音频+视频流(默认);
1:仅录制音频流;
2:仅录制视频流,
* @return StreamType 录制的媒体流类型:
0:录制音频+视频流(默认);
1:仅录制音频流;
2:仅录制视频流,
*/
public Long getStreamType() {
return this.StreamType;
}
/**
* Set 录制的媒体流类型:
0:录制音频+视频流(默认);
1:仅录制音频流;
2:仅录制视频流,
* @param StreamType 录制的媒体流类型:
0:录制音频+视频流(默认);
1:仅录制音频流;
2:仅录制视频流,
*/
public void setStreamType(Long StreamType) {
this.StreamType = StreamType;
}
/**
* Get 指定订阅流白名单或者黑名单。
* @return SubscribeStreamUserIds 指定订阅流白名单或者黑名单。
*/
public SubscribeStreamUserIds getSubscribeStreamUserIds() {
return this.SubscribeStreamUserIds;
}
/**
* Set 指定订阅流白名单或者黑名单。
* @param SubscribeStreamUserIds 指定订阅流白名单或者黑名单。
*/
public void setSubscribeStreamUserIds(SubscribeStreamUserIds SubscribeStreamUserIds) {
this.SubscribeStreamUserIds = SubscribeStreamUserIds;
}
/**
* Get 输出文件的格式,上传到云点播时此参数无效,存储到云点播时请关注TencentVod内的MediaType参数。0:(默认)输出文件为hls格式。1:输出文件格式为hls+mp4(hls录制完成后转mp4文件)。
* @return OutputFormat 输出文件的格式,上传到云点播时此参数无效,存储到云点播时请关注TencentVod内的MediaType参数。0:(默认)输出文件为hls格式。1:输出文件格式为hls+mp4(hls录制完成后转mp4文件)。
*/
public Long getOutputFormat() {
return this.OutputFormat;
}
/**
* Set 输出文件的格式,上传到云点播时此参数无效,存储到云点播时请关注TencentVod内的MediaType参数。0:(默认)输出文件为hls格式。1:输出文件格式为hls+mp4(hls录制完成后转mp4文件)。
* @param OutputFormat 输出文件的格式,上传到云点播时此参数无效,存储到云点播时请关注TencentVod内的MediaType参数。0:(默认)输出文件为hls格式。1:输出文件格式为hls+mp4(hls录制完成后转mp4文件)。
*/
public void setOutputFormat(Long OutputFormat) {
this.OutputFormat = OutputFormat;
}
/**
* Get 单流录制模式下,用户的音视频是否合并,0:单流音视频不合并(默认)。1:单流音视频合并成一个ts。混流录制此参数无需设置,默认音视频合并。
* @return AvMerge 单流录制模式下,用户的音视频是否合并,0:单流音视频不合并(默认)。1:单流音视频合并成一个ts。混流录制此参数无需设置,默认音视频合并。
*/
public Long getAvMerge() {
return this.AvMerge;
}
/**
* Set 单流录制模式下,用户的音视频是否合并,0:单流音视频不合并(默认)。1:单流音视频合并成一个ts。混流录制此参数无需设置,默认音视频合并。
* @param AvMerge 单流录制模式下,用户的音视频是否合并,0:单流音视频不合并(默认)。1:单流音视频合并成一个ts。混流录制此参数无需设置,默认音视频合并。
*/
public void setAvMerge(Long AvMerge) {
this.AvMerge = AvMerge;
}
public RecordParams() {
}
/**
* NOTE: Any ambiguous key set via .set("AnyKey", "value") will be a shallow copy,
* and any explicit key, i.e Foo, set via .setFoo("value") will be a deep copy.
*/
public RecordParams(RecordParams source) {
if (source.RecordMode != null) {
this.RecordMode = new Long(source.RecordMode);
}
if (source.MaxIdleTime != null) {
this.MaxIdleTime = new Long(source.MaxIdleTime);
}
if (source.StreamType != null) {
this.StreamType = new Long(source.StreamType);
}
if (source.SubscribeStreamUserIds != null) {
this.SubscribeStreamUserIds = new SubscribeStreamUserIds(source.SubscribeStreamUserIds);
}
if (source.OutputFormat != null) {
this.OutputFormat = new Long(source.OutputFormat);
}
if (source.AvMerge != null) {
this.AvMerge = new Long(source.AvMerge);
}
}
/**
* Internal implementation, normal users should not use it.
*/
public void toMap(HashMap map, String prefix) {
this.setParamSimple(map, prefix + "RecordMode", this.RecordMode);
this.setParamSimple(map, prefix + "MaxIdleTime", this.MaxIdleTime);
this.setParamSimple(map, prefix + "StreamType", this.StreamType);
this.setParamObj(map, prefix + "SubscribeStreamUserIds.", this.SubscribeStreamUserIds);
this.setParamSimple(map, prefix + "OutputFormat", this.OutputFormat);
this.setParamSimple(map, prefix + "AvMerge", this.AvMerge);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy