/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace ElasticTranscoder { namespace Model { /** *

The captions to be created, if any.

See Also:

AWS * API Reference

*/ class InputCaptions { public: AWS_ELASTICTRANSCODER_API InputCaptions(); AWS_ELASTICTRANSCODER_API InputCaptions(Aws::Utils::Json::JsonView jsonValue); AWS_ELASTICTRANSCODER_API InputCaptions& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_ELASTICTRANSCODER_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple captions.

  • MergeOverride: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the sidecar captions and ignores the embedded captions * for that language.

  • MergeRetain: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the embedded captions and ignores the sidecar captions * for that language. If CaptionSources is empty, Elastic Transcoder * omits all sidecar captions from the output files.

  • * Override: Elastic Transcoder transcodes only the sidecar captions that * you specify in CaptionSources.

* MergePolicy cannot be null.

*/ inline const Aws::String& GetMergePolicy() const{ return m_mergePolicy; } /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple captions.

  • MergeOverride: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the sidecar captions and ignores the embedded captions * for that language.

  • MergeRetain: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the embedded captions and ignores the sidecar captions * for that language. If CaptionSources is empty, Elastic Transcoder * omits all sidecar captions from the output files.

  • * Override: Elastic Transcoder transcodes only the sidecar captions that * you specify in CaptionSources.

* MergePolicy cannot be null.

*/ inline bool MergePolicyHasBeenSet() const { return m_mergePolicyHasBeenSet; } /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple captions.

  • MergeOverride: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the sidecar captions and ignores the embedded captions * for that language.

  • MergeRetain: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the embedded captions and ignores the sidecar captions * for that language. If CaptionSources is empty, Elastic Transcoder * omits all sidecar captions from the output files.

  • * Override: Elastic Transcoder transcodes only the sidecar captions that * you specify in CaptionSources.

* MergePolicy cannot be null.

*/ inline void SetMergePolicy(const Aws::String& value) { m_mergePolicyHasBeenSet = true; m_mergePolicy = value; } /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple captions.

  • MergeOverride: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the sidecar captions and ignores the embedded captions * for that language.

  • MergeRetain: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the embedded captions and ignores the sidecar captions * for that language. If CaptionSources is empty, Elastic Transcoder * omits all sidecar captions from the output files.

  • * Override: Elastic Transcoder transcodes only the sidecar captions that * you specify in CaptionSources.

* MergePolicy cannot be null.

*/ inline void SetMergePolicy(Aws::String&& value) { m_mergePolicyHasBeenSet = true; m_mergePolicy = std::move(value); } /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple captions.

  • MergeOverride: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the sidecar captions and ignores the embedded captions * for that language.

  • MergeRetain: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the embedded captions and ignores the sidecar captions * for that language. If CaptionSources is empty, Elastic Transcoder * omits all sidecar captions from the output files.

  • * Override: Elastic Transcoder transcodes only the sidecar captions that * you specify in CaptionSources.

* MergePolicy cannot be null.

*/ inline void SetMergePolicy(const char* value) { m_mergePolicyHasBeenSet = true; m_mergePolicy.assign(value); } /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple captions.

  • MergeOverride: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the sidecar captions and ignores the embedded captions * for that language.

  • MergeRetain: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the embedded captions and ignores the sidecar captions * for that language. If CaptionSources is empty, Elastic Transcoder * omits all sidecar captions from the output files.

  • * Override: Elastic Transcoder transcodes only the sidecar captions that * you specify in CaptionSources.

* MergePolicy cannot be null.

*/ inline InputCaptions& WithMergePolicy(const Aws::String& value) { SetMergePolicy(value); return *this;} /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple captions.

  • MergeOverride: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the sidecar captions and ignores the embedded captions * for that language.

  • MergeRetain: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the embedded captions and ignores the sidecar captions * for that language. If CaptionSources is empty, Elastic Transcoder * omits all sidecar captions from the output files.

  • * Override: Elastic Transcoder transcodes only the sidecar captions that * you specify in CaptionSources.

* MergePolicy cannot be null.

*/ inline InputCaptions& WithMergePolicy(Aws::String&& value) { SetMergePolicy(std::move(value)); return *this;} /** *

A policy that determines how Elastic Transcoder handles the existence of * multiple captions.

  • MergeOverride: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the sidecar captions and ignores the embedded captions * for that language.

  • MergeRetain: Elastic Transcoder * transcodes both embedded and sidecar captions into outputs. If captions for a * language are embedded in the input file and also appear in a sidecar file, * Elastic Transcoder uses the embedded captions and ignores the sidecar captions * for that language. If CaptionSources is empty, Elastic Transcoder * omits all sidecar captions from the output files.

  • * Override: Elastic Transcoder transcodes only the sidecar captions that * you specify in CaptionSources.

* MergePolicy cannot be null.

*/ inline InputCaptions& WithMergePolicy(const char* value) { SetMergePolicy(value); return *this;} /** *

Source files for the input sidecar captions used during the transcoding * process. To omit all sidecar captions, leave CaptionSources * blank.

*/ inline const Aws::Vector& GetCaptionSources() const{ return m_captionSources; } /** *

Source files for the input sidecar captions used during the transcoding * process. To omit all sidecar captions, leave CaptionSources * blank.

*/ inline bool CaptionSourcesHasBeenSet() const { return m_captionSourcesHasBeenSet; } /** *

Source files for the input sidecar captions used during the transcoding * process. To omit all sidecar captions, leave CaptionSources * blank.

*/ inline void SetCaptionSources(const Aws::Vector& value) { m_captionSourcesHasBeenSet = true; m_captionSources = value; } /** *

Source files for the input sidecar captions used during the transcoding * process. To omit all sidecar captions, leave CaptionSources * blank.

*/ inline void SetCaptionSources(Aws::Vector&& value) { m_captionSourcesHasBeenSet = true; m_captionSources = std::move(value); } /** *

Source files for the input sidecar captions used during the transcoding * process. To omit all sidecar captions, leave CaptionSources * blank.

*/ inline InputCaptions& WithCaptionSources(const Aws::Vector& value) { SetCaptionSources(value); return *this;} /** *

Source files for the input sidecar captions used during the transcoding * process. To omit all sidecar captions, leave CaptionSources * blank.

*/ inline InputCaptions& WithCaptionSources(Aws::Vector&& value) { SetCaptionSources(std::move(value)); return *this;} /** *

Source files for the input sidecar captions used during the transcoding * process. To omit all sidecar captions, leave CaptionSources * blank.

*/ inline InputCaptions& AddCaptionSources(const CaptionSource& value) { m_captionSourcesHasBeenSet = true; m_captionSources.push_back(value); return *this; } /** *

Source files for the input sidecar captions used during the transcoding * process. To omit all sidecar captions, leave CaptionSources * blank.

*/ inline InputCaptions& AddCaptionSources(CaptionSource&& value) { m_captionSourcesHasBeenSet = true; m_captionSources.push_back(std::move(value)); return *this; } private: Aws::String m_mergePolicy; bool m_mergePolicyHasBeenSet = false; Aws::Vector m_captionSources; bool m_captionSourcesHasBeenSet = false; }; } // namespace Model } // namespace ElasticTranscoder } // namespace Aws