google-cloud-video_intelligence-v1p3beta1 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +169 -0
  4. data/LICENSE.md +201 -0
  5. data/README.md +139 -0
  6. data/lib/google/cloud/video_intelligence/v1p3beta1/streaming_video_intelligence_service/client.rb +361 -0
  7. data/lib/google/cloud/video_intelligence/v1p3beta1/streaming_video_intelligence_service/credentials.rb +51 -0
  8. data/lib/google/cloud/video_intelligence/v1p3beta1/streaming_video_intelligence_service.rb +48 -0
  9. data/lib/google/cloud/video_intelligence/v1p3beta1/version.rb +28 -0
  10. data/lib/google/cloud/video_intelligence/v1p3beta1/video_intelligence_service/client.rb +414 -0
  11. data/lib/google/cloud/video_intelligence/v1p3beta1/video_intelligence_service/credentials.rb +51 -0
  12. data/lib/google/cloud/video_intelligence/v1p3beta1/video_intelligence_service/operations.rb +664 -0
  13. data/lib/google/cloud/video_intelligence/v1p3beta1/video_intelligence_service.rb +49 -0
  14. data/lib/google/cloud/video_intelligence/v1p3beta1.rb +39 -0
  15. data/lib/google/cloud/videointelligence/v1p3beta1/video_intelligence_pb.rb +405 -0
  16. data/lib/google/cloud/videointelligence/v1p3beta1/video_intelligence_services_pb.rb +66 -0
  17. data/lib/google-cloud-video_intelligence-v1p3beta1.rb +21 -0
  18. data/proto_docs/README.md +4 -0
  19. data/proto_docs/google/api/field_behavior.rb +71 -0
  20. data/proto_docs/google/api/resource.rb +283 -0
  21. data/proto_docs/google/cloud/videointelligence/v1p3beta1/video_intelligence.rb +1196 -0
  22. data/proto_docs/google/longrunning/operations.rb +164 -0
  23. data/proto_docs/google/protobuf/any.rb +141 -0
  24. data/proto_docs/google/protobuf/duration.rb +98 -0
  25. data/proto_docs/google/protobuf/empty.rb +36 -0
  26. data/proto_docs/google/protobuf/timestamp.rb +129 -0
  27. data/proto_docs/google/rpc/status.rb +46 -0
  28. metadata +219 -0
