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

commonMain.aws.sdk.kotlin.services.mediaconvert.model.VideoOverlay.kt Maven / Gradle / Ivy

// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.mediaconvert.model



/**
 * Overlay one or more videos on top of your input video. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/video-overlays.html
 */
public class VideoOverlay private constructor(builder: Builder) {
    /**
     * Enter the end timecode in the underlying input video for this overlay. Your overlay will be active through this frame. To display your video overlay for the duration of the underlying video: Leave blank. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When entering this value, take into account your choice for the underlying Input timecode source. For example, if you have embedded timecodes that start at 01:00:00:00 and you want your overlay to end ten minutes into the video, enter 01:10:00:00.
     */
    public val endTimecode: kotlin.String? = builder.endTimecode
    /**
     * Input settings for Video overlay. You can include one or more video overlays in sequence at different times that you specify.
     */
    public val input: aws.sdk.kotlin.services.mediaconvert.model.VideoOverlayInput? = builder.input
    /**
     * Enter the start timecode in the underlying input video for this overlay. Your overlay will be active starting with this frame. To display your video overlay starting at the beginning of the underlying video: Leave blank. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When entering this value, take into account your choice for the underlying Input timecode source. For example, if you have embedded timecodes that start at 01:00:00:00 and you want your overlay to begin five minutes into the video, enter 01:05:00:00.
     */
    public val startTimecode: kotlin.String? = builder.startTimecode

    public companion object {
        public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.mediaconvert.model.VideoOverlay = Builder().apply(block).build()
    }

    override fun toString(): kotlin.String = buildString {
        append("VideoOverlay(")
        append("endTimecode=$endTimecode,")
        append("input=$input,")
        append("startTimecode=$startTimecode")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = endTimecode?.hashCode() ?: 0
        result = 31 * result + (input?.hashCode() ?: 0)
        result = 31 * result + (startTimecode?.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 VideoOverlay

        if (endTimecode != other.endTimecode) return false
        if (input != other.input) return false
        if (startTimecode != other.startTimecode) return false

        return true
    }

    public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.mediaconvert.model.VideoOverlay = Builder(this).apply(block).build()

    public class Builder {
        /**
         * Enter the end timecode in the underlying input video for this overlay. Your overlay will be active through this frame. To display your video overlay for the duration of the underlying video: Leave blank. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When entering this value, take into account your choice for the underlying Input timecode source. For example, if you have embedded timecodes that start at 01:00:00:00 and you want your overlay to end ten minutes into the video, enter 01:10:00:00.
         */
        public var endTimecode: kotlin.String? = null
        /**
         * Input settings for Video overlay. You can include one or more video overlays in sequence at different times that you specify.
         */
        public var input: aws.sdk.kotlin.services.mediaconvert.model.VideoOverlayInput? = null
        /**
         * Enter the start timecode in the underlying input video for this overlay. Your overlay will be active starting with this frame. To display your video overlay starting at the beginning of the underlying video: Leave blank. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the minute, SS is the second, and FF is the frame number. When entering this value, take into account your choice for the underlying Input timecode source. For example, if you have embedded timecodes that start at 01:00:00:00 and you want your overlay to begin five minutes into the video, enter 01:05:00:00.
         */
        public var startTimecode: kotlin.String? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.mediaconvert.model.VideoOverlay) : this() {
            this.endTimecode = x.endTimecode
            this.input = x.input
            this.startTimecode = x.startTimecode
        }

        @PublishedApi
        internal fun build(): aws.sdk.kotlin.services.mediaconvert.model.VideoOverlay = VideoOverlay(this)

        /**
         * construct an [aws.sdk.kotlin.services.mediaconvert.model.VideoOverlayInput] inside the given [block]
         */
        public fun input(block: aws.sdk.kotlin.services.mediaconvert.model.VideoOverlayInput.Builder.() -> kotlin.Unit) {
            this.input = aws.sdk.kotlin.services.mediaconvert.model.VideoOverlayInput.invoke(block)
        }

        internal fun correctErrors(): Builder {
            return this
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy