diff --git a/api_names_out.yaml b/api_names_out.yaml index 11eaacbf1..a482054c5 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -148634,6 +148634,253 @@ "/trafficdirector:v2/key": key "/trafficdirector:v2/quotaUser": quota_user "/trafficdirector:v2/trafficdirector.discovery.client_status": client_discovery_status +"/transcoder:v1beta1/AdBreak": ad_break +"/transcoder:v1beta1/AdBreak/startTimeOffset": start_time_offset +"/transcoder:v1beta1/Aes128Encryption": aes128_encryption +"/transcoder:v1beta1/Aes128Encryption/keyUri": key_uri +"/transcoder:v1beta1/Animation": animation +"/transcoder:v1beta1/Animation/animationEnd": animation_end +"/transcoder:v1beta1/Animation/animationFade": animation_fade +"/transcoder:v1beta1/Animation/animationStatic": animation_static +"/transcoder:v1beta1/AnimationEnd": animation_end +"/transcoder:v1beta1/AnimationEnd/startTimeOffset": start_time_offset +"/transcoder:v1beta1/AnimationFade": animation_fade +"/transcoder:v1beta1/AnimationFade/endTimeOffset": end_time_offset +"/transcoder:v1beta1/AnimationFade/fadeType": fade_type +"/transcoder:v1beta1/AnimationFade/startTimeOffset": start_time_offset +"/transcoder:v1beta1/AnimationFade/xy": xy +"/transcoder:v1beta1/AnimationStatic": animation_static +"/transcoder:v1beta1/AnimationStatic/startTimeOffset": start_time_offset +"/transcoder:v1beta1/AnimationStatic/xy": xy +"/transcoder:v1beta1/Audio": audio +"/transcoder:v1beta1/Audio/highBoost": high_boost +"/transcoder:v1beta1/Audio/lowBoost": low_boost +"/transcoder:v1beta1/Audio/lufs": lufs +"/transcoder:v1beta1/AudioAtom": audio_atom +"/transcoder:v1beta1/AudioAtom/channels": channels +"/transcoder:v1beta1/AudioAtom/channels/channel": channel +"/transcoder:v1beta1/AudioAtom/key": key +"/transcoder:v1beta1/AudioChannel": audio_channel +"/transcoder:v1beta1/AudioChannel/inputs": inputs +"/transcoder:v1beta1/AudioChannel/inputs/input": input +"/transcoder:v1beta1/AudioChannelInput": audio_channel_input +"/transcoder:v1beta1/AudioChannelInput/channel": channel +"/transcoder:v1beta1/AudioChannelInput/gainDb": gain_db +"/transcoder:v1beta1/AudioChannelInput/key": key +"/transcoder:v1beta1/AudioChannelInput/track": track +"/transcoder:v1beta1/AudioStream": audio_stream +"/transcoder:v1beta1/AudioStream/bitrateBps": bitrate_bps +"/transcoder:v1beta1/AudioStream/channelCount": channel_count +"/transcoder:v1beta1/AudioStream/channelLayout": channel_layout +"/transcoder:v1beta1/AudioStream/channelLayout/channel_layout": channel_layout +"/transcoder:v1beta1/AudioStream/codec": codec +"/transcoder:v1beta1/AudioStream/mapping": mapping +"/transcoder:v1beta1/AudioStream/mapping/mapping": mapping +"/transcoder:v1beta1/AudioStream/sampleRateHertz": sample_rate_hertz +"/transcoder:v1beta1/Color": color +"/transcoder:v1beta1/Color/brightness": brightness +"/transcoder:v1beta1/Color/contrast": contrast +"/transcoder:v1beta1/Color/saturation": saturation +"/transcoder:v1beta1/Crop": crop +"/transcoder:v1beta1/Crop/bottomPixels": bottom_pixels +"/transcoder:v1beta1/Crop/leftPixels": left_pixels +"/transcoder:v1beta1/Crop/rightPixels": right_pixels +"/transcoder:v1beta1/Crop/topPixels": top_pixels +"/transcoder:v1beta1/Deblock": deblock +"/transcoder:v1beta1/Deblock/enabled": enabled +"/transcoder:v1beta1/Deblock/strength": strength +"/transcoder:v1beta1/Denoise": denoise +"/transcoder:v1beta1/Denoise/strength": strength +"/transcoder:v1beta1/Denoise/tune": tune +"/transcoder:v1beta1/EditAtom": edit_atom +"/transcoder:v1beta1/EditAtom/endTimeOffset": end_time_offset +"/transcoder:v1beta1/EditAtom/inputs": inputs +"/transcoder:v1beta1/EditAtom/inputs/input": input +"/transcoder:v1beta1/EditAtom/key": key +"/transcoder:v1beta1/EditAtom/startTimeOffset": start_time_offset +"/transcoder:v1beta1/ElementaryStream": elementary_stream +"/transcoder:v1beta1/ElementaryStream/audioStream": audio_stream +"/transcoder:v1beta1/ElementaryStream/key": key +"/transcoder:v1beta1/ElementaryStream/textStream": text_stream +"/transcoder:v1beta1/ElementaryStream/videoStream": video_stream +"/transcoder:v1beta1/Empty": empty +"/transcoder:v1beta1/Encryption": encryption +"/transcoder:v1beta1/Encryption/aes128": aes128 +"/transcoder:v1beta1/Encryption/iv": iv +"/transcoder:v1beta1/Encryption/key": key +"/transcoder:v1beta1/Encryption/mpegCenc": mpeg_cenc +"/transcoder:v1beta1/Encryption/sampleAes": sample_aes +"/transcoder:v1beta1/FailureDetail": failure_detail +"/transcoder:v1beta1/FailureDetail/description": description +"/transcoder:v1beta1/Image": image +"/transcoder:v1beta1/Image/alpha": alpha +"/transcoder:v1beta1/Image/resolution": resolution +"/transcoder:v1beta1/Image/uri": uri +"/transcoder:v1beta1/Input": input +"/transcoder:v1beta1/Input/key": key +"/transcoder:v1beta1/Input/preprocessingConfig": preprocessing_config +"/transcoder:v1beta1/Input/uri": uri +"/transcoder:v1beta1/Job": job +"/transcoder:v1beta1/Job/config": config +"/transcoder:v1beta1/Job/createTime": create_time +"/transcoder:v1beta1/Job/endTime": end_time +"/transcoder:v1beta1/Job/failureDetails": failure_details +"/transcoder:v1beta1/Job/failureDetails/failure_detail": failure_detail +"/transcoder:v1beta1/Job/failureReason": failure_reason +"/transcoder:v1beta1/Job/inputUri": input_uri +"/transcoder:v1beta1/Job/name": name +"/transcoder:v1beta1/Job/originUri": origin_uri +"/transcoder:v1beta1/Job/outputUri": output_uri +"/transcoder:v1beta1/Job/priority": priority +"/transcoder:v1beta1/Job/progress": progress +"/transcoder:v1beta1/Job/startTime": start_time +"/transcoder:v1beta1/Job/state": state +"/transcoder:v1beta1/Job/templateId": template_id +"/transcoder:v1beta1/JobConfig": job_config +"/transcoder:v1beta1/JobConfig/adBreaks": ad_breaks +"/transcoder:v1beta1/JobConfig/adBreaks/ad_break": ad_break +"/transcoder:v1beta1/JobConfig/editList": edit_list +"/transcoder:v1beta1/JobConfig/editList/edit_list": edit_list +"/transcoder:v1beta1/JobConfig/elementaryStreams": elementary_streams +"/transcoder:v1beta1/JobConfig/elementaryStreams/elementary_stream": elementary_stream +"/transcoder:v1beta1/JobConfig/inputs": inputs +"/transcoder:v1beta1/JobConfig/inputs/input": input +"/transcoder:v1beta1/JobConfig/manifests": manifests +"/transcoder:v1beta1/JobConfig/manifests/manifest": manifest +"/transcoder:v1beta1/JobConfig/muxStreams": mux_streams +"/transcoder:v1beta1/JobConfig/muxStreams/mux_stream": mux_stream +"/transcoder:v1beta1/JobConfig/output": output +"/transcoder:v1beta1/JobConfig/overlays": overlays +"/transcoder:v1beta1/JobConfig/overlays/overlay": overlay +"/transcoder:v1beta1/JobConfig/pubsubDestination": pubsub_destination +"/transcoder:v1beta1/JobConfig/spriteSheets": sprite_sheets +"/transcoder:v1beta1/JobConfig/spriteSheets/sprite_sheet": sprite_sheet +"/transcoder:v1beta1/JobTemplate": job_template +"/transcoder:v1beta1/JobTemplate/config": config +"/transcoder:v1beta1/JobTemplate/name": name +"/transcoder:v1beta1/ListJobTemplatesResponse": list_job_templates_response +"/transcoder:v1beta1/ListJobTemplatesResponse/jobTemplates": job_templates +"/transcoder:v1beta1/ListJobTemplatesResponse/jobTemplates/job_template": job_template +"/transcoder:v1beta1/ListJobTemplatesResponse/nextPageToken": next_page_token +"/transcoder:v1beta1/ListJobsResponse": list_jobs_response +"/transcoder:v1beta1/ListJobsResponse/jobs": jobs +"/transcoder:v1beta1/ListJobsResponse/jobs/job": job +"/transcoder:v1beta1/ListJobsResponse/nextPageToken": next_page_token +"/transcoder:v1beta1/Manifest": manifest +"/transcoder:v1beta1/Manifest/fileName": file_name +"/transcoder:v1beta1/Manifest/muxStreams": mux_streams +"/transcoder:v1beta1/Manifest/muxStreams/mux_stream": mux_stream +"/transcoder:v1beta1/Manifest/type": type +"/transcoder:v1beta1/MpegCommonEncryption": mpeg_common_encryption +"/transcoder:v1beta1/MpegCommonEncryption/keyId": key_id +"/transcoder:v1beta1/MpegCommonEncryption/scheme": scheme +"/transcoder:v1beta1/MuxStream": mux_stream +"/transcoder:v1beta1/MuxStream/container": container +"/transcoder:v1beta1/MuxStream/elementaryStreams": elementary_streams +"/transcoder:v1beta1/MuxStream/elementaryStreams/elementary_stream": elementary_stream +"/transcoder:v1beta1/MuxStream/encryption": encryption +"/transcoder:v1beta1/MuxStream/fileName": file_name +"/transcoder:v1beta1/MuxStream/key": key +"/transcoder:v1beta1/MuxStream/segmentSettings": segment_settings +"/transcoder:v1beta1/NormalizedCoordinate": normalized_coordinate +"/transcoder:v1beta1/NormalizedCoordinate/x": x +"/transcoder:v1beta1/NormalizedCoordinate/y": y +"/transcoder:v1beta1/OriginUri": origin_uri +"/transcoder:v1beta1/OriginUri/dash": dash +"/transcoder:v1beta1/OriginUri/hls": hls +"/transcoder:v1beta1/Output": output +"/transcoder:v1beta1/Output/uri": uri +"/transcoder:v1beta1/Overlay": overlay +"/transcoder:v1beta1/Overlay/animations": animations +"/transcoder:v1beta1/Overlay/animations/animation": animation +"/transcoder:v1beta1/Overlay/image": image +"/transcoder:v1beta1/PreprocessingConfig": preprocessing_config +"/transcoder:v1beta1/PreprocessingConfig/audio": audio +"/transcoder:v1beta1/PreprocessingConfig/color": color +"/transcoder:v1beta1/PreprocessingConfig/crop": crop +"/transcoder:v1beta1/PreprocessingConfig/deblock": deblock +"/transcoder:v1beta1/PreprocessingConfig/denoise": denoise +"/transcoder:v1beta1/Progress": progress +"/transcoder:v1beta1/Progress/analyzed": analyzed +"/transcoder:v1beta1/Progress/encoded": encoded +"/transcoder:v1beta1/Progress/notified": notified +"/transcoder:v1beta1/Progress/uploaded": uploaded +"/transcoder:v1beta1/PubsubDestination": pubsub_destination +"/transcoder:v1beta1/PubsubDestination/topic": topic +"/transcoder:v1beta1/SampleAesEncryption": sample_aes_encryption +"/transcoder:v1beta1/SampleAesEncryption/keyUri": key_uri +"/transcoder:v1beta1/SegmentSettings": segment_settings +"/transcoder:v1beta1/SegmentSettings/individualSegments": individual_segments +"/transcoder:v1beta1/SegmentSettings/segmentDuration": segment_duration +"/transcoder:v1beta1/SpriteSheet": sprite_sheet +"/transcoder:v1beta1/SpriteSheet/columnCount": column_count +"/transcoder:v1beta1/SpriteSheet/endTimeOffset": end_time_offset +"/transcoder:v1beta1/SpriteSheet/filePrefix": file_prefix +"/transcoder:v1beta1/SpriteSheet/format": format +"/transcoder:v1beta1/SpriteSheet/interval": interval +"/transcoder:v1beta1/SpriteSheet/rowCount": row_count +"/transcoder:v1beta1/SpriteSheet/spriteHeightPixels": sprite_height_pixels +"/transcoder:v1beta1/SpriteSheet/spriteWidthPixels": sprite_width_pixels +"/transcoder:v1beta1/SpriteSheet/startTimeOffset": start_time_offset +"/transcoder:v1beta1/SpriteSheet/totalCount": total_count +"/transcoder:v1beta1/TextAtom": text_atom +"/transcoder:v1beta1/TextAtom/inputs": inputs +"/transcoder:v1beta1/TextAtom/inputs/input": input +"/transcoder:v1beta1/TextAtom/key": key +"/transcoder:v1beta1/TextInput": text_input +"/transcoder:v1beta1/TextInput/key": key +"/transcoder:v1beta1/TextInput/track": track +"/transcoder:v1beta1/TextStream": text_stream +"/transcoder:v1beta1/TextStream/codec": codec +"/transcoder:v1beta1/TextStream/languageCode": language_code +"/transcoder:v1beta1/TextStream/mapping": mapping +"/transcoder:v1beta1/TextStream/mapping/mapping": mapping +"/transcoder:v1beta1/VideoStream": video_stream +"/transcoder:v1beta1/VideoStream/allowOpenGop": allow_open_gop +"/transcoder:v1beta1/VideoStream/aqStrength": aq_strength +"/transcoder:v1beta1/VideoStream/bFrameCount": b_frame_count +"/transcoder:v1beta1/VideoStream/bPyramid": b_pyramid +"/transcoder:v1beta1/VideoStream/bitrateBps": bitrate_bps +"/transcoder:v1beta1/VideoStream/codec": codec +"/transcoder:v1beta1/VideoStream/crfLevel": crf_level +"/transcoder:v1beta1/VideoStream/enableTwoPass": enable_two_pass +"/transcoder:v1beta1/VideoStream/entropyCoder": entropy_coder +"/transcoder:v1beta1/VideoStream/frameRate": frame_rate +"/transcoder:v1beta1/VideoStream/gopDuration": gop_duration +"/transcoder:v1beta1/VideoStream/gopFrameCount": gop_frame_count +"/transcoder:v1beta1/VideoStream/heightPixels": height_pixels +"/transcoder:v1beta1/VideoStream/pixelFormat": pixel_format +"/transcoder:v1beta1/VideoStream/preset": preset +"/transcoder:v1beta1/VideoStream/profile": profile +"/transcoder:v1beta1/VideoStream/rateControlMode": rate_control_mode +"/transcoder:v1beta1/VideoStream/tune": tune +"/transcoder:v1beta1/VideoStream/vbvFullnessBits": vbv_fullness_bits +"/transcoder:v1beta1/VideoStream/vbvSizeBits": vbv_size_bits +"/transcoder:v1beta1/VideoStream/widthPixels": width_pixels +"/transcoder:v1beta1/fields": fields +"/transcoder:v1beta1/key": key +"/transcoder:v1beta1/quotaUser": quota_user +"/transcoder:v1beta1/transcoder.projects.locations.jobTemplates.create": create_project_location_job_template +"/transcoder:v1beta1/transcoder.projects.locations.jobTemplates.create/jobTemplateId": job_template_id +"/transcoder:v1beta1/transcoder.projects.locations.jobTemplates.create/parent": parent +"/transcoder:v1beta1/transcoder.projects.locations.jobTemplates.delete": delete_project_location_job_template +"/transcoder:v1beta1/transcoder.projects.locations.jobTemplates.delete/name": name +"/transcoder:v1beta1/transcoder.projects.locations.jobTemplates.get": get_project_location_job_template +"/transcoder:v1beta1/transcoder.projects.locations.jobTemplates.get/name": name +"/transcoder:v1beta1/transcoder.projects.locations.jobTemplates.list": list_project_location_job_templates +"/transcoder:v1beta1/transcoder.projects.locations.jobTemplates.list/pageSize": page_size +"/transcoder:v1beta1/transcoder.projects.locations.jobTemplates.list/pageToken": page_token +"/transcoder:v1beta1/transcoder.projects.locations.jobTemplates.list/parent": parent +"/transcoder:v1beta1/transcoder.projects.locations.jobs.create": create_project_location_job +"/transcoder:v1beta1/transcoder.projects.locations.jobs.create/parent": parent +"/transcoder:v1beta1/transcoder.projects.locations.jobs.delete": delete_project_location_job +"/transcoder:v1beta1/transcoder.projects.locations.jobs.delete/name": name +"/transcoder:v1beta1/transcoder.projects.locations.jobs.get": get_project_location_job +"/transcoder:v1beta1/transcoder.projects.locations.jobs.get/name": name +"/transcoder:v1beta1/transcoder.projects.locations.jobs.list": list_project_location_jobs +"/transcoder:v1beta1/transcoder.projects.locations.jobs.list/pageSize": page_size +"/transcoder:v1beta1/transcoder.projects.locations.jobs.list/pageToken": page_token +"/transcoder:v1beta1/transcoder.projects.locations.jobs.list/parent": parent "/translate:v2/DetectLanguageRequest": detect_language_request "/translate:v2/DetectLanguageRequest/q": q "/translate:v2/DetectLanguageRequest/q/q": q diff --git a/generated/google/apis/transcoder_v1beta1.rb b/generated/google/apis/transcoder_v1beta1.rb new file mode 100644 index 000000000..7b0199ff1 --- /dev/null +++ b/generated/google/apis/transcoder_v1beta1.rb @@ -0,0 +1,34 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/transcoder_v1beta1/service.rb' +require 'google/apis/transcoder_v1beta1/classes.rb' +require 'google/apis/transcoder_v1beta1/representations.rb' + +module Google + module Apis + # Transcoder API + # + # This API converts video files into formats suitable for consumer distribution. + # + # @see https://cloud.google.com/transcoder/docs/ + module TranscoderV1beta1 + VERSION = 'V1beta1' + REVISION = '20201111' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + end + end +end diff --git a/generated/google/apis/transcoder_v1beta1/classes.rb b/generated/google/apis/transcoder_v1beta1/classes.rb new file mode 100644 index 000000000..62634fb86 --- /dev/null +++ b/generated/google/apis/transcoder_v1beta1/classes.rb @@ -0,0 +1,1684 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module TranscoderV1beta1 + + # Ad break. + class AdBreak + include Google::Apis::Core::Hashable + + # Start time in seconds for the ad break, relative to the output file timeline. + # The default is `0s`. + # Corresponds to the JSON property `startTimeOffset` + # @return [String] + attr_accessor :start_time_offset + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset) + end + end + + # Configuration for AES-128 encryption. + class Aes128Encryption + include Google::Apis::Core::Hashable + + # Required. URI of the key delivery service. This URI is inserted into the M3U8 + # header. + # Corresponds to the JSON property `keyUri` + # @return [String] + attr_accessor :key_uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key_uri = args[:key_uri] if args.key?(:key_uri) + end + end + + # Animation types. + class Animation + include Google::Apis::Core::Hashable + + # End previous overlay animation from the video. Without AnimationEnd, the + # overlay object will keep the state of previous animation until the end of the + # video. + # Corresponds to the JSON property `animationEnd` + # @return [Google::Apis::TranscoderV1beta1::AnimationEnd] + attr_accessor :animation_end + + # Display overlay object with fade animation. + # Corresponds to the JSON property `animationFade` + # @return [Google::Apis::TranscoderV1beta1::AnimationFade] + attr_accessor :animation_fade + + # Display static overlay object. + # Corresponds to the JSON property `animationStatic` + # @return [Google::Apis::TranscoderV1beta1::AnimationStatic] + attr_accessor :animation_static + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @animation_end = args[:animation_end] if args.key?(:animation_end) + @animation_fade = args[:animation_fade] if args.key?(:animation_fade) + @animation_static = args[:animation_static] if args.key?(:animation_static) + end + end + + # End previous overlay animation from the video. Without AnimationEnd, the + # overlay object will keep the state of previous animation until the end of the + # video. + class AnimationEnd + include Google::Apis::Core::Hashable + + # The time to end overlay object, in seconds. Default: 0 + # Corresponds to the JSON property `startTimeOffset` + # @return [String] + attr_accessor :start_time_offset + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset) + end + end + + # Display overlay object with fade animation. + class AnimationFade + include Google::Apis::Core::Hashable + + # The time to end the fade animation, in seconds. Default: `start_time_offset` + + # 1s + # Corresponds to the JSON property `endTimeOffset` + # @return [String] + attr_accessor :end_time_offset + + # Required. Type of fade animation: `FADE_IN` or `FADE_OUT`. + # Corresponds to the JSON property `fadeType` + # @return [String] + attr_accessor :fade_type + + # The time to start the fade animation, in seconds. Default: 0 + # Corresponds to the JSON property `startTimeOffset` + # @return [String] + attr_accessor :start_time_offset + + # 2D normalized coordinates. Default: ``0.0, 0.0`` + # Corresponds to the JSON property `xy` + # @return [Google::Apis::TranscoderV1beta1::NormalizedCoordinate] + attr_accessor :xy + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time_offset = args[:end_time_offset] if args.key?(:end_time_offset) + @fade_type = args[:fade_type] if args.key?(:fade_type) + @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset) + @xy = args[:xy] if args.key?(:xy) + end + end + + # Display static overlay object. + class AnimationStatic + include Google::Apis::Core::Hashable + + # The time to start displaying the overlay object, in seconds. Default: 0 + # Corresponds to the JSON property `startTimeOffset` + # @return [String] + attr_accessor :start_time_offset + + # 2D normalized coordinates. Default: ``0.0, 0.0`` + # Corresponds to the JSON property `xy` + # @return [Google::Apis::TranscoderV1beta1::NormalizedCoordinate] + attr_accessor :xy + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset) + @xy = args[:xy] if args.key?(:xy) + end + end + + # Audio preprocessing configuration. + class Audio + include Google::Apis::Core::Hashable + + # Enable boosting high frequency components. The default is `false`. + # Corresponds to the JSON property `highBoost` + # @return [Boolean] + attr_accessor :high_boost + alias_method :high_boost?, :high_boost + + # Enable boosting low frequency components. The default is `false`. + # Corresponds to the JSON property `lowBoost` + # @return [Boolean] + attr_accessor :low_boost + alias_method :low_boost?, :low_boost + + # Specify audio loudness normalization in loudness units relative to full scale ( + # LUFS). Enter a value between -24 and 0, where -24 is the Advanced Television + # Systems Committee (ATSC A/85), -23 is the EU R128 broadcast standard, -19 is + # the prior standard for online mono audio, -18 is the ReplayGain standard, -16 + # is the prior standard for stereo audio, -14 is the new online audio standard + # recommended by Spotify, as well as Amazon Echo, and 0 disables normalization. + # The default is 0. + # Corresponds to the JSON property `lufs` + # @return [Float] + attr_accessor :lufs + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @high_boost = args[:high_boost] if args.key?(:high_boost) + @low_boost = args[:low_boost] if args.key?(:low_boost) + @lufs = args[:lufs] if args.key?(:lufs) + end + end + + # The mapping for the `Job.edit_list` atoms with audio `EditAtom.inputs`. + class AudioAtom + include Google::Apis::Core::Hashable + + # List of `Channel`s for this audio stream. for in-depth explanation. + # Corresponds to the JSON property `channels` + # @return [Array] + attr_accessor :channels + + # Required. The `EditAtom.key` that references the atom with audio inputs in the + # `Job.edit_list`. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @channels = args[:channels] if args.key?(:channels) + @key = args[:key] if args.key?(:key) + end + end + + # The audio channel. + class AudioChannel + include Google::Apis::Core::Hashable + + # List of `Job.inputs` for this audio channel. + # Corresponds to the JSON property `inputs` + # @return [Array] + attr_accessor :inputs + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @inputs = args[:inputs] if args.key?(:inputs) + end + end + + # Identifies which input file, track, and channel should be used. + class AudioChannelInput + include Google::Apis::Core::Hashable + + # Required. The zero-based index of the channel in the input file. + # Corresponds to the JSON property `channel` + # @return [Fixnum] + attr_accessor :channel + + # Audio volume control in dB. Negative values decrease volume, positive values + # increase. The default is 0. + # Corresponds to the JSON property `gainDb` + # @return [Float] + attr_accessor :gain_db + + # Required. The `Input.key` that identifies the input file. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # Required. The zero-based index of the track in the input file. + # Corresponds to the JSON property `track` + # @return [Fixnum] + attr_accessor :track + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @channel = args[:channel] if args.key?(:channel) + @gain_db = args[:gain_db] if args.key?(:gain_db) + @key = args[:key] if args.key?(:key) + @track = args[:track] if args.key?(:track) + end + end + + # Audio stream resource. + class AudioStream + include Google::Apis::Core::Hashable + + # Required. Audio bitrate in bits per second. Must be between 1 and 10,000,000. + # Corresponds to the JSON property `bitrateBps` + # @return [Fixnum] + attr_accessor :bitrate_bps + + # Number of audio channels. Must be between 1 and 6. The default is 2. + # Corresponds to the JSON property `channelCount` + # @return [Fixnum] + attr_accessor :channel_count + + # A list of channel names specifying layout of the audio channels. This only + # affects the metadata embedded in the container headers, if supported by the + # specified format. The default is `["fl", "fr"]`. Supported channel names: - ' + # fl' - Front left channel - 'fr' - Front right channel - 'sl' - Side left + # channel - 'sr' - Side right channel - 'fc' - Front center channel - 'lfe' - + # Low frequency + # Corresponds to the JSON property `channelLayout` + # @return [Array] + attr_accessor :channel_layout + + # The codec for this audio stream. The default is `"aac"`. Supported audio + # codecs: - 'aac' - 'aac-he' - 'aac-he-v2' - 'mp3' - 'ac3' - 'eac3' + # Corresponds to the JSON property `codec` + # @return [String] + attr_accessor :codec + + # The mapping for the `Job.edit_list` atoms with audio `EditAtom.inputs`. + # Corresponds to the JSON property `mapping` + # @return [Array] + attr_accessor :mapping + + # The audio sample rate in Hertz. The default is 48000 Hertz. + # Corresponds to the JSON property `sampleRateHertz` + # @return [Fixnum] + attr_accessor :sample_rate_hertz + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bitrate_bps = args[:bitrate_bps] if args.key?(:bitrate_bps) + @channel_count = args[:channel_count] if args.key?(:channel_count) + @channel_layout = args[:channel_layout] if args.key?(:channel_layout) + @codec = args[:codec] if args.key?(:codec) + @mapping = args[:mapping] if args.key?(:mapping) + @sample_rate_hertz = args[:sample_rate_hertz] if args.key?(:sample_rate_hertz) + end + end + + # Color preprocessing configuration. + class Color + include Google::Apis::Core::Hashable + + # Control brightness of the video. Enter a value between -1 and 1, where -1 is + # minimum brightness and 1 is maximum brightness. 0 is no change. The default is + # 0. + # Corresponds to the JSON property `brightness` + # @return [Float] + attr_accessor :brightness + + # Control black and white contrast of the video. Enter a value between -1 and 1, + # where -1 is minimum contrast and 1 is maximum contrast. 0 is no change. The + # default is 0. + # Corresponds to the JSON property `contrast` + # @return [Float] + attr_accessor :contrast + + # Control color saturation of the video. Enter a value between -1 and 1, where - + # 1 is fully desaturated and 1 is maximum saturation. 0 is no change. The + # default is 0. + # Corresponds to the JSON property `saturation` + # @return [Float] + attr_accessor :saturation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @brightness = args[:brightness] if args.key?(:brightness) + @contrast = args[:contrast] if args.key?(:contrast) + @saturation = args[:saturation] if args.key?(:saturation) + end + end + + # Video cropping configuration. + class Crop + include Google::Apis::Core::Hashable + + # The number of pixels to crop from the bottom. The default is 0. + # Corresponds to the JSON property `bottomPixels` + # @return [Fixnum] + attr_accessor :bottom_pixels + + # The number of pixels to crop from the left. The default is 0. + # Corresponds to the JSON property `leftPixels` + # @return [Fixnum] + attr_accessor :left_pixels + + # The number of pixels to crop from the right. The default is 0. + # Corresponds to the JSON property `rightPixels` + # @return [Fixnum] + attr_accessor :right_pixels + + # The number of pixels to crop from the top. The default is 0. + # Corresponds to the JSON property `topPixels` + # @return [Fixnum] + attr_accessor :top_pixels + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bottom_pixels = args[:bottom_pixels] if args.key?(:bottom_pixels) + @left_pixels = args[:left_pixels] if args.key?(:left_pixels) + @right_pixels = args[:right_pixels] if args.key?(:right_pixels) + @top_pixels = args[:top_pixels] if args.key?(:top_pixels) + end + end + + # Deblock preprocessing configuration. + class Deblock + include Google::Apis::Core::Hashable + + # Enable deblocker. The default is `false`. + # Corresponds to the JSON property `enabled` + # @return [Boolean] + attr_accessor :enabled + alias_method :enabled?, :enabled + + # Set strength of the deblocker. Enter a value between 0 and 1. The higher the + # value, the stronger the block removal. 0 is no deblocking. The default is 0. + # Corresponds to the JSON property `strength` + # @return [Float] + attr_accessor :strength + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @enabled = args[:enabled] if args.key?(:enabled) + @strength = args[:strength] if args.key?(:strength) + end + end + + # Denoise preprocessing configuration. + class Denoise + include Google::Apis::Core::Hashable + + # Set strength of the denoise. Enter a value between 0 and 1. The higher the + # value, the smoother the image. 0 is no denoising. The default is 0. + # Corresponds to the JSON property `strength` + # @return [Float] + attr_accessor :strength + + # Set the denoiser mode. The default is `"standard"`. Supported denoiser modes: - + # 'standard' - 'grain' + # Corresponds to the JSON property `tune` + # @return [String] + attr_accessor :tune + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @strength = args[:strength] if args.key?(:strength) + @tune = args[:tune] if args.key?(:tune) + end + end + + # Edit atom. + class EditAtom + include Google::Apis::Core::Hashable + + # End time in seconds for the atom, relative to the input file timeline. When ` + # end_time_offset` is not specified, the `inputs` are used until the end of the + # atom. + # Corresponds to the JSON property `endTimeOffset` + # @return [String] + attr_accessor :end_time_offset + + # List of `Input.key`s identifying files that should be used in this atom. The + # listed `inputs` must have the same timeline. + # Corresponds to the JSON property `inputs` + # @return [Array] + attr_accessor :inputs + + # A unique key for this atom. Must be specified when using advanced mapping. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # Start time in seconds for the atom, relative to the input file timeline. The + # default is `0s`. + # Corresponds to the JSON property `startTimeOffset` + # @return [String] + attr_accessor :start_time_offset + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time_offset = args[:end_time_offset] if args.key?(:end_time_offset) + @inputs = args[:inputs] if args.key?(:inputs) + @key = args[:key] if args.key?(:key) + @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset) + end + end + + # Encoding of an input file such as an audio, video, or text track. Elementary + # streams must be packaged before mapping and sharing between different output + # formats. + class ElementaryStream + include Google::Apis::Core::Hashable + + # Audio stream resource. + # Corresponds to the JSON property `audioStream` + # @return [Google::Apis::TranscoderV1beta1::AudioStream] + attr_accessor :audio_stream + + # A unique key for this elementary stream. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # Encoding of a text stream. For example, closed captions or subtitles. + # Corresponds to the JSON property `textStream` + # @return [Google::Apis::TranscoderV1beta1::TextStream] + attr_accessor :text_stream + + # Video stream resource. + # Corresponds to the JSON property `videoStream` + # @return [Google::Apis::TranscoderV1beta1::VideoStream] + attr_accessor :video_stream + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audio_stream = args[:audio_stream] if args.key?(:audio_stream) + @key = args[:key] if args.key?(:key) + @text_stream = args[:text_stream] if args.key?(:text_stream) + @video_stream = args[:video_stream] if args.key?(:video_stream) + end + end + + # A generic empty message that you can re-use to avoid defining duplicated empty + # messages in your APIs. A typical example is to use it as the request or the + # response type of an API method. For instance: service Foo ` rpc Bar(google. + # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for + # `Empty` is empty JSON object ````. + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Encryption settings. + class Encryption + include Google::Apis::Core::Hashable + + # Configuration for AES-128 encryption. + # Corresponds to the JSON property `aes128` + # @return [Google::Apis::TranscoderV1beta1::Aes128Encryption] + attr_accessor :aes128 + + # Required. 128 bit Initialization Vector (IV) represented as lowercase + # hexadecimal digits. + # Corresponds to the JSON property `iv` + # @return [String] + attr_accessor :iv + + # Required. 128 bit encryption key represented as lowercase hexadecimal digits. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # Configuration for MPEG Common Encryption (MPEG-CENC). + # Corresponds to the JSON property `mpegCenc` + # @return [Google::Apis::TranscoderV1beta1::MpegCommonEncryption] + attr_accessor :mpeg_cenc + + # Configuration for SAMPLE-AES encryption. + # Corresponds to the JSON property `sampleAes` + # @return [Google::Apis::TranscoderV1beta1::SampleAesEncryption] + attr_accessor :sample_aes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @aes128 = args[:aes128] if args.key?(:aes128) + @iv = args[:iv] if args.key?(:iv) + @key = args[:key] if args.key?(:key) + @mpeg_cenc = args[:mpeg_cenc] if args.key?(:mpeg_cenc) + @sample_aes = args[:sample_aes] if args.key?(:sample_aes) + end + end + + # Additional information about the reasons for the failure. + class FailureDetail + include Google::Apis::Core::Hashable + + # A description of the failure. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + end + end + + # Overlaid jpeg image. + class Image + include Google::Apis::Core::Hashable + + # Target image opacity. Valid values: `1` (solid, default), `0` (transparent). + # Corresponds to the JSON property `alpha` + # @return [Float] + attr_accessor :alpha + + # 2D normalized coordinates. Default: ``0.0, 0.0`` + # Corresponds to the JSON property `resolution` + # @return [Google::Apis::TranscoderV1beta1::NormalizedCoordinate] + attr_accessor :resolution + + # Required. URI of the image in Cloud Storage. For example, `gs://bucket/inputs/ + # image.jpeg`. + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @alpha = args[:alpha] if args.key?(:alpha) + @resolution = args[:resolution] if args.key?(:resolution) + @uri = args[:uri] if args.key?(:uri) + end + end + + # Input asset. + class Input + include Google::Apis::Core::Hashable + + # A unique key for this input. Must be specified when using advanced mapping and + # edit lists. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # Preprocessing configurations. + # Corresponds to the JSON property `preprocessingConfig` + # @return [Google::Apis::TranscoderV1beta1::PreprocessingConfig] + attr_accessor :preprocessing_config + + # URI of the media. It must be stored in Cloud Storage. Example `gs://bucket/ + # inputs/file.mp4`. If empty the value will be populated from `Job.input_uri`. + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @preprocessing_config = args[:preprocessing_config] if args.key?(:preprocessing_config) + @uri = args[:uri] if args.key?(:uri) + end + end + + # Transcoding job resource. + class Job + include Google::Apis::Core::Hashable + + # Job configuration + # Corresponds to the JSON property `config` + # @return [Google::Apis::TranscoderV1beta1::JobConfig] + attr_accessor :config + + # Output only. The time the job was created. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # Output only. The time the transcoding finished. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Output only. List of failure details. This property may contain additional + # information about the failure when `failure_reason` is present. *Note*: This + # feature is not yet available. + # Corresponds to the JSON property `failureDetails` + # @return [Array] + attr_accessor :failure_details + + # Output only. A description of the reason for the failure. This property is + # always present when `state` is `FAILED`. + # Corresponds to the JSON property `failureReason` + # @return [String] + attr_accessor :failure_reason + + # Input only. Specify the `input_uri` to populate empty `uri` fields in each + # element of `Job.config.inputs` or `JobTemplate.config.inputs` when using + # template. URI of the media. It must be stored in Cloud Storage. For example, ` + # gs://bucket/inputs/file.mp4`. + # Corresponds to the JSON property `inputUri` + # @return [String] + attr_accessor :input_uri + + # The resource name of the job. Format: `projects/`project`/locations/`location`/ + # jobs/`job`` + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The origin URI. + # Corresponds to the JSON property `originUri` + # @return [Google::Apis::TranscoderV1beta1::OriginUri] + attr_accessor :origin_uri + + # Input only. Specify the `output_uri` to populate an empty `Job.config.output. + # uri` or `JobTemplate.config.output.uri` when using template. URI for the + # output file(s). For example, `gs://my-bucket/outputs/`. + # Corresponds to the JSON property `outputUri` + # @return [String] + attr_accessor :output_uri + + # Specify the priority of the job. Enter a value between 0 and 100, where 0 is + # the lowest priority and 100 is the highest priority. The default is 0. + # Corresponds to the JSON property `priority` + # @return [Fixnum] + attr_accessor :priority + + # Estimated fractional progress for each step, from `0` to `1`. + # Corresponds to the JSON property `progress` + # @return [Google::Apis::TranscoderV1beta1::Progress] + attr_accessor :progress + + # Output only. The time the transcoding started. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # Output only. The current state of the job. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # Input only. Specify the `template_id` to use for populating `Job.config`. The + # default is `preset/web-hd`. Preset Transcoder templates: - `preset/`preset_id`` + # - User defined JobTemplate: ``job_template_id`` + # Corresponds to the JSON property `templateId` + # @return [String] + attr_accessor :template_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @config = args[:config] if args.key?(:config) + @create_time = args[:create_time] if args.key?(:create_time) + @end_time = args[:end_time] if args.key?(:end_time) + @failure_details = args[:failure_details] if args.key?(:failure_details) + @failure_reason = args[:failure_reason] if args.key?(:failure_reason) + @input_uri = args[:input_uri] if args.key?(:input_uri) + @name = args[:name] if args.key?(:name) + @origin_uri = args[:origin_uri] if args.key?(:origin_uri) + @output_uri = args[:output_uri] if args.key?(:output_uri) + @priority = args[:priority] if args.key?(:priority) + @progress = args[:progress] if args.key?(:progress) + @start_time = args[:start_time] if args.key?(:start_time) + @state = args[:state] if args.key?(:state) + @template_id = args[:template_id] if args.key?(:template_id) + end + end + + # Job configuration + class JobConfig + include Google::Apis::Core::Hashable + + # List of ad breaks. Specifies where to insert ad break tags in the output + # manifests. + # Corresponds to the JSON property `adBreaks` + # @return [Array] + attr_accessor :ad_breaks + + # List of `Edit atom`s. Defines the ultimate timeline of the resulting file or + # manifest. + # Corresponds to the JSON property `editList` + # @return [Array] + attr_accessor :edit_list + + # List of elementary streams. + # Corresponds to the JSON property `elementaryStreams` + # @return [Array] + attr_accessor :elementary_streams + + # List of input assets stored in Cloud Storage. + # Corresponds to the JSON property `inputs` + # @return [Array] + attr_accessor :inputs + + # List of output manifests. + # Corresponds to the JSON property `manifests` + # @return [Array] + attr_accessor :manifests + + # List of multiplexing settings for output streams. + # Corresponds to the JSON property `muxStreams` + # @return [Array] + attr_accessor :mux_streams + + # Location of output file(s) in a Cloud Storage bucket. + # Corresponds to the JSON property `output` + # @return [Google::Apis::TranscoderV1beta1::Output] + attr_accessor :output + + # List of overlays on the output video, in descending Z-order. + # Corresponds to the JSON property `overlays` + # @return [Array] + attr_accessor :overlays + + # A Pub/Sub destination. + # Corresponds to the JSON property `pubsubDestination` + # @return [Google::Apis::TranscoderV1beta1::PubsubDestination] + attr_accessor :pubsub_destination + + # List of output sprite sheets. + # Corresponds to the JSON property `spriteSheets` + # @return [Array] + attr_accessor :sprite_sheets + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ad_breaks = args[:ad_breaks] if args.key?(:ad_breaks) + @edit_list = args[:edit_list] if args.key?(:edit_list) + @elementary_streams = args[:elementary_streams] if args.key?(:elementary_streams) + @inputs = args[:inputs] if args.key?(:inputs) + @manifests = args[:manifests] if args.key?(:manifests) + @mux_streams = args[:mux_streams] if args.key?(:mux_streams) + @output = args[:output] if args.key?(:output) + @overlays = args[:overlays] if args.key?(:overlays) + @pubsub_destination = args[:pubsub_destination] if args.key?(:pubsub_destination) + @sprite_sheets = args[:sprite_sheets] if args.key?(:sprite_sheets) + end + end + + # Transcoding job template resource. + class JobTemplate + include Google::Apis::Core::Hashable + + # Job configuration + # Corresponds to the JSON property `config` + # @return [Google::Apis::TranscoderV1beta1::JobConfig] + attr_accessor :config + + # The resource name of the job template. Format: `projects/`project`/locations/` + # location`/jobTemplates/`job_template`` + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @config = args[:config] if args.key?(:config) + @name = args[:name] if args.key?(:name) + end + end + + # Response message for `TranscoderService.ListJobTemplates`. + class ListJobTemplatesResponse + include Google::Apis::Core::Hashable + + # List of job templates in the specified region. + # Corresponds to the JSON property `jobTemplates` + # @return [Array] + attr_accessor :job_templates + + # The pagination token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @job_templates = args[:job_templates] if args.key?(:job_templates) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response message for `TranscoderService.ListJobs`. + class ListJobsResponse + include Google::Apis::Core::Hashable + + # List of jobs in the specified region. + # Corresponds to the JSON property `jobs` + # @return [Array] + attr_accessor :jobs + + # The pagination token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @jobs = args[:jobs] if args.key?(:jobs) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Manifest configuration. + class Manifest + include Google::Apis::Core::Hashable + + # The name of the generated file. The default is `"manifest"` with the extension + # suffix corresponding to the `Manifest.type`. + # Corresponds to the JSON property `fileName` + # @return [String] + attr_accessor :file_name + + # Required. List of user given `MuxStream.key`s that should appear in this + # manifest. When `Manifest.type` is `HLS`, a media manifest with name `MuxStream. + # key` and `.m3u8` extension is generated for each element of the `Manifest. + # mux_streams`. + # Corresponds to the JSON property `muxStreams` + # @return [Array] + attr_accessor :mux_streams + + # Required. Type of the manifest, can be "HLS" or "DASH". + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @file_name = args[:file_name] if args.key?(:file_name) + @mux_streams = args[:mux_streams] if args.key?(:mux_streams) + @type = args[:type] if args.key?(:type) + end + end + + # Configuration for MPEG Common Encryption (MPEG-CENC). + class MpegCommonEncryption + include Google::Apis::Core::Hashable + + # Required. 128 bit Key ID represented as lowercase hexadecimal digits for use + # with common encryption. + # Corresponds to the JSON property `keyId` + # @return [String] + attr_accessor :key_id + + # Required. Specify the encryption scheme. Supported encryption schemes: - 'cenc' + # - 'cbcs' + # Corresponds to the JSON property `scheme` + # @return [String] + attr_accessor :scheme + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key_id = args[:key_id] if args.key?(:key_id) + @scheme = args[:scheme] if args.key?(:scheme) + end + end + + # Multiplexing settings for output stream. + class MuxStream + include Google::Apis::Core::Hashable + + # The container format. The default is `"mp4"` Supported container formats: - ' + # ts' - 'fmp4'- the corresponding file extension is `".m4s"` - 'mp4' - 'vtt' + # Corresponds to the JSON property `container` + # @return [String] + attr_accessor :container + + # List of `ElementaryStream.key`s multiplexed in this stream. + # Corresponds to the JSON property `elementaryStreams` + # @return [Array] + attr_accessor :elementary_streams + + # Encryption settings. + # Corresponds to the JSON property `encryption` + # @return [Google::Apis::TranscoderV1beta1::Encryption] + attr_accessor :encryption + + # The name of the generated file. The default is `MuxStream.key` with the + # extension suffix corresponding to the `MuxStream.container`. Individual + # segments also have an incremental 10-digit zero-padded suffix starting from 0 + # before the extension, such as `"mux_stream0000000123.ts"`. + # Corresponds to the JSON property `fileName` + # @return [String] + attr_accessor :file_name + + # A unique key for this multiplexed stream. HLS media manifests will be named ` + # MuxStream.key` with the `".m3u8"` extension suffix. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # Segment settings for `"ts"`, `"fmp4"` and `"vtt"`. + # Corresponds to the JSON property `segmentSettings` + # @return [Google::Apis::TranscoderV1beta1::SegmentSettings] + attr_accessor :segment_settings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @container = args[:container] if args.key?(:container) + @elementary_streams = args[:elementary_streams] if args.key?(:elementary_streams) + @encryption = args[:encryption] if args.key?(:encryption) + @file_name = args[:file_name] if args.key?(:file_name) + @key = args[:key] if args.key?(:key) + @segment_settings = args[:segment_settings] if args.key?(:segment_settings) + end + end + + # 2D normalized coordinates. Default: ``0.0, 0.0`` + class NormalizedCoordinate + include Google::Apis::Core::Hashable + + # Normalized x coordinate. + # Corresponds to the JSON property `x` + # @return [Float] + attr_accessor :x + + # Normalized y coordinate. + # Corresponds to the JSON property `y` + # @return [Float] + attr_accessor :y + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @x = args[:x] if args.key?(:x) + @y = args[:y] if args.key?(:y) + end + end + + # The origin URI. + class OriginUri + include Google::Apis::Core::Hashable + + # Dash manifest URI. If multiple Dash manifests are created, only the first one + # is listed. + # Corresponds to the JSON property `dash` + # @return [String] + attr_accessor :dash + + # HLS manifest URI per https://tools.ietf.org/html/rfc8216#section-4.3.4. If + # multiple HLS manifests are created, only the first one is listed. + # Corresponds to the JSON property `hls` + # @return [String] + attr_accessor :hls + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @dash = args[:dash] if args.key?(:dash) + @hls = args[:hls] if args.key?(:hls) + end + end + + # Location of output file(s) in a Cloud Storage bucket. + class Output + include Google::Apis::Core::Hashable + + # URI for the output file(s). For example, `gs://my-bucket/outputs/`. If empty + # the value is populated from `Job.output_uri`. + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @uri = args[:uri] if args.key?(:uri) + end + end + + # Overlay configuration. + class Overlay + include Google::Apis::Core::Hashable + + # List of Animations. The list should be chronological, without any time overlap. + # Corresponds to the JSON property `animations` + # @return [Array] + attr_accessor :animations + + # Overlaid jpeg image. + # Corresponds to the JSON property `image` + # @return [Google::Apis::TranscoderV1beta1::Image] + attr_accessor :image + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @animations = args[:animations] if args.key?(:animations) + @image = args[:image] if args.key?(:image) + end + end + + # Preprocessing configurations. + class PreprocessingConfig + include Google::Apis::Core::Hashable + + # Audio preprocessing configuration. + # Corresponds to the JSON property `audio` + # @return [Google::Apis::TranscoderV1beta1::Audio] + attr_accessor :audio + + # Color preprocessing configuration. + # Corresponds to the JSON property `color` + # @return [Google::Apis::TranscoderV1beta1::Color] + attr_accessor :color + + # Video cropping configuration. + # Corresponds to the JSON property `crop` + # @return [Google::Apis::TranscoderV1beta1::Crop] + attr_accessor :crop + + # Deblock preprocessing configuration. + # Corresponds to the JSON property `deblock` + # @return [Google::Apis::TranscoderV1beta1::Deblock] + attr_accessor :deblock + + # Denoise preprocessing configuration. + # Corresponds to the JSON property `denoise` + # @return [Google::Apis::TranscoderV1beta1::Denoise] + attr_accessor :denoise + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audio = args[:audio] if args.key?(:audio) + @color = args[:color] if args.key?(:color) + @crop = args[:crop] if args.key?(:crop) + @deblock = args[:deblock] if args.key?(:deblock) + @denoise = args[:denoise] if args.key?(:denoise) + end + end + + # Estimated fractional progress for each step, from `0` to `1`. + class Progress + include Google::Apis::Core::Hashable + + # Estimated fractional progress for `analyzing` step. + # Corresponds to the JSON property `analyzed` + # @return [Float] + attr_accessor :analyzed + + # Estimated fractional progress for `encoding` step. + # Corresponds to the JSON property `encoded` + # @return [Float] + attr_accessor :encoded + + # Estimated fractional progress for `notifying` step. + # Corresponds to the JSON property `notified` + # @return [Float] + attr_accessor :notified + + # Estimated fractional progress for `uploading` step. + # Corresponds to the JSON property `uploaded` + # @return [Float] + attr_accessor :uploaded + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @analyzed = args[:analyzed] if args.key?(:analyzed) + @encoded = args[:encoded] if args.key?(:encoded) + @notified = args[:notified] if args.key?(:notified) + @uploaded = args[:uploaded] if args.key?(:uploaded) + end + end + + # A Pub/Sub destination. + class PubsubDestination + include Google::Apis::Core::Hashable + + # The name of the Pub/Sub topic to publish job completion notification to. For + # example: `projects/`project`/topics/`topic``. + # Corresponds to the JSON property `topic` + # @return [String] + attr_accessor :topic + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @topic = args[:topic] if args.key?(:topic) + end + end + + # Configuration for SAMPLE-AES encryption. + class SampleAesEncryption + include Google::Apis::Core::Hashable + + # Required. URI of the key delivery service. This URI is inserted into the M3U8 + # header. + # Corresponds to the JSON property `keyUri` + # @return [String] + attr_accessor :key_uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key_uri = args[:key_uri] if args.key?(:key_uri) + end + end + + # Segment settings for `"ts"`, `"fmp4"` and `"vtt"`. + class SegmentSettings + include Google::Apis::Core::Hashable + + # Required. Create an individual segment file. The default is `false`. + # Corresponds to the JSON property `individualSegments` + # @return [Boolean] + attr_accessor :individual_segments + alias_method :individual_segments?, :individual_segments + + # Duration of the segments in seconds. The default is `"6.0s"`. + # Corresponds to the JSON property `segmentDuration` + # @return [String] + attr_accessor :segment_duration + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @individual_segments = args[:individual_segments] if args.key?(:individual_segments) + @segment_duration = args[:segment_duration] if args.key?(:segment_duration) + end + end + + # Sprite sheet configuration. + class SpriteSheet + include Google::Apis::Core::Hashable + + # The maximum number of sprites per row in a sprite sheet. The default is 0, + # which indicates no maximum limit. + # Corresponds to the JSON property `columnCount` + # @return [Fixnum] + attr_accessor :column_count + + # End time in seconds, relative to the output file timeline. When ` + # end_time_offset` is not specified, the sprites are generated until the end of + # the output file. + # Corresponds to the JSON property `endTimeOffset` + # @return [String] + attr_accessor :end_time_offset + + # Required. File name prefix for the generated sprite sheets. Each sprite sheet + # has an incremental 10-digit zero-padded suffix starting from 0 before the + # extension, such as `"sprite_sheet0000000123.jpeg"`. + # Corresponds to the JSON property `filePrefix` + # @return [String] + attr_accessor :file_prefix + + # Format type. The default is `"jpeg"`. Supported formats: - 'jpeg' + # Corresponds to the JSON property `format` + # @return [String] + attr_accessor :format + + # Starting from `0s`, create sprites at regular intervals. Specify the interval + # value in seconds. + # Corresponds to the JSON property `interval` + # @return [String] + attr_accessor :interval + + # The maximum number of rows per sprite sheet. When the sprite sheet is full, a + # new sprite sheet is created. The default is 0, which indicates no maximum + # limit. + # Corresponds to the JSON property `rowCount` + # @return [Fixnum] + attr_accessor :row_count + + # Required. The height of sprite in pixels. Must be an even integer. + # Corresponds to the JSON property `spriteHeightPixels` + # @return [Fixnum] + attr_accessor :sprite_height_pixels + + # Required. The width of sprite in pixels. Must be an even integer. + # Corresponds to the JSON property `spriteWidthPixels` + # @return [Fixnum] + attr_accessor :sprite_width_pixels + + # Start time in seconds, relative to the output file timeline. Determines the + # first sprite to pick. The default is `0s`. + # Corresponds to the JSON property `startTimeOffset` + # @return [String] + attr_accessor :start_time_offset + + # Total number of sprites. Create the specified number of sprites distributed + # evenly across the timeline of the output media. The default is 100. + # Corresponds to the JSON property `totalCount` + # @return [Fixnum] + attr_accessor :total_count + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @column_count = args[:column_count] if args.key?(:column_count) + @end_time_offset = args[:end_time_offset] if args.key?(:end_time_offset) + @file_prefix = args[:file_prefix] if args.key?(:file_prefix) + @format = args[:format] if args.key?(:format) + @interval = args[:interval] if args.key?(:interval) + @row_count = args[:row_count] if args.key?(:row_count) + @sprite_height_pixels = args[:sprite_height_pixels] if args.key?(:sprite_height_pixels) + @sprite_width_pixels = args[:sprite_width_pixels] if args.key?(:sprite_width_pixels) + @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset) + @total_count = args[:total_count] if args.key?(:total_count) + end + end + + # The mapping for the `Job.edit_list` atoms with text `EditAtom.inputs`. + class TextAtom + include Google::Apis::Core::Hashable + + # List of `Job.inputs` that should be embedded in this atom. Only one input is + # supported. + # Corresponds to the JSON property `inputs` + # @return [Array] + attr_accessor :inputs + + # Required. The `EditAtom.key` that references atom with text inputs in the `Job. + # edit_list`. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @inputs = args[:inputs] if args.key?(:inputs) + @key = args[:key] if args.key?(:key) + end + end + + # Identifies which input file and track should be used. + class TextInput + include Google::Apis::Core::Hashable + + # Required. The `Input.key` that identifies the input file. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # Required. The zero-based index of the track in the input file. + # Corresponds to the JSON property `track` + # @return [Fixnum] + attr_accessor :track + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @track = args[:track] if args.key?(:track) + end + end + + # Encoding of a text stream. For example, closed captions or subtitles. + class TextStream + include Google::Apis::Core::Hashable + + # The codec for this text stream. The default is `"webvtt"`. Supported text + # codecs: - 'srt' - 'ttml' - 'cea608' - 'cea708' - 'webvtt' + # Corresponds to the JSON property `codec` + # @return [String] + attr_accessor :codec + + # Required. The BCP-47 language code, such as `"en-US"` or `"sr-Latn"`. For more + # information, see https://www.unicode.org/reports/tr35/# + # Unicode_locale_identifier. + # Corresponds to the JSON property `languageCode` + # @return [String] + attr_accessor :language_code + + # The mapping for the `Job.edit_list` atoms with text `EditAtom.inputs`. + # Corresponds to the JSON property `mapping` + # @return [Array] + attr_accessor :mapping + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @codec = args[:codec] if args.key?(:codec) + @language_code = args[:language_code] if args.key?(:language_code) + @mapping = args[:mapping] if args.key?(:mapping) + end + end + + # Video stream resource. + class VideoStream + include Google::Apis::Core::Hashable + + # Specifies whether an open Group of Pictures (GOP) structure should be allowed + # or not. The default is `false`. + # Corresponds to the JSON property `allowOpenGop` + # @return [Boolean] + attr_accessor :allow_open_gop + alias_method :allow_open_gop?, :allow_open_gop + + # Specify the intensity of the adaptive quantizer (AQ). Must be between 0 and 1, + # where 0 disables the quantizer and 1 maximizes the quantizer. A higher value + # equals a lower bitrate but smoother image. The default is 0. + # Corresponds to the JSON property `aqStrength` + # @return [Float] + attr_accessor :aq_strength + + # The number of consecutive B-frames. Must be greater than or equal to zero. + # Must be less than `VideoStream.gop_frame_count` if set. The default is 0. + # Corresponds to the JSON property `bFrameCount` + # @return [Fixnum] + attr_accessor :b_frame_count + + # Allow B-pyramid for reference frame selection. This may not be supported on + # all decoders. The default is `false`. + # Corresponds to the JSON property `bPyramid` + # @return [Boolean] + attr_accessor :b_pyramid + alias_method :b_pyramid?, :b_pyramid + + # Required. The video bitrate in bits per second. Must be between 1 and 1,000, + # 000,000. + # Corresponds to the JSON property `bitrateBps` + # @return [Fixnum] + attr_accessor :bitrate_bps + + # Codec type. The following codecs are supported: * `h264` (default) * `h265` * ` + # vp9` + # Corresponds to the JSON property `codec` + # @return [String] + attr_accessor :codec + + # Target CRF level. Must be between 10 and 36, where 10 is the highest quality + # and 36 is the most efficient compression. The default is 21. + # Corresponds to the JSON property `crfLevel` + # @return [Fixnum] + attr_accessor :crf_level + + # Use two-pass encoding strategy to achieve better video quality. `VideoStream. + # rate_control_mode` must be `"vbr"`. The default is `false`. + # Corresponds to the JSON property `enableTwoPass` + # @return [Boolean] + attr_accessor :enable_two_pass + alias_method :enable_two_pass?, :enable_two_pass + + # The entropy coder to use. The default is `"cabac"`. Supported entropy coders: - + # 'cavlc' - 'cabac' + # Corresponds to the JSON property `entropyCoder` + # @return [String] + attr_accessor :entropy_coder + + # Required. The target video frame rate in frames per second (FPS). Must be less + # than or equal to 120. Will default to the input frame rate if larger than the + # input frame rate. The API will generate an output FPS that is divisible by the + # input FPS, and smaller or equal to the target FPS. The following table shows + # the computed video FPS given the target FPS (in parenthesis) and input FPS (in + # the first column): | | (30) | (60) | (25) | (50) | |--------|--------|--------| + # ------|------| | 240 | Fail | Fail | Fail | Fail | | 120 | 30 | 60 | 20 | 30 | + # | 100 | 25 | 50 | 20 | 30 | | 50 | 25 | 50 | 20 | 30 | | 60 | 30 | 60 | 20 | + # 30 | | 59.94 | 29.97 | 59.94 | 20 | 30 | | 48 | 24 | 48 | 20 | 30 | | 30 | 30 | + # 30 | 20 | 30 | | 25 | 25 | 25 | 20 | 30 | | 24 | 24 | 24 | 20 | 30 | | 23.976 + # | 23.976 | 23.976 | 20 | 30 | | 15 | 15 | 15 | 20 | 30 | | 12 | 12 | 12 | 20 | + # 30 | | 10 | 10 | 10 | 20 | 30 | + # Corresponds to the JSON property `frameRate` + # @return [Float] + attr_accessor :frame_rate + + # Select the GOP size based on the specified duration. The default is `"3s"`. + # Corresponds to the JSON property `gopDuration` + # @return [String] + attr_accessor :gop_duration + + # Select the GOP size based on the specified frame count. Must be greater than + # zero. + # Corresponds to the JSON property `gopFrameCount` + # @return [Fixnum] + attr_accessor :gop_frame_count + + # The height of the video in pixels. Must be an even integer. When not specified, + # the height is adjusted to match the specified width and input aspect ratio. + # If both are omitted, the input height is used. + # Corresponds to the JSON property `heightPixels` + # @return [Fixnum] + attr_accessor :height_pixels + + # Pixel format to use. The default is `"yuv420p"`. Supported pixel formats: - ' + # yuv420p' pixel format. - 'yuv422p' pixel format. - 'yuv444p' pixel format. - ' + # yuv420p10' 10-bit HDR pixel format. - 'yuv422p10' 10-bit HDR pixel format. - ' + # yuv444p10' 10-bit HDR pixel format. - 'yuv420p12' 12-bit HDR pixel format. - ' + # yuv422p12' 12-bit HDR pixel format. - 'yuv444p12' 12-bit HDR pixel format. + # Corresponds to the JSON property `pixelFormat` + # @return [String] + attr_accessor :pixel_format + + # Enforces the specified codec preset. The default is `veryfast`. The available + # options are FFmpeg-compatible. Note that certain values for this field may + # cause the transcoder to override other fields you set in the `VideoStream` + # message. + # Corresponds to the JSON property `preset` + # @return [String] + attr_accessor :preset + + # Enforces the specified codec profile. The following profiles are supported: * ` + # baseline` * `main` * `high` (default) The available options are FFmpeg- + # compatible. Note that certain values for this field may cause the transcoder + # to override other fields you set in the `VideoStream` message. + # Corresponds to the JSON property `profile` + # @return [String] + attr_accessor :profile + + # Specify the `rate_control_mode`. The default is `"vbr"`. Supported rate + # control modes: - 'vbr' - variable bitrate - 'crf' - constant rate factor + # Corresponds to the JSON property `rateControlMode` + # @return [String] + attr_accessor :rate_control_mode + + # Enforces the specified codec tune. The available options are FFmpeg-compatible. + # Note that certain values for this field may cause the transcoder to override + # other fields you set in the `VideoStream` message. + # Corresponds to the JSON property `tune` + # @return [String] + attr_accessor :tune + + # Initial fullness of the Video Buffering Verifier (VBV) buffer in bits. Must be + # greater than zero. The default is equal to 90% of `VideoStream.vbv_size_bits`. + # Corresponds to the JSON property `vbvFullnessBits` + # @return [Fixnum] + attr_accessor :vbv_fullness_bits + + # Size of the Video Buffering Verifier (VBV) buffer in bits. Must be greater + # than zero. The default is equal to `VideoStream.bitrate_bps`. + # Corresponds to the JSON property `vbvSizeBits` + # @return [Fixnum] + attr_accessor :vbv_size_bits + + # The width of the video in pixels. Must be an even integer. When not specified, + # the width is adjusted to match the specified height and input aspect ratio. If + # both are omitted, the input width is used. + # Corresponds to the JSON property `widthPixels` + # @return [Fixnum] + attr_accessor :width_pixels + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @allow_open_gop = args[:allow_open_gop] if args.key?(:allow_open_gop) + @aq_strength = args[:aq_strength] if args.key?(:aq_strength) + @b_frame_count = args[:b_frame_count] if args.key?(:b_frame_count) + @b_pyramid = args[:b_pyramid] if args.key?(:b_pyramid) + @bitrate_bps = args[:bitrate_bps] if args.key?(:bitrate_bps) + @codec = args[:codec] if args.key?(:codec) + @crf_level = args[:crf_level] if args.key?(:crf_level) + @enable_two_pass = args[:enable_two_pass] if args.key?(:enable_two_pass) + @entropy_coder = args[:entropy_coder] if args.key?(:entropy_coder) + @frame_rate = args[:frame_rate] if args.key?(:frame_rate) + @gop_duration = args[:gop_duration] if args.key?(:gop_duration) + @gop_frame_count = args[:gop_frame_count] if args.key?(:gop_frame_count) + @height_pixels = args[:height_pixels] if args.key?(:height_pixels) + @pixel_format = args[:pixel_format] if args.key?(:pixel_format) + @preset = args[:preset] if args.key?(:preset) + @profile = args[:profile] if args.key?(:profile) + @rate_control_mode = args[:rate_control_mode] if args.key?(:rate_control_mode) + @tune = args[:tune] if args.key?(:tune) + @vbv_fullness_bits = args[:vbv_fullness_bits] if args.key?(:vbv_fullness_bits) + @vbv_size_bits = args[:vbv_size_bits] if args.key?(:vbv_size_bits) + @width_pixels = args[:width_pixels] if args.key?(:width_pixels) + end + end + end + end +end diff --git a/generated/google/apis/transcoder_v1beta1/representations.rb b/generated/google/apis/transcoder_v1beta1/representations.rb new file mode 100644 index 000000000..b807c3bc8 --- /dev/null +++ b/generated/google/apis/transcoder_v1beta1/representations.rb @@ -0,0 +1,756 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module TranscoderV1beta1 + + class AdBreak + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Aes128Encryption + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Animation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnimationEnd + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnimationFade + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnimationStatic + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Audio + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AudioAtom + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AudioChannel + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AudioChannelInput + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AudioStream + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Color + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Crop + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Deblock + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Denoise + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class EditAtom + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ElementaryStream + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Empty + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Encryption + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FailureDetail + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Image + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Input + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Job + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class JobConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class JobTemplate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListJobTemplatesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListJobsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Manifest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MpegCommonEncryption + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MuxStream + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NormalizedCoordinate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OriginUri + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Output + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Overlay + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PreprocessingConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Progress + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PubsubDestination + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SampleAesEncryption + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SegmentSettings + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SpriteSheet + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TextAtom + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TextInput + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TextStream + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class VideoStream + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AdBreak + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :start_time_offset, as: 'startTimeOffset' + end + end + + class Aes128Encryption + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key_uri, as: 'keyUri' + end + end + + class Animation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :animation_end, as: 'animationEnd', class: Google::Apis::TranscoderV1beta1::AnimationEnd, decorator: Google::Apis::TranscoderV1beta1::AnimationEnd::Representation + + property :animation_fade, as: 'animationFade', class: Google::Apis::TranscoderV1beta1::AnimationFade, decorator: Google::Apis::TranscoderV1beta1::AnimationFade::Representation + + property :animation_static, as: 'animationStatic', class: Google::Apis::TranscoderV1beta1::AnimationStatic, decorator: Google::Apis::TranscoderV1beta1::AnimationStatic::Representation + + end + end + + class AnimationEnd + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :start_time_offset, as: 'startTimeOffset' + end + end + + class AnimationFade + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time_offset, as: 'endTimeOffset' + property :fade_type, as: 'fadeType' + property :start_time_offset, as: 'startTimeOffset' + property :xy, as: 'xy', class: Google::Apis::TranscoderV1beta1::NormalizedCoordinate, decorator: Google::Apis::TranscoderV1beta1::NormalizedCoordinate::Representation + + end + end + + class AnimationStatic + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :start_time_offset, as: 'startTimeOffset' + property :xy, as: 'xy', class: Google::Apis::TranscoderV1beta1::NormalizedCoordinate, decorator: Google::Apis::TranscoderV1beta1::NormalizedCoordinate::Representation + + end + end + + class Audio + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :high_boost, as: 'highBoost' + property :low_boost, as: 'lowBoost' + property :lufs, as: 'lufs' + end + end + + class AudioAtom + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :channels, as: 'channels', class: Google::Apis::TranscoderV1beta1::AudioChannel, decorator: Google::Apis::TranscoderV1beta1::AudioChannel::Representation + + property :key, as: 'key' + end + end + + class AudioChannel + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :inputs, as: 'inputs', class: Google::Apis::TranscoderV1beta1::AudioChannelInput, decorator: Google::Apis::TranscoderV1beta1::AudioChannelInput::Representation + + end + end + + class AudioChannelInput + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :channel, as: 'channel' + property :gain_db, as: 'gainDb' + property :key, as: 'key' + property :track, as: 'track' + end + end + + class AudioStream + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bitrate_bps, as: 'bitrateBps' + property :channel_count, as: 'channelCount' + collection :channel_layout, as: 'channelLayout' + property :codec, as: 'codec' + collection :mapping, as: 'mapping', class: Google::Apis::TranscoderV1beta1::AudioAtom, decorator: Google::Apis::TranscoderV1beta1::AudioAtom::Representation + + property :sample_rate_hertz, as: 'sampleRateHertz' + end + end + + class Color + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :brightness, as: 'brightness' + property :contrast, as: 'contrast' + property :saturation, as: 'saturation' + end + end + + class Crop + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bottom_pixels, as: 'bottomPixels' + property :left_pixels, as: 'leftPixels' + property :right_pixels, as: 'rightPixels' + property :top_pixels, as: 'topPixels' + end + end + + class Deblock + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :enabled, as: 'enabled' + property :strength, as: 'strength' + end + end + + class Denoise + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :strength, as: 'strength' + property :tune, as: 'tune' + end + end + + class EditAtom + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time_offset, as: 'endTimeOffset' + collection :inputs, as: 'inputs' + property :key, as: 'key' + property :start_time_offset, as: 'startTimeOffset' + end + end + + class ElementaryStream + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :audio_stream, as: 'audioStream', class: Google::Apis::TranscoderV1beta1::AudioStream, decorator: Google::Apis::TranscoderV1beta1::AudioStream::Representation + + property :key, as: 'key' + property :text_stream, as: 'textStream', class: Google::Apis::TranscoderV1beta1::TextStream, decorator: Google::Apis::TranscoderV1beta1::TextStream::Representation + + property :video_stream, as: 'videoStream', class: Google::Apis::TranscoderV1beta1::VideoStream, decorator: Google::Apis::TranscoderV1beta1::VideoStream::Representation + + end + end + + class Empty + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class Encryption + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :aes128, as: 'aes128', class: Google::Apis::TranscoderV1beta1::Aes128Encryption, decorator: Google::Apis::TranscoderV1beta1::Aes128Encryption::Representation + + property :iv, as: 'iv' + property :key, as: 'key' + property :mpeg_cenc, as: 'mpegCenc', class: Google::Apis::TranscoderV1beta1::MpegCommonEncryption, decorator: Google::Apis::TranscoderV1beta1::MpegCommonEncryption::Representation + + property :sample_aes, as: 'sampleAes', class: Google::Apis::TranscoderV1beta1::SampleAesEncryption, decorator: Google::Apis::TranscoderV1beta1::SampleAesEncryption::Representation + + end + end + + class FailureDetail + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + end + end + + class Image + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :alpha, as: 'alpha' + property :resolution, as: 'resolution', class: Google::Apis::TranscoderV1beta1::NormalizedCoordinate, decorator: Google::Apis::TranscoderV1beta1::NormalizedCoordinate::Representation + + property :uri, as: 'uri' + end + end + + class Input + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :preprocessing_config, as: 'preprocessingConfig', class: Google::Apis::TranscoderV1beta1::PreprocessingConfig, decorator: Google::Apis::TranscoderV1beta1::PreprocessingConfig::Representation + + property :uri, as: 'uri' + end + end + + class Job + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :config, as: 'config', class: Google::Apis::TranscoderV1beta1::JobConfig, decorator: Google::Apis::TranscoderV1beta1::JobConfig::Representation + + property :create_time, as: 'createTime' + property :end_time, as: 'endTime' + collection :failure_details, as: 'failureDetails', class: Google::Apis::TranscoderV1beta1::FailureDetail, decorator: Google::Apis::TranscoderV1beta1::FailureDetail::Representation + + property :failure_reason, as: 'failureReason' + property :input_uri, as: 'inputUri' + property :name, as: 'name' + property :origin_uri, as: 'originUri', class: Google::Apis::TranscoderV1beta1::OriginUri, decorator: Google::Apis::TranscoderV1beta1::OriginUri::Representation + + property :output_uri, as: 'outputUri' + property :priority, as: 'priority' + property :progress, as: 'progress', class: Google::Apis::TranscoderV1beta1::Progress, decorator: Google::Apis::TranscoderV1beta1::Progress::Representation + + property :start_time, as: 'startTime' + property :state, as: 'state' + property :template_id, as: 'templateId' + end + end + + class JobConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :ad_breaks, as: 'adBreaks', class: Google::Apis::TranscoderV1beta1::AdBreak, decorator: Google::Apis::TranscoderV1beta1::AdBreak::Representation + + collection :edit_list, as: 'editList', class: Google::Apis::TranscoderV1beta1::EditAtom, decorator: Google::Apis::TranscoderV1beta1::EditAtom::Representation + + collection :elementary_streams, as: 'elementaryStreams', class: Google::Apis::TranscoderV1beta1::ElementaryStream, decorator: Google::Apis::TranscoderV1beta1::ElementaryStream::Representation + + collection :inputs, as: 'inputs', class: Google::Apis::TranscoderV1beta1::Input, decorator: Google::Apis::TranscoderV1beta1::Input::Representation + + collection :manifests, as: 'manifests', class: Google::Apis::TranscoderV1beta1::Manifest, decorator: Google::Apis::TranscoderV1beta1::Manifest::Representation + + collection :mux_streams, as: 'muxStreams', class: Google::Apis::TranscoderV1beta1::MuxStream, decorator: Google::Apis::TranscoderV1beta1::MuxStream::Representation + + property :output, as: 'output', class: Google::Apis::TranscoderV1beta1::Output, decorator: Google::Apis::TranscoderV1beta1::Output::Representation + + collection :overlays, as: 'overlays', class: Google::Apis::TranscoderV1beta1::Overlay, decorator: Google::Apis::TranscoderV1beta1::Overlay::Representation + + property :pubsub_destination, as: 'pubsubDestination', class: Google::Apis::TranscoderV1beta1::PubsubDestination, decorator: Google::Apis::TranscoderV1beta1::PubsubDestination::Representation + + collection :sprite_sheets, as: 'spriteSheets', class: Google::Apis::TranscoderV1beta1::SpriteSheet, decorator: Google::Apis::TranscoderV1beta1::SpriteSheet::Representation + + end + end + + class JobTemplate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :config, as: 'config', class: Google::Apis::TranscoderV1beta1::JobConfig, decorator: Google::Apis::TranscoderV1beta1::JobConfig::Representation + + property :name, as: 'name' + end + end + + class ListJobTemplatesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :job_templates, as: 'jobTemplates', class: Google::Apis::TranscoderV1beta1::JobTemplate, decorator: Google::Apis::TranscoderV1beta1::JobTemplate::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListJobsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :jobs, as: 'jobs', class: Google::Apis::TranscoderV1beta1::Job, decorator: Google::Apis::TranscoderV1beta1::Job::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class Manifest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :file_name, as: 'fileName' + collection :mux_streams, as: 'muxStreams' + property :type, as: 'type' + end + end + + class MpegCommonEncryption + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key_id, as: 'keyId' + property :scheme, as: 'scheme' + end + end + + class MuxStream + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :container, as: 'container' + collection :elementary_streams, as: 'elementaryStreams' + property :encryption, as: 'encryption', class: Google::Apis::TranscoderV1beta1::Encryption, decorator: Google::Apis::TranscoderV1beta1::Encryption::Representation + + property :file_name, as: 'fileName' + property :key, as: 'key' + property :segment_settings, as: 'segmentSettings', class: Google::Apis::TranscoderV1beta1::SegmentSettings, decorator: Google::Apis::TranscoderV1beta1::SegmentSettings::Representation + + end + end + + class NormalizedCoordinate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :x, as: 'x' + property :y, as: 'y' + end + end + + class OriginUri + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :dash, as: 'dash' + property :hls, as: 'hls' + end + end + + class Output + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :uri, as: 'uri' + end + end + + class Overlay + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :animations, as: 'animations', class: Google::Apis::TranscoderV1beta1::Animation, decorator: Google::Apis::TranscoderV1beta1::Animation::Representation + + property :image, as: 'image', class: Google::Apis::TranscoderV1beta1::Image, decorator: Google::Apis::TranscoderV1beta1::Image::Representation + + end + end + + class PreprocessingConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :audio, as: 'audio', class: Google::Apis::TranscoderV1beta1::Audio, decorator: Google::Apis::TranscoderV1beta1::Audio::Representation + + property :color, as: 'color', class: Google::Apis::TranscoderV1beta1::Color, decorator: Google::Apis::TranscoderV1beta1::Color::Representation + + property :crop, as: 'crop', class: Google::Apis::TranscoderV1beta1::Crop, decorator: Google::Apis::TranscoderV1beta1::Crop::Representation + + property :deblock, as: 'deblock', class: Google::Apis::TranscoderV1beta1::Deblock, decorator: Google::Apis::TranscoderV1beta1::Deblock::Representation + + property :denoise, as: 'denoise', class: Google::Apis::TranscoderV1beta1::Denoise, decorator: Google::Apis::TranscoderV1beta1::Denoise::Representation + + end + end + + class Progress + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :analyzed, as: 'analyzed' + property :encoded, as: 'encoded' + property :notified, as: 'notified' + property :uploaded, as: 'uploaded' + end + end + + class PubsubDestination + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :topic, as: 'topic' + end + end + + class SampleAesEncryption + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key_uri, as: 'keyUri' + end + end + + class SegmentSettings + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :individual_segments, as: 'individualSegments' + property :segment_duration, as: 'segmentDuration' + end + end + + class SpriteSheet + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :column_count, as: 'columnCount' + property :end_time_offset, as: 'endTimeOffset' + property :file_prefix, as: 'filePrefix' + property :format, as: 'format' + property :interval, as: 'interval' + property :row_count, as: 'rowCount' + property :sprite_height_pixels, as: 'spriteHeightPixels' + property :sprite_width_pixels, as: 'spriteWidthPixels' + property :start_time_offset, as: 'startTimeOffset' + property :total_count, as: 'totalCount' + end + end + + class TextAtom + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :inputs, as: 'inputs', class: Google::Apis::TranscoderV1beta1::TextInput, decorator: Google::Apis::TranscoderV1beta1::TextInput::Representation + + property :key, as: 'key' + end + end + + class TextInput + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :track, as: 'track' + end + end + + class TextStream + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :codec, as: 'codec' + property :language_code, as: 'languageCode' + collection :mapping, as: 'mapping', class: Google::Apis::TranscoderV1beta1::TextAtom, decorator: Google::Apis::TranscoderV1beta1::TextAtom::Representation + + end + end + + class VideoStream + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :allow_open_gop, as: 'allowOpenGop' + property :aq_strength, as: 'aqStrength' + property :b_frame_count, as: 'bFrameCount' + property :b_pyramid, as: 'bPyramid' + property :bitrate_bps, as: 'bitrateBps' + property :codec, as: 'codec' + property :crf_level, as: 'crfLevel' + property :enable_two_pass, as: 'enableTwoPass' + property :entropy_coder, as: 'entropyCoder' + property :frame_rate, as: 'frameRate' + property :gop_duration, as: 'gopDuration' + property :gop_frame_count, as: 'gopFrameCount' + property :height_pixels, as: 'heightPixels' + property :pixel_format, as: 'pixelFormat' + property :preset, as: 'preset' + property :profile, as: 'profile' + property :rate_control_mode, as: 'rateControlMode' + property :tune, as: 'tune' + property :vbv_fullness_bits, as: 'vbvFullnessBits' + property :vbv_size_bits, as: 'vbvSizeBits' + property :width_pixels, as: 'widthPixels' + end + end + end + end +end diff --git a/generated/google/apis/transcoder_v1beta1/service.rb b/generated/google/apis/transcoder_v1beta1/service.rb new file mode 100644 index 000000000..cda57b381 --- /dev/null +++ b/generated/google/apis/transcoder_v1beta1/service.rb @@ -0,0 +1,329 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module TranscoderV1beta1 + # Transcoder API + # + # This API converts video files into formats suitable for consumer distribution. + # + # @example + # require 'google/apis/transcoder_v1beta1' + # + # Transcoder = Google::Apis::TranscoderV1beta1 # Alias the module + # service = Transcoder::TranscoderService.new + # + # @see https://cloud.google.com/transcoder/docs/ + class TranscoderService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://transcoder.googleapis.com/', '') + @batch_path = 'batch' + end + + # Creates a job template in the specified region. + # @param [String] parent + # Required. The parent location to create this job template. Format: `projects/` + # project`/locations/`location`` + # @param [Google::Apis::TranscoderV1beta1::JobTemplate] job_template_object + # @param [String] job_template_id + # Required. The ID to use for the job template, which will become the final + # component of the job template's resource name. This value should be 4-63 + # characters, and valid characters must match the regular expression `a-zA-Z*`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::TranscoderV1beta1::JobTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::TranscoderV1beta1::JobTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_location_job_template(parent, job_template_object = nil, job_template_id: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+parent}/jobTemplates', options) + command.request_representation = Google::Apis::TranscoderV1beta1::JobTemplate::Representation + command.request_object = job_template_object + command.response_representation = Google::Apis::TranscoderV1beta1::JobTemplate::Representation + command.response_class = Google::Apis::TranscoderV1beta1::JobTemplate + command.params['parent'] = parent unless parent.nil? + command.query['jobTemplateId'] = job_template_id unless job_template_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a job template. + # @param [String] name + # Required. The name of the job template to delete. `projects/`project`/ + # locations/`location`/jobTemplates/`job_template`` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::TranscoderV1beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::TranscoderV1beta1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_location_job_template(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::TranscoderV1beta1::Empty::Representation + command.response_class = Google::Apis::TranscoderV1beta1::Empty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns the job template data. + # @param [String] name + # Required. The name of the job template to retrieve. Format: `projects/`project` + # /locations/`location`/jobTemplates/`job_template`` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::TranscoderV1beta1::JobTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::TranscoderV1beta1::JobTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_location_job_template(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::TranscoderV1beta1::JobTemplate::Representation + command.response_class = Google::Apis::TranscoderV1beta1::JobTemplate + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists job templates in the specified region. + # @param [String] parent + # Required. The parent location from which to retrieve the collection of job + # templates. Format: `projects/`project`/locations/`location`` + # @param [Fixnum] page_size + # The maximum number of items to return. + # @param [String] page_token + # The `next_page_token` value returned from a previous List request, if any. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::TranscoderV1beta1::ListJobTemplatesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::TranscoderV1beta1::ListJobTemplatesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_location_job_templates(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+parent}/jobTemplates', options) + command.response_representation = Google::Apis::TranscoderV1beta1::ListJobTemplatesResponse::Representation + command.response_class = Google::Apis::TranscoderV1beta1::ListJobTemplatesResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a job in the specified region. + # @param [String] parent + # Required. The parent location to create and process this job. Format: ` + # projects/`project`/locations/`location`` + # @param [Google::Apis::TranscoderV1beta1::Job] job_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::TranscoderV1beta1::Job] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::TranscoderV1beta1::Job] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_location_job(parent, job_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+parent}/jobs', options) + command.request_representation = Google::Apis::TranscoderV1beta1::Job::Representation + command.request_object = job_object + command.response_representation = Google::Apis::TranscoderV1beta1::Job::Representation + command.response_class = Google::Apis::TranscoderV1beta1::Job + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a job. + # @param [String] name + # Required. The name of the job to delete. Format: `projects/`project`/locations/ + # `location`/jobs/`job`` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::TranscoderV1beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::TranscoderV1beta1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_location_job(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::TranscoderV1beta1::Empty::Representation + command.response_class = Google::Apis::TranscoderV1beta1::Empty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns the job data. + # @param [String] name + # Required. The name of the job to retrieve. Format: `projects/`project`/ + # locations/`location`/jobs/`job`` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::TranscoderV1beta1::Job] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::TranscoderV1beta1::Job] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_location_job(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::TranscoderV1beta1::Job::Representation + command.response_class = Google::Apis::TranscoderV1beta1::Job + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists jobs in the specified region. + # @param [String] parent + # Required. Format: `projects/`project`/locations/`location`` + # @param [Fixnum] page_size + # The maximum number of items to return. + # @param [String] page_token + # The `next_page_token` value returned from a previous List request, if any. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::TranscoderV1beta1::ListJobsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::TranscoderV1beta1::ListJobsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_location_jobs(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+parent}/jobs', options) + command.response_representation = Google::Apis::TranscoderV1beta1::ListJobsResponse::Representation + command.response_class = Google::Apis::TranscoderV1beta1::ListJobsResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/transcoder_v1beta1/synth.metadata b/generated/google/apis/transcoder_v1beta1/synth.metadata new file mode 100644 index 000000000..c0bf7ccbc --- /dev/null +++ b/generated/google/apis/transcoder_v1beta1/synth.metadata @@ -0,0 +1,11 @@ +{ + "sources": [ + { + "git": { + "name": ".", + "remote": "https://github.com/googleapis/google-api-ruby-client.git", + "sha": "1c69cd4744086d45d65912be897334c9c1e6e20d" + } + } + ] +} \ No newline at end of file