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

Metadata information about an audio stream. An array of * AudioMetadata objects for the audio streams found in a stored video * is returned by GetSegmentDetection.

See Also:

AWS * API Reference

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

The audio codec used to encode or decode the audio stream.

*/ inline const Aws::String& GetCodec() const{ return m_codec; } /** *

The audio codec used to encode or decode the audio stream.

*/ inline bool CodecHasBeenSet() const { return m_codecHasBeenSet; } /** *

The audio codec used to encode or decode the audio stream.

*/ inline void SetCodec(const Aws::String& value) { m_codecHasBeenSet = true; m_codec = value; } /** *

The audio codec used to encode or decode the audio stream.

*/ inline void SetCodec(Aws::String&& value) { m_codecHasBeenSet = true; m_codec = std::move(value); } /** *

The audio codec used to encode or decode the audio stream.

*/ inline void SetCodec(const char* value) { m_codecHasBeenSet = true; m_codec.assign(value); } /** *

The audio codec used to encode or decode the audio stream.

*/ inline AudioMetadata& WithCodec(const Aws::String& value) { SetCodec(value); return *this;} /** *

The audio codec used to encode or decode the audio stream.

*/ inline AudioMetadata& WithCodec(Aws::String&& value) { SetCodec(std::move(value)); return *this;} /** *

The audio codec used to encode or decode the audio stream.

*/ inline AudioMetadata& WithCodec(const char* value) { SetCodec(value); return *this;} /** *

The duration of the audio stream in milliseconds.

*/ inline long long GetDurationMillis() const{ return m_durationMillis; } /** *

The duration of the audio stream in milliseconds.

*/ inline bool DurationMillisHasBeenSet() const { return m_durationMillisHasBeenSet; } /** *

The duration of the audio stream in milliseconds.

*/ inline void SetDurationMillis(long long value) { m_durationMillisHasBeenSet = true; m_durationMillis = value; } /** *

The duration of the audio stream in milliseconds.

*/ inline AudioMetadata& WithDurationMillis(long long value) { SetDurationMillis(value); return *this;} /** *

The sample rate for the audio stream.

*/ inline long long GetSampleRate() const{ return m_sampleRate; } /** *

The sample rate for the audio stream.

*/ inline bool SampleRateHasBeenSet() const { return m_sampleRateHasBeenSet; } /** *

The sample rate for the audio stream.

*/ inline void SetSampleRate(long long value) { m_sampleRateHasBeenSet = true; m_sampleRate = value; } /** *

The sample rate for the audio stream.

*/ inline AudioMetadata& WithSampleRate(long long value) { SetSampleRate(value); return *this;} /** *

The number of audio channels in the segment.

*/ inline long long GetNumberOfChannels() const{ return m_numberOfChannels; } /** *

The number of audio channels in the segment.

*/ inline bool NumberOfChannelsHasBeenSet() const { return m_numberOfChannelsHasBeenSet; } /** *

The number of audio channels in the segment.

*/ inline void SetNumberOfChannels(long long value) { m_numberOfChannelsHasBeenSet = true; m_numberOfChannels = value; } /** *

The number of audio channels in the segment.

*/ inline AudioMetadata& WithNumberOfChannels(long long value) { SetNumberOfChannels(value); return *this;} private: Aws::String m_codec; bool m_codecHasBeenSet = false; long long m_durationMillis; bool m_durationMillisHasBeenSet = false; long long m_sampleRate; bool m_sampleRateHasBeenSet = false; long long m_numberOfChannels; bool m_numberOfChannelsHasBeenSet = false; }; } // namespace Model } // namespace Rekognition } // namespace Aws