import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface MpsAdaptiveDynamicStreamingTemplateConfig extends cdktf.TerraformMetaArguments { /** * Template description information, length limit: 256 characters. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#comment MpsAdaptiveDynamicStreamingTemplate#comment} */ readonly comment?: string; /** * Whether to prohibit video from low bit rate to high bit rate, value range:0: no.1: yes.Default value: 0. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#disable_higher_video_bitrate MpsAdaptiveDynamicStreamingTemplate#disable_higher_video_bitrate} */ readonly disableHigherVideoBitrate?: number; /** * Whether to prohibit the conversion of video resolution to high resolution, value range:0: no.1: yes.Default value: 0. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#disable_higher_video_resolution MpsAdaptiveDynamicStreamingTemplate#disable_higher_video_resolution} */ readonly disableHigherVideoResolution?: number; /** * Adaptive transcoding format, value range:HLS, MPEG-DASH. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#format MpsAdaptiveDynamicStreamingTemplate#format} */ readonly format: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#id MpsAdaptiveDynamicStreamingTemplate#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * Template name, length limit: 64 characters. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#name MpsAdaptiveDynamicStreamingTemplate#name} */ readonly name?: string; /** * stream_infos block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#stream_infos MpsAdaptiveDynamicStreamingTemplate#stream_infos} */ readonly streamInfos: MpsAdaptiveDynamicStreamingTemplateStreamInfos[] | cdktf.IResolvable; } export interface MpsAdaptiveDynamicStreamingTemplateStreamInfosAudio { /** * Audio channel mode, optional values:`1: single channel.2: Dual channel.6: Stereo.When the package format of the media is an audio format (flac, ogg, mp3, m4a), the number of channels is not allowed to be set to stereo.Default: 2. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#audio_channel MpsAdaptiveDynamicStreamingTemplate#audio_channel} */ readonly audioChannel?: number; /** * Bit rate of the audio stream, value range: 0 and [26, 256], unit: kbps.When the value is 0, it means that the audio bit rate is consistent with the original audio. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#bitrate MpsAdaptiveDynamicStreamingTemplate#bitrate} */ readonly bitrate: number; /** * Encoding format of audio stream.When the outer parameter Container is mp3, the optional value is:libmp3lame.When the outer parameter Container is ogg or flac, the optional value is:flac.When the outer parameter Container is m4a, the optional value is:libfdk_aac.libmp3lame.ac3.When the outer parameter Container is mp4 or flv, the optional value is:libfdk_aac: more suitable for mp4.libmp3lame: more suitable for flv.When the outer parameter Container is hls, the optional value is:libfdk_aac.libmp3lame. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#codec MpsAdaptiveDynamicStreamingTemplate#codec} */ readonly codec: string; /** * Sampling rate of audio stream, optional value.32000.44100.48000.Unit: Hz. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#sample_rate MpsAdaptiveDynamicStreamingTemplate#sample_rate} */ readonly sampleRate: number; } export declare function mpsAdaptiveDynamicStreamingTemplateStreamInfosAudioToTerraform(struct?: MpsAdaptiveDynamicStreamingTemplateStreamInfosAudioOutputReference | MpsAdaptiveDynamicStreamingTemplateStreamInfosAudio): any; export declare function mpsAdaptiveDynamicStreamingTemplateStreamInfosAudioToHclTerraform(struct?: MpsAdaptiveDynamicStreamingTemplateStreamInfosAudioOutputReference | MpsAdaptiveDynamicStreamingTemplateStreamInfosAudio): any; export declare class MpsAdaptiveDynamicStreamingTemplateStreamInfosAudioOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): MpsAdaptiveDynamicStreamingTemplateStreamInfosAudio | undefined; set internalValue(value: MpsAdaptiveDynamicStreamingTemplateStreamInfosAudio | undefined); private _audioChannel?; get audioChannel(): number; set audioChannel(value: number); resetAudioChannel(): void; get audioChannelInput(): number; private _bitrate?; get bitrate(): number; set bitrate(value: number); get bitrateInput(): number; private _codec?; get codec(): string; set codec(value: string); get codecInput(): string; private _sampleRate?; get sampleRate(): number; set sampleRate(value: number); get sampleRateInput(): number; } export interface MpsAdaptiveDynamicStreamingTemplateStreamInfosVideo { /** * Bit rate of the video stream, value range: 0 and [128, 35000], unit: kbps.When the value is 0, it means that the video bit rate is consistent with the original video. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#bitrate MpsAdaptiveDynamicStreamingTemplate#bitrate} */ readonly bitrate: number; /** * Encoding format of the video stream, optional value:libx264: H.264 encoding.libx265: H.265 encoding.av1: AOMedia Video 1 encoding.Note: Currently H.265 encoding must specify a resolution, and it needs to be within 640*480.Note: av1 encoded containers currently only support mp4. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#codec MpsAdaptiveDynamicStreamingTemplate#codec} */ readonly codec: string; /** * Filling type, when the aspect ratio of the video stream configuration is inconsistent with the aspect ratio of the original video, the processing method for transcoding is filling. Optional filling type:stretch: Stretching, stretching each frame to fill the entire screen, which may cause the transcoded video to be squashed or stretched.black: Leave black, keep the video aspect ratio unchanged, and fill the rest of the edge with black.white: Leave blank, keep the aspect ratio of the video, and fill the rest of the edge with white.gauss: Gaussian blur, keep the aspect ratio of the video unchanged, and use Gaussian blur for the rest of the edge.Default value: black.Note: Adaptive stream only supports stretch, black. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#fill_type MpsAdaptiveDynamicStreamingTemplate#fill_type} */ readonly fillType?: string; /** * Video frame rate, value range: [0, 100], unit: Hz.When the value is 0, it means that the frame rate is consistent with the original video.Note: The value range for adaptive code rate is [0, 60]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#fps MpsAdaptiveDynamicStreamingTemplate#fps} */ readonly fps: number; /** * The interval between keyframe I frames, value range: 0 and [1, 100000], unit: number of frames.When filling 0 or not filling, the system will automatically set the gop length. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#gop MpsAdaptiveDynamicStreamingTemplate#gop} */ readonly gop?: number; /** * The maximum value of the height (or short side) of the video streaming, value range: 0 and [128, 4096], unit: px.When Width and Height are both 0, the resolution is the same.When Width is 0 and Height is not 0, Width is scaled proportionally.When Width is not 0 and Height is 0, Height is scaled proportionally.When both Width and Height are not 0, the resolution is specified by the user.Default value: 0. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#height MpsAdaptiveDynamicStreamingTemplate#height} */ readonly height?: number; /** * Adaptive resolution, optional value:open: At this time, Width represents the long side of the video, Height represents the short side of the video.close: At this point, Width represents the width of the video, and Height represents the height of the video.Default value: open.Note: In adaptive mode, Width cannot be smaller than Height. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#resolution_adaptive MpsAdaptiveDynamicStreamingTemplate#resolution_adaptive} */ readonly resolutionAdaptive?: string; /** * Video constant bit rate control factor, the value range is [1, 51].If this parameter is specified, the code rate control method of CRF will be used for transcoding (the video code rate will no longer take effect).If there is no special requirement, it is not recommended to specify this parameter. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#vcrf MpsAdaptiveDynamicStreamingTemplate#vcrf} */ readonly vcrf?: number; /** * The maximum value of the width (or long side) of the video streaming, value range: 0 and [128, 4096], unit: px.When Width and Height are both 0, the resolution is the same.When Width is 0 and Height is not 0, Width is scaled proportionally.When Width is not 0 and Height is 0, Height is scaled proportionally.When both Width and Height are not 0, the resolution is specified by the user.Default value: 0. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#width MpsAdaptiveDynamicStreamingTemplate#width} */ readonly width?: number; } export declare function mpsAdaptiveDynamicStreamingTemplateStreamInfosVideoToTerraform(struct?: MpsAdaptiveDynamicStreamingTemplateStreamInfosVideoOutputReference | MpsAdaptiveDynamicStreamingTemplateStreamInfosVideo): any; export declare function mpsAdaptiveDynamicStreamingTemplateStreamInfosVideoToHclTerraform(struct?: MpsAdaptiveDynamicStreamingTemplateStreamInfosVideoOutputReference | MpsAdaptiveDynamicStreamingTemplateStreamInfosVideo): any; export declare class MpsAdaptiveDynamicStreamingTemplateStreamInfosVideoOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): MpsAdaptiveDynamicStreamingTemplateStreamInfosVideo | undefined; set internalValue(value: MpsAdaptiveDynamicStreamingTemplateStreamInfosVideo | undefined); private _bitrate?; get bitrate(): number; set bitrate(value: number); get bitrateInput(): number; private _codec?; get codec(): string; set codec(value: string); get codecInput(): string; private _fillType?; get fillType(): string; set fillType(value: string); resetFillType(): void; get fillTypeInput(): string; private _fps?; get fps(): number; set fps(value: number); get fpsInput(): number; private _gop?; get gop(): number; set gop(value: number); resetGop(): void; get gopInput(): number; private _height?; get height(): number; set height(value: number); resetHeight(): void; get heightInput(): number; private _resolutionAdaptive?; get resolutionAdaptive(): string; set resolutionAdaptive(value: string); resetResolutionAdaptive(): void; get resolutionAdaptiveInput(): string; private _vcrf?; get vcrf(): number; set vcrf(value: number); resetVcrf(): void; get vcrfInput(): number; private _width?; get width(): number; set width(value: number); resetWidth(): void; get widthInput(): number; } export interface MpsAdaptiveDynamicStreamingTemplateStreamInfos { /** * Whether to remove audio stream, value:0: reserved.1: remove. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#remove_audio MpsAdaptiveDynamicStreamingTemplate#remove_audio} */ readonly removeAudio?: number; /** * Whether to remove video stream, value:0: reserved.1: remove. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#remove_video MpsAdaptiveDynamicStreamingTemplate#remove_video} */ readonly removeVideo?: number; /** * audio block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#audio MpsAdaptiveDynamicStreamingTemplate#audio} */ readonly audio: MpsAdaptiveDynamicStreamingTemplateStreamInfosAudio; /** * video block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#video MpsAdaptiveDynamicStreamingTemplate#video} */ readonly video: MpsAdaptiveDynamicStreamingTemplateStreamInfosVideo; } export declare function mpsAdaptiveDynamicStreamingTemplateStreamInfosToTerraform(struct?: MpsAdaptiveDynamicStreamingTemplateStreamInfos | cdktf.IResolvable): any; export declare function mpsAdaptiveDynamicStreamingTemplateStreamInfosToHclTerraform(struct?: MpsAdaptiveDynamicStreamingTemplateStreamInfos | cdktf.IResolvable): any; export declare class MpsAdaptiveDynamicStreamingTemplateStreamInfosOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): MpsAdaptiveDynamicStreamingTemplateStreamInfos | cdktf.IResolvable | undefined; set internalValue(value: MpsAdaptiveDynamicStreamingTemplateStreamInfos | cdktf.IResolvable | undefined); private _removeAudio?; get removeAudio(): number; set removeAudio(value: number); resetRemoveAudio(): void; get removeAudioInput(): number; private _removeVideo?; get removeVideo(): number; set removeVideo(value: number); resetRemoveVideo(): void; get removeVideoInput(): number; private _audio; get audio(): MpsAdaptiveDynamicStreamingTemplateStreamInfosAudioOutputReference; putAudio(value: MpsAdaptiveDynamicStreamingTemplateStreamInfosAudio): void; get audioInput(): MpsAdaptiveDynamicStreamingTemplateStreamInfosAudio; private _video; get video(): MpsAdaptiveDynamicStreamingTemplateStreamInfosVideoOutputReference; putVideo(value: MpsAdaptiveDynamicStreamingTemplateStreamInfosVideo): void; get videoInput(): MpsAdaptiveDynamicStreamingTemplateStreamInfosVideo; } export declare class MpsAdaptiveDynamicStreamingTemplateStreamInfosList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: MpsAdaptiveDynamicStreamingTemplateStreamInfos[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): MpsAdaptiveDynamicStreamingTemplateStreamInfosOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template tencentcloud_mps_adaptive_dynamic_streaming_template} */ export declare class MpsAdaptiveDynamicStreamingTemplate extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_mps_adaptive_dynamic_streaming_template"; /** * Generates CDKTF code for importing a MpsAdaptiveDynamicStreamingTemplate resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the MpsAdaptiveDynamicStreamingTemplate to import * @param importFromId The id of the existing MpsAdaptiveDynamicStreamingTemplate that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the MpsAdaptiveDynamicStreamingTemplate to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_adaptive_dynamic_streaming_template tencentcloud_mps_adaptive_dynamic_streaming_template} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options MpsAdaptiveDynamicStreamingTemplateConfig */ constructor(scope: Construct, id: string, config: MpsAdaptiveDynamicStreamingTemplateConfig); private _comment?; get comment(): string; set comment(value: string); resetComment(): void; get commentInput(): string; private _disableHigherVideoBitrate?; get disableHigherVideoBitrate(): number; set disableHigherVideoBitrate(value: number); resetDisableHigherVideoBitrate(): void; get disableHigherVideoBitrateInput(): number; private _disableHigherVideoResolution?; get disableHigherVideoResolution(): number; set disableHigherVideoResolution(value: number); resetDisableHigherVideoResolution(): void; get disableHigherVideoResolutionInput(): number; private _format?; get format(): string; set format(value: string); get formatInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _name?; get name(): string; set name(value: string); resetName(): void; get nameInput(): string; private _streamInfos; get streamInfos(): MpsAdaptiveDynamicStreamingTemplateStreamInfosList; putStreamInfos(value: MpsAdaptiveDynamicStreamingTemplateStreamInfos[] | cdktf.IResolvable): void; get streamInfosInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }