RecognitionConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)
Provides information to the recognizer that specifies how to process the request.
Attributes | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Name | Description | ||||||||||||||||||
encoding |
google.cloud.speech_v1.types.RecognitionConfig.AudioEncoding
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.
| ||||||||||||||||||
sample_rate_hertz |
int
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, but is required for all other audio formats. For
details, see
AudioEncoding.
| ||||||||||||||||||
audio_channel_count |
int
The number of channels in the input audio data. ONLY set this for MULTI-CHANNEL recognition. Valid values for LINEAR16, OGG_OPUS and FLAC are 1 -8 . 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'.
| ||||||||||||||||||
enable_separate_recognition_per_channel |
bool
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.
| ||||||||||||||||||
language_code |
str
Required. The language of the supplied audio as a BCP-47 __
language tag. Example: "en-US". See `Language
Support | ||||||||||||||||||
alternative_language_codes |
MutableSequence[str]
A list of up to 3 additional BCP-47 __
language tags, listing possible alternative languages of the
supplied audio. See `Language
Support | ||||||||||||||||||
max_alternatives |
int
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.
| ||||||||||||||||||
profanity_filter |
bool
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.
| ||||||||||||||||||
adaptation |
google.cloud.speech_v1.types.SpeechAdaptation
Speech adaptation configuration improves the accuracy of speech recognition. For more information, see the `speech adaptation | ||||||||||||||||||
transcript_normalization |
google.cloud.speech_v1.types.TranscriptNormalization
Optional. Use transcription normalization to automatically replace parts of the transcript with phrases of your choosing. For StreamingRecognize, this normalization only applies to stable partial transcripts (stability > 0.8) and final transcripts. | ||||||||||||||||||
speech_contexts |
MutableSequence[google.cloud.speech_v1.types.SpeechContext]
Array of SpeechContext. A means to provide context to assist the speech recognition. For more information, see `speech adaptation | ||||||||||||||||||
enable_word_time_offsets |
bool
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 .
| ||||||||||||||||||
enable_word_confidence |
bool
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 .
| ||||||||||||||||||
enable_automatic_punctuation |
bool
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. | ||||||||||||||||||
enable_spoken_punctuation |
google.protobuf.wrappers_pb2.BoolValue
The spoken punctuation behavior for the call If not set, uses default behavior based on model of choice e.g. command_and_search will enable spoken punctuation by default If 'true', replaces spoken punctuation with the corresponding symbols in the request. For example, "how are you question mark" becomes "how are you?". See https://cloud.google.com/speech-to-text/docs/spoken-punctuation for support. If 'false', spoken punctuation is not replaced. | ||||||||||||||||||
enable_spoken_emojis |
google.protobuf.wrappers_pb2.BoolValue
The spoken emoji behavior for the call If not set, uses default behavior based on model of choice If 'true', adds spoken emoji formatting for the request. This will replace spoken emojis with the corresponding Unicode symbols in the final transcript. If 'false', spoken emojis are not replaced. | ||||||||||||||||||
diarization_config |
google.cloud.speech_v1.types.SpeakerDiarizationConfig
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. | ||||||||||||||||||
metadata |
google.cloud.speech_v1.types.RecognitionMetadata
Metadata regarding this request. | ||||||||||||||||||
model |
str
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. .. raw:: html
| ||||||||||||||||||
use_enhanced |
bool
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
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.
|
Classes
AudioEncoding
AudioEncoding(value)
The encoding of the audio data sent in the request.
All encodings support only 1 channel (mono) audio, unless the
audio_channel_count
and
enable_separate_recognition_per_channel
fields are set.
For best results, the audio source should be captured and
transmitted using a lossless encoding (FLAC
or LINEAR16
).
The accuracy of the speech recognition can be reduced if lossy
codecs are used to capture or transmit audio, particularly if
background noise is present. Lossy codecs include MULAW
,
AMR
, AMR_WB
, OGG_OPUS
, SPEEX_WITH_HEADER_BYTE
,
MP3
, and WEBM_OPUS
.
The FLAC
and WAV
audio file formats include a header that
describes the included audio content. You can request recognition
for WAV
files that contain either LINEAR16
or MULAW
encoded audio. If you send FLAC
or WAV
audio file format in
your request, you do not need to specify an AudioEncoding
; the
audio encoding format is determined from the file header. If you
specify an AudioEncoding
when you send send FLAC
or WAV
audio, the encoding configuration must match the encoding described
in the audio header; otherwise the request returns an
google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]
error code.
Values:
ENCODING_UNSPECIFIED (0):
Not specified.
LINEAR16 (1):
Uncompressed 16-bit signed little-endian
samples (Linear PCM).
FLAC (2):
FLAC
(Free Lossless Audio Codec) is the recommended
encoding because it is lossless--therefore recognition is
not compromised--and requires only about half the bandwidth
of LINEAR16
. FLAC
stream encoding supports 16-bit
and 24-bit samples, however, not all fields in
STREAMINFO
are supported.
MULAW (3):
8-bit samples that compand 14-bit audio
samples using G.711 PCMU/mu-law.
AMR (4):
Adaptive Multi-Rate Narrowband codec. sample_rate_hertz
must be 8000.
AMR_WB (5):
Adaptive Multi-Rate Wideband codec. sample_rate_hertz
must be 16000.
OGG_OPUS (6):
Opus encoded audio frames in Ogg container
(OggOpus <https://wiki.xiph.org/OggOpus>
).
sample_rate_hertz
must be one of 8000, 12000, 16000,
24000, or 48000.
SPEEX_WITH_HEADER_BYTE (7):
Although the use of lossy encodings is not recommended, if a
very low bitrate encoding is required, OGG_OPUS
is
highly preferred over Speex encoding. The
Speex <https://speex.org/>
encoding supported by Cloud
Speech API has a header byte in each block, as in MIME type
audio/x-speex-with-header-byte
. It is a variant of the
RTP Speex encoding defined in RFC
5574 <https://tools.ietf.org/html/rfc5574>
__. The stream is
a sequence of blocks, one block per RTP packet. Each block
starts with a byte containing the length of the block, in
bytes, followed by one or more frames of Speex data, padded
to an integral number of bytes (octets) as specified in RFC
- In other words, each RTP header is replaced with a
single byte containing the block length. Only Speex wideband
is supported.
sample_rate_hertz
must be 16000. MP3 (8): MP3 audio. MP3 encoding is a Beta feature and only available in v1p1beta1. Support all standard MP3 bitrates (which range from 32-320 kbps). When using this encoding,sample_rate_hertz
has to match the sample rate of the file being used. WEBM_OPUS (9): Opus encoded audio frames in WebM container (OggOpus <https://wiki.xiph.org/OggOpus>
__).sample_rate_hertz
must be one of 8000, 12000, 16000, 24000, or 48000.