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