1// Copyright 2019 Google LLC.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14//
15
16// Code generated by protoc-gen-go. DO NOT EDIT.
17// versions:
18// 	protoc-gen-go v1.22.0
19// 	protoc        v3.11.2
20// source: google/cloud/speech/v1/cloud_speech.proto
21
22package speech
23
24import (
25	context "context"
26	reflect "reflect"
27	sync "sync"
28
29	proto "github.com/golang/protobuf/proto"
30	_ "github.com/golang/protobuf/ptypes/any"
31	duration "github.com/golang/protobuf/ptypes/duration"
32	timestamp "github.com/golang/protobuf/ptypes/timestamp"
33	_ "google.golang.org/genproto/googleapis/api/annotations"
34	longrunning "google.golang.org/genproto/googleapis/longrunning"
35	status "google.golang.org/genproto/googleapis/rpc/status"
36	grpc "google.golang.org/grpc"
37	codes "google.golang.org/grpc/codes"
38	status1 "google.golang.org/grpc/status"
39	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
40	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
41)
42
43const (
44	// Verify that this generated code is sufficiently up-to-date.
45	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
46	// Verify that runtime/protoimpl is sufficiently up-to-date.
47	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
48)
49
50// This is a compile-time assertion that a sufficiently up-to-date version
51// of the legacy proto package is being used.
52const _ = proto.ProtoPackageIsVersion4
53
54// The encoding of the audio data sent in the request.
55//
56// All encodings support only 1 channel (mono) audio, unless the
57// `audio_channel_count` and `enable_separate_recognition_per_channel` fields
58// are set.
59//
60// For best results, the audio source should be captured and transmitted using
61// a lossless encoding (`FLAC` or `LINEAR16`). The accuracy of the speech
62// recognition can be reduced if lossy codecs are used to capture or transmit
63// audio, particularly if background noise is present. Lossy codecs include
64// `MULAW`, `AMR`, `AMR_WB`, `OGG_OPUS`, `SPEEX_WITH_HEADER_BYTE`, and `MP3`.
65//
66// The `FLAC` and `WAV` audio file formats include a header that describes the
67// included audio content. You can request recognition for `WAV` files that
68// contain either `LINEAR16` or `MULAW` encoded audio.
69// If you send `FLAC` or `WAV` audio file format in
70// your request, you do not need to specify an `AudioEncoding`; the audio
71// encoding format is determined from the file header. If you specify
72// an `AudioEncoding` when you send  send `FLAC` or `WAV` audio, the
73// encoding configuration must match the encoding described in the audio
74// header; otherwise the request returns an
75// [google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT] error code.
76type RecognitionConfig_AudioEncoding int32
77
78const (
79	// Not specified.
80	RecognitionConfig_ENCODING_UNSPECIFIED RecognitionConfig_AudioEncoding = 0
81	// Uncompressed 16-bit signed little-endian samples (Linear PCM).
82	RecognitionConfig_LINEAR16 RecognitionConfig_AudioEncoding = 1
83	// `FLAC` (Free Lossless Audio
84	// Codec) is the recommended encoding because it is
85	// lossless--therefore recognition is not compromised--and
86	// requires only about half the bandwidth of `LINEAR16`. `FLAC` stream
87	// encoding supports 16-bit and 24-bit samples, however, not all fields in
88	// `STREAMINFO` are supported.
89	RecognitionConfig_FLAC RecognitionConfig_AudioEncoding = 2
90	// 8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.
91	RecognitionConfig_MULAW RecognitionConfig_AudioEncoding = 3
92	// Adaptive Multi-Rate Narrowband codec. `sample_rate_hertz` must be 8000.
93	RecognitionConfig_AMR RecognitionConfig_AudioEncoding = 4
94	// Adaptive Multi-Rate Wideband codec. `sample_rate_hertz` must be 16000.
95	RecognitionConfig_AMR_WB RecognitionConfig_AudioEncoding = 5
96	// Opus encoded audio frames in Ogg container
97	// ([OggOpus](https://wiki.xiph.org/OggOpus)).
98	// `sample_rate_hertz` must be one of 8000, 12000, 16000, 24000, or 48000.
99	RecognitionConfig_OGG_OPUS RecognitionConfig_AudioEncoding = 6
100	// Although the use of lossy encodings is not recommended, if a very low
101	// bitrate encoding is required, `OGG_OPUS` is highly preferred over
102	// Speex encoding. The [Speex](https://speex.org/)  encoding supported by
103	// Cloud Speech API has a header byte in each block, as in MIME type
104	// `audio/x-speex-with-header-byte`.
105	// It is a variant of the RTP Speex encoding defined in
106	// [RFC 5574](https://tools.ietf.org/html/rfc5574).
107	// The stream is a sequence of blocks, one block per RTP packet. Each block
108	// starts with a byte containing the length of the block, in bytes, followed
109	// by one or more frames of Speex data, padded to an integral number of
110	// bytes (octets) as specified in RFC 5574. In other words, each RTP header
111	// is replaced with a single byte containing the block length. Only Speex
112	// wideband is supported. `sample_rate_hertz` must be 16000.
113	RecognitionConfig_SPEEX_WITH_HEADER_BYTE RecognitionConfig_AudioEncoding = 7
114)
115
116// Enum value maps for RecognitionConfig_AudioEncoding.
117var (
118	RecognitionConfig_AudioEncoding_name = map[int32]string{
119		0: "ENCODING_UNSPECIFIED",
120		1: "LINEAR16",
121		2: "FLAC",
122		3: "MULAW",
123		4: "AMR",
124		5: "AMR_WB",
125		6: "OGG_OPUS",
126		7: "SPEEX_WITH_HEADER_BYTE",
127	}
128	RecognitionConfig_AudioEncoding_value = map[string]int32{
129		"ENCODING_UNSPECIFIED":   0,
130		"LINEAR16":               1,
131		"FLAC":                   2,
132		"MULAW":                  3,
133		"AMR":                    4,
134		"AMR_WB":                 5,
135		"OGG_OPUS":               6,
136		"SPEEX_WITH_HEADER_BYTE": 7,
137	}
138)
139
140func (x RecognitionConfig_AudioEncoding) Enum() *RecognitionConfig_AudioEncoding {
141	p := new(RecognitionConfig_AudioEncoding)
142	*p = x
143	return p
144}
145
146func (x RecognitionConfig_AudioEncoding) String() string {
147	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
148}
149
150func (RecognitionConfig_AudioEncoding) Descriptor() protoreflect.EnumDescriptor {
151	return file_google_cloud_speech_v1_cloud_speech_proto_enumTypes[0].Descriptor()
152}
153
154func (RecognitionConfig_AudioEncoding) Type() protoreflect.EnumType {
155	return &file_google_cloud_speech_v1_cloud_speech_proto_enumTypes[0]
156}
157
158func (x RecognitionConfig_AudioEncoding) Number() protoreflect.EnumNumber {
159	return protoreflect.EnumNumber(x)
160}
161
162// Deprecated: Use RecognitionConfig_AudioEncoding.Descriptor instead.
163func (RecognitionConfig_AudioEncoding) EnumDescriptor() ([]byte, []int) {
164	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{4, 0}
165}
166
167// Use case categories that the audio recognition request can be described
168// by.
169type RecognitionMetadata_InteractionType int32
170
171const (
172	// Use case is either unknown or is something other than one of the other
173	// values below.
174	RecognitionMetadata_INTERACTION_TYPE_UNSPECIFIED RecognitionMetadata_InteractionType = 0
175	// Multiple people in a conversation or discussion. For example in a
176	// meeting with two or more people actively participating. Typically
177	// all the primary people speaking would be in the same room (if not,
178	// see PHONE_CALL)
179	RecognitionMetadata_DISCUSSION RecognitionMetadata_InteractionType = 1
180	// One or more persons lecturing or presenting to others, mostly
181	// uninterrupted.
182	RecognitionMetadata_PRESENTATION RecognitionMetadata_InteractionType = 2
183	// A phone-call or video-conference in which two or more people, who are
184	// not in the same room, are actively participating.
185	RecognitionMetadata_PHONE_CALL RecognitionMetadata_InteractionType = 3
186	// A recorded message intended for another person to listen to.
187	RecognitionMetadata_VOICEMAIL RecognitionMetadata_InteractionType = 4
188	// Professionally produced audio (eg. TV Show, Podcast).
189	RecognitionMetadata_PROFESSIONALLY_PRODUCED RecognitionMetadata_InteractionType = 5
190	// Transcribe spoken questions and queries into text.
191	RecognitionMetadata_VOICE_SEARCH RecognitionMetadata_InteractionType = 6
192	// Transcribe voice commands, such as for controlling a device.
193	RecognitionMetadata_VOICE_COMMAND RecognitionMetadata_InteractionType = 7
194	// Transcribe speech to text to create a written document, such as a
195	// text-message, email or report.
196	RecognitionMetadata_DICTATION RecognitionMetadata_InteractionType = 8
197)
198
199// Enum value maps for RecognitionMetadata_InteractionType.
200var (
201	RecognitionMetadata_InteractionType_name = map[int32]string{
202		0: "INTERACTION_TYPE_UNSPECIFIED",
203		1: "DISCUSSION",
204		2: "PRESENTATION",
205		3: "PHONE_CALL",
206		4: "VOICEMAIL",
207		5: "PROFESSIONALLY_PRODUCED",
208		6: "VOICE_SEARCH",
209		7: "VOICE_COMMAND",
210		8: "DICTATION",
211	}
212	RecognitionMetadata_InteractionType_value = map[string]int32{
213		"INTERACTION_TYPE_UNSPECIFIED": 0,
214		"DISCUSSION":                   1,
215		"PRESENTATION":                 2,
216		"PHONE_CALL":                   3,
217		"VOICEMAIL":                    4,
218		"PROFESSIONALLY_PRODUCED":      5,
219		"VOICE_SEARCH":                 6,
220		"VOICE_COMMAND":                7,
221		"DICTATION":                    8,
222	}
223)
224
225func (x RecognitionMetadata_InteractionType) Enum() *RecognitionMetadata_InteractionType {
226	p := new(RecognitionMetadata_InteractionType)
227	*p = x
228	return p
229}
230
231func (x RecognitionMetadata_InteractionType) String() string {
232	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
233}
234
235func (RecognitionMetadata_InteractionType) Descriptor() protoreflect.EnumDescriptor {
236	return file_google_cloud_speech_v1_cloud_speech_proto_enumTypes[1].Descriptor()
237}
238
239func (RecognitionMetadata_InteractionType) Type() protoreflect.EnumType {
240	return &file_google_cloud_speech_v1_cloud_speech_proto_enumTypes[1]
241}
242
243func (x RecognitionMetadata_InteractionType) Number() protoreflect.EnumNumber {
244	return protoreflect.EnumNumber(x)
245}
246
247// Deprecated: Use RecognitionMetadata_InteractionType.Descriptor instead.
248func (RecognitionMetadata_InteractionType) EnumDescriptor() ([]byte, []int) {
249	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{6, 0}
250}
251
252// Enumerates the types of capture settings describing an audio file.
253type RecognitionMetadata_MicrophoneDistance int32
254
255const (
256	// Audio type is not known.
257	RecognitionMetadata_MICROPHONE_DISTANCE_UNSPECIFIED RecognitionMetadata_MicrophoneDistance = 0
258	// The audio was captured from a closely placed microphone. Eg. phone,
259	// dictaphone, or handheld microphone. Generally if there speaker is within
260	// 1 meter of the microphone.
261	RecognitionMetadata_NEARFIELD RecognitionMetadata_MicrophoneDistance = 1
262	// The speaker if within 3 meters of the microphone.
263	RecognitionMetadata_MIDFIELD RecognitionMetadata_MicrophoneDistance = 2
264	// The speaker is more than 3 meters away from the microphone.
265	RecognitionMetadata_FARFIELD RecognitionMetadata_MicrophoneDistance = 3
266)
267
268// Enum value maps for RecognitionMetadata_MicrophoneDistance.
269var (
270	RecognitionMetadata_MicrophoneDistance_name = map[int32]string{
271		0: "MICROPHONE_DISTANCE_UNSPECIFIED",
272		1: "NEARFIELD",
273		2: "MIDFIELD",
274		3: "FARFIELD",
275	}
276	RecognitionMetadata_MicrophoneDistance_value = map[string]int32{
277		"MICROPHONE_DISTANCE_UNSPECIFIED": 0,
278		"NEARFIELD":                       1,
279		"MIDFIELD":                        2,
280		"FARFIELD":                        3,
281	}
282)
283
284func (x RecognitionMetadata_MicrophoneDistance) Enum() *RecognitionMetadata_MicrophoneDistance {
285	p := new(RecognitionMetadata_MicrophoneDistance)
286	*p = x
287	return p
288}
289
290func (x RecognitionMetadata_MicrophoneDistance) String() string {
291	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
292}
293
294func (RecognitionMetadata_MicrophoneDistance) Descriptor() protoreflect.EnumDescriptor {
295	return file_google_cloud_speech_v1_cloud_speech_proto_enumTypes[2].Descriptor()
296}
297
298func (RecognitionMetadata_MicrophoneDistance) Type() protoreflect.EnumType {
299	return &file_google_cloud_speech_v1_cloud_speech_proto_enumTypes[2]
300}
301
302func (x RecognitionMetadata_MicrophoneDistance) Number() protoreflect.EnumNumber {
303	return protoreflect.EnumNumber(x)
304}
305
306// Deprecated: Use RecognitionMetadata_MicrophoneDistance.Descriptor instead.
307func (RecognitionMetadata_MicrophoneDistance) EnumDescriptor() ([]byte, []int) {
308	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{6, 1}
309}
310
311// The original media the speech was recorded on.
312type RecognitionMetadata_OriginalMediaType int32
313
314const (
315	// Unknown original media type.
316	RecognitionMetadata_ORIGINAL_MEDIA_TYPE_UNSPECIFIED RecognitionMetadata_OriginalMediaType = 0
317	// The speech data is an audio recording.
318	RecognitionMetadata_AUDIO RecognitionMetadata_OriginalMediaType = 1
319	// The speech data originally recorded on a video.
320	RecognitionMetadata_VIDEO RecognitionMetadata_OriginalMediaType = 2
321)
322
323// Enum value maps for RecognitionMetadata_OriginalMediaType.
324var (
325	RecognitionMetadata_OriginalMediaType_name = map[int32]string{
326		0: "ORIGINAL_MEDIA_TYPE_UNSPECIFIED",
327		1: "AUDIO",
328		2: "VIDEO",
329	}
330	RecognitionMetadata_OriginalMediaType_value = map[string]int32{
331		"ORIGINAL_MEDIA_TYPE_UNSPECIFIED": 0,
332		"AUDIO":                           1,
333		"VIDEO":                           2,
334	}
335)
336
337func (x RecognitionMetadata_OriginalMediaType) Enum() *RecognitionMetadata_OriginalMediaType {
338	p := new(RecognitionMetadata_OriginalMediaType)
339	*p = x
340	return p
341}
342
343func (x RecognitionMetadata_OriginalMediaType) String() string {
344	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
345}
346
347func (RecognitionMetadata_OriginalMediaType) Descriptor() protoreflect.EnumDescriptor {
348	return file_google_cloud_speech_v1_cloud_speech_proto_enumTypes[3].Descriptor()
349}
350
351func (RecognitionMetadata_OriginalMediaType) Type() protoreflect.EnumType {
352	return &file_google_cloud_speech_v1_cloud_speech_proto_enumTypes[3]
353}
354
355func (x RecognitionMetadata_OriginalMediaType) Number() protoreflect.EnumNumber {
356	return protoreflect.EnumNumber(x)
357}
358
359// Deprecated: Use RecognitionMetadata_OriginalMediaType.Descriptor instead.
360func (RecognitionMetadata_OriginalMediaType) EnumDescriptor() ([]byte, []int) {
361	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{6, 2}
362}
363
364// The type of device the speech was recorded with.
365type RecognitionMetadata_RecordingDeviceType int32
366
367const (
368	// The recording device is unknown.
369	RecognitionMetadata_RECORDING_DEVICE_TYPE_UNSPECIFIED RecognitionMetadata_RecordingDeviceType = 0
370	// Speech was recorded on a smartphone.
371	RecognitionMetadata_SMARTPHONE RecognitionMetadata_RecordingDeviceType = 1
372	// Speech was recorded using a personal computer or tablet.
373	RecognitionMetadata_PC RecognitionMetadata_RecordingDeviceType = 2
374	// Speech was recorded over a phone line.
375	RecognitionMetadata_PHONE_LINE RecognitionMetadata_RecordingDeviceType = 3
376	// Speech was recorded in a vehicle.
377	RecognitionMetadata_VEHICLE RecognitionMetadata_RecordingDeviceType = 4
378	// Speech was recorded outdoors.
379	RecognitionMetadata_OTHER_OUTDOOR_DEVICE RecognitionMetadata_RecordingDeviceType = 5
380	// Speech was recorded indoors.
381	RecognitionMetadata_OTHER_INDOOR_DEVICE RecognitionMetadata_RecordingDeviceType = 6
382)
383
384// Enum value maps for RecognitionMetadata_RecordingDeviceType.
385var (
386	RecognitionMetadata_RecordingDeviceType_name = map[int32]string{
387		0: "RECORDING_DEVICE_TYPE_UNSPECIFIED",
388		1: "SMARTPHONE",
389		2: "PC",
390		3: "PHONE_LINE",
391		4: "VEHICLE",
392		5: "OTHER_OUTDOOR_DEVICE",
393		6: "OTHER_INDOOR_DEVICE",
394	}
395	RecognitionMetadata_RecordingDeviceType_value = map[string]int32{
396		"RECORDING_DEVICE_TYPE_UNSPECIFIED": 0,
397		"SMARTPHONE":                        1,
398		"PC":                                2,
399		"PHONE_LINE":                        3,
400		"VEHICLE":                           4,
401		"OTHER_OUTDOOR_DEVICE":              5,
402		"OTHER_INDOOR_DEVICE":               6,
403	}
404)
405
406func (x RecognitionMetadata_RecordingDeviceType) Enum() *RecognitionMetadata_RecordingDeviceType {
407	p := new(RecognitionMetadata_RecordingDeviceType)
408	*p = x
409	return p
410}
411
412func (x RecognitionMetadata_RecordingDeviceType) String() string {
413	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
414}
415
416func (RecognitionMetadata_RecordingDeviceType) Descriptor() protoreflect.EnumDescriptor {
417	return file_google_cloud_speech_v1_cloud_speech_proto_enumTypes[4].Descriptor()
418}
419
420func (RecognitionMetadata_RecordingDeviceType) Type() protoreflect.EnumType {
421	return &file_google_cloud_speech_v1_cloud_speech_proto_enumTypes[4]
422}
423
424func (x RecognitionMetadata_RecordingDeviceType) Number() protoreflect.EnumNumber {
425	return protoreflect.EnumNumber(x)
426}
427
428// Deprecated: Use RecognitionMetadata_RecordingDeviceType.Descriptor instead.
429func (RecognitionMetadata_RecordingDeviceType) EnumDescriptor() ([]byte, []int) {
430	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{6, 3}
431}
432
433// Indicates the type of speech event.
434type StreamingRecognizeResponse_SpeechEventType int32
435
436const (
437	// No speech event specified.
438	StreamingRecognizeResponse_SPEECH_EVENT_UNSPECIFIED StreamingRecognizeResponse_SpeechEventType = 0
439	// This event indicates that the server has detected the end of the user's
440	// speech utterance and expects no additional speech. Therefore, the server
441	// will not process additional audio (although it may subsequently return
442	// additional results). The client should stop sending additional audio
443	// data, half-close the gRPC connection, and wait for any additional results
444	// until the server closes the gRPC connection. This event is only sent if
445	// `single_utterance` was set to `true`, and is not used otherwise.
446	StreamingRecognizeResponse_END_OF_SINGLE_UTTERANCE StreamingRecognizeResponse_SpeechEventType = 1
447)
448
449// Enum value maps for StreamingRecognizeResponse_SpeechEventType.
450var (
451	StreamingRecognizeResponse_SpeechEventType_name = map[int32]string{
452		0: "SPEECH_EVENT_UNSPECIFIED",
453		1: "END_OF_SINGLE_UTTERANCE",
454	}
455	StreamingRecognizeResponse_SpeechEventType_value = map[string]int32{
456		"SPEECH_EVENT_UNSPECIFIED": 0,
457		"END_OF_SINGLE_UTTERANCE":  1,
458	}
459)
460
461func (x StreamingRecognizeResponse_SpeechEventType) Enum() *StreamingRecognizeResponse_SpeechEventType {
462	p := new(StreamingRecognizeResponse_SpeechEventType)
463	*p = x
464	return p
465}
466
467func (x StreamingRecognizeResponse_SpeechEventType) String() string {
468	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
469}
470
471func (StreamingRecognizeResponse_SpeechEventType) Descriptor() protoreflect.EnumDescriptor {
472	return file_google_cloud_speech_v1_cloud_speech_proto_enumTypes[5].Descriptor()
473}
474
475func (StreamingRecognizeResponse_SpeechEventType) Type() protoreflect.EnumType {
476	return &file_google_cloud_speech_v1_cloud_speech_proto_enumTypes[5]
477}
478
479func (x StreamingRecognizeResponse_SpeechEventType) Number() protoreflect.EnumNumber {
480	return protoreflect.EnumNumber(x)
481}
482
483// Deprecated: Use StreamingRecognizeResponse_SpeechEventType.Descriptor instead.
484func (StreamingRecognizeResponse_SpeechEventType) EnumDescriptor() ([]byte, []int) {
485	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{12, 0}
486}
487
488// The top-level message sent by the client for the `Recognize` method.
489type RecognizeRequest struct {
490	state         protoimpl.MessageState
491	sizeCache     protoimpl.SizeCache
492	unknownFields protoimpl.UnknownFields
493
494	// Required. Provides information to the recognizer that specifies how to
495	// process the request.
496	Config *RecognitionConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
497	// Required. The audio data to be recognized.
498	Audio *RecognitionAudio `protobuf:"bytes,2,opt,name=audio,proto3" json:"audio,omitempty"`
499}
500
501func (x *RecognizeRequest) Reset() {
502	*x = RecognizeRequest{}
503	if protoimpl.UnsafeEnabled {
504		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[0]
505		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
506		ms.StoreMessageInfo(mi)
507	}
508}
509
510func (x *RecognizeRequest) String() string {
511	return protoimpl.X.MessageStringOf(x)
512}
513
514func (*RecognizeRequest) ProtoMessage() {}
515
516func (x *RecognizeRequest) ProtoReflect() protoreflect.Message {
517	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[0]
518	if protoimpl.UnsafeEnabled && x != nil {
519		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
520		if ms.LoadMessageInfo() == nil {
521			ms.StoreMessageInfo(mi)
522		}
523		return ms
524	}
525	return mi.MessageOf(x)
526}
527
528// Deprecated: Use RecognizeRequest.ProtoReflect.Descriptor instead.
529func (*RecognizeRequest) Descriptor() ([]byte, []int) {
530	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{0}
531}
532
533func (x *RecognizeRequest) GetConfig() *RecognitionConfig {
534	if x != nil {
535		return x.Config
536	}
537	return nil
538}
539
540func (x *RecognizeRequest) GetAudio() *RecognitionAudio {
541	if x != nil {
542		return x.Audio
543	}
544	return nil
545}
546
547// The top-level message sent by the client for the `LongRunningRecognize`
548// method.
549type LongRunningRecognizeRequest struct {
550	state         protoimpl.MessageState
551	sizeCache     protoimpl.SizeCache
552	unknownFields protoimpl.UnknownFields
553
554	// Required. Provides information to the recognizer that specifies how to
555	// process the request.
556	Config *RecognitionConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
557	// Required. The audio data to be recognized.
558	Audio *RecognitionAudio `protobuf:"bytes,2,opt,name=audio,proto3" json:"audio,omitempty"`
559}
560
561func (x *LongRunningRecognizeRequest) Reset() {
562	*x = LongRunningRecognizeRequest{}
563	if protoimpl.UnsafeEnabled {
564		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[1]
565		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
566		ms.StoreMessageInfo(mi)
567	}
568}
569
570func (x *LongRunningRecognizeRequest) String() string {
571	return protoimpl.X.MessageStringOf(x)
572}
573
574func (*LongRunningRecognizeRequest) ProtoMessage() {}
575
576func (x *LongRunningRecognizeRequest) ProtoReflect() protoreflect.Message {
577	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[1]
578	if protoimpl.UnsafeEnabled && x != nil {
579		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
580		if ms.LoadMessageInfo() == nil {
581			ms.StoreMessageInfo(mi)
582		}
583		return ms
584	}
585	return mi.MessageOf(x)
586}
587
588// Deprecated: Use LongRunningRecognizeRequest.ProtoReflect.Descriptor instead.
589func (*LongRunningRecognizeRequest) Descriptor() ([]byte, []int) {
590	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{1}
591}
592
593func (x *LongRunningRecognizeRequest) GetConfig() *RecognitionConfig {
594	if x != nil {
595		return x.Config
596	}
597	return nil
598}
599
600func (x *LongRunningRecognizeRequest) GetAudio() *RecognitionAudio {
601	if x != nil {
602		return x.Audio
603	}
604	return nil
605}
606
607// The top-level message sent by the client for the `StreamingRecognize` method.
608// Multiple `StreamingRecognizeRequest` messages are sent. The first message
609// must contain a `streaming_config` message and must not contain
610// `audio_content`. All subsequent messages must contain `audio_content` and
611// must not contain a `streaming_config` message.
612type StreamingRecognizeRequest struct {
613	state         protoimpl.MessageState
614	sizeCache     protoimpl.SizeCache
615	unknownFields protoimpl.UnknownFields
616
617	// The streaming request, which is either a streaming config or audio content.
618	//
619	// Types that are assignable to StreamingRequest:
620	//	*StreamingRecognizeRequest_StreamingConfig
621	//	*StreamingRecognizeRequest_AudioContent
622	StreamingRequest isStreamingRecognizeRequest_StreamingRequest `protobuf_oneof:"streaming_request"`
623}
624
625func (x *StreamingRecognizeRequest) Reset() {
626	*x = StreamingRecognizeRequest{}
627	if protoimpl.UnsafeEnabled {
628		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[2]
629		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
630		ms.StoreMessageInfo(mi)
631	}
632}
633
634func (x *StreamingRecognizeRequest) String() string {
635	return protoimpl.X.MessageStringOf(x)
636}
637
638func (*StreamingRecognizeRequest) ProtoMessage() {}
639
640func (x *StreamingRecognizeRequest) ProtoReflect() protoreflect.Message {
641	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[2]
642	if protoimpl.UnsafeEnabled && x != nil {
643		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
644		if ms.LoadMessageInfo() == nil {
645			ms.StoreMessageInfo(mi)
646		}
647		return ms
648	}
649	return mi.MessageOf(x)
650}
651
652// Deprecated: Use StreamingRecognizeRequest.ProtoReflect.Descriptor instead.
653func (*StreamingRecognizeRequest) Descriptor() ([]byte, []int) {
654	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{2}
655}
656
657func (m *StreamingRecognizeRequest) GetStreamingRequest() isStreamingRecognizeRequest_StreamingRequest {
658	if m != nil {
659		return m.StreamingRequest
660	}
661	return nil
662}
663
664func (x *StreamingRecognizeRequest) GetStreamingConfig() *StreamingRecognitionConfig {
665	if x, ok := x.GetStreamingRequest().(*StreamingRecognizeRequest_StreamingConfig); ok {
666		return x.StreamingConfig
667	}
668	return nil
669}
670
671func (x *StreamingRecognizeRequest) GetAudioContent() []byte {
672	if x, ok := x.GetStreamingRequest().(*StreamingRecognizeRequest_AudioContent); ok {
673		return x.AudioContent
674	}
675	return nil
676}
677
678type isStreamingRecognizeRequest_StreamingRequest interface {
679	isStreamingRecognizeRequest_StreamingRequest()
680}
681
682type StreamingRecognizeRequest_StreamingConfig struct {
683	// Provides information to the recognizer that specifies how to process the
684	// request. The first `StreamingRecognizeRequest` message must contain a
685	// `streaming_config`  message.
686	StreamingConfig *StreamingRecognitionConfig `protobuf:"bytes,1,opt,name=streaming_config,json=streamingConfig,proto3,oneof"`
687}
688
689type StreamingRecognizeRequest_AudioContent struct {
690	// The audio data to be recognized. Sequential chunks of audio data are sent
691	// in sequential `StreamingRecognizeRequest` messages. The first
692	// `StreamingRecognizeRequest` message must not contain `audio_content` data
693	// and all subsequent `StreamingRecognizeRequest` messages must contain
694	// `audio_content` data. The audio bytes must be encoded as specified in
695	// `RecognitionConfig`. Note: as with all bytes fields, proto buffers use a
696	// pure binary representation (not base64). See
697	// [content limits](https://cloud.google.com/speech-to-text/quotas#content).
698	AudioContent []byte `protobuf:"bytes,2,opt,name=audio_content,json=audioContent,proto3,oneof"`
699}
700
701func (*StreamingRecognizeRequest_StreamingConfig) isStreamingRecognizeRequest_StreamingRequest() {}
702
703func (*StreamingRecognizeRequest_AudioContent) isStreamingRecognizeRequest_StreamingRequest() {}
704
705// Provides information to the recognizer that specifies how to process the
706// request.
707type StreamingRecognitionConfig struct {
708	state         protoimpl.MessageState
709	sizeCache     protoimpl.SizeCache
710	unknownFields protoimpl.UnknownFields
711
712	// Required. Provides information to the recognizer that specifies how to
713	// process the request.
714	Config *RecognitionConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
715	// If `false` or omitted, the recognizer will perform continuous
716	// recognition (continuing to wait for and process audio even if the user
717	// pauses speaking) until the client closes the input stream (gRPC API) or
718	// until the maximum time limit has been reached. May return multiple
719	// `StreamingRecognitionResult`s with the `is_final` flag set to `true`.
720	//
721	// If `true`, the recognizer will detect a single spoken utterance. When it
722	// detects that the user has paused or stopped speaking, it will return an
723	// `END_OF_SINGLE_UTTERANCE` event and cease recognition. It will return no
724	// more than one `StreamingRecognitionResult` with the `is_final` flag set to
725	// `true`.
726	SingleUtterance bool `protobuf:"varint,2,opt,name=single_utterance,json=singleUtterance,proto3" json:"single_utterance,omitempty"`
727	// If `true`, interim results (tentative hypotheses) may be
728	// returned as they become available (these interim results are indicated with
729	// the `is_final=false` flag).
730	// If `false` or omitted, only `is_final=true` result(s) are returned.
731	InterimResults bool `protobuf:"varint,3,opt,name=interim_results,json=interimResults,proto3" json:"interim_results,omitempty"`
732}
733
734func (x *StreamingRecognitionConfig) Reset() {
735	*x = StreamingRecognitionConfig{}
736	if protoimpl.UnsafeEnabled {
737		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[3]
738		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
739		ms.StoreMessageInfo(mi)
740	}
741}
742
743func (x *StreamingRecognitionConfig) String() string {
744	return protoimpl.X.MessageStringOf(x)
745}
746
747func (*StreamingRecognitionConfig) ProtoMessage() {}
748
749func (x *StreamingRecognitionConfig) ProtoReflect() protoreflect.Message {
750	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[3]
751	if protoimpl.UnsafeEnabled && x != nil {
752		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
753		if ms.LoadMessageInfo() == nil {
754			ms.StoreMessageInfo(mi)
755		}
756		return ms
757	}
758	return mi.MessageOf(x)
759}
760
761// Deprecated: Use StreamingRecognitionConfig.ProtoReflect.Descriptor instead.
762func (*StreamingRecognitionConfig) Descriptor() ([]byte, []int) {
763	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{3}
764}
765
766func (x *StreamingRecognitionConfig) GetConfig() *RecognitionConfig {
767	if x != nil {
768		return x.Config
769	}
770	return nil
771}
772
773func (x *StreamingRecognitionConfig) GetSingleUtterance() bool {
774	if x != nil {
775		return x.SingleUtterance
776	}
777	return false
778}
779
780func (x *StreamingRecognitionConfig) GetInterimResults() bool {
781	if x != nil {
782		return x.InterimResults
783	}
784	return false
785}
786
787// Provides information to the recognizer that specifies how to process the
788// request.
789type RecognitionConfig struct {
790	state         protoimpl.MessageState
791	sizeCache     protoimpl.SizeCache
792	unknownFields protoimpl.UnknownFields
793
794	// Encoding of audio data sent in all `RecognitionAudio` messages.
795	// This field is optional for `FLAC` and `WAV` audio files and required
796	// for all other audio formats. For details, see [AudioEncoding][google.cloud.speech.v1.RecognitionConfig.AudioEncoding].
797	Encoding RecognitionConfig_AudioEncoding `protobuf:"varint,1,opt,name=encoding,proto3,enum=google.cloud.speech.v1.RecognitionConfig_AudioEncoding" json:"encoding,omitempty"`
798	// Sample rate in Hertz of the audio data sent in all
799	// `RecognitionAudio` messages. Valid values are: 8000-48000.
800	// 16000 is optimal. For best results, set the sampling rate of the audio
801	// source to 16000 Hz. If that's not possible, use the native sample rate of
802	// the audio source (instead of re-sampling).
803	// This field is optional for FLAC and WAV audio files, but is
804	// required for all other audio formats. For details, see [AudioEncoding][google.cloud.speech.v1.RecognitionConfig.AudioEncoding].
805	SampleRateHertz int32 `protobuf:"varint,2,opt,name=sample_rate_hertz,json=sampleRateHertz,proto3" json:"sample_rate_hertz,omitempty"`
806	// The number of channels in the input audio data.
807	// ONLY set this for MULTI-CHANNEL recognition.
808	// Valid values for LINEAR16 and FLAC are `1`-`8`.
809	// Valid values for OGG_OPUS are '1'-'254'.
810	// Valid value for MULAW, AMR, AMR_WB and SPEEX_WITH_HEADER_BYTE is only `1`.
811	// If `0` or omitted, defaults to one channel (mono).
812	// Note: We only recognize the first channel by default.
813	// To perform independent recognition on each channel set
814	// `enable_separate_recognition_per_channel` to 'true'.
815	AudioChannelCount int32 `protobuf:"varint,7,opt,name=audio_channel_count,json=audioChannelCount,proto3" json:"audio_channel_count,omitempty"`
816	// This needs to be set to `true` explicitly and `audio_channel_count` > 1
817	// to get each channel recognized separately. The recognition result will
818	// contain a `channel_tag` field to state which channel that result belongs
819	// to. If this is not true, we will only recognize the first channel. The
820	// request is billed cumulatively for all channels recognized:
821	// `audio_channel_count` multiplied by the length of the audio.
822	EnableSeparateRecognitionPerChannel bool `protobuf:"varint,12,opt,name=enable_separate_recognition_per_channel,json=enableSeparateRecognitionPerChannel,proto3" json:"enable_separate_recognition_per_channel,omitempty"`
823	// Required. The language of the supplied audio as a
824	// [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag.
825	// Example: "en-US".
826	// See [Language
827	// Support](https://cloud.google.com/speech-to-text/docs/languages) for a list
828	// of the currently supported language codes.
829	LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
830	// Maximum number of recognition hypotheses to be returned.
831	// Specifically, the maximum number of `SpeechRecognitionAlternative` messages
832	// within each `SpeechRecognitionResult`.
833	// The server may return fewer than `max_alternatives`.
834	// Valid values are `0`-`30`. A value of `0` or `1` will return a maximum of
835	// one. If omitted, will return a maximum of one.
836	MaxAlternatives int32 `protobuf:"varint,4,opt,name=max_alternatives,json=maxAlternatives,proto3" json:"max_alternatives,omitempty"`
837	// If set to `true`, the server will attempt to filter out
838	// profanities, replacing all but the initial character in each filtered word
839	// with asterisks, e.g. "f***". If set to `false` or omitted, profanities
840	// won't be filtered out.
841	ProfanityFilter bool `protobuf:"varint,5,opt,name=profanity_filter,json=profanityFilter,proto3" json:"profanity_filter,omitempty"`
842	// Array of [SpeechContext][google.cloud.speech.v1.SpeechContext].
843	// A means to provide context to assist the speech recognition. For more
844	// information, see
845	// [speech
846	// adaptation](https://cloud.google.com/speech-to-text/docs/context-strength).
847	SpeechContexts []*SpeechContext `protobuf:"bytes,6,rep,name=speech_contexts,json=speechContexts,proto3" json:"speech_contexts,omitempty"`
848	// If `true`, the top result includes a list of words and
849	// the start and end time offsets (timestamps) for those words. If
850	// `false`, no word-level time offset information is returned. The default is
851	// `false`.
852	EnableWordTimeOffsets bool `protobuf:"varint,8,opt,name=enable_word_time_offsets,json=enableWordTimeOffsets,proto3" json:"enable_word_time_offsets,omitempty"`
853	// If 'true', adds punctuation to recognition result hypotheses.
854	// This feature is only available in select languages. Setting this for
855	// requests in other languages has no effect at all.
856	// The default 'false' value does not add punctuation to result hypotheses.
857	// Note: This is currently offered as an experimental service, complimentary
858	// to all users. In the future this may be exclusively available as a
859	// premium feature.
860	EnableAutomaticPunctuation bool `protobuf:"varint,11,opt,name=enable_automatic_punctuation,json=enableAutomaticPunctuation,proto3" json:"enable_automatic_punctuation,omitempty"`
861	// Config to enable speaker diarization and set additional
862	// parameters to make diarization better suited for your application.
863	// Note: When this is enabled, we send all the words from the beginning of the
864	// audio for the top alternative in every consecutive STREAMING responses.
865	// This is done in order to improve our speaker tags as our models learn to
866	// identify the speakers in the conversation over time.
867	// For non-streaming requests, the diarization results will be provided only
868	// in the top alternative of the FINAL SpeechRecognitionResult.
869	DiarizationConfig *SpeakerDiarizationConfig `protobuf:"bytes,19,opt,name=diarization_config,json=diarizationConfig,proto3" json:"diarization_config,omitempty"`
870	// Metadata regarding this request.
871	Metadata *RecognitionMetadata `protobuf:"bytes,9,opt,name=metadata,proto3" json:"metadata,omitempty"`
872	// Which model to select for the given request. Select the model
873	// best suited to your domain to get best results. If a model is not
874	// explicitly specified, then we auto-select a model based on the parameters
875	// in the RecognitionConfig.
876	// <table>
877	//   <tr>
878	//     <td><b>Model</b></td>
879	//     <td><b>Description</b></td>
880	//   </tr>
881	//   <tr>
882	//     <td><code>command_and_search</code></td>
883	//     <td>Best for short queries such as voice commands or voice search.</td>
884	//   </tr>
885	//   <tr>
886	//     <td><code>phone_call</code></td>
887	//     <td>Best for audio that originated from a phone call (typically
888	//     recorded at an 8khz sampling rate).</td>
889	//   </tr>
890	//   <tr>
891	//     <td><code>video</code></td>
892	//     <td>Best for audio that originated from from video or includes multiple
893	//         speakers. Ideally the audio is recorded at a 16khz or greater
894	//         sampling rate. This is a premium model that costs more than the
895	//         standard rate.</td>
896	//   </tr>
897	//   <tr>
898	//     <td><code>default</code></td>
899	//     <td>Best for audio that is not one of the specific audio models.
900	//         For example, long-form audio. Ideally the audio is high-fidelity,
901	//         recorded at a 16khz or greater sampling rate.</td>
902	//   </tr>
903	// </table>
904	Model string `protobuf:"bytes,13,opt,name=model,proto3" json:"model,omitempty"`
905	// Set to true to use an enhanced model for speech recognition.
906	// If `use_enhanced` is set to true and the `model` field is not set, then
907	// an appropriate enhanced model is chosen if an enhanced model exists for
908	// the audio.
909	//
910	// If `use_enhanced` is true and an enhanced version of the specified model
911	// does not exist, then the speech is recognized using the standard version
912	// of the specified model.
913	UseEnhanced bool `protobuf:"varint,14,opt,name=use_enhanced,json=useEnhanced,proto3" json:"use_enhanced,omitempty"`
914}
915
916func (x *RecognitionConfig) Reset() {
917	*x = RecognitionConfig{}
918	if protoimpl.UnsafeEnabled {
919		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[4]
920		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
921		ms.StoreMessageInfo(mi)
922	}
923}
924
925func (x *RecognitionConfig) String() string {
926	return protoimpl.X.MessageStringOf(x)
927}
928
929func (*RecognitionConfig) ProtoMessage() {}
930
931func (x *RecognitionConfig) ProtoReflect() protoreflect.Message {
932	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[4]
933	if protoimpl.UnsafeEnabled && x != nil {
934		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
935		if ms.LoadMessageInfo() == nil {
936			ms.StoreMessageInfo(mi)
937		}
938		return ms
939	}
940	return mi.MessageOf(x)
941}
942
943// Deprecated: Use RecognitionConfig.ProtoReflect.Descriptor instead.
944func (*RecognitionConfig) Descriptor() ([]byte, []int) {
945	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{4}
946}
947
948func (x *RecognitionConfig) GetEncoding() RecognitionConfig_AudioEncoding {
949	if x != nil {
950		return x.Encoding
951	}
952	return RecognitionConfig_ENCODING_UNSPECIFIED
953}
954
955func (x *RecognitionConfig) GetSampleRateHertz() int32 {
956	if x != nil {
957		return x.SampleRateHertz
958	}
959	return 0
960}
961
962func (x *RecognitionConfig) GetAudioChannelCount() int32 {
963	if x != nil {
964		return x.AudioChannelCount
965	}
966	return 0
967}
968
969func (x *RecognitionConfig) GetEnableSeparateRecognitionPerChannel() bool {
970	if x != nil {
971		return x.EnableSeparateRecognitionPerChannel
972	}
973	return false
974}
975
976func (x *RecognitionConfig) GetLanguageCode() string {
977	if x != nil {
978		return x.LanguageCode
979	}
980	return ""
981}
982
983func (x *RecognitionConfig) GetMaxAlternatives() int32 {
984	if x != nil {
985		return x.MaxAlternatives
986	}
987	return 0
988}
989
990func (x *RecognitionConfig) GetProfanityFilter() bool {
991	if x != nil {
992		return x.ProfanityFilter
993	}
994	return false
995}
996
997func (x *RecognitionConfig) GetSpeechContexts() []*SpeechContext {
998	if x != nil {
999		return x.SpeechContexts
1000	}
1001	return nil
1002}
1003
1004func (x *RecognitionConfig) GetEnableWordTimeOffsets() bool {
1005	if x != nil {
1006		return x.EnableWordTimeOffsets
1007	}
1008	return false
1009}
1010
1011func (x *RecognitionConfig) GetEnableAutomaticPunctuation() bool {
1012	if x != nil {
1013		return x.EnableAutomaticPunctuation
1014	}
1015	return false
1016}
1017
1018func (x *RecognitionConfig) GetDiarizationConfig() *SpeakerDiarizationConfig {
1019	if x != nil {
1020		return x.DiarizationConfig
1021	}
1022	return nil
1023}
1024
1025func (x *RecognitionConfig) GetMetadata() *RecognitionMetadata {
1026	if x != nil {
1027		return x.Metadata
1028	}
1029	return nil
1030}
1031
1032func (x *RecognitionConfig) GetModel() string {
1033	if x != nil {
1034		return x.Model
1035	}
1036	return ""
1037}
1038
1039func (x *RecognitionConfig) GetUseEnhanced() bool {
1040	if x != nil {
1041		return x.UseEnhanced
1042	}
1043	return false
1044}
1045
1046// Config to enable speaker diarization.
1047type SpeakerDiarizationConfig struct {
1048	state         protoimpl.MessageState
1049	sizeCache     protoimpl.SizeCache
1050	unknownFields protoimpl.UnknownFields
1051
1052	// If 'true', enables speaker detection for each recognized word in
1053	// the top alternative of the recognition result using a speaker_tag provided
1054	// in the WordInfo.
1055	EnableSpeakerDiarization bool `protobuf:"varint,1,opt,name=enable_speaker_diarization,json=enableSpeakerDiarization,proto3" json:"enable_speaker_diarization,omitempty"`
1056	// Minimum number of speakers in the conversation. This range gives you more
1057	// flexibility by allowing the system to automatically determine the correct
1058	// number of speakers. If not set, the default value is 2.
1059	MinSpeakerCount int32 `protobuf:"varint,2,opt,name=min_speaker_count,json=minSpeakerCount,proto3" json:"min_speaker_count,omitempty"`
1060	// Maximum number of speakers in the conversation. This range gives you more
1061	// flexibility by allowing the system to automatically determine the correct
1062	// number of speakers. If not set, the default value is 6.
1063	MaxSpeakerCount int32 `protobuf:"varint,3,opt,name=max_speaker_count,json=maxSpeakerCount,proto3" json:"max_speaker_count,omitempty"`
1064	// Unused.
1065	//
1066	// Deprecated: Do not use.
1067	SpeakerTag int32 `protobuf:"varint,5,opt,name=speaker_tag,json=speakerTag,proto3" json:"speaker_tag,omitempty"`
1068}
1069
1070func (x *SpeakerDiarizationConfig) Reset() {
1071	*x = SpeakerDiarizationConfig{}
1072	if protoimpl.UnsafeEnabled {
1073		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[5]
1074		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1075		ms.StoreMessageInfo(mi)
1076	}
1077}
1078
1079func (x *SpeakerDiarizationConfig) String() string {
1080	return protoimpl.X.MessageStringOf(x)
1081}
1082
1083func (*SpeakerDiarizationConfig) ProtoMessage() {}
1084
1085func (x *SpeakerDiarizationConfig) ProtoReflect() protoreflect.Message {
1086	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[5]
1087	if protoimpl.UnsafeEnabled && x != nil {
1088		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1089		if ms.LoadMessageInfo() == nil {
1090			ms.StoreMessageInfo(mi)
1091		}
1092		return ms
1093	}
1094	return mi.MessageOf(x)
1095}
1096
1097// Deprecated: Use SpeakerDiarizationConfig.ProtoReflect.Descriptor instead.
1098func (*SpeakerDiarizationConfig) Descriptor() ([]byte, []int) {
1099	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{5}
1100}
1101
1102func (x *SpeakerDiarizationConfig) GetEnableSpeakerDiarization() bool {
1103	if x != nil {
1104		return x.EnableSpeakerDiarization
1105	}
1106	return false
1107}
1108
1109func (x *SpeakerDiarizationConfig) GetMinSpeakerCount() int32 {
1110	if x != nil {
1111		return x.MinSpeakerCount
1112	}
1113	return 0
1114}
1115
1116func (x *SpeakerDiarizationConfig) GetMaxSpeakerCount() int32 {
1117	if x != nil {
1118		return x.MaxSpeakerCount
1119	}
1120	return 0
1121}
1122
1123// Deprecated: Do not use.
1124func (x *SpeakerDiarizationConfig) GetSpeakerTag() int32 {
1125	if x != nil {
1126		return x.SpeakerTag
1127	}
1128	return 0
1129}
1130
1131// Description of audio data to be recognized.
1132type RecognitionMetadata struct {
1133	state         protoimpl.MessageState
1134	sizeCache     protoimpl.SizeCache
1135	unknownFields protoimpl.UnknownFields
1136
1137	// The use case most closely describing the audio content to be recognized.
1138	InteractionType RecognitionMetadata_InteractionType `protobuf:"varint,1,opt,name=interaction_type,json=interactionType,proto3,enum=google.cloud.speech.v1.RecognitionMetadata_InteractionType" json:"interaction_type,omitempty"`
1139	// The industry vertical to which this speech recognition request most
1140	// closely applies. This is most indicative of the topics contained
1141	// in the audio.  Use the 6-digit NAICS code to identify the industry
1142	// vertical - see https://www.naics.com/search/.
1143	IndustryNaicsCodeOfAudio uint32 `protobuf:"varint,3,opt,name=industry_naics_code_of_audio,json=industryNaicsCodeOfAudio,proto3" json:"industry_naics_code_of_audio,omitempty"`
1144	// The audio type that most closely describes the audio being recognized.
1145	MicrophoneDistance RecognitionMetadata_MicrophoneDistance `protobuf:"varint,4,opt,name=microphone_distance,json=microphoneDistance,proto3,enum=google.cloud.speech.v1.RecognitionMetadata_MicrophoneDistance" json:"microphone_distance,omitempty"`
1146	// The original media the speech was recorded on.
1147	OriginalMediaType RecognitionMetadata_OriginalMediaType `protobuf:"varint,5,opt,name=original_media_type,json=originalMediaType,proto3,enum=google.cloud.speech.v1.RecognitionMetadata_OriginalMediaType" json:"original_media_type,omitempty"`
1148	// The type of device the speech was recorded with.
1149	RecordingDeviceType RecognitionMetadata_RecordingDeviceType `protobuf:"varint,6,opt,name=recording_device_type,json=recordingDeviceType,proto3,enum=google.cloud.speech.v1.RecognitionMetadata_RecordingDeviceType" json:"recording_device_type,omitempty"`
1150	// The device used to make the recording.  Examples 'Nexus 5X' or
1151	// 'Polycom SoundStation IP 6000' or 'POTS' or 'VoIP' or
1152	// 'Cardioid Microphone'.
1153	RecordingDeviceName string `protobuf:"bytes,7,opt,name=recording_device_name,json=recordingDeviceName,proto3" json:"recording_device_name,omitempty"`
1154	// Mime type of the original audio file.  For example `audio/m4a`,
1155	// `audio/x-alaw-basic`, `audio/mp3`, `audio/3gpp`.
1156	// A list of possible audio mime types is maintained at
1157	// http://www.iana.org/assignments/media-types/media-types.xhtml#audio
1158	OriginalMimeType string `protobuf:"bytes,8,opt,name=original_mime_type,json=originalMimeType,proto3" json:"original_mime_type,omitempty"`
1159	// Description of the content. Eg. "Recordings of federal supreme court
1160	// hearings from 2012".
1161	AudioTopic string `protobuf:"bytes,10,opt,name=audio_topic,json=audioTopic,proto3" json:"audio_topic,omitempty"`
1162}
1163
1164func (x *RecognitionMetadata) Reset() {
1165	*x = RecognitionMetadata{}
1166	if protoimpl.UnsafeEnabled {
1167		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[6]
1168		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1169		ms.StoreMessageInfo(mi)
1170	}
1171}
1172
1173func (x *RecognitionMetadata) String() string {
1174	return protoimpl.X.MessageStringOf(x)
1175}
1176
1177func (*RecognitionMetadata) ProtoMessage() {}
1178
1179func (x *RecognitionMetadata) ProtoReflect() protoreflect.Message {
1180	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[6]
1181	if protoimpl.UnsafeEnabled && x != nil {
1182		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1183		if ms.LoadMessageInfo() == nil {
1184			ms.StoreMessageInfo(mi)
1185		}
1186		return ms
1187	}
1188	return mi.MessageOf(x)
1189}
1190
1191// Deprecated: Use RecognitionMetadata.ProtoReflect.Descriptor instead.
1192func (*RecognitionMetadata) Descriptor() ([]byte, []int) {
1193	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{6}
1194}
1195
1196func (x *RecognitionMetadata) GetInteractionType() RecognitionMetadata_InteractionType {
1197	if x != nil {
1198		return x.InteractionType
1199	}
1200	return RecognitionMetadata_INTERACTION_TYPE_UNSPECIFIED
1201}
1202
1203func (x *RecognitionMetadata) GetIndustryNaicsCodeOfAudio() uint32 {
1204	if x != nil {
1205		return x.IndustryNaicsCodeOfAudio
1206	}
1207	return 0
1208}
1209
1210func (x *RecognitionMetadata) GetMicrophoneDistance() RecognitionMetadata_MicrophoneDistance {
1211	if x != nil {
1212		return x.MicrophoneDistance
1213	}
1214	return RecognitionMetadata_MICROPHONE_DISTANCE_UNSPECIFIED
1215}
1216
1217func (x *RecognitionMetadata) GetOriginalMediaType() RecognitionMetadata_OriginalMediaType {
1218	if x != nil {
1219		return x.OriginalMediaType
1220	}
1221	return RecognitionMetadata_ORIGINAL_MEDIA_TYPE_UNSPECIFIED
1222}
1223
1224func (x *RecognitionMetadata) GetRecordingDeviceType() RecognitionMetadata_RecordingDeviceType {
1225	if x != nil {
1226		return x.RecordingDeviceType
1227	}
1228	return RecognitionMetadata_RECORDING_DEVICE_TYPE_UNSPECIFIED
1229}
1230
1231func (x *RecognitionMetadata) GetRecordingDeviceName() string {
1232	if x != nil {
1233		return x.RecordingDeviceName
1234	}
1235	return ""
1236}
1237
1238func (x *RecognitionMetadata) GetOriginalMimeType() string {
1239	if x != nil {
1240		return x.OriginalMimeType
1241	}
1242	return ""
1243}
1244
1245func (x *RecognitionMetadata) GetAudioTopic() string {
1246	if x != nil {
1247		return x.AudioTopic
1248	}
1249	return ""
1250}
1251
1252// Provides "hints" to the speech recognizer to favor specific words and phrases
1253// in the results.
1254type SpeechContext struct {
1255	state         protoimpl.MessageState
1256	sizeCache     protoimpl.SizeCache
1257	unknownFields protoimpl.UnknownFields
1258
1259	// A list of strings containing words and phrases "hints" so that
1260	// the speech recognition is more likely to recognize them. This can be used
1261	// to improve the accuracy for specific words and phrases, for example, if
1262	// specific commands are typically spoken by the user. This can also be used
1263	// to add additional words to the vocabulary of the recognizer. See
1264	// [usage limits](https://cloud.google.com/speech-to-text/quotas#content).
1265	//
1266	// List items can also be set to classes for groups of words that represent
1267	// common concepts that occur in natural language. For example, rather than
1268	// providing phrase hints for every month of the year, using the $MONTH class
1269	// improves the likelihood of correctly transcribing audio that includes
1270	// months.
1271	Phrases []string `protobuf:"bytes,1,rep,name=phrases,proto3" json:"phrases,omitempty"`
1272}
1273
1274func (x *SpeechContext) Reset() {
1275	*x = SpeechContext{}
1276	if protoimpl.UnsafeEnabled {
1277		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[7]
1278		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1279		ms.StoreMessageInfo(mi)
1280	}
1281}
1282
1283func (x *SpeechContext) String() string {
1284	return protoimpl.X.MessageStringOf(x)
1285}
1286
1287func (*SpeechContext) ProtoMessage() {}
1288
1289func (x *SpeechContext) ProtoReflect() protoreflect.Message {
1290	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[7]
1291	if protoimpl.UnsafeEnabled && x != nil {
1292		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1293		if ms.LoadMessageInfo() == nil {
1294			ms.StoreMessageInfo(mi)
1295		}
1296		return ms
1297	}
1298	return mi.MessageOf(x)
1299}
1300
1301// Deprecated: Use SpeechContext.ProtoReflect.Descriptor instead.
1302func (*SpeechContext) Descriptor() ([]byte, []int) {
1303	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{7}
1304}
1305
1306func (x *SpeechContext) GetPhrases() []string {
1307	if x != nil {
1308		return x.Phrases
1309	}
1310	return nil
1311}
1312
1313// Contains audio data in the encoding specified in the `RecognitionConfig`.
1314// Either `content` or `uri` must be supplied. Supplying both or neither
1315// returns [google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]. See
1316// [content limits](https://cloud.google.com/speech-to-text/quotas#content).
1317type RecognitionAudio struct {
1318	state         protoimpl.MessageState
1319	sizeCache     protoimpl.SizeCache
1320	unknownFields protoimpl.UnknownFields
1321
1322	// The audio source, which is either inline content or a Google Cloud
1323	// Storage uri.
1324	//
1325	// Types that are assignable to AudioSource:
1326	//	*RecognitionAudio_Content
1327	//	*RecognitionAudio_Uri
1328	AudioSource isRecognitionAudio_AudioSource `protobuf_oneof:"audio_source"`
1329}
1330
1331func (x *RecognitionAudio) Reset() {
1332	*x = RecognitionAudio{}
1333	if protoimpl.UnsafeEnabled {
1334		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[8]
1335		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1336		ms.StoreMessageInfo(mi)
1337	}
1338}
1339
1340func (x *RecognitionAudio) String() string {
1341	return protoimpl.X.MessageStringOf(x)
1342}
1343
1344func (*RecognitionAudio) ProtoMessage() {}
1345
1346func (x *RecognitionAudio) ProtoReflect() protoreflect.Message {
1347	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[8]
1348	if protoimpl.UnsafeEnabled && x != nil {
1349		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1350		if ms.LoadMessageInfo() == nil {
1351			ms.StoreMessageInfo(mi)
1352		}
1353		return ms
1354	}
1355	return mi.MessageOf(x)
1356}
1357
1358// Deprecated: Use RecognitionAudio.ProtoReflect.Descriptor instead.
1359func (*RecognitionAudio) Descriptor() ([]byte, []int) {
1360	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{8}
1361}
1362
1363func (m *RecognitionAudio) GetAudioSource() isRecognitionAudio_AudioSource {
1364	if m != nil {
1365		return m.AudioSource
1366	}
1367	return nil
1368}
1369
1370func (x *RecognitionAudio) GetContent() []byte {
1371	if x, ok := x.GetAudioSource().(*RecognitionAudio_Content); ok {
1372		return x.Content
1373	}
1374	return nil
1375}
1376
1377func (x *RecognitionAudio) GetUri() string {
1378	if x, ok := x.GetAudioSource().(*RecognitionAudio_Uri); ok {
1379		return x.Uri
1380	}
1381	return ""
1382}
1383
1384type isRecognitionAudio_AudioSource interface {
1385	isRecognitionAudio_AudioSource()
1386}
1387
1388type RecognitionAudio_Content struct {
1389	// The audio data bytes encoded as specified in
1390	// `RecognitionConfig`. Note: as with all bytes fields, proto buffers use a
1391	// pure binary representation, whereas JSON representations use base64.
1392	Content []byte `protobuf:"bytes,1,opt,name=content,proto3,oneof"`
1393}
1394
1395type RecognitionAudio_Uri struct {
1396	// URI that points to a file that contains audio data bytes as specified in
1397	// `RecognitionConfig`. The file must not be compressed (for example, gzip).
1398	// Currently, only Google Cloud Storage URIs are
1399	// supported, which must be specified in the following format:
1400	// `gs://bucket_name/object_name` (other URI formats return
1401	// [google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]). For more information, see
1402	// [Request URIs](https://cloud.google.com/storage/docs/reference-uris).
1403	Uri string `protobuf:"bytes,2,opt,name=uri,proto3,oneof"`
1404}
1405
1406func (*RecognitionAudio_Content) isRecognitionAudio_AudioSource() {}
1407
1408func (*RecognitionAudio_Uri) isRecognitionAudio_AudioSource() {}
1409
1410// The only message returned to the client by the `Recognize` method. It
1411// contains the result as zero or more sequential `SpeechRecognitionResult`
1412// messages.
1413type RecognizeResponse struct {
1414	state         protoimpl.MessageState
1415	sizeCache     protoimpl.SizeCache
1416	unknownFields protoimpl.UnknownFields
1417
1418	// Sequential list of transcription results corresponding to
1419	// sequential portions of audio.
1420	Results []*SpeechRecognitionResult `protobuf:"bytes,2,rep,name=results,proto3" json:"results,omitempty"`
1421}
1422
1423func (x *RecognizeResponse) Reset() {
1424	*x = RecognizeResponse{}
1425	if protoimpl.UnsafeEnabled {
1426		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[9]
1427		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1428		ms.StoreMessageInfo(mi)
1429	}
1430}
1431
1432func (x *RecognizeResponse) String() string {
1433	return protoimpl.X.MessageStringOf(x)
1434}
1435
1436func (*RecognizeResponse) ProtoMessage() {}
1437
1438func (x *RecognizeResponse) ProtoReflect() protoreflect.Message {
1439	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[9]
1440	if protoimpl.UnsafeEnabled && x != nil {
1441		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1442		if ms.LoadMessageInfo() == nil {
1443			ms.StoreMessageInfo(mi)
1444		}
1445		return ms
1446	}
1447	return mi.MessageOf(x)
1448}
1449
1450// Deprecated: Use RecognizeResponse.ProtoReflect.Descriptor instead.
1451func (*RecognizeResponse) Descriptor() ([]byte, []int) {
1452	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{9}
1453}
1454
1455func (x *RecognizeResponse) GetResults() []*SpeechRecognitionResult {
1456	if x != nil {
1457		return x.Results
1458	}
1459	return nil
1460}
1461
1462// The only message returned to the client by the `LongRunningRecognize` method.
1463// It contains the result as zero or more sequential `SpeechRecognitionResult`
1464// messages. It is included in the `result.response` field of the `Operation`
1465// returned by the `GetOperation` call of the `google::longrunning::Operations`
1466// service.
1467type LongRunningRecognizeResponse struct {
1468	state         protoimpl.MessageState
1469	sizeCache     protoimpl.SizeCache
1470	unknownFields protoimpl.UnknownFields
1471
1472	// Sequential list of transcription results corresponding to
1473	// sequential portions of audio.
1474	Results []*SpeechRecognitionResult `protobuf:"bytes,2,rep,name=results,proto3" json:"results,omitempty"`
1475}
1476
1477func (x *LongRunningRecognizeResponse) Reset() {
1478	*x = LongRunningRecognizeResponse{}
1479	if protoimpl.UnsafeEnabled {
1480		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[10]
1481		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1482		ms.StoreMessageInfo(mi)
1483	}
1484}
1485
1486func (x *LongRunningRecognizeResponse) String() string {
1487	return protoimpl.X.MessageStringOf(x)
1488}
1489
1490func (*LongRunningRecognizeResponse) ProtoMessage() {}
1491
1492func (x *LongRunningRecognizeResponse) ProtoReflect() protoreflect.Message {
1493	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[10]
1494	if protoimpl.UnsafeEnabled && x != nil {
1495		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1496		if ms.LoadMessageInfo() == nil {
1497			ms.StoreMessageInfo(mi)
1498		}
1499		return ms
1500	}
1501	return mi.MessageOf(x)
1502}
1503
1504// Deprecated: Use LongRunningRecognizeResponse.ProtoReflect.Descriptor instead.
1505func (*LongRunningRecognizeResponse) Descriptor() ([]byte, []int) {
1506	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{10}
1507}
1508
1509func (x *LongRunningRecognizeResponse) GetResults() []*SpeechRecognitionResult {
1510	if x != nil {
1511		return x.Results
1512	}
1513	return nil
1514}
1515
1516// Describes the progress of a long-running `LongRunningRecognize` call. It is
1517// included in the `metadata` field of the `Operation` returned by the
1518// `GetOperation` call of the `google::longrunning::Operations` service.
1519type LongRunningRecognizeMetadata struct {
1520	state         protoimpl.MessageState
1521	sizeCache     protoimpl.SizeCache
1522	unknownFields protoimpl.UnknownFields
1523
1524	// Approximate percentage of audio processed thus far. Guaranteed to be 100
1525	// when the audio is fully processed and the results are available.
1526	ProgressPercent int32 `protobuf:"varint,1,opt,name=progress_percent,json=progressPercent,proto3" json:"progress_percent,omitempty"`
1527	// Time when the request was received.
1528	StartTime *timestamp.Timestamp `protobuf:"bytes,2,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
1529	// Time of the most recent processing update.
1530	LastUpdateTime *timestamp.Timestamp `protobuf:"bytes,3,opt,name=last_update_time,json=lastUpdateTime,proto3" json:"last_update_time,omitempty"`
1531}
1532
1533func (x *LongRunningRecognizeMetadata) Reset() {
1534	*x = LongRunningRecognizeMetadata{}
1535	if protoimpl.UnsafeEnabled {
1536		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[11]
1537		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1538		ms.StoreMessageInfo(mi)
1539	}
1540}
1541
1542func (x *LongRunningRecognizeMetadata) String() string {
1543	return protoimpl.X.MessageStringOf(x)
1544}
1545
1546func (*LongRunningRecognizeMetadata) ProtoMessage() {}
1547
1548func (x *LongRunningRecognizeMetadata) ProtoReflect() protoreflect.Message {
1549	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[11]
1550	if protoimpl.UnsafeEnabled && x != nil {
1551		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1552		if ms.LoadMessageInfo() == nil {
1553			ms.StoreMessageInfo(mi)
1554		}
1555		return ms
1556	}
1557	return mi.MessageOf(x)
1558}
1559
1560// Deprecated: Use LongRunningRecognizeMetadata.ProtoReflect.Descriptor instead.
1561func (*LongRunningRecognizeMetadata) Descriptor() ([]byte, []int) {
1562	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{11}
1563}
1564
1565func (x *LongRunningRecognizeMetadata) GetProgressPercent() int32 {
1566	if x != nil {
1567		return x.ProgressPercent
1568	}
1569	return 0
1570}
1571
1572func (x *LongRunningRecognizeMetadata) GetStartTime() *timestamp.Timestamp {
1573	if x != nil {
1574		return x.StartTime
1575	}
1576	return nil
1577}
1578
1579func (x *LongRunningRecognizeMetadata) GetLastUpdateTime() *timestamp.Timestamp {
1580	if x != nil {
1581		return x.LastUpdateTime
1582	}
1583	return nil
1584}
1585
1586// `StreamingRecognizeResponse` is the only message returned to the client by
1587// `StreamingRecognize`. A series of zero or more `StreamingRecognizeResponse`
1588// messages are streamed back to the client. If there is no recognizable
1589// audio, and `single_utterance` is set to false, then no messages are streamed
1590// back to the client.
1591//
1592// Here's an example of a series of ten `StreamingRecognizeResponse`s that might
1593// be returned while processing audio:
1594//
1595// 1. results { alternatives { transcript: "tube" } stability: 0.01 }
1596//
1597// 2. results { alternatives { transcript: "to be a" } stability: 0.01 }
1598//
1599// 3. results { alternatives { transcript: "to be" } stability: 0.9 }
1600//    results { alternatives { transcript: " or not to be" } stability: 0.01 }
1601//
1602// 4. results { alternatives { transcript: "to be or not to be"
1603//                             confidence: 0.92 }
1604//              alternatives { transcript: "to bee or not to bee" }
1605//              is_final: true }
1606//
1607// 5. results { alternatives { transcript: " that's" } stability: 0.01 }
1608//
1609// 6. results { alternatives { transcript: " that is" } stability: 0.9 }
1610//    results { alternatives { transcript: " the question" } stability: 0.01 }
1611//
1612// 7. results { alternatives { transcript: " that is the question"
1613//                             confidence: 0.98 }
1614//              alternatives { transcript: " that was the question" }
1615//              is_final: true }
1616//
1617// Notes:
1618//
1619// - Only two of the above responses #4 and #7 contain final results; they are
1620//   indicated by `is_final: true`. Concatenating these together generates the
1621//   full transcript: "to be or not to be that is the question".
1622//
1623// - The others contain interim `results`. #3 and #6 contain two interim
1624//   `results`: the first portion has a high stability and is less likely to
1625//   change; the second portion has a low stability and is very likely to
1626//   change. A UI designer might choose to show only high stability `results`.
1627//
1628// - The specific `stability` and `confidence` values shown above are only for
1629//   illustrative purposes. Actual values may vary.
1630//
1631// - In each response, only one of these fields will be set:
1632//     `error`,
1633//     `speech_event_type`, or
1634//     one or more (repeated) `results`.
1635type StreamingRecognizeResponse struct {
1636	state         protoimpl.MessageState
1637	sizeCache     protoimpl.SizeCache
1638	unknownFields protoimpl.UnknownFields
1639
1640	// If set, returns a [google.rpc.Status][google.rpc.Status] message that
1641	// specifies the error for the operation.
1642	Error *status.Status `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"`
1643	// This repeated list contains zero or more results that
1644	// correspond to consecutive portions of the audio currently being processed.
1645	// It contains zero or one `is_final=true` result (the newly settled portion),
1646	// followed by zero or more `is_final=false` results (the interim results).
1647	Results []*StreamingRecognitionResult `protobuf:"bytes,2,rep,name=results,proto3" json:"results,omitempty"`
1648	// Indicates the type of speech event.
1649	SpeechEventType StreamingRecognizeResponse_SpeechEventType `protobuf:"varint,4,opt,name=speech_event_type,json=speechEventType,proto3,enum=google.cloud.speech.v1.StreamingRecognizeResponse_SpeechEventType" json:"speech_event_type,omitempty"`
1650}
1651
1652func (x *StreamingRecognizeResponse) Reset() {
1653	*x = StreamingRecognizeResponse{}
1654	if protoimpl.UnsafeEnabled {
1655		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[12]
1656		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1657		ms.StoreMessageInfo(mi)
1658	}
1659}
1660
1661func (x *StreamingRecognizeResponse) String() string {
1662	return protoimpl.X.MessageStringOf(x)
1663}
1664
1665func (*StreamingRecognizeResponse) ProtoMessage() {}
1666
1667func (x *StreamingRecognizeResponse) ProtoReflect() protoreflect.Message {
1668	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[12]
1669	if protoimpl.UnsafeEnabled && x != nil {
1670		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1671		if ms.LoadMessageInfo() == nil {
1672			ms.StoreMessageInfo(mi)
1673		}
1674		return ms
1675	}
1676	return mi.MessageOf(x)
1677}
1678
1679// Deprecated: Use StreamingRecognizeResponse.ProtoReflect.Descriptor instead.
1680func (*StreamingRecognizeResponse) Descriptor() ([]byte, []int) {
1681	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{12}
1682}
1683
1684func (x *StreamingRecognizeResponse) GetError() *status.Status {
1685	if x != nil {
1686		return x.Error
1687	}
1688	return nil
1689}
1690
1691func (x *StreamingRecognizeResponse) GetResults() []*StreamingRecognitionResult {
1692	if x != nil {
1693		return x.Results
1694	}
1695	return nil
1696}
1697
1698func (x *StreamingRecognizeResponse) GetSpeechEventType() StreamingRecognizeResponse_SpeechEventType {
1699	if x != nil {
1700		return x.SpeechEventType
1701	}
1702	return StreamingRecognizeResponse_SPEECH_EVENT_UNSPECIFIED
1703}
1704
1705// A streaming speech recognition result corresponding to a portion of the audio
1706// that is currently being processed.
1707type StreamingRecognitionResult struct {
1708	state         protoimpl.MessageState
1709	sizeCache     protoimpl.SizeCache
1710	unknownFields protoimpl.UnknownFields
1711
1712	// May contain one or more recognition hypotheses (up to the
1713	// maximum specified in `max_alternatives`).
1714	// These alternatives are ordered in terms of accuracy, with the top (first)
1715	// alternative being the most probable, as ranked by the recognizer.
1716	Alternatives []*SpeechRecognitionAlternative `protobuf:"bytes,1,rep,name=alternatives,proto3" json:"alternatives,omitempty"`
1717	// If `false`, this `StreamingRecognitionResult` represents an
1718	// interim result that may change. If `true`, this is the final time the
1719	// speech service will return this particular `StreamingRecognitionResult`,
1720	// the recognizer will not return any further hypotheses for this portion of
1721	// the transcript and corresponding audio.
1722	IsFinal bool `protobuf:"varint,2,opt,name=is_final,json=isFinal,proto3" json:"is_final,omitempty"`
1723	// An estimate of the likelihood that the recognizer will not
1724	// change its guess about this interim result. Values range from 0.0
1725	// (completely unstable) to 1.0 (completely stable).
1726	// This field is only provided for interim results (`is_final=false`).
1727	// The default of 0.0 is a sentinel value indicating `stability` was not set.
1728	Stability float32 `protobuf:"fixed32,3,opt,name=stability,proto3" json:"stability,omitempty"`
1729	// Time offset of the end of this result relative to the
1730	// beginning of the audio.
1731	ResultEndTime *duration.Duration `protobuf:"bytes,4,opt,name=result_end_time,json=resultEndTime,proto3" json:"result_end_time,omitempty"`
1732	// For multi-channel audio, this is the channel number corresponding to the
1733	// recognized result for the audio from that channel.
1734	// For audio_channel_count = N, its output values can range from '1' to 'N'.
1735	ChannelTag int32 `protobuf:"varint,5,opt,name=channel_tag,json=channelTag,proto3" json:"channel_tag,omitempty"`
1736	// The [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag of
1737	// the language in this result. This language code was detected to have the
1738	// most likelihood of being spoken in the audio.
1739	LanguageCode string `protobuf:"bytes,6,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
1740}
1741
1742func (x *StreamingRecognitionResult) Reset() {
1743	*x = StreamingRecognitionResult{}
1744	if protoimpl.UnsafeEnabled {
1745		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[13]
1746		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1747		ms.StoreMessageInfo(mi)
1748	}
1749}
1750
1751func (x *StreamingRecognitionResult) String() string {
1752	return protoimpl.X.MessageStringOf(x)
1753}
1754
1755func (*StreamingRecognitionResult) ProtoMessage() {}
1756
1757func (x *StreamingRecognitionResult) ProtoReflect() protoreflect.Message {
1758	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[13]
1759	if protoimpl.UnsafeEnabled && x != nil {
1760		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1761		if ms.LoadMessageInfo() == nil {
1762			ms.StoreMessageInfo(mi)
1763		}
1764		return ms
1765	}
1766	return mi.MessageOf(x)
1767}
1768
1769// Deprecated: Use StreamingRecognitionResult.ProtoReflect.Descriptor instead.
1770func (*StreamingRecognitionResult) Descriptor() ([]byte, []int) {
1771	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{13}
1772}
1773
1774func (x *StreamingRecognitionResult) GetAlternatives() []*SpeechRecognitionAlternative {
1775	if x != nil {
1776		return x.Alternatives
1777	}
1778	return nil
1779}
1780
1781func (x *StreamingRecognitionResult) GetIsFinal() bool {
1782	if x != nil {
1783		return x.IsFinal
1784	}
1785	return false
1786}
1787
1788func (x *StreamingRecognitionResult) GetStability() float32 {
1789	if x != nil {
1790		return x.Stability
1791	}
1792	return 0
1793}
1794
1795func (x *StreamingRecognitionResult) GetResultEndTime() *duration.Duration {
1796	if x != nil {
1797		return x.ResultEndTime
1798	}
1799	return nil
1800}
1801
1802func (x *StreamingRecognitionResult) GetChannelTag() int32 {
1803	if x != nil {
1804		return x.ChannelTag
1805	}
1806	return 0
1807}
1808
1809func (x *StreamingRecognitionResult) GetLanguageCode() string {
1810	if x != nil {
1811		return x.LanguageCode
1812	}
1813	return ""
1814}
1815
1816// A speech recognition result corresponding to a portion of the audio.
1817type SpeechRecognitionResult struct {
1818	state         protoimpl.MessageState
1819	sizeCache     protoimpl.SizeCache
1820	unknownFields protoimpl.UnknownFields
1821
1822	// May contain one or more recognition hypotheses (up to the
1823	// maximum specified in `max_alternatives`).
1824	// These alternatives are ordered in terms of accuracy, with the top (first)
1825	// alternative being the most probable, as ranked by the recognizer.
1826	Alternatives []*SpeechRecognitionAlternative `protobuf:"bytes,1,rep,name=alternatives,proto3" json:"alternatives,omitempty"`
1827	// For multi-channel audio, this is the channel number corresponding to the
1828	// recognized result for the audio from that channel.
1829	// For audio_channel_count = N, its output values can range from '1' to 'N'.
1830	ChannelTag int32 `protobuf:"varint,2,opt,name=channel_tag,json=channelTag,proto3" json:"channel_tag,omitempty"`
1831}
1832
1833func (x *SpeechRecognitionResult) Reset() {
1834	*x = SpeechRecognitionResult{}
1835	if protoimpl.UnsafeEnabled {
1836		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[14]
1837		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1838		ms.StoreMessageInfo(mi)
1839	}
1840}
1841
1842func (x *SpeechRecognitionResult) String() string {
1843	return protoimpl.X.MessageStringOf(x)
1844}
1845
1846func (*SpeechRecognitionResult) ProtoMessage() {}
1847
1848func (x *SpeechRecognitionResult) ProtoReflect() protoreflect.Message {
1849	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[14]
1850	if protoimpl.UnsafeEnabled && x != nil {
1851		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1852		if ms.LoadMessageInfo() == nil {
1853			ms.StoreMessageInfo(mi)
1854		}
1855		return ms
1856	}
1857	return mi.MessageOf(x)
1858}
1859
1860// Deprecated: Use SpeechRecognitionResult.ProtoReflect.Descriptor instead.
1861func (*SpeechRecognitionResult) Descriptor() ([]byte, []int) {
1862	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{14}
1863}
1864
1865func (x *SpeechRecognitionResult) GetAlternatives() []*SpeechRecognitionAlternative {
1866	if x != nil {
1867		return x.Alternatives
1868	}
1869	return nil
1870}
1871
1872func (x *SpeechRecognitionResult) GetChannelTag() int32 {
1873	if x != nil {
1874		return x.ChannelTag
1875	}
1876	return 0
1877}
1878
1879// Alternative hypotheses (a.k.a. n-best list).
1880type SpeechRecognitionAlternative struct {
1881	state         protoimpl.MessageState
1882	sizeCache     protoimpl.SizeCache
1883	unknownFields protoimpl.UnknownFields
1884
1885	// Transcript text representing the words that the user spoke.
1886	Transcript string `protobuf:"bytes,1,opt,name=transcript,proto3" json:"transcript,omitempty"`
1887	// The confidence estimate between 0.0 and 1.0. A higher number
1888	// indicates an estimated greater likelihood that the recognized words are
1889	// correct. This field is set only for the top alternative of a non-streaming
1890	// result or, of a streaming result where `is_final=true`.
1891	// This field is not guaranteed to be accurate and users should not rely on it
1892	// to be always provided.
1893	// The default of 0.0 is a sentinel value indicating `confidence` was not set.
1894	Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
1895	// A list of word-specific information for each recognized word.
1896	// Note: When `enable_speaker_diarization` is true, you will see all the words
1897	// from the beginning of the audio.
1898	Words []*WordInfo `protobuf:"bytes,3,rep,name=words,proto3" json:"words,omitempty"`
1899}
1900
1901func (x *SpeechRecognitionAlternative) Reset() {
1902	*x = SpeechRecognitionAlternative{}
1903	if protoimpl.UnsafeEnabled {
1904		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[15]
1905		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1906		ms.StoreMessageInfo(mi)
1907	}
1908}
1909
1910func (x *SpeechRecognitionAlternative) String() string {
1911	return protoimpl.X.MessageStringOf(x)
1912}
1913
1914func (*SpeechRecognitionAlternative) ProtoMessage() {}
1915
1916func (x *SpeechRecognitionAlternative) ProtoReflect() protoreflect.Message {
1917	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[15]
1918	if protoimpl.UnsafeEnabled && x != nil {
1919		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1920		if ms.LoadMessageInfo() == nil {
1921			ms.StoreMessageInfo(mi)
1922		}
1923		return ms
1924	}
1925	return mi.MessageOf(x)
1926}
1927
1928// Deprecated: Use SpeechRecognitionAlternative.ProtoReflect.Descriptor instead.
1929func (*SpeechRecognitionAlternative) Descriptor() ([]byte, []int) {
1930	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{15}
1931}
1932
1933func (x *SpeechRecognitionAlternative) GetTranscript() string {
1934	if x != nil {
1935		return x.Transcript
1936	}
1937	return ""
1938}
1939
1940func (x *SpeechRecognitionAlternative) GetConfidence() float32 {
1941	if x != nil {
1942		return x.Confidence
1943	}
1944	return 0
1945}
1946
1947func (x *SpeechRecognitionAlternative) GetWords() []*WordInfo {
1948	if x != nil {
1949		return x.Words
1950	}
1951	return nil
1952}
1953
1954// Word-specific information for recognized words.
1955type WordInfo struct {
1956	state         protoimpl.MessageState
1957	sizeCache     protoimpl.SizeCache
1958	unknownFields protoimpl.UnknownFields
1959
1960	// Time offset relative to the beginning of the audio,
1961	// and corresponding to the start of the spoken word.
1962	// This field is only set if `enable_word_time_offsets=true` and only
1963	// in the top hypothesis.
1964	// This is an experimental feature and the accuracy of the time offset can
1965	// vary.
1966	StartTime *duration.Duration `protobuf:"bytes,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
1967	// Time offset relative to the beginning of the audio,
1968	// and corresponding to the end of the spoken word.
1969	// This field is only set if `enable_word_time_offsets=true` and only
1970	// in the top hypothesis.
1971	// This is an experimental feature and the accuracy of the time offset can
1972	// vary.
1973	EndTime *duration.Duration `protobuf:"bytes,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
1974	// The word corresponding to this set of information.
1975	Word string `protobuf:"bytes,3,opt,name=word,proto3" json:"word,omitempty"`
1976	// A distinct integer value is assigned for every speaker within
1977	// the audio. This field specifies which one of those speakers was detected to
1978	// have spoken this word. Value ranges from '1' to diarization_speaker_count.
1979	// speaker_tag is set if enable_speaker_diarization = 'true' and only in the
1980	// top alternative.
1981	SpeakerTag int32 `protobuf:"varint,5,opt,name=speaker_tag,json=speakerTag,proto3" json:"speaker_tag,omitempty"`
1982}
1983
1984func (x *WordInfo) Reset() {
1985	*x = WordInfo{}
1986	if protoimpl.UnsafeEnabled {
1987		mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[16]
1988		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1989		ms.StoreMessageInfo(mi)
1990	}
1991}
1992
1993func (x *WordInfo) String() string {
1994	return protoimpl.X.MessageStringOf(x)
1995}
1996
1997func (*WordInfo) ProtoMessage() {}
1998
1999func (x *WordInfo) ProtoReflect() protoreflect.Message {
2000	mi := &file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[16]
2001	if protoimpl.UnsafeEnabled && x != nil {
2002		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2003		if ms.LoadMessageInfo() == nil {
2004			ms.StoreMessageInfo(mi)
2005		}
2006		return ms
2007	}
2008	return mi.MessageOf(x)
2009}
2010
2011// Deprecated: Use WordInfo.ProtoReflect.Descriptor instead.
2012func (*WordInfo) Descriptor() ([]byte, []int) {
2013	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP(), []int{16}
2014}
2015
2016func (x *WordInfo) GetStartTime() *duration.Duration {
2017	if x != nil {
2018		return x.StartTime
2019	}
2020	return nil
2021}
2022
2023func (x *WordInfo) GetEndTime() *duration.Duration {
2024	if x != nil {
2025		return x.EndTime
2026	}
2027	return nil
2028}
2029
2030func (x *WordInfo) GetWord() string {
2031	if x != nil {
2032		return x.Word
2033	}
2034	return ""
2035}
2036
2037func (x *WordInfo) GetSpeakerTag() int32 {
2038	if x != nil {
2039		return x.SpeakerTag
2040	}
2041	return 0
2042}
2043
2044var File_google_cloud_speech_v1_cloud_speech_proto protoreflect.FileDescriptor
2045
2046var file_google_cloud_speech_v1_cloud_speech_proto_rawDesc = []byte{
2047	0x0a, 0x29, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x73,
2048	0x70, 0x65, 0x65, 0x63, 0x68, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x73,
2049	0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x16, 0x67, 0x6f, 0x6f,
2050	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68,
2051	0x2e, 0x76, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f,
2052	0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
2053	0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c,
2054	0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67,
2055	0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68,
2056	0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x67, 0x6f, 0x6f,
2057	0x67, 0x6c, 0x65, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2f,
2058	0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
2059	0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
2060	0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f,
2061	0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72,
2062	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f,
2063	0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d,
2064	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f,
2065	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x72, 0x70, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e,
2066	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9f, 0x01, 0x0a, 0x10, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e,
2067	0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x06, 0x63, 0x6f,
2068	0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f,
2069	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68,
2070	0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43,
2071	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66,
2072	0x69, 0x67, 0x12, 0x43, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28,
2073	0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
2074	0x2e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x67,
2075	0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x42, 0x03, 0xe0, 0x41, 0x02,
2076	0x52, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x22, 0xaa, 0x01, 0x0a, 0x1b, 0x4c, 0x6f, 0x6e, 0x67,
2077	0x52, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65,
2078	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69,
2079	0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
2080	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31,
2081	0x2e, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66,
2082	0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
2083	0x43, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28,
2084	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70,
2085	0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74,
2086	0x69, 0x6f, 0x6e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x61,
2087	0x75, 0x64, 0x69, 0x6f, 0x22, 0xb8, 0x01, 0x0a, 0x19, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69,
2088	0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
2089	0x73, 0x74, 0x12, 0x5f, 0x0a, 0x10, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x5f,
2090	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67,
2091	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65,
2092	0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x52,
2093	0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
2094	0x48, 0x00, 0x52, 0x0f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e,
2095	0x66, 0x69, 0x67, 0x12, 0x25, 0x0a, 0x0d, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63, 0x6f, 0x6e,
2096	0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0c, 0x61, 0x75,
2097	0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x73, 0x74,
2098	0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22,
2099	0xb8, 0x01, 0x0a, 0x1a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63,
2100	0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x46,
2101	0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29,
2102	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70,
2103	0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74,
2104	0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06,
2105	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65,
2106	0x5f, 0x75, 0x74, 0x74, 0x65, 0x72, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08,
2107	0x52, 0x0f, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x74, 0x74, 0x65, 0x72, 0x61, 0x6e, 0x63,
2108	0x65, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x69, 0x6d, 0x5f, 0x72, 0x65, 0x73,
2109	0x75, 0x6c, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x69, 0x6e, 0x74, 0x65,
2110	0x72, 0x69, 0x6d, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0xd6, 0x07, 0x0a, 0x11, 0x52,
2111	0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
2112	0x12, 0x53, 0x0a, 0x08, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01,
2113	0x28, 0x0e, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
2114	0x64, 0x2e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x63, 0x6f,
2115	0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x41, 0x75,
2116	0x64, 0x69, 0x6f, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x65, 0x6e, 0x63,
2117	0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f,
2118	0x72, 0x61, 0x74, 0x65, 0x5f, 0x68, 0x65, 0x72, 0x74, 0x7a, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
2119	0x52, 0x0f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x61, 0x74, 0x65, 0x48, 0x65, 0x72, 0x74,
2120	0x7a, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
2121	0x65, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11,
2122	0x61, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x75, 0x6e,
2123	0x74, 0x12, 0x54, 0x0a, 0x27, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x70, 0x61,
2124	0x72, 0x61, 0x74, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e,
2125	0x5f, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x0c, 0x20, 0x01,
2126	0x28, 0x08, 0x52, 0x23, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x70, 0x61, 0x72, 0x61,
2127	0x74, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72,
2128	0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75,
2129	0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
2130	0xe0, 0x41, 0x02, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64,
2131	0x65, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61,
2132	0x74, 0x69, 0x76, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6d, 0x61, 0x78,
2133	0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x10,
2134	0x70, 0x72, 0x6f, 0x66, 0x61, 0x6e, 0x69, 0x74, 0x79, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72,
2135	0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x61, 0x6e, 0x69, 0x74,
2136	0x79, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x4e, 0x0a, 0x0f, 0x73, 0x70, 0x65, 0x65, 0x63,
2137	0x68, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b,
2138	0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
2139	0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68,
2140	0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x43,
2141	0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x12, 0x37, 0x0a, 0x18, 0x65, 0x6e, 0x61, 0x62, 0x6c,
2142	0x65, 0x5f, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73,
2143	0x65, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x65, 0x6e, 0x61, 0x62, 0x6c,
2144	0x65, 0x57, 0x6f, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x73,
2145	0x12, 0x40, 0x0a, 0x1c, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x6d,
2146	0x61, 0x74, 0x69, 0x63, 0x5f, 0x70, 0x75, 0x6e, 0x63, 0x74, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e,
2147	0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x75,
2148	0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x50, 0x75, 0x6e, 0x63, 0x74, 0x75, 0x61, 0x74, 0x69,
2149	0x6f, 0x6e, 0x12, 0x5f, 0x0a, 0x12, 0x64, 0x69, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f,
2150	0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30,
2151	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70,
2152	0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x70, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x44,
2153	0x69, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
2154	0x52, 0x11, 0x64, 0x69, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e,
2155	0x66, 0x69, 0x67, 0x12, 0x47, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18,
2156	0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
2157	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52,
2158	0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
2159	0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05,
2160	0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64,
2161	0x65, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x75, 0x73, 0x65, 0x5f, 0x65, 0x6e, 0x68, 0x61, 0x6e, 0x63,
2162	0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x75, 0x73, 0x65, 0x45, 0x6e, 0x68,
2163	0x61, 0x6e, 0x63, 0x65, 0x64, 0x22, 0x8b, 0x01, 0x0a, 0x0d, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x45,
2164	0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x18, 0x0a, 0x14, 0x45, 0x4e, 0x43, 0x4f, 0x44,
2165	0x49, 0x4e, 0x47, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
2166	0x00, 0x12, 0x0c, 0x0a, 0x08, 0x4c, 0x49, 0x4e, 0x45, 0x41, 0x52, 0x31, 0x36, 0x10, 0x01, 0x12,
2167	0x08, 0x0a, 0x04, 0x46, 0x4c, 0x41, 0x43, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x4d, 0x55, 0x4c,
2168	0x41, 0x57, 0x10, 0x03, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4d, 0x52, 0x10, 0x04, 0x12, 0x0a, 0x0a,
2169	0x06, 0x41, 0x4d, 0x52, 0x5f, 0x57, 0x42, 0x10, 0x05, 0x12, 0x0c, 0x0a, 0x08, 0x4f, 0x47, 0x47,
2170	0x5f, 0x4f, 0x50, 0x55, 0x53, 0x10, 0x06, 0x12, 0x1a, 0x0a, 0x16, 0x53, 0x50, 0x45, 0x45, 0x58,
2171	0x5f, 0x57, 0x49, 0x54, 0x48, 0x5f, 0x48, 0x45, 0x41, 0x44, 0x45, 0x52, 0x5f, 0x42, 0x59, 0x54,
2172	0x45, 0x10, 0x07, 0x22, 0xd8, 0x01, 0x0a, 0x18, 0x53, 0x70, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x44,
2173	0x69, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
2174	0x12, 0x3c, 0x0a, 0x1a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x61, 0x6b,
2175	0x65, 0x72, 0x5f, 0x64, 0x69, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01,
2176	0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x61,
2177	0x6b, 0x65, 0x72, 0x44, 0x69, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a,
2178	0x0a, 0x11, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x5f, 0x63, 0x6f,
2179	0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6d, 0x69, 0x6e, 0x53, 0x70,
2180	0x65, 0x61, 0x6b, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x6d, 0x61,
2181	0x78, 0x5f, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
2182	0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x53, 0x70, 0x65, 0x61, 0x6b, 0x65,
2183	0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0b, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x65,
2184	0x72, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x05, 0x18, 0x01, 0xe0,
2185	0x41, 0x03, 0x52, 0x0a, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x54, 0x61, 0x67, 0x22, 0xba,
2186	0x09, 0x0a, 0x13, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65,
2187	0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x66, 0x0a, 0x10, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x61,
2188	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
2189	0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
2190	0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e,
2191	0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x49, 0x6e,
2192	0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0f, 0x69,
2193	0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3e,
2194	0x0a, 0x1c, 0x69, 0x6e, 0x64, 0x75, 0x73, 0x74, 0x72, 0x79, 0x5f, 0x6e, 0x61, 0x69, 0x63, 0x73,
2195	0x5f, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x6f, 0x66, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x03,
2196	0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x69, 0x6e, 0x64, 0x75, 0x73, 0x74, 0x72, 0x79, 0x4e, 0x61,
2197	0x69, 0x63, 0x73, 0x43, 0x6f, 0x64, 0x65, 0x4f, 0x66, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x6f,
2198	0x0a, 0x13, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x64, 0x69, 0x73,
2199	0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3e, 0x2e, 0x67, 0x6f,
2200	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65, 0x63,
2201	0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e,
2202	0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x70, 0x68,
2203	0x6f, 0x6e, 0x65, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x12, 0x6d, 0x69, 0x63,
2204	0x72, 0x6f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12,
2205	0x6d, 0x0a, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x65, 0x64, 0x69,
2206	0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3d, 0x2e, 0x67,
2207	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65,
2208	0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f,
2209	0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e,
2210	0x61, 0x6c, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x11, 0x6f, 0x72, 0x69,
2211	0x67, 0x69, 0x6e, 0x61, 0x6c, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x73,
2212	0x0a, 0x15, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x65, 0x76, 0x69,
2213	0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3f, 0x2e,
2214	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65,
2215	0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69,
2216	0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x72,
2217	0x64, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x13,
2218	0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x54,
2219	0x79, 0x70, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67,
2220	0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01,
2221	0x28, 0x09, 0x52, 0x13, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x76,
2222	0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x6f, 0x72, 0x69, 0x67, 0x69,
2223	0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20,
2224	0x01, 0x28, 0x09, 0x52, 0x10, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x4d, 0x69, 0x6d,
2225	0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x74,
2226	0x6f, 0x70, 0x69, 0x63, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x75, 0x64, 0x69,
2227	0x6f, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x22, 0xc5, 0x01, 0x0a, 0x0f, 0x49, 0x6e, 0x74, 0x65, 0x72,
2228	0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x49, 0x4e,
2229	0x54, 0x45, 0x52, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55,
2230	0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a,
2231	0x44, 0x49, 0x53, 0x43, 0x55, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c,
2232	0x50, 0x52, 0x45, 0x53, 0x45, 0x4e, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x0e,
2233	0x0a, 0x0a, 0x50, 0x48, 0x4f, 0x4e, 0x45, 0x5f, 0x43, 0x41, 0x4c, 0x4c, 0x10, 0x03, 0x12, 0x0d,
2234	0x0a, 0x09, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x4d, 0x41, 0x49, 0x4c, 0x10, 0x04, 0x12, 0x1b, 0x0a,
2235	0x17, 0x50, 0x52, 0x4f, 0x46, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x4c, 0x59, 0x5f,
2236	0x50, 0x52, 0x4f, 0x44, 0x55, 0x43, 0x45, 0x44, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x56, 0x4f,
2237	0x49, 0x43, 0x45, 0x5f, 0x53, 0x45, 0x41, 0x52, 0x43, 0x48, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d,
2238	0x56, 0x4f, 0x49, 0x43, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x41, 0x4e, 0x44, 0x10, 0x07, 0x12,
2239	0x0d, 0x0a, 0x09, 0x44, 0x49, 0x43, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x08, 0x22, 0x64,
2240	0x0a, 0x12, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x44, 0x69, 0x73, 0x74,
2241	0x61, 0x6e, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x1f, 0x4d, 0x49, 0x43, 0x52, 0x4f, 0x50, 0x48, 0x4f,
2242	0x4e, 0x45, 0x5f, 0x44, 0x49, 0x53, 0x54, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50,
2243	0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x4e, 0x45, 0x41,
2244	0x52, 0x46, 0x49, 0x45, 0x4c, 0x44, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x49, 0x44, 0x46,
2245	0x49, 0x45, 0x4c, 0x44, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x41, 0x52, 0x46, 0x49, 0x45,
2246	0x4c, 0x44, 0x10, 0x03, 0x22, 0x4e, 0x0a, 0x11, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c,
2247	0x4d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x1f, 0x4f, 0x52, 0x49,
2248	0x47, 0x49, 0x4e, 0x41, 0x4c, 0x5f, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x5f, 0x54, 0x59, 0x50, 0x45,
2249	0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x09,
2250	0x0a, 0x05, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x56, 0x49, 0x44,
2251	0x45, 0x4f, 0x10, 0x02, 0x22, 0xa4, 0x01, 0x0a, 0x13, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x69,
2252	0x6e, 0x67, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x25, 0x0a, 0x21,
2253	0x52, 0x45, 0x43, 0x4f, 0x52, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x45, 0x56, 0x49, 0x43, 0x45,
2254	0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
2255	0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x4d, 0x41, 0x52, 0x54, 0x50, 0x48, 0x4f, 0x4e,
2256	0x45, 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02, 0x50, 0x43, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x50,
2257	0x48, 0x4f, 0x4e, 0x45, 0x5f, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x03, 0x12, 0x0b, 0x0a, 0x07, 0x56,
2258	0x45, 0x48, 0x49, 0x43, 0x4c, 0x45, 0x10, 0x04, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x54, 0x48, 0x45,
2259	0x52, 0x5f, 0x4f, 0x55, 0x54, 0x44, 0x4f, 0x4f, 0x52, 0x5f, 0x44, 0x45, 0x56, 0x49, 0x43, 0x45,
2260	0x10, 0x05, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x5f, 0x49, 0x4e, 0x44, 0x4f,
2261	0x4f, 0x52, 0x5f, 0x44, 0x45, 0x56, 0x49, 0x43, 0x45, 0x10, 0x06, 0x22, 0x29, 0x0a, 0x0d, 0x53,
2262	0x70, 0x65, 0x65, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x18, 0x0a, 0x07,
2263	0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x70,
2264	0x68, 0x72, 0x61, 0x73, 0x65, 0x73, 0x22, 0x52, 0x0a, 0x10, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e,
2265	0x69, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x1a, 0x0a, 0x07, 0x63, 0x6f,
2266	0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x07, 0x63,
2267	0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x02, 0x20,
2268	0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x03, 0x75, 0x72, 0x69, 0x42, 0x0e, 0x0a, 0x0c, 0x61, 0x75,
2269	0x64, 0x69, 0x6f, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x5e, 0x0a, 0x11, 0x52, 0x65,
2270	0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
2271	0x49, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
2272	0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
2273	0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68,
2274	0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c,
2275	0x74, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0x69, 0x0a, 0x1c, 0x4c, 0x6f,
2276	0x6e, 0x67, 0x52, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69,
2277	0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x07, 0x72, 0x65,
2278	0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f,
2279	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65, 0x63,
2280	0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x67,
2281	0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x07, 0x72, 0x65,
2282	0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0xca, 0x01, 0x0a, 0x1c, 0x4c, 0x6f, 0x6e, 0x67, 0x52, 0x75,
2283	0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x4d, 0x65,
2284	0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65,
2285	0x73, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
2286	0x52, 0x0f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e,
2287	0x74, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18,
2288	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
2289	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
2290	0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x44, 0x0a, 0x10,
2291	0x6c, 0x61, 0x73, 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65,
2292	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
2293	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
2294	0x6d, 0x70, 0x52, 0x0e, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69,
2295	0x6d, 0x65, 0x22, 0xd2, 0x02, 0x0a, 0x1a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67,
2296	0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
2297	0x65, 0x12, 0x28, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
2298	0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74,
2299	0x61, 0x74, 0x75, 0x73, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x4c, 0x0a, 0x07, 0x72,
2300	0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67,
2301	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65,
2302	0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x52,
2303	0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
2304	0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x6e, 0x0a, 0x11, 0x73, 0x70, 0x65,
2305	0x65, 0x63, 0x68, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04,
2306	0x20, 0x01, 0x28, 0x0e, 0x32, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
2307	0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74,
2308	0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65,
2309	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x45,
2310	0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0f, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68,
2311	0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x4c, 0x0a, 0x0f, 0x53, 0x70, 0x65,
2312	0x65, 0x63, 0x68, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18,
2313	0x53, 0x50, 0x45, 0x45, 0x43, 0x48, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x4e, 0x53,
2314	0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x4e,
2315	0x44, 0x5f, 0x4f, 0x46, 0x5f, 0x53, 0x49, 0x4e, 0x47, 0x4c, 0x45, 0x5f, 0x55, 0x54, 0x54, 0x45,
2316	0x52, 0x41, 0x4e, 0x43, 0x45, 0x10, 0x01, 0x22, 0xbd, 0x02, 0x0a, 0x1a, 0x53, 0x74, 0x72, 0x65,
2317	0x61, 0x6d, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e,
2318	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x58, 0x0a, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e,
2319	0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67,
2320	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65,
2321	0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x52, 0x65, 0x63, 0x6f,
2322	0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69,
2323	0x76, 0x65, 0x52, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73,
2324	0x12, 0x19, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01,
2325	0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x73,
2326	0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09,
2327	0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x41, 0x0a, 0x0f, 0x72, 0x65, 0x73,
2328	0x75, 0x6c, 0x74, 0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01,
2329	0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
2330	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x72,
2331	0x65, 0x73, 0x75, 0x6c, 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b,
2332	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28,
2333	0x05, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x61, 0x67, 0x12, 0x28, 0x0a,
2334	0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x06,
2335	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75,
2336	0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x94, 0x01, 0x0a, 0x17, 0x53, 0x70, 0x65, 0x65,
2337	0x63, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
2338	0x75, 0x6c, 0x74, 0x12, 0x58, 0x0a, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69,
2339	0x76, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
2340	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e,
2341	0x76, 0x31, 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69,
2342	0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x52,
2343	0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x12, 0x1f, 0x0a,
2344	0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01,
2345	0x28, 0x05, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x61, 0x67, 0x22, 0x96,
2346	0x01, 0x0a, 0x1c, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69,
2347	0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x12,
2348	0x1e, 0x0a, 0x0a, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x18, 0x01, 0x20,
2349	0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12,
2350	0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20,
2351	0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12,
2352	0x36, 0x0a, 0x05, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20,
2353	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70,
2354	0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f,
2355	0x52, 0x05, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x22, 0xb4, 0x01, 0x0a, 0x08, 0x57, 0x6f, 0x72, 0x64,
2356	0x49, 0x6e, 0x66, 0x6f, 0x12, 0x38, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69,
2357	0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
2358	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74,
2359	0x69, 0x6f, 0x6e, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x34,
2360	0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
2361	0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
2362	0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x65, 0x6e, 0x64,
2363	0x54, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01,
2364	0x28, 0x09, 0x52, 0x04, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x24, 0x0a, 0x0b, 0x73, 0x70, 0x65, 0x61,
2365	0x6b, 0x65, 0x72, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0,
2366	0x41, 0x03, 0x52, 0x0a, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x54, 0x61, 0x67, 0x32, 0xd1,
2367	0x04, 0x0a, 0x06, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x12, 0x90, 0x01, 0x0a, 0x09, 0x52, 0x65,
2368	0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x12, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
2369	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31,
2370	0x2e, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
2371	0x74, 0x1a, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
2372	0x2e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x67,
2373	0x6e, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2e, 0x82, 0xd3,
2374	0xe4, 0x93, 0x02, 0x19, 0x22, 0x14, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68,
2375	0x3a, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x0c,
2376	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2c, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x12, 0xe4, 0x01, 0x0a,
2377	0x14, 0x4c, 0x6f, 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f,
2378	0x67, 0x6e, 0x69, 0x7a, 0x65, 0x12, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
2379	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x4c,
2380	0x6f, 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e,
2381	0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f,
2382	0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e,
2383	0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x78, 0x82, 0xd3, 0xe4, 0x93, 0x02,
2384	0x24, 0x22, 0x1f, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x3a, 0x6c, 0x6f,
2385	0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69,
2386	0x7a, 0x65, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2c, 0x61,
2387	0x75, 0x64, 0x69, 0x6f, 0xca, 0x41, 0x3c, 0x0a, 0x1c, 0x4c, 0x6f, 0x6e, 0x67, 0x52, 0x75, 0x6e,
2388	0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73,
2389	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x4c, 0x6f, 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x6e, 0x69,
2390	0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64,
2391	0x61, 0x74, 0x61, 0x12, 0x81, 0x01, 0x0a, 0x12, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e,
2392	0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x6f,
2393	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68,
2394	0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63,
2395	0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e,
2396	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65,
2397	0x65, 0x63, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67,
2398	0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
2399	0x65, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01, 0x1a, 0x49, 0xca, 0x41, 0x15, 0x73, 0x70, 0x65, 0x65,
2400	0x63, 0x68, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
2401	0x6d, 0xd2, 0x41, 0x2e, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e,
2402	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61,
2403	0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
2404	0x72, 0x6d, 0x42, 0x72, 0x0a, 0x1a, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
2405	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x2e, 0x76, 0x31,
2406	0x42, 0x0b, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a,
2407	0x3c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f,
2408	0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67,
2409	0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x73, 0x70, 0x65,
2410	0x65, 0x63, 0x68, 0x2f, 0x76, 0x31, 0x3b, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0xf8, 0x01, 0x01,
2411	0xa2, 0x02, 0x03, 0x47, 0x43, 0x53, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
2412}
2413
2414var (
2415	file_google_cloud_speech_v1_cloud_speech_proto_rawDescOnce sync.Once
2416	file_google_cloud_speech_v1_cloud_speech_proto_rawDescData = file_google_cloud_speech_v1_cloud_speech_proto_rawDesc
2417)
2418
2419func file_google_cloud_speech_v1_cloud_speech_proto_rawDescGZIP() []byte {
2420	file_google_cloud_speech_v1_cloud_speech_proto_rawDescOnce.Do(func() {
2421		file_google_cloud_speech_v1_cloud_speech_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_speech_v1_cloud_speech_proto_rawDescData)
2422	})
2423	return file_google_cloud_speech_v1_cloud_speech_proto_rawDescData
2424}
2425
2426var file_google_cloud_speech_v1_cloud_speech_proto_enumTypes = make([]protoimpl.EnumInfo, 6)
2427var file_google_cloud_speech_v1_cloud_speech_proto_msgTypes = make([]protoimpl.MessageInfo, 17)
2428var file_google_cloud_speech_v1_cloud_speech_proto_goTypes = []interface{}{
2429	(RecognitionConfig_AudioEncoding)(0),            // 0: google.cloud.speech.v1.RecognitionConfig.AudioEncoding
2430	(RecognitionMetadata_InteractionType)(0),        // 1: google.cloud.speech.v1.RecognitionMetadata.InteractionType
2431	(RecognitionMetadata_MicrophoneDistance)(0),     // 2: google.cloud.speech.v1.RecognitionMetadata.MicrophoneDistance
2432	(RecognitionMetadata_OriginalMediaType)(0),      // 3: google.cloud.speech.v1.RecognitionMetadata.OriginalMediaType
2433	(RecognitionMetadata_RecordingDeviceType)(0),    // 4: google.cloud.speech.v1.RecognitionMetadata.RecordingDeviceType
2434	(StreamingRecognizeResponse_SpeechEventType)(0), // 5: google.cloud.speech.v1.StreamingRecognizeResponse.SpeechEventType
2435	(*RecognizeRequest)(nil),                        // 6: google.cloud.speech.v1.RecognizeRequest
2436	(*LongRunningRecognizeRequest)(nil),             // 7: google.cloud.speech.v1.LongRunningRecognizeRequest
2437	(*StreamingRecognizeRequest)(nil),               // 8: google.cloud.speech.v1.StreamingRecognizeRequest
2438	(*StreamingRecognitionConfig)(nil),              // 9: google.cloud.speech.v1.StreamingRecognitionConfig
2439	(*RecognitionConfig)(nil),                       // 10: google.cloud.speech.v1.RecognitionConfig
2440	(*SpeakerDiarizationConfig)(nil),                // 11: google.cloud.speech.v1.SpeakerDiarizationConfig
2441	(*RecognitionMetadata)(nil),                     // 12: google.cloud.speech.v1.RecognitionMetadata
2442	(*SpeechContext)(nil),                           // 13: google.cloud.speech.v1.SpeechContext
2443	(*RecognitionAudio)(nil),                        // 14: google.cloud.speech.v1.RecognitionAudio
2444	(*RecognizeResponse)(nil),                       // 15: google.cloud.speech.v1.RecognizeResponse
2445	(*LongRunningRecognizeResponse)(nil),            // 16: google.cloud.speech.v1.LongRunningRecognizeResponse
2446	(*LongRunningRecognizeMetadata)(nil),            // 17: google.cloud.speech.v1.LongRunningRecognizeMetadata
2447	(*StreamingRecognizeResponse)(nil),              // 18: google.cloud.speech.v1.StreamingRecognizeResponse
2448	(*StreamingRecognitionResult)(nil),              // 19: google.cloud.speech.v1.StreamingRecognitionResult
2449	(*SpeechRecognitionResult)(nil),                 // 20: google.cloud.speech.v1.SpeechRecognitionResult
2450	(*SpeechRecognitionAlternative)(nil),            // 21: google.cloud.speech.v1.SpeechRecognitionAlternative
2451	(*WordInfo)(nil),                                // 22: google.cloud.speech.v1.WordInfo
2452	(*timestamp.Timestamp)(nil),                     // 23: google.protobuf.Timestamp
2453	(*status.Status)(nil),                           // 24: google.rpc.Status
2454	(*duration.Duration)(nil),                       // 25: google.protobuf.Duration
2455	(*longrunning.Operation)(nil),                   // 26: google.longrunning.Operation
2456}
2457var file_google_cloud_speech_v1_cloud_speech_proto_depIdxs = []int32{
2458	10, // 0: google.cloud.speech.v1.RecognizeRequest.config:type_name -> google.cloud.speech.v1.RecognitionConfig
2459	14, // 1: google.cloud.speech.v1.RecognizeRequest.audio:type_name -> google.cloud.speech.v1.RecognitionAudio
2460	10, // 2: google.cloud.speech.v1.LongRunningRecognizeRequest.config:type_name -> google.cloud.speech.v1.RecognitionConfig
2461	14, // 3: google.cloud.speech.v1.LongRunningRecognizeRequest.audio:type_name -> google.cloud.speech.v1.RecognitionAudio
2462	9,  // 4: google.cloud.speech.v1.StreamingRecognizeRequest.streaming_config:type_name -> google.cloud.speech.v1.StreamingRecognitionConfig
2463	10, // 5: google.cloud.speech.v1.StreamingRecognitionConfig.config:type_name -> google.cloud.speech.v1.RecognitionConfig
2464	0,  // 6: google.cloud.speech.v1.RecognitionConfig.encoding:type_name -> google.cloud.speech.v1.RecognitionConfig.AudioEncoding
2465	13, // 7: google.cloud.speech.v1.RecognitionConfig.speech_contexts:type_name -> google.cloud.speech.v1.SpeechContext
2466	11, // 8: google.cloud.speech.v1.RecognitionConfig.diarization_config:type_name -> google.cloud.speech.v1.SpeakerDiarizationConfig
2467	12, // 9: google.cloud.speech.v1.RecognitionConfig.metadata:type_name -> google.cloud.speech.v1.RecognitionMetadata
2468	1,  // 10: google.cloud.speech.v1.RecognitionMetadata.interaction_type:type_name -> google.cloud.speech.v1.RecognitionMetadata.InteractionType
2469	2,  // 11: google.cloud.speech.v1.RecognitionMetadata.microphone_distance:type_name -> google.cloud.speech.v1.RecognitionMetadata.MicrophoneDistance
2470	3,  // 12: google.cloud.speech.v1.RecognitionMetadata.original_media_type:type_name -> google.cloud.speech.v1.RecognitionMetadata.OriginalMediaType
2471	4,  // 13: google.cloud.speech.v1.RecognitionMetadata.recording_device_type:type_name -> google.cloud.speech.v1.RecognitionMetadata.RecordingDeviceType
2472	20, // 14: google.cloud.speech.v1.RecognizeResponse.results:type_name -> google.cloud.speech.v1.SpeechRecognitionResult
2473	20, // 15: google.cloud.speech.v1.LongRunningRecognizeResponse.results:type_name -> google.cloud.speech.v1.SpeechRecognitionResult
2474	23, // 16: google.cloud.speech.v1.LongRunningRecognizeMetadata.start_time:type_name -> google.protobuf.Timestamp
2475	23, // 17: google.cloud.speech.v1.LongRunningRecognizeMetadata.last_update_time:type_name -> google.protobuf.Timestamp
2476	24, // 18: google.cloud.speech.v1.StreamingRecognizeResponse.error:type_name -> google.rpc.Status
2477	19, // 19: google.cloud.speech.v1.StreamingRecognizeResponse.results:type_name -> google.cloud.speech.v1.StreamingRecognitionResult
2478	5,  // 20: google.cloud.speech.v1.StreamingRecognizeResponse.speech_event_type:type_name -> google.cloud.speech.v1.StreamingRecognizeResponse.SpeechEventType
2479	21, // 21: google.cloud.speech.v1.StreamingRecognitionResult.alternatives:type_name -> google.cloud.speech.v1.SpeechRecognitionAlternative
2480	25, // 22: google.cloud.speech.v1.StreamingRecognitionResult.result_end_time:type_name -> google.protobuf.Duration
2481	21, // 23: google.cloud.speech.v1.SpeechRecognitionResult.alternatives:type_name -> google.cloud.speech.v1.SpeechRecognitionAlternative
2482	22, // 24: google.cloud.speech.v1.SpeechRecognitionAlternative.words:type_name -> google.cloud.speech.v1.WordInfo
2483	25, // 25: google.cloud.speech.v1.WordInfo.start_time:type_name -> google.protobuf.Duration
2484	25, // 26: google.cloud.speech.v1.WordInfo.end_time:type_name -> google.protobuf.Duration
2485	6,  // 27: google.cloud.speech.v1.Speech.Recognize:input_type -> google.cloud.speech.v1.RecognizeRequest
2486	7,  // 28: google.cloud.speech.v1.Speech.LongRunningRecognize:input_type -> google.cloud.speech.v1.LongRunningRecognizeRequest
2487	8,  // 29: google.cloud.speech.v1.Speech.StreamingRecognize:input_type -> google.cloud.speech.v1.StreamingRecognizeRequest
2488	15, // 30: google.cloud.speech.v1.Speech.Recognize:output_type -> google.cloud.speech.v1.RecognizeResponse
2489	26, // 31: google.cloud.speech.v1.Speech.LongRunningRecognize:output_type -> google.longrunning.Operation
2490	18, // 32: google.cloud.speech.v1.Speech.StreamingRecognize:output_type -> google.cloud.speech.v1.StreamingRecognizeResponse
2491	30, // [30:33] is the sub-list for method output_type
2492	27, // [27:30] is the sub-list for method input_type
2493	27, // [27:27] is the sub-list for extension type_name
2494	27, // [27:27] is the sub-list for extension extendee
2495	0,  // [0:27] is the sub-list for field type_name
2496}
2497
2498func init() { file_google_cloud_speech_v1_cloud_speech_proto_init() }
2499func file_google_cloud_speech_v1_cloud_speech_proto_init() {
2500	if File_google_cloud_speech_v1_cloud_speech_proto != nil {
2501		return
2502	}
2503	if !protoimpl.UnsafeEnabled {
2504		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
2505			switch v := v.(*RecognizeRequest); i {
2506			case 0:
2507				return &v.state
2508			case 1:
2509				return &v.sizeCache
2510			case 2:
2511				return &v.unknownFields
2512			default:
2513				return nil
2514			}
2515		}
2516		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
2517			switch v := v.(*LongRunningRecognizeRequest); i {
2518			case 0:
2519				return &v.state
2520			case 1:
2521				return &v.sizeCache
2522			case 2:
2523				return &v.unknownFields
2524			default:
2525				return nil
2526			}
2527		}
2528		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
2529			switch v := v.(*StreamingRecognizeRequest); i {
2530			case 0:
2531				return &v.state
2532			case 1:
2533				return &v.sizeCache
2534			case 2:
2535				return &v.unknownFields
2536			default:
2537				return nil
2538			}
2539		}
2540		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
2541			switch v := v.(*StreamingRecognitionConfig); i {
2542			case 0:
2543				return &v.state
2544			case 1:
2545				return &v.sizeCache
2546			case 2:
2547				return &v.unknownFields
2548			default:
2549				return nil
2550			}
2551		}
2552		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
2553			switch v := v.(*RecognitionConfig); i {
2554			case 0:
2555				return &v.state
2556			case 1:
2557				return &v.sizeCache
2558			case 2:
2559				return &v.unknownFields
2560			default:
2561				return nil
2562			}
2563		}
2564		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
2565			switch v := v.(*SpeakerDiarizationConfig); i {
2566			case 0:
2567				return &v.state
2568			case 1:
2569				return &v.sizeCache
2570			case 2:
2571				return &v.unknownFields
2572			default:
2573				return nil
2574			}
2575		}
2576		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
2577			switch v := v.(*RecognitionMetadata); i {
2578			case 0:
2579				return &v.state
2580			case 1:
2581				return &v.sizeCache
2582			case 2:
2583				return &v.unknownFields
2584			default:
2585				return nil
2586			}
2587		}
2588		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
2589			switch v := v.(*SpeechContext); i {
2590			case 0:
2591				return &v.state
2592			case 1:
2593				return &v.sizeCache
2594			case 2:
2595				return &v.unknownFields
2596			default:
2597				return nil
2598			}
2599		}
2600		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
2601			switch v := v.(*RecognitionAudio); i {
2602			case 0:
2603				return &v.state
2604			case 1:
2605				return &v.sizeCache
2606			case 2:
2607				return &v.unknownFields
2608			default:
2609				return nil
2610			}
2611		}
2612		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
2613			switch v := v.(*RecognizeResponse); i {
2614			case 0:
2615				return &v.state
2616			case 1:
2617				return &v.sizeCache
2618			case 2:
2619				return &v.unknownFields
2620			default:
2621				return nil
2622			}
2623		}
2624		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
2625			switch v := v.(*LongRunningRecognizeResponse); i {
2626			case 0:
2627				return &v.state
2628			case 1:
2629				return &v.sizeCache
2630			case 2:
2631				return &v.unknownFields
2632			default:
2633				return nil
2634			}
2635		}
2636		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
2637			switch v := v.(*LongRunningRecognizeMetadata); i {
2638			case 0:
2639				return &v.state
2640			case 1:
2641				return &v.sizeCache
2642			case 2:
2643				return &v.unknownFields
2644			default:
2645				return nil
2646			}
2647		}
2648		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
2649			switch v := v.(*StreamingRecognizeResponse); i {
2650			case 0:
2651				return &v.state
2652			case 1:
2653				return &v.sizeCache
2654			case 2:
2655				return &v.unknownFields
2656			default:
2657				return nil
2658			}
2659		}
2660		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
2661			switch v := v.(*StreamingRecognitionResult); i {
2662			case 0:
2663				return &v.state
2664			case 1:
2665				return &v.sizeCache
2666			case 2:
2667				return &v.unknownFields
2668			default:
2669				return nil
2670			}
2671		}
2672		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
2673			switch v := v.(*SpeechRecognitionResult); i {
2674			case 0:
2675				return &v.state
2676			case 1:
2677				return &v.sizeCache
2678			case 2:
2679				return &v.unknownFields
2680			default:
2681				return nil
2682			}
2683		}
2684		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
2685			switch v := v.(*SpeechRecognitionAlternative); i {
2686			case 0:
2687				return &v.state
2688			case 1:
2689				return &v.sizeCache
2690			case 2:
2691				return &v.unknownFields
2692			default:
2693				return nil
2694			}
2695		}
2696		file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
2697			switch v := v.(*WordInfo); i {
2698			case 0:
2699				return &v.state
2700			case 1:
2701				return &v.sizeCache
2702			case 2:
2703				return &v.unknownFields
2704			default:
2705				return nil
2706			}
2707		}
2708	}
2709	file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[2].OneofWrappers = []interface{}{
2710		(*StreamingRecognizeRequest_StreamingConfig)(nil),
2711		(*StreamingRecognizeRequest_AudioContent)(nil),
2712	}
2713	file_google_cloud_speech_v1_cloud_speech_proto_msgTypes[8].OneofWrappers = []interface{}{
2714		(*RecognitionAudio_Content)(nil),
2715		(*RecognitionAudio_Uri)(nil),
2716	}
2717	type x struct{}
2718	out := protoimpl.TypeBuilder{
2719		File: protoimpl.DescBuilder{
2720			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
2721			RawDescriptor: file_google_cloud_speech_v1_cloud_speech_proto_rawDesc,
2722			NumEnums:      6,
2723			NumMessages:   17,
2724			NumExtensions: 0,
2725			NumServices:   1,
2726		},
2727		GoTypes:           file_google_cloud_speech_v1_cloud_speech_proto_goTypes,
2728		DependencyIndexes: file_google_cloud_speech_v1_cloud_speech_proto_depIdxs,
2729		EnumInfos:         file_google_cloud_speech_v1_cloud_speech_proto_enumTypes,
2730		MessageInfos:      file_google_cloud_speech_v1_cloud_speech_proto_msgTypes,
2731	}.Build()
2732	File_google_cloud_speech_v1_cloud_speech_proto = out.File
2733	file_google_cloud_speech_v1_cloud_speech_proto_rawDesc = nil
2734	file_google_cloud_speech_v1_cloud_speech_proto_goTypes = nil
2735	file_google_cloud_speech_v1_cloud_speech_proto_depIdxs = nil
2736}
2737
2738// Reference imports to suppress errors if they are not otherwise used.
2739var _ context.Context
2740var _ grpc.ClientConnInterface
2741
2742// This is a compile-time assertion to ensure that this generated file
2743// is compatible with the grpc package it is being compiled against.
2744const _ = grpc.SupportPackageIsVersion6
2745
2746// SpeechClient is the client API for Speech service.
2747//
2748// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
2749type SpeechClient interface {
2750	// Performs synchronous speech recognition: receive results after all audio
2751	// has been sent and processed.
2752	Recognize(ctx context.Context, in *RecognizeRequest, opts ...grpc.CallOption) (*RecognizeResponse, error)
2753	// Performs asynchronous speech recognition: receive results via the
2754	// google.longrunning.Operations interface. Returns either an
2755	// `Operation.error` or an `Operation.response` which contains
2756	// a `LongRunningRecognizeResponse` message.
2757	// For more information on asynchronous speech recognition, see the
2758	// [how-to](https://cloud.google.com/speech-to-text/docs/async-recognize).
2759	LongRunningRecognize(ctx context.Context, in *LongRunningRecognizeRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
2760	// Performs bidirectional streaming speech recognition: receive results while
2761	// sending audio. This method is only available via the gRPC API (not REST).
2762	StreamingRecognize(ctx context.Context, opts ...grpc.CallOption) (Speech_StreamingRecognizeClient, error)
2763}
2764
2765type speechClient struct {
2766	cc grpc.ClientConnInterface
2767}
2768
2769func NewSpeechClient(cc grpc.ClientConnInterface) SpeechClient {
2770	return &speechClient{cc}
2771}
2772
2773func (c *speechClient) Recognize(ctx context.Context, in *RecognizeRequest, opts ...grpc.CallOption) (*RecognizeResponse, error) {
2774	out := new(RecognizeResponse)
2775	err := c.cc.Invoke(ctx, "/google.cloud.speech.v1.Speech/Recognize", in, out, opts...)
2776	if err != nil {
2777		return nil, err
2778	}
2779	return out, nil
2780}
2781
2782func (c *speechClient) LongRunningRecognize(ctx context.Context, in *LongRunningRecognizeRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
2783	out := new(longrunning.Operation)
2784	err := c.cc.Invoke(ctx, "/google.cloud.speech.v1.Speech/LongRunningRecognize", in, out, opts...)
2785	if err != nil {
2786		return nil, err
2787	}
2788	return out, nil
2789}
2790
2791func (c *speechClient) StreamingRecognize(ctx context.Context, opts ...grpc.CallOption) (Speech_StreamingRecognizeClient, error) {
2792	stream, err := c.cc.NewStream(ctx, &_Speech_serviceDesc.Streams[0], "/google.cloud.speech.v1.Speech/StreamingRecognize", opts...)
2793	if err != nil {
2794		return nil, err
2795	}
2796	x := &speechStreamingRecognizeClient{stream}
2797	return x, nil
2798}
2799
2800type Speech_StreamingRecognizeClient interface {
2801	Send(*StreamingRecognizeRequest) error
2802	Recv() (*StreamingRecognizeResponse, error)
2803	grpc.ClientStream
2804}
2805
2806type speechStreamingRecognizeClient struct {
2807	grpc.ClientStream
2808}
2809
2810func (x *speechStreamingRecognizeClient) Send(m *StreamingRecognizeRequest) error {
2811	return x.ClientStream.SendMsg(m)
2812}
2813
2814func (x *speechStreamingRecognizeClient) Recv() (*StreamingRecognizeResponse, error) {
2815	m := new(StreamingRecognizeResponse)
2816	if err := x.ClientStream.RecvMsg(m); err != nil {
2817		return nil, err
2818	}
2819	return m, nil
2820}
2821
2822// SpeechServer is the server API for Speech service.
2823type SpeechServer interface {
2824	// Performs synchronous speech recognition: receive results after all audio
2825	// has been sent and processed.
2826	Recognize(context.Context, *RecognizeRequest) (*RecognizeResponse, error)
2827	// Performs asynchronous speech recognition: receive results via the
2828	// google.longrunning.Operations interface. Returns either an
2829	// `Operation.error` or an `Operation.response` which contains
2830	// a `LongRunningRecognizeResponse` message.
2831	// For more information on asynchronous speech recognition, see the
2832	// [how-to](https://cloud.google.com/speech-to-text/docs/async-recognize).
2833	LongRunningRecognize(context.Context, *LongRunningRecognizeRequest) (*longrunning.Operation, error)
2834	// Performs bidirectional streaming speech recognition: receive results while
2835	// sending audio. This method is only available via the gRPC API (not REST).
2836	StreamingRecognize(Speech_StreamingRecognizeServer) error
2837}
2838
2839// UnimplementedSpeechServer can be embedded to have forward compatible implementations.
2840type UnimplementedSpeechServer struct {
2841}
2842
2843func (*UnimplementedSpeechServer) Recognize(context.Context, *RecognizeRequest) (*RecognizeResponse, error) {
2844	return nil, status1.Errorf(codes.Unimplemented, "method Recognize not implemented")
2845}
2846func (*UnimplementedSpeechServer) LongRunningRecognize(context.Context, *LongRunningRecognizeRequest) (*longrunning.Operation, error) {
2847	return nil, status1.Errorf(codes.Unimplemented, "method LongRunningRecognize not implemented")
2848}
2849func (*UnimplementedSpeechServer) StreamingRecognize(Speech_StreamingRecognizeServer) error {
2850	return status1.Errorf(codes.Unimplemented, "method StreamingRecognize not implemented")
2851}
2852
2853func RegisterSpeechServer(s *grpc.Server, srv SpeechServer) {
2854	s.RegisterService(&_Speech_serviceDesc, srv)
2855}
2856
2857func _Speech_Recognize_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2858	in := new(RecognizeRequest)
2859	if err := dec(in); err != nil {
2860		return nil, err
2861	}
2862	if interceptor == nil {
2863		return srv.(SpeechServer).Recognize(ctx, in)
2864	}
2865	info := &grpc.UnaryServerInfo{
2866		Server:     srv,
2867		FullMethod: "/google.cloud.speech.v1.Speech/Recognize",
2868	}
2869	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2870		return srv.(SpeechServer).Recognize(ctx, req.(*RecognizeRequest))
2871	}
2872	return interceptor(ctx, in, info, handler)
2873}
2874
2875func _Speech_LongRunningRecognize_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2876	in := new(LongRunningRecognizeRequest)
2877	if err := dec(in); err != nil {
2878		return nil, err
2879	}
2880	if interceptor == nil {
2881		return srv.(SpeechServer).LongRunningRecognize(ctx, in)
2882	}
2883	info := &grpc.UnaryServerInfo{
2884		Server:     srv,
2885		FullMethod: "/google.cloud.speech.v1.Speech/LongRunningRecognize",
2886	}
2887	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2888		return srv.(SpeechServer).LongRunningRecognize(ctx, req.(*LongRunningRecognizeRequest))
2889	}
2890	return interceptor(ctx, in, info, handler)
2891}
2892
2893func _Speech_StreamingRecognize_Handler(srv interface{}, stream grpc.ServerStream) error {
2894	return srv.(SpeechServer).StreamingRecognize(&speechStreamingRecognizeServer{stream})
2895}
2896
2897type Speech_StreamingRecognizeServer interface {
2898	Send(*StreamingRecognizeResponse) error
2899	Recv() (*StreamingRecognizeRequest, error)
2900	grpc.ServerStream
2901}
2902
2903type speechStreamingRecognizeServer struct {
2904	grpc.ServerStream
2905}
2906
2907func (x *speechStreamingRecognizeServer) Send(m *StreamingRecognizeResponse) error {
2908	return x.ServerStream.SendMsg(m)
2909}
2910
2911func (x *speechStreamingRecognizeServer) Recv() (*StreamingRecognizeRequest, error) {
2912	m := new(StreamingRecognizeRequest)
2913	if err := x.ServerStream.RecvMsg(m); err != nil {
2914		return nil, err
2915	}
2916	return m, nil
2917}
2918
2919var _Speech_serviceDesc = grpc.ServiceDesc{
2920	ServiceName: "google.cloud.speech.v1.Speech",
2921	HandlerType: (*SpeechServer)(nil),
2922	Methods: []grpc.MethodDesc{
2923		{
2924			MethodName: "Recognize",
2925			Handler:    _Speech_Recognize_Handler,
2926		},
2927		{
2928			MethodName: "LongRunningRecognize",
2929			Handler:    _Speech_LongRunningRecognize_Handler,
2930		},
2931	},
2932	Streams: []grpc.StreamDesc{
2933		{
2934			StreamName:    "StreamingRecognize",
2935			Handler:       _Speech_StreamingRecognize_Handler,
2936			ServerStreams: true,
2937			ClientStreams: true,
2938		},
2939	},
2940	Metadata: "google/cloud/speech/v1/cloud_speech.proto",
2941}
2942