/*
* 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 transcribe-2017-10-26.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.TranscribeService.Model
{
///
/// Allows additional optional settings in your request, including channel identification,
/// alternative transcriptions, and speaker partitioning. You can use that to apply custom
/// vocabularies to your transcription job.
///
public partial class Settings
{
private bool? _channelIdentification;
private int? _maxAlternatives;
private int? _maxSpeakerLabels;
private bool? _showAlternatives;
private bool? _showSpeakerLabels;
private VocabularyFilterMethod _vocabularyFilterMethod;
private string _vocabularyFilterName;
private string _vocabularyName;
///
/// Gets and sets the property ChannelIdentification.
///
/// Enables channel identification in multi-channel audio.
///
///
///
/// Channel identification transcribes the audio on each channel independently, then appends
/// the output for each channel into one transcript.
///
///
///
/// You can't include both ShowSpeakerLabels
and ChannelIdentification
/// in the same request. Including both parameters returns a BadRequestException
.
///
///
///
/// For more information, see Transcribing
/// multi-channel audio.
///
///
public bool ChannelIdentification
{
get { return this._channelIdentification.GetValueOrDefault(); }
set { this._channelIdentification = value; }
}
// Check to see if ChannelIdentification property is set
internal bool IsSetChannelIdentification()
{
return this._channelIdentification.HasValue;
}
///
/// Gets and sets the property MaxAlternatives.
///
/// Indicate the maximum number of alternative transcriptions you want Amazon Transcribe
/// to include in your transcript.
///
///
///
/// If you select a number greater than the number of alternative transcriptions generated
/// by Amazon Transcribe, only the actual number of alternative transcriptions are included.
///
///
///
/// If you include MaxAlternatives
in your request, you must also include
/// ShowAlternatives
with a value of true
.
///
///
///
/// For more information, see Alternative
/// transcriptions.
///
///
[AWSProperty(Min=2, Max=10)]
public int MaxAlternatives
{
get { return this._maxAlternatives.GetValueOrDefault(); }
set { this._maxAlternatives = value; }
}
// Check to see if MaxAlternatives property is set
internal bool IsSetMaxAlternatives()
{
return this._maxAlternatives.HasValue;
}
///
/// Gets and sets the property MaxSpeakerLabels.
///
/// Specify the maximum number of speakers you want to partition in your media.
///
///
///
/// Note that if your media contains more speakers than the specified number, multiple
/// speakers are treated as a single speaker.
///
///
///
/// If you specify the MaxSpeakerLabels
field, you must set the ShowSpeakerLabels
/// field to true.
///
///
[AWSProperty(Min=2, Max=10)]
public int MaxSpeakerLabels
{
get { return this._maxSpeakerLabels.GetValueOrDefault(); }
set { this._maxSpeakerLabels = value; }
}
// Check to see if MaxSpeakerLabels property is set
internal bool IsSetMaxSpeakerLabels()
{
return this._maxSpeakerLabels.HasValue;
}
///
/// Gets and sets the property ShowAlternatives.
///
/// To include alternative transcriptions within your transcription output, include ShowAlternatives
/// in your transcription request.
///
///
///
/// If you have multi-channel audio and do not enable channel identification, your audio
/// is transcribed in a continuous manner and your transcript does not separate the speech
/// by channel.
///
///
///
/// If you include ShowAlternatives
, you must also include MaxAlternatives
,
/// which is the maximum number of alternative transcriptions you want Amazon Transcribe
/// to generate.
///
///
///
/// For more information, see Alternative
/// transcriptions.
///
///
public bool ShowAlternatives
{
get { return this._showAlternatives.GetValueOrDefault(); }
set { this._showAlternatives = value; }
}
// Check to see if ShowAlternatives property is set
internal bool IsSetShowAlternatives()
{
return this._showAlternatives.HasValue;
}
///
/// Gets and sets the property ShowSpeakerLabels.
///
/// Enables speaker partitioning (diarization) in your transcription output. Speaker partitioning
/// labels the speech from individual speakers in your media file.
///
///
///
/// If you enable ShowSpeakerLabels
in your request, you must also include
/// MaxSpeakerLabels
.
///
///
///
/// You can't include both ShowSpeakerLabels
and ChannelIdentification
/// in the same request. Including both parameters returns a BadRequestException
.
///
///
///
/// For more information, see Partitioning
/// speakers (diarization).
///
///
public bool ShowSpeakerLabels
{
get { return this._showSpeakerLabels.GetValueOrDefault(); }
set { this._showSpeakerLabels = value; }
}
// Check to see if ShowSpeakerLabels property is set
internal bool IsSetShowSpeakerLabels()
{
return this._showSpeakerLabels.HasValue;
}
///
/// Gets and sets the property VocabularyFilterMethod.
///
/// Specify how you want your custom vocabulary filter applied to your transcript.
///
///
///
/// To replace words with ***
, choose mask
.
///
///
///
/// To delete words, choose remove
.
///
///
///
/// To flag words without changing them, choose tag
.
///
///
public VocabularyFilterMethod VocabularyFilterMethod
{
get { return this._vocabularyFilterMethod; }
set { this._vocabularyFilterMethod = value; }
}
// Check to see if VocabularyFilterMethod property is set
internal bool IsSetVocabularyFilterMethod()
{
return this._vocabularyFilterMethod != null;
}
///
/// Gets and sets the property VocabularyFilterName.
///
/// The name of the custom vocabulary filter you want to use in your transcription job
/// request. This name is case sensitive, cannot contain spaces, and must be unique within
/// an Amazon Web Services account.
///
///
///
/// Note that if you include VocabularyFilterName
in your request, you must
/// also include VocabularyFilterMethod
.
///
///
[AWSProperty(Min=1, Max=200)]
public string VocabularyFilterName
{
get { return this._vocabularyFilterName; }
set { this._vocabularyFilterName = value; }
}
// Check to see if VocabularyFilterName property is set
internal bool IsSetVocabularyFilterName()
{
return this._vocabularyFilterName != null;
}
///
/// Gets and sets the property VocabularyName.
///
/// The name of the custom vocabulary you want to use in your transcription job request.
/// This name is case sensitive, cannot contain spaces, and must be unique within an Amazon
/// Web Services account.
///
///
[AWSProperty(Min=1, Max=200)]
public string VocabularyName
{
get { return this._vocabularyName; }
set { this._vocabularyName = value; }
}
// Check to see if VocabularyName property is set
internal bool IsSetVocabularyName()
{
return this._vocabularyName != null;
}
}
}