/*
* Copyright (c) 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.
*/
namespace TencentCloud.Mps.V20190612.Models
{
using Newtonsoft.Json;
using System.Collections.Generic;
using TencentCloud.Common;
public class VideoTemplateInfoForUpdate : AbstractModel
{
///
/// 视频流的编码格式,可选值:
/// libx264:H.264 编码
/// libx265:H.265 编码
/// av1:AOMedia Video 1 编码
/// 目前 H.265 编码必须指定分辨率,并且需要在 640*480 以内。av1 编码容器目前只支持 mp4 。
///
[JsonProperty("Codec")]
public string Codec{ get; set; }
///
/// 视频帧率,取值范围:[0, 60],单位:Hz。
/// 当取值为 0,表示帧率和原始视频保持一致。
///
[JsonProperty("Fps")]
public ulong? Fps{ get; set; }
///
/// 视频流的码率,取值范围:0 和 [128, 35000],单位:kbps。
/// 当取值为 0,表示视频码率和原始视频保持一致。
///
[JsonProperty("Bitrate")]
public ulong? Bitrate{ get; set; }
///
/// 分辨率自适应,可选值:
/// open:开启,此时,Width 代表视频的长边,Height 表示视频的短边;
/// close:关闭,此时,Width 代表视频的宽度,Height 表示视频的高度。
///
[JsonProperty("ResolutionAdaptive")]
public string ResolutionAdaptive{ get; set; }
///
/// 视频流宽度(或长边)的最大值,取值范围:0 和 [128, 4096],单位:px。
/// 当 Width、Height 均为 0,则分辨率同源;
/// 当 Width 为 0,Height 非 0,则 Width 按比例缩放;
/// 当 Width 非 0,Height 为 0,则 Height 按比例缩放;
/// 当 Width、Height 均非 0,则分辨率按用户指定。
///
[JsonProperty("Width")]
public ulong? Width{ get; set; }
///
/// 视频流高度(或短边)的最大值,取值范围:0 和 [128, 4096],单位:px。
///
[JsonProperty("Height")]
public ulong? Height{ get; set; }
///
/// 关键帧 I 帧之间的间隔,取值范围:0 和 [1, 100000],单位:帧数。当填 0 时,系统将自动设置 gop 长度。
///
[JsonProperty("Gop")]
public ulong? Gop{ get; set; }
///
/// 填充方式,当视频流配置宽高参数与原始视频的宽高比不一致时,对转码的处理方式,即为“填充”。可选填充方式:
/// stretch:拉伸,对每一帧进行拉伸,填满整个画面,可能导致转码后的视频被“压扁“或者“拉长“;
/// black:留黑,保持视频宽高比不变,边缘剩余部分使用黑色填充。
///
[JsonProperty("FillType")]
public string FillType{ get; set; }
///
/// For internal usage only. DO NOT USE IT.
///
internal override void ToMap(Dictionary map, string prefix)
{
this.SetParamSimple(map, prefix + "Codec", this.Codec);
this.SetParamSimple(map, prefix + "Fps", this.Fps);
this.SetParamSimple(map, prefix + "Bitrate", this.Bitrate);
this.SetParamSimple(map, prefix + "ResolutionAdaptive", this.ResolutionAdaptive);
this.SetParamSimple(map, prefix + "Width", this.Width);
this.SetParamSimple(map, prefix + "Height", this.Height);
this.SetParamSimple(map, prefix + "Gop", this.Gop);
this.SetParamSimple(map, prefix + "FillType", this.FillType);
}
}
}