@@ -0,0 +1,1196 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module VideoIntelligence
23
+ module V1p3beta1
24
+ # Video annotation request.
25
+ # @!attribute [rw] input_uri
26
+ # @return [::String]
27
+ # Input video location. Currently, only
28
+ # [Cloud Storage](https://cloud.google.com/storage/) URIs are
29
+ # supported. URIs must be specified in the following format:
30
+ # `gs://bucket-id/object-id` (other URI formats return
31
+ # [google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]). For
32
+ # more information, see [Request
33
+ # URIs](https://cloud.google.com/storage/docs/request-endpoints). To identify
34
+ # multiple videos, a video URI may include wildcards in the `object-id`.
35
+ # Supported wildcards: '*' to match 0 or more characters;
36
+ # '?' to match 1 character. If unset, the input video should be embedded
37
+ # in the request as `input_content`. If set, `input_content` must be unset.
38
+ # @!attribute [rw] input_content
39
+ # @return [::String]
40
+ # The video data bytes.
41
+ # If unset, the input video(s) should be specified via the `input_uri`.
42
+ # If set, `input_uri` must be unset.
43
+ # @!attribute [rw] features
44
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::Feature>]
45
+ # Required. Requested video annotation features.
46
+ # @!attribute [rw] video_context
47
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::VideoContext]
48
+ # Additional video context and/or feature-specific parameters.
49
+ # @!attribute [rw] output_uri
50
+ # @return [::String]
51
+ # Optional. Location where the output (in JSON format) should be stored.
52
+ # Currently, only [Cloud Storage](https://cloud.google.com/storage/)
53
+ # URIs are supported. These must be specified in the following format:
54
+ # `gs://bucket-id/object-id` (other URI formats return
55
+ # [google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]). For
56
+ # more information, see [Request
57
+ # URIs](https://cloud.google.com/storage/docs/request-endpoints).
58
+ # @!attribute [rw] location_id
59
+ # @return [::String]
60
+ # Optional. Cloud region where annotation should take place. Supported cloud
61
+ # regions are: `us-east1`, `us-west1`, `europe-west1`, `asia-east1`. If no
62
+ # region is specified, the region will be determined based on video file
63
+ # location.
64
+ class AnnotateVideoRequest
65
+ include ::Google::Protobuf::MessageExts
66
+ extend ::Google::Protobuf::MessageExts::ClassMethods
67
+ end
68
+
69
+ # Video context and/or feature-specific parameters.
70
+ # @!attribute [rw] segments
71
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::VideoSegment>]
72
+ # Video segments to annotate. The segments may overlap and are not required
73
+ # to be contiguous or span the whole video. If unspecified, each video is
74
+ # treated as a single segment.
75
+ # @!attribute [rw] label_detection_config
76
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::LabelDetectionConfig]
77
+ # Config for LABEL_DETECTION.
78
+ # @!attribute [rw] shot_change_detection_config
79
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::ShotChangeDetectionConfig]
80
+ # Config for SHOT_CHANGE_DETECTION.
81
+ # @!attribute [rw] explicit_content_detection_config
82
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::ExplicitContentDetectionConfig]
83
+ # Config for EXPLICIT_CONTENT_DETECTION.
84
+ # @!attribute [rw] face_detection_config
85
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::FaceDetectionConfig]
86
+ # Config for FACE_DETECTION.
87
+ # @!attribute [rw] speech_transcription_config
88
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::SpeechTranscriptionConfig]
89
+ # Config for SPEECH_TRANSCRIPTION.
90
+ # @!attribute [rw] text_detection_config
91
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::TextDetectionConfig]
92
+ # Config for TEXT_DETECTION.
93
+ # @!attribute [rw] person_detection_config
94
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::PersonDetectionConfig]
95
+ # Config for PERSON_DETECTION.
96
+ # @!attribute [rw] object_tracking_config
97
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::ObjectTrackingConfig]
98
+ # Config for OBJECT_TRACKING.
99
+ class VideoContext
100
+ include ::Google::Protobuf::MessageExts
101
+ extend ::Google::Protobuf::MessageExts::ClassMethods
102
+ end
103
+
104
+ # Config for LABEL_DETECTION.
105
+ # @!attribute [rw] label_detection_mode
106
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::LabelDetectionMode]
107
+ # What labels should be detected with LABEL_DETECTION, in addition to
108
+ # video-level labels or segment-level labels.
109
+ # If unspecified, defaults to `SHOT_MODE`.
110
+ # @!attribute [rw] stationary_camera
111
+ # @return [::Boolean]
112
+ # Whether the video has been shot from a stationary (i.e., non-moving)
113
+ # camera. When set to true, might improve detection accuracy for moving
114
+ # objects. Should be used with `SHOT_AND_FRAME_MODE` enabled.
115
+ # @!attribute [rw] model
116
+ # @return [::String]
117
+ # Model to use for label detection.
118
+ # Supported values: "builtin/stable" (the default if unset) and
119
+ # "builtin/latest".
120
+ # @!attribute [rw] frame_confidence_threshold
121
+ # @return [::Float]
122
+ # The confidence threshold we perform filtering on the labels from
123
+ # frame-level detection. If not set, it is set to 0.4 by default. The valid
124
+ # range for this threshold is [0.1, 0.9]. Any value set outside of this
125
+ # range will be clipped.
126
+ # Note: For best results, follow the default threshold. We will update
127
+ # the default threshold everytime when we release a new model.
128
+ # @!attribute [rw] video_confidence_threshold
129
+ # @return [::Float]
130
+ # The confidence threshold we perform filtering on the labels from
131
+ # video-level and shot-level detections. If not set, it's set to 0.3 by
132
+ # default. The valid range for this threshold is [0.1, 0.9]. Any value set
133
+ # outside of this range will be clipped.
134
+ # Note: For best results, follow the default threshold. We will update
135
+ # the default threshold everytime when we release a new model.
136
+ class LabelDetectionConfig
137
+ include ::Google::Protobuf::MessageExts
138
+ extend ::Google::Protobuf::MessageExts::ClassMethods
139
+ end
140
+
141
+ # Config for SHOT_CHANGE_DETECTION.
142
+ # @!attribute [rw] model
143
+ # @return [::String]
144
+ # Model to use for shot change detection.
145
+ # Supported values: "builtin/stable" (the default if unset) and
146
+ # "builtin/latest".
147
+ class ShotChangeDetectionConfig
148
+ include ::Google::Protobuf::MessageExts
149
+ extend ::Google::Protobuf::MessageExts::ClassMethods
150
+ end
151
+
152
+ # Config for OBJECT_TRACKING.
153
+ # @!attribute [rw] model
154
+ # @return [::String]
155
+ # Model to use for object tracking.
156
+ # Supported values: "builtin/stable" (the default if unset) and
157
+ # "builtin/latest".
158
+ class ObjectTrackingConfig
159
+ include ::Google::Protobuf::MessageExts
160
+ extend ::Google::Protobuf::MessageExts::ClassMethods
161
+ end
162
+
163
+ # Config for EXPLICIT_CONTENT_DETECTION.
164
+ # @!attribute [rw] model
165
+ # @return [::String]
166
+ # Model to use for explicit content detection.
167
+ # Supported values: "builtin/stable" (the default if unset) and
168
+ # "builtin/latest".
169
+ class ExplicitContentDetectionConfig
170
+ include ::Google::Protobuf::MessageExts
171
+ extend ::Google::Protobuf::MessageExts::ClassMethods
172
+ end
173
+
174
+ # Config for FACE_DETECTION.
175
+ # @!attribute [rw] model
176
+ # @return [::String]
177
+ # Model to use for face detection.
178
+ # Supported values: "builtin/stable" (the default if unset) and
179
+ # "builtin/latest".
180
+ # @!attribute [rw] include_bounding_boxes
181
+ # @return [::Boolean]
182
+ # Whether bounding boxes are included in the face annotation output.
183
+ # @!attribute [rw] include_attributes
184
+ # @return [::Boolean]
185
+ # Whether to enable face attributes detection, such as glasses, dark_glasses,
186
+ # mouth_open etc. Ignored if 'include_bounding_boxes' is set to false.
187
+ class FaceDetectionConfig
188
+ include ::Google::Protobuf::MessageExts
189
+ extend ::Google::Protobuf::MessageExts::ClassMethods
190
+ end
191
+
192
+ # Config for PERSON_DETECTION.
193
+ # @!attribute [rw] include_bounding_boxes
194
+ # @return [::Boolean]
195
+ # Whether bounding boxes are included in the person detection annotation
196
+ # output.
197
+ # @!attribute [rw] include_pose_landmarks
198
+ # @return [::Boolean]
199
+ # Whether to enable pose landmarks detection. Ignored if
200
+ # 'include_bounding_boxes' is set to false.
201
+ # @!attribute [rw] include_attributes
202
+ # @return [::Boolean]
203
+ # Whether to enable person attributes detection, such as cloth color (black,
204
+ # blue, etc), type (coat, dress, etc), pattern (plain, floral, etc), hair,
205
+ # etc.
206
+ # Ignored if 'include_bounding_boxes' is set to false.
207
+ class PersonDetectionConfig
208
+ include ::Google::Protobuf::MessageExts
209
+ extend ::Google::Protobuf::MessageExts::ClassMethods
210
+ end
211
+
212
+ # Config for TEXT_DETECTION.
213
+ # @!attribute [rw] language_hints
214
+ # @return [::Array<::String>]
215
+ # Language hint can be specified if the language to be detected is known a
216
+ # priori. It can increase the accuracy of the detection. Language hint must
217
+ # be language code in BCP-47 format.
218
+ #
219
+ # Automatic language detection is performed if no hint is provided.
220
+ # @!attribute [rw] model
221
+ # @return [::String]
222
+ # Model to use for text detection.
223
+ # Supported values: "builtin/stable" (the default if unset) and
224
+ # "builtin/latest".
225
+ class TextDetectionConfig
226
+ include ::Google::Protobuf::MessageExts
227
+ extend ::Google::Protobuf::MessageExts::ClassMethods
228
+ end
229
+
230
+ # Video segment.
231
+ # @!attribute [rw] start_time_offset
232
+ # @return [::Google::Protobuf::Duration]
233
+ # Time-offset, relative to the beginning of the video,
234
+ # corresponding to the start of the segment (inclusive).
235
+ # @!attribute [rw] end_time_offset
236
+ # @return [::Google::Protobuf::Duration]
237
+ # Time-offset, relative to the beginning of the video,
238
+ # corresponding to the end of the segment (inclusive).
239
+ class VideoSegment
240
+ include ::Google::Protobuf::MessageExts
241
+ extend ::Google::Protobuf::MessageExts::ClassMethods
242
+ end
243
+
244
+ # Video segment level annotation results for label detection.
245
+ # @!attribute [rw] segment
246
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::VideoSegment]
247
+ # Video segment where a label was detected.
248
+ # @!attribute [rw] confidence
249
+ # @return [::Float]
250
+ # Confidence that the label is accurate. Range: [0, 1].
251
+ class LabelSegment
252
+ include ::Google::Protobuf::MessageExts
253
+ extend ::Google::Protobuf::MessageExts::ClassMethods
254
+ end
255
+
256
+ # Video frame level annotation results for label detection.
257
+ # @!attribute [rw] time_offset
258
+ # @return [::Google::Protobuf::Duration]
259
+ # Time-offset, relative to the beginning of the video, corresponding to the
260
+ # video frame for this location.
261
+ # @!attribute [rw] confidence
262
+ # @return [::Float]
263
+ # Confidence that the label is accurate. Range: [0, 1].
264
+ class LabelFrame
265
+ include ::Google::Protobuf::MessageExts
266
+ extend ::Google::Protobuf::MessageExts::ClassMethods
267
+ end
268
+
269
+ # Detected entity from video analysis.
270
+ # @!attribute [rw] entity_id
271
+ # @return [::String]
272
+ # Opaque entity ID. Some IDs may be available in
273
+ # [Google Knowledge Graph Search
274
+ # API](https://developers.google.com/knowledge-graph/).
275
+ # @!attribute [rw] description
276
+ # @return [::String]
277
+ # Textual description, e.g., `Fixed-gear bicycle`.
278
+ # @!attribute [rw] language_code
279
+ # @return [::String]
280
+ # Language code for `description` in BCP-47 format.
281
+ class Entity
282
+ include ::Google::Protobuf::MessageExts
283
+ extend ::Google::Protobuf::MessageExts::ClassMethods
284
+ end
285
+
286
+ # Label annotation.
287
+ # @!attribute [rw] entity
288
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::Entity]
289
+ # Detected entity.
290
+ # @!attribute [rw] category_entities
291
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::Entity>]
292
+ # Common categories for the detected entity.
293
+ # For example, when the label is `Terrier`, the category is likely `dog`. And
294
+ # in some cases there might be more than one categories e.g., `Terrier` could
295
+ # also be a `pet`.
296
+ # @!attribute [rw] segments
297
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::LabelSegment>]
298
+ # All video segments where a label was detected.
299
+ # @!attribute [rw] frames
300
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::LabelFrame>]
301
+ # All video frames where a label was detected.
302
+ class LabelAnnotation
303
+ include ::Google::Protobuf::MessageExts
304
+ extend ::Google::Protobuf::MessageExts::ClassMethods
305
+ end
306
+
307
+ # Video frame level annotation results for explicit content.
308
+ # @!attribute [rw] time_offset
309
+ # @return [::Google::Protobuf::Duration]
310
+ # Time-offset, relative to the beginning of the video, corresponding to the
311
+ # video frame for this location.
312
+ # @!attribute [rw] pornography_likelihood
313
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::Likelihood]
314
+ # Likelihood of the pornography content..
315
+ class ExplicitContentFrame
316
+ include ::Google::Protobuf::MessageExts
317
+ extend ::Google::Protobuf::MessageExts::ClassMethods
318
+ end
319
+
320
+ # Explicit content annotation (based on per-frame visual signals only).
321
+ # If no explicit content has been detected in a frame, no annotations are
322
+ # present for that frame.
323
+ # @!attribute [rw] frames
324
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::ExplicitContentFrame>]
325
+ # All video frames where explicit content was detected.
326
+ class ExplicitContentAnnotation
327
+ include ::Google::Protobuf::MessageExts
328
+ extend ::Google::Protobuf::MessageExts::ClassMethods
329
+ end
330
+
331
+ # Normalized bounding box.
332
+ # The normalized vertex coordinates are relative to the original image.
333
+ # Range: [0, 1].
334
+ # @!attribute [rw] left
335
+ # @return [::Float]
336
+ # Left X coordinate.
337
+ # @!attribute [rw] top
338
+ # @return [::Float]
339
+ # Top Y coordinate.
340
+ # @!attribute [rw] right
341
+ # @return [::Float]
342
+ # Right X coordinate.
343
+ # @!attribute [rw] bottom
344
+ # @return [::Float]
345
+ # Bottom Y coordinate.
346
+ class NormalizedBoundingBox
347
+ include ::Google::Protobuf::MessageExts
348
+ extend ::Google::Protobuf::MessageExts::ClassMethods
349
+ end
350
+
351
+ # For tracking related features.
352
+ # An object at time_offset with attributes, and located with
353
+ # normalized_bounding_box.
354
+ # @!attribute [rw] normalized_bounding_box
355
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::NormalizedBoundingBox]
356
+ # Normalized Bounding box in a frame, where the object is located.
357
+ # @!attribute [rw] time_offset
358
+ # @return [::Google::Protobuf::Duration]
359
+ # Time-offset, relative to the beginning of the video,
360
+ # corresponding to the video frame for this object.
361
+ # @!attribute [rw] attributes
362
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::DetectedAttribute>]
363
+ # Optional. The attributes of the object in the bounding box.
364
+ # @!attribute [rw] landmarks
365
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::DetectedLandmark>]
366
+ # Optional. The detected landmarks.
367
+ class TimestampedObject
368
+ include ::Google::Protobuf::MessageExts
369
+ extend ::Google::Protobuf::MessageExts::ClassMethods
370
+ end
371
+
372
+ # A track of an object instance.
373
+ # @!attribute [rw] segment
374
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::VideoSegment]
375
+ # Video segment of a track.
376
+ # @!attribute [rw] timestamped_objects
377
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::TimestampedObject>]
378
+ # The object with timestamp and attributes per frame in the track.
379
+ # @!attribute [rw] attributes
380
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::DetectedAttribute>]
381
+ # Optional. Attributes in the track level.
382
+ # @!attribute [rw] confidence
383
+ # @return [::Float]
384
+ # Optional. The confidence score of the tracked object.
385
+ class Track
386
+ include ::Google::Protobuf::MessageExts
387
+ extend ::Google::Protobuf::MessageExts::ClassMethods
388
+ end
389
+
390
+ # A generic detected attribute represented by name in string format.
391
+ # @!attribute [rw] name
392
+ # @return [::String]
393
+ # The name of the attribute, for example, glasses, dark_glasses, mouth_open.
394
+ # A full list of supported type names will be provided in the document.
395
+ # @!attribute [rw] confidence
396
+ # @return [::Float]
397
+ # Detected attribute confidence. Range [0, 1].
398
+ # @!attribute [rw] value
399
+ # @return [::String]
400
+ # Text value of the detection result. For example, the value for "HairColor"
401
+ # can be "black", "blonde", etc.
402
+ class DetectedAttribute
403
+ include ::Google::Protobuf::MessageExts
404
+ extend ::Google::Protobuf::MessageExts::ClassMethods
405
+ end
406
+
407
+ # Celebrity definition.
408
+ # @!attribute [rw] name
409
+ # @return [::String]
410
+ # The resource name of the celebrity. Have the format
411
+ # `video-intelligence/kg-mid` indicates a celebrity from preloaded gallery.
412
+ # kg-mid is the id in Google knowledge graph, which is unique for the
413
+ # celebrity.
414
+ # @!attribute [rw] display_name
415
+ # @return [::String]
416
+ # The celebrity name.
417
+ # @!attribute [rw] description
418
+ # @return [::String]
419
+ # Textual description of additional information about the celebrity, if
420
+ # applicable.
421
+ class Celebrity
422
+ include ::Google::Protobuf::MessageExts
423
+ extend ::Google::Protobuf::MessageExts::ClassMethods
424
+ end
425
+
426
+ # The annotation result of a celebrity face track. RecognizedCelebrity field
427
+ # could be empty if the face track does not have any matched celebrities.
428
+ # @!attribute [rw] celebrities
429
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::CelebrityTrack::RecognizedCelebrity>]
430
+ # Top N match of the celebrities for the face in this track.
431
+ # @!attribute [rw] face_track
432
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::Track]
433
+ # A track of a person's face.
434
+ class CelebrityTrack
435
+ include ::Google::Protobuf::MessageExts
436
+ extend ::Google::Protobuf::MessageExts::ClassMethods
437
+
438
+ # The recognized celebrity with confidence score.
439
+ # @!attribute [rw] celebrity
440
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::Celebrity]
441
+ # The recognized celebrity.
442
+ # @!attribute [rw] confidence
443
+ # @return [::Float]
444
+ # Recognition confidence. Range [0, 1].
445
+ class RecognizedCelebrity
446
+ include ::Google::Protobuf::MessageExts
447
+ extend ::Google::Protobuf::MessageExts::ClassMethods
448
+ end
449
+ end
450
+
451
+ # Celebrity recognition annotation per video.
452
+ # @!attribute [rw] celebrity_tracks
453
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::CelebrityTrack>]
454
+ # The tracks detected from the input video, including recognized celebrities
455
+ # and other detected faces in the video.
456
+ class CelebrityRecognitionAnnotation
457
+ include ::Google::Protobuf::MessageExts
458
+ extend ::Google::Protobuf::MessageExts::ClassMethods
459
+ end
460
+
461
+ # A generic detected landmark represented by name in string format and a 2D
462
+ # location.
463
+ # @!attribute [rw] name
464
+ # @return [::String]
465
+ # The name of this landmark, for example, left_hand, right_shoulder.
466
+ # @!attribute [rw] point
467
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::NormalizedVertex]
468
+ # The 2D point of the detected landmark using the normalized image
469
+ # coordindate system. The normalized coordinates have the range from 0 to 1.
470
+ # @!attribute [rw] confidence
471
+ # @return [::Float]
472
+ # The confidence score of the detected landmark. Range [0, 1].
473
+ class DetectedLandmark
474
+ include ::Google::Protobuf::MessageExts
475
+ extend ::Google::Protobuf::MessageExts::ClassMethods
476
+ end
477
+
478
+ # Face detection annotation.
479
+ # @!attribute [rw] tracks
480
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::Track>]
481
+ # The face tracks with attributes.
482
+ # @!attribute [rw] thumbnail
483
+ # @return [::String]
484
+ # The thumbnail of a person's face.
485
+ class FaceDetectionAnnotation
486
+ include ::Google::Protobuf::MessageExts
487
+ extend ::Google::Protobuf::MessageExts::ClassMethods
488
+ end
489
+
490
+ # Person detection annotation per video.
491
+ # @!attribute [rw] tracks
492
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::Track>]
493
+ # The detected tracks of a person.
494
+ class PersonDetectionAnnotation
495
+ include ::Google::Protobuf::MessageExts
496
+ extend ::Google::Protobuf::MessageExts::ClassMethods
497
+ end
498
+
499
+ # Annotation results for a single video.
500
+ # @!attribute [rw] input_uri
501
+ # @return [::String]
502
+ # Video file location in
503
+ # [Cloud Storage](https://cloud.google.com/storage/).
504
+ # @!attribute [rw] segment
505
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::VideoSegment]
506
+ # Video segment on which the annotation is run.
507
+ # @!attribute [rw] segment_label_annotations
508
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::LabelAnnotation>]
509
+ # Topical label annotations on video level or user-specified segment level.
510
+ # There is exactly one element for each unique label.
511
+ # @!attribute [rw] segment_presence_label_annotations
512
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::LabelAnnotation>]
513
+ # Presence label annotations on video level or user-specified segment level.
514
+ # There is exactly one element for each unique label. Compared to the
515
+ # existing topical `segment_label_annotations`, this field presents more
516
+ # fine-grained, segment-level labels detected in video content and is made
517
+ # available only when the client sets `LabelDetectionConfig.model` to
518
+ # "builtin/latest" in the request.
519
+ # @!attribute [rw] shot_label_annotations
520
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::LabelAnnotation>]
521
+ # Topical label annotations on shot level.
522
+ # There is exactly one element for each unique label.
523
+ # @!attribute [rw] shot_presence_label_annotations
524
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::LabelAnnotation>]
525
+ # Presence label annotations on shot level. There is exactly one element for
526
+ # each unique label. Compared to the existing topical
527
+ # `shot_label_annotations`, this field presents more fine-grained, shot-level
528
+ # labels detected in video content and is made available only when the client
529
+ # sets `LabelDetectionConfig.model` to "builtin/latest" in the request.
530
+ # @!attribute [rw] frame_label_annotations
531
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::LabelAnnotation>]
532
+ # Label annotations on frame level.
533
+ # There is exactly one element for each unique label.
534
+ # @!attribute [rw] face_detection_annotations
535
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::FaceDetectionAnnotation>]
536
+ # Face detection annotations.
537
+ # @!attribute [rw] shot_annotations
538
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::VideoSegment>]
539
+ # Shot annotations. Each shot is represented as a video segment.
540
+ # @!attribute [rw] explicit_annotation
541
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::ExplicitContentAnnotation]
542
+ # Explicit content annotation.
543
+ # @!attribute [rw] speech_transcriptions
544
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::SpeechTranscription>]
545
+ # Speech transcription.
546
+ # @!attribute [rw] text_annotations
547
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::TextAnnotation>]
548
+ # OCR text detection and tracking.
549
+ # Annotations for list of detected text snippets. Each will have list of
550
+ # frame information associated with it.
551
+ # @!attribute [rw] object_annotations
552
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::ObjectTrackingAnnotation>]
553
+ # Annotations for list of objects detected and tracked in video.
554
+ # @!attribute [rw] logo_recognition_annotations
555
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::LogoRecognitionAnnotation>]
556
+ # Annotations for list of logos detected, tracked and recognized in video.
557
+ # @!attribute [rw] person_detection_annotations
558
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::PersonDetectionAnnotation>]
559
+ # Person detection annotations.
560
+ # @!attribute [rw] celebrity_recognition_annotations
561
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::CelebrityRecognitionAnnotation]
562
+ # Celebrity recognition annotations.
563
+ # @!attribute [rw] error
564
+ # @return [::Google::Rpc::Status]
565
+ # If set, indicates an error. Note that for a single `AnnotateVideoRequest`
566
+ # some videos may succeed and some may fail.
567
+ class VideoAnnotationResults
568
+ include ::Google::Protobuf::MessageExts
569
+ extend ::Google::Protobuf::MessageExts::ClassMethods
570
+ end
571
+
572
+ # Video annotation response. Included in the `response`
573
+ # field of the `Operation` returned by the `GetOperation`
574
+ # call of the `google::longrunning::Operations` service.
575
+ # @!attribute [rw] annotation_results
576
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::VideoAnnotationResults>]
577
+ # Annotation results for all videos specified in `AnnotateVideoRequest`.
578
+ class AnnotateVideoResponse
579
+ include ::Google::Protobuf::MessageExts
580
+ extend ::Google::Protobuf::MessageExts::ClassMethods
581
+ end
582
+
583
+ # Annotation progress for a single video.
584
+ # @!attribute [rw] input_uri
585
+ # @return [::String]
586
+ # Video file location in
587
+ # [Cloud Storage](https://cloud.google.com/storage/).
588
+ # @!attribute [rw] progress_percent
589
+ # @return [::Integer]
590
+ # Approximate percentage processed thus far. Guaranteed to be
591
+ # 100 when fully processed.
592
+ # @!attribute [rw] start_time
593
+ # @return [::Google::Protobuf::Timestamp]
594
+ # Time when the request was received.
595
+ # @!attribute [rw] update_time
596
+ # @return [::Google::Protobuf::Timestamp]
597
+ # Time of the most recent update.
598
+ # @!attribute [rw] feature
599
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::Feature]
600
+ # Specifies which feature is being tracked if the request contains more than
601
+ # one feature.
602
+ # @!attribute [rw] segment
603
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::VideoSegment]
604
+ # Specifies which segment is being tracked if the request contains more than
605
+ # one segment.
606
+ class VideoAnnotationProgress
607
+ include ::Google::Protobuf::MessageExts
608
+ extend ::Google::Protobuf::MessageExts::ClassMethods
609
+ end
610
+
611
+ # Video annotation progress. Included in the `metadata`
612
+ # field of the `Operation` returned by the `GetOperation`
613
+ # call of the `google::longrunning::Operations` service.
614
+ # @!attribute [rw] annotation_progress
615
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::VideoAnnotationProgress>]
616
+ # Progress metadata for all videos specified in `AnnotateVideoRequest`.
617
+ class AnnotateVideoProgress
618
+ include ::Google::Protobuf::MessageExts
619
+ extend ::Google::Protobuf::MessageExts::ClassMethods
620
+ end
621
+
622
+ # Config for SPEECH_TRANSCRIPTION.
623
+ # @!attribute [rw] language_code
624
+ # @return [::String]
625
+ # Required. *Required* The language of the supplied audio as a
626
+ # [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag.
627
+ # Example: "en-US".
628
+ # See [Language Support](https://cloud.google.com/speech/docs/languages)
629
+ # for a list of the currently supported language codes.
630
+ # @!attribute [rw] max_alternatives
631
+ # @return [::Integer]
632
+ # Optional. Maximum number of recognition hypotheses to be returned.
633
+ # Specifically, the maximum number of `SpeechRecognitionAlternative` messages
634
+ # within each `SpeechTranscription`. The server may return fewer than
635
+ # `max_alternatives`. Valid values are `0`-`30`. A value of `0` or `1` will
636
+ # return a maximum of one. If omitted, will return a maximum of one.
637
+ # @!attribute [rw] filter_profanity
638
+ # @return [::Boolean]
639
+ # Optional. If set to `true`, the server will attempt to filter out
640
+ # profanities, replacing all but the initial character in each filtered word
641
+ # with asterisks, e.g. "f***". If set to `false` or omitted, profanities
642
+ # won't be filtered out.
643
+ # @!attribute [rw] speech_contexts
644
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::SpeechContext>]
645
+ # Optional. A means to provide context to assist the speech recognition.
646
+ # @!attribute [rw] enable_automatic_punctuation
647
+ # @return [::Boolean]
648
+ # Optional. If 'true', adds punctuation to recognition result hypotheses.
649
+ # This feature is only available in select languages. Setting this for
650
+ # requests in other languages has no effect at all. The default 'false' value
651
+ # does not add punctuation to result hypotheses. NOTE: "This is currently
652
+ # offered as an experimental service, complimentary to all users. In the
653
+ # future this may be exclusively available as a premium feature."
654
+ # @!attribute [rw] audio_tracks
655
+ # @return [::Array<::Integer>]
656
+ # Optional. For file formats, such as MXF or MKV, supporting multiple audio
657
+ # tracks, specify up to two tracks. Default: track 0.
658
+ # @!attribute [rw] enable_speaker_diarization
659
+ # @return [::Boolean]
660
+ # Optional. If 'true', enables speaker detection for each recognized word in
661
+ # the top alternative of the recognition result using a speaker_tag provided
662
+ # in the WordInfo.
663
+ # Note: When this is true, we send all the words from the beginning of the
664
+ # audio for the top alternative in every consecutive response.
665
+ # This is done in order to improve our speaker tags as our models learn to
666
+ # identify the speakers in the conversation over time.
667
+ # @!attribute [rw] diarization_speaker_count
668
+ # @return [::Integer]
669
+ # Optional. If set, specifies the estimated number of speakers in the
670
+ # conversation. If not set, defaults to '2'. Ignored unless
671
+ # enable_speaker_diarization is set to true.
672
+ # @!attribute [rw] enable_word_confidence
673
+ # @return [::Boolean]
674
+ # Optional. If `true`, the top result includes a list of words and the
675
+ # confidence for those words. If `false`, no word-level confidence
676
+ # information is returned. The default is `false`.
677
+ class SpeechTranscriptionConfig
678
+ include ::Google::Protobuf::MessageExts
679
+ extend ::Google::Protobuf::MessageExts::ClassMethods
680
+ end
681
+
682
+ # Provides "hints" to the speech recognizer to favor specific words and phrases
683
+ # in the results.
684
+ # @!attribute [rw] phrases
685
+ # @return [::Array<::String>]
686
+ # Optional. A list of strings containing words and phrases "hints" so that
687
+ # the speech recognition is more likely to recognize them. This can be used
688
+ # to improve the accuracy for specific words and phrases, for example, if
689
+ # specific commands are typically spoken by the user. This can also be used
690
+ # to add additional words to the vocabulary of the recognizer. See
691
+ # [usage limits](https://cloud.google.com/speech/limits#content).
692
+ class SpeechContext
693
+ include ::Google::Protobuf::MessageExts
694
+ extend ::Google::Protobuf::MessageExts::ClassMethods
695
+ end
696
+
697
+ # A speech recognition result corresponding to a portion of the audio.
698
+ # @!attribute [rw] alternatives
699
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::SpeechRecognitionAlternative>]
700
+ # May contain one or more recognition hypotheses (up to the maximum specified
701
+ # in `max_alternatives`). These alternatives are ordered in terms of
702
+ # accuracy, with the top (first) alternative being the most probable, as
703
+ # ranked by the recognizer.
704
+ # @!attribute [r] language_code
705
+ # @return [::String]
706
+ # Output only. The [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt)
707
+ # language tag of the language in this result. This language code was
708
+ # detected to have the most likelihood of being spoken in the audio.
709
+ class SpeechTranscription
710
+ include ::Google::Protobuf::MessageExts
711
+ extend ::Google::Protobuf::MessageExts::ClassMethods
712
+ end
713
+
714
+ # Alternative hypotheses (a.k.a. n-best list).
715
+ # @!attribute [rw] transcript
716
+ # @return [::String]
717
+ # Transcript text representing the words that the user spoke.
718
+ # @!attribute [r] confidence
719
+ # @return [::Float]
720
+ # Output only. The confidence estimate between 0.0 and 1.0. A higher number
721
+ # indicates an estimated greater likelihood that the recognized words are
722
+ # correct. This field is set only for the top alternative.
723
+ # This field is not guaranteed to be accurate and users should not rely on it
724
+ # to be always provided.
725
+ # The default of 0.0 is a sentinel value indicating `confidence` was not set.
726
+ # @!attribute [r] words
727
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::WordInfo>]
728
+ # Output only. A list of word-specific information for each recognized word.
729
+ # Note: When `enable_speaker_diarization` is set to true, you will see all
730
+ # the words from the beginning of the audio.
731
+ class SpeechRecognitionAlternative
732
+ include ::Google::Protobuf::MessageExts
733
+ extend ::Google::Protobuf::MessageExts::ClassMethods
734
+ end
735
+
736
+ # Word-specific information for recognized words. Word information is only
737
+ # included in the response when certain request parameters are set, such
738
+ # as `enable_word_time_offsets`.
739
+ # @!attribute [rw] start_time
740
+ # @return [::Google::Protobuf::Duration]
741
+ # Time offset relative to the beginning of the audio, and
742
+ # corresponding to the start of the spoken word. This field is only set if
743
+ # `enable_word_time_offsets=true` and only in the top hypothesis. This is an
744
+ # experimental feature and the accuracy of the time offset can vary.
745
+ # @!attribute [rw] end_time
746
+ # @return [::Google::Protobuf::Duration]
747
+ # Time offset relative to the beginning of the audio, and
748
+ # corresponding to the end of the spoken word. This field is only set if
749
+ # `enable_word_time_offsets=true` and only in the top hypothesis. This is an
750
+ # experimental feature and the accuracy of the time offset can vary.
751
+ # @!attribute [rw] word
752
+ # @return [::String]
753
+ # The word corresponding to this set of information.
754
+ # @!attribute [r] confidence
755
+ # @return [::Float]
756
+ # Output only. The confidence estimate between 0.0 and 1.0. A higher number
757
+ # indicates an estimated greater likelihood that the recognized words are
758
+ # correct. This field is set only for the top alternative.
759
+ # This field is not guaranteed to be accurate and users should not rely on it
760
+ # to be always provided.
761
+ # The default of 0.0 is a sentinel value indicating `confidence` was not set.
762
+ # @!attribute [r] speaker_tag
763
+ # @return [::Integer]
764
+ # Output only. A distinct integer value is assigned for every speaker within
765
+ # the audio. This field specifies which one of those speakers was detected to
766
+ # have spoken this word. Value ranges from 1 up to diarization_speaker_count,
767
+ # and is only set if speaker diarization is enabled.
768
+ class WordInfo
769
+ include ::Google::Protobuf::MessageExts
770
+ extend ::Google::Protobuf::MessageExts::ClassMethods
771
+ end
772
+
773
+ # A vertex represents a 2D point in the image.
774
+ # NOTE: the normalized vertex coordinates are relative to the original image
775
+ # and range from 0 to 1.
776
+ # @!attribute [rw] x
777
+ # @return [::Float]
778
+ # X coordinate.
779
+ # @!attribute [rw] y
780
+ # @return [::Float]
781
+ # Y coordinate.
782
+ class NormalizedVertex
783
+ include ::Google::Protobuf::MessageExts
784
+ extend ::Google::Protobuf::MessageExts::ClassMethods
785
+ end
786
+
787
+ # Normalized bounding polygon for text (that might not be aligned with axis).
788
+ # Contains list of the corner points in clockwise order starting from
789
+ # top-left corner. For example, for a rectangular bounding box:
790
+ # When the text is horizontal it might look like:
791
+ # 0----1
792
+ # | |
793
+ # 3----2
794
+ #
795
+ # When it's clockwise rotated 180 degrees around the top-left corner it
796
+ # becomes:
797
+ # 2----3
798
+ # | |
799
+ # 1----0
800
+ #
801
+ # and the vertex order will still be (0, 1, 2, 3). Note that values can be less
802
+ # than 0, or greater than 1 due to trignometric calculations for location of
803
+ # the box.
804
+ # @!attribute [rw] vertices
805
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::NormalizedVertex>]
806
+ # Normalized vertices of the bounding polygon.
807
+ class NormalizedBoundingPoly
808
+ include ::Google::Protobuf::MessageExts
809
+ extend ::Google::Protobuf::MessageExts::ClassMethods
810
+ end
811
+
812
+ # Video segment level annotation results for text detection.
813
+ # @!attribute [rw] segment
814
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::VideoSegment]
815
+ # Video segment where a text snippet was detected.
816
+ # @!attribute [rw] confidence
817
+ # @return [::Float]
818
+ # Confidence for the track of detected text. It is calculated as the highest
819
+ # over all frames where OCR detected text appears.
820
+ # @!attribute [rw] frames
821
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::TextFrame>]
822
+ # Information related to the frames where OCR detected text appears.
823
+ class TextSegment
824
+ include ::Google::Protobuf::MessageExts
825
+ extend ::Google::Protobuf::MessageExts::ClassMethods
826
+ end
827
+
828
+ # Video frame level annotation results for text annotation (OCR).
829
+ # Contains information regarding timestamp and bounding box locations for the
830
+ # frames containing detected OCR text snippets.
831
+ # @!attribute [rw] rotated_bounding_box
832
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::NormalizedBoundingPoly]
833
+ # Bounding polygon of the detected text for this frame.
834
+ # @!attribute [rw] time_offset
835
+ # @return [::Google::Protobuf::Duration]
836
+ # Timestamp of this frame.
837
+ class TextFrame
838
+ include ::Google::Protobuf::MessageExts
839
+ extend ::Google::Protobuf::MessageExts::ClassMethods
840
+ end
841
+
842
+ # Annotations related to one detected OCR text snippet. This will contain the
843
+ # corresponding text, confidence value, and frame level information for each
844
+ # detection.
845
+ # @!attribute [rw] text
846
+ # @return [::String]
847
+ # The detected text.
848
+ # @!attribute [rw] segments
849
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::TextSegment>]
850
+ # All video segments where OCR detected text appears.
851
+ class TextAnnotation
852
+ include ::Google::Protobuf::MessageExts
853
+ extend ::Google::Protobuf::MessageExts::ClassMethods
854
+ end
855
+
856
+ # Video frame level annotations for object detection and tracking. This field
857
+ # stores per frame location, time offset, and confidence.
858
+ # @!attribute [rw] normalized_bounding_box
859
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::NormalizedBoundingBox]
860
+ # The normalized bounding box location of this object track for the frame.
861
+ # @!attribute [rw] time_offset
862
+ # @return [::Google::Protobuf::Duration]
863
+ # The timestamp of the frame in microseconds.
864
+ class ObjectTrackingFrame
865
+ include ::Google::Protobuf::MessageExts
866
+ extend ::Google::Protobuf::MessageExts::ClassMethods
867
+ end
868
+
869
+ # Annotations corresponding to one tracked object.
870
+ # @!attribute [rw] segment
871
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::VideoSegment]
872
+ # Non-streaming batch mode ONLY.
873
+ # Each object track corresponds to one video segment where it appears.
874
+ # @!attribute [rw] track_id
875
+ # @return [::Integer]
876
+ # Streaming mode ONLY.
877
+ # In streaming mode, we do not know the end time of a tracked object
878
+ # before it is completed. Hence, there is no VideoSegment info returned.
879
+ # Instead, we provide a unique identifiable integer track_id so that
880
+ # the customers can correlate the results of the ongoing
881
+ # ObjectTrackAnnotation of the same track_id over time.
882
+ # @!attribute [rw] entity
883
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::Entity]
884
+ # Entity to specify the object category that this track is labeled as.
885
+ # @!attribute [rw] confidence
886
+ # @return [::Float]
887
+ # Object category's labeling confidence of this track.
888
+ # @!attribute [rw] frames
889
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::ObjectTrackingFrame>]
890
+ # Information corresponding to all frames where this object track appears.
891
+ # Non-streaming batch mode: it may be one or multiple ObjectTrackingFrame
892
+ # messages in frames.
893
+ # Streaming mode: it can only be one ObjectTrackingFrame message in frames.
894
+ class ObjectTrackingAnnotation
895
+ include ::Google::Protobuf::MessageExts
896
+ extend ::Google::Protobuf::MessageExts::ClassMethods
897
+ end
898
+
899
+ # Annotation corresponding to one detected, tracked and recognized logo class.
900
+ # @!attribute [rw] entity
901
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::Entity]
902
+ # Entity category information to specify the logo class that all the logo
903
+ # tracks within this LogoRecognitionAnnotation are recognized as.
904
+ # @!attribute [rw] tracks
905
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::Track>]
906
+ # All logo tracks where the recognized logo appears. Each track corresponds
907
+ # to one logo instance appearing in consecutive frames.
908
+ # @!attribute [rw] segments
909
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::VideoSegment>]
910
+ # All video segments where the recognized logo appears. There might be
911
+ # multiple instances of the same logo class appearing in one VideoSegment.
912
+ class LogoRecognitionAnnotation
913
+ include ::Google::Protobuf::MessageExts
914
+ extend ::Google::Protobuf::MessageExts::ClassMethods
915
+ end
916
+
917
+ # The top-level message sent by the client for the `StreamingAnnotateVideo`
918
+ # method. Multiple `StreamingAnnotateVideoRequest` messages are sent.
919
+ # The first message must only contain a `StreamingVideoConfig` message.
920
+ # All subsequent messages must only contain `input_content` data.
921
+ # @!attribute [rw] video_config
922
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::StreamingVideoConfig]
923
+ # Provides information to the annotator, specifing how to process the
924
+ # request. The first `AnnotateStreamingVideoRequest` message must only
925
+ # contain a `video_config` message.
926
+ # @!attribute [rw] input_content
927
+ # @return [::String]
928
+ # The video data to be annotated. Chunks of video data are sequentially
929
+ # sent in `StreamingAnnotateVideoRequest` messages. Except the initial
930
+ # `StreamingAnnotateVideoRequest` message containing only
931
+ # `video_config`, all subsequent `AnnotateStreamingVideoRequest`
932
+ # messages must only contain `input_content` field.
933
+ # Note: as with all bytes fields, protobuffers use a pure binary
934
+ # representation (not base64).
935
+ class StreamingAnnotateVideoRequest
936
+ include ::Google::Protobuf::MessageExts
937
+ extend ::Google::Protobuf::MessageExts::ClassMethods
938
+ end
939
+
940
+ # Provides information to the annotator that specifies how to process the
941
+ # request.
942
+ # @!attribute [rw] shot_change_detection_config
943
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::StreamingShotChangeDetectionConfig]
944
+ # Config for STREAMING_SHOT_CHANGE_DETECTION.
945
+ # @!attribute [rw] label_detection_config
946
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::StreamingLabelDetectionConfig]
947
+ # Config for STREAMING_LABEL_DETECTION.
948
+ # @!attribute [rw] explicit_content_detection_config
949
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::StreamingExplicitContentDetectionConfig]
950
+ # Config for STREAMING_EXPLICIT_CONTENT_DETECTION.
951
+ # @!attribute [rw] object_tracking_config
952
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::StreamingObjectTrackingConfig]
953
+ # Config for STREAMING_OBJECT_TRACKING.
954
+ # @!attribute [rw] automl_action_recognition_config
955
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::StreamingAutomlActionRecognitionConfig]
956
+ # Config for STREAMING_AUTOML_ACTION_RECOGNITION.
957
+ # @!attribute [rw] automl_classification_config
958
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::StreamingAutomlClassificationConfig]
959
+ # Config for STREAMING_AUTOML_CLASSIFICATION.
960
+ # @!attribute [rw] automl_object_tracking_config
961
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::StreamingAutomlObjectTrackingConfig]
962
+ # Config for STREAMING_AUTOML_OBJECT_TRACKING.
963
+ # @!attribute [rw] feature
964
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::StreamingFeature]
965
+ # Requested annotation feature.
966
+ # @!attribute [rw] storage_config
967
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::StreamingStorageConfig]
968
+ # Streaming storage option. By default: storage is disabled.
969
+ class StreamingVideoConfig
970
+ include ::Google::Protobuf::MessageExts
971
+ extend ::Google::Protobuf::MessageExts::ClassMethods
972
+ end
973
+
974
+ # `StreamingAnnotateVideoResponse` is the only message returned to the client
975
+ # by `StreamingAnnotateVideo`. A series of zero or more
976
+ # `StreamingAnnotateVideoResponse` messages are streamed back to the client.
977
+ # @!attribute [rw] error
978
+ # @return [::Google::Rpc::Status]
979
+ # If set, returns a {::Google::Rpc::Status google.rpc.Status} message that
980
+ # specifies the error for the operation.
981
+ # @!attribute [rw] annotation_results
982
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::StreamingVideoAnnotationResults]
983
+ # Streaming annotation results.
984
+ # @!attribute [rw] annotation_results_uri
985
+ # @return [::String]
986
+ # Google Cloud Storage(GCS) URI that stores annotation results of one
987
+ # streaming session in JSON format.
988
+ # It is the annotation_result_storage_directory
989
+ # from the request followed by '/cloud_project_number-session_id'.
990
+ class StreamingAnnotateVideoResponse
991
+ include ::Google::Protobuf::MessageExts
992
+ extend ::Google::Protobuf::MessageExts::ClassMethods
993
+ end
994
+
995
+ # Streaming annotation results corresponding to a portion of the video
996
+ # that is currently being processed.
997
+ # @!attribute [rw] shot_annotations
998
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::VideoSegment>]
999
+ # Shot annotation results. Each shot is represented as a video segment.
1000
+ # @!attribute [rw] label_annotations
1001
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::LabelAnnotation>]
1002
+ # Label annotation results.
1003
+ # @!attribute [rw] explicit_annotation
1004
+ # @return [::Google::Cloud::VideoIntelligence::V1p3beta1::ExplicitContentAnnotation]
1005
+ # Explicit content annotation results.
1006
+ # @!attribute [rw] object_annotations
1007
+ # @return [::Array<::Google::Cloud::VideoIntelligence::V1p3beta1::ObjectTrackingAnnotation>]
1008
+ # Object tracking results.
1009
+ class StreamingVideoAnnotationResults
1010
+ include ::Google::Protobuf::MessageExts
1011
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1012
+ end
1013
+
1014
+ # Config for STREAMING_SHOT_CHANGE_DETECTION.
1015
+ class StreamingShotChangeDetectionConfig
1016
+ include ::Google::Protobuf::MessageExts
1017
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1018
+ end
1019
+
1020
+ # Config for STREAMING_LABEL_DETECTION.
1021
+ # @!attribute [rw] stationary_camera
1022
+ # @return [::Boolean]
1023
+ # Whether the video has been captured from a stationary (i.e. non-moving)
1024
+ # camera. When set to true, might improve detection accuracy for moving
1025
+ # objects. Default: false.
1026
+ class StreamingLabelDetectionConfig
1027
+ include ::Google::Protobuf::MessageExts
1028
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1029
+ end
1030
+
1031
+ # Config for STREAMING_EXPLICIT_CONTENT_DETECTION.
1032
+ class StreamingExplicitContentDetectionConfig
1033
+ include ::Google::Protobuf::MessageExts
1034
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1035
+ end
1036
+
1037
+ # Config for STREAMING_OBJECT_TRACKING.
1038
+ class StreamingObjectTrackingConfig
1039
+ include ::Google::Protobuf::MessageExts
1040
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1041
+ end
1042
+
1043
+ # Config for STREAMING_AUTOML_ACTION_RECOGNITION.
1044
+ # @!attribute [rw] model_name
1045
+ # @return [::String]
1046
+ # Resource name of AutoML model.
1047
+ # Format: `projects/{project_id}/locations/{location_id}/models/{model_id}`
1048
+ class StreamingAutomlActionRecognitionConfig
1049
+ include ::Google::Protobuf::MessageExts
1050
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1051
+ end
1052
+
1053
+ # Config for STREAMING_AUTOML_CLASSIFICATION.
1054
+ # @!attribute [rw] model_name
1055
+ # @return [::String]
1056
+ # Resource name of AutoML model.
1057
+ # Format:
1058
+ # `projects/{project_number}/locations/{location_id}/models/{model_id}`
1059
+ class StreamingAutomlClassificationConfig
1060
+ include ::Google::Protobuf::MessageExts
1061
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1062
+ end
1063
+
1064
+ # Config for STREAMING_AUTOML_OBJECT_TRACKING.
1065
+ # @!attribute [rw] model_name
1066
+ # @return [::String]
1067
+ # Resource name of AutoML model.
1068
+ # Format: `projects/{project_id}/locations/{location_id}/models/{model_id}`
1069
+ class StreamingAutomlObjectTrackingConfig
1070
+ include ::Google::Protobuf::MessageExts
1071
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1072
+ end
1073
+
1074
+ # Config for streaming storage option.
1075
+ # @!attribute [rw] enable_storage_annotation_result
1076
+ # @return [::Boolean]
1077
+ # Enable streaming storage. Default: false.
1078
+ # @!attribute [rw] annotation_result_storage_directory
1079
+ # @return [::String]
1080
+ # Cloud Storage URI to store all annotation results for one client. Client
1081
+ # should specify this field as the top-level storage directory. Annotation
1082
+ # results of different sessions will be put into different sub-directories
1083
+ # denoted by project_name and session_id. All sub-directories will be auto
1084
+ # generated by program and will be made accessible to client in response
1085
+ # proto. URIs must be specified in the following format:
1086
+ # `gs://bucket-id/object-id` `bucket-id` should be a valid Cloud Storage
1087
+ # bucket created by client and bucket permission shall also be configured
1088
+ # properly. `object-id` can be arbitrary string that make sense to client.
1089
+ # Other URI formats will return error and cause Cloud Storage write failure.
1090
+ class StreamingStorageConfig
1091
+ include ::Google::Protobuf::MessageExts
1092
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1093
+ end
1094
+
1095
+ # Label detection mode.
1096
+ module LabelDetectionMode
1097
+ # Unspecified.
1098
+ LABEL_DETECTION_MODE_UNSPECIFIED = 0
1099
+
1100
+ # Detect shot-level labels.
1101
+ SHOT_MODE = 1
1102
+
1103
+ # Detect frame-level labels.
1104
+ FRAME_MODE = 2
1105
+
1106
+ # Detect both shot-level and frame-level labels.
1107
+ SHOT_AND_FRAME_MODE = 3
1108
+ end
1109
+
1110
+ # Bucketized representation of likelihood.
1111
+ module Likelihood
1112
+ # Unspecified likelihood.
1113
+ LIKELIHOOD_UNSPECIFIED = 0
1114
+
1115
+ # Very unlikely.
1116
+ VERY_UNLIKELY = 1
1117
+
1118
+ # Unlikely.
1119
+ UNLIKELY = 2
1120
+
1121
+ # Possible.
1122
+ POSSIBLE = 3
1123
+
1124
+ # Likely.
1125
+ LIKELY = 4
1126
+
1127
+ # Very likely.
1128
+ VERY_LIKELY = 5
1129
+ end
1130
+
1131
+ # Streaming video annotation feature.
1132
+ module StreamingFeature
1133
+ # Unspecified.
1134
+ STREAMING_FEATURE_UNSPECIFIED = 0
1135
+
1136
+ # Label detection. Detect objects, such as dog or flower.
1137
+ STREAMING_LABEL_DETECTION = 1
1138
+
1139
+ # Shot change detection.
1140
+ STREAMING_SHOT_CHANGE_DETECTION = 2
1141
+
1142
+ # Explicit content detection.
1143
+ STREAMING_EXPLICIT_CONTENT_DETECTION = 3
1144
+
1145
+ # Object detection and tracking.
1146
+ STREAMING_OBJECT_TRACKING = 4
1147
+
1148
+ # Action recognition based on AutoML model.
1149
+ STREAMING_AUTOML_ACTION_RECOGNITION = 23
1150
+
1151
+ # Video classification based on AutoML model.
1152
+ STREAMING_AUTOML_CLASSIFICATION = 21
1153
+
1154
+ # Object detection and tracking based on AutoML model.
1155
+ STREAMING_AUTOML_OBJECT_TRACKING = 22
1156
+ end
1157
+
1158
+ # Video annotation feature.
1159
+ module Feature
1160
+ # Unspecified.
1161
+ FEATURE_UNSPECIFIED = 0
1162
+
1163
+ # Label detection. Detect objects, such as dog or flower.
1164
+ LABEL_DETECTION = 1
1165
+
1166
+ # Shot change detection.
1167
+ SHOT_CHANGE_DETECTION = 2
1168
+
1169
+ # Explicit content detection.
1170
+ EXPLICIT_CONTENT_DETECTION = 3
1171
+
1172
+ # Human face detection.
1173
+ FACE_DETECTION = 4
1174
+
1175
+ # Speech transcription.
1176
+ SPEECH_TRANSCRIPTION = 6
1177
+
1178
+ # OCR text detection and tracking.
1179
+ TEXT_DETECTION = 7
1180
+
1181
+ # Object detection and tracking.
1182
+ OBJECT_TRACKING = 9
1183
+
1184
+ # Logo detection, tracking, and recognition.
1185
+ LOGO_RECOGNITION = 12
1186
+
1187
+ # Celebrity recognition.
1188
+ CELEBRITY_RECOGNITION = 13
1189
+
1190
+ # Person detection.
1191
+ PERSON_DETECTION = 14
1192
+ end
1193
+ end
1194
+ end
1195
+ end
1196
+ end