google-cloud-video_intelligence 0.20.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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 10c1feefa03317f5a7c4f335d7409d1bf3cc8d7c
4
+ data.tar.gz: 65514bf81d722dd357531f3f69e4b51476ce73ca
5
+ SHA512:
6
+ metadata.gz: 628794f1a5d7a97af0e4a0d95d47c69260c8a8d814d904355634c458beb66e6a7130e6eba8df04dc219ee062226d94d5e15105f8c7fbf2de2599da9aff848a03
7
+ data.tar.gz: 050f2a88ac3da05f14f7ac521f65ae547070b432cf6e944bf89040c25c568f95b80b4329ebc3c535dc90eef0ae3ec9fc96aa8cb29a711cbd72af977c82b850e2
data/.yardopts ADDED
@@ -0,0 +1,8 @@
1
+ --no-private
2
+ --title=Google Cloud Video Intelligence API
3
+ --exclude lib/google/cloud/videointelligence
4
+ --markup markdown
5
+
6
+ ./lib/**/*.rb
7
+ -
8
+ README.md
data/LICENSE ADDED
@@ -0,0 +1,201 @@
1
+ Apache License
2
+ Version 2.0, January 2004
3
+ http://www.apache.org/licenses/
4
+
5
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6
+
7
+ 1. Definitions.
8
+
9
+ "License" shall mean the terms and conditions for use, reproduction,
10
+ and distribution as defined by Sections 1 through 9 of this document.
11
+
12
+ "Licensor" shall mean the copyright owner or entity authorized by
13
+ the copyright owner that is granting the License.
14
+
15
+ "Legal Entity" shall mean the union of the acting entity and all
16
+ other entities that control, are controlled by, or are under common
17
+ control with that entity. For the purposes of this definition,
18
+ "control" means (i) the power, direct or indirect, to cause the
19
+ direction or management of such entity, whether by contract or
20
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
21
+ outstanding shares, or (iii) beneficial ownership of such entity.
22
+
23
+ "You" (or "Your") shall mean an individual or Legal Entity
24
+ exercising permissions granted by this License.
25
+
26
+ "Source" form shall mean the preferred form for making modifications,
27
+ including but not limited to software source code, documentation
28
+ source, and configuration files.
29
+
30
+ "Object" form shall mean any form resulting from mechanical
31
+ transformation or translation of a Source form, including but
32
+ not limited to compiled object code, generated documentation,
33
+ and conversions to other media types.
34
+
35
+ "Work" shall mean the work of authorship, whether in Source or
36
+ Object form, made available under the License, as indicated by a
37
+ copyright notice that is included in or attached to the work
38
+ (an example is provided in the Appendix below).
39
+
40
+ "Derivative Works" shall mean any work, whether in Source or Object
41
+ form, that is based on (or derived from) the Work and for which the
42
+ editorial revisions, annotations, elaborations, or other modifications
43
+ represent, as a whole, an original work of authorship. For the purposes
44
+ of this License, Derivative Works shall not include works that remain
45
+ separable from, or merely link (or bind by name) to the interfaces of,
46
+ the Work and Derivative Works thereof.
47
+
48
+ "Contribution" shall mean any work of authorship, including
49
+ the original version of the Work and any modifications or additions
50
+ to that Work or Derivative Works thereof, that is intentionally
51
+ submitted to Licensor for inclusion in the Work by the copyright owner
52
+ or by an individual or Legal Entity authorized to submit on behalf of
53
+ the copyright owner. For the purposes of this definition, "submitted"
54
+ means any form of electronic, verbal, or written communication sent
55
+ to the Licensor or its representatives, including but not limited to
56
+ communication on electronic mailing lists, source code control systems,
57
+ and issue tracking systems that are managed by, or on behalf of, the
58
+ Licensor for the purpose of discussing and improving the Work, but
59
+ excluding communication that is conspicuously marked or otherwise
60
+ designated in writing by the copyright owner as "Not a Contribution."
61
+
62
+ "Contributor" shall mean Licensor and any individual or Legal Entity
63
+ on behalf of whom a Contribution has been received by Licensor and
64
+ subsequently incorporated within the Work.
65
+
66
+ 2. Grant of Copyright License. Subject to the terms and conditions of
67
+ this License, each Contributor hereby grants to You a perpetual,
68
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69
+ copyright license to reproduce, prepare Derivative Works of,
70
+ publicly display, publicly perform, sublicense, and distribute the
71
+ Work and such Derivative Works in Source or Object form.
72
+
73
+ 3. Grant of Patent License. Subject to the terms and conditions of
74
+ this License, each Contributor hereby grants to You a perpetual,
75
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76
+ (except as stated in this section) patent license to make, have made,
77
+ use, offer to sell, sell, import, and otherwise transfer the Work,
78
+ where such license applies only to those patent claims licensable
79
+ by such Contributor that are necessarily infringed by their
80
+ Contribution(s) alone or by combination of their Contribution(s)
81
+ with the Work to which such Contribution(s) was submitted. If You
82
+ institute patent litigation against any entity (including a
83
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
84
+ or a Contribution incorporated within the Work constitutes direct
85
+ or contributory patent infringement, then any patent licenses
86
+ granted to You under this License for that Work shall terminate
87
+ as of the date such litigation is filed.
88
+
89
+ 4. Redistribution. You may reproduce and distribute copies of the
90
+ Work or Derivative Works thereof in any medium, with or without
91
+ modifications, and in Source or Object form, provided that You
92
+ meet the following conditions:
93
+
94
+ (a) You must give any other recipients of the Work or
95
+ Derivative Works a copy of this License; and
96
+
97
+ (b) You must cause any modified files to carry prominent notices
98
+ stating that You changed the files; and
99
+
100
+ (c) You must retain, in the Source form of any Derivative Works
101
+ that You distribute, all copyright, patent, trademark, and
102
+ attribution notices from the Source form of the Work,
103
+ excluding those notices that do not pertain to any part of
104
+ the Derivative Works; and
105
+
106
+ (d) If the Work includes a "NOTICE" text file as part of its
107
+ distribution, then any Derivative Works that You distribute must
108
+ include a readable copy of the attribution notices contained
109
+ within such NOTICE file, excluding those notices that do not
110
+ pertain to any part of the Derivative Works, in at least one
111
+ of the following places: within a NOTICE text file distributed
112
+ as part of the Derivative Works; within the Source form or
113
+ documentation, if provided along with the Derivative Works; or,
114
+ within a display generated by the Derivative Works, if and
115
+ wherever such third-party notices normally appear. The contents
116
+ of the NOTICE file are for informational purposes only and
117
+ do not modify the License. You may add Your own attribution
118
+ notices within Derivative Works that You distribute, alongside
119
+ or as an addendum to the NOTICE text from the Work, provided
120
+ that such additional attribution notices cannot be construed
121
+ as modifying the License.
122
+
123
+ You may add Your own copyright statement to Your modifications and
124
+ may provide additional or different license terms and conditions
125
+ for use, reproduction, or distribution of Your modifications, or
126
+ for any such Derivative Works as a whole, provided Your use,
127
+ reproduction, and distribution of the Work otherwise complies with
128
+ the conditions stated in this License.
129
+
130
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
131
+ any Contribution intentionally submitted for inclusion in the Work
132
+ by You to the Licensor shall be under the terms and conditions of
133
+ this License, without any additional terms or conditions.
134
+ Notwithstanding the above, nothing herein shall supersede or modify
135
+ the terms of any separate license agreement you may have executed
136
+ with Licensor regarding such Contributions.
137
+
138
+ 6. Trademarks. This License does not grant permission to use the trade
139
+ names, trademarks, service marks, or product names of the Licensor,
140
+ except as required for reasonable and customary use in describing the
141
+ origin of the Work and reproducing the content of the NOTICE file.
142
+
143
+ 7. Disclaimer of Warranty. Unless required by applicable law or
144
+ agreed to in writing, Licensor provides the Work (and each
145
+ Contributor provides its Contributions) on an "AS IS" BASIS,
146
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147
+ implied, including, without limitation, any warranties or conditions
148
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149
+ PARTICULAR PURPOSE. You are solely responsible for determining the
150
+ appropriateness of using or redistributing the Work and assume any
151
+ risks associated with Your exercise of permissions under this License.
152
+
153
+ 8. Limitation of Liability. In no event and under no legal theory,
154
+ whether in tort (including negligence), contract, or otherwise,
155
+ unless required by applicable law (such as deliberate and grossly
156
+ negligent acts) or agreed to in writing, shall any Contributor be
157
+ liable to You for damages, including any direct, indirect, special,
158
+ incidental, or consequential damages of any character arising as a
159
+ result of this License or out of the use or inability to use the
160
+ Work (including but not limited to damages for loss of goodwill,
161
+ work stoppage, computer failure or malfunction, or any and all
162
+ other commercial damages or losses), even if such Contributor
163
+ has been advised of the possibility of such damages.
164
+
165
+ 9. Accepting Warranty or Additional Liability. While redistributing
166
+ the Work or Derivative Works thereof, You may choose to offer,
167
+ and charge a fee for, acceptance of support, warranty, indemnity,
168
+ or other liability obligations and/or rights consistent with this
169
+ License. However, in accepting such obligations, You may act only
170
+ on Your own behalf and on Your sole responsibility, not on behalf
171
+ of any other Contributor, and only if You agree to indemnify,
172
+ defend, and hold each Contributor harmless for any liability
173
+ incurred by, or claims asserted against, such Contributor by reason
174
+ of your accepting any such warranty or additional liability.
175
+
176
+ END OF TERMS AND CONDITIONS
177
+
178
+ APPENDIX: How to apply the Apache License to your work.
179
+
180
+ To apply the Apache License to your work, attach the following
181
+ boilerplate notice, with the fields enclosed by brackets "[]"
182
+ replaced with your own identifying information. (Don't include
183
+ the brackets!) The text should be enclosed in the appropriate
184
+ comment syntax for the file format. We also recommend that a
185
+ file or class name and description of purpose be included on the
186
+ same "printed page" as the copyright notice for easier
187
+ identification within third-party archives.
188
+
189
+ Copyright [yyyy] [name of copyright owner]
190
+
191
+ Licensed under the Apache License, Version 2.0 (the "License");
192
+ you may not use this file except in compliance with the License.
193
+ You may obtain a copy of the License at
194
+
195
+ http://www.apache.org/licenses/LICENSE-2.0
196
+
197
+ Unless required by applicable law or agreed to in writing, software
198
+ distributed under the License is distributed on an "AS IS" BASIS,
199
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
200
+ See the License for the specific language governing permissions and
201
+ limitations under the License.
data/README.md ADDED
@@ -0,0 +1,25 @@
1
+ # Ruby Client for Google Cloud Video Intelligence API ([Alpha](https://github.com/GoogleCloudPlatform/google-cloud-ruby#versioning))
2
+
3
+ Idiomatic Ruby client for [Google Cloud Video Intelligence API][Product Documentation]
4
+ - [Client Library Documentation][]
5
+ - [Product Documentation][]
6
+
7
+ ## Quick Start
8
+ In order to use this library, you first need to go through the following steps:
9
+
10
+ 1. [Select or create a Cloud Platform project.](https://console.cloud.google.com/project)
11
+ 2. [Enable the video-intelligence api.](https://console.cloud.google.com/apis/api/video-intelligence)
12
+ 3. [Setup Authentication.](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/google-cloud/master/guides/authentication)
13
+
14
+ ### Installation
15
+ ```
16
+ $ gem install google-cloud-video_intelligence
17
+ ```
18
+
19
+ ### Next Steps
20
+ - Read the [Client Library Documentation][] for Google Cloud Video Intelligence API to see other available methods on the client.
21
+ - Read the [Google Cloud Video Intelligence API Product documentation][Product Documentation] to learn more about the product and see How-to Guides.
22
+ - View this [repository's main README](https://github.com/GoogleCloudPlatform/google-cloud-ruby/blob/master/README.md) to see the full list of Cloud APIs that we cover.
23
+
24
+ [Client Library Documentation]: https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/google-cloud-video_intelligence/latest/google/cloud/videointelligence/v1beta1
25
+ [Product Documentation]: https://cloud.google.com/video-intelligence
@@ -0,0 +1,14 @@
1
+ # Copyright 2017, Google Inc. All rights reserved.
2
+ # Licensed under the Apache License, Version 2.0 (the "License");
3
+ # you may not use this file except in compliance with the License.
4
+ # You may obtain a copy of the License at
5
+ #
6
+ # http://www.apache.org/licenses/LICENSE-2.0
7
+ #
8
+ # Unless required by applicable law or agreed to in writing, software
9
+ # distributed under the License is distributed on an "AS IS" BASIS,
10
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ # See the License for the specific language governing permissions and
12
+ # limitations under the License.
13
+
14
+ require "google/cloud/video_intelligence/v1beta1/video_intelligence_service_client"
@@ -0,0 +1,321 @@
1
+ # Copyright 2017, Google Inc. All rights reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ module Google
16
+ module Cloud
17
+ module Videointelligence
18
+ module V1beta1
19
+ # Video annotation request.
20
+ # @!attribute [rw] input_uri
21
+ # @return [String]
22
+ # Input video location. Currently, only
23
+ # {Google Cloud Storage}[https://cloud.google.com/storage/] URIs are
24
+ # supported, which must be specified in the following format:
25
+ # +gs://bucket-id/object-id+ (other URI formats return
26
+ # Google::Rpc::Code::INVALID_ARGUMENT). For more information, see
27
+ # {Request URIs}[https://cloud.google.com/storage/docs/reference-uris].
28
+ # A video URI may include wildcards in +object-id+, and thus identify
29
+ # multiple videos. Supported wildcards: '*' to match 0 or more characters;
30
+ # '?' to match 1 character. If unset, the input video should be embedded
31
+ # in the request as +input_content+. If set, +input_content+ should be unset.
32
+ # @!attribute [rw] input_content
33
+ # @return [String]
34
+ # The video data bytes. Encoding: base64. If unset, the input video(s)
35
+ # should be specified via +input_uri+. If set, +input_uri+ should be unset.
36
+ # @!attribute [rw] features
37
+ # @return [Array<Google::Cloud::Videointelligence::V1beta1::Feature>]
38
+ # Requested video annotation features.
39
+ # @!attribute [rw] video_context
40
+ # @return [Google::Cloud::Videointelligence::V1beta1::VideoContext]
41
+ # Additional video context and/or feature-specific parameters.
42
+ # @!attribute [rw] output_uri
43
+ # @return [String]
44
+ # Optional location where the output (in JSON format) should be stored.
45
+ # Currently, only {Google Cloud Storage}[https://cloud.google.com/storage/]
46
+ # URIs are supported, which must be specified in the following format:
47
+ # +gs://bucket-id/object-id+ (other URI formats return
48
+ # Google::Rpc::Code::INVALID_ARGUMENT). For more information, see
49
+ # {Request URIs}[https://cloud.google.com/storage/docs/reference-uris].
50
+ # @!attribute [rw] location_id
51
+ # @return [String]
52
+ # Optional cloud region where annotation should take place. Supported cloud
53
+ # regions: +us-east1+, +us-west1+, +europe-west1+, +asia-east1+. If no region
54
+ # is specified, a region will be determined based on video file location.
55
+ class AnnotateVideoRequest; end
56
+
57
+ # Video context and/or feature-specific parameters.
58
+ # @!attribute [rw] segments
59
+ # @return [Array<Google::Cloud::Videointelligence::V1beta1::VideoSegment>]
60
+ # Video segments to annotate. The segments may overlap and are not required
61
+ # to be contiguous or span the whole video. If unspecified, each video
62
+ # is treated as a single segment.
63
+ # @!attribute [rw] label_detection_mode
64
+ # @return [Google::Cloud::Videointelligence::V1beta1::LabelDetectionMode]
65
+ # If label detection has been requested, what labels should be detected
66
+ # in addition to video-level labels or segment-level labels. If unspecified,
67
+ # defaults to +SHOT_MODE+.
68
+ # @!attribute [rw] stationary_camera
69
+ # @return [true, false]
70
+ # Whether the video has been shot from a stationary (i.e. non-moving) camera.
71
+ # When set to true, might improve detection accuracy for moving objects.
72
+ # @!attribute [rw] label_detection_model
73
+ # @return [String]
74
+ # Model to use for label detection.
75
+ # Supported values: "latest" and "stable" (the default).
76
+ # @!attribute [rw] face_detection_model
77
+ # @return [String]
78
+ # Model to use for face detection.
79
+ # Supported values: "latest" and "stable" (the default).
80
+ # @!attribute [rw] shot_change_detection_model
81
+ # @return [String]
82
+ # Model to use for shot change detection.
83
+ # Supported values: "latest" and "stable" (the default).
84
+ # @!attribute [rw] safe_search_detection_model
85
+ # @return [String]
86
+ # Model to use for safe search detection.
87
+ # Supported values: "latest" and "stable" (the default).
88
+ class VideoContext; end
89
+
90
+ # Video segment.
91
+ # @!attribute [rw] start_time_offset
92
+ # @return [Integer]
93
+ # Start offset in microseconds (inclusive). Unset means 0.
94
+ # @!attribute [rw] end_time_offset
95
+ # @return [Integer]
96
+ # End offset in microseconds (inclusive). Unset means 0.
97
+ class VideoSegment; end
98
+
99
+ # Label location.
100
+ # @!attribute [rw] segment
101
+ # @return [Google::Cloud::Videointelligence::V1beta1::VideoSegment]
102
+ # Video segment. Set to [-1, -1] for video-level labels.
103
+ # Set to [timestamp, timestamp] for frame-level labels.
104
+ # Otherwise, corresponds to one of +AnnotateSpec.segments+
105
+ # (if specified) or to shot boundaries (if requested).
106
+ # @!attribute [rw] confidence
107
+ # @return [Float]
108
+ # Confidence that the label is accurate. Range: [0, 1].
109
+ # @!attribute [rw] level
110
+ # @return [Google::Cloud::Videointelligence::V1beta1::LabelLevel]
111
+ # Label level.
112
+ class LabelLocation; end
113
+
114
+ # Label annotation.
115
+ # @!attribute [rw] description
116
+ # @return [String]
117
+ # Textual description, e.g. +Fixed-gear bicycle+.
118
+ # @!attribute [rw] language_code
119
+ # @return [String]
120
+ # Language code for +description+ in BCP-47 format.
121
+ # @!attribute [rw] locations
122
+ # @return [Array<Google::Cloud::Videointelligence::V1beta1::LabelLocation>]
123
+ # Where the label was detected and with what confidence.
124
+ class LabelAnnotation; end
125
+
126
+ # Safe search annotation (based on per-frame visual signals only).
127
+ # If no unsafe content has been detected in a frame, no annotations
128
+ # are present for that frame. If only some types of unsafe content
129
+ # have been detected in a frame, the likelihood is set to +UNKNOWN+
130
+ # for all other types of unsafe content.
131
+ # @!attribute [rw] adult
132
+ # @return [Google::Cloud::Videointelligence::V1beta1::Likelihood]
133
+ # Likelihood of adult content.
134
+ # @!attribute [rw] spoof
135
+ # @return [Google::Cloud::Videointelligence::V1beta1::Likelihood]
136
+ # Likelihood that an obvious modification was made to the original
137
+ # version to make it appear funny or offensive.
138
+ # @!attribute [rw] medical
139
+ # @return [Google::Cloud::Videointelligence::V1beta1::Likelihood]
140
+ # Likelihood of medical content.
141
+ # @!attribute [rw] violent
142
+ # @return [Google::Cloud::Videointelligence::V1beta1::Likelihood]
143
+ # Likelihood of violent content.
144
+ # @!attribute [rw] racy
145
+ # @return [Google::Cloud::Videointelligence::V1beta1::Likelihood]
146
+ # Likelihood of racy content.
147
+ # @!attribute [rw] time_offset
148
+ # @return [Integer]
149
+ # Video time offset in microseconds.
150
+ class SafeSearchAnnotation; end
151
+
152
+ # Bounding box.
153
+ # @!attribute [rw] left
154
+ # @return [Integer]
155
+ # Left X coordinate.
156
+ # @!attribute [rw] right
157
+ # @return [Integer]
158
+ # Right X coordinate.
159
+ # @!attribute [rw] bottom
160
+ # @return [Integer]
161
+ # Bottom Y coordinate.
162
+ # @!attribute [rw] top
163
+ # @return [Integer]
164
+ # Top Y coordinate.
165
+ class BoundingBox; end
166
+
167
+ # Face location.
168
+ # @!attribute [rw] bounding_box
169
+ # @return [Google::Cloud::Videointelligence::V1beta1::BoundingBox]
170
+ # Bounding box in a frame.
171
+ # @!attribute [rw] time_offset
172
+ # @return [Integer]
173
+ # Video time offset in microseconds.
174
+ class FaceLocation; end
175
+
176
+ # Face annotation.
177
+ # @!attribute [rw] thumbnail
178
+ # @return [String]
179
+ # Thumbnail of a representative face view (in JPEG format). Encoding: base64.
180
+ # @!attribute [rw] segments
181
+ # @return [Array<Google::Cloud::Videointelligence::V1beta1::VideoSegment>]
182
+ # All locations where a face was detected.
183
+ # Faces are detected and tracked on a per-video basis
184
+ # (as opposed to across multiple videos).
185
+ # @!attribute [rw] locations
186
+ # @return [Array<Google::Cloud::Videointelligence::V1beta1::FaceLocation>]
187
+ # Face locations at one frame per second.
188
+ class FaceAnnotation; end
189
+
190
+ # Annotation results for a single video.
191
+ # @!attribute [rw] input_uri
192
+ # @return [String]
193
+ # Video file location in
194
+ # {Google Cloud Storage}[https://cloud.google.com/storage/].
195
+ # @!attribute [rw] label_annotations
196
+ # @return [Array<Google::Cloud::Videointelligence::V1beta1::LabelAnnotation>]
197
+ # Label annotations. There is exactly one element for each unique label.
198
+ # @!attribute [rw] face_annotations
199
+ # @return [Array<Google::Cloud::Videointelligence::V1beta1::FaceAnnotation>]
200
+ # Face annotations. There is exactly one element for each unique face.
201
+ # @!attribute [rw] shot_annotations
202
+ # @return [Array<Google::Cloud::Videointelligence::V1beta1::VideoSegment>]
203
+ # Shot annotations. Each shot is represented as a video segment.
204
+ # @!attribute [rw] safe_search_annotations
205
+ # @return [Array<Google::Cloud::Videointelligence::V1beta1::SafeSearchAnnotation>]
206
+ # Safe search annotations.
207
+ # @!attribute [rw] error
208
+ # @return [Google::Rpc::Status]
209
+ # If set, indicates an error. Note that for a single +AnnotateVideoRequest+
210
+ # some videos may succeed and some may fail.
211
+ class VideoAnnotationResults; end
212
+
213
+ # Video annotation response. Included in the +response+
214
+ # field of the +Operation+ returned by the +GetOperation+
215
+ # call of the +google::longrunning::Operations+ service.
216
+ # @!attribute [rw] annotation_results
217
+ # @return [Array<Google::Cloud::Videointelligence::V1beta1::VideoAnnotationResults>]
218
+ # Annotation results for all videos specified in +AnnotateVideoRequest+.
219
+ class AnnotateVideoResponse; end
220
+
221
+ # Annotation progress for a single video.
222
+ # @!attribute [rw] input_uri
223
+ # @return [String]
224
+ # Video file location in
225
+ # {Google Cloud Storage}[https://cloud.google.com/storage/].
226
+ # @!attribute [rw] progress_percent
227
+ # @return [Integer]
228
+ # Approximate percentage processed thus far.
229
+ # Guaranteed to be 100 when fully processed.
230
+ # @!attribute [rw] start_time
231
+ # @return [Google::Protobuf::Timestamp]
232
+ # Time when the request was received.
233
+ # @!attribute [rw] update_time
234
+ # @return [Google::Protobuf::Timestamp]
235
+ # Time of the most recent update.
236
+ class VideoAnnotationProgress; end
237
+
238
+ # Video annotation progress. Included in the +metadata+
239
+ # field of the +Operation+ returned by the +GetOperation+
240
+ # call of the +google::longrunning::Operations+ service.
241
+ # @!attribute [rw] annotation_progress
242
+ # @return [Array<Google::Cloud::Videointelligence::V1beta1::VideoAnnotationProgress>]
243
+ # Progress metadata for all videos specified in +AnnotateVideoRequest+.
244
+ class AnnotateVideoProgress; end
245
+
246
+ # Video annotation feature.
247
+ module Feature
248
+ # Unspecified.
249
+ FEATURE_UNSPECIFIED = 0
250
+
251
+ # Label detection. Detect objects, such as dog or flower.
252
+ LABEL_DETECTION = 1
253
+
254
+ # Human face detection and tracking.
255
+ FACE_DETECTION = 2
256
+
257
+ # Shot change detection.
258
+ SHOT_CHANGE_DETECTION = 3
259
+
260
+ # Safe search detection.
261
+ SAFE_SEARCH_DETECTION = 4
262
+ end
263
+
264
+ # Label level (scope).
265
+ module LabelLevel
266
+ # Unspecified.
267
+ LABEL_LEVEL_UNSPECIFIED = 0
268
+
269
+ # Video-level. Corresponds to the whole video.
270
+ VIDEO_LEVEL = 1
271
+
272
+ # Segment-level. Corresponds to one of +AnnotateSpec.segments+.
273
+ SEGMENT_LEVEL = 2
274
+
275
+ # Shot-level. Corresponds to a single shot (i.e. a series of frames
276
+ # without a major camera position or background change).
277
+ SHOT_LEVEL = 3
278
+
279
+ # Frame-level. Corresponds to a single video frame.
280
+ FRAME_LEVEL = 4
281
+ end
282
+
283
+ # Label detection mode.
284
+ module LabelDetectionMode
285
+ # Unspecified.
286
+ LABEL_DETECTION_MODE_UNSPECIFIED = 0
287
+
288
+ # Detect shot-level labels.
289
+ SHOT_MODE = 1
290
+
291
+ # Detect frame-level labels.
292
+ FRAME_MODE = 2
293
+
294
+ # Detect both shot-level and frame-level labels.
295
+ SHOT_AND_FRAME_MODE = 3
296
+ end
297
+
298
+ # Bucketized representation of likelihood.
299
+ module Likelihood
300
+ # Unknown likelihood.
301
+ UNKNOWN = 0
302
+
303
+ # Very unlikely.
304
+ VERY_UNLIKELY = 1
305
+
306
+ # Unlikely.
307
+ UNLIKELY = 2
308
+
309
+ # Possible.
310
+ POSSIBLE = 3
311
+
312
+ # Likely.
313
+ LIKELY = 4
314
+
315
+ # Very likely.
316
+ VERY_LIKELY = 5
317
+ end
318
+ end
319
+ end
320
+ end
321
+ end