/** * 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 TranscribeService { namespace Model { /** *

If using automatic language identification in your request and you want to * apply a custom language model, a custom vocabulary, or a custom vocabulary * filter, include LanguageIdSettings with the relevant sub-parameters * (VocabularyName, LanguageModelName, and * VocabularyFilterName). Note that multi-language identification * (IdentifyMultipleLanguages) doesn't support custom language * models.

LanguageIdSettings supports two to five language * codes. Each language code you include can have an associated custom language * model, custom vocabulary, and custom vocabulary filter. The language codes that * you specify must match the languages of the associated custom language models, * custom vocabularies, and custom vocabulary filters.

It's recommended that * you include LanguageOptions when using * LanguageIdSettings to ensure that the correct language dialect is * identified. For example, if you specify a custom vocabulary that is in * en-US but Amazon Transcribe determines that the language spoken in * your media is en-AU, your custom vocabulary is not applied * to your transcription. If you include LanguageOptions and include * en-US as the only English language dialect, your custom vocabulary * is applied to your transcription.

If you want to include a custom * language model with your request but do not want to use automatic * language identification, use instead the parameter with the * LanguageModelName sub-parameter. If you want to include a custom * vocabulary or a custom vocabulary filter (or both) with your request but do * not want to use automatic language identification, use instead the * parameter with the VocabularyName or * VocabularyFilterName (or both) sub-parameter.

See * Also:

AWS * API Reference

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

The name of the custom vocabulary you want to use when processing your * transcription job. Custom vocabulary names are case sensitive.

The * language of the specified custom vocabulary must match the language code that * you specify in your transcription request. If the languages don't match, the * custom vocabulary isn't applied. There are no errors or warnings associated with * a language mismatch.

*/ inline const Aws::String& GetVocabularyName() const{ return m_vocabularyName; } /** *

The name of the custom vocabulary you want to use when processing your * transcription job. Custom vocabulary names are case sensitive.

The * language of the specified custom vocabulary must match the language code that * you specify in your transcription request. If the languages don't match, the * custom vocabulary isn't applied. There are no errors or warnings associated with * a language mismatch.

*/ inline bool VocabularyNameHasBeenSet() const { return m_vocabularyNameHasBeenSet; } /** *

The name of the custom vocabulary you want to use when processing your * transcription job. Custom vocabulary names are case sensitive.

The * language of the specified custom vocabulary must match the language code that * you specify in your transcription request. If the languages don't match, the * custom vocabulary isn't applied. There are no errors or warnings associated with * a language mismatch.

*/ inline void SetVocabularyName(const Aws::String& value) { m_vocabularyNameHasBeenSet = true; m_vocabularyName = value; } /** *

The name of the custom vocabulary you want to use when processing your * transcription job. Custom vocabulary names are case sensitive.

The * language of the specified custom vocabulary must match the language code that * you specify in your transcription request. If the languages don't match, the * custom vocabulary isn't applied. There are no errors or warnings associated with * a language mismatch.

*/ inline void SetVocabularyName(Aws::String&& value) { m_vocabularyNameHasBeenSet = true; m_vocabularyName = std::move(value); } /** *

The name of the custom vocabulary you want to use when processing your * transcription job. Custom vocabulary names are case sensitive.

The * language of the specified custom vocabulary must match the language code that * you specify in your transcription request. If the languages don't match, the * custom vocabulary isn't applied. There are no errors or warnings associated with * a language mismatch.

*/ inline void SetVocabularyName(const char* value) { m_vocabularyNameHasBeenSet = true; m_vocabularyName.assign(value); } /** *

The name of the custom vocabulary you want to use when processing your * transcription job. Custom vocabulary names are case sensitive.

The * language of the specified custom vocabulary must match the language code that * you specify in your transcription request. If the languages don't match, the * custom vocabulary isn't applied. There are no errors or warnings associated with * a language mismatch.

*/ inline LanguageIdSettings& WithVocabularyName(const Aws::String& value) { SetVocabularyName(value); return *this;} /** *

The name of the custom vocabulary you want to use when processing your * transcription job. Custom vocabulary names are case sensitive.

The * language of the specified custom vocabulary must match the language code that * you specify in your transcription request. If the languages don't match, the * custom vocabulary isn't applied. There are no errors or warnings associated with * a language mismatch.

*/ inline LanguageIdSettings& WithVocabularyName(Aws::String&& value) { SetVocabularyName(std::move(value)); return *this;} /** *

The name of the custom vocabulary you want to use when processing your * transcription job. Custom vocabulary names are case sensitive.

The * language of the specified custom vocabulary must match the language code that * you specify in your transcription request. If the languages don't match, the * custom vocabulary isn't applied. There are no errors or warnings associated with * a language mismatch.

*/ inline LanguageIdSettings& WithVocabularyName(const char* value) { SetVocabularyName(value); return *this;} /** *

The name of the custom vocabulary filter you want to use when processing your * transcription job. Custom vocabulary filter names are case sensitive.

The * language of the specified custom vocabulary filter must match the language code * that you specify in your transcription request. If the languages don't match, * the custom vocabulary filter isn't applied. There are no errors or warnings * associated with a language mismatch.

Note that if you include * VocabularyFilterName in your request, you must also include * VocabularyFilterMethod.

*/ inline const Aws::String& GetVocabularyFilterName() const{ return m_vocabularyFilterName; } /** *

The name of the custom vocabulary filter you want to use when processing your * transcription job. Custom vocabulary filter names are case sensitive.

The * language of the specified custom vocabulary filter must match the language code * that you specify in your transcription request. If the languages don't match, * the custom vocabulary filter isn't applied. There are no errors or warnings * associated with a language mismatch.

Note that if you include * VocabularyFilterName in your request, you must also include * VocabularyFilterMethod.

*/ inline bool VocabularyFilterNameHasBeenSet() const { return m_vocabularyFilterNameHasBeenSet; } /** *

The name of the custom vocabulary filter you want to use when processing your * transcription job. Custom vocabulary filter names are case sensitive.

The * language of the specified custom vocabulary filter must match the language code * that you specify in your transcription request. If the languages don't match, * the custom vocabulary filter isn't applied. There are no errors or warnings * associated with a language mismatch.

Note that if you include * VocabularyFilterName in your request, you must also include * VocabularyFilterMethod.

*/ inline void SetVocabularyFilterName(const Aws::String& value) { m_vocabularyFilterNameHasBeenSet = true; m_vocabularyFilterName = value; } /** *

The name of the custom vocabulary filter you want to use when processing your * transcription job. Custom vocabulary filter names are case sensitive.

The * language of the specified custom vocabulary filter must match the language code * that you specify in your transcription request. If the languages don't match, * the custom vocabulary filter isn't applied. There are no errors or warnings * associated with a language mismatch.

Note that if you include * VocabularyFilterName in your request, you must also include * VocabularyFilterMethod.

*/ inline void SetVocabularyFilterName(Aws::String&& value) { m_vocabularyFilterNameHasBeenSet = true; m_vocabularyFilterName = std::move(value); } /** *

The name of the custom vocabulary filter you want to use when processing your * transcription job. Custom vocabulary filter names are case sensitive.

The * language of the specified custom vocabulary filter must match the language code * that you specify in your transcription request. If the languages don't match, * the custom vocabulary filter isn't applied. There are no errors or warnings * associated with a language mismatch.

Note that if you include * VocabularyFilterName in your request, you must also include * VocabularyFilterMethod.

*/ inline void SetVocabularyFilterName(const char* value) { m_vocabularyFilterNameHasBeenSet = true; m_vocabularyFilterName.assign(value); } /** *

The name of the custom vocabulary filter you want to use when processing your * transcription job. Custom vocabulary filter names are case sensitive.

The * language of the specified custom vocabulary filter must match the language code * that you specify in your transcription request. If the languages don't match, * the custom vocabulary filter isn't applied. There are no errors or warnings * associated with a language mismatch.

Note that if you include * VocabularyFilterName in your request, you must also include * VocabularyFilterMethod.

*/ inline LanguageIdSettings& WithVocabularyFilterName(const Aws::String& value) { SetVocabularyFilterName(value); return *this;} /** *

The name of the custom vocabulary filter you want to use when processing your * transcription job. Custom vocabulary filter names are case sensitive.

The * language of the specified custom vocabulary filter must match the language code * that you specify in your transcription request. If the languages don't match, * the custom vocabulary filter isn't applied. There are no errors or warnings * associated with a language mismatch.

Note that if you include * VocabularyFilterName in your request, you must also include * VocabularyFilterMethod.

*/ inline LanguageIdSettings& WithVocabularyFilterName(Aws::String&& value) { SetVocabularyFilterName(std::move(value)); return *this;} /** *

The name of the custom vocabulary filter you want to use when processing your * transcription job. Custom vocabulary filter names are case sensitive.

The * language of the specified custom vocabulary filter must match the language code * that you specify in your transcription request. If the languages don't match, * the custom vocabulary filter isn't applied. There are no errors or warnings * associated with a language mismatch.

Note that if you include * VocabularyFilterName in your request, you must also include * VocabularyFilterMethod.

*/ inline LanguageIdSettings& WithVocabularyFilterName(const char* value) { SetVocabularyFilterName(value); return *this;} /** *

The name of the custom language model you want to use when processing your * transcription job. Note that custom language model names are case sensitive.

*

The language of the specified custom language model must match the language * code that you specify in your transcription request. If the languages don't * match, the custom language model isn't applied. There are no errors or warnings * associated with a language mismatch.

*/ inline const Aws::String& GetLanguageModelName() const{ return m_languageModelName; } /** *

The name of the custom language model you want to use when processing your * transcription job. Note that custom language model names are case sensitive.

*

The language of the specified custom language model must match the language * code that you specify in your transcription request. If the languages don't * match, the custom language model isn't applied. There are no errors or warnings * associated with a language mismatch.

*/ inline bool LanguageModelNameHasBeenSet() const { return m_languageModelNameHasBeenSet; } /** *

The name of the custom language model you want to use when processing your * transcription job. Note that custom language model names are case sensitive.

*

The language of the specified custom language model must match the language * code that you specify in your transcription request. If the languages don't * match, the custom language model isn't applied. There are no errors or warnings * associated with a language mismatch.

*/ inline void SetLanguageModelName(const Aws::String& value) { m_languageModelNameHasBeenSet = true; m_languageModelName = value; } /** *

The name of the custom language model you want to use when processing your * transcription job. Note that custom language model names are case sensitive.

*

The language of the specified custom language model must match the language * code that you specify in your transcription request. If the languages don't * match, the custom language model isn't applied. There are no errors or warnings * associated with a language mismatch.

*/ inline void SetLanguageModelName(Aws::String&& value) { m_languageModelNameHasBeenSet = true; m_languageModelName = std::move(value); } /** *

The name of the custom language model you want to use when processing your * transcription job. Note that custom language model names are case sensitive.

*

The language of the specified custom language model must match the language * code that you specify in your transcription request. If the languages don't * match, the custom language model isn't applied. There are no errors or warnings * associated with a language mismatch.

*/ inline void SetLanguageModelName(const char* value) { m_languageModelNameHasBeenSet = true; m_languageModelName.assign(value); } /** *

The name of the custom language model you want to use when processing your * transcription job. Note that custom language model names are case sensitive.

*

The language of the specified custom language model must match the language * code that you specify in your transcription request. If the languages don't * match, the custom language model isn't applied. There are no errors or warnings * associated with a language mismatch.

*/ inline LanguageIdSettings& WithLanguageModelName(const Aws::String& value) { SetLanguageModelName(value); return *this;} /** *

The name of the custom language model you want to use when processing your * transcription job. Note that custom language model names are case sensitive.

*

The language of the specified custom language model must match the language * code that you specify in your transcription request. If the languages don't * match, the custom language model isn't applied. There are no errors or warnings * associated with a language mismatch.

*/ inline LanguageIdSettings& WithLanguageModelName(Aws::String&& value) { SetLanguageModelName(std::move(value)); return *this;} /** *

The name of the custom language model you want to use when processing your * transcription job. Note that custom language model names are case sensitive.

*

The language of the specified custom language model must match the language * code that you specify in your transcription request. If the languages don't * match, the custom language model isn't applied. There are no errors or warnings * associated with a language mismatch.

*/ inline LanguageIdSettings& WithLanguageModelName(const char* value) { SetLanguageModelName(value); return *this;} private: Aws::String m_vocabularyName; bool m_vocabularyNameHasBeenSet = false; Aws::String m_vocabularyFilterName; bool m_vocabularyFilterNameHasBeenSet = false; Aws::String m_languageModelName; bool m_languageModelNameHasBeenSet = false; }; } // namespace Model } // namespace TranscribeService } // namespace Aws