
commonMain.aws.sdk.kotlin.services.medialive.model.FecOutputSettings.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.medialive.model
/**
* Fec Output Settings
*/
public class FecOutputSettings private constructor(builder: Builder) {
/**
* Parameter D from SMPTE 2022-1. The height of the FEC protection matrix. The number of transport stream packets per column error correction packet. Must be between 4 and 20, inclusive.
*/
public val columnDepth: kotlin.Int = builder.columnDepth
/**
* Enables column only or column and row based FEC
*/
public val includeFec: aws.sdk.kotlin.services.medialive.model.FecOutputIncludeFec? = builder.includeFec
/**
* Parameter L from SMPTE 2022-1. The width of the FEC protection matrix. Must be between 1 and 20, inclusive. If only Column FEC is used, then larger values increase robustness. If Row FEC is used, then this is the number of transport stream packets per row error correction packet, and the value must be between 4 and 20, inclusive, if includeFec is columnAndRow. If includeFec is column, this value must be 1 to 20, inclusive.
*/
public val rowLength: kotlin.Int = builder.rowLength
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.medialive.model.FecOutputSettings = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("FecOutputSettings(")
append("columnDepth=$columnDepth,")
append("includeFec=$includeFec,")
append("rowLength=$rowLength")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = columnDepth
result = 31 * result + (includeFec?.hashCode() ?: 0)
result = 31 * result + (rowLength)
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 FecOutputSettings
if (columnDepth != other.columnDepth) return false
if (includeFec != other.includeFec) return false
if (rowLength != other.rowLength) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.medialive.model.FecOutputSettings = Builder(this).apply(block).build()
public class Builder {
/**
* Parameter D from SMPTE 2022-1. The height of the FEC protection matrix. The number of transport stream packets per column error correction packet. Must be between 4 and 20, inclusive.
*/
public var columnDepth: kotlin.Int = 0
/**
* Enables column only or column and row based FEC
*/
public var includeFec: aws.sdk.kotlin.services.medialive.model.FecOutputIncludeFec? = null
/**
* Parameter L from SMPTE 2022-1. The width of the FEC protection matrix. Must be between 1 and 20, inclusive. If only Column FEC is used, then larger values increase robustness. If Row FEC is used, then this is the number of transport stream packets per row error correction packet, and the value must be between 4 and 20, inclusive, if includeFec is columnAndRow. If includeFec is column, this value must be 1 to 20, inclusive.
*/
public var rowLength: kotlin.Int = 0
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.medialive.model.FecOutputSettings) : this() {
this.columnDepth = x.columnDepth
this.includeFec = x.includeFec
this.rowLength = x.rowLength
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.medialive.model.FecOutputSettings = FecOutputSettings(this)
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy