All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.gcp.transcoder.kotlin.outputs.JobTemplateConfigElementaryStreamVideoStreamH264.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.transcoder.kotlin.outputs

import kotlin.Int
import kotlin.String
import kotlin.Suppress

/**
 *
 * @property bitrateBps The video bitrate in bits per second.
 * @property crfLevel Target CRF level. The default is '21'.
 * @property entropyCoder The entropy coder to use. The default is 'cabac'.
 * @property frameRate The target video frame rate in frames per second (FPS).
 * @property gopDuration Select the GOP size based on the specified duration. The default is '3s'.
 * @property heightPixels The height of the video in pixels.
 * @property hlg HLG color format setting for H264.
 * @property pixelFormat Pixel format to use. The default is 'yuv420p'.
 * @property preset Enforces the specified codec preset. The default is 'veryfast'.
 * @property profile Enforces the specified codec profile.
 * @property rateControlMode Specify the mode. The default is 'vbr'.
 * @property sdr SDR color format setting for H264.
 * @property vbvFullnessBits Initial fullness of the Video Buffering Verifier (VBV) buffer in bits.
 * @property vbvSizeBits Size of the Video Buffering Verifier (VBV) buffer in bits.
 * @property widthPixels The width of the video in pixels.
 */
public data class JobTemplateConfigElementaryStreamVideoStreamH264(
    public val bitrateBps: Int,
    public val crfLevel: Int? = null,
    public val entropyCoder: String? = null,
    public val frameRate: Int,
    public val gopDuration: String? = null,
    public val heightPixels: Int? = null,
    public val hlg: JobTemplateConfigElementaryStreamVideoStreamH264Hlg? = null,
    public val pixelFormat: String? = null,
    public val preset: String? = null,
    public val profile: String? = null,
    public val rateControlMode: String? = null,
    public val sdr: JobTemplateConfigElementaryStreamVideoStreamH264Sdr? = null,
    public val vbvFullnessBits: Int? = null,
    public val vbvSizeBits: Int? = null,
    public val widthPixels: Int? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.transcoder.outputs.JobTemplateConfigElementaryStreamVideoStreamH264): JobTemplateConfigElementaryStreamVideoStreamH264 =
            JobTemplateConfigElementaryStreamVideoStreamH264(
                bitrateBps = javaType.bitrateBps(),
                crfLevel = javaType.crfLevel().map({ args0 -> args0 }).orElse(null),
                entropyCoder = javaType.entropyCoder().map({ args0 -> args0 }).orElse(null),
                frameRate = javaType.frameRate(),
                gopDuration = javaType.gopDuration().map({ args0 -> args0 }).orElse(null),
                heightPixels = javaType.heightPixels().map({ args0 -> args0 }).orElse(null),
                hlg = javaType.hlg().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.gcp.transcoder.kotlin.outputs.JobTemplateConfigElementaryStreamVideoStreamH264Hlg.Companion.toKotlin(args0)
                    })
                }).orElse(null),
                pixelFormat = javaType.pixelFormat().map({ args0 -> args0 }).orElse(null),
                preset = javaType.preset().map({ args0 -> args0 }).orElse(null),
                profile = javaType.profile().map({ args0 -> args0 }).orElse(null),
                rateControlMode = javaType.rateControlMode().map({ args0 -> args0 }).orElse(null),
                sdr = javaType.sdr().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.gcp.transcoder.kotlin.outputs.JobTemplateConfigElementaryStreamVideoStreamH264Sdr.Companion.toKotlin(args0)
                    })
                }).orElse(null),
                vbvFullnessBits = javaType.vbvFullnessBits().map({ args0 -> args0 }).orElse(null),
                vbvSizeBits = javaType.vbvSizeBits().map({ args0 -> args0 }).orElse(null),
                widthPixels = javaType.widthPixels().map({ args0 -> args0 }).orElse(null),
            )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy