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

commonMain.aws.sdk.kotlin.services.mediaconvert.serde.XavcSettingsDocumentDeserializer.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.mediaconvert.serde

import aws.sdk.kotlin.services.mediaconvert.model.XavcAdaptiveQuantization
import aws.sdk.kotlin.services.mediaconvert.model.XavcEntropyEncoding
import aws.sdk.kotlin.services.mediaconvert.model.XavcFramerateControl
import aws.sdk.kotlin.services.mediaconvert.model.XavcFramerateConversionAlgorithm
import aws.sdk.kotlin.services.mediaconvert.model.XavcProfile
import aws.sdk.kotlin.services.mediaconvert.model.XavcSettings
import aws.sdk.kotlin.services.mediaconvert.model.XavcSlowPal
import aws.sdk.kotlin.services.mediaconvert.model.XavcSpatialAdaptiveQuantization
import aws.sdk.kotlin.services.mediaconvert.model.XavcTemporalAdaptiveQuantization
import aws.smithy.kotlin.runtime.serde.Deserializer
import aws.smithy.kotlin.runtime.serde.SdkFieldDescriptor
import aws.smithy.kotlin.runtime.serde.SdkObjectDescriptor
import aws.smithy.kotlin.runtime.serde.SerialKind
import aws.smithy.kotlin.runtime.serde.asSdkSerializable
import aws.smithy.kotlin.runtime.serde.deserializeList
import aws.smithy.kotlin.runtime.serde.deserializeMap
import aws.smithy.kotlin.runtime.serde.deserializeStruct
import aws.smithy.kotlin.runtime.serde.field
import aws.smithy.kotlin.runtime.serde.json.JsonDeserializer
import aws.smithy.kotlin.runtime.serde.json.JsonSerialName
import aws.smithy.kotlin.runtime.serde.serializeList
import aws.smithy.kotlin.runtime.serde.serializeMap
import aws.smithy.kotlin.runtime.serde.serializeStruct

