google-cloud-video_intelligence 1.0.0 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.yardopts +4 -3
- data/README.md +39 -2
- data/lib/google/cloud/video_intelligence.rb +33 -3
- data/lib/google/cloud/video_intelligence/credentials.rb +6 -10
- data/lib/google/cloud/video_intelligence/v1.rb +102 -66
- data/lib/google/cloud/video_intelligence/v1/credentials.rb +40 -0
- data/lib/google/cloud/video_intelligence/v1/doc/google/cloud/videointelligence/v1/video_intelligence.rb +1 -12
- data/lib/google/cloud/video_intelligence/v1/doc/google/longrunning/operations.rb +92 -0
- data/lib/google/cloud/video_intelligence/v1/doc/google/protobuf/any.rb +1 -1
- data/lib/google/cloud/video_intelligence/v1/doc/google/protobuf/duration.rb +1 -1
- data/lib/google/cloud/video_intelligence/v1/doc/google/rpc/status.rb +1 -1
- data/lib/google/cloud/video_intelligence/v1/doc/overview.rb +28 -3
- data/lib/google/cloud/video_intelligence/v1/video_intelligence_service_client.rb +29 -13
- data/lib/google/cloud/video_intelligence/v1beta1.rb +64 -28
- data/lib/google/cloud/video_intelligence/v1beta1/credentials.rb +40 -0
- data/lib/google/cloud/video_intelligence/v1beta1/doc/google/cloud/videointelligence/v1beta1/video_intelligence.rb +1 -12
- data/lib/google/cloud/video_intelligence/v1beta1/doc/google/longrunning/operations.rb +92 -0
- data/lib/google/cloud/video_intelligence/v1beta1/doc/google/protobuf/any.rb +1 -1
- data/lib/google/cloud/video_intelligence/v1beta1/doc/google/rpc/status.rb +1 -1
- data/lib/google/cloud/video_intelligence/v1beta1/doc/overview.rb +28 -3
- data/lib/google/cloud/video_intelligence/v1beta1/video_intelligence_service_client.rb +25 -12
- data/lib/google/cloud/video_intelligence/v1beta2.rb +64 -28
- data/lib/google/cloud/video_intelligence/v1beta2/credentials.rb +40 -0
- data/lib/google/cloud/video_intelligence/v1beta2/doc/google/cloud/videointelligence/v1beta2/video_intelligence.rb +1 -12
- data/lib/google/cloud/video_intelligence/v1beta2/doc/google/longrunning/operations.rb +92 -0
- data/lib/google/cloud/video_intelligence/v1beta2/doc/google/protobuf/any.rb +1 -1
- data/lib/google/cloud/video_intelligence/v1beta2/doc/google/protobuf/duration.rb +1 -1
- data/lib/google/cloud/video_intelligence/v1beta2/doc/google/rpc/status.rb +1 -1
- data/lib/google/cloud/video_intelligence/v1beta2/doc/overview.rb +28 -3
- data/lib/google/cloud/video_intelligence/v1beta2/video_intelligence_service_client.rb +29 -13
- data/lib/google/cloud/videointelligence/v1/video_intelligence_services_pb.rb +1 -1
- data/lib/google/cloud/videointelligence/v1beta1/video_intelligence_services_pb.rb +1 -1
- data/lib/google/cloud/videointelligence/v1beta2/video_intelligence_services_pb.rb +1 -1
- metadata +45 -11
@@ -1,4 +1,4 @@
|
|
1
|
-
# Copyright
|
1
|
+
# Copyright 2018 Google LLC
|
2
2
|
#
|
3
3
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
4
|
# you may not use this file except in compliance with the License.
|
@@ -17,7 +17,7 @@ module Google
|
|
17
17
|
# rubocop:disable LineLength
|
18
18
|
|
19
19
|
##
|
20
|
-
# # Ruby Client for Google Cloud Video Intelligence API ([
|
20
|
+
# # Ruby Client for Google Cloud Video Intelligence API ([GA](https://github.com/GoogleCloudPlatform/google-cloud-ruby#versioning))
|
21
21
|
#
|
22
22
|
# [Google Cloud Video Intelligence API][Product Documentation]:
|
23
23
|
# Google Cloud Video Intelligence API.
|
@@ -29,7 +29,7 @@ module Google
|
|
29
29
|
#
|
30
30
|
# 1. [Select or create a Cloud Platform project.](https://console.cloud.google.com/project)
|
31
31
|
# 2. [Enable billing for your project.](https://cloud.google.com/billing/docs/how-to/modify-project#enable_billing_for_a_project)
|
32
|
-
# 3. [Enable the Google Cloud Video Intelligence API.](https://console.cloud.google.com/apis/
|
32
|
+
# 3. [Enable the Google Cloud Video Intelligence API.](https://console.cloud.google.com/apis/library/videointelligence.googleapis.com)
|
33
33
|
# 4. [Setup Authentication.](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/google-cloud/master/guides/authentication)
|
34
34
|
#
|
35
35
|
# ### Installation
|
@@ -45,6 +45,31 @@ module Google
|
|
45
45
|
#
|
46
46
|
# [Product Documentation]: https://cloud.google.com/video-intelligence
|
47
47
|
#
|
48
|
+
# ## Enabling Logging
|
49
|
+
#
|
50
|
+
# To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library.
|
51
|
+
# The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/stdlib-2.5.0/libdoc/logger/rdoc/Logger.html) as shown below,
|
52
|
+
# or a [`Google::Cloud::Logging::Logger`](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/google-cloud-logging/latest/google/cloud/logging/logger)
|
53
|
+
# that will write logs to [Stackdriver Logging](https://cloud.google.com/logging/). See [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb)
|
54
|
+
# and the gRPC [spec_helper.rb](https://github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb) for additional information.
|
55
|
+
#
|
56
|
+
# Configuring a Ruby stdlib logger:
|
57
|
+
#
|
58
|
+
# ```ruby
|
59
|
+
# require "logger"
|
60
|
+
#
|
61
|
+
# module MyLogger
|
62
|
+
# LOGGER = Logger.new $stderr, level: Logger::WARN
|
63
|
+
# def logger
|
64
|
+
# LOGGER
|
65
|
+
# end
|
66
|
+
# end
|
67
|
+
#
|
68
|
+
# # Define a gRPC module-level logger method before grpc/logconfig.rb loads.
|
69
|
+
# module GRPC
|
70
|
+
# extend MyLogger
|
71
|
+
# end
|
72
|
+
# ```
|
48
73
|
#
|
49
74
|
module VideoIntelligence
|
50
75
|
module V1beta2
|
@@ -1,4 +1,4 @@
|
|
1
|
-
# Copyright
|
1
|
+
# Copyright 2018 Google LLC
|
2
2
|
#
|
3
3
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
4
|
# you may not use this file except in compliance with the License.
|
@@ -18,9 +18,6 @@
|
|
18
18
|
# and updates to that file get reflected here through a refresh process.
|
19
19
|
# For the short term, the refresh process will only be runnable by Google
|
20
20
|
# engineers.
|
21
|
-
#
|
22
|
-
# The only allowed edits are to method and file documentation. A 3-way
|
23
|
-
# merge preserves those additions if the generated source changes.
|
24
21
|
|
25
22
|
require "json"
|
26
23
|
require "pathname"
|
@@ -30,7 +27,7 @@ require "google/gax/operation"
|
|
30
27
|
require "google/longrunning/operations_client"
|
31
28
|
|
32
29
|
require "google/cloud/videointelligence/v1beta2/video_intelligence_pb"
|
33
|
-
require "google/cloud/video_intelligence/credentials"
|
30
|
+
require "google/cloud/video_intelligence/v1beta2/credentials"
|
34
31
|
|
35
32
|
module Google
|
36
33
|
module Cloud
|
@@ -49,6 +46,9 @@ module Google
|
|
49
46
|
# The default port of the service.
|
50
47
|
DEFAULT_SERVICE_PORT = 443
|
51
48
|
|
49
|
+
# The default set of gRPC interceptors.
|
50
|
+
GRPC_INTERCEPTORS = []
|
51
|
+
|
52
52
|
DEFAULT_TIMEOUT = 30
|
53
53
|
|
54
54
|
# The scopes needed to make gRPC calls to all of the methods defined in
|
@@ -57,8 +57,10 @@ module Google
|
|
57
57
|
"https://www.googleapis.com/auth/cloud-platform"
|
58
58
|
].freeze
|
59
59
|
|
60
|
+
# @private
|
60
61
|
class OperationsClient < Google::Longrunning::OperationsClient
|
61
|
-
SERVICE_ADDRESS = SERVICE_ADDRESS
|
62
|
+
self::SERVICE_ADDRESS = VideoIntelligenceServiceClient::SERVICE_ADDRESS
|
63
|
+
self::GRPC_INTERCEPTORS = VideoIntelligenceServiceClient::GRPC_INTERCEPTORS
|
62
64
|
end
|
63
65
|
|
64
66
|
# @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
|
@@ -85,11 +87,18 @@ module Google
|
|
85
87
|
# or the specified config is missing data points.
|
86
88
|
# @param timeout [Numeric]
|
87
89
|
# The default timeout, in seconds, for calls made through this client.
|
90
|
+
# @param metadata [Hash]
|
91
|
+
# Default metadata to be sent with each request. This can be overridden on a per call basis.
|
92
|
+
# @param exception_transformer [Proc]
|
93
|
+
# An optional proc that intercepts any exceptions raised during an API call to inject
|
94
|
+
# custom error handling.
|
88
95
|
def initialize \
|
89
96
|
credentials: nil,
|
90
97
|
scopes: ALL_SCOPES,
|
91
98
|
client_config: {},
|
92
99
|
timeout: DEFAULT_TIMEOUT,
|
100
|
+
metadata: nil,
|
101
|
+
exception_transformer: nil,
|
93
102
|
lib_name: nil,
|
94
103
|
lib_version: ""
|
95
104
|
# These require statements are intentionally placed here to initialize
|
@@ -98,7 +107,7 @@ module Google
|
|
98
107
|
require "google/gax/grpc"
|
99
108
|
require "google/cloud/videointelligence/v1beta2/video_intelligence_services_pb"
|
100
109
|
|
101
|
-
credentials ||= Google::Cloud::VideoIntelligence::Credentials.default
|
110
|
+
credentials ||= Google::Cloud::VideoIntelligence::V1beta2::Credentials.default
|
102
111
|
|
103
112
|
@operations_client = OperationsClient.new(
|
104
113
|
credentials: credentials,
|
@@ -110,7 +119,7 @@ module Google
|
|
110
119
|
)
|
111
120
|
|
112
121
|
if credentials.is_a?(String) || credentials.is_a?(Hash)
|
113
|
-
updater_proc = Google::Cloud::VideoIntelligence::Credentials.new(credentials).updater_proc
|
122
|
+
updater_proc = Google::Cloud::VideoIntelligence::V1beta2::Credentials.new(credentials).updater_proc
|
114
123
|
end
|
115
124
|
if credentials.is_a?(GRPC::Core::Channel)
|
116
125
|
channel = credentials
|
@@ -134,6 +143,7 @@ module Google
|
|
134
143
|
google_api_client.freeze
|
135
144
|
|
136
145
|
headers = { :"x-goog-api-client" => google_api_client }
|
146
|
+
headers.merge!(metadata) unless metadata.nil?
|
137
147
|
client_config_file = Pathname.new(__dir__).join(
|
138
148
|
"video_intelligence_service_client_config.json"
|
139
149
|
)
|
@@ -145,13 +155,14 @@ module Google
|
|
145
155
|
Google::Gax::Grpc::STATUS_CODE_NAMES,
|
146
156
|
timeout,
|
147
157
|
errors: Google::Gax::Grpc::API_ERRORS,
|
148
|
-
|
158
|
+
metadata: headers
|
149
159
|
)
|
150
160
|
end
|
151
161
|
|
152
162
|
# Allow overriding the service path/port in subclasses.
|
153
163
|
service_path = self.class::SERVICE_ADDRESS
|
154
164
|
port = self.class::DEFAULT_SERVICE_PORT
|
165
|
+
interceptors = self.class::GRPC_INTERCEPTORS
|
155
166
|
@video_intelligence_service_stub = Google::Gax::Grpc.create_stub(
|
156
167
|
service_path,
|
157
168
|
port,
|
@@ -159,12 +170,14 @@ module Google
|
|
159
170
|
channel: channel,
|
160
171
|
updater_proc: updater_proc,
|
161
172
|
scopes: scopes,
|
173
|
+
interceptors: interceptors,
|
162
174
|
&Google::Cloud::Videointelligence::V1beta2::VideoIntelligenceService::Stub.method(:new)
|
163
175
|
)
|
164
176
|
|
165
177
|
@annotate_video = Google::Gax.create_api_call(
|
166
178
|
@video_intelligence_service_stub.method(:annotate_video),
|
167
|
-
defaults["annotate_video"]
|
179
|
+
defaults["annotate_video"],
|
180
|
+
exception_transformer: exception_transformer
|
168
181
|
)
|
169
182
|
end
|
170
183
|
|
@@ -213,12 +226,15 @@ module Google
|
|
213
226
|
# @return [Google::Gax::Operation]
|
214
227
|
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
215
228
|
# @example
|
216
|
-
# require "google/cloud/video_intelligence
|
229
|
+
# require "google/cloud/video_intelligence"
|
217
230
|
#
|
218
|
-
# video_intelligence_service_client = Google::Cloud::VideoIntelligence
|
231
|
+
# video_intelligence_service_client = Google::Cloud::VideoIntelligence.new(version: :v1beta2)
|
232
|
+
# input_uri = "gs://demomaker/cat.mp4"
|
233
|
+
# features_element = :LABEL_DETECTION
|
234
|
+
# features = [features_element]
|
219
235
|
#
|
220
236
|
# # Register a callback during the method call.
|
221
|
-
# operation = video_intelligence_service_client.annotate_video do |op|
|
237
|
+
# operation = video_intelligence_service_client.annotate_video(input_uri: input_uri, features: features) do |op|
|
222
238
|
# raise op.results.message if op.error?
|
223
239
|
# op_results = op.results
|
224
240
|
# # Process the results.
|
@@ -7,7 +7,7 @@
|
|
7
7
|
# you may not use this file except in compliance with the License.
|
8
8
|
# You may obtain a copy of the License at
|
9
9
|
#
|
10
|
-
#
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
11
11
|
#
|
12
12
|
# Unless required by applicable law or agreed to in writing, software
|
13
13
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
@@ -7,7 +7,7 @@
|
|
7
7
|
# you may not use this file except in compliance with the License.
|
8
8
|
# You may obtain a copy of the License at
|
9
9
|
#
|
10
|
-
#
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
11
11
|
#
|
12
12
|
# Unless required by applicable law or agreed to in writing, software
|
13
13
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
@@ -7,7 +7,7 @@
|
|
7
7
|
# you may not use this file except in compliance with the License.
|
8
8
|
# You may obtain a copy of the License at
|
9
9
|
#
|
10
|
-
#
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
11
11
|
#
|
12
12
|
# Unless required by applicable law or agreed to in writing, software
|
13
13
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-video_intelligence
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
- Google
|
7
|
+
- Google LLC
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-08-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: google-gax
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '1.
|
19
|
+
version: '1.3'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '1.
|
26
|
+
version: '1.3'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: minitest
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -38,20 +38,34 @@ dependencies:
|
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '5.10'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: redcarpet
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '3.0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '3.0'
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: rubocop
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
44
58
|
requirements:
|
45
|
-
- - "
|
59
|
+
- - "~>"
|
46
60
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.
|
61
|
+
version: 0.50.0
|
48
62
|
type: :development
|
49
63
|
prerelease: false
|
50
64
|
version_requirements: !ruby/object:Gem::Requirement
|
51
65
|
requirements:
|
52
|
-
- - "
|
66
|
+
- - "~>"
|
53
67
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.
|
68
|
+
version: 0.50.0
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
70
|
name: simplecov
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -66,6 +80,20 @@ dependencies:
|
|
66
80
|
- - "~>"
|
67
81
|
- !ruby/object:Gem::Version
|
68
82
|
version: '0.9'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: yard
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0.9'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0.9'
|
69
97
|
description: google-cloud-video_intelligence is the official library for Cloud Video
|
70
98
|
Intelligence API.
|
71
99
|
email: googleapis-packages@google.com
|
@@ -79,7 +107,9 @@ files:
|
|
79
107
|
- lib/google/cloud/video_intelligence.rb
|
80
108
|
- lib/google/cloud/video_intelligence/credentials.rb
|
81
109
|
- lib/google/cloud/video_intelligence/v1.rb
|
110
|
+
- lib/google/cloud/video_intelligence/v1/credentials.rb
|
82
111
|
- lib/google/cloud/video_intelligence/v1/doc/google/cloud/videointelligence/v1/video_intelligence.rb
|
112
|
+
- lib/google/cloud/video_intelligence/v1/doc/google/longrunning/operations.rb
|
83
113
|
- lib/google/cloud/video_intelligence/v1/doc/google/protobuf/any.rb
|
84
114
|
- lib/google/cloud/video_intelligence/v1/doc/google/protobuf/duration.rb
|
85
115
|
- lib/google/cloud/video_intelligence/v1/doc/google/rpc/status.rb
|
@@ -87,14 +117,18 @@ files:
|
|
87
117
|
- lib/google/cloud/video_intelligence/v1/video_intelligence_service_client.rb
|
88
118
|
- lib/google/cloud/video_intelligence/v1/video_intelligence_service_client_config.json
|
89
119
|
- lib/google/cloud/video_intelligence/v1beta1.rb
|
120
|
+
- lib/google/cloud/video_intelligence/v1beta1/credentials.rb
|
90
121
|
- lib/google/cloud/video_intelligence/v1beta1/doc/google/cloud/videointelligence/v1beta1/video_intelligence.rb
|
122
|
+
- lib/google/cloud/video_intelligence/v1beta1/doc/google/longrunning/operations.rb
|
91
123
|
- lib/google/cloud/video_intelligence/v1beta1/doc/google/protobuf/any.rb
|
92
124
|
- lib/google/cloud/video_intelligence/v1beta1/doc/google/rpc/status.rb
|
93
125
|
- lib/google/cloud/video_intelligence/v1beta1/doc/overview.rb
|
94
126
|
- lib/google/cloud/video_intelligence/v1beta1/video_intelligence_service_client.rb
|
95
127
|
- lib/google/cloud/video_intelligence/v1beta1/video_intelligence_service_client_config.json
|
96
128
|
- lib/google/cloud/video_intelligence/v1beta2.rb
|
129
|
+
- lib/google/cloud/video_intelligence/v1beta2/credentials.rb
|
97
130
|
- lib/google/cloud/video_intelligence/v1beta2/doc/google/cloud/videointelligence/v1beta2/video_intelligence.rb
|
131
|
+
- lib/google/cloud/video_intelligence/v1beta2/doc/google/longrunning/operations.rb
|
98
132
|
- lib/google/cloud/video_intelligence/v1beta2/doc/google/protobuf/any.rb
|
99
133
|
- lib/google/cloud/video_intelligence/v1beta2/doc/google/protobuf/duration.rb
|
100
134
|
- lib/google/cloud/video_intelligence/v1beta2/doc/google/rpc/status.rb
|
@@ -107,7 +141,7 @@ files:
|
|
107
141
|
- lib/google/cloud/videointelligence/v1beta1/video_intelligence_services_pb.rb
|
108
142
|
- lib/google/cloud/videointelligence/v1beta2/video_intelligence_pb.rb
|
109
143
|
- lib/google/cloud/videointelligence/v1beta2/video_intelligence_services_pb.rb
|
110
|
-
homepage: https://github.com/
|
144
|
+
homepage: https://github.com/GoogleCloudPlatform/google-cloud-ruby/tree/master/google-cloud-video_intelligence
|
111
145
|
licenses:
|
112
146
|
- Apache-2.0
|
113
147
|
metadata: {}
|
@@ -127,7 +161,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
127
161
|
version: '0'
|
128
162
|
requirements: []
|
129
163
|
rubyforge_project:
|
130
|
-
rubygems_version: 2.7.
|
164
|
+
rubygems_version: 2.7.7
|
131
165
|
signing_key:
|
132
166
|
specification_version: 4
|
133
167
|
summary: API Client library for Cloud Video Intelligence API
|