1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 package videointelligence
23
24 import (
25 context "context"
26 reflect "reflect"
27 sync "sync"
28
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 durationpb "google.golang.org/protobuf/types/known/durationpb"
38 timestamppb "google.golang.org/protobuf/types/known/timestamppb"
39 )
40
41 const (
42
43 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
44
45 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
46 )
47
48
49 type Feature int32
50
51 const (
52
53 Feature_FEATURE_UNSPECIFIED Feature = 0
54
55 Feature_LABEL_DETECTION Feature = 1
56
57 Feature_SHOT_CHANGE_DETECTION Feature = 2
58
59 Feature_EXPLICIT_CONTENT_DETECTION Feature = 3
60
61 Feature_TEXT_DETECTION Feature = 7
62
63 Feature_OBJECT_TRACKING Feature = 9
64 )
65
66
67 var (
68 Feature_name = map[int32]string{
69 0: "FEATURE_UNSPECIFIED",
70 1: "LABEL_DETECTION",
71 2: "SHOT_CHANGE_DETECTION",
72 3: "EXPLICIT_CONTENT_DETECTION",
73 7: "TEXT_DETECTION",
74 9: "OBJECT_TRACKING",
75 }
76 Feature_value = map[string]int32{
77 "FEATURE_UNSPECIFIED": 0,
78 "LABEL_DETECTION": 1,
79 "SHOT_CHANGE_DETECTION": 2,
80 "EXPLICIT_CONTENT_DETECTION": 3,
81 "TEXT_DETECTION": 7,
82 "OBJECT_TRACKING": 9,
83 }
84 )
85
86 func (x Feature) Enum() *Feature {
87 p := new(Feature)
88 *p = x
89 return p
90 }
91
92 func (x Feature) String() string {
93 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
94 }
95
96 func (Feature) Descriptor() protoreflect.EnumDescriptor {
97 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_enumTypes[0].Descriptor()
98 }
99
100 func (Feature) Type() protoreflect.EnumType {
101 return &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_enumTypes[0]
102 }
103
104 func (x Feature) Number() protoreflect.EnumNumber {
105 return protoreflect.EnumNumber(x)
106 }
107
108
109 func (Feature) EnumDescriptor() ([]byte, []int) {
110 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{0}
111 }
112
113
114 type LabelDetectionMode int32
115
116 const (
117
118 LabelDetectionMode_LABEL_DETECTION_MODE_UNSPECIFIED LabelDetectionMode = 0
119
120 LabelDetectionMode_SHOT_MODE LabelDetectionMode = 1
121
122 LabelDetectionMode_FRAME_MODE LabelDetectionMode = 2
123
124 LabelDetectionMode_SHOT_AND_FRAME_MODE LabelDetectionMode = 3
125 )
126
127
128 var (
129 LabelDetectionMode_name = map[int32]string{
130 0: "LABEL_DETECTION_MODE_UNSPECIFIED",
131 1: "SHOT_MODE",
132 2: "FRAME_MODE",
133 3: "SHOT_AND_FRAME_MODE",
134 }
135 LabelDetectionMode_value = map[string]int32{
136 "LABEL_DETECTION_MODE_UNSPECIFIED": 0,
137 "SHOT_MODE": 1,
138 "FRAME_MODE": 2,
139 "SHOT_AND_FRAME_MODE": 3,
140 }
141 )
142
143 func (x LabelDetectionMode) Enum() *LabelDetectionMode {
144 p := new(LabelDetectionMode)
145 *p = x
146 return p
147 }
148
149 func (x LabelDetectionMode) String() string {
150 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
151 }
152
153 func (LabelDetectionMode) Descriptor() protoreflect.EnumDescriptor {
154 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_enumTypes[1].Descriptor()
155 }
156
157 func (LabelDetectionMode) Type() protoreflect.EnumType {
158 return &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_enumTypes[1]
159 }
160
161 func (x LabelDetectionMode) Number() protoreflect.EnumNumber {
162 return protoreflect.EnumNumber(x)
163 }
164
165
166 func (LabelDetectionMode) EnumDescriptor() ([]byte, []int) {
167 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{1}
168 }
169
170
171 type Likelihood int32
172
173 const (
174
175 Likelihood_LIKELIHOOD_UNSPECIFIED Likelihood = 0
176
177 Likelihood_VERY_UNLIKELY Likelihood = 1
178
179 Likelihood_UNLIKELY Likelihood = 2
180
181 Likelihood_POSSIBLE Likelihood = 3
182
183 Likelihood_LIKELY Likelihood = 4
184
185 Likelihood_VERY_LIKELY Likelihood = 5
186 )
187
188
189 var (
190 Likelihood_name = map[int32]string{
191 0: "LIKELIHOOD_UNSPECIFIED",
192 1: "VERY_UNLIKELY",
193 2: "UNLIKELY",
194 3: "POSSIBLE",
195 4: "LIKELY",
196 5: "VERY_LIKELY",
197 }
198 Likelihood_value = map[string]int32{
199 "LIKELIHOOD_UNSPECIFIED": 0,
200 "VERY_UNLIKELY": 1,
201 "UNLIKELY": 2,
202 "POSSIBLE": 3,
203 "LIKELY": 4,
204 "VERY_LIKELY": 5,
205 }
206 )
207
208 func (x Likelihood) Enum() *Likelihood {
209 p := new(Likelihood)
210 *p = x
211 return p
212 }
213
214 func (x Likelihood) String() string {
215 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
216 }
217
218 func (Likelihood) Descriptor() protoreflect.EnumDescriptor {
219 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_enumTypes[2].Descriptor()
220 }
221
222 func (Likelihood) Type() protoreflect.EnumType {
223 return &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_enumTypes[2]
224 }
225
226 func (x Likelihood) Number() protoreflect.EnumNumber {
227 return protoreflect.EnumNumber(x)
228 }
229
230
231 func (Likelihood) EnumDescriptor() ([]byte, []int) {
232 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{2}
233 }
234
235
236 type AnnotateVideoRequest struct {
237 state protoimpl.MessageState
238 sizeCache protoimpl.SizeCache
239 unknownFields protoimpl.UnknownFields
240
241
242
243
244
245
246
247
248
249
250
251 InputUri string `protobuf:"bytes,1,opt,name=input_uri,json=inputUri,proto3" json:"input_uri,omitempty"`
252
253
254
255 InputContent []byte `protobuf:"bytes,6,opt,name=input_content,json=inputContent,proto3" json:"input_content,omitempty"`
256
257 Features []Feature `protobuf:"varint,2,rep,packed,name=features,proto3,enum=google.cloud.videointelligence.v1p2beta1.Feature" json:"features,omitempty"`
258
259 VideoContext *VideoContext `protobuf:"bytes,3,opt,name=video_context,json=videoContext,proto3" json:"video_context,omitempty"`
260
261
262
263
264
265
266 OutputUri string `protobuf:"bytes,4,opt,name=output_uri,json=outputUri,proto3" json:"output_uri,omitempty"`
267
268
269
270 LocationId string `protobuf:"bytes,5,opt,name=location_id,json=locationId,proto3" json:"location_id,omitempty"`
271 }
272
273 func (x *AnnotateVideoRequest) Reset() {
274 *x = AnnotateVideoRequest{}
275 if protoimpl.UnsafeEnabled {
276 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[0]
277 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
278 ms.StoreMessageInfo(mi)
279 }
280 }
281
282 func (x *AnnotateVideoRequest) String() string {
283 return protoimpl.X.MessageStringOf(x)
284 }
285
286 func (*AnnotateVideoRequest) ProtoMessage() {}
287
288 func (x *AnnotateVideoRequest) ProtoReflect() protoreflect.Message {
289 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[0]
290 if protoimpl.UnsafeEnabled && x != nil {
291 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
292 if ms.LoadMessageInfo() == nil {
293 ms.StoreMessageInfo(mi)
294 }
295 return ms
296 }
297 return mi.MessageOf(x)
298 }
299
300
301 func (*AnnotateVideoRequest) Descriptor() ([]byte, []int) {
302 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{0}
303 }
304
305 func (x *AnnotateVideoRequest) GetInputUri() string {
306 if x != nil {
307 return x.InputUri
308 }
309 return ""
310 }
311
312 func (x *AnnotateVideoRequest) GetInputContent() []byte {
313 if x != nil {
314 return x.InputContent
315 }
316 return nil
317 }
318
319 func (x *AnnotateVideoRequest) GetFeatures() []Feature {
320 if x != nil {
321 return x.Features
322 }
323 return nil
324 }
325
326 func (x *AnnotateVideoRequest) GetVideoContext() *VideoContext {
327 if x != nil {
328 return x.VideoContext
329 }
330 return nil
331 }
332
333 func (x *AnnotateVideoRequest) GetOutputUri() string {
334 if x != nil {
335 return x.OutputUri
336 }
337 return ""
338 }
339
340 func (x *AnnotateVideoRequest) GetLocationId() string {
341 if x != nil {
342 return x.LocationId
343 }
344 return ""
345 }
346
347
348 type VideoContext struct {
349 state protoimpl.MessageState
350 sizeCache protoimpl.SizeCache
351 unknownFields protoimpl.UnknownFields
352
353
354
355
356 Segments []*VideoSegment `protobuf:"bytes,1,rep,name=segments,proto3" json:"segments,omitempty"`
357
358 LabelDetectionConfig *LabelDetectionConfig `protobuf:"bytes,2,opt,name=label_detection_config,json=labelDetectionConfig,proto3" json:"label_detection_config,omitempty"`
359
360 ShotChangeDetectionConfig *ShotChangeDetectionConfig `protobuf:"bytes,3,opt,name=shot_change_detection_config,json=shotChangeDetectionConfig,proto3" json:"shot_change_detection_config,omitempty"`
361
362 ExplicitContentDetectionConfig *ExplicitContentDetectionConfig `protobuf:"bytes,4,opt,name=explicit_content_detection_config,json=explicitContentDetectionConfig,proto3" json:"explicit_content_detection_config,omitempty"`
363
364 TextDetectionConfig *TextDetectionConfig `protobuf:"bytes,8,opt,name=text_detection_config,json=textDetectionConfig,proto3" json:"text_detection_config,omitempty"`
365 }
366
367 func (x *VideoContext) Reset() {
368 *x = VideoContext{}
369 if protoimpl.UnsafeEnabled {
370 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[1]
371 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
372 ms.StoreMessageInfo(mi)
373 }
374 }
375
376 func (x *VideoContext) String() string {
377 return protoimpl.X.MessageStringOf(x)
378 }
379
380 func (*VideoContext) ProtoMessage() {}
381
382 func (x *VideoContext) ProtoReflect() protoreflect.Message {
383 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[1]
384 if protoimpl.UnsafeEnabled && x != nil {
385 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
386 if ms.LoadMessageInfo() == nil {
387 ms.StoreMessageInfo(mi)
388 }
389 return ms
390 }
391 return mi.MessageOf(x)
392 }
393
394
395 func (*VideoContext) Descriptor() ([]byte, []int) {
396 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{1}
397 }
398
399 func (x *VideoContext) GetSegments() []*VideoSegment {
400 if x != nil {
401 return x.Segments
402 }
403 return nil
404 }
405
406 func (x *VideoContext) GetLabelDetectionConfig() *LabelDetectionConfig {
407 if x != nil {
408 return x.LabelDetectionConfig
409 }
410 return nil
411 }
412
413 func (x *VideoContext) GetShotChangeDetectionConfig() *ShotChangeDetectionConfig {
414 if x != nil {
415 return x.ShotChangeDetectionConfig
416 }
417 return nil
418 }
419
420 func (x *VideoContext) GetExplicitContentDetectionConfig() *ExplicitContentDetectionConfig {
421 if x != nil {
422 return x.ExplicitContentDetectionConfig
423 }
424 return nil
425 }
426
427 func (x *VideoContext) GetTextDetectionConfig() *TextDetectionConfig {
428 if x != nil {
429 return x.TextDetectionConfig
430 }
431 return nil
432 }
433
434
435 type LabelDetectionConfig struct {
436 state protoimpl.MessageState
437 sizeCache protoimpl.SizeCache
438 unknownFields protoimpl.UnknownFields
439
440
441
442
443 LabelDetectionMode LabelDetectionMode `protobuf:"varint,1,opt,name=label_detection_mode,json=labelDetectionMode,proto3,enum=google.cloud.videointelligence.v1p2beta1.LabelDetectionMode" json:"label_detection_mode,omitempty"`
444
445
446
447 StationaryCamera bool `protobuf:"varint,2,opt,name=stationary_camera,json=stationaryCamera,proto3" json:"stationary_camera,omitempty"`
448
449
450
451 Model string `protobuf:"bytes,3,opt,name=model,proto3" json:"model,omitempty"`
452 }
453
454 func (x *LabelDetectionConfig) Reset() {
455 *x = LabelDetectionConfig{}
456 if protoimpl.UnsafeEnabled {
457 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[2]
458 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
459 ms.StoreMessageInfo(mi)
460 }
461 }
462
463 func (x *LabelDetectionConfig) String() string {
464 return protoimpl.X.MessageStringOf(x)
465 }
466
467 func (*LabelDetectionConfig) ProtoMessage() {}
468
469 func (x *LabelDetectionConfig) ProtoReflect() protoreflect.Message {
470 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[2]
471 if protoimpl.UnsafeEnabled && x != nil {
472 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
473 if ms.LoadMessageInfo() == nil {
474 ms.StoreMessageInfo(mi)
475 }
476 return ms
477 }
478 return mi.MessageOf(x)
479 }
480
481
482 func (*LabelDetectionConfig) Descriptor() ([]byte, []int) {
483 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{2}
484 }
485
486 func (x *LabelDetectionConfig) GetLabelDetectionMode() LabelDetectionMode {
487 if x != nil {
488 return x.LabelDetectionMode
489 }
490 return LabelDetectionMode_LABEL_DETECTION_MODE_UNSPECIFIED
491 }
492
493 func (x *LabelDetectionConfig) GetStationaryCamera() bool {
494 if x != nil {
495 return x.StationaryCamera
496 }
497 return false
498 }
499
500 func (x *LabelDetectionConfig) GetModel() string {
501 if x != nil {
502 return x.Model
503 }
504 return ""
505 }
506
507
508 type ShotChangeDetectionConfig struct {
509 state protoimpl.MessageState
510 sizeCache protoimpl.SizeCache
511 unknownFields protoimpl.UnknownFields
512
513
514
515
516 Model string `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"`
517 }
518
519 func (x *ShotChangeDetectionConfig) Reset() {
520 *x = ShotChangeDetectionConfig{}
521 if protoimpl.UnsafeEnabled {
522 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[3]
523 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
524 ms.StoreMessageInfo(mi)
525 }
526 }
527
528 func (x *ShotChangeDetectionConfig) String() string {
529 return protoimpl.X.MessageStringOf(x)
530 }
531
532 func (*ShotChangeDetectionConfig) ProtoMessage() {}
533
534 func (x *ShotChangeDetectionConfig) ProtoReflect() protoreflect.Message {
535 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[3]
536 if protoimpl.UnsafeEnabled && x != nil {
537 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
538 if ms.LoadMessageInfo() == nil {
539 ms.StoreMessageInfo(mi)
540 }
541 return ms
542 }
543 return mi.MessageOf(x)
544 }
545
546
547 func (*ShotChangeDetectionConfig) Descriptor() ([]byte, []int) {
548 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{3}
549 }
550
551 func (x *ShotChangeDetectionConfig) GetModel() string {
552 if x != nil {
553 return x.Model
554 }
555 return ""
556 }
557
558
559 type ExplicitContentDetectionConfig struct {
560 state protoimpl.MessageState
561 sizeCache protoimpl.SizeCache
562 unknownFields protoimpl.UnknownFields
563
564
565
566
567 Model string `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"`
568 }
569
570 func (x *ExplicitContentDetectionConfig) Reset() {
571 *x = ExplicitContentDetectionConfig{}
572 if protoimpl.UnsafeEnabled {
573 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[4]
574 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
575 ms.StoreMessageInfo(mi)
576 }
577 }
578
579 func (x *ExplicitContentDetectionConfig) String() string {
580 return protoimpl.X.MessageStringOf(x)
581 }
582
583 func (*ExplicitContentDetectionConfig) ProtoMessage() {}
584
585 func (x *ExplicitContentDetectionConfig) ProtoReflect() protoreflect.Message {
586 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[4]
587 if protoimpl.UnsafeEnabled && x != nil {
588 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
589 if ms.LoadMessageInfo() == nil {
590 ms.StoreMessageInfo(mi)
591 }
592 return ms
593 }
594 return mi.MessageOf(x)
595 }
596
597
598 func (*ExplicitContentDetectionConfig) Descriptor() ([]byte, []int) {
599 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{4}
600 }
601
602 func (x *ExplicitContentDetectionConfig) GetModel() string {
603 if x != nil {
604 return x.Model
605 }
606 return ""
607 }
608
609
610 type TextDetectionConfig struct {
611 state protoimpl.MessageState
612 sizeCache protoimpl.SizeCache
613 unknownFields protoimpl.UnknownFields
614
615
616
617
618
619
620 LanguageHints []string `protobuf:"bytes,1,rep,name=language_hints,json=languageHints,proto3" json:"language_hints,omitempty"`
621 }
622
623 func (x *TextDetectionConfig) Reset() {
624 *x = TextDetectionConfig{}
625 if protoimpl.UnsafeEnabled {
626 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[5]
627 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
628 ms.StoreMessageInfo(mi)
629 }
630 }
631
632 func (x *TextDetectionConfig) String() string {
633 return protoimpl.X.MessageStringOf(x)
634 }
635
636 func (*TextDetectionConfig) ProtoMessage() {}
637
638 func (x *TextDetectionConfig) ProtoReflect() protoreflect.Message {
639 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[5]
640 if protoimpl.UnsafeEnabled && x != nil {
641 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
642 if ms.LoadMessageInfo() == nil {
643 ms.StoreMessageInfo(mi)
644 }
645 return ms
646 }
647 return mi.MessageOf(x)
648 }
649
650
651 func (*TextDetectionConfig) Descriptor() ([]byte, []int) {
652 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{5}
653 }
654
655 func (x *TextDetectionConfig) GetLanguageHints() []string {
656 if x != nil {
657 return x.LanguageHints
658 }
659 return nil
660 }
661
662
663 type VideoSegment struct {
664 state protoimpl.MessageState
665 sizeCache protoimpl.SizeCache
666 unknownFields protoimpl.UnknownFields
667
668
669
670 StartTimeOffset *durationpb.Duration `protobuf:"bytes,1,opt,name=start_time_offset,json=startTimeOffset,proto3" json:"start_time_offset,omitempty"`
671
672
673 EndTimeOffset *durationpb.Duration `protobuf:"bytes,2,opt,name=end_time_offset,json=endTimeOffset,proto3" json:"end_time_offset,omitempty"`
674 }
675
676 func (x *VideoSegment) Reset() {
677 *x = VideoSegment{}
678 if protoimpl.UnsafeEnabled {
679 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[6]
680 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
681 ms.StoreMessageInfo(mi)
682 }
683 }
684
685 func (x *VideoSegment) String() string {
686 return protoimpl.X.MessageStringOf(x)
687 }
688
689 func (*VideoSegment) ProtoMessage() {}
690
691 func (x *VideoSegment) ProtoReflect() protoreflect.Message {
692 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[6]
693 if protoimpl.UnsafeEnabled && x != nil {
694 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
695 if ms.LoadMessageInfo() == nil {
696 ms.StoreMessageInfo(mi)
697 }
698 return ms
699 }
700 return mi.MessageOf(x)
701 }
702
703
704 func (*VideoSegment) Descriptor() ([]byte, []int) {
705 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{6}
706 }
707
708 func (x *VideoSegment) GetStartTimeOffset() *durationpb.Duration {
709 if x != nil {
710 return x.StartTimeOffset
711 }
712 return nil
713 }
714
715 func (x *VideoSegment) GetEndTimeOffset() *durationpb.Duration {
716 if x != nil {
717 return x.EndTimeOffset
718 }
719 return nil
720 }
721
722
723 type LabelSegment struct {
724 state protoimpl.MessageState
725 sizeCache protoimpl.SizeCache
726 unknownFields protoimpl.UnknownFields
727
728
729 Segment *VideoSegment `protobuf:"bytes,1,opt,name=segment,proto3" json:"segment,omitempty"`
730
731 Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
732 }
733
734 func (x *LabelSegment) Reset() {
735 *x = LabelSegment{}
736 if protoimpl.UnsafeEnabled {
737 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[7]
738 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
739 ms.StoreMessageInfo(mi)
740 }
741 }
742
743 func (x *LabelSegment) String() string {
744 return protoimpl.X.MessageStringOf(x)
745 }
746
747 func (*LabelSegment) ProtoMessage() {}
748
749 func (x *LabelSegment) ProtoReflect() protoreflect.Message {
750 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[7]
751 if protoimpl.UnsafeEnabled && x != nil {
752 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
753 if ms.LoadMessageInfo() == nil {
754 ms.StoreMessageInfo(mi)
755 }
756 return ms
757 }
758 return mi.MessageOf(x)
759 }
760
761
762 func (*LabelSegment) Descriptor() ([]byte, []int) {
763 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{7}
764 }
765
766 func (x *LabelSegment) GetSegment() *VideoSegment {
767 if x != nil {
768 return x.Segment
769 }
770 return nil
771 }
772
773 func (x *LabelSegment) GetConfidence() float32 {
774 if x != nil {
775 return x.Confidence
776 }
777 return 0
778 }
779
780
781 type LabelFrame struct {
782 state protoimpl.MessageState
783 sizeCache protoimpl.SizeCache
784 unknownFields protoimpl.UnknownFields
785
786
787
788 TimeOffset *durationpb.Duration `protobuf:"bytes,1,opt,name=time_offset,json=timeOffset,proto3" json:"time_offset,omitempty"`
789
790 Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
791 }
792
793 func (x *LabelFrame) Reset() {
794 *x = LabelFrame{}
795 if protoimpl.UnsafeEnabled {
796 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[8]
797 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
798 ms.StoreMessageInfo(mi)
799 }
800 }
801
802 func (x *LabelFrame) String() string {
803 return protoimpl.X.MessageStringOf(x)
804 }
805
806 func (*LabelFrame) ProtoMessage() {}
807
808 func (x *LabelFrame) ProtoReflect() protoreflect.Message {
809 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[8]
810 if protoimpl.UnsafeEnabled && x != nil {
811 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
812 if ms.LoadMessageInfo() == nil {
813 ms.StoreMessageInfo(mi)
814 }
815 return ms
816 }
817 return mi.MessageOf(x)
818 }
819
820
821 func (*LabelFrame) Descriptor() ([]byte, []int) {
822 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{8}
823 }
824
825 func (x *LabelFrame) GetTimeOffset() *durationpb.Duration {
826 if x != nil {
827 return x.TimeOffset
828 }
829 return nil
830 }
831
832 func (x *LabelFrame) GetConfidence() float32 {
833 if x != nil {
834 return x.Confidence
835 }
836 return 0
837 }
838
839
840 type Entity struct {
841 state protoimpl.MessageState
842 sizeCache protoimpl.SizeCache
843 unknownFields protoimpl.UnknownFields
844
845
846
847
848 EntityId string `protobuf:"bytes,1,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
849
850 Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
851
852 LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
853 }
854
855 func (x *Entity) Reset() {
856 *x = Entity{}
857 if protoimpl.UnsafeEnabled {
858 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[9]
859 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
860 ms.StoreMessageInfo(mi)
861 }
862 }
863
864 func (x *Entity) String() string {
865 return protoimpl.X.MessageStringOf(x)
866 }
867
868 func (*Entity) ProtoMessage() {}
869
870 func (x *Entity) ProtoReflect() protoreflect.Message {
871 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[9]
872 if protoimpl.UnsafeEnabled && x != nil {
873 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
874 if ms.LoadMessageInfo() == nil {
875 ms.StoreMessageInfo(mi)
876 }
877 return ms
878 }
879 return mi.MessageOf(x)
880 }
881
882
883 func (*Entity) Descriptor() ([]byte, []int) {
884 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{9}
885 }
886
887 func (x *Entity) GetEntityId() string {
888 if x != nil {
889 return x.EntityId
890 }
891 return ""
892 }
893
894 func (x *Entity) GetDescription() string {
895 if x != nil {
896 return x.Description
897 }
898 return ""
899 }
900
901 func (x *Entity) GetLanguageCode() string {
902 if x != nil {
903 return x.LanguageCode
904 }
905 return ""
906 }
907
908
909 type LabelAnnotation struct {
910 state protoimpl.MessageState
911 sizeCache protoimpl.SizeCache
912 unknownFields protoimpl.UnknownFields
913
914
915 Entity *Entity `protobuf:"bytes,1,opt,name=entity,proto3" json:"entity,omitempty"`
916
917
918
919
920 CategoryEntities []*Entity `protobuf:"bytes,2,rep,name=category_entities,json=categoryEntities,proto3" json:"category_entities,omitempty"`
921
922 Segments []*LabelSegment `protobuf:"bytes,3,rep,name=segments,proto3" json:"segments,omitempty"`
923
924 Frames []*LabelFrame `protobuf:"bytes,4,rep,name=frames,proto3" json:"frames,omitempty"`
925 }
926
927 func (x *LabelAnnotation) Reset() {
928 *x = LabelAnnotation{}
929 if protoimpl.UnsafeEnabled {
930 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[10]
931 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
932 ms.StoreMessageInfo(mi)
933 }
934 }
935
936 func (x *LabelAnnotation) String() string {
937 return protoimpl.X.MessageStringOf(x)
938 }
939
940 func (*LabelAnnotation) ProtoMessage() {}
941
942 func (x *LabelAnnotation) ProtoReflect() protoreflect.Message {
943 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[10]
944 if protoimpl.UnsafeEnabled && x != nil {
945 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
946 if ms.LoadMessageInfo() == nil {
947 ms.StoreMessageInfo(mi)
948 }
949 return ms
950 }
951 return mi.MessageOf(x)
952 }
953
954
955 func (*LabelAnnotation) Descriptor() ([]byte, []int) {
956 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{10}
957 }
958
959 func (x *LabelAnnotation) GetEntity() *Entity {
960 if x != nil {
961 return x.Entity
962 }
963 return nil
964 }
965
966 func (x *LabelAnnotation) GetCategoryEntities() []*Entity {
967 if x != nil {
968 return x.CategoryEntities
969 }
970 return nil
971 }
972
973 func (x *LabelAnnotation) GetSegments() []*LabelSegment {
974 if x != nil {
975 return x.Segments
976 }
977 return nil
978 }
979
980 func (x *LabelAnnotation) GetFrames() []*LabelFrame {
981 if x != nil {
982 return x.Frames
983 }
984 return nil
985 }
986
987
988 type ExplicitContentFrame struct {
989 state protoimpl.MessageState
990 sizeCache protoimpl.SizeCache
991 unknownFields protoimpl.UnknownFields
992
993
994
995 TimeOffset *durationpb.Duration `protobuf:"bytes,1,opt,name=time_offset,json=timeOffset,proto3" json:"time_offset,omitempty"`
996
997 PornographyLikelihood Likelihood `protobuf:"varint,2,opt,name=pornography_likelihood,json=pornographyLikelihood,proto3,enum=google.cloud.videointelligence.v1p2beta1.Likelihood" json:"pornography_likelihood,omitempty"`
998 }
999
1000 func (x *ExplicitContentFrame) Reset() {
1001 *x = ExplicitContentFrame{}
1002 if protoimpl.UnsafeEnabled {
1003 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[11]
1004 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1005 ms.StoreMessageInfo(mi)
1006 }
1007 }
1008
1009 func (x *ExplicitContentFrame) String() string {
1010 return protoimpl.X.MessageStringOf(x)
1011 }
1012
1013 func (*ExplicitContentFrame) ProtoMessage() {}
1014
1015 func (x *ExplicitContentFrame) ProtoReflect() protoreflect.Message {
1016 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[11]
1017 if protoimpl.UnsafeEnabled && x != nil {
1018 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1019 if ms.LoadMessageInfo() == nil {
1020 ms.StoreMessageInfo(mi)
1021 }
1022 return ms
1023 }
1024 return mi.MessageOf(x)
1025 }
1026
1027
1028 func (*ExplicitContentFrame) Descriptor() ([]byte, []int) {
1029 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{11}
1030 }
1031
1032 func (x *ExplicitContentFrame) GetTimeOffset() *durationpb.Duration {
1033 if x != nil {
1034 return x.TimeOffset
1035 }
1036 return nil
1037 }
1038
1039 func (x *ExplicitContentFrame) GetPornographyLikelihood() Likelihood {
1040 if x != nil {
1041 return x.PornographyLikelihood
1042 }
1043 return Likelihood_LIKELIHOOD_UNSPECIFIED
1044 }
1045
1046
1047
1048
1049 type ExplicitContentAnnotation struct {
1050 state protoimpl.MessageState
1051 sizeCache protoimpl.SizeCache
1052 unknownFields protoimpl.UnknownFields
1053
1054
1055 Frames []*ExplicitContentFrame `protobuf:"bytes,1,rep,name=frames,proto3" json:"frames,omitempty"`
1056 }
1057
1058 func (x *ExplicitContentAnnotation) Reset() {
1059 *x = ExplicitContentAnnotation{}
1060 if protoimpl.UnsafeEnabled {
1061 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[12]
1062 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1063 ms.StoreMessageInfo(mi)
1064 }
1065 }
1066
1067 func (x *ExplicitContentAnnotation) String() string {
1068 return protoimpl.X.MessageStringOf(x)
1069 }
1070
1071 func (*ExplicitContentAnnotation) ProtoMessage() {}
1072
1073 func (x *ExplicitContentAnnotation) ProtoReflect() protoreflect.Message {
1074 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[12]
1075 if protoimpl.UnsafeEnabled && x != nil {
1076 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1077 if ms.LoadMessageInfo() == nil {
1078 ms.StoreMessageInfo(mi)
1079 }
1080 return ms
1081 }
1082 return mi.MessageOf(x)
1083 }
1084
1085
1086 func (*ExplicitContentAnnotation) Descriptor() ([]byte, []int) {
1087 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{12}
1088 }
1089
1090 func (x *ExplicitContentAnnotation) GetFrames() []*ExplicitContentFrame {
1091 if x != nil {
1092 return x.Frames
1093 }
1094 return nil
1095 }
1096
1097
1098
1099
1100 type NormalizedBoundingBox struct {
1101 state protoimpl.MessageState
1102 sizeCache protoimpl.SizeCache
1103 unknownFields protoimpl.UnknownFields
1104
1105
1106 Left float32 `protobuf:"fixed32,1,opt,name=left,proto3" json:"left,omitempty"`
1107
1108 Top float32 `protobuf:"fixed32,2,opt,name=top,proto3" json:"top,omitempty"`
1109
1110 Right float32 `protobuf:"fixed32,3,opt,name=right,proto3" json:"right,omitempty"`
1111
1112 Bottom float32 `protobuf:"fixed32,4,opt,name=bottom,proto3" json:"bottom,omitempty"`
1113 }
1114
1115 func (x *NormalizedBoundingBox) Reset() {
1116 *x = NormalizedBoundingBox{}
1117 if protoimpl.UnsafeEnabled {
1118 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[13]
1119 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1120 ms.StoreMessageInfo(mi)
1121 }
1122 }
1123
1124 func (x *NormalizedBoundingBox) String() string {
1125 return protoimpl.X.MessageStringOf(x)
1126 }
1127
1128 func (*NormalizedBoundingBox) ProtoMessage() {}
1129
1130 func (x *NormalizedBoundingBox) ProtoReflect() protoreflect.Message {
1131 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[13]
1132 if protoimpl.UnsafeEnabled && x != nil {
1133 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1134 if ms.LoadMessageInfo() == nil {
1135 ms.StoreMessageInfo(mi)
1136 }
1137 return ms
1138 }
1139 return mi.MessageOf(x)
1140 }
1141
1142
1143 func (*NormalizedBoundingBox) Descriptor() ([]byte, []int) {
1144 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{13}
1145 }
1146
1147 func (x *NormalizedBoundingBox) GetLeft() float32 {
1148 if x != nil {
1149 return x.Left
1150 }
1151 return 0
1152 }
1153
1154 func (x *NormalizedBoundingBox) GetTop() float32 {
1155 if x != nil {
1156 return x.Top
1157 }
1158 return 0
1159 }
1160
1161 func (x *NormalizedBoundingBox) GetRight() float32 {
1162 if x != nil {
1163 return x.Right
1164 }
1165 return 0
1166 }
1167
1168 func (x *NormalizedBoundingBox) GetBottom() float32 {
1169 if x != nil {
1170 return x.Bottom
1171 }
1172 return 0
1173 }
1174
1175
1176 type VideoAnnotationResults struct {
1177 state protoimpl.MessageState
1178 sizeCache protoimpl.SizeCache
1179 unknownFields protoimpl.UnknownFields
1180
1181
1182
1183 InputUri string `protobuf:"bytes,1,opt,name=input_uri,json=inputUri,proto3" json:"input_uri,omitempty"`
1184
1185
1186 SegmentLabelAnnotations []*LabelAnnotation `protobuf:"bytes,2,rep,name=segment_label_annotations,json=segmentLabelAnnotations,proto3" json:"segment_label_annotations,omitempty"`
1187
1188
1189 ShotLabelAnnotations []*LabelAnnotation `protobuf:"bytes,3,rep,name=shot_label_annotations,json=shotLabelAnnotations,proto3" json:"shot_label_annotations,omitempty"`
1190
1191
1192 FrameLabelAnnotations []*LabelAnnotation `protobuf:"bytes,4,rep,name=frame_label_annotations,json=frameLabelAnnotations,proto3" json:"frame_label_annotations,omitempty"`
1193
1194 ShotAnnotations []*VideoSegment `protobuf:"bytes,6,rep,name=shot_annotations,json=shotAnnotations,proto3" json:"shot_annotations,omitempty"`
1195
1196 ExplicitAnnotation *ExplicitContentAnnotation `protobuf:"bytes,7,opt,name=explicit_annotation,json=explicitAnnotation,proto3" json:"explicit_annotation,omitempty"`
1197
1198
1199
1200 TextAnnotations []*TextAnnotation `protobuf:"bytes,12,rep,name=text_annotations,json=textAnnotations,proto3" json:"text_annotations,omitempty"`
1201
1202 ObjectAnnotations []*ObjectTrackingAnnotation `protobuf:"bytes,14,rep,name=object_annotations,json=objectAnnotations,proto3" json:"object_annotations,omitempty"`
1203
1204
1205 Error *status.Status `protobuf:"bytes,9,opt,name=error,proto3" json:"error,omitempty"`
1206 }
1207
1208 func (x *VideoAnnotationResults) Reset() {
1209 *x = VideoAnnotationResults{}
1210 if protoimpl.UnsafeEnabled {
1211 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[14]
1212 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1213 ms.StoreMessageInfo(mi)
1214 }
1215 }
1216
1217 func (x *VideoAnnotationResults) String() string {
1218 return protoimpl.X.MessageStringOf(x)
1219 }
1220
1221 func (*VideoAnnotationResults) ProtoMessage() {}
1222
1223 func (x *VideoAnnotationResults) ProtoReflect() protoreflect.Message {
1224 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[14]
1225 if protoimpl.UnsafeEnabled && x != nil {
1226 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1227 if ms.LoadMessageInfo() == nil {
1228 ms.StoreMessageInfo(mi)
1229 }
1230 return ms
1231 }
1232 return mi.MessageOf(x)
1233 }
1234
1235
1236 func (*VideoAnnotationResults) Descriptor() ([]byte, []int) {
1237 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{14}
1238 }
1239
1240 func (x *VideoAnnotationResults) GetInputUri() string {
1241 if x != nil {
1242 return x.InputUri
1243 }
1244 return ""
1245 }
1246
1247 func (x *VideoAnnotationResults) GetSegmentLabelAnnotations() []*LabelAnnotation {
1248 if x != nil {
1249 return x.SegmentLabelAnnotations
1250 }
1251 return nil
1252 }
1253
1254 func (x *VideoAnnotationResults) GetShotLabelAnnotations() []*LabelAnnotation {
1255 if x != nil {
1256 return x.ShotLabelAnnotations
1257 }
1258 return nil
1259 }
1260
1261 func (x *VideoAnnotationResults) GetFrameLabelAnnotations() []*LabelAnnotation {
1262 if x != nil {
1263 return x.FrameLabelAnnotations
1264 }
1265 return nil
1266 }
1267
1268 func (x *VideoAnnotationResults) GetShotAnnotations() []*VideoSegment {
1269 if x != nil {
1270 return x.ShotAnnotations
1271 }
1272 return nil
1273 }
1274
1275 func (x *VideoAnnotationResults) GetExplicitAnnotation() *ExplicitContentAnnotation {
1276 if x != nil {
1277 return x.ExplicitAnnotation
1278 }
1279 return nil
1280 }
1281
1282 func (x *VideoAnnotationResults) GetTextAnnotations() []*TextAnnotation {
1283 if x != nil {
1284 return x.TextAnnotations
1285 }
1286 return nil
1287 }
1288
1289 func (x *VideoAnnotationResults) GetObjectAnnotations() []*ObjectTrackingAnnotation {
1290 if x != nil {
1291 return x.ObjectAnnotations
1292 }
1293 return nil
1294 }
1295
1296 func (x *VideoAnnotationResults) GetError() *status.Status {
1297 if x != nil {
1298 return x.Error
1299 }
1300 return nil
1301 }
1302
1303
1304
1305
1306 type AnnotateVideoResponse struct {
1307 state protoimpl.MessageState
1308 sizeCache protoimpl.SizeCache
1309 unknownFields protoimpl.UnknownFields
1310
1311
1312 AnnotationResults []*VideoAnnotationResults `protobuf:"bytes,1,rep,name=annotation_results,json=annotationResults,proto3" json:"annotation_results,omitempty"`
1313 }
1314
1315 func (x *AnnotateVideoResponse) Reset() {
1316 *x = AnnotateVideoResponse{}
1317 if protoimpl.UnsafeEnabled {
1318 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[15]
1319 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1320 ms.StoreMessageInfo(mi)
1321 }
1322 }
1323
1324 func (x *AnnotateVideoResponse) String() string {
1325 return protoimpl.X.MessageStringOf(x)
1326 }
1327
1328 func (*AnnotateVideoResponse) ProtoMessage() {}
1329
1330 func (x *AnnotateVideoResponse) ProtoReflect() protoreflect.Message {
1331 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[15]
1332 if protoimpl.UnsafeEnabled && x != nil {
1333 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1334 if ms.LoadMessageInfo() == nil {
1335 ms.StoreMessageInfo(mi)
1336 }
1337 return ms
1338 }
1339 return mi.MessageOf(x)
1340 }
1341
1342
1343 func (*AnnotateVideoResponse) Descriptor() ([]byte, []int) {
1344 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{15}
1345 }
1346
1347 func (x *AnnotateVideoResponse) GetAnnotationResults() []*VideoAnnotationResults {
1348 if x != nil {
1349 return x.AnnotationResults
1350 }
1351 return nil
1352 }
1353
1354
1355 type VideoAnnotationProgress struct {
1356 state protoimpl.MessageState
1357 sizeCache protoimpl.SizeCache
1358 unknownFields protoimpl.UnknownFields
1359
1360
1361
1362 InputUri string `protobuf:"bytes,1,opt,name=input_uri,json=inputUri,proto3" json:"input_uri,omitempty"`
1363
1364
1365 ProgressPercent int32 `protobuf:"varint,2,opt,name=progress_percent,json=progressPercent,proto3" json:"progress_percent,omitempty"`
1366
1367 StartTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
1368
1369 UpdateTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
1370 }
1371
1372 func (x *VideoAnnotationProgress) Reset() {
1373 *x = VideoAnnotationProgress{}
1374 if protoimpl.UnsafeEnabled {
1375 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[16]
1376 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1377 ms.StoreMessageInfo(mi)
1378 }
1379 }
1380
1381 func (x *VideoAnnotationProgress) String() string {
1382 return protoimpl.X.MessageStringOf(x)
1383 }
1384
1385 func (*VideoAnnotationProgress) ProtoMessage() {}
1386
1387 func (x *VideoAnnotationProgress) ProtoReflect() protoreflect.Message {
1388 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[16]
1389 if protoimpl.UnsafeEnabled && x != nil {
1390 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1391 if ms.LoadMessageInfo() == nil {
1392 ms.StoreMessageInfo(mi)
1393 }
1394 return ms
1395 }
1396 return mi.MessageOf(x)
1397 }
1398
1399
1400 func (*VideoAnnotationProgress) Descriptor() ([]byte, []int) {
1401 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{16}
1402 }
1403
1404 func (x *VideoAnnotationProgress) GetInputUri() string {
1405 if x != nil {
1406 return x.InputUri
1407 }
1408 return ""
1409 }
1410
1411 func (x *VideoAnnotationProgress) GetProgressPercent() int32 {
1412 if x != nil {
1413 return x.ProgressPercent
1414 }
1415 return 0
1416 }
1417
1418 func (x *VideoAnnotationProgress) GetStartTime() *timestamppb.Timestamp {
1419 if x != nil {
1420 return x.StartTime
1421 }
1422 return nil
1423 }
1424
1425 func (x *VideoAnnotationProgress) GetUpdateTime() *timestamppb.Timestamp {
1426 if x != nil {
1427 return x.UpdateTime
1428 }
1429 return nil
1430 }
1431
1432
1433
1434
1435 type AnnotateVideoProgress struct {
1436 state protoimpl.MessageState
1437 sizeCache protoimpl.SizeCache
1438 unknownFields protoimpl.UnknownFields
1439
1440
1441 AnnotationProgress []*VideoAnnotationProgress `protobuf:"bytes,1,rep,name=annotation_progress,json=annotationProgress,proto3" json:"annotation_progress,omitempty"`
1442 }
1443
1444 func (x *AnnotateVideoProgress) Reset() {
1445 *x = AnnotateVideoProgress{}
1446 if protoimpl.UnsafeEnabled {
1447 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[17]
1448 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1449 ms.StoreMessageInfo(mi)
1450 }
1451 }
1452
1453 func (x *AnnotateVideoProgress) String() string {
1454 return protoimpl.X.MessageStringOf(x)
1455 }
1456
1457 func (*AnnotateVideoProgress) ProtoMessage() {}
1458
1459 func (x *AnnotateVideoProgress) ProtoReflect() protoreflect.Message {
1460 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[17]
1461 if protoimpl.UnsafeEnabled && x != nil {
1462 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1463 if ms.LoadMessageInfo() == nil {
1464 ms.StoreMessageInfo(mi)
1465 }
1466 return ms
1467 }
1468 return mi.MessageOf(x)
1469 }
1470
1471
1472 func (*AnnotateVideoProgress) Descriptor() ([]byte, []int) {
1473 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{17}
1474 }
1475
1476 func (x *AnnotateVideoProgress) GetAnnotationProgress() []*VideoAnnotationProgress {
1477 if x != nil {
1478 return x.AnnotationProgress
1479 }
1480 return nil
1481 }
1482
1483
1484
1485
1486 type NormalizedVertex struct {
1487 state protoimpl.MessageState
1488 sizeCache protoimpl.SizeCache
1489 unknownFields protoimpl.UnknownFields
1490
1491
1492 X float32 `protobuf:"fixed32,1,opt,name=x,proto3" json:"x,omitempty"`
1493
1494 Y float32 `protobuf:"fixed32,2,opt,name=y,proto3" json:"y,omitempty"`
1495 }
1496
1497 func (x *NormalizedVertex) Reset() {
1498 *x = NormalizedVertex{}
1499 if protoimpl.UnsafeEnabled {
1500 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[18]
1501 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1502 ms.StoreMessageInfo(mi)
1503 }
1504 }
1505
1506 func (x *NormalizedVertex) String() string {
1507 return protoimpl.X.MessageStringOf(x)
1508 }
1509
1510 func (*NormalizedVertex) ProtoMessage() {}
1511
1512 func (x *NormalizedVertex) ProtoReflect() protoreflect.Message {
1513 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[18]
1514 if protoimpl.UnsafeEnabled && x != nil {
1515 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1516 if ms.LoadMessageInfo() == nil {
1517 ms.StoreMessageInfo(mi)
1518 }
1519 return ms
1520 }
1521 return mi.MessageOf(x)
1522 }
1523
1524
1525 func (*NormalizedVertex) Descriptor() ([]byte, []int) {
1526 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{18}
1527 }
1528
1529 func (x *NormalizedVertex) GetX() float32 {
1530 if x != nil {
1531 return x.X
1532 }
1533 return 0
1534 }
1535
1536 func (x *NormalizedVertex) GetY() float32 {
1537 if x != nil {
1538 return x.Y
1539 }
1540 return 0
1541 }
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562 type NormalizedBoundingPoly struct {
1563 state protoimpl.MessageState
1564 sizeCache protoimpl.SizeCache
1565 unknownFields protoimpl.UnknownFields
1566
1567
1568 Vertices []*NormalizedVertex `protobuf:"bytes,1,rep,name=vertices,proto3" json:"vertices,omitempty"`
1569 }
1570
1571 func (x *NormalizedBoundingPoly) Reset() {
1572 *x = NormalizedBoundingPoly{}
1573 if protoimpl.UnsafeEnabled {
1574 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[19]
1575 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1576 ms.StoreMessageInfo(mi)
1577 }
1578 }
1579
1580 func (x *NormalizedBoundingPoly) String() string {
1581 return protoimpl.X.MessageStringOf(x)
1582 }
1583
1584 func (*NormalizedBoundingPoly) ProtoMessage() {}
1585
1586 func (x *NormalizedBoundingPoly) ProtoReflect() protoreflect.Message {
1587 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[19]
1588 if protoimpl.UnsafeEnabled && x != nil {
1589 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1590 if ms.LoadMessageInfo() == nil {
1591 ms.StoreMessageInfo(mi)
1592 }
1593 return ms
1594 }
1595 return mi.MessageOf(x)
1596 }
1597
1598
1599 func (*NormalizedBoundingPoly) Descriptor() ([]byte, []int) {
1600 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{19}
1601 }
1602
1603 func (x *NormalizedBoundingPoly) GetVertices() []*NormalizedVertex {
1604 if x != nil {
1605 return x.Vertices
1606 }
1607 return nil
1608 }
1609
1610
1611 type TextSegment struct {
1612 state protoimpl.MessageState
1613 sizeCache protoimpl.SizeCache
1614 unknownFields protoimpl.UnknownFields
1615
1616
1617 Segment *VideoSegment `protobuf:"bytes,1,opt,name=segment,proto3" json:"segment,omitempty"`
1618
1619
1620 Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
1621
1622 Frames []*TextFrame `protobuf:"bytes,3,rep,name=frames,proto3" json:"frames,omitempty"`
1623 }
1624
1625 func (x *TextSegment) Reset() {
1626 *x = TextSegment{}
1627 if protoimpl.UnsafeEnabled {
1628 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[20]
1629 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1630 ms.StoreMessageInfo(mi)
1631 }
1632 }
1633
1634 func (x *TextSegment) String() string {
1635 return protoimpl.X.MessageStringOf(x)
1636 }
1637
1638 func (*TextSegment) ProtoMessage() {}
1639
1640 func (x *TextSegment) ProtoReflect() protoreflect.Message {
1641 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[20]
1642 if protoimpl.UnsafeEnabled && x != nil {
1643 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1644 if ms.LoadMessageInfo() == nil {
1645 ms.StoreMessageInfo(mi)
1646 }
1647 return ms
1648 }
1649 return mi.MessageOf(x)
1650 }
1651
1652
1653 func (*TextSegment) Descriptor() ([]byte, []int) {
1654 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{20}
1655 }
1656
1657 func (x *TextSegment) GetSegment() *VideoSegment {
1658 if x != nil {
1659 return x.Segment
1660 }
1661 return nil
1662 }
1663
1664 func (x *TextSegment) GetConfidence() float32 {
1665 if x != nil {
1666 return x.Confidence
1667 }
1668 return 0
1669 }
1670
1671 func (x *TextSegment) GetFrames() []*TextFrame {
1672 if x != nil {
1673 return x.Frames
1674 }
1675 return nil
1676 }
1677
1678
1679
1680
1681 type TextFrame struct {
1682 state protoimpl.MessageState
1683 sizeCache protoimpl.SizeCache
1684 unknownFields protoimpl.UnknownFields
1685
1686
1687 RotatedBoundingBox *NormalizedBoundingPoly `protobuf:"bytes,1,opt,name=rotated_bounding_box,json=rotatedBoundingBox,proto3" json:"rotated_bounding_box,omitempty"`
1688
1689 TimeOffset *durationpb.Duration `protobuf:"bytes,2,opt,name=time_offset,json=timeOffset,proto3" json:"time_offset,omitempty"`
1690 }
1691
1692 func (x *TextFrame) Reset() {
1693 *x = TextFrame{}
1694 if protoimpl.UnsafeEnabled {
1695 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[21]
1696 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1697 ms.StoreMessageInfo(mi)
1698 }
1699 }
1700
1701 func (x *TextFrame) String() string {
1702 return protoimpl.X.MessageStringOf(x)
1703 }
1704
1705 func (*TextFrame) ProtoMessage() {}
1706
1707 func (x *TextFrame) ProtoReflect() protoreflect.Message {
1708 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[21]
1709 if protoimpl.UnsafeEnabled && x != nil {
1710 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1711 if ms.LoadMessageInfo() == nil {
1712 ms.StoreMessageInfo(mi)
1713 }
1714 return ms
1715 }
1716 return mi.MessageOf(x)
1717 }
1718
1719
1720 func (*TextFrame) Descriptor() ([]byte, []int) {
1721 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{21}
1722 }
1723
1724 func (x *TextFrame) GetRotatedBoundingBox() *NormalizedBoundingPoly {
1725 if x != nil {
1726 return x.RotatedBoundingBox
1727 }
1728 return nil
1729 }
1730
1731 func (x *TextFrame) GetTimeOffset() *durationpb.Duration {
1732 if x != nil {
1733 return x.TimeOffset
1734 }
1735 return nil
1736 }
1737
1738
1739
1740
1741 type TextAnnotation struct {
1742 state protoimpl.MessageState
1743 sizeCache protoimpl.SizeCache
1744 unknownFields protoimpl.UnknownFields
1745
1746
1747 Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
1748
1749 Segments []*TextSegment `protobuf:"bytes,2,rep,name=segments,proto3" json:"segments,omitempty"`
1750 }
1751
1752 func (x *TextAnnotation) Reset() {
1753 *x = TextAnnotation{}
1754 if protoimpl.UnsafeEnabled {
1755 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[22]
1756 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1757 ms.StoreMessageInfo(mi)
1758 }
1759 }
1760
1761 func (x *TextAnnotation) String() string {
1762 return protoimpl.X.MessageStringOf(x)
1763 }
1764
1765 func (*TextAnnotation) ProtoMessage() {}
1766
1767 func (x *TextAnnotation) ProtoReflect() protoreflect.Message {
1768 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[22]
1769 if protoimpl.UnsafeEnabled && x != nil {
1770 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1771 if ms.LoadMessageInfo() == nil {
1772 ms.StoreMessageInfo(mi)
1773 }
1774 return ms
1775 }
1776 return mi.MessageOf(x)
1777 }
1778
1779
1780 func (*TextAnnotation) Descriptor() ([]byte, []int) {
1781 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{22}
1782 }
1783
1784 func (x *TextAnnotation) GetText() string {
1785 if x != nil {
1786 return x.Text
1787 }
1788 return ""
1789 }
1790
1791 func (x *TextAnnotation) GetSegments() []*TextSegment {
1792 if x != nil {
1793 return x.Segments
1794 }
1795 return nil
1796 }
1797
1798
1799
1800 type ObjectTrackingFrame struct {
1801 state protoimpl.MessageState
1802 sizeCache protoimpl.SizeCache
1803 unknownFields protoimpl.UnknownFields
1804
1805
1806 NormalizedBoundingBox *NormalizedBoundingBox `protobuf:"bytes,1,opt,name=normalized_bounding_box,json=normalizedBoundingBox,proto3" json:"normalized_bounding_box,omitempty"`
1807
1808 TimeOffset *durationpb.Duration `protobuf:"bytes,2,opt,name=time_offset,json=timeOffset,proto3" json:"time_offset,omitempty"`
1809 }
1810
1811 func (x *ObjectTrackingFrame) Reset() {
1812 *x = ObjectTrackingFrame{}
1813 if protoimpl.UnsafeEnabled {
1814 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[23]
1815 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1816 ms.StoreMessageInfo(mi)
1817 }
1818 }
1819
1820 func (x *ObjectTrackingFrame) String() string {
1821 return protoimpl.X.MessageStringOf(x)
1822 }
1823
1824 func (*ObjectTrackingFrame) ProtoMessage() {}
1825
1826 func (x *ObjectTrackingFrame) ProtoReflect() protoreflect.Message {
1827 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[23]
1828 if protoimpl.UnsafeEnabled && x != nil {
1829 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1830 if ms.LoadMessageInfo() == nil {
1831 ms.StoreMessageInfo(mi)
1832 }
1833 return ms
1834 }
1835 return mi.MessageOf(x)
1836 }
1837
1838
1839 func (*ObjectTrackingFrame) Descriptor() ([]byte, []int) {
1840 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{23}
1841 }
1842
1843 func (x *ObjectTrackingFrame) GetNormalizedBoundingBox() *NormalizedBoundingBox {
1844 if x != nil {
1845 return x.NormalizedBoundingBox
1846 }
1847 return nil
1848 }
1849
1850 func (x *ObjectTrackingFrame) GetTimeOffset() *durationpb.Duration {
1851 if x != nil {
1852 return x.TimeOffset
1853 }
1854 return nil
1855 }
1856
1857
1858 type ObjectTrackingAnnotation struct {
1859 state protoimpl.MessageState
1860 sizeCache protoimpl.SizeCache
1861 unknownFields protoimpl.UnknownFields
1862
1863
1864
1865
1866
1867
1868
1869 TrackInfo isObjectTrackingAnnotation_TrackInfo `protobuf_oneof:"track_info"`
1870
1871 Entity *Entity `protobuf:"bytes,1,opt,name=entity,proto3" json:"entity,omitempty"`
1872
1873 Confidence float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"`
1874
1875 Frames []*ObjectTrackingFrame `protobuf:"bytes,2,rep,name=frames,proto3" json:"frames,omitempty"`
1876 }
1877
1878 func (x *ObjectTrackingAnnotation) Reset() {
1879 *x = ObjectTrackingAnnotation{}
1880 if protoimpl.UnsafeEnabled {
1881 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[24]
1882 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1883 ms.StoreMessageInfo(mi)
1884 }
1885 }
1886
1887 func (x *ObjectTrackingAnnotation) String() string {
1888 return protoimpl.X.MessageStringOf(x)
1889 }
1890
1891 func (*ObjectTrackingAnnotation) ProtoMessage() {}
1892
1893 func (x *ObjectTrackingAnnotation) ProtoReflect() protoreflect.Message {
1894 mi := &file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[24]
1895 if protoimpl.UnsafeEnabled && x != nil {
1896 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1897 if ms.LoadMessageInfo() == nil {
1898 ms.StoreMessageInfo(mi)
1899 }
1900 return ms
1901 }
1902 return mi.MessageOf(x)
1903 }
1904
1905
1906 func (*ObjectTrackingAnnotation) Descriptor() ([]byte, []int) {
1907 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP(), []int{24}
1908 }
1909
1910 func (m *ObjectTrackingAnnotation) GetTrackInfo() isObjectTrackingAnnotation_TrackInfo {
1911 if m != nil {
1912 return m.TrackInfo
1913 }
1914 return nil
1915 }
1916
1917 func (x *ObjectTrackingAnnotation) GetSegment() *VideoSegment {
1918 if x, ok := x.GetTrackInfo().(*ObjectTrackingAnnotation_Segment); ok {
1919 return x.Segment
1920 }
1921 return nil
1922 }
1923
1924 func (x *ObjectTrackingAnnotation) GetTrackId() int64 {
1925 if x, ok := x.GetTrackInfo().(*ObjectTrackingAnnotation_TrackId); ok {
1926 return x.TrackId
1927 }
1928 return 0
1929 }
1930
1931 func (x *ObjectTrackingAnnotation) GetEntity() *Entity {
1932 if x != nil {
1933 return x.Entity
1934 }
1935 return nil
1936 }
1937
1938 func (x *ObjectTrackingAnnotation) GetConfidence() float32 {
1939 if x != nil {
1940 return x.Confidence
1941 }
1942 return 0
1943 }
1944
1945 func (x *ObjectTrackingAnnotation) GetFrames() []*ObjectTrackingFrame {
1946 if x != nil {
1947 return x.Frames
1948 }
1949 return nil
1950 }
1951
1952 type isObjectTrackingAnnotation_TrackInfo interface {
1953 isObjectTrackingAnnotation_TrackInfo()
1954 }
1955
1956 type ObjectTrackingAnnotation_Segment struct {
1957
1958
1959 Segment *VideoSegment `protobuf:"bytes,3,opt,name=segment,proto3,oneof"`
1960 }
1961
1962 type ObjectTrackingAnnotation_TrackId struct {
1963
1964
1965
1966
1967
1968
1969 TrackId int64 `protobuf:"varint,5,opt,name=track_id,json=trackId,proto3,oneof"`
1970 }
1971
1972 func (*ObjectTrackingAnnotation_Segment) isObjectTrackingAnnotation_TrackInfo() {}
1973
1974 func (*ObjectTrackingAnnotation_TrackId) isObjectTrackingAnnotation_TrackInfo() {}
1975
1976 var File_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto protoreflect.FileDescriptor
1977
1978 var file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDesc = []byte{
1979 0x0a, 0x41, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76,
1980 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65,
1981 0x2f, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x76, 0x69, 0x64, 0x65, 0x6f,
1982 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x70, 0x72,
1983 0x6f, 0x74, 0x6f, 0x12, 0x28, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
1984 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65,
1985 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67,
1986 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
1987 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f,
1988 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70,
1989 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,
1990 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e,
1991 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6c, 0x6f,
1992 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74,
1993 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67,
1994 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61,
1995 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67,
1996 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65,
1997 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f,
1998 0x67, 0x6c, 0x65, 0x2f, 0x72, 0x70, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70,
1999 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xd3, 0x02, 0x0a, 0x14, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
2000 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a,
2001 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
2002 0x52, 0x08, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x55, 0x72, 0x69, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e,
2003 0x70, 0x75, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28,
2004 0x0c, 0x52, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12,
2005 0x52, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
2006 0x0e, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
2007 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e,
2008 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x46, 0x65, 0x61,
2009 0x74, 0x75, 0x72, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75,
2010 0x72, 0x65, 0x73, 0x12, 0x5b, 0x0a, 0x0d, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x5f, 0x63, 0x6f, 0x6e,
2011 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f,
2012 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69,
2013 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32,
2014 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x6e, 0x74, 0x65,
2015 0x78, 0x74, 0x52, 0x0c, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
2016 0x12, 0x22, 0x0a, 0x0a, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x04,
2017 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x70, 0x75,
2018 0x74, 0x55, 0x72, 0x69, 0x12, 0x24, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
2019 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a,
2020 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xe8, 0x04, 0x0a, 0x0c, 0x56,
2021 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x52, 0x0a, 0x08, 0x73,
2022 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e,
2023 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64,
2024 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76,
2025 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x65,
2026 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12,
2027 0x74, 0x0a, 0x16, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69,
2028 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
2029 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
2030 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65,
2031 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c,
2032 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
2033 0x14, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43,
2034 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x84, 0x01, 0x0a, 0x1c, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x63,
2035 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
2036 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x67,
2037 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65,
2038 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31,
2039 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x68, 0x6f, 0x74, 0x43, 0x68, 0x61, 0x6e,
2040 0x67, 0x65, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69,
2041 0x67, 0x52, 0x19, 0x73, 0x68, 0x6f, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x65, 0x74,
2042 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x93, 0x01, 0x0a,
2043 0x21, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
2044 0x74, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66,
2045 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x48, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
2046 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74,
2047 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65,
2048 0x74, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74,
2049 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66,
2050 0x69, 0x67, 0x52, 0x1e, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74,
2051 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66,
2052 0x69, 0x67, 0x12, 0x71, 0x0a, 0x15, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63,
2053 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28,
2054 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
2055 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e,
2056 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x78,
2057 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
2058 0x52, 0x13, 0x74, 0x65, 0x78, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43,
2059 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xc9, 0x01, 0x0a, 0x14, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x44,
2060 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x6e,
2061 0x0a, 0x14, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f,
2062 0x6e, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x67,
2063 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65,
2064 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31,
2065 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x44, 0x65, 0x74,
2066 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x12, 0x6c, 0x61, 0x62, 0x65,
2067 0x6c, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x2b,
2068 0x0a, 0x11, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x61, 0x6d,
2069 0x65, 0x72, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x69,
2070 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x6d,
2071 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65,
2072 0x6c, 0x22, 0x31, 0x0a, 0x19, 0x53, 0x68, 0x6f, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x44,
2073 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x14,
2074 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d,
2075 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x36, 0x0a, 0x1e, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74,
2076 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
2077 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18,
2078 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x22, 0x3c, 0x0a, 0x13,
2079 0x54, 0x65, 0x78, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e,
2080 0x66, 0x69, 0x67, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f,
2081 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x61, 0x6e,
2082 0x67, 0x75, 0x61, 0x67, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x22, 0x98, 0x01, 0x0a, 0x0c, 0x56,
2083 0x69, 0x64, 0x65, 0x6f, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x45, 0x0a, 0x11, 0x73,
2084 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74,
2085 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
2086 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,
2087 0x6e, 0x52, 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73,
2088 0x65, 0x74, 0x12, 0x41, 0x0a, 0x0f, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f,
2089 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f,
2090 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75,
2091 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x4f,
2092 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x80, 0x01, 0x0a, 0x0c, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x53,
2093 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x07, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e,
2094 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
2095 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65,
2096 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74,
2097 0x61, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52,
2098 0x07, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66,
2099 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f,
2100 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x68, 0x0a, 0x0a, 0x4c, 0x61, 0x62, 0x65,
2101 0x6c, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f,
2102 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f,
2103 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75,
2104 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73,
2105 0x65, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65,
2106 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e,
2107 0x63, 0x65, 0x22, 0x6c, 0x0a, 0x06, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09,
2108 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
2109 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73,
2110 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
2111 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x6c,
2112 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01,
2113 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65,
2114 0x22, 0xdc, 0x02, 0x0a, 0x0f, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
2115 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x48, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01,
2116 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
2117 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69,
2118 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
2119 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x5d,
2120 0x0a, 0x11, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74,
2121 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
2122 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e,
2123 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62,
2124 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x10, 0x63, 0x61, 0x74,
2125 0x65, 0x67, 0x6f, 0x72, 0x79, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x52, 0x0a,
2126 0x08, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32,
2127 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
2128 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65,
2129 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c,
2130 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74,
2131 0x73, 0x12, 0x4c, 0x0a, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
2132 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
2133 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e,
2134 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x61, 0x62,
2135 0x65, 0x6c, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x22,
2136 0xbf, 0x01, 0x0a, 0x14, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74,
2137 0x65, 0x6e, 0x74, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x0b, 0x74, 0x69, 0x6d, 0x65,
2138 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e,
2139 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
2140 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x66,
2141 0x66, 0x73, 0x65, 0x74, 0x12, 0x6b, 0x0a, 0x16, 0x70, 0x6f, 0x72, 0x6e, 0x6f, 0x67, 0x72, 0x61,
2142 0x70, 0x68, 0x79, 0x5f, 0x6c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x18, 0x02,
2143 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
2144 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69,
2145 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
2146 0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x52, 0x15, 0x70, 0x6f, 0x72, 0x6e,
2147 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x79, 0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f,
2148 0x64, 0x22, 0x73, 0x0a, 0x19, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x43, 0x6f, 0x6e,
2149 0x74, 0x65, 0x6e, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x56,
2150 0x0a, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e,
2151 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
2152 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e,
2153 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63,
2154 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x06,
2155 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x6b, 0x0a, 0x15, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c,
2156 0x69, 0x7a, 0x65, 0x64, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x12,
2157 0x12, 0x0a, 0x04, 0x6c, 0x65, 0x66, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x6c,
2158 0x65, 0x66, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02,
2159 0x52, 0x03, 0x74, 0x6f, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x69, 0x67, 0x68, 0x74, 0x18, 0x03,
2160 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x72, 0x69, 0x67, 0x68, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x62,
2161 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x62, 0x6f, 0x74,
2162 0x74, 0x6f, 0x6d, 0x22, 0xeb, 0x06, 0x0a, 0x16, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x41, 0x6e, 0x6e,
2163 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x1b,
2164 0x0a, 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28,
2165 0x09, 0x52, 0x08, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x55, 0x72, 0x69, 0x12, 0x75, 0x0a, 0x19, 0x73,
2166 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x61, 0x6e, 0x6e,
2167 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39,
2168 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
2169 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e,
2170 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41,
2171 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x17, 0x73, 0x65, 0x67, 0x6d, 0x65,
2172 0x6e, 0x74, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
2173 0x6e, 0x73, 0x12, 0x6f, 0x0a, 0x16, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c,
2174 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03,
2175 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
2176 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65,
2177 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x61,
2178 0x62, 0x65, 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x14, 0x73,
2179 0x68, 0x6f, 0x74, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
2180 0x6f, 0x6e, 0x73, 0x12, 0x71, 0x0a, 0x17, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x6c, 0x61, 0x62,
2181 0x65, 0x6c, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04,
2182 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
2183 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69,
2184 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
2185 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
2186 0x15, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74,
2187 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x61, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x61,
2188 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b,
2189 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
2190 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63,
2191 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65,
2192 0x6f, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0f, 0x73, 0x68, 0x6f, 0x74, 0x41, 0x6e,
2193 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x74, 0x0a, 0x13, 0x65, 0x78, 0x70,
2194 0x6c, 0x69, 0x63, 0x69, 0x74, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
2195 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
2196 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c,
2197 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61,
2198 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
2199 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x65, 0x78, 0x70,
2200 0x6c, 0x69, 0x63, 0x69, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
2201 0x63, 0x0a, 0x10, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
2202 0x6f, 0x6e, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
2203 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e,
2204 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62,
2205 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
2206 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x74, 0x65, 0x78, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
2207 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x71, 0x0a, 0x12, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61,
2208 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b,
2209 0x32, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
2210 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63,
2211 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65,
2212 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
2213 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6e, 0x6e, 0x6f,
2214 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72,
2215 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
2216 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f,
2217 0x72, 0x22, 0x88, 0x01, 0x0a, 0x15, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x56, 0x69,
2218 0x64, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6f, 0x0a, 0x12, 0x61,
2219 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
2220 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
2221 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65,
2222 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74,
2223 0x61, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
2224 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x52, 0x11, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
2225 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0xd9, 0x01, 0x0a,
2226 0x17, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
2227 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x70, 0x75,
2228 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x70,
2229 0x75, 0x74, 0x55, 0x72, 0x69, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73,
2230 0x73, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
2231 0x0f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74,
2232 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03,
2233 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
2234 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
2235 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x75,
2236 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
2237 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
2238 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70,
2239 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x8b, 0x01, 0x0a, 0x15, 0x41, 0x6e, 0x6e,
2240 0x6f, 0x74, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65,
2241 0x73, 0x73, 0x12, 0x72, 0x0a, 0x13, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
2242 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
2243 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
2244 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65,
2245 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f,
2246 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65,
2247 0x73, 0x73, 0x52, 0x12, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72,
2248 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x2e, 0x0a, 0x10, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c,
2249 0x69, 0x7a, 0x65, 0x64, 0x56, 0x65, 0x72, 0x74, 0x65, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18,
2250 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20,
2251 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, 0x22, 0x70, 0x0a, 0x16, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c,
2252 0x69, 0x7a, 0x65, 0x64, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x79,
2253 0x12, 0x56, 0x0a, 0x08, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03,
2254 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
2255 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65,
2256 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x6f,
2257 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x56, 0x65, 0x72, 0x74, 0x65, 0x78, 0x52, 0x08,
2258 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x65, 0x73, 0x22, 0xcc, 0x01, 0x0a, 0x0b, 0x54, 0x65, 0x78,
2259 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x07, 0x73, 0x65, 0x67, 0x6d,
2260 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
2261 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e,
2262 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62,
2263 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e,
2264 0x74, 0x52, 0x07, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f,
2265 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a,
2266 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x4b, 0x0a, 0x06, 0x66, 0x72,
2267 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f,
2268 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69,
2269 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32,
2270 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x52,
2271 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x22, 0xbb, 0x01, 0x0a, 0x09, 0x54, 0x65, 0x78, 0x74,
2272 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x72, 0x0a, 0x14, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64,
2273 0x5f, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x6f, 0x78, 0x18, 0x01, 0x20,
2274 0x01, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
2275 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67,
2276 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e,
2277 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e,
2278 0x67, 0x50, 0x6f, 0x6c, 0x79, 0x52, 0x12, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64, 0x42, 0x6f,
2279 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x12, 0x3a, 0x0a, 0x0b, 0x74, 0x69, 0x6d,
2280 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19,
2281 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
2282 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x4f,
2283 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x77, 0x0a, 0x0e, 0x54, 0x65, 0x78, 0x74, 0x41, 0x6e, 0x6e,
2284 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18,
2285 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x51, 0x0a, 0x08, 0x73,
2286 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e,
2287 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64,
2288 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76,
2289 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x53, 0x65, 0x67,
2290 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0xca,
2291 0x01, 0x0a, 0x13, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e,
2292 0x67, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x77, 0x0a, 0x17, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c,
2293 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x6f,
2294 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
2295 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65,
2296 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74,
2297 0x61, 0x31, 0x2e, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x42, 0x6f, 0x75,
2298 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x52, 0x15, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c,
2299 0x69, 0x7a, 0x65, 0x64, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x78, 0x12,
2300 0x3a, 0x0a, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02,
2301 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
2302 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
2303 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0xda, 0x02, 0x0a, 0x18,
2304 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x41, 0x6e,
2305 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x52, 0x0a, 0x07, 0x73, 0x65, 0x67, 0x6d,
2306 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
2307 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e,
2308 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62,
2309 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e,
2310 0x74, 0x48, 0x00, 0x52, 0x07, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x08,
2311 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00,
2312 0x52, 0x07, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x06, 0x65, 0x6e, 0x74,
2313 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
2314 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e,
2315 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62,
2316 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x06, 0x65, 0x6e, 0x74,
2317 0x69, 0x74, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63,
2318 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65,
2319 0x6e, 0x63, 0x65, 0x12, 0x55, 0x0a, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20,
2320 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
2321 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67,
2322 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f,
2323 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x46, 0x72, 0x61,
2324 0x6d, 0x65, 0x52, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x42, 0x0c, 0x0a, 0x0a, 0x74, 0x72,
2325 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x2a, 0x9b, 0x01, 0x0a, 0x07, 0x46, 0x65, 0x61,
2326 0x74, 0x75, 0x72, 0x65, 0x12, 0x17, 0x0a, 0x13, 0x46, 0x45, 0x41, 0x54, 0x55, 0x52, 0x45, 0x5f,
2327 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a,
2328 0x0f, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e,
2329 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47,
2330 0x45, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x1e, 0x0a,
2331 0x1a, 0x45, 0x58, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e,
2332 0x54, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x03, 0x12, 0x12, 0x0a,
2333 0x0e, 0x54, 0x45, 0x58, 0x54, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10,
2334 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x52, 0x41, 0x43,
2335 0x4b, 0x49, 0x4e, 0x47, 0x10, 0x09, 0x2a, 0x72, 0x0a, 0x12, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x44,
2336 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x24, 0x0a, 0x20,
2337 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
2338 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
2339 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x10,
2340 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x46, 0x52, 0x41, 0x4d, 0x45, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x10,
2341 0x02, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x41, 0x4e, 0x44, 0x5f, 0x46, 0x52,
2342 0x41, 0x4d, 0x45, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x10, 0x03, 0x2a, 0x74, 0x0a, 0x0a, 0x4c, 0x69,
2343 0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x12, 0x1a, 0x0a, 0x16, 0x4c, 0x49, 0x4b, 0x45,
2344 0x4c, 0x49, 0x48, 0x4f, 0x4f, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
2345 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x56, 0x45, 0x52, 0x59, 0x5f, 0x55, 0x4e, 0x4c,
2346 0x49, 0x4b, 0x45, 0x4c, 0x59, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x4e, 0x4c, 0x49, 0x4b,
2347 0x45, 0x4c, 0x59, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x50, 0x4f, 0x53, 0x53, 0x49, 0x42, 0x4c,
2348 0x45, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x4c, 0x49, 0x4b, 0x45, 0x4c, 0x59, 0x10, 0x04, 0x12,
2349 0x0f, 0x0a, 0x0b, 0x56, 0x45, 0x52, 0x59, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x4c, 0x59, 0x10, 0x05,
2350 0x32, 0xce, 0x02, 0x0a, 0x18, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x6e, 0x74, 0x65, 0x6c, 0x6c,
2351 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xdb, 0x01,
2352 0x0a, 0x0d, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x12,
2353 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
2354 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65,
2355 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74,
2356 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
2357 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e,
2358 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6b,
2359 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x22, 0x1a, 0x2f, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74,
2360 0x61, 0x31, 0x2f, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x73, 0x3a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
2361 0x74, 0x65, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x12, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x75, 0x72,
2362 0x69, 0x2c, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0xca, 0x41, 0x2e, 0x0a, 0x15, 0x41,
2363 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x70,
2364 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x15, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x56, 0x69,
2365 0x64, 0x65, 0x6f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x1a, 0x54, 0xca, 0x41, 0x20,
2366 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63,
2367 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
2368 0xd2, 0x41, 0x2e, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67,
2369 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75,
2370 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
2371 0x6d, 0x42, 0xae, 0x02, 0x0a, 0x2c, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
2372 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65,
2373 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74,
2374 0x61, 0x31, 0x42, 0x1d, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69,
2375 0x67, 0x65, 0x6e, 0x63, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74,
2376 0x6f, 0x50, 0x01, 0x5a, 0x59, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61,
2377 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f,
2378 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
2379 0x2f, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e,
2380 0x63, 0x65, 0x2f, 0x76, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x76, 0x69, 0x64,
2381 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0xaa, 0x02,
2382 0x28, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x56, 0x69,
2383 0x64, 0x65, 0x6f, 0x49, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e,
2384 0x56, 0x31, 0x50, 0x32, 0x42, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02, 0x28, 0x47, 0x6f, 0x6f, 0x67,
2385 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x6e,
2386 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x5c, 0x56, 0x31, 0x70, 0x32, 0x62,
2387 0x65, 0x74, 0x61, 0x31, 0xea, 0x02, 0x2b, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43,
2388 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x6e, 0x74, 0x65, 0x6c,
2389 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x70, 0x32, 0x62, 0x65, 0x74,
2390 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
2391 }
2392
2393 var (
2394 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescOnce sync.Once
2395 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescData = file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDesc
2396 )
2397
2398 func file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescGZIP() []byte {
2399 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescOnce.Do(func() {
2400 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescData)
2401 })
2402 return file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDescData
2403 }
2404
2405 var file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
2406 var file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes = make([]protoimpl.MessageInfo, 25)
2407 var file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_goTypes = []interface{}{
2408 (Feature)(0),
2409 (LabelDetectionMode)(0),
2410 (Likelihood)(0),
2411 (*AnnotateVideoRequest)(nil),
2412 (*VideoContext)(nil),
2413 (*LabelDetectionConfig)(nil),
2414 (*ShotChangeDetectionConfig)(nil),
2415 (*ExplicitContentDetectionConfig)(nil),
2416 (*TextDetectionConfig)(nil),
2417 (*VideoSegment)(nil),
2418 (*LabelSegment)(nil),
2419 (*LabelFrame)(nil),
2420 (*Entity)(nil),
2421 (*LabelAnnotation)(nil),
2422 (*ExplicitContentFrame)(nil),
2423 (*ExplicitContentAnnotation)(nil),
2424 (*NormalizedBoundingBox)(nil),
2425 (*VideoAnnotationResults)(nil),
2426 (*AnnotateVideoResponse)(nil),
2427 (*VideoAnnotationProgress)(nil),
2428 (*AnnotateVideoProgress)(nil),
2429 (*NormalizedVertex)(nil),
2430 (*NormalizedBoundingPoly)(nil),
2431 (*TextSegment)(nil),
2432 (*TextFrame)(nil),
2433 (*TextAnnotation)(nil),
2434 (*ObjectTrackingFrame)(nil),
2435 (*ObjectTrackingAnnotation)(nil),
2436 (*durationpb.Duration)(nil),
2437 (*status.Status)(nil),
2438 (*timestamppb.Timestamp)(nil),
2439 (*longrunning.Operation)(nil),
2440 }
2441 var file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_depIdxs = []int32{
2442 0,
2443 4,
2444 9,
2445 5,
2446 6,
2447 7,
2448 8,
2449 1,
2450 28,
2451 28,
2452 9,
2453 28,
2454 12,
2455 12,
2456 10,
2457 11,
2458 28,
2459 2,
2460 14,
2461 13,
2462 13,
2463 13,
2464 9,
2465 15,
2466 25,
2467 27,
2468 29,
2469 17,
2470 30,
2471 30,
2472 19,
2473 21,
2474 9,
2475 24,
2476 22,
2477 28,
2478 23,
2479 16,
2480 28,
2481 9,
2482 12,
2483 26,
2484 3,
2485 31,
2486 43,
2487 42,
2488 42,
2489 42,
2490 0,
2491 }
2492
2493 func init() { file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_init() }
2494 func file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_init() {
2495 if File_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto != nil {
2496 return
2497 }
2498 if !protoimpl.UnsafeEnabled {
2499 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
2500 switch v := v.(*AnnotateVideoRequest); i {
2501 case 0:
2502 return &v.state
2503 case 1:
2504 return &v.sizeCache
2505 case 2:
2506 return &v.unknownFields
2507 default:
2508 return nil
2509 }
2510 }
2511 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
2512 switch v := v.(*VideoContext); i {
2513 case 0:
2514 return &v.state
2515 case 1:
2516 return &v.sizeCache
2517 case 2:
2518 return &v.unknownFields
2519 default:
2520 return nil
2521 }
2522 }
2523 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
2524 switch v := v.(*LabelDetectionConfig); i {
2525 case 0:
2526 return &v.state
2527 case 1:
2528 return &v.sizeCache
2529 case 2:
2530 return &v.unknownFields
2531 default:
2532 return nil
2533 }
2534 }
2535 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
2536 switch v := v.(*ShotChangeDetectionConfig); i {
2537 case 0:
2538 return &v.state
2539 case 1:
2540 return &v.sizeCache
2541 case 2:
2542 return &v.unknownFields
2543 default:
2544 return nil
2545 }
2546 }
2547 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
2548 switch v := v.(*ExplicitContentDetectionConfig); i {
2549 case 0:
2550 return &v.state
2551 case 1:
2552 return &v.sizeCache
2553 case 2:
2554 return &v.unknownFields
2555 default:
2556 return nil
2557 }
2558 }
2559 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
2560 switch v := v.(*TextDetectionConfig); i {
2561 case 0:
2562 return &v.state
2563 case 1:
2564 return &v.sizeCache
2565 case 2:
2566 return &v.unknownFields
2567 default:
2568 return nil
2569 }
2570 }
2571 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
2572 switch v := v.(*VideoSegment); i {
2573 case 0:
2574 return &v.state
2575 case 1:
2576 return &v.sizeCache
2577 case 2:
2578 return &v.unknownFields
2579 default:
2580 return nil
2581 }
2582 }
2583 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
2584 switch v := v.(*LabelSegment); i {
2585 case 0:
2586 return &v.state
2587 case 1:
2588 return &v.sizeCache
2589 case 2:
2590 return &v.unknownFields
2591 default:
2592 return nil
2593 }
2594 }
2595 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
2596 switch v := v.(*LabelFrame); i {
2597 case 0:
2598 return &v.state
2599 case 1:
2600 return &v.sizeCache
2601 case 2:
2602 return &v.unknownFields
2603 default:
2604 return nil
2605 }
2606 }
2607 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
2608 switch v := v.(*Entity); i {
2609 case 0:
2610 return &v.state
2611 case 1:
2612 return &v.sizeCache
2613 case 2:
2614 return &v.unknownFields
2615 default:
2616 return nil
2617 }
2618 }
2619 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
2620 switch v := v.(*LabelAnnotation); i {
2621 case 0:
2622 return &v.state
2623 case 1:
2624 return &v.sizeCache
2625 case 2:
2626 return &v.unknownFields
2627 default:
2628 return nil
2629 }
2630 }
2631 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
2632 switch v := v.(*ExplicitContentFrame); i {
2633 case 0:
2634 return &v.state
2635 case 1:
2636 return &v.sizeCache
2637 case 2:
2638 return &v.unknownFields
2639 default:
2640 return nil
2641 }
2642 }
2643 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
2644 switch v := v.(*ExplicitContentAnnotation); i {
2645 case 0:
2646 return &v.state
2647 case 1:
2648 return &v.sizeCache
2649 case 2:
2650 return &v.unknownFields
2651 default:
2652 return nil
2653 }
2654 }
2655 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
2656 switch v := v.(*NormalizedBoundingBox); i {
2657 case 0:
2658 return &v.state
2659 case 1:
2660 return &v.sizeCache
2661 case 2:
2662 return &v.unknownFields
2663 default:
2664 return nil
2665 }
2666 }
2667 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
2668 switch v := v.(*VideoAnnotationResults); i {
2669 case 0:
2670 return &v.state
2671 case 1:
2672 return &v.sizeCache
2673 case 2:
2674 return &v.unknownFields
2675 default:
2676 return nil
2677 }
2678 }
2679 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
2680 switch v := v.(*AnnotateVideoResponse); i {
2681 case 0:
2682 return &v.state
2683 case 1:
2684 return &v.sizeCache
2685 case 2:
2686 return &v.unknownFields
2687 default:
2688 return nil
2689 }
2690 }
2691 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
2692 switch v := v.(*VideoAnnotationProgress); i {
2693 case 0:
2694 return &v.state
2695 case 1:
2696 return &v.sizeCache
2697 case 2:
2698 return &v.unknownFields
2699 default:
2700 return nil
2701 }
2702 }
2703 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
2704 switch v := v.(*AnnotateVideoProgress); i {
2705 case 0:
2706 return &v.state
2707 case 1:
2708 return &v.sizeCache
2709 case 2:
2710 return &v.unknownFields
2711 default:
2712 return nil
2713 }
2714 }
2715 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
2716 switch v := v.(*NormalizedVertex); i {
2717 case 0:
2718 return &v.state
2719 case 1:
2720 return &v.sizeCache
2721 case 2:
2722 return &v.unknownFields
2723 default:
2724 return nil
2725 }
2726 }
2727 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
2728 switch v := v.(*NormalizedBoundingPoly); i {
2729 case 0:
2730 return &v.state
2731 case 1:
2732 return &v.sizeCache
2733 case 2:
2734 return &v.unknownFields
2735 default:
2736 return nil
2737 }
2738 }
2739 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
2740 switch v := v.(*TextSegment); i {
2741 case 0:
2742 return &v.state
2743 case 1:
2744 return &v.sizeCache
2745 case 2:
2746 return &v.unknownFields
2747 default:
2748 return nil
2749 }
2750 }
2751 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
2752 switch v := v.(*TextFrame); i {
2753 case 0:
2754 return &v.state
2755 case 1:
2756 return &v.sizeCache
2757 case 2:
2758 return &v.unknownFields
2759 default:
2760 return nil
2761 }
2762 }
2763 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
2764 switch v := v.(*TextAnnotation); i {
2765 case 0:
2766 return &v.state
2767 case 1:
2768 return &v.sizeCache
2769 case 2:
2770 return &v.unknownFields
2771 default:
2772 return nil
2773 }
2774 }
2775 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
2776 switch v := v.(*ObjectTrackingFrame); i {
2777 case 0:
2778 return &v.state
2779 case 1:
2780 return &v.sizeCache
2781 case 2:
2782 return &v.unknownFields
2783 default:
2784 return nil
2785 }
2786 }
2787 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
2788 switch v := v.(*ObjectTrackingAnnotation); i {
2789 case 0:
2790 return &v.state
2791 case 1:
2792 return &v.sizeCache
2793 case 2:
2794 return &v.unknownFields
2795 default:
2796 return nil
2797 }
2798 }
2799 }
2800 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes[24].OneofWrappers = []interface{}{
2801 (*ObjectTrackingAnnotation_Segment)(nil),
2802 (*ObjectTrackingAnnotation_TrackId)(nil),
2803 }
2804 type x struct{}
2805 out := protoimpl.TypeBuilder{
2806 File: protoimpl.DescBuilder{
2807 GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
2808 RawDescriptor: file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDesc,
2809 NumEnums: 3,
2810 NumMessages: 25,
2811 NumExtensions: 0,
2812 NumServices: 1,
2813 },
2814 GoTypes: file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_goTypes,
2815 DependencyIndexes: file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_depIdxs,
2816 EnumInfos: file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_enumTypes,
2817 MessageInfos: file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_msgTypes,
2818 }.Build()
2819 File_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto = out.File
2820 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_rawDesc = nil
2821 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_goTypes = nil
2822 file_google_cloud_videointelligence_v1p2beta1_video_intelligence_proto_depIdxs = nil
2823 }
2824
2825
2826 var _ context.Context
2827 var _ grpc.ClientConnInterface
2828
2829
2830
2831 const _ = grpc.SupportPackageIsVersion6
2832
2833
2834
2835
2836 type VideoIntelligenceServiceClient interface {
2837
2838
2839
2840
2841 AnnotateVideo(ctx context.Context, in *AnnotateVideoRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
2842 }
2843
2844 type videoIntelligenceServiceClient struct {
2845 cc grpc.ClientConnInterface
2846 }
2847
2848 func NewVideoIntelligenceServiceClient(cc grpc.ClientConnInterface) VideoIntelligenceServiceClient {
2849 return &videoIntelligenceServiceClient{cc}
2850 }
2851
2852 func (c *videoIntelligenceServiceClient) AnnotateVideo(ctx context.Context, in *AnnotateVideoRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
2853 out := new(longrunning.Operation)
2854 err := c.cc.Invoke(ctx, "/google.cloud.videointelligence.v1p2beta1.VideoIntelligenceService/AnnotateVideo", in, out, opts...)
2855 if err != nil {
2856 return nil, err
2857 }
2858 return out, nil
2859 }
2860
2861
2862 type VideoIntelligenceServiceServer interface {
2863
2864
2865
2866
2867 AnnotateVideo(context.Context, *AnnotateVideoRequest) (*longrunning.Operation, error)
2868 }
2869
2870
2871 type UnimplementedVideoIntelligenceServiceServer struct {
2872 }
2873
2874 func (*UnimplementedVideoIntelligenceServiceServer) AnnotateVideo(context.Context, *AnnotateVideoRequest) (*longrunning.Operation, error) {
2875 return nil, status1.Errorf(codes.Unimplemented, "method AnnotateVideo not implemented")
2876 }
2877
2878 func RegisterVideoIntelligenceServiceServer(s *grpc.Server, srv VideoIntelligenceServiceServer) {
2879 s.RegisterService(&_VideoIntelligenceService_serviceDesc, srv)
2880 }
2881
2882 func _VideoIntelligenceService_AnnotateVideo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2883 in := new(AnnotateVideoRequest)
2884 if err := dec(in); err != nil {
2885 return nil, err
2886 }
2887 if interceptor == nil {
2888 return srv.(VideoIntelligenceServiceServer).AnnotateVideo(ctx, in)
2889 }
2890 info := &grpc.UnaryServerInfo{
2891 Server: srv,
2892 FullMethod: "/google.cloud.videointelligence.v1p2beta1.VideoIntelligenceService/AnnotateVideo",
2893 }
2894 handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2895 return srv.(VideoIntelligenceServiceServer).AnnotateVideo(ctx, req.(*AnnotateVideoRequest))
2896 }
2897 return interceptor(ctx, in, info, handler)
2898 }
2899
2900 var _VideoIntelligenceService_serviceDesc = grpc.ServiceDesc{
2901 ServiceName: "google.cloud.videointelligence.v1p2beta1.VideoIntelligenceService",
2902 HandlerType: (*VideoIntelligenceServiceServer)(nil),
2903 Methods: []grpc.MethodDesc{
2904 {
2905 MethodName: "AnnotateVideo",
2906 Handler: _VideoIntelligenceService_AnnotateVideo_Handler,
2907 },
2908 },
2909 Streams: []grpc.StreamDesc{},
2910 Metadata: "google/cloud/videointelligence/v1p2beta1/video_intelligence.proto",
2911 }
2912
View as plain text