internal fun deserializeXavcSettingsDocument(deserializer: Deserializer): XavcSettings {
    val builder = XavcSettings.Builder()
    val ADAPTIVEQUANTIZATION_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("adaptiveQuantization"))
    val ENTROPYENCODING_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("entropyEncoding"))
    val FRAMERATECONTROL_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("framerateControl"))
    val FRAMERATECONVERSIONALGORITHM_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("framerateConversionAlgorithm"))
    val FRAMERATEDENOMINATOR_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("framerateDenominator"))
    val FRAMERATENUMERATOR_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("framerateNumerator"))
    val PROFILE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("profile"))
    val SLOWPAL_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("slowPal"))
    val SOFTNESS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Integer, JsonSerialName("softness"))
    val SPATIALADAPTIVEQUANTIZATION_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("spatialAdaptiveQuantization"))
    val TEMPORALADAPTIVEQUANTIZATION_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("temporalAdaptiveQuantization"))
    val XAVC4KINTRACBGPROFILESETTINGS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("xavc4kIntraCbgProfileSettings"))
    val XAVC4KINTRAVBRPROFILESETTINGS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("xavc4kIntraVbrProfileSettings"))
    val XAVC4KPROFILESETTINGS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("xavc4kProfileSettings"))
    val XAVCHDINTRACBGPROFILESETTINGS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("xavcHdIntraCbgProfileSettings"))
    val XAVCHDPROFILESETTINGS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("xavcHdProfileSettings"))
    val OBJ_DESCRIPTOR = SdkObjectDescriptor.build {
        field(ADAPTIVEQUANTIZATION_DESCRIPTOR)
        field(ENTROPYENCODING_DESCRIPTOR)
        field(FRAMERATECONTROL_DESCRIPTOR)
        field(FRAMERATECONVERSIONALGORITHM_DESCRIPTOR)
        field(FRAMERATEDENOMINATOR_DESCRIPTOR)
        field(FRAMERATENUMERATOR_DESCRIPTOR)
        field(PROFILE_DESCRIPTOR)
        field(SLOWPAL_DESCRIPTOR)
        field(SOFTNESS_DESCRIPTOR)
        field(SPATIALADAPTIVEQUANTIZATION_DESCRIPTOR)
        field(TEMPORALADAPTIVEQUANTIZATION_DESCRIPTOR)
        field(XAVC4KINTRACBGPROFILESETTINGS_DESCRIPTOR)
        field(XAVC4KINTRAVBRPROFILESETTINGS_DESCRIPTOR)
        field(XAVC4KPROFILESETTINGS_DESCRIPTOR)
        field(XAVCHDINTRACBGPROFILESETTINGS_DESCRIPTOR)
        field(XAVCHDPROFILESETTINGS_DESCRIPTOR)
    }

    deserializer.deserializeStruct(OBJ_DESCRIPTOR) {
        loop@while (true) {
            when (findNextFieldIndex()) {
                ADAPTIVEQUANTIZATION_DESCRIPTOR.index -> builder.adaptiveQuantization = deserializeString().let { XavcAdaptiveQuantization.fromValue(it) }
                ENTROPYENCODING_DESCRIPTOR.index -> builder.entropyEncoding = deserializeString().let { XavcEntropyEncoding.fromValue(it) }
                FRAMERATECONTROL_DESCRIPTOR.index -> builder.framerateControl = deserializeString().let { XavcFramerateControl.fromValue(it) }
                FRAMERATECONVERSIONALGORITHM_DESCRIPTOR.index -> builder.framerateConversionAlgorithm = deserializeString().let { XavcFramerateConversionAlgorithm.fromValue(it) }
                FRAMERATEDENOMINATOR_DESCRIPTOR.index -> builder.framerateDenominator = deserializeInt()
                FRAMERATENUMERATOR_DESCRIPTOR.index -> builder.framerateNumerator = deserializeInt()
                PROFILE_DESCRIPTOR.index -> builder.profile = deserializeString().let { XavcProfile.fromValue(it) }
                SLOWPAL_DESCRIPTOR.index -> builder.slowPal = deserializeString().let { XavcSlowPal.fromValue(it) }
                SOFTNESS_DESCRIPTOR.index -> builder.softness = deserializeInt()
                SPATIALADAPTIVEQUANTIZATION_DESCRIPTOR.index -> builder.spatialAdaptiveQuantization = deserializeString().let { XavcSpatialAdaptiveQuantization.fromValue(it) }
                TEMPORALADAPTIVEQUANTIZATION_DESCRIPTOR.index -> builder.temporalAdaptiveQuantization = deserializeString().let { XavcTemporalAdaptiveQuantization.fromValue(it) }
                XAVC4KINTRACBGPROFILESETTINGS_DESCRIPTOR.index -> builder.xavc4kIntraCbgProfileSettings = deserializeXavc4kIntraCbgProfileSettingsDocument(deserializer)
                XAVC4KINTRAVBRPROFILESETTINGS_DESCRIPTOR.index -> builder.xavc4kIntraVbrProfileSettings = deserializeXavc4kIntraVbrProfileSettingsDocument(deserializer)
                XAVC4KPROFILESETTINGS_DESCRIPTOR.index -> builder.xavc4kProfileSettings = deserializeXavc4kProfileSettingsDocument(deserializer)
                XAVCHDINTRACBGPROFILESETTINGS_DESCRIPTOR.index -> builder.xavcHdIntraCbgProfileSettings = deserializeXavcHdIntraCbgProfileSettingsDocument(deserializer)
                XAVCHDPROFILESETTINGS_DESCRIPTOR.index -> builder.xavcHdProfileSettings = deserializeXavcHdProfileSettingsDocument(deserializer)
                null -> break@loop
                else -> skipValue()
            }
        }
    }
    builder.correctErrors()
    return builder.build()
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy