1// Code generated by protoc-gen-go. DO NOT EDIT.
2// source: google/cloud/videointelligence/v1/video_intelligence.proto
3
4package videointelligence
5
6import (
7	context "context"
8	fmt "fmt"
9	math "math"
10
11	proto "github.com/golang/protobuf/proto"
12	duration "github.com/golang/protobuf/ptypes/duration"
13	timestamp "github.com/golang/protobuf/ptypes/timestamp"
14	_ "google.golang.org/genproto/googleapis/api/annotations"
15	longrunning "google.golang.org/genproto/googleapis/longrunning"
16	status "google.golang.org/genproto/googleapis/rpc/status"
17	grpc "google.golang.org/grpc"
18)
19
20// Reference imports to suppress errors if they are not otherwise used.
21var _ = proto.Marshal
22var _ = fmt.Errorf
23var _ = math.Inf
24
25// This is a compile-time assertion to ensure that this generated file
26// is compatible with the proto package it is being compiled against.
27// A compilation error at this line likely means your copy of the
28// proto package needs to be updated.
29const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
30
31// Video annotation feature.
32type Feature int32
33
34const (
35	// Unspecified.
36	Feature_FEATURE_UNSPECIFIED Feature = 0
37	// Label detection. Detect objects, such as dog or flower.
38	Feature_LABEL_DETECTION Feature = 1
39	// Shot change detection.
40	Feature_SHOT_CHANGE_DETECTION Feature = 2
41	// Explicit content detection.
42	Feature_EXPLICIT_CONTENT_DETECTION Feature = 3
43	// Human face detection and tracking.
44	Feature_FACE_DETECTION Feature = 4
45	// Speech transcription.
46	Feature_SPEECH_TRANSCRIPTION Feature = 6
47	// OCR text detection and tracking.
48	Feature_TEXT_DETECTION Feature = 7
49	// Object detection and tracking.
50	Feature_OBJECT_TRACKING Feature = 9
51)
52
53var Feature_name = map[int32]string{
54	0: "FEATURE_UNSPECIFIED",
55	1: "LABEL_DETECTION",
56	2: "SHOT_CHANGE_DETECTION",
57	3: "EXPLICIT_CONTENT_DETECTION",
58	4: "FACE_DETECTION",
59	6: "SPEECH_TRANSCRIPTION",
60	7: "TEXT_DETECTION",
61	9: "OBJECT_TRACKING",
62}
63
64var Feature_value = map[string]int32{
65	"FEATURE_UNSPECIFIED":        0,
66	"LABEL_DETECTION":            1,
67	"SHOT_CHANGE_DETECTION":      2,
68	"EXPLICIT_CONTENT_DETECTION": 3,
69	"FACE_DETECTION":             4,
70	"SPEECH_TRANSCRIPTION":       6,
71	"TEXT_DETECTION":             7,
72	"OBJECT_TRACKING":            9,
73}
74
75func (x Feature) String() string {
76	return proto.EnumName(Feature_name, int32(x))
77}
78
79func (Feature) EnumDescriptor() ([]byte, []int) {
80	return fileDescriptor_7638dbca9a7e63fa, []int{0}
81}
82
83// Label detection mode.
84type LabelDetectionMode int32
85
86const (
87	// Unspecified.
88	LabelDetectionMode_LABEL_DETECTION_MODE_UNSPECIFIED LabelDetectionMode = 0
89	// Detect shot-level labels.
90	LabelDetectionMode_SHOT_MODE LabelDetectionMode = 1
91	// Detect frame-level labels.
92	LabelDetectionMode_FRAME_MODE LabelDetectionMode = 2
93	// Detect both shot-level and frame-level labels.
94	LabelDetectionMode_SHOT_AND_FRAME_MODE LabelDetectionMode = 3
95)
96
97var LabelDetectionMode_name = map[int32]string{
98	0: "LABEL_DETECTION_MODE_UNSPECIFIED",
99	1: "SHOT_MODE",
100	2: "FRAME_MODE",
101	3: "SHOT_AND_FRAME_MODE",
102}
103
104var LabelDetectionMode_value = map[string]int32{
105	"LABEL_DETECTION_MODE_UNSPECIFIED": 0,
106	"SHOT_MODE":                        1,
107	"FRAME_MODE":                       2,
108	"SHOT_AND_FRAME_MODE":              3,
109}
110
111func (x LabelDetectionMode) String() string {
112	return proto.EnumName(LabelDetectionMode_name, int32(x))
113}
114
115func (LabelDetectionMode) EnumDescriptor() ([]byte, []int) {
116	return fileDescriptor_7638dbca9a7e63fa, []int{1}
117}
118
119// Bucketized representation of likelihood.
120type Likelihood int32
121
122const (
123	// Unspecified likelihood.
124	Likelihood_LIKELIHOOD_UNSPECIFIED Likelihood = 0
125	// Very unlikely.
126	Likelihood_VERY_UNLIKELY Likelihood = 1
127	// Unlikely.
128	Likelihood_UNLIKELY Likelihood = 2
129	// Possible.
130	Likelihood_POSSIBLE Likelihood = 3
131	// Likely.
132	Likelihood_LIKELY Likelihood = 4
133	// Very likely.
134	Likelihood_VERY_LIKELY Likelihood = 5
135)
136
137var Likelihood_name = map[int32]string{
138	0: "LIKELIHOOD_UNSPECIFIED",
139	1: "VERY_UNLIKELY",
140	2: "UNLIKELY",
141	3: "POSSIBLE",
142	4: "LIKELY",
143	5: "VERY_LIKELY",
144}
145
146var Likelihood_value = map[string]int32{
147	"LIKELIHOOD_UNSPECIFIED": 0,
148	"VERY_UNLIKELY":          1,
149	"UNLIKELY":               2,
150	"POSSIBLE":               3,
151	"LIKELY":                 4,
152	"VERY_LIKELY":            5,
153}
154
155func (x Likelihood) String() string {
156	return proto.EnumName(Likelihood_name, int32(x))
157}
158
159func (Likelihood) EnumDescriptor() ([]byte, []int) {
160	return fileDescriptor_7638dbca9a7e63fa, []int{2}
161}
162
163// Video annotation request.
164type AnnotateVideoRequest struct {
165	// Input video location. Currently, only
166	// [Google Cloud Storage](https://cloud.google.com/storage/) URIs are
167	// supported, which must be specified in the following format:
168	// `gs://bucket-id/object-id` (other URI formats return
169	// [google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]). For
170	// more information, see [Request URIs](/storage/docs/reference-uris). A video
171	// URI may include wildcards in `object-id`, and thus identify multiple
172	// videos. Supported wildcards: '*' to match 0 or more characters;
173	// '?' to match 1 character. If unset, the input video should be embedded
174	// in the request as `input_content`. If set, `input_content` should be unset.
175	InputUri string `protobuf:"bytes,1,opt,name=input_uri,json=inputUri,proto3" json:"input_uri,omitempty"`
176	// The video data bytes.
177	// If unset, the input video(s) should be specified via `input_uri`.
178	// If set, `input_uri` should be unset.
179	InputContent []byte `protobuf:"bytes,6,opt,name=input_content,json=inputContent,proto3" json:"input_content,omitempty"`
180	// Requested video annotation features.
181	Features []Feature `protobuf:"varint,2,rep,packed,name=features,proto3,enum=google.cloud.videointelligence.v1.Feature" json:"features,omitempty"`
182	// Additional video context and/or feature-specific parameters.
183	VideoContext *VideoContext `protobuf:"bytes,3,opt,name=video_context,json=videoContext,proto3" json:"video_context,omitempty"`
184	// Optional location where the output (in JSON format) should be stored.
185	// Currently, only [Google Cloud Storage](https://cloud.google.com/storage/)
186	// URIs are supported, which must be specified in the following format:
187	// `gs://bucket-id/object-id` (other URI formats return
188	// [google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]). For
189	// more information, see [Request URIs](/storage/docs/reference-uris).
190	OutputUri string `protobuf:"bytes,4,opt,name=output_uri,json=outputUri,proto3" json:"output_uri,omitempty"`
191	// Optional cloud region where annotation should take place. Supported cloud
192	// regions: `us-east1`, `us-west1`, `europe-west1`, `asia-east1`. If no region
193	// is specified, a region will be determined based on video file location.
194	LocationId           string   `protobuf:"bytes,5,opt,name=location_id,json=locationId,proto3" json:"location_id,omitempty"`
195	XXX_NoUnkeyedLiteral struct{} `json:"-"`
196	XXX_unrecognized     []byte   `json:"-"`
197	XXX_sizecache        int32    `json:"-"`
198}
199
200func (m *AnnotateVideoRequest) Reset()         { *m = AnnotateVideoRequest{} }
201func (m *AnnotateVideoRequest) String() string { return proto.CompactTextString(m) }
202func (*AnnotateVideoRequest) ProtoMessage()    {}
203func (*AnnotateVideoRequest) Descriptor() ([]byte, []int) {
204	return fileDescriptor_7638dbca9a7e63fa, []int{0}
205}
206
207func (m *AnnotateVideoRequest) XXX_Unmarshal(b []byte) error {
208	return xxx_messageInfo_AnnotateVideoRequest.Unmarshal(m, b)
209}
210func (m *AnnotateVideoRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
211	return xxx_messageInfo_AnnotateVideoRequest.Marshal(b, m, deterministic)
212}
213func (m *AnnotateVideoRequest) XXX_Merge(src proto.Message) {
214	xxx_messageInfo_AnnotateVideoRequest.Merge(m, src)
215}
216func (m *AnnotateVideoRequest) XXX_Size() int {
217	return xxx_messageInfo_AnnotateVideoRequest.Size(m)
218}
219func (m *AnnotateVideoRequest) XXX_DiscardUnknown() {
220	xxx_messageInfo_AnnotateVideoRequest.DiscardUnknown(m)
221}
222
223var xxx_messageInfo_AnnotateVideoRequest proto.InternalMessageInfo
224
225func (m *AnnotateVideoRequest) GetInputUri() string {
226	if m != nil {
227		return m.InputUri
228	}
229	return ""
230}
231
232func (m *AnnotateVideoRequest) GetInputContent() []byte {
233	if m != nil {
234		return m.InputContent
235	}
236	return nil
237}
238
239func (m *AnnotateVideoRequest) GetFeatures() []Feature {
240	if m != nil {
241		return m.Features
242	}
243	return nil
244}
245
246func (m *AnnotateVideoRequest) GetVideoContext() *VideoContext {
247	if m != nil {
248		return m.VideoContext
249	}
250	return nil
251}
252
253func (m *AnnotateVideoRequest) GetOutputUri() string {
254	if m != nil {
255		return m.OutputUri
256	}
257	return ""
258}
259
260func (m *AnnotateVideoRequest) GetLocationId() string {
261	if m != nil {
262		return m.LocationId
263	}
264	return ""
265}
266
267// Video context and/or feature-specific parameters.
268type VideoContext struct {
269	// Video segments to annotate. The segments may overlap and are not required
270	// to be contiguous or span the whole video. If unspecified, each video is
271	// treated as a single segment.
272	Segments []*VideoSegment `protobuf:"bytes,1,rep,name=segments,proto3" json:"segments,omitempty"`
273	// Config for LABEL_DETECTION.
274	LabelDetectionConfig *LabelDetectionConfig `protobuf:"bytes,2,opt,name=label_detection_config,json=labelDetectionConfig,proto3" json:"label_detection_config,omitempty"`
275	// Config for SHOT_CHANGE_DETECTION.
276	ShotChangeDetectionConfig *ShotChangeDetectionConfig `protobuf:"bytes,3,opt,name=shot_change_detection_config,json=shotChangeDetectionConfig,proto3" json:"shot_change_detection_config,omitempty"`
277	// Config for EXPLICIT_CONTENT_DETECTION.
278	ExplicitContentDetectionConfig *ExplicitContentDetectionConfig `protobuf:"bytes,4,opt,name=explicit_content_detection_config,json=explicitContentDetectionConfig,proto3" json:"explicit_content_detection_config,omitempty"`
279	// Config for FACE_DETECTION.
280	FaceDetectionConfig *FaceDetectionConfig `protobuf:"bytes,5,opt,name=face_detection_config,json=faceDetectionConfig,proto3" json:"face_detection_config,omitempty"`
281	// Config for SPEECH_TRANSCRIPTION.
282	SpeechTranscriptionConfig *SpeechTranscriptionConfig `protobuf:"bytes,6,opt,name=speech_transcription_config,json=speechTranscriptionConfig,proto3" json:"speech_transcription_config,omitempty"`
283	// Config for TEXT_DETECTION.
284	TextDetectionConfig *TextDetectionConfig `protobuf:"bytes,8,opt,name=text_detection_config,json=textDetectionConfig,proto3" json:"text_detection_config,omitempty"`
285	// Config for OBJECT_TRACKING.
286	ObjectTrackingConfig *ObjectTrackingConfig `protobuf:"bytes,13,opt,name=object_tracking_config,json=objectTrackingConfig,proto3" json:"object_tracking_config,omitempty"`
287	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
288	XXX_unrecognized     []byte                `json:"-"`
289	XXX_sizecache        int32                 `json:"-"`
290}
291
292func (m *VideoContext) Reset()         { *m = VideoContext{} }
293func (m *VideoContext) String() string { return proto.CompactTextString(m) }
294func (*VideoContext) ProtoMessage()    {}
295func (*VideoContext) Descriptor() ([]byte, []int) {
296	return fileDescriptor_7638dbca9a7e63fa, []int{1}
297}
298
299func (m *VideoContext) XXX_Unmarshal(b []byte) error {
300	return xxx_messageInfo_VideoContext.Unmarshal(m, b)
301}
302func (m *VideoContext) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
303	return xxx_messageInfo_VideoContext.Marshal(b, m, deterministic)
304}
305func (m *VideoContext) XXX_Merge(src proto.Message) {
306	xxx_messageInfo_VideoContext.Merge(m, src)
307}
308func (m *VideoContext) XXX_Size() int {
309	return xxx_messageInfo_VideoContext.Size(m)
310}
311func (m *VideoContext) XXX_DiscardUnknown() {
312	xxx_messageInfo_VideoContext.DiscardUnknown(m)
313}
314
315var xxx_messageInfo_VideoContext proto.InternalMessageInfo
316
317func (m *VideoContext) GetSegments() []*VideoSegment {
318	if m != nil {
319		return m.Segments
320	}
321	return nil
322}
323
324func (m *VideoContext) GetLabelDetectionConfig() *LabelDetectionConfig {
325	if m != nil {
326		return m.LabelDetectionConfig
327	}
328	return nil
329}
330
331func (m *VideoContext) GetShotChangeDetectionConfig() *ShotChangeDetectionConfig {
332	if m != nil {
333		return m.ShotChangeDetectionConfig
334	}
335	return nil
336}
337
338func (m *VideoContext) GetExplicitContentDetectionConfig() *ExplicitContentDetectionConfig {
339	if m != nil {
340		return m.ExplicitContentDetectionConfig
341	}
342	return nil
343}
344
345func (m *VideoContext) GetFaceDetectionConfig() *FaceDetectionConfig {
346	if m != nil {
347		return m.FaceDetectionConfig
348	}
349	return nil
350}
351
352func (m *VideoContext) GetSpeechTranscriptionConfig() *SpeechTranscriptionConfig {
353	if m != nil {
354		return m.SpeechTranscriptionConfig
355	}
356	return nil
357}
358
359func (m *VideoContext) GetTextDetectionConfig() *TextDetectionConfig {
360	if m != nil {
361		return m.TextDetectionConfig
362	}
363	return nil
364}
365
366func (m *VideoContext) GetObjectTrackingConfig() *ObjectTrackingConfig {
367	if m != nil {
368		return m.ObjectTrackingConfig
369	}
370	return nil
371}
372
373// Config for LABEL_DETECTION.
374type LabelDetectionConfig struct {
375	// What labels should be detected with LABEL_DETECTION, in addition to
376	// video-level labels or segment-level labels.
377	// If unspecified, defaults to `SHOT_MODE`.
378	LabelDetectionMode LabelDetectionMode `protobuf:"varint,1,opt,name=label_detection_mode,json=labelDetectionMode,proto3,enum=google.cloud.videointelligence.v1.LabelDetectionMode" json:"label_detection_mode,omitempty"`
379	// Whether the video has been shot from a stationary (i.e. non-moving) camera.
380	// When set to true, might improve detection accuracy for moving objects.
381	// Should be used with `SHOT_AND_FRAME_MODE` enabled.
382	StationaryCamera bool `protobuf:"varint,2,opt,name=stationary_camera,json=stationaryCamera,proto3" json:"stationary_camera,omitempty"`
383	// Model to use for label detection.
384	// Supported values: "builtin/stable" (the default if unset) and
385	// "builtin/latest".
386	Model string `protobuf:"bytes,3,opt,name=model,proto3" json:"model,omitempty"`
387	// The confidence threshold we perform filtering on the labels from
388	// frame-level detection. If not set, it is set to 0.4 by default. The valid
389	// range for this threshold is [0.1, 0.9]. Any value set outside of this
390	// range will be clipped.
391	// Note: for best results please follow the default threshold. We will update
392	// the default threshold everytime when we release a new model.
393	FrameConfidenceThreshold float32 `protobuf:"fixed32,4,opt,name=frame_confidence_threshold,json=frameConfidenceThreshold,proto3" json:"frame_confidence_threshold,omitempty"`
394	// The confidence threshold we perform filtering on the labels from
395	// video-level and shot-level detections. If not set, it is set to 0.3 by
396	// default. The valid range for this threshold is [0.1, 0.9]. Any value set
397	// outside of this range will be clipped.
398	// Note: for best results please follow the default threshold. We will update
399	// the default threshold everytime when we release a new model.
400	VideoConfidenceThreshold float32  `protobuf:"fixed32,5,opt,name=video_confidence_threshold,json=videoConfidenceThreshold,proto3" json:"video_confidence_threshold,omitempty"`
401	XXX_NoUnkeyedLiteral     struct{} `json:"-"`
402	XXX_unrecognized         []byte   `json:"-"`
403	XXX_sizecache            int32    `json:"-"`
404}
405
406func (m *LabelDetectionConfig) Reset()         { *m = LabelDetectionConfig{} }
407func (m *LabelDetectionConfig) String() string { return proto.CompactTextString(m) }
408func (*LabelDetectionConfig) ProtoMessage()    {}
409func (*LabelDetectionConfig) Descriptor() ([]byte, []int) {
410	return fileDescriptor_7638dbca9a7e63fa, []int{2}
411}
412
413func (m *LabelDetectionConfig) XXX_Unmarshal(b []byte) error {
414	return xxx_messageInfo_LabelDetectionConfig.Unmarshal(m, b)
415}
416func (m *LabelDetectionConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
417	return xxx_messageInfo_LabelDetectionConfig.Marshal(b, m, deterministic)
418}
419func (m *LabelDetectionConfig) XXX_Merge(src proto.Message) {
420	xxx_messageInfo_LabelDetectionConfig.Merge(m, src)
421}
422func (m *LabelDetectionConfig) XXX_Size() int {
423	return xxx_messageInfo_LabelDetectionConfig.Size(m)
424}
425func (m *LabelDetectionConfig) XXX_DiscardUnknown() {
426	xxx_messageInfo_LabelDetectionConfig.DiscardUnknown(m)
427}
428
429var xxx_messageInfo_LabelDetectionConfig proto.InternalMessageInfo
430
431func (m *LabelDetectionConfig) GetLabelDetectionMode() LabelDetectionMode {
432	if m != nil {
433		return m.LabelDetectionMode
434	}
435	return LabelDetectionMode_LABEL_DETECTION_MODE_UNSPECIFIED
436}
437
438func (m *LabelDetectionConfig) GetStationaryCamera() bool {
439	if m != nil {
440		return m.StationaryCamera
441	}
442	return false
443}
444
445func (m *LabelDetectionConfig) GetModel() string {
446	if m != nil {
447		return m.Model
448	}
449	return ""
450}
451
452func (m *LabelDetectionConfig) GetFrameConfidenceThreshold() float32 {
453	if m != nil {
454		return m.FrameConfidenceThreshold
455	}
456	return 0
457}
458
459func (m *LabelDetectionConfig) GetVideoConfidenceThreshold() float32 {
460	if m != nil {
461		return m.VideoConfidenceThreshold
462	}
463	return 0
464}
465
466// Config for SHOT_CHANGE_DETECTION.
467type ShotChangeDetectionConfig struct {
468	// Model to use for shot change detection.
469	// Supported values: "builtin/stable" (the default if unset) and
470	// "builtin/latest".
471	Model                string   `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"`
472	XXX_NoUnkeyedLiteral struct{} `json:"-"`
473	XXX_unrecognized     []byte   `json:"-"`
474	XXX_sizecache        int32    `json:"-"`
475}
476
477func (m *ShotChangeDetectionConfig) Reset()         { *m = ShotChangeDetectionConfig{} }
478func (m *ShotChangeDetectionConfig) String() string { return proto.CompactTextString(m) }
479func (*ShotChangeDetectionConfig) ProtoMessage()    {}
480func (*ShotChangeDetectionConfig) Descriptor() ([]byte, []int) {
481	return fileDescriptor_7638dbca9a7e63fa, []int{3}
482}
483
484func (m *ShotChangeDetectionConfig) XXX_Unmarshal(b []byte) error {
485	return xxx_messageInfo_ShotChangeDetectionConfig.Unmarshal(m, b)
486}
487func (m *ShotChangeDetectionConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
488	return xxx_messageInfo_ShotChangeDetectionConfig.Marshal(b, m, deterministic)
489}
490func (m *ShotChangeDetectionConfig) XXX_Merge(src proto.Message) {
491	xxx_messageInfo_ShotChangeDetectionConfig.Merge(m, src)
492}
493func (m *ShotChangeDetectionConfig) XXX_Size() int {
494	return xxx_messageInfo_ShotChangeDetectionConfig.Size(m)
495}
496func (m *ShotChangeDetectionConfig) XXX_DiscardUnknown() {
497	xxx_messageInfo_ShotChangeDetectionConfig.DiscardUnknown(m)
498}
499
500var xxx_messageInfo_ShotChangeDetectionConfig proto.InternalMessageInfo
501
502func (m *ShotChangeDetectionConfig) GetModel() string {
503	if m != nil {
504		return m.Model
505	}
506	return ""
507}
508
509// Config for EXPLICIT_CONTENT_DETECTION.
510type ExplicitContentDetectionConfig struct {
511	// Model to use for explicit content detection.
512	// Supported values: "builtin/stable" (the default if unset) and
513	// "builtin/latest".
514	Model                string   `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"`
515	XXX_NoUnkeyedLiteral struct{} `json:"-"`
516	XXX_unrecognized     []byte   `json:"-"`
517	XXX_sizecache        int32    `json:"-"`
518}
519
520func (m *ExplicitContentDetectionConfig) Reset()         { *m = ExplicitContentDetectionConfig{} }
521func (m *ExplicitContentDetectionConfig) String() string { return proto.CompactTextString(m) }
522func (*ExplicitContentDetectionConfig) ProtoMessage()    {}
523func (*ExplicitContentDetectionConfig) Descriptor() ([]byte, []int) {
524	return fileDescriptor_7638dbca9a7e63fa, []int{4}
525}
526
527func (m *ExplicitContentDetectionConfig) XXX_Unmarshal(b []byte) error {
528	return xxx_messageInfo_ExplicitContentDetectionConfig.Unmarshal(m, b)
529}
530func (m *ExplicitContentDetectionConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
531	return xxx_messageInfo_ExplicitContentDetectionConfig.Marshal(b, m, deterministic)
532}
533func (m *ExplicitContentDetectionConfig) XXX_Merge(src proto.Message) {
534	xxx_messageInfo_ExplicitContentDetectionConfig.Merge(m, src)
535}
536func (m *ExplicitContentDetectionConfig) XXX_Size() int {
537	return xxx_messageInfo_ExplicitContentDetectionConfig.Size(m)
538}
539func (m *ExplicitContentDetectionConfig) XXX_DiscardUnknown() {
540	xxx_messageInfo_ExplicitContentDetectionConfig.DiscardUnknown(m)
541}
542
543var xxx_messageInfo_ExplicitContentDetectionConfig proto.InternalMessageInfo
544
545func (m *ExplicitContentDetectionConfig) GetModel() string {
546	if m != nil {
547		return m.Model
548	}
549	return ""
550}
551
552// Config for FACE_DETECTION.
553type FaceDetectionConfig struct {
554	// Model to use for face detection.
555	// Supported values: "builtin/stable" (the default if unset) and
556	// "builtin/latest".
557	Model string `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"`
558	// Whether bounding boxes be included in the face annotation output.
559	IncludeBoundingBoxes bool     `protobuf:"varint,2,opt,name=include_bounding_boxes,json=includeBoundingBoxes,proto3" json:"include_bounding_boxes,omitempty"`
560	XXX_NoUnkeyedLiteral struct{} `json:"-"`
561	XXX_unrecognized     []byte   `json:"-"`
562	XXX_sizecache        int32    `json:"-"`
563}
564
565func (m *FaceDetectionConfig) Reset()         { *m = FaceDetectionConfig{} }
566func (m *FaceDetectionConfig) String() string { return proto.CompactTextString(m) }
567func (*FaceDetectionConfig) ProtoMessage()    {}
568func (*FaceDetectionConfig) Descriptor() ([]byte, []int) {
569	return fileDescriptor_7638dbca9a7e63fa, []int{5}
570}
571
572func (m *FaceDetectionConfig) XXX_Unmarshal(b []byte) error {
573	return xxx_messageInfo_FaceDetectionConfig.Unmarshal(m, b)
574}
575func (m *FaceDetectionConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
576	return xxx_messageInfo_FaceDetectionConfig.Marshal(b, m, deterministic)
577}
578func (m *FaceDetectionConfig) XXX_Merge(src proto.Message) {
579	xxx_messageInfo_FaceDetectionConfig.Merge(m, src)
580}
581func (m *FaceDetectionConfig) XXX_Size() int {
582	return xxx_messageInfo_FaceDetectionConfig.Size(m)
583}
584func (m *FaceDetectionConfig) XXX_DiscardUnknown() {
585	xxx_messageInfo_FaceDetectionConfig.DiscardUnknown(m)
586}
587
588var xxx_messageInfo_FaceDetectionConfig proto.InternalMessageInfo
589
590func (m *FaceDetectionConfig) GetModel() string {
591	if m != nil {
592		return m.Model
593	}
594	return ""
595}
596
597func (m *FaceDetectionConfig) GetIncludeBoundingBoxes() bool {
598	if m != nil {
599		return m.IncludeBoundingBoxes
600	}
601	return false
602}
603
604// Config for OBJECT_TRACKING.
605type ObjectTrackingConfig struct {
606	// Model to use for object tracking.
607	// Supported values: "builtin/stable" (the default if unset) and
608	// "builtin/latest".
609	Model                string   `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"`
610	XXX_NoUnkeyedLiteral struct{} `json:"-"`
611	XXX_unrecognized     []byte   `json:"-"`
612	XXX_sizecache        int32    `json:"-"`
613}
614
615func (m *ObjectTrackingConfig) Reset()         { *m = ObjectTrackingConfig{} }
616func (m *ObjectTrackingConfig) String() string { return proto.CompactTextString(m) }
617func (*ObjectTrackingConfig) ProtoMessage()    {}
618func (*ObjectTrackingConfig) Descriptor() ([]byte, []int) {
619	return fileDescriptor_7638dbca9a7e63fa, []int{6}
620}
621
622func (m *ObjectTrackingConfig) XXX_Unmarshal(b []byte) error {
623	return xxx_messageInfo_ObjectTrackingConfig.Unmarshal(m, b)
624}
625func (m *ObjectTrackingConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
626	return xxx_messageInfo_ObjectTrackingConfig.Marshal(b, m, deterministic)
627}
628func (m *ObjectTrackingConfig) XXX_Merge(src proto.Message) {
629	xxx_messageInfo_ObjectTrackingConfig.Merge(m, src)
630}
631func (m *ObjectTrackingConfig) XXX_Size() int {
632	return xxx_messageInfo_ObjectTrackingConfig.Size(m)
633}
634func (m *ObjectTrackingConfig) XXX_DiscardUnknown() {
635	xxx_messageInfo_ObjectTrackingConfig.DiscardUnknown(m)
636}
637
638var xxx_messageInfo_ObjectTrackingConfig proto.InternalMessageInfo
639
640func (m *ObjectTrackingConfig) GetModel() string {
641	if m != nil {
642		return m.Model
643	}
644	return ""
645}
646
647// Config for TEXT_DETECTION.
648type TextDetectionConfig struct {
649	// Language hint can be specified if the language to be detected is known a
650	// priori. It can increase the accuracy of the detection. Language hint must
651	// be language code in BCP-47 format.
652	//
653	// Automatic language detection is performed if no hint is provided.
654	LanguageHints []string `protobuf:"bytes,1,rep,name=language_hints,json=languageHints,proto3" json:"language_hints,omitempty"`
655	// Model to use for text detection.
656	// Supported values: "builtin/stable" (the default if unset) and
657	// "builtin/latest".
658	Model                string   `protobuf:"bytes,2,opt,name=model,proto3" json:"model,omitempty"`
659	XXX_NoUnkeyedLiteral struct{} `json:"-"`
660	XXX_unrecognized     []byte   `json:"-"`
661	XXX_sizecache        int32    `json:"-"`
662}
663
664func (m *TextDetectionConfig) Reset()         { *m = TextDetectionConfig{} }
665func (m *TextDetectionConfig) String() string { return proto.CompactTextString(m) }
666func (*TextDetectionConfig) ProtoMessage()    {}
667func (*TextDetectionConfig) Descriptor() ([]byte, []int) {
668	return fileDescriptor_7638dbca9a7e63fa, []int{7}
669}
670
671func (m *TextDetectionConfig) XXX_Unmarshal(b []byte) error {
672	return xxx_messageInfo_TextDetectionConfig.Unmarshal(m, b)
673}
674func (m *TextDetectionConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
675	return xxx_messageInfo_TextDetectionConfig.Marshal(b, m, deterministic)
676}
677func (m *TextDetectionConfig) XXX_Merge(src proto.Message) {
678	xxx_messageInfo_TextDetectionConfig.Merge(m, src)
679}
680func (m *TextDetectionConfig) XXX_Size() int {
681	return xxx_messageInfo_TextDetectionConfig.Size(m)
682}
683func (m *TextDetectionConfig) XXX_DiscardUnknown() {
684	xxx_messageInfo_TextDetectionConfig.DiscardUnknown(m)
685}
686
687var xxx_messageInfo_TextDetectionConfig proto.InternalMessageInfo
688
689func (m *TextDetectionConfig) GetLanguageHints() []string {
690	if m != nil {
691		return m.LanguageHints
692	}
693	return nil
694}
695
696func (m *TextDetectionConfig) GetModel() string {
697	if m != nil {
698		return m.Model
699	}
700	return ""
701}
702
703// Video segment.
704type VideoSegment struct {
705	// Time-offset, relative to the beginning of the video,
706	// corresponding to the start of the segment (inclusive).
707	StartTimeOffset *duration.Duration `protobuf:"bytes,1,opt,name=start_time_offset,json=startTimeOffset,proto3" json:"start_time_offset,omitempty"`
708	// Time-offset, relative to the beginning of the video,
709	// corresponding to the end of the segment (inclusive).
710	EndTimeOffset        *duration.Duration `protobuf:"bytes,2,opt,name=end_time_offset,json=endTimeOffset,proto3" json:"end_time_offset,omitempty"`
711	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
712	XXX_unrecognized     []byte             `json:"-"`
713	XXX_sizecache        int32              `json:"-"`
714}
715
716func (m *VideoSegment) Reset()         { *m = VideoSegment{} }
717func (m *VideoSegment) String() string { return proto.CompactTextString(m) }
718func (*VideoSegment) ProtoMessage()    {}
719func (*VideoSegment) Descriptor() ([]byte, []int) {
720	return fileDescriptor_7638dbca9a7e63fa, []int{8}
721}
722
723func (m *VideoSegment) XXX_Unmarshal(b []byte) error {
724	return xxx_messageInfo_VideoSegment.Unmarshal(m, b)
725}
726func (m *VideoSegment) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
727	return xxx_messageInfo_VideoSegment.Marshal(b, m, deterministic)
728}
729func (m *VideoSegment) XXX_Merge(src proto.Message) {
730	xxx_messageInfo_VideoSegment.Merge(m, src)
731}
732func (m *VideoSegment) XXX_Size() int {
733	return xxx_messageInfo_VideoSegment.Size(m)
734}
735func (m *VideoSegment) XXX_DiscardUnknown() {
736	xxx_messageInfo_VideoSegment.DiscardUnknown(m)
737}
738
739var xxx_messageInfo_VideoSegment proto.InternalMessageInfo
740
741func (m *VideoSegment) GetStartTimeOffset() *duration.Duration {
742	if m != nil {
743		return m.StartTimeOffset
744	}
745	return nil
746}
747
748func (m *VideoSegment) GetEndTimeOffset() *duration.Duration {
749	if m != nil {
750		return m.EndTimeOffset
751	}
752	return nil
753}
754
755// Video segment level annotation results for label detection.
756type LabelSegment struct {
757	// Video segment where a label was detected.
758	Segment *VideoSegment `protobuf:"bytes,1,opt,name=segment,proto3" json:"segment,omitempty"`
759	// Confidence that the label is accurate. Range: [0, 1].
760	Confidence           float32  `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
761	XXX_NoUnkeyedLiteral struct{} `json:"-"`
762	XXX_unrecognized     []byte   `json:"-"`
763	XXX_sizecache        int32    `json:"-"`
764}
765
766func (m *LabelSegment) Reset()         { *m = LabelSegment{} }
767func (m *LabelSegment) String() string { return proto.CompactTextString(m) }
768func (*LabelSegment) ProtoMessage()    {}
769func (*LabelSegment) Descriptor() ([]byte, []int) {
770	return fileDescriptor_7638dbca9a7e63fa, []int{9}
771}
772
773func (m *LabelSegment) XXX_Unmarshal(b []byte) error {
774	return xxx_messageInfo_LabelSegment.Unmarshal(m, b)
775}
776func (m *LabelSegment) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
777	return xxx_messageInfo_LabelSegment.Marshal(b, m, deterministic)
778}
779func (m *LabelSegment) XXX_Merge(src proto.Message) {
780	xxx_messageInfo_LabelSegment.Merge(m, src)
781}
782func (m *LabelSegment) XXX_Size() int {
783	return xxx_messageInfo_LabelSegment.Size(m)
784}
785func (m *LabelSegment) XXX_DiscardUnknown() {
786	xxx_messageInfo_LabelSegment.DiscardUnknown(m)
787}
788
789var xxx_messageInfo_LabelSegment proto.InternalMessageInfo
790
791func (m *LabelSegment) GetSegment() *VideoSegment {
792	if m != nil {
793		return m.Segment
794	}
795	return nil
796}
797
798func (m *LabelSegment) GetConfidence() float32 {
799	if m != nil {
800		return m.Confidence
801	}
802	return 0
803}
804
805// Video frame level annotation results for label detection.
806type LabelFrame struct {
807	// Time-offset, relative to the beginning of the video, corresponding to the
808	// video frame for this location.
809	TimeOffset *duration.Duration `protobuf:"bytes,1,opt,name=time_offset,json=timeOffset,proto3" json:"time_offset,omitempty"`
810	// Confidence that the label is accurate. Range: [0, 1].
811	Confidence           float32  `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
812	XXX_NoUnkeyedLiteral struct{} `json:"-"`
813	XXX_unrecognized     []byte   `json:"-"`
814	XXX_sizecache        int32    `json:"-"`
815}
816
817func (m *LabelFrame) Reset()         { *m = LabelFrame{} }
818func (m *LabelFrame) String() string { return proto.CompactTextString(m) }
819func (*LabelFrame) ProtoMessage()    {}
820func (*LabelFrame) Descriptor() ([]byte, []int) {
821	return fileDescriptor_7638dbca9a7e63fa, []int{10}
822}
823
824func (m *LabelFrame) XXX_Unmarshal(b []byte) error {
825	return xxx_messageInfo_LabelFrame.Unmarshal(m, b)
826}
827func (m *LabelFrame) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
828	return xxx_messageInfo_LabelFrame.Marshal(b, m, deterministic)
829}
830func (m *LabelFrame) XXX_Merge(src proto.Message) {
831	xxx_messageInfo_LabelFrame.Merge(m, src)
832}
833func (m *LabelFrame) XXX_Size() int {
834	return xxx_messageInfo_LabelFrame.Size(m)
835}
836func (m *LabelFrame) XXX_DiscardUnknown() {
837	xxx_messageInfo_LabelFrame.DiscardUnknown(m)
838}
839
840var xxx_messageInfo_LabelFrame proto.InternalMessageInfo
841
842func (m *LabelFrame) GetTimeOffset() *duration.Duration {
843	if m != nil {
844		return m.TimeOffset
845	}
846	return nil
847}
848
849func (m *LabelFrame) GetConfidence() float32 {
850	if m != nil {
851		return m.Confidence
852	}
853	return 0
854}
855
856// Detected entity from video analysis.
857type Entity struct {
858	// Opaque entity ID. Some IDs may be available in
859	// [Google Knowledge Graph Search
860	// API](https://developers.google.com/knowledge-graph/).
861	EntityId string `protobuf:"bytes,1,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
862	// Textual description, e.g. `Fixed-gear bicycle`.
863	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
864	// Language code for `description` in BCP-47 format.
865	LanguageCode         string   `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
866	XXX_NoUnkeyedLiteral struct{} `json:"-"`
867	XXX_unrecognized     []byte   `json:"-"`
868	XXX_sizecache        int32    `json:"-"`
869}
870
871func (m *Entity) Reset()         { *m = Entity{} }
872func (m *Entity) String() string { return proto.CompactTextString(m) }
873func (*Entity) ProtoMessage()    {}
874func (*Entity) Descriptor() ([]byte, []int) {
875	return fileDescriptor_7638dbca9a7e63fa, []int{11}
876}
877
878func (m *Entity) XXX_Unmarshal(b []byte) error {
879	return xxx_messageInfo_Entity.Unmarshal(m, b)
880}
881func (m *Entity) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
882	return xxx_messageInfo_Entity.Marshal(b, m, deterministic)
883}
884func (m *Entity) XXX_Merge(src proto.Message) {
885	xxx_messageInfo_Entity.Merge(m, src)
886}
887func (m *Entity) XXX_Size() int {
888	return xxx_messageInfo_Entity.Size(m)
889}
890func (m *Entity) XXX_DiscardUnknown() {
891	xxx_messageInfo_Entity.DiscardUnknown(m)
892}
893
894var xxx_messageInfo_Entity proto.InternalMessageInfo
895
896func (m *Entity) GetEntityId() string {
897	if m != nil {
898		return m.EntityId
899	}
900	return ""
901}
902
903func (m *Entity) GetDescription() string {
904	if m != nil {
905		return m.Description
906	}
907	return ""
908}
909
910func (m *Entity) GetLanguageCode() string {
911	if m != nil {
912		return m.LanguageCode
913	}
914	return ""
915}
916
917// Label annotation.
918type LabelAnnotation struct {
919	// Detected entity.
920	Entity *Entity `protobuf:"bytes,1,opt,name=entity,proto3" json:"entity,omitempty"`
921	// Common categories for the detected entity.
922	// E.g. when the label is `Terrier` the category is likely `dog`. And in some
923	// cases there might be more than one categories e.g. `Terrier` could also be
924	// a `pet`.
925	CategoryEntities []*Entity `protobuf:"bytes,2,rep,name=category_entities,json=categoryEntities,proto3" json:"category_entities,omitempty"`
926	// All video segments where a label was detected.
927	Segments []*LabelSegment `protobuf:"bytes,3,rep,name=segments,proto3" json:"segments,omitempty"`
928	// All video frames where a label was detected.
929	Frames               []*LabelFrame `protobuf:"bytes,4,rep,name=frames,proto3" json:"frames,omitempty"`
930	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
931	XXX_unrecognized     []byte        `json:"-"`
932	XXX_sizecache        int32         `json:"-"`
933}
934
935func (m *LabelAnnotation) Reset()         { *m = LabelAnnotation{} }
936func (m *LabelAnnotation) String() string { return proto.CompactTextString(m) }
937func (*LabelAnnotation) ProtoMessage()    {}
938func (*LabelAnnotation) Descriptor() ([]byte, []int) {
939	return fileDescriptor_7638dbca9a7e63fa, []int{12}
940}
941
942func (m *LabelAnnotation) XXX_Unmarshal(b []byte) error {
943	return xxx_messageInfo_LabelAnnotation.Unmarshal(m, b)
944}
945func (m *LabelAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
946	return xxx_messageInfo_LabelAnnotation.Marshal(b, m, deterministic)
947}
948func (m *LabelAnnotation) XXX_Merge(src proto.Message) {
949	xxx_messageInfo_LabelAnnotation.Merge(m, src)
950}
951func (m *LabelAnnotation) XXX_Size() int {
952	return xxx_messageInfo_LabelAnnotation.Size(m)
953}
954func (m *LabelAnnotation) XXX_DiscardUnknown() {
955	xxx_messageInfo_LabelAnnotation.DiscardUnknown(m)
956}
957
958var xxx_messageInfo_LabelAnnotation proto.InternalMessageInfo
959
960func (m *LabelAnnotation) GetEntity() *Entity {
961	if m != nil {
962		return m.Entity
963	}
964	return nil
965}
966
967func (m *LabelAnnotation) GetCategoryEntities() []*Entity {
968	if m != nil {
969		return m.CategoryEntities
970	}
971	return nil
972}
973
974func (m *LabelAnnotation) GetSegments() []*LabelSegment {
975	if m != nil {
976		return m.Segments
977	}
978	return nil
979}
980
981func (m *LabelAnnotation) GetFrames() []*LabelFrame {
982	if m != nil {
983		return m.Frames
984	}
985	return nil
986}
987
988// Video frame level annotation results for explicit content.
989type ExplicitContentFrame struct {
990	// Time-offset, relative to the beginning of the video, corresponding to the
991	// video frame for this location.
992	TimeOffset *duration.Duration `protobuf:"bytes,1,opt,name=time_offset,json=timeOffset,proto3" json:"time_offset,omitempty"`
993	// Likelihood of the pornography content..
994	PornographyLikelihood Likelihood `protobuf:"varint,2,opt,name=pornography_likelihood,json=pornographyLikelihood,proto3,enum=google.cloud.videointelligence.v1.Likelihood" json:"pornography_likelihood,omitempty"`
995	XXX_NoUnkeyedLiteral  struct{}   `json:"-"`
996	XXX_unrecognized      []byte     `json:"-"`
997	XXX_sizecache         int32      `json:"-"`
998}
999
1000func (m *ExplicitContentFrame) Reset()         { *m = ExplicitContentFrame{} }
1001func (m *ExplicitContentFrame) String() string { return proto.CompactTextString(m) }
1002func (*ExplicitContentFrame) ProtoMessage()    {}
1003func (*ExplicitContentFrame) Descriptor() ([]byte, []int) {
1004	return fileDescriptor_7638dbca9a7e63fa, []int{13}
1005}
1006
1007func (m *ExplicitContentFrame) XXX_Unmarshal(b []byte) error {
1008	return xxx_messageInfo_ExplicitContentFrame.Unmarshal(m, b)
1009}
1010func (m *ExplicitContentFrame) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1011	return xxx_messageInfo_ExplicitContentFrame.Marshal(b, m, deterministic)
1012}
1013func (m *ExplicitContentFrame) XXX_Merge(src proto.Message) {
1014	xxx_messageInfo_ExplicitContentFrame.Merge(m, src)
1015}
1016func (m *ExplicitContentFrame) XXX_Size() int {
1017	return xxx_messageInfo_ExplicitContentFrame.Size(m)
1018}
1019func (m *ExplicitContentFrame) XXX_DiscardUnknown() {
1020	xxx_messageInfo_ExplicitContentFrame.DiscardUnknown(m)
1021}
1022
1023var xxx_messageInfo_ExplicitContentFrame proto.InternalMessageInfo
1024
1025func (m *ExplicitContentFrame) GetTimeOffset() *duration.Duration {
1026	if m != nil {
1027		return m.TimeOffset
1028	}
1029	return nil
1030}
1031
1032func (m *ExplicitContentFrame) GetPornographyLikelihood() Likelihood {
1033	if m != nil {
1034		return m.PornographyLikelihood
1035	}
1036	return Likelihood_LIKELIHOOD_UNSPECIFIED
1037}
1038
1039// Explicit content annotation (based on per-frame visual signals only).
1040// If no explicit content has been detected in a frame, no annotations are
1041// present for that frame.
1042type ExplicitContentAnnotation struct {
1043	// All video frames where explicit content was detected.
1044	Frames               []*ExplicitContentFrame `protobuf:"bytes,1,rep,name=frames,proto3" json:"frames,omitempty"`
1045	XXX_NoUnkeyedLiteral struct{}                `json:"-"`
1046	XXX_unrecognized     []byte                  `json:"-"`
1047	XXX_sizecache        int32                   `json:"-"`
1048}
1049
1050func (m *ExplicitContentAnnotation) Reset()         { *m = ExplicitContentAnnotation{} }
1051func (m *ExplicitContentAnnotation) String() string { return proto.CompactTextString(m) }
1052func (*ExplicitContentAnnotation) ProtoMessage()    {}
1053func (*ExplicitContentAnnotation) Descriptor() ([]byte, []int) {
1054	return fileDescriptor_7638dbca9a7e63fa, []int{14}
1055}
1056
1057func (m *ExplicitContentAnnotation) XXX_Unmarshal(b []byte) error {
1058	return xxx_messageInfo_ExplicitContentAnnotation.Unmarshal(m, b)
1059}
1060func (m *ExplicitContentAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1061	return xxx_messageInfo_ExplicitContentAnnotation.Marshal(b, m, deterministic)
1062}
1063func (m *ExplicitContentAnnotation) XXX_Merge(src proto.Message) {
1064	xxx_messageInfo_ExplicitContentAnnotation.Merge(m, src)
1065}
1066func (m *ExplicitContentAnnotation) XXX_Size() int {
1067	return xxx_messageInfo_ExplicitContentAnnotation.Size(m)
1068}
1069func (m *ExplicitContentAnnotation) XXX_DiscardUnknown() {
1070	xxx_messageInfo_ExplicitContentAnnotation.DiscardUnknown(m)
1071}
1072
1073var xxx_messageInfo_ExplicitContentAnnotation proto.InternalMessageInfo
1074
1075func (m *ExplicitContentAnnotation) GetFrames() []*ExplicitContentFrame {
1076	if m != nil {
1077		return m.Frames
1078	}
1079	return nil
1080}
1081
1082// Normalized bounding box.
1083// The normalized vertex coordinates are relative to the original image.
1084// Range: [0, 1].
1085type NormalizedBoundingBox struct {
1086	// Left X coordinate.
1087	Left float32 `protobuf:"fixed32,1,opt,name=left,proto3" json:"left,omitempty"`
1088	// Top Y coordinate.
1089	Top float32 `protobuf:"fixed32,2,opt,name=top,proto3" json:"top,omitempty"`
1090	// Right X coordinate.
1091	Right float32 `protobuf:"fixed32,3,opt,name=right,proto3" json:"right,omitempty"`
1092	// Bottom Y coordinate.
1093	Bottom               float32  `protobuf:"fixed32,4,opt,name=bottom,proto3" json:"bottom,omitempty"`
1094	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1095	XXX_unrecognized     []byte   `json:"-"`
1096	XXX_sizecache        int32    `json:"-"`
1097}
1098
1099func (m *NormalizedBoundingBox) Reset()         { *m = NormalizedBoundingBox{} }
1100func (m *NormalizedBoundingBox) String() string { return proto.CompactTextString(m) }
1101func (*NormalizedBoundingBox) ProtoMessage()    {}
1102func (*NormalizedBoundingBox) Descriptor() ([]byte, []int) {
1103	return fileDescriptor_7638dbca9a7e63fa, []int{15}
1104}
1105
1106func (m *NormalizedBoundingBox) XXX_Unmarshal(b []byte) error {
1107	return xxx_messageInfo_NormalizedBoundingBox.Unmarshal(m, b)
1108}
1109func (m *NormalizedBoundingBox) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1110	return xxx_messageInfo_NormalizedBoundingBox.Marshal(b, m, deterministic)
1111}
1112func (m *NormalizedBoundingBox) XXX_Merge(src proto.Message) {
1113	xxx_messageInfo_NormalizedBoundingBox.Merge(m, src)
1114}
1115func (m *NormalizedBoundingBox) XXX_Size() int {
1116	return xxx_messageInfo_NormalizedBoundingBox.Size(m)
1117}
1118func (m *NormalizedBoundingBox) XXX_DiscardUnknown() {
1119	xxx_messageInfo_NormalizedBoundingBox.DiscardUnknown(m)
1120}
1121
1122var xxx_messageInfo_NormalizedBoundingBox proto.InternalMessageInfo
1123
1124func (m *NormalizedBoundingBox) GetLeft() float32 {
1125	if m != nil {
1126		return m.Left
1127	}
1128	return 0
1129}
1130
1131func (m *NormalizedBoundingBox) GetTop() float32 {
1132	if m != nil {
1133		return m.Top
1134	}
1135	return 0
1136}
1137
1138func (m *NormalizedBoundingBox) GetRight() float32 {
1139	if m != nil {
1140		return m.Right
1141	}
1142	return 0
1143}
1144
1145func (m *NormalizedBoundingBox) GetBottom() float32 {
1146	if m != nil {
1147		return m.Bottom
1148	}
1149	return 0
1150}
1151
1152// Video segment level annotation results for face detection.
1153type FaceSegment struct {
1154	// Video segment where a face was detected.
1155	Segment              *VideoSegment `protobuf:"bytes,1,opt,name=segment,proto3" json:"segment,omitempty"`
1156	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
1157	XXX_unrecognized     []byte        `json:"-"`
1158	XXX_sizecache        int32         `json:"-"`
1159}
1160
1161func (m *FaceSegment) Reset()         { *m = FaceSegment{} }
1162func (m *FaceSegment) String() string { return proto.CompactTextString(m) }
1163func (*FaceSegment) ProtoMessage()    {}
1164func (*FaceSegment) Descriptor() ([]byte, []int) {
1165	return fileDescriptor_7638dbca9a7e63fa, []int{16}
1166}
1167
1168func (m *FaceSegment) XXX_Unmarshal(b []byte) error {
1169	return xxx_messageInfo_FaceSegment.Unmarshal(m, b)
1170}
1171func (m *FaceSegment) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1172	return xxx_messageInfo_FaceSegment.Marshal(b, m, deterministic)
1173}
1174func (m *FaceSegment) XXX_Merge(src proto.Message) {
1175	xxx_messageInfo_FaceSegment.Merge(m, src)
1176}
1177func (m *FaceSegment) XXX_Size() int {
1178	return xxx_messageInfo_FaceSegment.Size(m)
1179}
1180func (m *FaceSegment) XXX_DiscardUnknown() {
1181	xxx_messageInfo_FaceSegment.DiscardUnknown(m)
1182}
1183
1184var xxx_messageInfo_FaceSegment proto.InternalMessageInfo
1185
1186func (m *FaceSegment) GetSegment() *VideoSegment {
1187	if m != nil {
1188		return m.Segment
1189	}
1190	return nil
1191}
1192
1193// Video frame level annotation results for face detection.
1194type FaceFrame struct {
1195	// Normalized Bounding boxes in a frame.
1196	// There can be more than one boxes if the same face is detected in multiple
1197	// locations within the current frame.
1198	NormalizedBoundingBoxes []*NormalizedBoundingBox `protobuf:"bytes,1,rep,name=normalized_bounding_boxes,json=normalizedBoundingBoxes,proto3" json:"normalized_bounding_boxes,omitempty"`
1199	// Time-offset, relative to the beginning of the video,
1200	// corresponding to the video frame for this location.
1201	TimeOffset           *duration.Duration `protobuf:"bytes,2,opt,name=time_offset,json=timeOffset,proto3" json:"time_offset,omitempty"`
1202	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
1203	XXX_unrecognized     []byte             `json:"-"`
1204	XXX_sizecache        int32              `json:"-"`
1205}
1206
1207func (m *FaceFrame) Reset()         { *m = FaceFrame{} }
1208func (m *FaceFrame) String() string { return proto.CompactTextString(m) }
1209func (*FaceFrame) ProtoMessage()    {}
1210func (*FaceFrame) Descriptor() ([]byte, []int) {
1211	return fileDescriptor_7638dbca9a7e63fa, []int{17}
1212}
1213
1214func (m *FaceFrame) XXX_Unmarshal(b []byte) error {
1215	return xxx_messageInfo_FaceFrame.Unmarshal(m, b)
1216}
1217func (m *FaceFrame) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1218	return xxx_messageInfo_FaceFrame.Marshal(b, m, deterministic)
1219}
1220func (m *FaceFrame) XXX_Merge(src proto.Message) {
1221	xxx_messageInfo_FaceFrame.Merge(m, src)
1222}
1223func (m *FaceFrame) XXX_Size() int {
1224	return xxx_messageInfo_FaceFrame.Size(m)
1225}
1226func (m *FaceFrame) XXX_DiscardUnknown() {
1227	xxx_messageInfo_FaceFrame.DiscardUnknown(m)
1228}
1229
1230var xxx_messageInfo_FaceFrame proto.InternalMessageInfo
1231
1232func (m *FaceFrame) GetNormalizedBoundingBoxes() []*NormalizedBoundingBox {
1233	if m != nil {
1234		return m.NormalizedBoundingBoxes
1235	}
1236	return nil
1237}
1238
1239func (m *FaceFrame) GetTimeOffset() *duration.Duration {
1240	if m != nil {
1241		return m.TimeOffset
1242	}
1243	return nil
1244}
1245
1246// Face annotation.
1247type FaceAnnotation struct {
1248	// Thumbnail of a representative face view (in JPEG format).
1249	Thumbnail []byte `protobuf:"bytes,1,opt,name=thumbnail,proto3" json:"thumbnail,omitempty"`
1250	// All video segments where a face was detected.
1251	Segments []*FaceSegment `protobuf:"bytes,2,rep,name=segments,proto3" json:"segments,omitempty"`
1252	// All video frames where a face was detected.
1253	Frames               []*FaceFrame `protobuf:"bytes,3,rep,name=frames,proto3" json:"frames,omitempty"`
1254	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
1255	XXX_unrecognized     []byte       `json:"-"`
1256	XXX_sizecache        int32        `json:"-"`
1257}
1258
1259func (m *FaceAnnotation) Reset()         { *m = FaceAnnotation{} }
1260func (m *FaceAnnotation) String() string { return proto.CompactTextString(m) }
1261func (*FaceAnnotation) ProtoMessage()    {}
1262func (*FaceAnnotation) Descriptor() ([]byte, []int) {
1263	return fileDescriptor_7638dbca9a7e63fa, []int{18}
1264}
1265
1266func (m *FaceAnnotation) XXX_Unmarshal(b []byte) error {
1267	return xxx_messageInfo_FaceAnnotation.Unmarshal(m, b)
1268}
1269func (m *FaceAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1270	return xxx_messageInfo_FaceAnnotation.Marshal(b, m, deterministic)
1271}
1272func (m *FaceAnnotation) XXX_Merge(src proto.Message) {
1273	xxx_messageInfo_FaceAnnotation.Merge(m, src)
1274}
1275func (m *FaceAnnotation) XXX_Size() int {
1276	return xxx_messageInfo_FaceAnnotation.Size(m)
1277}
1278func (m *FaceAnnotation) XXX_DiscardUnknown() {
1279	xxx_messageInfo_FaceAnnotation.DiscardUnknown(m)
1280}
1281
1282var xxx_messageInfo_FaceAnnotation proto.InternalMessageInfo
1283
1284func (m *FaceAnnotation) GetThumbnail() []byte {
1285	if m != nil {
1286		return m.Thumbnail
1287	}
1288	return nil
1289}
1290
1291func (m *FaceAnnotation) GetSegments() []*FaceSegment {
1292	if m != nil {
1293		return m.Segments
1294	}
1295	return nil
1296}
1297
1298func (m *FaceAnnotation) GetFrames() []*FaceFrame {
1299	if m != nil {
1300		return m.Frames
1301	}
1302	return nil
1303}
1304
1305// Annotation results for a single video.
1306type VideoAnnotationResults struct {
1307	// Video file location in
1308	// [Google Cloud Storage](https://cloud.google.com/storage/).
1309	InputUri string `protobuf:"bytes,1,opt,name=input_uri,json=inputUri,proto3" json:"input_uri,omitempty"`
1310	// Video segment on which the annotation is run.
1311	Segment *VideoSegment `protobuf:"bytes,10,opt,name=segment,proto3" json:"segment,omitempty"`
1312	// Topical label annotations on video level or user specified segment level.
1313	// There is exactly one element for each unique label.
1314	SegmentLabelAnnotations []*LabelAnnotation `protobuf:"bytes,2,rep,name=segment_label_annotations,json=segmentLabelAnnotations,proto3" json:"segment_label_annotations,omitempty"`
1315	// Presence label annotations on video level or user specified segment level.
1316	// There is exactly one element for each unique label. This will eventually
1317	// get publicly exposed and the restriction will be removed.
1318	SegmentPresenceLabelAnnotations []*LabelAnnotation `protobuf:"bytes,23,rep,name=segment_presence_label_annotations,json=segmentPresenceLabelAnnotations,proto3" json:"segment_presence_label_annotations,omitempty"`
1319	// Topical label annotations on shot level.
1320	// There is exactly one element for each unique label.
1321	ShotLabelAnnotations []*LabelAnnotation `protobuf:"bytes,3,rep,name=shot_label_annotations,json=shotLabelAnnotations,proto3" json:"shot_label_annotations,omitempty"`
1322	// Presence label annotations on shot level. There is exactly one element for
1323	// each unique label. This will eventually get publicly exposed and the
1324	// restriction will be removed.
1325	ShotPresenceLabelAnnotations []*LabelAnnotation `protobuf:"bytes,24,rep,name=shot_presence_label_annotations,json=shotPresenceLabelAnnotations,proto3" json:"shot_presence_label_annotations,omitempty"`
1326	// Label annotations on frame level.
1327	// There is exactly one element for each unique label.
1328	FrameLabelAnnotations []*LabelAnnotation `protobuf:"bytes,4,rep,name=frame_label_annotations,json=frameLabelAnnotations,proto3" json:"frame_label_annotations,omitempty"`
1329	// Face annotations. There is exactly one element for each unique face.
1330	FaceAnnotations []*FaceAnnotation `protobuf:"bytes,5,rep,name=face_annotations,json=faceAnnotations,proto3" json:"face_annotations,omitempty"`
1331	// Shot annotations. Each shot is represented as a video segment.
1332	ShotAnnotations []*VideoSegment `protobuf:"bytes,6,rep,name=shot_annotations,json=shotAnnotations,proto3" json:"shot_annotations,omitempty"`
1333	// Explicit content annotation.
1334	ExplicitAnnotation *ExplicitContentAnnotation `protobuf:"bytes,7,opt,name=explicit_annotation,json=explicitAnnotation,proto3" json:"explicit_annotation,omitempty"`
1335	// Speech transcription.
1336	SpeechTranscriptions []*SpeechTranscription `protobuf:"bytes,11,rep,name=speech_transcriptions,json=speechTranscriptions,proto3" json:"speech_transcriptions,omitempty"`
1337	// OCR text detection and tracking.
1338	// Annotations for list of detected text snippets. Each will have list of
1339	// frame information associated with it.
1340	TextAnnotations []*TextAnnotation `protobuf:"bytes,12,rep,name=text_annotations,json=textAnnotations,proto3" json:"text_annotations,omitempty"`
1341	// Annotations for list of objects detected and tracked in video.
1342	ObjectAnnotations []*ObjectTrackingAnnotation `protobuf:"bytes,14,rep,name=object_annotations,json=objectAnnotations,proto3" json:"object_annotations,omitempty"`
1343	// If set, indicates an error. Note that for a single `AnnotateVideoRequest`
1344	// some videos may succeed and some may fail.
1345	Error                *status.Status `protobuf:"bytes,9,opt,name=error,proto3" json:"error,omitempty"`
1346	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
1347	XXX_unrecognized     []byte         `json:"-"`
1348	XXX_sizecache        int32          `json:"-"`
1349}
1350
1351func (m *VideoAnnotationResults) Reset()         { *m = VideoAnnotationResults{} }
1352func (m *VideoAnnotationResults) String() string { return proto.CompactTextString(m) }
1353func (*VideoAnnotationResults) ProtoMessage()    {}
1354func (*VideoAnnotationResults) Descriptor() ([]byte, []int) {
1355	return fileDescriptor_7638dbca9a7e63fa, []int{19}
1356}
1357
1358func (m *VideoAnnotationResults) XXX_Unmarshal(b []byte) error {
1359	return xxx_messageInfo_VideoAnnotationResults.Unmarshal(m, b)
1360}
1361func (m *VideoAnnotationResults) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1362	return xxx_messageInfo_VideoAnnotationResults.Marshal(b, m, deterministic)
1363}
1364func (m *VideoAnnotationResults) XXX_Merge(src proto.Message) {
1365	xxx_messageInfo_VideoAnnotationResults.Merge(m, src)
1366}
1367func (m *VideoAnnotationResults) XXX_Size() int {
1368	return xxx_messageInfo_VideoAnnotationResults.Size(m)
1369}
1370func (m *VideoAnnotationResults) XXX_DiscardUnknown() {
1371	xxx_messageInfo_VideoAnnotationResults.DiscardUnknown(m)
1372}
1373
1374var xxx_messageInfo_VideoAnnotationResults proto.InternalMessageInfo
1375
1376func (m *VideoAnnotationResults) GetInputUri() string {
1377	if m != nil {
1378		return m.InputUri
1379	}
1380	return ""
1381}
1382
1383func (m *VideoAnnotationResults) GetSegment() *VideoSegment {
1384	if m != nil {
1385		return m.Segment
1386	}
1387	return nil
1388}
1389
1390func (m *VideoAnnotationResults) GetSegmentLabelAnnotations() []*LabelAnnotation {
1391	if m != nil {
1392		return m.SegmentLabelAnnotations
1393	}
1394	return nil
1395}
1396
1397func (m *VideoAnnotationResults) GetSegmentPresenceLabelAnnotations() []*LabelAnnotation {
1398	if m != nil {
1399		return m.SegmentPresenceLabelAnnotations
1400	}
1401	return nil
1402}
1403
1404func (m *VideoAnnotationResults) GetShotLabelAnnotations() []*LabelAnnotation {
1405	if m != nil {
1406		return m.ShotLabelAnnotations
1407	}
1408	return nil
1409}
1410
1411func (m *VideoAnnotationResults) GetShotPresenceLabelAnnotations() []*LabelAnnotation {
1412	if m != nil {
1413		return m.ShotPresenceLabelAnnotations
1414	}
1415	return nil
1416}
1417
1418func (m *VideoAnnotationResults) GetFrameLabelAnnotations() []*LabelAnnotation {
1419	if m != nil {
1420		return m.FrameLabelAnnotations
1421	}
1422	return nil
1423}
1424
1425func (m *VideoAnnotationResults) GetFaceAnnotations() []*FaceAnnotation {
1426	if m != nil {
1427		return m.FaceAnnotations
1428	}
1429	return nil
1430}
1431
1432func (m *VideoAnnotationResults) GetShotAnnotations() []*VideoSegment {
1433	if m != nil {
1434		return m.ShotAnnotations
1435	}
1436	return nil
1437}
1438
1439func (m *VideoAnnotationResults) GetExplicitAnnotation() *ExplicitContentAnnotation {
1440	if m != nil {
1441		return m.ExplicitAnnotation
1442	}
1443	return nil
1444}
1445
1446func (m *VideoAnnotationResults) GetSpeechTranscriptions() []*SpeechTranscription {
1447	if m != nil {
1448		return m.SpeechTranscriptions
1449	}
1450	return nil
1451}
1452
1453func (m *VideoAnnotationResults) GetTextAnnotations() []*TextAnnotation {
1454	if m != nil {
1455		return m.TextAnnotations
1456	}
1457	return nil
1458}
1459
1460func (m *VideoAnnotationResults) GetObjectAnnotations() []*ObjectTrackingAnnotation {
1461	if m != nil {
1462		return m.ObjectAnnotations
1463	}
1464	return nil
1465}
1466
1467func (m *VideoAnnotationResults) GetError() *status.Status {
1468	if m != nil {
1469		return m.Error
1470	}
1471	return nil
1472}
1473
1474// Video annotation response. Included in the `response`
1475// field of the `Operation` returned by the `GetOperation`
1476// call of the `google::longrunning::Operations` service.
1477type AnnotateVideoResponse struct {
1478	// Annotation results for all videos specified in `AnnotateVideoRequest`.
1479	AnnotationResults    []*VideoAnnotationResults `protobuf:"bytes,1,rep,name=annotation_results,json=annotationResults,proto3" json:"annotation_results,omitempty"`
1480	XXX_NoUnkeyedLiteral struct{}                  `json:"-"`
1481	XXX_unrecognized     []byte                    `json:"-"`
1482	XXX_sizecache        int32                     `json:"-"`
1483}
1484
1485func (m *AnnotateVideoResponse) Reset()         { *m = AnnotateVideoResponse{} }
1486func (m *AnnotateVideoResponse) String() string { return proto.CompactTextString(m) }
1487func (*AnnotateVideoResponse) ProtoMessage()    {}
1488func (*AnnotateVideoResponse) Descriptor() ([]byte, []int) {
1489	return fileDescriptor_7638dbca9a7e63fa, []int{20}
1490}
1491
1492func (m *AnnotateVideoResponse) XXX_Unmarshal(b []byte) error {
1493	return xxx_messageInfo_AnnotateVideoResponse.Unmarshal(m, b)
1494}
1495func (m *AnnotateVideoResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1496	return xxx_messageInfo_AnnotateVideoResponse.Marshal(b, m, deterministic)
1497}
1498func (m *AnnotateVideoResponse) XXX_Merge(src proto.Message) {
1499	xxx_messageInfo_AnnotateVideoResponse.Merge(m, src)
1500}
1501func (m *AnnotateVideoResponse) XXX_Size() int {
1502	return xxx_messageInfo_AnnotateVideoResponse.Size(m)
1503}
1504func (m *AnnotateVideoResponse) XXX_DiscardUnknown() {
1505	xxx_messageInfo_AnnotateVideoResponse.DiscardUnknown(m)
1506}
1507
1508var xxx_messageInfo_AnnotateVideoResponse proto.InternalMessageInfo
1509
1510func (m *AnnotateVideoResponse) GetAnnotationResults() []*VideoAnnotationResults {
1511	if m != nil {
1512		return m.AnnotationResults
1513	}
1514	return nil
1515}
1516
1517// Annotation progress for a single video.
1518type VideoAnnotationProgress struct {
1519	// Video file location in
1520	// [Google Cloud Storage](https://cloud.google.com/storage/).
1521	InputUri string `protobuf:"bytes,1,opt,name=input_uri,json=inputUri,proto3" json:"input_uri,omitempty"`
1522	// Approximate percentage processed thus far. Guaranteed to be
1523	// 100 when fully processed.
1524	ProgressPercent int32 `protobuf:"varint,2,opt,name=progress_percent,json=progressPercent,proto3" json:"progress_percent,omitempty"`
1525	// Time when the request was received.
1526	StartTime *timestamp.Timestamp `protobuf:"bytes,3,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
1527	// Time of the most recent update.
1528	UpdateTime *timestamp.Timestamp `protobuf:"bytes,4,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
1529	// Specifies which feature is being tracked if the request contains more than
1530	// one features.
1531	Feature Feature `protobuf:"varint,5,opt,name=feature,proto3,enum=google.cloud.videointelligence.v1.Feature" json:"feature,omitempty"`
1532	// Specifies which segment is being tracked if the request contains more than
1533	// one segments.
1534	Segment              *VideoSegment `protobuf:"bytes,6,opt,name=segment,proto3" json:"segment,omitempty"`
1535	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
1536	XXX_unrecognized     []byte        `json:"-"`
1537	XXX_sizecache        int32         `json:"-"`
1538}
1539
1540func (m *VideoAnnotationProgress) Reset()         { *m = VideoAnnotationProgress{} }
1541func (m *VideoAnnotationProgress) String() string { return proto.CompactTextString(m) }
1542func (*VideoAnnotationProgress) ProtoMessage()    {}
1543func (*VideoAnnotationProgress) Descriptor() ([]byte, []int) {
1544	return fileDescriptor_7638dbca9a7e63fa, []int{21}
1545}
1546
1547func (m *VideoAnnotationProgress) XXX_Unmarshal(b []byte) error {
1548	return xxx_messageInfo_VideoAnnotationProgress.Unmarshal(m, b)
1549}
1550func (m *VideoAnnotationProgress) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1551	return xxx_messageInfo_VideoAnnotationProgress.Marshal(b, m, deterministic)
1552}
1553func (m *VideoAnnotationProgress) XXX_Merge(src proto.Message) {
1554	xxx_messageInfo_VideoAnnotationProgress.Merge(m, src)
1555}
1556func (m *VideoAnnotationProgress) XXX_Size() int {
1557	return xxx_messageInfo_VideoAnnotationProgress.Size(m)
1558}
1559func (m *VideoAnnotationProgress) XXX_DiscardUnknown() {
1560	xxx_messageInfo_VideoAnnotationProgress.DiscardUnknown(m)
1561}
1562
1563var xxx_messageInfo_VideoAnnotationProgress proto.InternalMessageInfo
1564
1565func (m *VideoAnnotationProgress) GetInputUri() string {
1566	if m != nil {
1567		return m.InputUri
1568	}
1569	return ""
1570}
1571
1572func (m *VideoAnnotationProgress) GetProgressPercent() int32 {
1573	if m != nil {
1574		return m.ProgressPercent
1575	}
1576	return 0
1577}
1578
1579func (m *VideoAnnotationProgress) GetStartTime() *timestamp.Timestamp {
1580	if m != nil {
1581		return m.StartTime
1582	}
1583	return nil
1584}
1585
1586func (m *VideoAnnotationProgress) GetUpdateTime() *timestamp.Timestamp {
1587	if m != nil {
1588		return m.UpdateTime
1589	}
1590	return nil
1591}
1592
1593func (m *VideoAnnotationProgress) GetFeature() Feature {
1594	if m != nil {
1595		return m.Feature
1596	}
1597	return Feature_FEATURE_UNSPECIFIED
1598}
1599
1600func (m *VideoAnnotationProgress) GetSegment() *VideoSegment {
1601	if m != nil {
1602		return m.Segment
1603	}
1604	return nil
1605}
1606
1607// Video annotation progress. Included in the `metadata`
1608// field of the `Operation` returned by the `GetOperation`
1609// call of the `google::longrunning::Operations` service.
1610type AnnotateVideoProgress struct {
1611	// Progress metadata for all videos specified in `AnnotateVideoRequest`.
1612	AnnotationProgress   []*VideoAnnotationProgress `protobuf:"bytes,1,rep,name=annotation_progress,json=annotationProgress,proto3" json:"annotation_progress,omitempty"`
1613	XXX_NoUnkeyedLiteral struct{}                   `json:"-"`
1614	XXX_unrecognized     []byte                     `json:"-"`
1615	XXX_sizecache        int32                      `json:"-"`
1616}
1617
1618func (m *AnnotateVideoProgress) Reset()         { *m = AnnotateVideoProgress{} }
1619func (m *AnnotateVideoProgress) String() string { return proto.CompactTextString(m) }
1620func (*AnnotateVideoProgress) ProtoMessage()    {}
1621func (*AnnotateVideoProgress) Descriptor() ([]byte, []int) {
1622	return fileDescriptor_7638dbca9a7e63fa, []int{22}
1623}
1624
1625func (m *AnnotateVideoProgress) XXX_Unmarshal(b []byte) error {
1626	return xxx_messageInfo_AnnotateVideoProgress.Unmarshal(m, b)
1627}
1628func (m *AnnotateVideoProgress) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1629	return xxx_messageInfo_AnnotateVideoProgress.Marshal(b, m, deterministic)
1630}
1631func (m *AnnotateVideoProgress) XXX_Merge(src proto.Message) {
1632	xxx_messageInfo_AnnotateVideoProgress.Merge(m, src)
1633}
1634func (m *AnnotateVideoProgress) XXX_Size() int {
1635	return xxx_messageInfo_AnnotateVideoProgress.Size(m)
1636}
1637func (m *AnnotateVideoProgress) XXX_DiscardUnknown() {
1638	xxx_messageInfo_AnnotateVideoProgress.DiscardUnknown(m)
1639}
1640
1641var xxx_messageInfo_AnnotateVideoProgress proto.InternalMessageInfo
1642
1643func (m *AnnotateVideoProgress) GetAnnotationProgress() []*VideoAnnotationProgress {
1644	if m != nil {
1645		return m.AnnotationProgress
1646	}
1647	return nil
1648}
1649
1650// Config for SPEECH_TRANSCRIPTION.
1651type SpeechTranscriptionConfig struct {
1652	// *Required* The language of the supplied audio as a
1653	// [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag.
1654	// Example: "en-US".
1655	// See [Language Support](https://cloud.google.com/speech/docs/languages)
1656	// for a list of the currently supported language codes.
1657	LanguageCode string `protobuf:"bytes,1,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
1658	// *Optional* Maximum number of recognition hypotheses to be returned.
1659	// Specifically, the maximum number of `SpeechRecognitionAlternative` messages
1660	// within each `SpeechTranscription`. The server may return fewer than
1661	// `max_alternatives`. Valid values are `0`-`30`. A value of `0` or `1` will
1662	// return a maximum of one. If omitted, will return a maximum of one.
1663	MaxAlternatives int32 `protobuf:"varint,2,opt,name=max_alternatives,json=maxAlternatives,proto3" json:"max_alternatives,omitempty"`
1664	// *Optional* If set to `true`, the server will attempt to filter out
1665	// profanities, replacing all but the initial character in each filtered word
1666	// with asterisks, e.g. "f***". If set to `false` or omitted, profanities
1667	// won't be filtered out.
1668	FilterProfanity bool `protobuf:"varint,3,opt,name=filter_profanity,json=filterProfanity,proto3" json:"filter_profanity,omitempty"`
1669	// *Optional* A means to provide context to assist the speech recognition.
1670	SpeechContexts []*SpeechContext `protobuf:"bytes,4,rep,name=speech_contexts,json=speechContexts,proto3" json:"speech_contexts,omitempty"`
1671	// *Optional* If 'true', adds punctuation to recognition result hypotheses.
1672	// This feature is only available in select languages. Setting this for
1673	// requests in other languages has no effect at all. The default 'false' value
1674	// does not add punctuation to result hypotheses. NOTE: "This is currently
1675	// offered as an experimental service, complimentary to all users. In the
1676	// future this may be exclusively available as a premium feature."
1677	EnableAutomaticPunctuation bool `protobuf:"varint,5,opt,name=enable_automatic_punctuation,json=enableAutomaticPunctuation,proto3" json:"enable_automatic_punctuation,omitempty"`
1678	// *Optional* For file formats, such as MXF or MKV, supporting multiple audio
1679	// tracks, specify up to two tracks. Default: track 0.
1680	AudioTracks []int32 `protobuf:"varint,6,rep,packed,name=audio_tracks,json=audioTracks,proto3" json:"audio_tracks,omitempty"`
1681	// *Optional* If 'true', enables speaker detection for each recognized word in
1682	// the top alternative of the recognition result using a speaker_tag provided
1683	// in the WordInfo.
1684	// Note: When this is true, we send all the words from the beginning of the
1685	// audio for the top alternative in every consecutive responses.
1686	// This is done in order to improve our speaker tags as our models learn to
1687	// identify the speakers in the conversation over time.
1688	EnableSpeakerDiarization bool `protobuf:"varint,7,opt,name=enable_speaker_diarization,json=enableSpeakerDiarization,proto3" json:"enable_speaker_diarization,omitempty"`
1689	// *Optional*
1690	// If set, specifies the estimated number of speakers in the conversation.
1691	// If not set, defaults to '2'.
1692	// Ignored unless enable_speaker_diarization is set to true.
1693	DiarizationSpeakerCount int32 `protobuf:"varint,8,opt,name=diarization_speaker_count,json=diarizationSpeakerCount,proto3" json:"diarization_speaker_count,omitempty"`
1694	// *Optional* If `true`, the top result includes a list of words and the
1695	// confidence for those words. If `false`, no word-level confidence
1696	// information is returned. The default is `false`.
1697	EnableWordConfidence bool     `protobuf:"varint,9,opt,name=enable_word_confidence,json=enableWordConfidence,proto3" json:"enable_word_confidence,omitempty"`
1698	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1699	XXX_unrecognized     []byte   `json:"-"`
1700	XXX_sizecache        int32    `json:"-"`
1701}
1702
1703func (m *SpeechTranscriptionConfig) Reset()         { *m = SpeechTranscriptionConfig{} }
1704func (m *SpeechTranscriptionConfig) String() string { return proto.CompactTextString(m) }
1705func (*SpeechTranscriptionConfig) ProtoMessage()    {}
1706func (*SpeechTranscriptionConfig) Descriptor() ([]byte, []int) {
1707	return fileDescriptor_7638dbca9a7e63fa, []int{23}
1708}
1709
1710func (m *SpeechTranscriptionConfig) XXX_Unmarshal(b []byte) error {
1711	return xxx_messageInfo_SpeechTranscriptionConfig.Unmarshal(m, b)
1712}
1713func (m *SpeechTranscriptionConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1714	return xxx_messageInfo_SpeechTranscriptionConfig.Marshal(b, m, deterministic)
1715}
1716func (m *SpeechTranscriptionConfig) XXX_Merge(src proto.Message) {
1717	xxx_messageInfo_SpeechTranscriptionConfig.Merge(m, src)
1718}
1719func (m *SpeechTranscriptionConfig) XXX_Size() int {
1720	return xxx_messageInfo_SpeechTranscriptionConfig.Size(m)
1721}
1722func (m *SpeechTranscriptionConfig) XXX_DiscardUnknown() {
1723	xxx_messageInfo_SpeechTranscriptionConfig.DiscardUnknown(m)
1724}
1725
1726var xxx_messageInfo_SpeechTranscriptionConfig proto.InternalMessageInfo
1727
1728func (m *SpeechTranscriptionConfig) GetLanguageCode() string {
1729	if m != nil {
1730		return m.LanguageCode
1731	}
1732	return ""
1733}
1734
1735func (m *SpeechTranscriptionConfig) GetMaxAlternatives() int32 {
1736	if m != nil {
1737		return m.MaxAlternatives
1738	}
1739	return 0
1740}
1741
1742func (m *SpeechTranscriptionConfig) GetFilterProfanity() bool {
1743	if m != nil {
1744		return m.FilterProfanity
1745	}
1746	return false
1747}
1748
1749func (m *SpeechTranscriptionConfig) GetSpeechContexts() []*SpeechContext {
1750	if m != nil {
1751		return m.SpeechContexts
1752	}
1753	return nil
1754}
1755
1756func (m *SpeechTranscriptionConfig) GetEnableAutomaticPunctuation() bool {
1757	if m != nil {
1758		return m.EnableAutomaticPunctuation
1759	}
1760	return false
1761}
1762
1763func (m *SpeechTranscriptionConfig) GetAudioTracks() []int32 {
1764	if m != nil {
1765		return m.AudioTracks
1766	}
1767	return nil
1768}
1769
1770func (m *SpeechTranscriptionConfig) GetEnableSpeakerDiarization() bool {
1771	if m != nil {
1772		return m.EnableSpeakerDiarization
1773	}
1774	return false
1775}
1776
1777func (m *SpeechTranscriptionConfig) GetDiarizationSpeakerCount() int32 {
1778	if m != nil {
1779		return m.DiarizationSpeakerCount
1780	}
1781	return 0
1782}
1783
1784func (m *SpeechTranscriptionConfig) GetEnableWordConfidence() bool {
1785	if m != nil {
1786		return m.EnableWordConfidence
1787	}
1788	return false
1789}
1790
1791// Provides "hints" to the speech recognizer to favor specific words and phrases
1792// in the results.
1793type SpeechContext struct {
1794	// *Optional* A list of strings containing words and phrases "hints" so that
1795	// the speech recognition is more likely to recognize them. This can be used
1796	// to improve the accuracy for specific words and phrases, for example, if
1797	// specific commands are typically spoken by the user. This can also be used
1798	// to add additional words to the vocabulary of the recognizer. See
1799	// [usage limits](https://cloud.google.com/speech/limits#content).
1800	Phrases              []string `protobuf:"bytes,1,rep,name=phrases,proto3" json:"phrases,omitempty"`
1801	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1802	XXX_unrecognized     []byte   `json:"-"`
1803	XXX_sizecache        int32    `json:"-"`
1804}
1805
1806func (m *SpeechContext) Reset()         { *m = SpeechContext{} }
1807func (m *SpeechContext) String() string { return proto.CompactTextString(m) }
1808func (*SpeechContext) ProtoMessage()    {}
1809func (*SpeechContext) Descriptor() ([]byte, []int) {
1810	return fileDescriptor_7638dbca9a7e63fa, []int{24}
1811}
1812
1813func (m *SpeechContext) XXX_Unmarshal(b []byte) error {
1814	return xxx_messageInfo_SpeechContext.Unmarshal(m, b)
1815}
1816func (m *SpeechContext) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1817	return xxx_messageInfo_SpeechContext.Marshal(b, m, deterministic)
1818}
1819func (m *SpeechContext) XXX_Merge(src proto.Message) {
1820	xxx_messageInfo_SpeechContext.Merge(m, src)
1821}
1822func (m *SpeechContext) XXX_Size() int {
1823	return xxx_messageInfo_SpeechContext.Size(m)
1824}
1825func (m *SpeechContext) XXX_DiscardUnknown() {
1826	xxx_messageInfo_SpeechContext.DiscardUnknown(m)
1827}
1828
1829var xxx_messageInfo_SpeechContext proto.InternalMessageInfo
1830
1831func (m *SpeechContext) GetPhrases() []string {
1832	if m != nil {
1833		return m.Phrases
1834	}
1835	return nil
1836}
1837
1838// A speech recognition result corresponding to a portion of the audio.
1839type SpeechTranscription struct {
1840	// May contain one or more recognition hypotheses (up to the maximum specified
1841	// in `max_alternatives`).  These alternatives are ordered in terms of
1842	// accuracy, with the top (first) alternative being the most probable, as
1843	// ranked by the recognizer.
1844	Alternatives []*SpeechRecognitionAlternative `protobuf:"bytes,1,rep,name=alternatives,proto3" json:"alternatives,omitempty"`
1845	// Output only. The
1846	// [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag of the
1847	// language in this result. This language code was detected to have the most
1848	// likelihood of being spoken in the audio.
1849	LanguageCode         string   `protobuf:"bytes,2,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
1850	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1851	XXX_unrecognized     []byte   `json:"-"`
1852	XXX_sizecache        int32    `json:"-"`
1853}
1854
1855func (m *SpeechTranscription) Reset()         { *m = SpeechTranscription{} }
1856func (m *SpeechTranscription) String() string { return proto.CompactTextString(m) }
1857func (*SpeechTranscription) ProtoMessage()    {}
1858func (*SpeechTranscription) Descriptor() ([]byte, []int) {
1859	return fileDescriptor_7638dbca9a7e63fa, []int{25}
1860}
1861
1862func (m *SpeechTranscription) XXX_Unmarshal(b []byte) error {
1863	return xxx_messageInfo_SpeechTranscription.Unmarshal(m, b)
1864}
1865func (m *SpeechTranscription) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1866	return xxx_messageInfo_SpeechTranscription.Marshal(b, m, deterministic)
1867}
1868func (m *SpeechTranscription) XXX_Merge(src proto.Message) {
1869	xxx_messageInfo_SpeechTranscription.Merge(m, src)
1870}
1871func (m *SpeechTranscription) XXX_Size() int {
1872	return xxx_messageInfo_SpeechTranscription.Size(m)
1873}
1874func (m *SpeechTranscription) XXX_DiscardUnknown() {
1875	xxx_messageInfo_SpeechTranscription.DiscardUnknown(m)
1876}
1877
1878var xxx_messageInfo_SpeechTranscription proto.InternalMessageInfo
1879
1880func (m *SpeechTranscription) GetAlternatives() []*SpeechRecognitionAlternative {
1881	if m != nil {
1882		return m.Alternatives
1883	}
1884	return nil
1885}
1886
1887func (m *SpeechTranscription) GetLanguageCode() string {
1888	if m != nil {
1889		return m.LanguageCode
1890	}
1891	return ""
1892}
1893
1894// Alternative hypotheses (a.k.a. n-best list).
1895type SpeechRecognitionAlternative struct {
1896	// Transcript text representing the words that the user spoke.
1897	Transcript string `protobuf:"bytes,1,opt,name=transcript,proto3" json:"transcript,omitempty"`
1898	// Output only. The confidence estimate between 0.0 and 1.0. A higher number
1899	// indicates an estimated greater likelihood that the recognized words are
1900	// correct. This field is set only for the top alternative.
1901	// This field is not guaranteed to be accurate and users should not rely on it
1902	// to be always provided.
1903	// The default of 0.0 is a sentinel value indicating `confidence` was not set.
1904	Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
1905	// Output only. A list of word-specific information for each recognized word.
1906	// Note: When `enable_speaker_diarization` is true, you will see all the words
1907	// from the beginning of the audio.
1908	Words                []*WordInfo `protobuf:"bytes,3,rep,name=words,proto3" json:"words,omitempty"`
1909	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
1910	XXX_unrecognized     []byte      `json:"-"`
1911	XXX_sizecache        int32       `json:"-"`
1912}
1913
1914func (m *SpeechRecognitionAlternative) Reset()         { *m = SpeechRecognitionAlternative{} }
1915func (m *SpeechRecognitionAlternative) String() string { return proto.CompactTextString(m) }
1916func (*SpeechRecognitionAlternative) ProtoMessage()    {}
1917func (*SpeechRecognitionAlternative) Descriptor() ([]byte, []int) {
1918	return fileDescriptor_7638dbca9a7e63fa, []int{26}
1919}
1920
1921func (m *SpeechRecognitionAlternative) XXX_Unmarshal(b []byte) error {
1922	return xxx_messageInfo_SpeechRecognitionAlternative.Unmarshal(m, b)
1923}
1924func (m *SpeechRecognitionAlternative) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1925	return xxx_messageInfo_SpeechRecognitionAlternative.Marshal(b, m, deterministic)
1926}
1927func (m *SpeechRecognitionAlternative) XXX_Merge(src proto.Message) {
1928	xxx_messageInfo_SpeechRecognitionAlternative.Merge(m, src)
1929}
1930func (m *SpeechRecognitionAlternative) XXX_Size() int {
1931	return xxx_messageInfo_SpeechRecognitionAlternative.Size(m)
1932}
1933func (m *SpeechRecognitionAlternative) XXX_DiscardUnknown() {
1934	xxx_messageInfo_SpeechRecognitionAlternative.DiscardUnknown(m)
1935}
1936
1937var xxx_messageInfo_SpeechRecognitionAlternative proto.InternalMessageInfo
1938
1939func (m *SpeechRecognitionAlternative) GetTranscript() string {
1940	if m != nil {
1941		return m.Transcript
1942	}
1943	return ""
1944}
1945
1946func (m *SpeechRecognitionAlternative) GetConfidence() float32 {
1947	if m != nil {
1948		return m.Confidence
1949	}
1950	return 0
1951}
1952
1953func (m *SpeechRecognitionAlternative) GetWords() []*WordInfo {
1954	if m != nil {
1955		return m.Words
1956	}
1957	return nil
1958}
1959
1960// Word-specific information for recognized words. Word information is only
1961// included in the response when certain request parameters are set, such
1962// as `enable_word_time_offsets`.
1963type WordInfo struct {
1964	// Time offset relative to the beginning of the audio, and
1965	// corresponding to the start of the spoken word. This field is only set if
1966	// `enable_word_time_offsets=true` and only in the top hypothesis. This is an
1967	// experimental feature and the accuracy of the time offset can vary.
1968	StartTime *duration.Duration `protobuf:"bytes,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
1969	// Time offset relative to the beginning of the audio, and
1970	// corresponding to the end of the spoken word. This field is only set if
1971	// `enable_word_time_offsets=true` and only in the top hypothesis. This is an
1972	// experimental feature and the accuracy of the time offset can vary.
1973	EndTime *duration.Duration `protobuf:"bytes,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
1974	// The word corresponding to this set of information.
1975	Word string `protobuf:"bytes,3,opt,name=word,proto3" json:"word,omitempty"`
1976	// Output only. The confidence estimate between 0.0 and 1.0. A higher number
1977	// indicates an estimated greater likelihood that the recognized words are
1978	// correct. This field is set only for the top alternative.
1979	// This field is not guaranteed to be accurate and users should not rely on it
1980	// to be always provided.
1981	// The default of 0.0 is a sentinel value indicating `confidence` was not set.
1982	Confidence float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"`
1983	// Output only. A distinct integer value is assigned for every speaker within
1984	// the audio. This field specifies which one of those speakers was detected to
1985	// have spoken this word. Value ranges from 1 up to diarization_speaker_count,
1986	// and is only set if speaker diarization is enabled.
1987	SpeakerTag           int32    `protobuf:"varint,5,opt,name=speaker_tag,json=speakerTag,proto3" json:"speaker_tag,omitempty"`
1988	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1989	XXX_unrecognized     []byte   `json:"-"`
1990	XXX_sizecache        int32    `json:"-"`
1991}
1992
1993func (m *WordInfo) Reset()         { *m = WordInfo{} }
1994func (m *WordInfo) String() string { return proto.CompactTextString(m) }
1995func (*WordInfo) ProtoMessage()    {}
1996func (*WordInfo) Descriptor() ([]byte, []int) {
1997	return fileDescriptor_7638dbca9a7e63fa, []int{27}
1998}
1999
2000func (m *WordInfo) XXX_Unmarshal(b []byte) error {
2001	return xxx_messageInfo_WordInfo.Unmarshal(m, b)
2002}
2003func (m *WordInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2004	return xxx_messageInfo_WordInfo.Marshal(b, m, deterministic)
2005}
2006func (m *WordInfo) XXX_Merge(src proto.Message) {
2007	xxx_messageInfo_WordInfo.Merge(m, src)
2008}
2009func (m *WordInfo) XXX_Size() int {
2010	return xxx_messageInfo_WordInfo.Size(m)
2011}
2012func (m *WordInfo) XXX_DiscardUnknown() {
2013	xxx_messageInfo_WordInfo.DiscardUnknown(m)
2014}
2015
2016var xxx_messageInfo_WordInfo proto.InternalMessageInfo
2017
2018func (m *WordInfo) GetStartTime() *duration.Duration {
2019	if m != nil {
2020		return m.StartTime
2021	}
2022	return nil
2023}
2024
2025func (m *WordInfo) GetEndTime() *duration.Duration {
2026	if m != nil {
2027		return m.EndTime
2028	}
2029	return nil
2030}
2031
2032func (m *WordInfo) GetWord() string {
2033	if m != nil {
2034		return m.Word
2035	}
2036	return ""
2037}
2038
2039func (m *WordInfo) GetConfidence() float32 {
2040	if m != nil {
2041		return m.Confidence
2042	}
2043	return 0
2044}
2045
2046func (m *WordInfo) GetSpeakerTag() int32 {
2047	if m != nil {
2048		return m.SpeakerTag
2049	}
2050	return 0
2051}
2052
2053// A vertex represents a 2D point in the image.
2054// NOTE: the normalized vertex coordinates are relative to the original image
2055// and range from 0 to 1.
2056type NormalizedVertex struct {
2057	// X coordinate.
2058	X float32 `protobuf:"fixed32,1,opt,name=x,proto3" json:"x,omitempty"`
2059	// Y coordinate.
2060	Y                    float32  `protobuf:"fixed32,2,opt,name=y,proto3" json:"y,omitempty"`
2061	XXX_NoUnkeyedLiteral struct{} `json:"-"`
2062	XXX_unrecognized     []byte   `json:"-"`
2063	XXX_sizecache        int32    `json:"-"`
2064}
2065
2066func (m *NormalizedVertex) Reset()         { *m = NormalizedVertex{} }
2067func (m *NormalizedVertex) String() string { return proto.CompactTextString(m) }
2068func (*NormalizedVertex) ProtoMessage()    {}
2069func (*NormalizedVertex) Descriptor() ([]byte, []int) {
2070	return fileDescriptor_7638dbca9a7e63fa, []int{28}
2071}
2072
2073func (m *NormalizedVertex) XXX_Unmarshal(b []byte) error {
2074	return xxx_messageInfo_NormalizedVertex.Unmarshal(m, b)
2075}
2076func (m *NormalizedVertex) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2077	return xxx_messageInfo_NormalizedVertex.Marshal(b, m, deterministic)
2078}
2079func (m *NormalizedVertex) XXX_Merge(src proto.Message) {
2080	xxx_messageInfo_NormalizedVertex.Merge(m, src)
2081}
2082func (m *NormalizedVertex) XXX_Size() int {
2083	return xxx_messageInfo_NormalizedVertex.Size(m)
2084}
2085func (m *NormalizedVertex) XXX_DiscardUnknown() {
2086	xxx_messageInfo_NormalizedVertex.DiscardUnknown(m)
2087}
2088
2089var xxx_messageInfo_NormalizedVertex proto.InternalMessageInfo
2090
2091func (m *NormalizedVertex) GetX() float32 {
2092	if m != nil {
2093		return m.X
2094	}
2095	return 0
2096}
2097
2098func (m *NormalizedVertex) GetY() float32 {
2099	if m != nil {
2100		return m.Y
2101	}
2102	return 0
2103}
2104
2105// Normalized bounding polygon for text (that might not be aligned with axis).
2106// Contains list of the corner points in clockwise order starting from
2107// top-left corner. For example, for a rectangular bounding box:
2108// When the text is horizontal it might look like:
2109//         0----1
2110//         |    |
2111//         3----2
2112//
2113// When it's clockwise rotated 180 degrees around the top-left corner it
2114// becomes:
2115//         2----3
2116//         |    |
2117//         1----0
2118//
2119// and the vertex order will still be (0, 1, 2, 3). Note that values can be less
2120// than 0, or greater than 1 due to trignometric calculations for location of
2121// the box.
2122type NormalizedBoundingPoly struct {
2123	// Normalized vertices of the bounding polygon.
2124	Vertices             []*NormalizedVertex `protobuf:"bytes,1,rep,name=vertices,proto3" json:"vertices,omitempty"`
2125	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
2126	XXX_unrecognized     []byte              `json:"-"`
2127	XXX_sizecache        int32               `json:"-"`
2128}
2129
2130func (m *NormalizedBoundingPoly) Reset()         { *m = NormalizedBoundingPoly{} }
2131func (m *NormalizedBoundingPoly) String() string { return proto.CompactTextString(m) }
2132func (*NormalizedBoundingPoly) ProtoMessage()    {}
2133func (*NormalizedBoundingPoly) Descriptor() ([]byte, []int) {
2134	return fileDescriptor_7638dbca9a7e63fa, []int{29}
2135}
2136
2137func (m *NormalizedBoundingPoly) XXX_Unmarshal(b []byte) error {
2138	return xxx_messageInfo_NormalizedBoundingPoly.Unmarshal(m, b)
2139}
2140func (m *NormalizedBoundingPoly) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2141	return xxx_messageInfo_NormalizedBoundingPoly.Marshal(b, m, deterministic)
2142}
2143func (m *NormalizedBoundingPoly) XXX_Merge(src proto.Message) {
2144	xxx_messageInfo_NormalizedBoundingPoly.Merge(m, src)
2145}
2146func (m *NormalizedBoundingPoly) XXX_Size() int {
2147	return xxx_messageInfo_NormalizedBoundingPoly.Size(m)
2148}
2149func (m *NormalizedBoundingPoly) XXX_DiscardUnknown() {
2150	xxx_messageInfo_NormalizedBoundingPoly.DiscardUnknown(m)
2151}
2152
2153var xxx_messageInfo_NormalizedBoundingPoly proto.InternalMessageInfo
2154
2155func (m *NormalizedBoundingPoly) GetVertices() []*NormalizedVertex {
2156	if m != nil {
2157		return m.Vertices
2158	}
2159	return nil
2160}
2161
2162// Video segment level annotation results for text detection.
2163type TextSegment struct {
2164	// Video segment where a text snippet was detected.
2165	Segment *VideoSegment `protobuf:"bytes,1,opt,name=segment,proto3" json:"segment,omitempty"`
2166	// Confidence for the track of detected text. It is calculated as the highest
2167	// over all frames where OCR detected text appears.
2168	Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
2169	// Information related to the frames where OCR detected text appears.
2170	Frames               []*TextFrame `protobuf:"bytes,3,rep,name=frames,proto3" json:"frames,omitempty"`
2171	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
2172	XXX_unrecognized     []byte       `json:"-"`
2173	XXX_sizecache        int32        `json:"-"`
2174}
2175
2176func (m *TextSegment) Reset()         { *m = TextSegment{} }
2177func (m *TextSegment) String() string { return proto.CompactTextString(m) }
2178func (*TextSegment) ProtoMessage()    {}
2179func (*TextSegment) Descriptor() ([]byte, []int) {
2180	return fileDescriptor_7638dbca9a7e63fa, []int{30}
2181}
2182
2183func (m *TextSegment) XXX_Unmarshal(b []byte) error {
2184	return xxx_messageInfo_TextSegment.Unmarshal(m, b)
2185}
2186func (m *TextSegment) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2187	return xxx_messageInfo_TextSegment.Marshal(b, m, deterministic)
2188}
2189func (m *TextSegment) XXX_Merge(src proto.Message) {
2190	xxx_messageInfo_TextSegment.Merge(m, src)
2191}
2192func (m *TextSegment) XXX_Size() int {
2193	return xxx_messageInfo_TextSegment.Size(m)
2194}
2195func (m *TextSegment) XXX_DiscardUnknown() {
2196	xxx_messageInfo_TextSegment.DiscardUnknown(m)
2197}
2198
2199var xxx_messageInfo_TextSegment proto.InternalMessageInfo
2200
2201func (m *TextSegment) GetSegment() *VideoSegment {
2202	if m != nil {
2203		return m.Segment
2204	}
2205	return nil
2206}
2207
2208func (m *TextSegment) GetConfidence() float32 {
2209	if m != nil {
2210		return m.Confidence
2211	}
2212	return 0
2213}
2214
2215func (m *TextSegment) GetFrames() []*TextFrame {
2216	if m != nil {
2217		return m.Frames
2218	}
2219	return nil
2220}
2221
2222// Video frame level annotation results for text annotation (OCR).
2223// Contains information regarding timestamp and bounding box locations for the
2224// frames containing detected OCR text snippets.
2225type TextFrame struct {
2226	// Bounding polygon of the detected text for this frame.
2227	RotatedBoundingBox *NormalizedBoundingPoly `protobuf:"bytes,1,opt,name=rotated_bounding_box,json=rotatedBoundingBox,proto3" json:"rotated_bounding_box,omitempty"`
2228	// Timestamp of this frame.
2229	TimeOffset           *duration.Duration `protobuf:"bytes,2,opt,name=time_offset,json=timeOffset,proto3" json:"time_offset,omitempty"`
2230	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
2231	XXX_unrecognized     []byte             `json:"-"`
2232	XXX_sizecache        int32              `json:"-"`
2233}
2234
2235func (m *TextFrame) Reset()         { *m = TextFrame{} }
2236func (m *TextFrame) String() string { return proto.CompactTextString(m) }
2237func (*TextFrame) ProtoMessage()    {}
2238func (*TextFrame) Descriptor() ([]byte, []int) {
2239	return fileDescriptor_7638dbca9a7e63fa, []int{31}
2240}
2241
2242func (m *TextFrame) XXX_Unmarshal(b []byte) error {
2243	return xxx_messageInfo_TextFrame.Unmarshal(m, b)
2244}
2245func (m *TextFrame) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2246	return xxx_messageInfo_TextFrame.Marshal(b, m, deterministic)
2247}
2248func (m *TextFrame) XXX_Merge(src proto.Message) {
2249	xxx_messageInfo_TextFrame.Merge(m, src)
2250}
2251func (m *TextFrame) XXX_Size() int {
2252	return xxx_messageInfo_TextFrame.Size(m)
2253}
2254func (m *TextFrame) XXX_DiscardUnknown() {
2255	xxx_messageInfo_TextFrame.DiscardUnknown(m)
2256}
2257
2258var xxx_messageInfo_TextFrame proto.InternalMessageInfo
2259
2260func (m *TextFrame) GetRotatedBoundingBox() *NormalizedBoundingPoly {
2261	if m != nil {
2262		return m.RotatedBoundingBox
2263	}
2264	return nil
2265}
2266
2267func (m *TextFrame) GetTimeOffset() *duration.Duration {
2268	if m != nil {
2269		return m.TimeOffset
2270	}
2271	return nil
2272}
2273
2274// Annotations related to one detected OCR text snippet. This will contain the
2275// corresponding text, confidence value, and frame level information for each
2276// detection.
2277type TextAnnotation struct {
2278	// The detected text.
2279	Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
2280	// All video segments where OCR detected text appears.
2281	Segments             []*TextSegment `protobuf:"bytes,2,rep,name=segments,proto3" json:"segments,omitempty"`
2282	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
2283	XXX_unrecognized     []byte         `json:"-"`
2284	XXX_sizecache        int32          `json:"-"`
2285}
2286
2287func (m *TextAnnotation) Reset()         { *m = TextAnnotation{} }
2288func (m *TextAnnotation) String() string { return proto.CompactTextString(m) }
2289func (*TextAnnotation) ProtoMessage()    {}
2290func (*TextAnnotation) Descriptor() ([]byte, []int) {
2291	return fileDescriptor_7638dbca9a7e63fa, []int{32}
2292}
2293
2294func (m *TextAnnotation) XXX_Unmarshal(b []byte) error {
2295	return xxx_messageInfo_TextAnnotation.Unmarshal(m, b)
2296}
2297func (m *TextAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2298	return xxx_messageInfo_TextAnnotation.Marshal(b, m, deterministic)
2299}
2300func (m *TextAnnotation) XXX_Merge(src proto.Message) {
2301	xxx_messageInfo_TextAnnotation.Merge(m, src)
2302}
2303func (m *TextAnnotation) XXX_Size() int {
2304	return xxx_messageInfo_TextAnnotation.Size(m)
2305}
2306func (m *TextAnnotation) XXX_DiscardUnknown() {
2307	xxx_messageInfo_TextAnnotation.DiscardUnknown(m)
2308}
2309
2310var xxx_messageInfo_TextAnnotation proto.InternalMessageInfo
2311
2312func (m *TextAnnotation) GetText() string {
2313	if m != nil {
2314		return m.Text
2315	}
2316	return ""
2317}
2318
2319func (m *TextAnnotation) GetSegments() []*TextSegment {
2320	if m != nil {
2321		return m.Segments
2322	}
2323	return nil
2324}
2325
2326// Video frame level annotations for object detection and tracking. This field
2327// stores per frame location, time offset, and confidence.
2328type ObjectTrackingFrame struct {
2329	// The normalized bounding box location of this object track for the frame.
2330	NormalizedBoundingBox *NormalizedBoundingBox `protobuf:"bytes,1,opt,name=normalized_bounding_box,json=normalizedBoundingBox,proto3" json:"normalized_bounding_box,omitempty"`
2331	// The timestamp of the frame in microseconds.
2332	TimeOffset           *duration.Duration `protobuf:"bytes,2,opt,name=time_offset,json=timeOffset,proto3" json:"time_offset,omitempty"`
2333	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
2334	XXX_unrecognized     []byte             `json:"-"`
2335	XXX_sizecache        int32              `json:"-"`
2336}
2337
2338func (m *ObjectTrackingFrame) Reset()         { *m = ObjectTrackingFrame{} }
2339func (m *ObjectTrackingFrame) String() string { return proto.CompactTextString(m) }
2340func (*ObjectTrackingFrame) ProtoMessage()    {}
2341func (*ObjectTrackingFrame) Descriptor() ([]byte, []int) {
2342	return fileDescriptor_7638dbca9a7e63fa, []int{33}
2343}
2344
2345func (m *ObjectTrackingFrame) XXX_Unmarshal(b []byte) error {
2346	return xxx_messageInfo_ObjectTrackingFrame.Unmarshal(m, b)
2347}
2348func (m *ObjectTrackingFrame) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2349	return xxx_messageInfo_ObjectTrackingFrame.Marshal(b, m, deterministic)
2350}
2351func (m *ObjectTrackingFrame) XXX_Merge(src proto.Message) {
2352	xxx_messageInfo_ObjectTrackingFrame.Merge(m, src)
2353}
2354func (m *ObjectTrackingFrame) XXX_Size() int {
2355	return xxx_messageInfo_ObjectTrackingFrame.Size(m)
2356}
2357func (m *ObjectTrackingFrame) XXX_DiscardUnknown() {
2358	xxx_messageInfo_ObjectTrackingFrame.DiscardUnknown(m)
2359}
2360
2361var xxx_messageInfo_ObjectTrackingFrame proto.InternalMessageInfo
2362
2363func (m *ObjectTrackingFrame) GetNormalizedBoundingBox() *NormalizedBoundingBox {
2364	if m != nil {
2365		return m.NormalizedBoundingBox
2366	}
2367	return nil
2368}
2369
2370func (m *ObjectTrackingFrame) GetTimeOffset() *duration.Duration {
2371	if m != nil {
2372		return m.TimeOffset
2373	}
2374	return nil
2375}
2376
2377// Annotations corresponding to one tracked object.
2378type ObjectTrackingAnnotation struct {
2379	// Different representation of tracking info in non-streaming batch
2380	// and streaming modes.
2381	//
2382	// Types that are valid to be assigned to TrackInfo:
2383	//	*ObjectTrackingAnnotation_Segment
2384	//	*ObjectTrackingAnnotation_TrackId
2385	TrackInfo isObjectTrackingAnnotation_TrackInfo `protobuf_oneof:"track_info"`
2386	// Entity to specify the object category that this track is labeled as.
2387	Entity *Entity `protobuf:"bytes,1,opt,name=entity,proto3" json:"entity,omitempty"`
2388	// Object category's labeling confidence of this track.
2389	Confidence float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"`
2390	// Information corresponding to all frames where this object track appears.
2391	// Non-streaming batch mode: it may be one or multiple ObjectTrackingFrame
2392	// messages in frames.
2393	// Streaming mode: it can only be one ObjectTrackingFrame message in frames.
2394	Frames               []*ObjectTrackingFrame `protobuf:"bytes,2,rep,name=frames,proto3" json:"frames,omitempty"`
2395	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
2396	XXX_unrecognized     []byte                 `json:"-"`
2397	XXX_sizecache        int32                  `json:"-"`
2398}
2399
2400func (m *ObjectTrackingAnnotation) Reset()         { *m = ObjectTrackingAnnotation{} }
2401func (m *ObjectTrackingAnnotation) String() string { return proto.CompactTextString(m) }
2402func (*ObjectTrackingAnnotation) ProtoMessage()    {}
2403func (*ObjectTrackingAnnotation) Descriptor() ([]byte, []int) {
2404	return fileDescriptor_7638dbca9a7e63fa, []int{34}
2405}
2406
2407func (m *ObjectTrackingAnnotation) XXX_Unmarshal(b []byte) error {
2408	return xxx_messageInfo_ObjectTrackingAnnotation.Unmarshal(m, b)
2409}
2410func (m *ObjectTrackingAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2411	return xxx_messageInfo_ObjectTrackingAnnotation.Marshal(b, m, deterministic)
2412}
2413func (m *ObjectTrackingAnnotation) XXX_Merge(src proto.Message) {
2414	xxx_messageInfo_ObjectTrackingAnnotation.Merge(m, src)
2415}
2416func (m *ObjectTrackingAnnotation) XXX_Size() int {
2417	return xxx_messageInfo_ObjectTrackingAnnotation.Size(m)
2418}
2419func (m *ObjectTrackingAnnotation) XXX_DiscardUnknown() {
2420	xxx_messageInfo_ObjectTrackingAnnotation.DiscardUnknown(m)
2421}
2422
2423var xxx_messageInfo_ObjectTrackingAnnotation proto.InternalMessageInfo
2424
2425type isObjectTrackingAnnotation_TrackInfo interface {
2426	isObjectTrackingAnnotation_TrackInfo()
2427}
2428
2429type ObjectTrackingAnnotation_Segment struct {
2430	Segment *VideoSegment `protobuf:"bytes,3,opt,name=segment,proto3,oneof"`
2431}
2432
2433type ObjectTrackingAnnotation_TrackId struct {
2434	TrackId int64 `protobuf:"varint,5,opt,name=track_id,json=trackId,proto3,oneof"`
2435}
2436
2437func (*ObjectTrackingAnnotation_Segment) isObjectTrackingAnnotation_TrackInfo() {}
2438
2439func (*ObjectTrackingAnnotation_TrackId) isObjectTrackingAnnotation_TrackInfo() {}
2440
2441func (m *ObjectTrackingAnnotation) GetTrackInfo() isObjectTrackingAnnotation_TrackInfo {
2442	if m != nil {
2443		return m.TrackInfo
2444	}
2445	return nil
2446}
2447
2448func (m *ObjectTrackingAnnotation) GetSegment() *VideoSegment {
2449	if x, ok := m.GetTrackInfo().(*ObjectTrackingAnnotation_Segment); ok {
2450		return x.Segment
2451	}
2452	return nil
2453}
2454
2455func (m *ObjectTrackingAnnotation) GetTrackId() int64 {
2456	if x, ok := m.GetTrackInfo().(*ObjectTrackingAnnotation_TrackId); ok {
2457		return x.TrackId
2458	}
2459	return 0
2460}
2461
2462func (m *ObjectTrackingAnnotation) GetEntity() *Entity {
2463	if m != nil {
2464		return m.Entity
2465	}
2466	return nil
2467}
2468
2469func (m *ObjectTrackingAnnotation) GetConfidence() float32 {
2470	if m != nil {
2471		return m.Confidence
2472	}
2473	return 0
2474}
2475
2476func (m *ObjectTrackingAnnotation) GetFrames() []*ObjectTrackingFrame {
2477	if m != nil {
2478		return m.Frames
2479	}
2480	return nil
2481}
2482
2483// XXX_OneofWrappers is for the internal use of the proto package.
2484func (*ObjectTrackingAnnotation) XXX_OneofWrappers() []interface{} {
2485	return []interface{}{
2486		(*ObjectTrackingAnnotation_Segment)(nil),
2487		(*ObjectTrackingAnnotation_TrackId)(nil),
2488	}
2489}
2490
2491func init() {
2492	proto.RegisterEnum("google.cloud.videointelligence.v1.Feature", Feature_name, Feature_value)
2493	proto.RegisterEnum("google.cloud.videointelligence.v1.LabelDetectionMode", LabelDetectionMode_name, LabelDetectionMode_value)
2494	proto.RegisterEnum("google.cloud.videointelligence.v1.Likelihood", Likelihood_name, Likelihood_value)
2495	proto.RegisterType((*AnnotateVideoRequest)(nil), "google.cloud.videointelligence.v1.AnnotateVideoRequest")
2496	proto.RegisterType((*VideoContext)(nil), "google.cloud.videointelligence.v1.VideoContext")
2497	proto.RegisterType((*LabelDetectionConfig)(nil), "google.cloud.videointelligence.v1.LabelDetectionConfig")
2498	proto.RegisterType((*ShotChangeDetectionConfig)(nil), "google.cloud.videointelligence.v1.ShotChangeDetectionConfig")
2499	proto.RegisterType((*ExplicitContentDetectionConfig)(nil), "google.cloud.videointelligence.v1.ExplicitContentDetectionConfig")
2500	proto.RegisterType((*FaceDetectionConfig)(nil), "google.cloud.videointelligence.v1.FaceDetectionConfig")
2501	proto.RegisterType((*ObjectTrackingConfig)(nil), "google.cloud.videointelligence.v1.ObjectTrackingConfig")
2502	proto.RegisterType((*TextDetectionConfig)(nil), "google.cloud.videointelligence.v1.TextDetectionConfig")
2503	proto.RegisterType((*VideoSegment)(nil), "google.cloud.videointelligence.v1.VideoSegment")
2504	proto.RegisterType((*LabelSegment)(nil), "google.cloud.videointelligence.v1.LabelSegment")
2505	proto.RegisterType((*LabelFrame)(nil), "google.cloud.videointelligence.v1.LabelFrame")
2506	proto.RegisterType((*Entity)(nil), "google.cloud.videointelligence.v1.Entity")
2507	proto.RegisterType((*LabelAnnotation)(nil), "google.cloud.videointelligence.v1.LabelAnnotation")
2508	proto.RegisterType((*ExplicitContentFrame)(nil), "google.cloud.videointelligence.v1.ExplicitContentFrame")
2509	proto.RegisterType((*ExplicitContentAnnotation)(nil), "google.cloud.videointelligence.v1.ExplicitContentAnnotation")
2510	proto.RegisterType((*NormalizedBoundingBox)(nil), "google.cloud.videointelligence.v1.NormalizedBoundingBox")
2511	proto.RegisterType((*FaceSegment)(nil), "google.cloud.videointelligence.v1.FaceSegment")
2512	proto.RegisterType((*FaceFrame)(nil), "google.cloud.videointelligence.v1.FaceFrame")
2513	proto.RegisterType((*FaceAnnotation)(nil), "google.cloud.videointelligence.v1.FaceAnnotation")
2514	proto.RegisterType((*VideoAnnotationResults)(nil), "google.cloud.videointelligence.v1.VideoAnnotationResults")
2515	proto.RegisterType((*AnnotateVideoResponse)(nil), "google.cloud.videointelligence.v1.AnnotateVideoResponse")
2516	proto.RegisterType((*VideoAnnotationProgress)(nil), "google.cloud.videointelligence.v1.VideoAnnotationProgress")
2517	proto.RegisterType((*AnnotateVideoProgress)(nil), "google.cloud.videointelligence.v1.AnnotateVideoProgress")
2518	proto.RegisterType((*SpeechTranscriptionConfig)(nil), "google.cloud.videointelligence.v1.SpeechTranscriptionConfig")
2519	proto.RegisterType((*SpeechContext)(nil), "google.cloud.videointelligence.v1.SpeechContext")
2520	proto.RegisterType((*SpeechTranscription)(nil), "google.cloud.videointelligence.v1.SpeechTranscription")
2521	proto.RegisterType((*SpeechRecognitionAlternative)(nil), "google.cloud.videointelligence.v1.SpeechRecognitionAlternative")
2522	proto.RegisterType((*WordInfo)(nil), "google.cloud.videointelligence.v1.WordInfo")
2523	proto.RegisterType((*NormalizedVertex)(nil), "google.cloud.videointelligence.v1.NormalizedVertex")
2524	proto.RegisterType((*NormalizedBoundingPoly)(nil), "google.cloud.videointelligence.v1.NormalizedBoundingPoly")
2525	proto.RegisterType((*TextSegment)(nil), "google.cloud.videointelligence.v1.TextSegment")
2526	proto.RegisterType((*TextFrame)(nil), "google.cloud.videointelligence.v1.TextFrame")
2527	proto.RegisterType((*TextAnnotation)(nil), "google.cloud.videointelligence.v1.TextAnnotation")
2528	proto.RegisterType((*ObjectTrackingFrame)(nil), "google.cloud.videointelligence.v1.ObjectTrackingFrame")
2529	proto.RegisterType((*ObjectTrackingAnnotation)(nil), "google.cloud.videointelligence.v1.ObjectTrackingAnnotation")
2530}
2531
2532func init() {
2533	proto.RegisterFile("google/cloud/videointelligence/v1/video_intelligence.proto", fileDescriptor_7638dbca9a7e63fa)
2534}
2535
2536var fileDescriptor_7638dbca9a7e63fa = []byte{
2537	// 2671 bytes of a gzipped FileDescriptorProto
2538	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x5a, 0xcd, 0x6f, 0x23, 0xc7,
2539	0xb1, 0xf7, 0x50, 0xa2, 0x3e, 0x4a, 0x94, 0xc4, 0x6d, 0x51, 0x12, 0x25, 0xaf, 0xb5, 0xda, 0xb1,
2540	0x0d, 0xac, 0xd7, 0x36, 0xf9, 0xb4, 0xf6, 0xf3, 0x07, 0x6d, 0xe0, 0x3d, 0x8a, 0xa2, 0xbc, 0xf4,
2541	0xca, 0x22, 0x31, 0xe2, 0xea, 0xd9, 0xc6, 0x02, 0x83, 0xd1, 0x4c, 0x93, 0x1c, 0x6b, 0x38, 0x3d,
2542	0x6f, 0xa6, 0xa9, 0x95, 0x8c, 0x04, 0x41, 0x82, 0x20, 0x39, 0x24, 0xb7, 0x5c, 0x72, 0x09, 0x82,
2543	0x5c, 0x73, 0x0e, 0x82, 0x5c, 0x62, 0x18, 0x08, 0x72, 0x88, 0x11, 0x20, 0x40, 0xf2, 0x2f, 0xe4,
2544	0xe4, 0x3f, 0x21, 0xa7, 0xa0, 0x3f, 0x86, 0x6c, 0x72, 0xa8, 0x15, 0xa5, 0x35, 0x72, 0x63, 0x57,
2545	0x77, 0xfd, 0xea, 0xa3, 0xab, 0xab, 0xbb, 0x8a, 0x03, 0xa5, 0x36, 0x21, 0x6d, 0x0f, 0x17, 0x6d,
2546	0x8f, 0xf4, 0x9c, 0xe2, 0x99, 0xeb, 0x60, 0xe2, 0xfa, 0x14, 0x7b, 0x9e, 0xdb, 0xc6, 0xbe, 0x8d,
2547	0x8b, 0x67, 0x3b, 0x82, 0x68, 0xaa, 0xd4, 0x42, 0x10, 0x12, 0x4a, 0xd0, 0x5d, 0xc1, 0x5b, 0xe0,
2548	0xbc, 0x85, 0x04, 0x6f, 0xe1, 0x6c, 0x67, 0xf3, 0xb6, 0x84, 0xb7, 0x02, 0xb7, 0x68, 0xf9, 0x3e,
2549	0xa1, 0x16, 0x75, 0x89, 0x1f, 0x09, 0x80, 0xcd, 0x75, 0x65, 0xd6, 0xf6, 0x5c, 0xec, 0x53, 0x39,
2550	0xf1, 0xb2, 0x9c, 0xf0, 0x88, 0xdf, 0x0e, 0x7b, 0xbe, 0xef, 0xfa, 0xed, 0x22, 0x09, 0x70, 0x38,
2551	0xc4, 0xbd, 0x25, 0x17, 0xf1, 0xd1, 0x49, 0xaf, 0x55, 0x74, 0x7a, 0x62, 0x81, 0x9c, 0xbf, 0x33,
2552	0x3a, 0x4f, 0xdd, 0x2e, 0x8e, 0xa8, 0xd5, 0x0d, 0x46, 0xc4, 0x87, 0x81, 0x5d, 0x8c, 0xa8, 0x45,
2553	0x7b, 0x12, 0x59, 0xff, 0x7d, 0x0a, 0x72, 0x65, 0xa1, 0x2d, 0x3e, 0x66, 0x66, 0x19, 0xf8, 0xff,
2554	0x7b, 0x38, 0xa2, 0xe8, 0x45, 0x98, 0x77, 0xfd, 0xa0, 0x47, 0xcd, 0x5e, 0xe8, 0xe6, 0xb5, 0x6d,
2555	0xed, 0xde, 0xbc, 0x31, 0xc7, 0x09, 0x8f, 0x43, 0x17, 0xbd, 0x0c, 0x8b, 0x62, 0xd2, 0x26, 0x3e,
2556	0xc5, 0x3e, 0xcd, 0xcf, 0x6c, 0x6b, 0xf7, 0x32, 0x46, 0x86, 0x13, 0x2b, 0x82, 0x86, 0xf6, 0x61,
2557	0xae, 0x85, 0x2d, 0xda, 0x0b, 0x71, 0x94, 0x4f, 0x6d, 0x4f, 0xdd, 0x5b, 0x7a, 0x70, 0xbf, 0x70,
2558	0xa5, 0x1b, 0x0b, 0xfb, 0x82, 0xc5, 0xe8, 0xf3, 0xa2, 0x26, 0x2c, 0x8a, 0x7d, 0xe1, 0xc2, 0xce,
2559	0x69, 0x7e, 0x6a, 0x5b, 0xbb, 0xb7, 0xf0, 0xa0, 0x38, 0x01, 0x18, 0xb7, 0xa8, 0x22, 0xd8, 0x8c,
2560	0xcc, 0x99, 0x32, 0x42, 0x2f, 0x01, 0x90, 0x1e, 0x8d, 0x0d, 0x9c, 0xe6, 0x06, 0xce, 0x0b, 0x0a,
2561	0xb3, 0xf0, 0x0e, 0x2c, 0x78, 0xc4, 0xe6, 0x3e, 0x36, 0x5d, 0x27, 0x9f, 0xe6, 0xf3, 0x10, 0x93,
2562	0x6a, 0x8e, 0xfe, 0xab, 0x59, 0xc8, 0xa8, 0xf0, 0xe8, 0x11, 0xcc, 0x45, 0xb8, 0xdd, 0xc5, 0x3e,
2563	0x8d, 0xf2, 0xda, 0xf6, 0xd4, 0x75, 0x34, 0x3c, 0x12, 0x7c, 0x46, 0x1f, 0x00, 0x75, 0x61, 0xcd,
2564	0xb3, 0x4e, 0xb0, 0x67, 0x3a, 0x98, 0x62, 0x9b, 0x6b, 0x61, 0x13, 0xbf, 0xe5, 0xb6, 0xf3, 0x29,
2565	0x6e, 0xfc, 0xbb, 0x13, 0x40, 0x1f, 0x30, 0x80, 0xbd, 0x98, 0xbf, 0xc2, 0xd9, 0x8d, 0x9c, 0x37,
2566	0x86, 0x8a, 0xbe, 0x0f, 0xb7, 0xa3, 0x0e, 0xa1, 0xa6, 0xdd, 0xb1, 0xfc, 0x36, 0x4e, 0x0a, 0x15,
2567	0x1e, 0xff, 0x70, 0x02, 0xa1, 0x47, 0x1d, 0x42, 0x2b, 0x1c, 0x65, 0x54, 0xf2, 0x46, 0x74, 0xd9,
2568	0x14, 0xfa, 0xb9, 0x06, 0x77, 0xf1, 0x79, 0xe0, 0xb9, 0xb6, 0xdb, 0x0f, 0xa9, 0xa4, 0x12, 0xd3,
2569	0x5c, 0x89, 0xf2, 0x04, 0x4a, 0x54, 0x25, 0x96, 0x8c, 0xc4, 0x51, 0x4d, 0xb6, 0xf0, 0x33, 0xe7,
2570	0xd1, 0x17, 0xb0, 0xda, 0xb2, 0xec, 0x31, 0x6e, 0x48, 0x73, 0x0d, 0xde, 0x99, 0x24, 0x8a, 0x2d,
2571	0x3b, 0xe1, 0x80, 0x95, 0x56, 0x92, 0x88, 0xbe, 0x07, 0x2f, 0x46, 0x01, 0xc6, 0x76, 0xc7, 0xa4,
2572	0xa1, 0xe5, 0x47, 0x76, 0xe8, 0x06, 0xaa, 0xc4, 0x99, 0xc9, 0x1d, 0xcf, 0x51, 0x9a, 0x2a, 0x48,
2573	0xdf, 0xf1, 0x97, 0x4d, 0x31, 0x4b, 0x59, 0xec, 0x26, 0x2d, 0x9d, 0x9b, 0xd8, 0xd2, 0x26, 0x3e,
2574	0x4f, 0x38, 0x78, 0x85, 0x26, 0x89, 0x2c, 0xa4, 0xc9, 0xc9, 0x17, 0xd8, 0xa6, 0xcc, 0x52, 0xfb,
2575	0xd4, 0xf5, 0xdb, 0xb1, 0xb0, 0xc5, 0x89, 0x43, 0xba, 0xce, 0x01, 0x9a, 0x92, 0x3f, 0x0e, 0x69,
2576	0x32, 0x86, 0xaa, 0x7f, 0x95, 0x82, 0xdc, 0xb8, 0x13, 0x80, 0xda, 0x90, 0x1b, 0x3d, 0x5a, 0x5d,
2577	0xe2, 0x60, 0x9e, 0xe3, 0x96, 0x1e, 0xfc, 0xf7, 0xb5, 0x0f, 0xd6, 0x27, 0xc4, 0xc1, 0x06, 0xf2,
2578	0x12, 0x34, 0xf4, 0x3a, 0xdc, 0x8a, 0xc4, 0x25, 0x60, 0x85, 0x17, 0xa6, 0x6d, 0x75, 0x71, 0x68,
2579	0xf1, 0xe3, 0x3b, 0x67, 0x64, 0x07, 0x13, 0x15, 0x4e, 0x47, 0x39, 0x48, 0x33, 0x2d, 0x3c, 0x7e,
2580	0xd4, 0xe6, 0x0d, 0x31, 0x40, 0x1f, 0xc2, 0x66, 0x2b, 0xb4, 0xba, 0x58, 0x78, 0xca, 0x61, 0x0a,
2581	0x98, 0xb4, 0x13, 0xe2, 0xa8, 0x43, 0x3c, 0x87, 0x1f, 0x88, 0x94, 0x91, 0xe7, 0x2b, 0x2a, 0xfd,
2582	0x05, 0xcd, 0x78, 0x9e, 0x71, 0xf7, 0x13, 0x67, 0x92, 0x3b, 0x2d, 0xb8, 0xe3, 0xa4, 0x38, 0xca,
2583	0xad, 0xef, 0xc0, 0xc6, 0xa5, 0x87, 0x79, 0xa0, 0xae, 0xa6, 0xa8, 0xab, 0xbf, 0x03, 0x5b, 0xcf,
2584	0x3e, 0x7a, 0x97, 0xf0, 0x59, 0xb0, 0x32, 0xe6, 0xc0, 0x8c, 0x5f, 0x8c, 0xde, 0x86, 0x35, 0xd7,
2585	0xb7, 0xbd, 0x9e, 0x83, 0xcd, 0x13, 0xd2, 0xf3, 0x1d, 0x16, 0x48, 0x27, 0xe4, 0x9c, 0x5f, 0x32,
2586	0xcc, 0xb7, 0x39, 0x39, 0xbb, 0x2b, 0x27, 0x77, 0xd9, 0x9c, 0xfe, 0x06, 0xe4, 0xc6, 0x05, 0xcf,
2587	0x25, 0x0a, 0x19, 0xb0, 0x32, 0x26, 0xae, 0xd1, 0xab, 0xb0, 0xe4, 0x59, 0x7e, 0xbb, 0x67, 0xb5,
2588	0xb1, 0xd9, 0x71, 0xe3, 0x44, 0x3f, 0x6f, 0x2c, 0xc6, 0xd4, 0x87, 0x8c, 0x38, 0xc0, 0x4c, 0xa9,
2589	0x98, 0xbf, 0xd4, 0xe4, 0x85, 0x21, 0xb3, 0x3d, 0xaa, 0xf2, 0xf8, 0x08, 0xa9, 0xc9, 0x2e, 0x6b,
2590	0x93, 0xb4, 0x5a, 0x11, 0xa6, 0x5c, 0x8d, 0x85, 0x07, 0x1b, 0x71, 0x14, 0xc6, 0x17, 0x7a, 0x61,
2591	0x4f, 0x5e, 0xf8, 0xc6, 0x32, 0xe7, 0x69, 0xba, 0x5d, 0x5c, 0xe7, 0x1c, 0xa8, 0x0c, 0xcb, 0xd8,
2592	0x77, 0x86, 0x40, 0x52, 0x57, 0x81, 0x2c, 0x62, 0xdf, 0x19, 0x40, 0xe8, 0x17, 0x90, 0xe1, 0x31,
2593	0x1d, 0x6b, 0x56, 0x83, 0x59, 0x79, 0x13, 0x49, 0x7d, 0xae, 0x7d, 0x93, 0xc5, 0xfc, 0x68, 0x0b,
2594	0x60, 0x10, 0x7d, 0x5c, 0xb1, 0x94, 0xa1, 0x50, 0xf4, 0x0e, 0x00, 0x17, 0xbd, 0xcf, 0x82, 0x18,
2595	0x95, 0x60, 0xe1, 0x5a, 0xce, 0x00, 0x3a, 0xf0, 0xc3, 0x55, 0x92, 0x3c, 0x98, 0xa9, 0xfa, 0xd4,
2596	0xa5, 0x17, 0xec, 0x69, 0x83, 0xf9, 0x2f, 0x76, 0xb3, 0xcb, 0xa7, 0x8d, 0x20, 0xd4, 0x1c, 0xb4,
2597	0x0d, 0x0b, 0x0e, 0xee, 0xe7, 0x49, 0xb9, 0x85, 0x2a, 0x89, 0x3d, 0x7e, 0xfa, 0x51, 0x60, 0xb3,
2598	0xcc, 0x21, 0x8e, 0x6c, 0x26, 0x26, 0x56, 0x88, 0x83, 0xf5, 0xaf, 0x53, 0xb0, 0xcc, 0x0d, 0x2b,
2599	0xf7, 0x9f, 0x82, 0xa8, 0x0c, 0x33, 0x42, 0x8c, 0x34, 0xec, 0xb5, 0x49, 0xae, 0x32, 0xce, 0x60,
2600	0x48, 0x46, 0x74, 0x0c, 0xb7, 0x6c, 0x8b, 0xe2, 0x36, 0x09, 0x2f, 0x4c, 0x4e, 0x72, 0xe5, 0xe3,
2601	0xea, 0x5a, 0x68, 0xd9, 0x18, 0xa3, 0x2a, 0x21, 0x86, 0x1e, 0x2f, 0x53, 0x13, 0x3f, 0x5e, 0xd4,
2602	0xa0, 0x51, 0x1e, 0x2f, 0x55, 0x98, 0xe1, 0x39, 0x29, 0xca, 0x4f, 0x73, 0xa8, 0x37, 0x27, 0x85,
2603	0xe2, 0x41, 0x60, 0x48, 0x66, 0xfd, 0x0f, 0x1a, 0xe4, 0x46, 0xd2, 0xc9, 0xf3, 0x47, 0x89, 0x03,
2604	0x6b, 0x01, 0x09, 0x7d, 0xd2, 0x0e, 0xad, 0xa0, 0x73, 0x61, 0x7a, 0xee, 0x29, 0xf6, 0xdc, 0x0e,
2605	0x21, 0x0e, 0xdf, 0xe9, 0xa5, 0xc9, 0x74, 0xed, 0x33, 0x19, 0xab, 0x0a, 0xd8, 0x80, 0xac, 0x7b,
2606	0xb0, 0x31, 0xa2, 0xb9, 0x12, 0x06, 0xf5, 0xbe, 0x7b, 0xc4, 0x33, 0xf1, 0xdd, 0xeb, 0xbf, 0x68,
2607	0x86, 0x1d, 0x75, 0x0a, 0xab, 0x87, 0x24, 0xec, 0x5a, 0x9e, 0xfb, 0x25, 0x76, 0x94, 0xb4, 0x87,
2608	0x10, 0x4c, 0x7b, 0xb8, 0x25, 0x3c, 0x94, 0x32, 0xf8, 0x6f, 0x94, 0x85, 0x29, 0x4a, 0x02, 0x79,
2609	0x3e, 0xd8, 0x4f, 0x96, 0xae, 0x42, 0xb7, 0xdd, 0x11, 0xef, 0xea, 0x94, 0x21, 0x06, 0x68, 0x0d,
2610	0x66, 0x4e, 0x08, 0xa5, 0xa4, 0x2b, 0xaf, 0x19, 0x39, 0xd2, 0x3f, 0x85, 0x05, 0x96, 0xab, 0xbf,
2611	0xfb, 0x54, 0xa1, 0xff, 0x51, 0x83, 0x79, 0x06, 0x2d, 0x36, 0x99, 0xc2, 0x86, 0xdf, 0x37, 0x6a,
2612	0x34, 0xd3, 0x0b, 0xc7, 0xbd, 0x37, 0x81, 0xa8, 0xb1, 0x8e, 0x31, 0xd6, 0xfd, 0x71, 0x64, 0x1c,
2613	0x8d, 0x86, 0x56, 0xea, 0x1a, 0xa1, 0xa5, 0x7f, 0xad, 0xc1, 0x12, 0xd3, 0x5f, 0xd9, 0xea, 0xdb,
2614	0x30, 0x4f, 0x3b, 0xbd, 0xee, 0x89, 0x6f, 0xb9, 0xe2, 0x86, 0xc9, 0x18, 0x03, 0x02, 0xfa, 0x58,
2615	0x39, 0x74, 0xe2, 0x0c, 0x17, 0x26, 0x7c, 0x5a, 0x26, 0xcf, 0xdc, 0x5e, 0x3f, 0xa8, 0xc4, 0xf1,
2616	0x7d, 0x63, 0x42, 0xa4, 0xe1, 0x48, 0xfa, 0x2b, 0xc0, 0x1a, 0xdf, 0x9c, 0x81, 0x0d, 0x06, 0x8e,
2617	0x7a, 0x1e, 0x8d, 0x9e, 0x5d, 0x0f, 0x2a, 0x51, 0x00, 0xcf, 0x79, 0x61, 0xf8, 0xb0, 0x21, 0x7f,
2618	0x9a, 0xe2, 0x99, 0xa6, 0xd4, 0xd2, 0xd2, 0x4b, 0x0f, 0x26, 0xcd, 0x27, 0x8a, 0x15, 0xeb, 0x12,
2619	0x74, 0x84, 0x1e, 0xa1, 0x1f, 0x80, 0x1e, 0xcb, 0x0b, 0x42, 0x1c, 0xf1, 0x47, 0x52, 0x52, 0xf0,
2620	0xfa, 0x8d, 0x05, 0xdf, 0x91, 0xe8, 0x0d, 0x09, 0x9e, 0x50, 0xa0, 0x03, 0x6b, 0xbc, 0xf6, 0x4a,
2621	0x0a, 0x9d, 0xba, 0xb1, 0xd0, 0x1c, 0x43, 0x4c, 0x48, 0xba, 0x80, 0x3b, 0x5c, 0xd2, 0x33, 0xec,
2622	0xcc, 0xdf, 0x58, 0x24, 0x2f, 0x20, 0x2f, 0x35, 0xf2, 0x0b, 0x58, 0x17, 0x0f, 0xd9, 0xa4, 0xc8,
2623	0xe9, 0x1b, 0x8b, 0x5c, 0xe5, 0x90, 0x09, 0x59, 0x4f, 0x20, 0xcb, 0xcb, 0x37, 0x55, 0x48, 0x9a,
2624	0x0b, 0xd9, 0x99, 0xf0, 0x50, 0x28, 0x32, 0x96, 0x5b, 0x43, 0xe3, 0x08, 0x7d, 0x0e, 0x59, 0xee,
2625	0x44, 0x15, 0x7d, 0xe6, 0x66, 0xe5, 0xfe, 0x32, 0x03, 0x52, 0xb1, 0xbb, 0xb0, 0xd2, 0x2f, 0x83,
2626	0x07, 0xf8, 0xf9, 0xd9, 0x89, 0x8b, 0xc0, 0x4b, 0x2f, 0x1d, 0x03, 0xc5, 0xc0, 0x4a, 0x76, 0x3a,
2627	0x85, 0xd5, 0x71, 0xb5, 0x67, 0x94, 0x5f, 0xe0, 0xf6, 0xbc, 0x73, 0xb3, 0xaa, 0xd3, 0xc8, 0x8d,
2628	0xa9, 0x37, 0xf9, 0xae, 0xf0, 0x52, 0x53, 0xf5, 0x5b, 0x66, 0xe2, 0x5d, 0x61, 0xaf, 0x71, 0x75,
2629	0x57, 0xe8, 0xd0, 0x98, 0xc5, 0x17, 0x92, 0xc5, 0xa5, 0x8a, 0xbf, 0xc4, 0xf1, 0x3f, 0xb8, 0x76,
2630	0x61, 0xa9, 0x48, 0xba, 0x25, 0x60, 0x55, 0x59, 0xf7, 0x20, 0x8d, 0xc3, 0x90, 0x84, 0xf9, 0x79,
2631	0xbe, 0x2f, 0x28, 0x86, 0x0f, 0x03, 0xbb, 0x70, 0xc4, 0x7b, 0x6b, 0x86, 0x58, 0xa0, 0xff, 0x50,
2632	0x83, 0xd5, 0x91, 0xe6, 0x5a, 0x14, 0x10, 0x3f, 0xc2, 0xa8, 0x03, 0x68, 0xa0, 0xa8, 0x19, 0x8a,
2633	0x1c, 0x2b, 0xaf, 0xb5, 0xf7, 0x27, 0x8d, 0xa3, 0x44, 0x92, 0x36, 0x6e, 0x59, 0xa3, 0x24, 0xfd,
2634	0xdb, 0x14, 0xac, 0x8f, 0xac, 0x6e, 0x84, 0xa4, 0x1d, 0xe2, 0xe8, 0x8a, 0x9c, 0xfe, 0x1a, 0x64,
2635	0x03, 0xb9, 0xd0, 0x0c, 0x70, 0x68, 0xb3, 0xe4, 0xce, 0xee, 0xc3, 0xb4, 0xb1, 0x1c, 0xd3, 0x1b,
2636	0x82, 0x8c, 0xde, 0x07, 0x18, 0x54, 0x32, 0xb2, 0x59, 0xb4, 0x99, 0xb8, 0x34, 0x9b, 0x71, 0x4f,
2637	0xd2, 0x98, 0xef, 0xd7, 0x30, 0xe8, 0x03, 0x58, 0xe8, 0x05, 0x8e, 0x45, 0xb1, 0xe0, 0x9d, 0xbe,
2638	0x92, 0x17, 0xc4, 0x72, 0xce, 0xbc, 0x07, 0xb3, 0xb2, 0x4b, 0xc8, 0xab, 0xd9, 0xeb, 0x35, 0x18,
2639	0x63, 0x56, 0xf5, 0xf2, 0x9a, 0x79, 0xce, 0x27, 0xcc, 0x8f, 0x47, 0x37, 0xbc, 0xef, 0xea, 0x53,
2640	0x58, 0x51, 0x36, 0x3c, 0x76, 0xa0, 0xdc, 0xf1, 0xd2, 0xf5, 0x77, 0x3c, 0x06, 0x36, 0x94, 0x38,
2641	0x8a, 0x69, 0xfa, 0x4f, 0xa6, 0x61, 0xe3, 0xd2, 0x7e, 0x50, 0xb2, 0x7e, 0xd1, 0x92, 0xf5, 0x0b,
2642	0xdb, 0xfd, 0xae, 0x75, 0x6e, 0x5a, 0x1e, 0xc5, 0xa1, 0x6f, 0x51, 0xf7, 0x4c, 0xd6, 0xd7, 0x69,
2643	0x63, 0xb9, 0x6b, 0x9d, 0x97, 0x15, 0x32, 0x5b, 0xda, 0x72, 0x19, 0x81, 0x99, 0xd5, 0xb2, 0x7c,
2644	0x56, 0xe0, 0x4c, 0xf1, 0x52, 0x7c, 0x59, 0xd0, 0x1b, 0x31, 0x19, 0x7d, 0x06, 0xcb, 0x32, 0xe3,
2645	0xc8, 0x5e, 0x6e, 0x9c, 0xfe, 0xff, 0x6b, 0xe2, 0x5c, 0x13, 0x77, 0x73, 0x97, 0x22, 0x75, 0x18,
2646	0xa1, 0xff, 0x85, 0xdb, 0xd8, 0xb7, 0x4e, 0x3c, 0x6c, 0x5a, 0x3d, 0x4a, 0xba, 0x16, 0x75, 0x6d,
2647	0x33, 0xe8, 0xf9, 0x36, 0xed, 0x89, 0x24, 0x9a, 0xe6, 0x1a, 0x6d, 0x8a, 0x35, 0xe5, 0x78, 0x49,
2648	0x63, 0xb0, 0x02, 0xdd, 0x85, 0x8c, 0xd5, 0x73, 0x5c, 0x22, 0xfa, 0x53, 0x22, 0xab, 0xa7, 0x8d,
2649	0x05, 0x4e, 0xe3, 0x99, 0x21, 0x42, 0x1f, 0x82, 0x04, 0x30, 0xa3, 0x00, 0x5b, 0xa7, 0x38, 0x34,
2650	0x1d, 0xd7, 0x0a, 0xdd, 0x2f, 0x07, 0x79, 0x7a, 0xce, 0xc8, 0x8b, 0x15, 0x47, 0x62, 0xc1, 0xde,
2651	0x60, 0x1e, 0x95, 0x60, 0x43, 0x59, 0xde, 0x87, 0xb0, 0x49, 0xcf, 0xa7, 0xbc, 0xe3, 0x96, 0x36,
2652	0xd6, 0x95, 0x05, 0x12, 0xa1, 0xc2, 0xa6, 0xd1, 0xdb, 0xb0, 0x26, 0x25, 0x3f, 0x25, 0xa1, 0xa3,
2653	0x74, 0x74, 0x78, 0x16, 0x9a, 0x33, 0x72, 0x62, 0xf6, 0xff, 0x48, 0xe8, 0x0c, 0x9a, 0x39, 0xfa,
2654	0x6b, 0xb0, 0x38, 0xe4, 0x35, 0x94, 0x87, 0xd9, 0xa0, 0x13, 0x5a, 0x11, 0x8e, 0x5b, 0x17, 0xf1,
2655	0x50, 0xff, 0xb5, 0x06, 0x2b, 0x63, 0x62, 0x06, 0xd9, 0x90, 0x19, 0x0a, 0x02, 0x11, 0xb1, 0xff,
2656	0x33, 0xf1, 0x7e, 0x19, 0xd8, 0x26, 0x6d, 0xdf, 0x65, 0x58, 0x4a, 0xd4, 0x18, 0x43, 0xa0, 0xc9,
2657	0x90, 0x4c, 0x8d, 0x29, 0xa9, 0x7f, 0xa3, 0xc1, 0xed, 0x67, 0x61, 0xa2, 0x2d, 0x80, 0xc1, 0x45,
2658	0x26, 0xa3, 0x5a, 0xa1, 0x5c, 0xd5, 0x21, 0x40, 0x65, 0x48, 0x33, 0xe7, 0xc6, 0x0f, 0xaf, 0xd7,
2659	0x27, 0xb0, 0x91, 0xf9, 0xbb, 0xe6, 0xb7, 0x88, 0x21, 0x38, 0xf5, 0xbf, 0x69, 0x30, 0x17, 0xd3,
2660	0xd0, 0x7b, 0x43, 0x69, 0xf1, 0xca, 0x32, 0x55, 0xc9, 0x8a, 0x6f, 0xc3, 0x5c, 0xdc, 0xd3, 0xb9,
2661	0xba, 0x06, 0x99, 0x95, 0xcd, 0x1c, 0x56, 0xee, 0x31, 0x2d, 0x64, 0x3f, 0x82, 0xff, 0x1e, 0xb1,
2662	0x79, 0x3a, 0x61, 0xf3, 0x1d, 0x58, 0x88, 0xe3, 0x90, 0x5a, 0xa2, 0xc3, 0x9d, 0x36, 0x40, 0x92,
2663	0x9a, 0x56, 0x5b, 0x2f, 0x40, 0x76, 0x50, 0x43, 0x1d, 0xe3, 0x90, 0xe2, 0x73, 0x94, 0x01, 0xed,
2664	0x5c, 0x16, 0x95, 0x1a, 0x1f, 0x5d, 0x48, 0x6f, 0x6a, 0x17, 0xba, 0x0b, 0x6b, 0xc9, 0x9a, 0xab,
2665	0x41, 0xbc, 0x0b, 0x54, 0x87, 0xb9, 0x33, 0x1c, 0x52, 0xd7, 0xee, 0x47, 0xd1, 0x5b, 0xd7, 0x2a,
2666	0xe0, 0x84, 0x70, 0xa3, 0x0f, 0xa2, 0x7f, 0xa5, 0xc1, 0x02, 0x7b, 0x18, 0xfc, 0xe7, 0xdb, 0x56,
2667	0x37, 0x2a, 0xb7, 0x98, 0xaa, 0xc3, 0xe5, 0xd6, 0xef, 0x34, 0x98, 0xef, 0x53, 0xd1, 0x29, 0xe4,
2668	0x42, 0x7e, 0x73, 0x0c, 0x97, 0xbb, 0xd2, 0x96, 0xf7, 0x6f, 0x54, 0xec, 0x32, 0xc7, 0x1b, 0x48,
2669	0xc2, 0xaa, 0xad, 0x81, 0xe7, 0x29, 0x74, 0x03, 0x58, 0x1a, 0x7e, 0x8f, 0xb1, 0xc8, 0xe3, 0xff,
2670	0xcc, 0x89, 0x33, 0xc7, 0x7f, 0xdf, 0xb0, 0xba, 0x55, 0xf6, 0x73, 0x50, 0xdd, 0xea, 0x7f, 0xd2,
2671	0x60, 0x65, 0xf8, 0x89, 0x26, 0x5c, 0x16, 0xc0, 0xfa, 0x25, 0x4d, 0x02, 0xe9, 0xb5, 0x9b, 0xb7,
2672	0x08, 0x56, 0xc7, 0xb6, 0x08, 0x9e, 0xcb, 0x6f, 0x7f, 0x4e, 0x41, 0xfe, 0xb2, 0x87, 0x26, 0x7a,
2673	0x34, 0x08, 0xde, 0xa9, 0x1b, 0x05, 0xef, 0xc3, 0x17, 0x06, 0xe1, 0xfb, 0x22, 0xcc, 0xf1, 0x4b,
2674	0x2c, 0xfe, 0xeb, 0x72, 0x8a, 0x4d, 0x72, 0x4a, 0xcd, 0xf9, 0x2e, 0xda, 0x90, 0x57, 0x65, 0x95,
2675	0xc3, 0xfe, 0xf1, 0x48, 0x4d, 0x5c, 0x4a, 0x8c, 0xd9, 0xdf, 0xf8, 0xa0, 0xec, 0x66, 0x78, 0x66,
2676	0x67, 0xf6, 0xf8, 0x2d, 0x72, 0xff, 0x2f, 0x1a, 0xcc, 0xca, 0x57, 0x1c, 0x5a, 0x87, 0x95, 0xfd,
2677	0x6a, 0xb9, 0xf9, 0xd8, 0xa8, 0x9a, 0x8f, 0x0f, 0x8f, 0x1a, 0xd5, 0x4a, 0x6d, 0xbf, 0x56, 0xdd,
2678	0xcb, 0xbe, 0x80, 0x56, 0x60, 0xf9, 0xa0, 0xbc, 0x5b, 0x3d, 0x30, 0xf7, 0xaa, 0xcd, 0x6a, 0xa5,
2679	0x59, 0xab, 0x1f, 0x66, 0x35, 0xb4, 0x01, 0xab, 0x47, 0x0f, 0xeb, 0x4d, 0xb3, 0xf2, 0xb0, 0x7c,
2680	0xf8, 0x51, 0x55, 0x99, 0x4a, 0xa1, 0x2d, 0xd8, 0xac, 0x7e, 0xda, 0x38, 0xa8, 0x55, 0x6a, 0x4d,
2681	0xb3, 0x52, 0x3f, 0x6c, 0x56, 0x0f, 0x9b, 0xca, 0xfc, 0x14, 0x42, 0xb0, 0xb4, 0x5f, 0xae, 0xa8,
2682	0x3c, 0xd3, 0x28, 0x0f, 0xb9, 0xa3, 0x46, 0xb5, 0x5a, 0x79, 0x68, 0x36, 0x8d, 0xf2, 0xe1, 0x51,
2683	0xc5, 0xa8, 0x35, 0xf8, 0xcc, 0x0c, 0x5b, 0xdd, 0xac, 0x7e, 0xaa, 0x22, 0xcc, 0x32, 0x8d, 0xea,
2684	0xbb, 0x1f, 0x57, 0x2b, 0x4d, 0xb6, 0xba, 0xf2, 0xa8, 0x76, 0xf8, 0x51, 0x76, 0xfe, 0x7e, 0x08,
2685	0x28, 0xf9, 0x77, 0x12, 0x7a, 0x05, 0xb6, 0x47, 0x94, 0x37, 0x3f, 0xa9, 0xef, 0x8d, 0x9a, 0xb8,
2686	0x08, 0xf3, 0xdc, 0x1a, 0x36, 0x95, 0xd5, 0xd0, 0x12, 0xc0, 0xbe, 0x51, 0xfe, 0xa4, 0x2a, 0xc6,
2687	0x29, 0xe6, 0x1a, 0x3e, 0x5d, 0x3e, 0xdc, 0x33, 0x95, 0x89, 0xa9, 0xfb, 0x14, 0x60, 0xd0, 0xab,
2688	0x44, 0x9b, 0xb0, 0x76, 0x50, 0x7b, 0x54, 0x3d, 0xa8, 0x3d, 0xac, 0xd7, 0xf7, 0x46, 0x24, 0xdc,
2689	0x82, 0xc5, 0xe3, 0xaa, 0xf1, 0x99, 0xf9, 0xf8, 0x90, 0x2f, 0xf9, 0x2c, 0xab, 0xa1, 0x0c, 0xcc,
2690	0xf5, 0x47, 0x29, 0x36, 0x6a, 0xd4, 0x8f, 0x8e, 0x6a, 0xbb, 0x07, 0xd5, 0xec, 0x14, 0x02, 0x98,
2691	0x91, 0x33, 0xd3, 0x68, 0x19, 0x16, 0x38, 0xab, 0x24, 0xa4, 0x1f, 0xfc, 0x4b, 0x83, 0x3c, 0x8f,
2692	0xd7, 0x9a, 0xb2, 0xf1, 0x47, 0x38, 0x3c, 0x73, 0x6d, 0x8c, 0x7e, 0xaa, 0xc1, 0xe2, 0xd0, 0xc3,
2693	0x19, 0x4d, 0xd2, 0x15, 0x1d, 0xf7, 0xe1, 0xc2, 0xe6, 0x4b, 0x31, 0xa3, 0xf2, 0x45, 0x45, 0xa1,
2694	0x1e, 0x7f, 0x51, 0xa1, 0x6f, 0xfd, 0xe8, 0x1f, 0xff, 0xfc, 0x45, 0x2a, 0xaf, 0xaf, 0xf4, 0xbf,
2695	0xf7, 0x88, 0x4a, 0xf2, 0x09, 0x8d, 0x4b, 0xda, 0xfd, 0xcd, 0xe6, 0x37, 0xe5, 0xed, 0xa4, 0x30,
2696	0x01, 0x69, 0x05, 0x6e, 0x54, 0xb0, 0x49, 0xf7, 0xef, 0xe5, 0x42, 0x87, 0xd2, 0x20, 0x2a, 0x15,
2697	0x8b, 0x4f, 0x9f, 0x3e, 0x1d, 0x99, 0x2c, 0x5a, 0x3d, 0xda, 0x11, 0x1f, 0x99, 0xbc, 0x19, 0x78,
2698	0x16, 0x6d, 0x91, 0xb0, 0xbb, 0xfb, 0xb3, 0x14, 0xbc, 0x6a, 0x93, 0xee, 0xd5, 0x36, 0xed, 0xbe,
2699	0x74, 0x99, 0x8f, 0x1a, 0x2c, 0xb7, 0x34, 0xb4, 0xcf, 0x0d, 0x89, 0xd1, 0x26, 0xec, 0x75, 0x54,
2700	0x20, 0x61, 0xbb, 0xd8, 0xc6, 0x3e, 0xcf, 0x3c, 0xc5, 0x81, 0x26, 0xcf, 0xf8, 0xca, 0xe5, 0x83,
2701	0x04, 0xf1, 0xb7, 0xa9, 0xbb, 0x1f, 0x09, 0xd0, 0x0a, 0x57, 0x2c, 0xa1, 0x42, 0xe1, 0x78, 0xe7,
2702	0x9b, 0x78, 0xcd, 0x13, 0xbe, 0xe6, 0x49, 0x62, 0xcd, 0x93, 0xe3, 0x9d, 0x6f, 0x53, 0xaf, 0x88,
2703	0x35, 0xa5, 0x12, 0x5f, 0x54, 0x2a, 0x25, 0x56, 0x95, 0x4a, 0xc7, 0x3b, 0x27, 0x33, 0x5c, 0xdb,
2704	0xb7, 0xfe, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x6c, 0x11, 0x6a, 0x20, 0x92, 0x23, 0x00, 0x00,
2705}
2706
2707// Reference imports to suppress errors if they are not otherwise used.
2708var _ context.Context
2709var _ grpc.ClientConn
2710
2711// This is a compile-time assertion to ensure that this generated file
2712// is compatible with the grpc package it is being compiled against.
2713const _ = grpc.SupportPackageIsVersion4
2714
2715// VideoIntelligenceServiceClient is the client API for VideoIntelligenceService service.
2716//
2717// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
2718type VideoIntelligenceServiceClient interface {
2719	// Performs asynchronous video annotation. Progress and results can be
2720	// retrieved through the `google.longrunning.Operations` interface.
2721	// `Operation.metadata` contains `AnnotateVideoProgress` (progress).
2722	// `Operation.response` contains `AnnotateVideoResponse` (results).
2723	AnnotateVideo(ctx context.Context, in *AnnotateVideoRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
2724}
2725
2726type videoIntelligenceServiceClient struct {
2727	cc *grpc.ClientConn
2728}
2729
2730func NewVideoIntelligenceServiceClient(cc *grpc.ClientConn) VideoIntelligenceServiceClient {
2731	return &videoIntelligenceServiceClient{cc}
2732}
2733
2734func (c *videoIntelligenceServiceClient) AnnotateVideo(ctx context.Context, in *AnnotateVideoRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
2735	out := new(longrunning.Operation)
2736	err := c.cc.Invoke(ctx, "/google.cloud.videointelligence.v1.VideoIntelligenceService/AnnotateVideo", in, out, opts...)
2737	if err != nil {
2738		return nil, err
2739	}
2740	return out, nil
2741}
2742
2743// VideoIntelligenceServiceServer is the server API for VideoIntelligenceService service.
2744type VideoIntelligenceServiceServer interface {
2745	// Performs asynchronous video annotation. Progress and results can be
2746	// retrieved through the `google.longrunning.Operations` interface.
2747	// `Operation.metadata` contains `AnnotateVideoProgress` (progress).
2748	// `Operation.response` contains `AnnotateVideoResponse` (results).
2749	AnnotateVideo(context.Context, *AnnotateVideoRequest) (*longrunning.Operation, error)
2750}
2751
2752func RegisterVideoIntelligenceServiceServer(s *grpc.Server, srv VideoIntelligenceServiceServer) {
2753	s.RegisterService(&_VideoIntelligenceService_serviceDesc, srv)
2754}
2755
2756func _VideoIntelligenceService_AnnotateVideo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2757	in := new(AnnotateVideoRequest)
2758	if err := dec(in); err != nil {
2759		return nil, err
2760	}
2761	if interceptor == nil {
2762		return srv.(VideoIntelligenceServiceServer).AnnotateVideo(ctx, in)
2763	}
2764	info := &grpc.UnaryServerInfo{
2765		Server:     srv,
2766		FullMethod: "/google.cloud.videointelligence.v1.VideoIntelligenceService/AnnotateVideo",
2767	}
2768	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2769		return srv.(VideoIntelligenceServiceServer).AnnotateVideo(ctx, req.(*AnnotateVideoRequest))
2770	}
2771	return interceptor(ctx, in, info, handler)
2772}
2773
2774var _VideoIntelligenceService_serviceDesc = grpc.ServiceDesc{
2775	ServiceName: "google.cloud.videointelligence.v1.VideoIntelligenceService",
2776	HandlerType: (*VideoIntelligenceServiceServer)(nil),
2777	Methods: []grpc.MethodDesc{
2778		{
2779			MethodName: "AnnotateVideo",
2780			Handler:    _VideoIntelligenceService_AnnotateVideo_Handler,
2781		},
2782	},
2783	Streams:  []grpc.StreamDesc{},
2784	Metadata: "google/cloud/videointelligence/v1/video_intelligence.proto",
2785}
2786