
commonMain.aws.sdk.kotlin.services.mediaconvert.model.Deinterlacer.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.mediaconvert.model
/**
* Settings for deinterlacer
*/
public class Deinterlacer private constructor(builder: Builder) {
/**
* Only applies when you set Deinterlace mode to Deinterlace or Adaptive. Interpolate produces sharper pictures, while blend produces smoother motion. If your source file includes a ticker, such as a scrolling headline at the bottom of the frame: Choose Interpolate ticker or Blend ticker. To apply field doubling: Choose Linear interpolation. Note that Linear interpolation may introduce video artifacts into your output.
*/
public val algorithm: aws.sdk.kotlin.services.mediaconvert.model.DeinterlaceAlgorithm? = builder.algorithm
/**
* - When set to NORMAL (default), the deinterlacer does not convert frames that are tagged in metadata as progressive. It will only convert those that are tagged as some other type. - When set to FORCE_ALL_FRAMES, the deinterlacer converts every frame to progressive - even those that are already tagged as progressive. Turn Force mode on only if there is a good chance that the metadata has tagged frames as progressive when they are not progressive. Do not turn on otherwise; processing frames that are already progressive into progressive will probably result in lower quality video.
*/
public val control: aws.sdk.kotlin.services.mediaconvert.model.DeinterlacerControl? = builder.control
/**
* Use Deinterlacer to choose how the service will do deinterlacing. Default is Deinterlace. - Deinterlace converts interlaced to progressive. - Inverse telecine converts Hard Telecine 29.97i to progressive 23.976p. - Adaptive auto-detects and converts to progressive.
*/
public val mode: aws.sdk.kotlin.services.mediaconvert.model.DeinterlacerMode? = builder.mode
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.mediaconvert.model.Deinterlacer = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("Deinterlacer(")
append("algorithm=$algorithm,")
append("control=$control,")
append("mode=$mode")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = algorithm?.hashCode() ?: 0
result = 31 * result + (control?.hashCode() ?: 0)
result = 31 * result + (mode?.hashCode() ?: 0)
return result
}
override fun equals(other: kotlin.Any?): kotlin.Boolean {
if (this === other) return true
if (other == null || this::class != other::class) return false
other as Deinterlacer
if (algorithm != other.algorithm) return false
if (control != other.control) return false
if (mode != other.mode) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.mediaconvert.model.Deinterlacer = Builder(this).apply(block).build()
public class Builder {
/**
* Only applies when you set Deinterlace mode to Deinterlace or Adaptive. Interpolate produces sharper pictures, while blend produces smoother motion. If your source file includes a ticker, such as a scrolling headline at the bottom of the frame: Choose Interpolate ticker or Blend ticker. To apply field doubling: Choose Linear interpolation. Note that Linear interpolation may introduce video artifacts into your output.
*/
public var algorithm: aws.sdk.kotlin.services.mediaconvert.model.DeinterlaceAlgorithm? = null
/**
* - When set to NORMAL (default), the deinterlacer does not convert frames that are tagged in metadata as progressive. It will only convert those that are tagged as some other type. - When set to FORCE_ALL_FRAMES, the deinterlacer converts every frame to progressive - even those that are already tagged as progressive. Turn Force mode on only if there is a good chance that the metadata has tagged frames as progressive when they are not progressive. Do not turn on otherwise; processing frames that are already progressive into progressive will probably result in lower quality video.
*/
public var control: aws.sdk.kotlin.services.mediaconvert.model.DeinterlacerControl? = null
/**
* Use Deinterlacer to choose how the service will do deinterlacing. Default is Deinterlace. - Deinterlace converts interlaced to progressive. - Inverse telecine converts Hard Telecine 29.97i to progressive 23.976p. - Adaptive auto-detects and converts to progressive.
*/
public var mode: aws.sdk.kotlin.services.mediaconvert.model.DeinterlacerMode? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.mediaconvert.model.Deinterlacer) : this() {
this.algorithm = x.algorithm
this.control = x.control
this.mode = x.mode
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.mediaconvert.model.Deinterlacer = Deinterlacer(this)
internal fun correctErrors(): Builder {
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy