/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the mediaconvert-2017-08-29.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.MediaConvert.Model { /// /// Settings related to one audio tab on the MediaConvert console. In your job JSON, an /// instance of AudioDescription is equivalent to one audio tab in the console. Usually, /// one audio tab corresponds to one output audio track. Depending on how you set up your /// input audio selectors and whether you use audio selector groups, one audio tab can /// correspond to a group of output audio tracks. /// public partial class AudioDescription { private AudioChannelTaggingSettings _audioChannelTaggingSettings; private AudioNormalizationSettings _audioNormalizationSettings; private string _audioSourceName; private int? _audioType; private AudioTypeControl _audioTypeControl; private AudioCodecSettings _codecSettings; private string _customLanguageCode; private LanguageCode _languageCode; private AudioLanguageCodeControl _languageCodeControl; private RemixSettings _remixSettings; private string _streamName; /// /// Gets and sets the property AudioChannelTaggingSettings. When you mimic a multi-channel /// audio layout with multiple mono-channel tracks, you can tag each channel layout manually. /// For example, you would tag the tracks that contain your left, right, and center audio /// with Left (L), Right (R), and Center (C), respectively. When you don't specify a value, /// MediaConvert labels your track as Center (C) by default. To use audio layout tagging, /// your output must be in a QuickTime (.mov) container; your audio codec must be AAC, /// WAV, or AIFF; and you must set up your audio track to have only one channel. /// public AudioChannelTaggingSettings AudioChannelTaggingSettings { get { return this._audioChannelTaggingSettings; } set { this._audioChannelTaggingSettings = value; } } // Check to see if AudioChannelTaggingSettings property is set internal bool IsSetAudioChannelTaggingSettings() { return this._audioChannelTaggingSettings != null; } /// /// Gets and sets the property AudioNormalizationSettings. Advanced audio normalization /// settings. Ignore these settings unless you need to comply with a loudness standard. /// public AudioNormalizationSettings AudioNormalizationSettings { get { return this._audioNormalizationSettings; } set { this._audioNormalizationSettings = value; } } // Check to see if AudioNormalizationSettings property is set internal bool IsSetAudioNormalizationSettings() { return this._audioNormalizationSettings != null; } /// /// Gets and sets the property AudioSourceName. Specifies which audio data to use from /// each input. In the simplest case, specify an "Audio Selector":#inputs-audio_selector /// by name based on its order within each input. For example if you specify "Audio Selector /// 3", then the third audio selector will be used from each input. If an input does not /// have an "Audio Selector 3", then the audio selector marked as "default" in that input /// will be used. If there is no audio selector marked as "default", silence will be inserted /// for the duration of that input. Alternatively, an "Audio Selector Group":#inputs-audio_selector_group /// name may be specified, with similar default/silence behavior. If no audio_source_name /// is specified, then "Audio Selector 1" will be chosen automatically. /// public string AudioSourceName { get { return this._audioSourceName; } set { this._audioSourceName = value; } } // Check to see if AudioSourceName property is set internal bool IsSetAudioSourceName() { return this._audioSourceName != null; } /// /// Gets and sets the property AudioType. Applies only if Follow Input Audio Type is unchecked /// (false). A number between 0 and 255. The following are defined in ISO-IEC 13818-1: /// 0 = Undefined, 1 = Clean Effects, 2 = Hearing Impaired, 3 = Visually Impaired Commentary, /// 4-255 = Reserved. /// [AWSProperty(Min=0, Max=255)] public int AudioType { get { return this._audioType.GetValueOrDefault(); } set { this._audioType = value; } } // Check to see if AudioType property is set internal bool IsSetAudioType() { return this._audioType.HasValue; } /// /// Gets and sets the property AudioTypeControl. When set to FOLLOW_INPUT, if the input /// contains an ISO 639 audio_type, then that value is passed through to the output. If /// the input contains no ISO 639 audio_type, the value in Audio Type is included in the /// output. Otherwise the value in Audio Type is included in the output. Note that this /// field and audioType are both ignored if audioDescriptionBroadcasterMix is set to BROADCASTER_MIXED_AD. /// public AudioTypeControl AudioTypeControl { get { return this._audioTypeControl; } set { this._audioTypeControl = value; } } // Check to see if AudioTypeControl property is set internal bool IsSetAudioTypeControl() { return this._audioTypeControl != null; } /// /// Gets and sets the property CodecSettings. Settings related to audio encoding. The /// settings in this group vary depending on the value that you choose for your audio /// codec. /// public AudioCodecSettings CodecSettings { get { return this._codecSettings; } set { this._codecSettings = value; } } // Check to see if CodecSettings property is set internal bool IsSetCodecSettings() { return this._codecSettings != null; } /// /// Gets and sets the property CustomLanguageCode. Specify the language for this audio /// output track. The service puts this language code into your output audio track when /// you set Language code control to Use configured. The service also uses your specified /// custom language code when you set Language code control to Follow input, but your /// input file doesn't specify a language code. For all outputs, you can use an ISO 639-2 /// or ISO 639-3 code. For streaming outputs, you can also use any other code in the full /// RFC-5646 specification. Streaming outputs are those that are in one of the following /// output groups: CMAF, DASH ISO, Apple HLS, or Microsoft Smooth Streaming. /// public string CustomLanguageCode { get { return this._customLanguageCode; } set { this._customLanguageCode = value; } } // Check to see if CustomLanguageCode property is set internal bool IsSetCustomLanguageCode() { return this._customLanguageCode != null; } /// /// Gets and sets the property LanguageCode. Indicates the language of the audio output /// track. The ISO 639 language specified in the 'Language Code' drop down will be used /// when 'Follow Input Language Code' is not selected or when 'Follow Input Language Code' /// is selected but there is no ISO 639 language code specified by the input. /// public LanguageCode LanguageCode { get { return this._languageCode; } set { this._languageCode = value; } } // Check to see if LanguageCode property is set internal bool IsSetLanguageCode() { return this._languageCode != null; } /// /// Gets and sets the property LanguageCodeControl. Specify which source for language /// code takes precedence for this audio track. When you choose Follow input, the service /// uses the language code from the input track if it's present. If there's no languge /// code on the input track, the service uses the code that you specify in the setting /// Language code. When you choose Use configured, the service uses the language code /// that you specify. /// public AudioLanguageCodeControl LanguageCodeControl { get { return this._languageCodeControl; } set { this._languageCodeControl = value; } } // Check to see if LanguageCodeControl property is set internal bool IsSetLanguageCodeControl() { return this._languageCodeControl != null; } /// /// Gets and sets the property RemixSettings. Advanced audio remixing settings. /// public RemixSettings RemixSettings { get { return this._remixSettings; } set { this._remixSettings = value; } } // Check to see if RemixSettings property is set internal bool IsSetRemixSettings() { return this._remixSettings != null; } /// /// Gets and sets the property StreamName. Specify a label for this output audio stream. /// For example, "English", "Director commentary", or "track_2". For streaming outputs, /// MediaConvert passes this information into destination manifests for display on the /// end-viewer's player device. For outputs in other output groups, the service ignores /// this setting. /// public string StreamName { get { return this._streamName; } set { this._streamName = value; } } // Check to see if StreamName property is set internal bool IsSetStreamName() { return this._streamName != null; } } }