Class: Google::Apis::SpeechV1p1beta1::RecognitionConfig
- Inherits:
-
Object
- Object
- Google::Apis::SpeechV1p1beta1::RecognitionConfig
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/speech_v1p1beta1/classes.rb,
generated/google/apis/speech_v1p1beta1/representations.rb,
generated/google/apis/speech_v1p1beta1/representations.rb
Overview
Provides information to the recognizer that specifies how to process the request.
Instance Attribute Summary collapse
-
#alternative_language_codes ⇒ Array<String>
Optional A list of up to 3 additional BCP-47 language tags, listing possible alternative languages of the supplied audio.
-
#audio_channel_count ⇒ Fixnum
Optional The number of channels in the input audio data.
-
#diarization_config ⇒ Google::Apis::SpeechV1p1beta1::SpeakerDiarizationConfig
Optional Config to enable speaker diarization and set additional parameters to make diarization better suited for your application.
-
#diarization_speaker_count ⇒ Fixnum
Optional If set, specifies the estimated number of speakers in the conversation.
-
#enable_automatic_punctuation ⇒ Boolean
(also: #enable_automatic_punctuation?)
Optional If 'true', adds punctuation to recognition result hypotheses.
-
#enable_separate_recognition_per_channel ⇒ Boolean
(also: #enable_separate_recognition_per_channel?)
This needs to be set to
true
explicitly andaudio_channel_count
> 1 to get each channel recognized separately. -
#enable_speaker_diarization ⇒ Boolean
(also: #enable_speaker_diarization?)
Optional If 'true', enables speaker detection for each recognized word in the top alternative of the recognition result using a speaker_tag provided in the WordInfo.
-
#enable_word_confidence ⇒ Boolean
(also: #enable_word_confidence?)
Optional If
true
, the top result includes a list of words and the confidence for those words. -
#enable_word_time_offsets ⇒ Boolean
(also: #enable_word_time_offsets?)
Optional If
true
, the top result includes a list of words and the start and end time offsets (timestamps) for those words. -
#encoding ⇒ String
Encoding of audio data sent in all
RecognitionAudio
messages. -
#language_code ⇒ String
Required The language of the supplied audio as a BCP-47 language tag.
-
#max_alternatives ⇒ Fixnum
Optional Maximum number of recognition hypotheses to be returned.
-
#metadata ⇒ Google::Apis::SpeechV1p1beta1::RecognitionMetadata
Description of audio data to be recognized.
-
#model ⇒ String
Optional Which model to select for the given request.
-
#profanity_filter ⇒ Boolean
(also: #profanity_filter?)
Optional If set to
true
, the server will attempt to filter out profanities, replacing all but the initial character in each filtered word with asterisks, e.g. -
#sample_rate_hertz ⇒ Fixnum
Sample rate in Hertz of the audio data sent in all
RecognitionAudio
messages. -
#speech_contexts ⇒ Array<Google::Apis::SpeechV1p1beta1::SpeechContext>
Optional array of SpeechContext.
-
#use_enhanced ⇒ Boolean
(also: #use_enhanced?)
Optional Set to true to use an enhanced model for speech recognition.
Instance Method Summary collapse
-
#initialize(**args) ⇒ RecognitionConfig
constructor
A new instance of RecognitionConfig.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Core::JsonObjectSupport
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ RecognitionConfig
Returns a new instance of RecognitionConfig
488 489 490 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 488 def initialize(**args) update!(**args) end |
Instance Attribute Details
#alternative_language_codes ⇒ Array<String>
Optional A list of up to 3 additional
BCP-47 language tags,
listing possible alternative languages of the supplied audio.
See Language Support
for a list of the currently supported language codes.
If alternative languages are listed, recognition result will contain
recognition in the most likely language detected including the main
language_code. The recognition result will include the language tag
of the language detected in the audio.
Note: This feature is only supported for Voice Command and Voice Search
use cases and performance may vary for other use cases (e.g., phone call
transcription).
Corresponds to the JSON property alternativeLanguageCodes
291 292 293 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 291 def alternative_language_codes @alternative_language_codes end |
#audio_channel_count ⇒ Fixnum
Optional The number of channels in the input audio data.
ONLY set this for MULTI-CHANNEL recognition.
Valid values for LINEAR16 and FLAC are 1
-8
.
Valid values for OGG_OPUS are '1'-'254'.
Valid value for MULAW, AMR, AMR_WB and SPEEX_WITH_HEADER_BYTE is only 1
.
If 0
or omitted, defaults to one channel (mono).
Note: We only recognize the first channel by default.
To perform independent recognition on each channel set
enable_separate_recognition_per_channel
to 'true'.
Corresponds to the JSON property audioChannelCount
304 305 306 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 304 def audio_channel_count @audio_channel_count end |
#diarization_config ⇒ Google::Apis::SpeechV1p1beta1::SpeakerDiarizationConfig
Optional Config to enable speaker diarization and set additional
parameters to make diarization better suited for your application.
Note: When this is enabled, we send all the words from the beginning of the
audio for the top alternative in every consecutive STREAMING responses.
This is done in order to improve our speaker tags as our models learn to
identify the speakers in the conversation over time.
For non-streaming requests, the diarization results will be provided only
in the top alternative of the FINAL SpeechRecognitionResult.
Corresponds to the JSON property diarizationConfig
316 317 318 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 316 def diarization_config @diarization_config end |
#diarization_speaker_count ⇒ Fixnum
Optional
If set, specifies the estimated number of speakers in the conversation.
If not set, defaults to '2'.
Ignored unless enable_speaker_diarization is set to true."
Note: Use diarization_config instead. This field will be DEPRECATED soon.
Corresponds to the JSON property diarizationSpeakerCount
325 326 327 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 325 def diarization_speaker_count @diarization_speaker_count end |
#enable_automatic_punctuation ⇒ Boolean Also known as: enable_automatic_punctuation?
Optional If 'true', adds punctuation to recognition result hypotheses.
This feature is only available in select languages. Setting this for
requests in other languages has no effect at all.
The default 'false' value does not add punctuation to result hypotheses.
Note: This is currently offered as an experimental service, complimentary
to all users. In the future this may be exclusively available as a
premium feature.
Corresponds to the JSON property enableAutomaticPunctuation
336 337 338 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 336 def enable_automatic_punctuation @enable_automatic_punctuation end |
#enable_separate_recognition_per_channel ⇒ Boolean Also known as: enable_separate_recognition_per_channel?
This needs to be set to true
explicitly and audio_channel_count
> 1
to get each channel recognized separately. The recognition result will
contain a channel_tag
field to state which channel that result belongs
to. If this is not true, we will only recognize the first channel. The
request is billed cumulatively for all channels recognized:
audio_channel_count
multiplied by the length of the audio.
Corresponds to the JSON property enableSeparateRecognitionPerChannel
347 348 349 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 347 def enable_separate_recognition_per_channel @enable_separate_recognition_per_channel end |
#enable_speaker_diarization ⇒ Boolean Also known as: enable_speaker_diarization?
Optional If 'true', enables speaker detection for each recognized word in
the top alternative of the recognition result using a speaker_tag provided
in the WordInfo.
Note: Use diarization_config instead. This field will be DEPRECATED soon.
Corresponds to the JSON property enableSpeakerDiarization
356 357 358 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 356 def enable_speaker_diarization @enable_speaker_diarization end |
#enable_word_confidence ⇒ Boolean Also known as: enable_word_confidence?
Optional If true
, the top result includes a list of words and the
confidence for those words. If false
, no word-level confidence
information is returned. The default is false
.
Corresponds to the JSON property enableWordConfidence
364 365 366 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 364 def enable_word_confidence @enable_word_confidence end |
#enable_word_time_offsets ⇒ Boolean Also known as: enable_word_time_offsets?
Optional If true
, the top result includes a list of words and
the start and end time offsets (timestamps) for those words. If
false
, no word-level time offset information is returned. The default is
false
.
Corresponds to the JSON property enableWordTimeOffsets
373 374 375 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 373 def enable_word_time_offsets @enable_word_time_offsets end |
#encoding ⇒ String
Encoding of audio data sent in all RecognitionAudio
messages.
This field is optional for FLAC
and WAV
audio files and required
for all other audio formats. For details, see AudioEncoding.
Corresponds to the JSON property encoding
381 382 383 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 381 def encoding @encoding end |
#language_code ⇒ String
Required The language of the supplied audio as a
BCP-47 language tag.
Example: "en-US".
See Language Support
for a list of the currently supported language codes.
Corresponds to the JSON property languageCode
390 391 392 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 390 def language_code @language_code end |
#max_alternatives ⇒ Fixnum
Optional Maximum number of recognition hypotheses to be returned.
Specifically, the maximum number of SpeechRecognitionAlternative
messages
within each SpeechRecognitionResult
.
The server may return fewer than max_alternatives
.
Valid values are 0
-30
. A value of 0
or 1
will return a maximum of
one. If omitted, will return a maximum of one.
Corresponds to the JSON property maxAlternatives
400 401 402 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 400 def max_alternatives @max_alternatives end |
#metadata ⇒ Google::Apis::SpeechV1p1beta1::RecognitionMetadata
Description of audio data to be recognized.
Corresponds to the JSON property metadata
405 406 407 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 405 def @metadata end |
#model ⇒ String
Optional Which model to select for the given request. Select the model best suited to your domain to get best results. If a model is not explicitly specified, then we auto-select a model based on the parameters in the RecognitionConfig.
Model | Description |
command_and_search |
Best for short queries such as voice commands or voice search. |
phone_call |
Best for audio that originated from a phone call (typically recorded at an 8khz sampling rate). |
video |
Best for audio that originated from from video or includes multiple speakers. Ideally the audio is recorded at a 16khz or greater sampling rate. This is a premium model that costs more than the standard rate. |
default |
Best for audio that is not one of the specific audio models. For example, long-form audio. Ideally the audio is high-fidelity, recorded at a 16khz or greater sampling rate. |
Corresponds to the JSON property model
441 442 443 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 441 def model @model end |
#profanity_filter ⇒ Boolean Also known as: profanity_filter?
Optional If set to true
, the server will attempt to filter out
profanities, replacing all but the initial character in each filtered word
with asterisks, e.g. "f***". If set to false
or omitted, profanities
won't be filtered out.
Corresponds to the JSON property profanityFilter
449 450 451 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 449 def profanity_filter @profanity_filter end |
#sample_rate_hertz ⇒ Fixnum
Sample rate in Hertz of the audio data sent in all
RecognitionAudio
messages. Valid values are: 8000-48000.
16000 is optimal. For best results, set the sampling rate of the audio
source to 16000 Hz. If that's not possible, use the native sample rate of
the audio source (instead of re-sampling).
This field is optional for FLAC
and WAV
audio files and required
for all other audio formats. For details, see AudioEncoding.
Corresponds to the JSON property sampleRateHertz
461 462 463 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 461 def sample_rate_hertz @sample_rate_hertz end |
#speech_contexts ⇒ Array<Google::Apis::SpeechV1p1beta1::SpeechContext>
Optional array of SpeechContext.
A means to provide context to assist the speech recognition. For more
information, see Phrase Hints.
Corresponds to the JSON property speechContexts
468 469 470 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 468 def speech_contexts @speech_contexts end |
#use_enhanced ⇒ Boolean Also known as: use_enhanced?
Optional Set to true to use an enhanced model for speech recognition.
If use_enhanced
is set to true and the model
field is not set, then
an appropriate enhanced model is chosen if:
- project is eligible for requesting enhanced models
- an enhanced model exists for the audio
If
use_enhanced
is true and an enhanced version of the specified model does not exist, then the speech is recognized using the standard version of the specified model. Enhanced speech models require that you opt-in to data logging using instructions in the documentation. If you setuse_enhanced
to true and you have not enabled audio logging, then you will receive an error. Corresponds to the JSON propertyuseEnhanced
485 486 487 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 485 def use_enhanced @use_enhanced end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 |
# File 'generated/google/apis/speech_v1p1beta1/classes.rb', line 493 def update!(**args) @alternative_language_codes = args[:alternative_language_codes] if args.key?(:alternative_language_codes) @audio_channel_count = args[:audio_channel_count] if args.key?(:audio_channel_count) @diarization_config = args[:diarization_config] if args.key?(:diarization_config) @diarization_speaker_count = args[:diarization_speaker_count] if args.key?(:diarization_speaker_count) @enable_automatic_punctuation = args[:enable_automatic_punctuation] if args.key?(:enable_automatic_punctuation) @enable_separate_recognition_per_channel = args[:enable_separate_recognition_per_channel] if args.key?(:enable_separate_recognition_per_channel) @enable_speaker_diarization = args[:enable_speaker_diarization] if args.key?(:enable_speaker_diarization) @enable_word_confidence = args[:enable_word_confidence] if args.key?(:enable_word_confidence) @enable_word_time_offsets = args[:enable_word_time_offsets] if args.key?(:enable_word_time_offsets) @encoding = args[:encoding] if args.key?(:encoding) @language_code = args[:language_code] if args.key?(:language_code) @max_alternatives = args[:max_alternatives] if args.key?(:max_alternatives) @metadata = args[:metadata] if args.key?(:metadata) @model = args[:model] if args.key?(:model) @profanity_filter = args[:profanity_filter] if args.key?(:profanity_filter) @sample_rate_hertz = args[:sample_rate_hertz] if args.key?(:sample_rate_hertz) @speech_contexts = args[:speech_contexts] if args.key?(:speech_contexts) @use_enhanced = args[:use_enhanced] if args.key?(:use_enhanced) end |