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