Best Got code snippet using gop.oneOf
resources.pb.go
Source:resources.pb.go
1// Copyright 2021 Google LLC2//3// Licensed under the Apache License, Version 2.0 (the "License");4// you may not use this file except in compliance with the License.5// You may obtain a copy of the License at6//7// http://www.apache.org/licenses/LICENSE-2.08//9// Unless required by applicable law or agreed to in writing, software10// distributed under the License is distributed on an "AS IS" BASIS,11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.12// See the License for the specific language governing permissions and13// limitations under the License.14// Code generated by protoc-gen-go. DO NOT EDIT.15// versions:16// protoc-gen-go v1.26.017// protoc v3.12.218// source: google/cloud/video/transcoder/v1/resources.proto19package transcoder20import (21 reflect "reflect"22 sync "sync"23 _ "google.golang.org/genproto/googleapis/api/annotations"24 status "google.golang.org/genproto/googleapis/rpc/status"25 protoreflect "google.golang.org/protobuf/reflect/protoreflect"26 protoimpl "google.golang.org/protobuf/runtime/protoimpl"27 durationpb "google.golang.org/protobuf/types/known/durationpb"28 timestamppb "google.golang.org/protobuf/types/known/timestamppb"29)30const (31 // Verify that this generated code is sufficiently up-to-date.32 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)33 // Verify that runtime/protoimpl is sufficiently up-to-date.34 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)35)36// The current state of the job.37type Job_ProcessingState int3238const (39 // The processing state is not specified.40 Job_PROCESSING_STATE_UNSPECIFIED Job_ProcessingState = 041 // The job is enqueued and will be picked up for processing soon.42 Job_PENDING Job_ProcessingState = 143 // The job is being processed.44 Job_RUNNING Job_ProcessingState = 245 // The job has been completed successfully.46 Job_SUCCEEDED Job_ProcessingState = 347 // The job has failed. For additional information, see `failure_reason` and48 // `failure_details`49 Job_FAILED Job_ProcessingState = 450)51// Enum value maps for Job_ProcessingState.52var (53 Job_ProcessingState_name = map[int32]string{54 0: "PROCESSING_STATE_UNSPECIFIED",55 1: "PENDING",56 2: "RUNNING",57 3: "SUCCEEDED",58 4: "FAILED",59 }60 Job_ProcessingState_value = map[string]int32{61 "PROCESSING_STATE_UNSPECIFIED": 0,62 "PENDING": 1,63 "RUNNING": 2,64 "SUCCEEDED": 3,65 "FAILED": 4,66 }67)68func (x Job_ProcessingState) Enum() *Job_ProcessingState {69 p := new(Job_ProcessingState)70 *p = x71 return p72}73func (x Job_ProcessingState) String() string {74 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))75}76func (Job_ProcessingState) Descriptor() protoreflect.EnumDescriptor {77 return file_google_cloud_video_transcoder_v1_resources_proto_enumTypes[0].Descriptor()78}79func (Job_ProcessingState) Type() protoreflect.EnumType {80 return &file_google_cloud_video_transcoder_v1_resources_proto_enumTypes[0]81}82func (x Job_ProcessingState) Number() protoreflect.EnumNumber {83 return protoreflect.EnumNumber(x)84}85// Deprecated: Use Job_ProcessingState.Descriptor instead.86func (Job_ProcessingState) EnumDescriptor() ([]byte, []int) {87 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{0, 0}88}89// The manifest type can be either `"HLS"` or `"DASH"`.90type Manifest_ManifestType int3291const (92 // The manifest type is not specified.93 Manifest_MANIFEST_TYPE_UNSPECIFIED Manifest_ManifestType = 094 // Create `"HLS"` manifest. The corresponding file extension is `".m3u8"`.95 Manifest_HLS Manifest_ManifestType = 196 // Create `"DASH"` manifest. The corresponding file extension is `".mpd"`.97 Manifest_DASH Manifest_ManifestType = 298)99// Enum value maps for Manifest_ManifestType.100var (101 Manifest_ManifestType_name = map[int32]string{102 0: "MANIFEST_TYPE_UNSPECIFIED",103 1: "HLS",104 2: "DASH",105 }106 Manifest_ManifestType_value = map[string]int32{107 "MANIFEST_TYPE_UNSPECIFIED": 0,108 "HLS": 1,109 "DASH": 2,110 }111)112func (x Manifest_ManifestType) Enum() *Manifest_ManifestType {113 p := new(Manifest_ManifestType)114 *p = x115 return p116}117func (x Manifest_ManifestType) String() string {118 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))119}120func (Manifest_ManifestType) Descriptor() protoreflect.EnumDescriptor {121 return file_google_cloud_video_transcoder_v1_resources_proto_enumTypes[1].Descriptor()122}123func (Manifest_ManifestType) Type() protoreflect.EnumType {124 return &file_google_cloud_video_transcoder_v1_resources_proto_enumTypes[1]125}126func (x Manifest_ManifestType) Number() protoreflect.EnumNumber {127 return protoreflect.EnumNumber(x)128}129// Deprecated: Use Manifest_ManifestType.Descriptor instead.130func (Manifest_ManifestType) EnumDescriptor() ([]byte, []int) {131 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{9, 0}132}133// Fade type for the overlay: `FADE_IN` or `FADE_OUT`.134type Overlay_FadeType int32135const (136 // The fade type is not specified.137 Overlay_FADE_TYPE_UNSPECIFIED Overlay_FadeType = 0138 // Fade the overlay object into view.139 Overlay_FADE_IN Overlay_FadeType = 1140 // Fade the overlay object out of view.141 Overlay_FADE_OUT Overlay_FadeType = 2142)143// Enum value maps for Overlay_FadeType.144var (145 Overlay_FadeType_name = map[int32]string{146 0: "FADE_TYPE_UNSPECIFIED",147 1: "FADE_IN",148 2: "FADE_OUT",149 }150 Overlay_FadeType_value = map[string]int32{151 "FADE_TYPE_UNSPECIFIED": 0,152 "FADE_IN": 1,153 "FADE_OUT": 2,154 }155)156func (x Overlay_FadeType) Enum() *Overlay_FadeType {157 p := new(Overlay_FadeType)158 *p = x159 return p160}161func (x Overlay_FadeType) String() string {162 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))163}164func (Overlay_FadeType) Descriptor() protoreflect.EnumDescriptor {165 return file_google_cloud_video_transcoder_v1_resources_proto_enumTypes[2].Descriptor()166}167func (Overlay_FadeType) Type() protoreflect.EnumType {168 return &file_google_cloud_video_transcoder_v1_resources_proto_enumTypes[2]169}170func (x Overlay_FadeType) Number() protoreflect.EnumNumber {171 return protoreflect.EnumNumber(x)172}173// Deprecated: Use Overlay_FadeType.Descriptor instead.174func (Overlay_FadeType) EnumDescriptor() ([]byte, []int) {175 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12, 0}176}177// Transcoding job resource.178type Job struct {179 state protoimpl.MessageState180 sizeCache protoimpl.SizeCache181 unknownFields protoimpl.UnknownFields182 // The resource name of the job.183 // Format: `projects/{project}/locations/{location}/jobs/{job}`184 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`185 // Input only. Specify the `input_uri` to populate empty `uri` fields in each element of186 // `Job.config.inputs` or `JobTemplate.config.inputs` when using template.187 // URI of the media. Input files must be at least 5 seconds in duration and188 // stored in Cloud Storage (for example, `gs://bucket/inputs/file.mp4`).189 InputUri string `protobuf:"bytes,2,opt,name=input_uri,json=inputUri,proto3" json:"input_uri,omitempty"`190 // Input only. Specify the `output_uri` to populate an empty `Job.config.output.uri` or191 // `JobTemplate.config.output.uri` when using template.192 // URI for the output file(s). For example, `gs://my-bucket/outputs/`.193 OutputUri string `protobuf:"bytes,3,opt,name=output_uri,json=outputUri,proto3" json:"output_uri,omitempty"`194 // Specify the `job_config` for the transcoding job. If you don't specify the195 // `job_config`, the API selects `templateId`; this template ID is set to196 // `preset/web-hd` by default. When you use a `template_id` to create a job,197 // the `Job.config` is populated by the `JobTemplate.config`.<br>198 //199 // Types that are assignable to JobConfig:200 // *Job_TemplateId201 // *Job_Config202 JobConfig isJob_JobConfig `protobuf_oneof:"job_config"`203 // Output only. The current state of the job.204 State Job_ProcessingState `protobuf:"varint,8,opt,name=state,proto3,enum=google.cloud.video.transcoder.v1.Job_ProcessingState" json:"state,omitempty"`205 // Output only. The time the job was created.206 CreateTime *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`207 // Output only. The time the transcoding started.208 StartTime *timestamppb.Timestamp `protobuf:"bytes,13,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`209 // Output only. The time the transcoding finished.210 EndTime *timestamppb.Timestamp `protobuf:"bytes,14,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`211 // Job time to live value in days, which will be effective after job212 // completion. Job should be deleted automatically after the given TTL. Enter213 // a value between 1 and 90. The default is 30.214 TtlAfterCompletionDays int32 `protobuf:"varint,15,opt,name=ttl_after_completion_days,json=ttlAfterCompletionDays,proto3" json:"ttl_after_completion_days,omitempty"`215 // Output only. An error object that describes the reason for the failure.216 // This property is always present when `state` is `FAILED`.217 Error *status.Status `protobuf:"bytes,17,opt,name=error,proto3" json:"error,omitempty"`218}219func (x *Job) Reset() {220 *x = Job{}221 if protoimpl.UnsafeEnabled {222 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[0]223 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))224 ms.StoreMessageInfo(mi)225 }226}227func (x *Job) String() string {228 return protoimpl.X.MessageStringOf(x)229}230func (*Job) ProtoMessage() {}231func (x *Job) ProtoReflect() protoreflect.Message {232 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[0]233 if protoimpl.UnsafeEnabled && x != nil {234 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))235 if ms.LoadMessageInfo() == nil {236 ms.StoreMessageInfo(mi)237 }238 return ms239 }240 return mi.MessageOf(x)241}242// Deprecated: Use Job.ProtoReflect.Descriptor instead.243func (*Job) Descriptor() ([]byte, []int) {244 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{0}245}246func (x *Job) GetName() string {247 if x != nil {248 return x.Name249 }250 return ""251}252func (x *Job) GetInputUri() string {253 if x != nil {254 return x.InputUri255 }256 return ""257}258func (x *Job) GetOutputUri() string {259 if x != nil {260 return x.OutputUri261 }262 return ""263}264func (m *Job) GetJobConfig() isJob_JobConfig {265 if m != nil {266 return m.JobConfig267 }268 return nil269}270func (x *Job) GetTemplateId() string {271 if x, ok := x.GetJobConfig().(*Job_TemplateId); ok {272 return x.TemplateId273 }274 return ""275}276func (x *Job) GetConfig() *JobConfig {277 if x, ok := x.GetJobConfig().(*Job_Config); ok {278 return x.Config279 }280 return nil281}282func (x *Job) GetState() Job_ProcessingState {283 if x != nil {284 return x.State285 }286 return Job_PROCESSING_STATE_UNSPECIFIED287}288func (x *Job) GetCreateTime() *timestamppb.Timestamp {289 if x != nil {290 return x.CreateTime291 }292 return nil293}294func (x *Job) GetStartTime() *timestamppb.Timestamp {295 if x != nil {296 return x.StartTime297 }298 return nil299}300func (x *Job) GetEndTime() *timestamppb.Timestamp {301 if x != nil {302 return x.EndTime303 }304 return nil305}306func (x *Job) GetTtlAfterCompletionDays() int32 {307 if x != nil {308 return x.TtlAfterCompletionDays309 }310 return 0311}312func (x *Job) GetError() *status.Status {313 if x != nil {314 return x.Error315 }316 return nil317}318type isJob_JobConfig interface {319 isJob_JobConfig()320}321type Job_TemplateId struct {322 // Input only. Specify the `template_id` to use for populating `Job.config`. The default323 // is `preset/web-hd`.324 //325 // Preset Transcoder templates:326 // - `preset/{preset_id}`327 //328 // - User defined JobTemplate:329 // `{job_template_id}`330 TemplateId string `protobuf:"bytes,4,opt,name=template_id,json=templateId,proto3,oneof"`331}332type Job_Config struct {333 // The configuration for this job.334 Config *JobConfig `protobuf:"bytes,5,opt,name=config,proto3,oneof"`335}336func (*Job_TemplateId) isJob_JobConfig() {}337func (*Job_Config) isJob_JobConfig() {}338// Transcoding job template resource.339type JobTemplate struct {340 state protoimpl.MessageState341 sizeCache protoimpl.SizeCache342 unknownFields protoimpl.UnknownFields343 // The resource name of the job template.344 // Format:345 // `projects/{project}/locations/{location}/jobTemplates/{job_template}`346 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`347 // The configuration for this template.348 Config *JobConfig `protobuf:"bytes,2,opt,name=config,proto3" json:"config,omitempty"`349}350func (x *JobTemplate) Reset() {351 *x = JobTemplate{}352 if protoimpl.UnsafeEnabled {353 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[1]354 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))355 ms.StoreMessageInfo(mi)356 }357}358func (x *JobTemplate) String() string {359 return protoimpl.X.MessageStringOf(x)360}361func (*JobTemplate) ProtoMessage() {}362func (x *JobTemplate) ProtoReflect() protoreflect.Message {363 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[1]364 if protoimpl.UnsafeEnabled && x != nil {365 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))366 if ms.LoadMessageInfo() == nil {367 ms.StoreMessageInfo(mi)368 }369 return ms370 }371 return mi.MessageOf(x)372}373// Deprecated: Use JobTemplate.ProtoReflect.Descriptor instead.374func (*JobTemplate) Descriptor() ([]byte, []int) {375 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{1}376}377func (x *JobTemplate) GetName() string {378 if x != nil {379 return x.Name380 }381 return ""382}383func (x *JobTemplate) GetConfig() *JobConfig {384 if x != nil {385 return x.Config386 }387 return nil388}389// Job configuration390type JobConfig struct {391 state protoimpl.MessageState392 sizeCache protoimpl.SizeCache393 unknownFields protoimpl.UnknownFields394 // List of input assets stored in Cloud Storage.395 Inputs []*Input `protobuf:"bytes,1,rep,name=inputs,proto3" json:"inputs,omitempty"`396 // List of `Edit atom`s. Defines the ultimate timeline of the resulting397 // file or manifest.398 EditList []*EditAtom `protobuf:"bytes,2,rep,name=edit_list,json=editList,proto3" json:"edit_list,omitempty"`399 // List of elementary streams.400 ElementaryStreams []*ElementaryStream `protobuf:"bytes,3,rep,name=elementary_streams,json=elementaryStreams,proto3" json:"elementary_streams,omitempty"`401 // List of multiplexing settings for output streams.402 MuxStreams []*MuxStream `protobuf:"bytes,4,rep,name=mux_streams,json=muxStreams,proto3" json:"mux_streams,omitempty"`403 // List of output manifests.404 Manifests []*Manifest `protobuf:"bytes,5,rep,name=manifests,proto3" json:"manifests,omitempty"`405 // Output configuration.406 Output *Output `protobuf:"bytes,6,opt,name=output,proto3" json:"output,omitempty"`407 // List of ad breaks. Specifies where to insert ad break tags in the output408 // manifests.409 AdBreaks []*AdBreak `protobuf:"bytes,7,rep,name=ad_breaks,json=adBreaks,proto3" json:"ad_breaks,omitempty"`410 // Destination on Pub/Sub.411 PubsubDestination *PubsubDestination `protobuf:"bytes,8,opt,name=pubsub_destination,json=pubsubDestination,proto3" json:"pubsub_destination,omitempty"`412 // List of output sprite sheets.413 SpriteSheets []*SpriteSheet `protobuf:"bytes,9,rep,name=sprite_sheets,json=spriteSheets,proto3" json:"sprite_sheets,omitempty"`414 // List of overlays on the output video, in descending Z-order.415 Overlays []*Overlay `protobuf:"bytes,10,rep,name=overlays,proto3" json:"overlays,omitempty"`416}417func (x *JobConfig) Reset() {418 *x = JobConfig{}419 if protoimpl.UnsafeEnabled {420 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[2]421 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))422 ms.StoreMessageInfo(mi)423 }424}425func (x *JobConfig) String() string {426 return protoimpl.X.MessageStringOf(x)427}428func (*JobConfig) ProtoMessage() {}429func (x *JobConfig) ProtoReflect() protoreflect.Message {430 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[2]431 if protoimpl.UnsafeEnabled && x != nil {432 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))433 if ms.LoadMessageInfo() == nil {434 ms.StoreMessageInfo(mi)435 }436 return ms437 }438 return mi.MessageOf(x)439}440// Deprecated: Use JobConfig.ProtoReflect.Descriptor instead.441func (*JobConfig) Descriptor() ([]byte, []int) {442 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{2}443}444func (x *JobConfig) GetInputs() []*Input {445 if x != nil {446 return x.Inputs447 }448 return nil449}450func (x *JobConfig) GetEditList() []*EditAtom {451 if x != nil {452 return x.EditList453 }454 return nil455}456func (x *JobConfig) GetElementaryStreams() []*ElementaryStream {457 if x != nil {458 return x.ElementaryStreams459 }460 return nil461}462func (x *JobConfig) GetMuxStreams() []*MuxStream {463 if x != nil {464 return x.MuxStreams465 }466 return nil467}468func (x *JobConfig) GetManifests() []*Manifest {469 if x != nil {470 return x.Manifests471 }472 return nil473}474func (x *JobConfig) GetOutput() *Output {475 if x != nil {476 return x.Output477 }478 return nil479}480func (x *JobConfig) GetAdBreaks() []*AdBreak {481 if x != nil {482 return x.AdBreaks483 }484 return nil485}486func (x *JobConfig) GetPubsubDestination() *PubsubDestination {487 if x != nil {488 return x.PubsubDestination489 }490 return nil491}492func (x *JobConfig) GetSpriteSheets() []*SpriteSheet {493 if x != nil {494 return x.SpriteSheets495 }496 return nil497}498func (x *JobConfig) GetOverlays() []*Overlay {499 if x != nil {500 return x.Overlays501 }502 return nil503}504// Input asset.505type Input struct {506 state protoimpl.MessageState507 sizeCache protoimpl.SizeCache508 unknownFields protoimpl.UnknownFields509 // A unique key for this input. Must be specified when using advanced510 // mapping and edit lists.511 Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`512 // URI of the media. Input files must be at least 5 seconds in duration and513 // stored in Cloud Storage (for example, `gs://bucket/inputs/file.mp4`).514 // If empty, the value will be populated from `Job.input_uri`.515 Uri string `protobuf:"bytes,2,opt,name=uri,proto3" json:"uri,omitempty"`516 // Preprocessing configurations.517 PreprocessingConfig *PreprocessingConfig `protobuf:"bytes,3,opt,name=preprocessing_config,json=preprocessingConfig,proto3" json:"preprocessing_config,omitempty"`518}519func (x *Input) Reset() {520 *x = Input{}521 if protoimpl.UnsafeEnabled {522 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[3]523 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))524 ms.StoreMessageInfo(mi)525 }526}527func (x *Input) String() string {528 return protoimpl.X.MessageStringOf(x)529}530func (*Input) ProtoMessage() {}531func (x *Input) ProtoReflect() protoreflect.Message {532 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[3]533 if protoimpl.UnsafeEnabled && x != nil {534 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))535 if ms.LoadMessageInfo() == nil {536 ms.StoreMessageInfo(mi)537 }538 return ms539 }540 return mi.MessageOf(x)541}542// Deprecated: Use Input.ProtoReflect.Descriptor instead.543func (*Input) Descriptor() ([]byte, []int) {544 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{3}545}546func (x *Input) GetKey() string {547 if x != nil {548 return x.Key549 }550 return ""551}552func (x *Input) GetUri() string {553 if x != nil {554 return x.Uri555 }556 return ""557}558func (x *Input) GetPreprocessingConfig() *PreprocessingConfig {559 if x != nil {560 return x.PreprocessingConfig561 }562 return nil563}564// Location of output file(s) in a Cloud Storage bucket.565type Output struct {566 state protoimpl.MessageState567 sizeCache protoimpl.SizeCache568 unknownFields protoimpl.UnknownFields569 // URI for the output file(s). For example, `gs://my-bucket/outputs/`.570 // If empty the value is populated from `Job.output_uri`.571 Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`572}573func (x *Output) Reset() {574 *x = Output{}575 if protoimpl.UnsafeEnabled {576 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[4]577 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))578 ms.StoreMessageInfo(mi)579 }580}581func (x *Output) String() string {582 return protoimpl.X.MessageStringOf(x)583}584func (*Output) ProtoMessage() {}585func (x *Output) ProtoReflect() protoreflect.Message {586 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[4]587 if protoimpl.UnsafeEnabled && x != nil {588 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))589 if ms.LoadMessageInfo() == nil {590 ms.StoreMessageInfo(mi)591 }592 return ms593 }594 return mi.MessageOf(x)595}596// Deprecated: Use Output.ProtoReflect.Descriptor instead.597func (*Output) Descriptor() ([]byte, []int) {598 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{4}599}600func (x *Output) GetUri() string {601 if x != nil {602 return x.Uri603 }604 return ""605}606// Edit atom.607type EditAtom struct {608 state protoimpl.MessageState609 sizeCache protoimpl.SizeCache610 unknownFields protoimpl.UnknownFields611 // A unique key for this atom. Must be specified when using advanced612 // mapping.613 Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`614 // List of `Input.key`s identifying files that should be used in this atom.615 // The listed `inputs` must have the same timeline.616 Inputs []string `protobuf:"bytes,2,rep,name=inputs,proto3" json:"inputs,omitempty"`617 // End time in seconds for the atom, relative to the input file timeline.618 // When `end_time_offset` is not specified, the `inputs` are used until619 // the end of the atom.620 EndTimeOffset *durationpb.Duration `protobuf:"bytes,3,opt,name=end_time_offset,json=endTimeOffset,proto3" json:"end_time_offset,omitempty"`621 // Start time in seconds for the atom, relative to the input file timeline.622 // The default is `0s`.623 StartTimeOffset *durationpb.Duration `protobuf:"bytes,4,opt,name=start_time_offset,json=startTimeOffset,proto3" json:"start_time_offset,omitempty"`624}625func (x *EditAtom) Reset() {626 *x = EditAtom{}627 if protoimpl.UnsafeEnabled {628 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[5]629 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))630 ms.StoreMessageInfo(mi)631 }632}633func (x *EditAtom) String() string {634 return protoimpl.X.MessageStringOf(x)635}636func (*EditAtom) ProtoMessage() {}637func (x *EditAtom) ProtoReflect() protoreflect.Message {638 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[5]639 if protoimpl.UnsafeEnabled && x != nil {640 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))641 if ms.LoadMessageInfo() == nil {642 ms.StoreMessageInfo(mi)643 }644 return ms645 }646 return mi.MessageOf(x)647}648// Deprecated: Use EditAtom.ProtoReflect.Descriptor instead.649func (*EditAtom) Descriptor() ([]byte, []int) {650 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{5}651}652func (x *EditAtom) GetKey() string {653 if x != nil {654 return x.Key655 }656 return ""657}658func (x *EditAtom) GetInputs() []string {659 if x != nil {660 return x.Inputs661 }662 return nil663}664func (x *EditAtom) GetEndTimeOffset() *durationpb.Duration {665 if x != nil {666 return x.EndTimeOffset667 }668 return nil669}670func (x *EditAtom) GetStartTimeOffset() *durationpb.Duration {671 if x != nil {672 return x.StartTimeOffset673 }674 return nil675}676// Ad break.677type AdBreak struct {678 state protoimpl.MessageState679 sizeCache protoimpl.SizeCache680 unknownFields protoimpl.UnknownFields681 // Start time in seconds for the ad break, relative to the output file682 // timeline. The default is `0s`.683 StartTimeOffset *durationpb.Duration `protobuf:"bytes,1,opt,name=start_time_offset,json=startTimeOffset,proto3" json:"start_time_offset,omitempty"`684}685func (x *AdBreak) Reset() {686 *x = AdBreak{}687 if protoimpl.UnsafeEnabled {688 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[6]689 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))690 ms.StoreMessageInfo(mi)691 }692}693func (x *AdBreak) String() string {694 return protoimpl.X.MessageStringOf(x)695}696func (*AdBreak) ProtoMessage() {}697func (x *AdBreak) ProtoReflect() protoreflect.Message {698 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[6]699 if protoimpl.UnsafeEnabled && x != nil {700 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))701 if ms.LoadMessageInfo() == nil {702 ms.StoreMessageInfo(mi)703 }704 return ms705 }706 return mi.MessageOf(x)707}708// Deprecated: Use AdBreak.ProtoReflect.Descriptor instead.709func (*AdBreak) Descriptor() ([]byte, []int) {710 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{6}711}712func (x *AdBreak) GetStartTimeOffset() *durationpb.Duration {713 if x != nil {714 return x.StartTimeOffset715 }716 return nil717}718// Encoding of an input file such as an audio, video, or text track.719// Elementary streams must be packaged before720// mapping and sharing between different output formats.721type ElementaryStream struct {722 state protoimpl.MessageState723 sizeCache protoimpl.SizeCache724 unknownFields protoimpl.UnknownFields725 // A unique key for this elementary stream.726 Key string `protobuf:"bytes,4,opt,name=key,proto3" json:"key,omitempty"`727 // Encoding of an audio, video, or text track.728 //729 // Types that are assignable to ElementaryStream:730 // *ElementaryStream_VideoStream731 // *ElementaryStream_AudioStream732 // *ElementaryStream_TextStream733 ElementaryStream isElementaryStream_ElementaryStream `protobuf_oneof:"elementary_stream"`734}735func (x *ElementaryStream) Reset() {736 *x = ElementaryStream{}737 if protoimpl.UnsafeEnabled {738 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[7]739 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))740 ms.StoreMessageInfo(mi)741 }742}743func (x *ElementaryStream) String() string {744 return protoimpl.X.MessageStringOf(x)745}746func (*ElementaryStream) ProtoMessage() {}747func (x *ElementaryStream) ProtoReflect() protoreflect.Message {748 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[7]749 if protoimpl.UnsafeEnabled && x != nil {750 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))751 if ms.LoadMessageInfo() == nil {752 ms.StoreMessageInfo(mi)753 }754 return ms755 }756 return mi.MessageOf(x)757}758// Deprecated: Use ElementaryStream.ProtoReflect.Descriptor instead.759func (*ElementaryStream) Descriptor() ([]byte, []int) {760 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{7}761}762func (x *ElementaryStream) GetKey() string {763 if x != nil {764 return x.Key765 }766 return ""767}768func (m *ElementaryStream) GetElementaryStream() isElementaryStream_ElementaryStream {769 if m != nil {770 return m.ElementaryStream771 }772 return nil773}774func (x *ElementaryStream) GetVideoStream() *VideoStream {775 if x, ok := x.GetElementaryStream().(*ElementaryStream_VideoStream); ok {776 return x.VideoStream777 }778 return nil779}780func (x *ElementaryStream) GetAudioStream() *AudioStream {781 if x, ok := x.GetElementaryStream().(*ElementaryStream_AudioStream); ok {782 return x.AudioStream783 }784 return nil785}786func (x *ElementaryStream) GetTextStream() *TextStream {787 if x, ok := x.GetElementaryStream().(*ElementaryStream_TextStream); ok {788 return x.TextStream789 }790 return nil791}792type isElementaryStream_ElementaryStream interface {793 isElementaryStream_ElementaryStream()794}795type ElementaryStream_VideoStream struct {796 // Encoding of a video stream.797 VideoStream *VideoStream `protobuf:"bytes,1,opt,name=video_stream,json=videoStream,proto3,oneof"`798}799type ElementaryStream_AudioStream struct {800 // Encoding of an audio stream.801 AudioStream *AudioStream `protobuf:"bytes,2,opt,name=audio_stream,json=audioStream,proto3,oneof"`802}803type ElementaryStream_TextStream struct {804 // Encoding of a text stream. For example, closed captions or subtitles.805 TextStream *TextStream `protobuf:"bytes,3,opt,name=text_stream,json=textStream,proto3,oneof"`806}807func (*ElementaryStream_VideoStream) isElementaryStream_ElementaryStream() {}808func (*ElementaryStream_AudioStream) isElementaryStream_ElementaryStream() {}809func (*ElementaryStream_TextStream) isElementaryStream_ElementaryStream() {}810// Multiplexing settings for output stream.811type MuxStream struct {812 state protoimpl.MessageState813 sizeCache protoimpl.SizeCache814 unknownFields protoimpl.UnknownFields815 // A unique key for this multiplexed stream. HLS media manifests will be816 // named `MuxStream.key` with the `".m3u8"` extension suffix.817 Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`818 // The name of the generated file. The default is `MuxStream.key` with the819 // extension suffix corresponding to the `MuxStream.container`.820 //821 // Individual segments also have an incremental 10-digit zero-padded suffix822 // starting from 0 before the extension, such as `"mux_stream0000000123.ts"`.823 FileName string `protobuf:"bytes,2,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`824 // The container format. The default is `"mp4"`825 //826 // Supported container formats:827 // - 'ts'828 // - 'fmp4'- the corresponding file extension is `".m4s"`829 // - 'mp4'830 // - 'vtt'831 Container string `protobuf:"bytes,3,opt,name=container,proto3" json:"container,omitempty"`832 // List of `ElementaryStream.key`s multiplexed in this stream.833 ElementaryStreams []string `protobuf:"bytes,4,rep,name=elementary_streams,json=elementaryStreams,proto3" json:"elementary_streams,omitempty"`834 // Segment settings for `"ts"`, `"fmp4"` and `"vtt"`.835 SegmentSettings *SegmentSettings `protobuf:"bytes,5,opt,name=segment_settings,json=segmentSettings,proto3" json:"segment_settings,omitempty"`836 // Encryption settings.837 Encryption *Encryption `protobuf:"bytes,6,opt,name=encryption,proto3" json:"encryption,omitempty"`838}839func (x *MuxStream) Reset() {840 *x = MuxStream{}841 if protoimpl.UnsafeEnabled {842 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[8]843 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))844 ms.StoreMessageInfo(mi)845 }846}847func (x *MuxStream) String() string {848 return protoimpl.X.MessageStringOf(x)849}850func (*MuxStream) ProtoMessage() {}851func (x *MuxStream) ProtoReflect() protoreflect.Message {852 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[8]853 if protoimpl.UnsafeEnabled && x != nil {854 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))855 if ms.LoadMessageInfo() == nil {856 ms.StoreMessageInfo(mi)857 }858 return ms859 }860 return mi.MessageOf(x)861}862// Deprecated: Use MuxStream.ProtoReflect.Descriptor instead.863func (*MuxStream) Descriptor() ([]byte, []int) {864 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{8}865}866func (x *MuxStream) GetKey() string {867 if x != nil {868 return x.Key869 }870 return ""871}872func (x *MuxStream) GetFileName() string {873 if x != nil {874 return x.FileName875 }876 return ""877}878func (x *MuxStream) GetContainer() string {879 if x != nil {880 return x.Container881 }882 return ""883}884func (x *MuxStream) GetElementaryStreams() []string {885 if x != nil {886 return x.ElementaryStreams887 }888 return nil889}890func (x *MuxStream) GetSegmentSettings() *SegmentSettings {891 if x != nil {892 return x.SegmentSettings893 }894 return nil895}896func (x *MuxStream) GetEncryption() *Encryption {897 if x != nil {898 return x.Encryption899 }900 return nil901}902// Manifest configuration.903type Manifest struct {904 state protoimpl.MessageState905 sizeCache protoimpl.SizeCache906 unknownFields protoimpl.UnknownFields907 // The name of the generated file. The default is `"manifest"` with the908 // extension suffix corresponding to the `Manifest.type`.909 FileName string `protobuf:"bytes,1,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`910 // Required. Type of the manifest, can be "HLS" or "DASH".911 Type Manifest_ManifestType `protobuf:"varint,2,opt,name=type,proto3,enum=google.cloud.video.transcoder.v1.Manifest_ManifestType" json:"type,omitempty"`912 // Required. List of user given `MuxStream.key`s that should appear in this manifest.913 //914 // When `Manifest.type` is `HLS`, a media manifest with name `MuxStream.key`915 // and `.m3u8` extension is generated for each element of the916 // `Manifest.mux_streams`.917 MuxStreams []string `protobuf:"bytes,3,rep,name=mux_streams,json=muxStreams,proto3" json:"mux_streams,omitempty"`918}919func (x *Manifest) Reset() {920 *x = Manifest{}921 if protoimpl.UnsafeEnabled {922 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[9]923 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))924 ms.StoreMessageInfo(mi)925 }926}927func (x *Manifest) String() string {928 return protoimpl.X.MessageStringOf(x)929}930func (*Manifest) ProtoMessage() {}931func (x *Manifest) ProtoReflect() protoreflect.Message {932 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[9]933 if protoimpl.UnsafeEnabled && x != nil {934 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))935 if ms.LoadMessageInfo() == nil {936 ms.StoreMessageInfo(mi)937 }938 return ms939 }940 return mi.MessageOf(x)941}942// Deprecated: Use Manifest.ProtoReflect.Descriptor instead.943func (*Manifest) Descriptor() ([]byte, []int) {944 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{9}945}946func (x *Manifest) GetFileName() string {947 if x != nil {948 return x.FileName949 }950 return ""951}952func (x *Manifest) GetType() Manifest_ManifestType {953 if x != nil {954 return x.Type955 }956 return Manifest_MANIFEST_TYPE_UNSPECIFIED957}958func (x *Manifest) GetMuxStreams() []string {959 if x != nil {960 return x.MuxStreams961 }962 return nil963}964// A Pub/Sub destination.965type PubsubDestination struct {966 state protoimpl.MessageState967 sizeCache protoimpl.SizeCache968 unknownFields protoimpl.UnknownFields969 // The name of the Pub/Sub topic to publish job completion notification970 // to. For example: `projects/{project}/topics/{topic}`.971 Topic string `protobuf:"bytes,1,opt,name=topic,proto3" json:"topic,omitempty"`972}973func (x *PubsubDestination) Reset() {974 *x = PubsubDestination{}975 if protoimpl.UnsafeEnabled {976 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[10]977 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))978 ms.StoreMessageInfo(mi)979 }980}981func (x *PubsubDestination) String() string {982 return protoimpl.X.MessageStringOf(x)983}984func (*PubsubDestination) ProtoMessage() {}985func (x *PubsubDestination) ProtoReflect() protoreflect.Message {986 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[10]987 if protoimpl.UnsafeEnabled && x != nil {988 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))989 if ms.LoadMessageInfo() == nil {990 ms.StoreMessageInfo(mi)991 }992 return ms993 }994 return mi.MessageOf(x)995}996// Deprecated: Use PubsubDestination.ProtoReflect.Descriptor instead.997func (*PubsubDestination) Descriptor() ([]byte, []int) {998 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{10}999}1000func (x *PubsubDestination) GetTopic() string {1001 if x != nil {1002 return x.Topic1003 }1004 return ""1005}1006// Sprite sheet configuration.1007type SpriteSheet struct {1008 state protoimpl.MessageState1009 sizeCache protoimpl.SizeCache1010 unknownFields protoimpl.UnknownFields1011 // Format type. The default is `"jpeg"`.1012 //1013 // Supported formats:1014 // - 'jpeg'1015 Format string `protobuf:"bytes,1,opt,name=format,proto3" json:"format,omitempty"`1016 // Required. File name prefix for the generated sprite sheets.1017 //1018 // Each sprite sheet has an incremental 10-digit zero-padded suffix starting1019 // from 0 before the extension, such as `"sprite_sheet0000000123.jpeg"`.1020 FilePrefix string `protobuf:"bytes,2,opt,name=file_prefix,json=filePrefix,proto3" json:"file_prefix,omitempty"`1021 // Required. The width of sprite in pixels. Must be an even integer. To preserve the1022 // source aspect ratio, set the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field or1023 // the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field, but not both (the API will1024 // automatically calculate the missing field).1025 SpriteWidthPixels int32 `protobuf:"varint,3,opt,name=sprite_width_pixels,json=spriteWidthPixels,proto3" json:"sprite_width_pixels,omitempty"`1026 // Required. The height of sprite in pixels. Must be an even integer. To preserve the1027 // source aspect ratio, set the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field or1028 // the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field, but not both (the API will1029 // automatically calculate the missing field).1030 SpriteHeightPixels int32 `protobuf:"varint,4,opt,name=sprite_height_pixels,json=spriteHeightPixels,proto3" json:"sprite_height_pixels,omitempty"`1031 // The maximum number of sprites per row in a sprite sheet. The default is 0,1032 // which indicates no maximum limit.1033 ColumnCount int32 `protobuf:"varint,5,opt,name=column_count,json=columnCount,proto3" json:"column_count,omitempty"`1034 // The maximum number of rows per sprite sheet. When the sprite sheet is full,1035 // a new sprite sheet is created. The default is 0, which indicates no maximum1036 // limit.1037 RowCount int32 `protobuf:"varint,6,opt,name=row_count,json=rowCount,proto3" json:"row_count,omitempty"`1038 // Start time in seconds, relative to the output file timeline. Determines the1039 // first sprite to pick. The default is `0s`.1040 StartTimeOffset *durationpb.Duration `protobuf:"bytes,7,opt,name=start_time_offset,json=startTimeOffset,proto3" json:"start_time_offset,omitempty"`1041 // End time in seconds, relative to the output file timeline. When1042 // `end_time_offset` is not specified, the sprites are generated until the end1043 // of the output file.1044 EndTimeOffset *durationpb.Duration `protobuf:"bytes,8,opt,name=end_time_offset,json=endTimeOffset,proto3" json:"end_time_offset,omitempty"`1045 // Specify either total number of sprites or interval to create sprites.1046 //1047 // Types that are assignable to ExtractionStrategy:1048 // *SpriteSheet_TotalCount1049 // *SpriteSheet_Interval1050 ExtractionStrategy isSpriteSheet_ExtractionStrategy `protobuf_oneof:"extraction_strategy"`1051 // The quality of the generated sprite sheet. Enter a value between 11052 // and 100, where 1 is the lowest quality and 100 is the highest quality.1053 // The default is 100. A high quality value corresponds to a low image data1054 // compression ratio.1055 Quality int32 `protobuf:"varint,11,opt,name=quality,proto3" json:"quality,omitempty"`1056}1057func (x *SpriteSheet) Reset() {1058 *x = SpriteSheet{}1059 if protoimpl.UnsafeEnabled {1060 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[11]1061 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1062 ms.StoreMessageInfo(mi)1063 }1064}1065func (x *SpriteSheet) String() string {1066 return protoimpl.X.MessageStringOf(x)1067}1068func (*SpriteSheet) ProtoMessage() {}1069func (x *SpriteSheet) ProtoReflect() protoreflect.Message {1070 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[11]1071 if protoimpl.UnsafeEnabled && x != nil {1072 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1073 if ms.LoadMessageInfo() == nil {1074 ms.StoreMessageInfo(mi)1075 }1076 return ms1077 }1078 return mi.MessageOf(x)1079}1080// Deprecated: Use SpriteSheet.ProtoReflect.Descriptor instead.1081func (*SpriteSheet) Descriptor() ([]byte, []int) {1082 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{11}1083}1084func (x *SpriteSheet) GetFormat() string {1085 if x != nil {1086 return x.Format1087 }1088 return ""1089}1090func (x *SpriteSheet) GetFilePrefix() string {1091 if x != nil {1092 return x.FilePrefix1093 }1094 return ""1095}1096func (x *SpriteSheet) GetSpriteWidthPixels() int32 {1097 if x != nil {1098 return x.SpriteWidthPixels1099 }1100 return 01101}1102func (x *SpriteSheet) GetSpriteHeightPixels() int32 {1103 if x != nil {1104 return x.SpriteHeightPixels1105 }1106 return 01107}1108func (x *SpriteSheet) GetColumnCount() int32 {1109 if x != nil {1110 return x.ColumnCount1111 }1112 return 01113}1114func (x *SpriteSheet) GetRowCount() int32 {1115 if x != nil {1116 return x.RowCount1117 }1118 return 01119}1120func (x *SpriteSheet) GetStartTimeOffset() *durationpb.Duration {1121 if x != nil {1122 return x.StartTimeOffset1123 }1124 return nil1125}1126func (x *SpriteSheet) GetEndTimeOffset() *durationpb.Duration {1127 if x != nil {1128 return x.EndTimeOffset1129 }1130 return nil1131}1132func (m *SpriteSheet) GetExtractionStrategy() isSpriteSheet_ExtractionStrategy {1133 if m != nil {1134 return m.ExtractionStrategy1135 }1136 return nil1137}1138func (x *SpriteSheet) GetTotalCount() int32 {1139 if x, ok := x.GetExtractionStrategy().(*SpriteSheet_TotalCount); ok {1140 return x.TotalCount1141 }1142 return 01143}1144func (x *SpriteSheet) GetInterval() *durationpb.Duration {1145 if x, ok := x.GetExtractionStrategy().(*SpriteSheet_Interval); ok {1146 return x.Interval1147 }1148 return nil1149}1150func (x *SpriteSheet) GetQuality() int32 {1151 if x != nil {1152 return x.Quality1153 }1154 return 01155}1156type isSpriteSheet_ExtractionStrategy interface {1157 isSpriteSheet_ExtractionStrategy()1158}1159type SpriteSheet_TotalCount struct {1160 // Total number of sprites. Create the specified number of sprites1161 // distributed evenly across the timeline of the output media. The default1162 // is 100.1163 TotalCount int32 `protobuf:"varint,9,opt,name=total_count,json=totalCount,proto3,oneof"`1164}1165type SpriteSheet_Interval struct {1166 // Starting from `0s`, create sprites at regular intervals. Specify the1167 // interval value in seconds.1168 Interval *durationpb.Duration `protobuf:"bytes,10,opt,name=interval,proto3,oneof"`1169}1170func (*SpriteSheet_TotalCount) isSpriteSheet_ExtractionStrategy() {}1171func (*SpriteSheet_Interval) isSpriteSheet_ExtractionStrategy() {}1172// Overlay configuration.1173type Overlay struct {1174 state protoimpl.MessageState1175 sizeCache protoimpl.SizeCache1176 unknownFields protoimpl.UnknownFields1177 // Image overlay.1178 Image *Overlay_Image `protobuf:"bytes,1,opt,name=image,proto3" json:"image,omitempty"`1179 // List of Animations. The list should be chronological, without any time1180 // overlap.1181 Animations []*Overlay_Animation `protobuf:"bytes,2,rep,name=animations,proto3" json:"animations,omitempty"`1182}1183func (x *Overlay) Reset() {1184 *x = Overlay{}1185 if protoimpl.UnsafeEnabled {1186 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[12]1187 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1188 ms.StoreMessageInfo(mi)1189 }1190}1191func (x *Overlay) String() string {1192 return protoimpl.X.MessageStringOf(x)1193}1194func (*Overlay) ProtoMessage() {}1195func (x *Overlay) ProtoReflect() protoreflect.Message {1196 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[12]1197 if protoimpl.UnsafeEnabled && x != nil {1198 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1199 if ms.LoadMessageInfo() == nil {1200 ms.StoreMessageInfo(mi)1201 }1202 return ms1203 }1204 return mi.MessageOf(x)1205}1206// Deprecated: Use Overlay.ProtoReflect.Descriptor instead.1207func (*Overlay) Descriptor() ([]byte, []int) {1208 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12}1209}1210func (x *Overlay) GetImage() *Overlay_Image {1211 if x != nil {1212 return x.Image1213 }1214 return nil1215}1216func (x *Overlay) GetAnimations() []*Overlay_Animation {1217 if x != nil {1218 return x.Animations1219 }1220 return nil1221}1222// Preprocessing configurations.1223type PreprocessingConfig struct {1224 state protoimpl.MessageState1225 sizeCache protoimpl.SizeCache1226 unknownFields protoimpl.UnknownFields1227 // Color preprocessing configuration.1228 Color *PreprocessingConfig_Color `protobuf:"bytes,1,opt,name=color,proto3" json:"color,omitempty"`1229 // Denoise preprocessing configuration.1230 Denoise *PreprocessingConfig_Denoise `protobuf:"bytes,2,opt,name=denoise,proto3" json:"denoise,omitempty"`1231 // Deblock preprocessing configuration.1232 Deblock *PreprocessingConfig_Deblock `protobuf:"bytes,3,opt,name=deblock,proto3" json:"deblock,omitempty"`1233 // Audio preprocessing configuration.1234 Audio *PreprocessingConfig_Audio `protobuf:"bytes,4,opt,name=audio,proto3" json:"audio,omitempty"`1235 // Specify the video cropping configuration.1236 Crop *PreprocessingConfig_Crop `protobuf:"bytes,5,opt,name=crop,proto3" json:"crop,omitempty"`1237 // Specify the video pad filter configuration.1238 Pad *PreprocessingConfig_Pad `protobuf:"bytes,6,opt,name=pad,proto3" json:"pad,omitempty"`1239}1240func (x *PreprocessingConfig) Reset() {1241 *x = PreprocessingConfig{}1242 if protoimpl.UnsafeEnabled {1243 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[13]1244 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1245 ms.StoreMessageInfo(mi)1246 }1247}1248func (x *PreprocessingConfig) String() string {1249 return protoimpl.X.MessageStringOf(x)1250}1251func (*PreprocessingConfig) ProtoMessage() {}1252func (x *PreprocessingConfig) ProtoReflect() protoreflect.Message {1253 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[13]1254 if protoimpl.UnsafeEnabled && x != nil {1255 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1256 if ms.LoadMessageInfo() == nil {1257 ms.StoreMessageInfo(mi)1258 }1259 return ms1260 }1261 return mi.MessageOf(x)1262}1263// Deprecated: Use PreprocessingConfig.ProtoReflect.Descriptor instead.1264func (*PreprocessingConfig) Descriptor() ([]byte, []int) {1265 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{13}1266}1267func (x *PreprocessingConfig) GetColor() *PreprocessingConfig_Color {1268 if x != nil {1269 return x.Color1270 }1271 return nil1272}1273func (x *PreprocessingConfig) GetDenoise() *PreprocessingConfig_Denoise {1274 if x != nil {1275 return x.Denoise1276 }1277 return nil1278}1279func (x *PreprocessingConfig) GetDeblock() *PreprocessingConfig_Deblock {1280 if x != nil {1281 return x.Deblock1282 }1283 return nil1284}1285func (x *PreprocessingConfig) GetAudio() *PreprocessingConfig_Audio {1286 if x != nil {1287 return x.Audio1288 }1289 return nil1290}1291func (x *PreprocessingConfig) GetCrop() *PreprocessingConfig_Crop {1292 if x != nil {1293 return x.Crop1294 }1295 return nil1296}1297func (x *PreprocessingConfig) GetPad() *PreprocessingConfig_Pad {1298 if x != nil {1299 return x.Pad1300 }1301 return nil1302}1303// Video stream resource.1304type VideoStream struct {1305 state protoimpl.MessageState1306 sizeCache protoimpl.SizeCache1307 unknownFields protoimpl.UnknownFields1308 // Codec settings can be h264, h265, or vp9.1309 //1310 // Types that are assignable to CodecSettings:1311 // *VideoStream_H2641312 // *VideoStream_H2651313 // *VideoStream_Vp91314 CodecSettings isVideoStream_CodecSettings `protobuf_oneof:"codec_settings"`1315}1316func (x *VideoStream) Reset() {1317 *x = VideoStream{}1318 if protoimpl.UnsafeEnabled {1319 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[14]1320 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1321 ms.StoreMessageInfo(mi)1322 }1323}1324func (x *VideoStream) String() string {1325 return protoimpl.X.MessageStringOf(x)1326}1327func (*VideoStream) ProtoMessage() {}1328func (x *VideoStream) ProtoReflect() protoreflect.Message {1329 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[14]1330 if protoimpl.UnsafeEnabled && x != nil {1331 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1332 if ms.LoadMessageInfo() == nil {1333 ms.StoreMessageInfo(mi)1334 }1335 return ms1336 }1337 return mi.MessageOf(x)1338}1339// Deprecated: Use VideoStream.ProtoReflect.Descriptor instead.1340func (*VideoStream) Descriptor() ([]byte, []int) {1341 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{14}1342}1343func (m *VideoStream) GetCodecSettings() isVideoStream_CodecSettings {1344 if m != nil {1345 return m.CodecSettings1346 }1347 return nil1348}1349func (x *VideoStream) GetH264() *VideoStream_H264CodecSettings {1350 if x, ok := x.GetCodecSettings().(*VideoStream_H264); ok {1351 return x.H2641352 }1353 return nil1354}1355func (x *VideoStream) GetH265() *VideoStream_H265CodecSettings {1356 if x, ok := x.GetCodecSettings().(*VideoStream_H265); ok {1357 return x.H2651358 }1359 return nil1360}1361func (x *VideoStream) GetVp9() *VideoStream_Vp9CodecSettings {1362 if x, ok := x.GetCodecSettings().(*VideoStream_Vp9); ok {1363 return x.Vp91364 }1365 return nil1366}1367type isVideoStream_CodecSettings interface {1368 isVideoStream_CodecSettings()1369}1370type VideoStream_H264 struct {1371 // H264 codec settings.1372 H264 *VideoStream_H264CodecSettings `protobuf:"bytes,1,opt,name=h264,proto3,oneof"`1373}1374type VideoStream_H265 struct {1375 // H265 codec settings.1376 H265 *VideoStream_H265CodecSettings `protobuf:"bytes,2,opt,name=h265,proto3,oneof"`1377}1378type VideoStream_Vp9 struct {1379 // VP9 codec settings.1380 Vp9 *VideoStream_Vp9CodecSettings `protobuf:"bytes,3,opt,name=vp9,proto3,oneof"`1381}1382func (*VideoStream_H264) isVideoStream_CodecSettings() {}1383func (*VideoStream_H265) isVideoStream_CodecSettings() {}1384func (*VideoStream_Vp9) isVideoStream_CodecSettings() {}1385// Audio stream resource.1386type AudioStream struct {1387 state protoimpl.MessageState1388 sizeCache protoimpl.SizeCache1389 unknownFields protoimpl.UnknownFields1390 // The codec for this audio stream. The default is `"aac"`.1391 //1392 // Supported audio codecs:1393 // - 'aac'1394 // - 'aac-he'1395 // - 'aac-he-v2'1396 // - 'mp3'1397 // - 'ac3'1398 // - 'eac3'1399 Codec string `protobuf:"bytes,1,opt,name=codec,proto3" json:"codec,omitempty"`1400 // Required. Audio bitrate in bits per second. Must be between 1 and 10,000,000.1401 BitrateBps int32 `protobuf:"varint,2,opt,name=bitrate_bps,json=bitrateBps,proto3" json:"bitrate_bps,omitempty"`1402 // Number of audio channels. Must be between 1 and 6. The default is 2.1403 ChannelCount int32 `protobuf:"varint,3,opt,name=channel_count,json=channelCount,proto3" json:"channel_count,omitempty"`1404 // A list of channel names specifying layout of the audio channels.1405 // This only affects the metadata embedded in the container headers, if1406 // supported by the specified format. The default is `["fl", "fr"]`.1407 //1408 // Supported channel names:1409 // - 'fl' - Front left channel1410 // - 'fr' - Front right channel1411 // - 'sl' - Side left channel1412 // - 'sr' - Side right channel1413 // - 'fc' - Front center channel1414 // - 'lfe' - Low frequency1415 ChannelLayout []string `protobuf:"bytes,4,rep,name=channel_layout,json=channelLayout,proto3" json:"channel_layout,omitempty"`1416 // The mapping for the `Job.edit_list` atoms with audio `EditAtom.inputs`.1417 Mapping []*AudioStream_AudioMapping `protobuf:"bytes,5,rep,name=mapping,proto3" json:"mapping,omitempty"`1418 // The audio sample rate in Hertz. The default is 48000 Hertz.1419 SampleRateHertz int32 `protobuf:"varint,6,opt,name=sample_rate_hertz,json=sampleRateHertz,proto3" json:"sample_rate_hertz,omitempty"`1420}1421func (x *AudioStream) Reset() {1422 *x = AudioStream{}1423 if protoimpl.UnsafeEnabled {1424 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[15]1425 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1426 ms.StoreMessageInfo(mi)1427 }1428}1429func (x *AudioStream) String() string {1430 return protoimpl.X.MessageStringOf(x)1431}1432func (*AudioStream) ProtoMessage() {}1433func (x *AudioStream) ProtoReflect() protoreflect.Message {1434 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[15]1435 if protoimpl.UnsafeEnabled && x != nil {1436 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1437 if ms.LoadMessageInfo() == nil {1438 ms.StoreMessageInfo(mi)1439 }1440 return ms1441 }1442 return mi.MessageOf(x)1443}1444// Deprecated: Use AudioStream.ProtoReflect.Descriptor instead.1445func (*AudioStream) Descriptor() ([]byte, []int) {1446 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{15}1447}1448func (x *AudioStream) GetCodec() string {1449 if x != nil {1450 return x.Codec1451 }1452 return ""1453}1454func (x *AudioStream) GetBitrateBps() int32 {1455 if x != nil {1456 return x.BitrateBps1457 }1458 return 01459}1460func (x *AudioStream) GetChannelCount() int32 {1461 if x != nil {1462 return x.ChannelCount1463 }1464 return 01465}1466func (x *AudioStream) GetChannelLayout() []string {1467 if x != nil {1468 return x.ChannelLayout1469 }1470 return nil1471}1472func (x *AudioStream) GetMapping() []*AudioStream_AudioMapping {1473 if x != nil {1474 return x.Mapping1475 }1476 return nil1477}1478func (x *AudioStream) GetSampleRateHertz() int32 {1479 if x != nil {1480 return x.SampleRateHertz1481 }1482 return 01483}1484// Encoding of a text stream. For example, closed captions or subtitles.1485type TextStream struct {1486 state protoimpl.MessageState1487 sizeCache protoimpl.SizeCache1488 unknownFields protoimpl.UnknownFields1489 // The codec for this text stream. The default is `"webvtt"`.1490 //1491 // Supported text codecs:1492 // - 'srt'1493 // - 'ttml'1494 // - 'cea608'1495 // - 'cea708'1496 // - 'webvtt'1497 Codec string `protobuf:"bytes,1,opt,name=codec,proto3" json:"codec,omitempty"`1498 // The mapping for the `Job.edit_list` atoms with text `EditAtom.inputs`.1499 Mapping []*TextStream_TextMapping `protobuf:"bytes,3,rep,name=mapping,proto3" json:"mapping,omitempty"`1500}1501func (x *TextStream) Reset() {1502 *x = TextStream{}1503 if protoimpl.UnsafeEnabled {1504 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[16]1505 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1506 ms.StoreMessageInfo(mi)1507 }1508}1509func (x *TextStream) String() string {1510 return protoimpl.X.MessageStringOf(x)1511}1512func (*TextStream) ProtoMessage() {}1513func (x *TextStream) ProtoReflect() protoreflect.Message {1514 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[16]1515 if protoimpl.UnsafeEnabled && x != nil {1516 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1517 if ms.LoadMessageInfo() == nil {1518 ms.StoreMessageInfo(mi)1519 }1520 return ms1521 }1522 return mi.MessageOf(x)1523}1524// Deprecated: Use TextStream.ProtoReflect.Descriptor instead.1525func (*TextStream) Descriptor() ([]byte, []int) {1526 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{16}1527}1528func (x *TextStream) GetCodec() string {1529 if x != nil {1530 return x.Codec1531 }1532 return ""1533}1534func (x *TextStream) GetMapping() []*TextStream_TextMapping {1535 if x != nil {1536 return x.Mapping1537 }1538 return nil1539}1540// Segment settings for `"ts"`, `"fmp4"` and `"vtt"`.1541type SegmentSettings struct {1542 state protoimpl.MessageState1543 sizeCache protoimpl.SizeCache1544 unknownFields protoimpl.UnknownFields1545 // Duration of the segments in seconds. The default is `"6.0s"`. Note that1546 // `segmentDuration` must be greater than or equal to1547 // [`gopDuration`](#videostream), and `segmentDuration` must be divisible by1548 // [`gopDuration`](#videostream).1549 SegmentDuration *durationpb.Duration `protobuf:"bytes,1,opt,name=segment_duration,json=segmentDuration,proto3" json:"segment_duration,omitempty"`1550 // Required. Create an individual segment file. The default is `false`.1551 IndividualSegments bool `protobuf:"varint,3,opt,name=individual_segments,json=individualSegments,proto3" json:"individual_segments,omitempty"`1552}1553func (x *SegmentSettings) Reset() {1554 *x = SegmentSettings{}1555 if protoimpl.UnsafeEnabled {1556 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[17]1557 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1558 ms.StoreMessageInfo(mi)1559 }1560}1561func (x *SegmentSettings) String() string {1562 return protoimpl.X.MessageStringOf(x)1563}1564func (*SegmentSettings) ProtoMessage() {}1565func (x *SegmentSettings) ProtoReflect() protoreflect.Message {1566 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[17]1567 if protoimpl.UnsafeEnabled && x != nil {1568 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1569 if ms.LoadMessageInfo() == nil {1570 ms.StoreMessageInfo(mi)1571 }1572 return ms1573 }1574 return mi.MessageOf(x)1575}1576// Deprecated: Use SegmentSettings.ProtoReflect.Descriptor instead.1577func (*SegmentSettings) Descriptor() ([]byte, []int) {1578 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{17}1579}1580func (x *SegmentSettings) GetSegmentDuration() *durationpb.Duration {1581 if x != nil {1582 return x.SegmentDuration1583 }1584 return nil1585}1586func (x *SegmentSettings) GetIndividualSegments() bool {1587 if x != nil {1588 return x.IndividualSegments1589 }1590 return false1591}1592// Encryption settings.1593type Encryption struct {1594 state protoimpl.MessageState1595 sizeCache protoimpl.SizeCache1596 unknownFields protoimpl.UnknownFields1597 // Required. 128 bit encryption key represented as lowercase hexadecimal digits.1598 Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`1599 // Required. 128 bit Initialization Vector (IV) represented as lowercase hexadecimal1600 // digits.1601 Iv string `protobuf:"bytes,2,opt,name=iv,proto3" json:"iv,omitempty"`1602 // Encryption mode can be either `aes` or `cenc`.1603 //1604 // Types that are assignable to EncryptionMode:1605 // *Encryption_Aes_1281606 // *Encryption_SampleAes1607 // *Encryption_MpegCenc1608 EncryptionMode isEncryption_EncryptionMode `protobuf_oneof:"encryption_mode"`1609}1610func (x *Encryption) Reset() {1611 *x = Encryption{}1612 if protoimpl.UnsafeEnabled {1613 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[18]1614 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1615 ms.StoreMessageInfo(mi)1616 }1617}1618func (x *Encryption) String() string {1619 return protoimpl.X.MessageStringOf(x)1620}1621func (*Encryption) ProtoMessage() {}1622func (x *Encryption) ProtoReflect() protoreflect.Message {1623 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[18]1624 if protoimpl.UnsafeEnabled && x != nil {1625 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1626 if ms.LoadMessageInfo() == nil {1627 ms.StoreMessageInfo(mi)1628 }1629 return ms1630 }1631 return mi.MessageOf(x)1632}1633// Deprecated: Use Encryption.ProtoReflect.Descriptor instead.1634func (*Encryption) Descriptor() ([]byte, []int) {1635 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{18}1636}1637func (x *Encryption) GetKey() string {1638 if x != nil {1639 return x.Key1640 }1641 return ""1642}1643func (x *Encryption) GetIv() string {1644 if x != nil {1645 return x.Iv1646 }1647 return ""1648}1649func (m *Encryption) GetEncryptionMode() isEncryption_EncryptionMode {1650 if m != nil {1651 return m.EncryptionMode1652 }1653 return nil1654}1655func (x *Encryption) GetAes_128() *Encryption_Aes128Encryption {1656 if x, ok := x.GetEncryptionMode().(*Encryption_Aes_128); ok {1657 return x.Aes_1281658 }1659 return nil1660}1661func (x *Encryption) GetSampleAes() *Encryption_SampleAesEncryption {1662 if x, ok := x.GetEncryptionMode().(*Encryption_SampleAes); ok {1663 return x.SampleAes1664 }1665 return nil1666}1667func (x *Encryption) GetMpegCenc() *Encryption_MpegCommonEncryption {1668 if x, ok := x.GetEncryptionMode().(*Encryption_MpegCenc); ok {1669 return x.MpegCenc1670 }1671 return nil1672}1673type isEncryption_EncryptionMode interface {1674 isEncryption_EncryptionMode()1675}1676type Encryption_Aes_128 struct {1677 // Configuration for AES-128 encryption.1678 Aes_128 *Encryption_Aes128Encryption `protobuf:"bytes,3,opt,name=aes_128,json=aes128,proto3,oneof"`1679}1680type Encryption_SampleAes struct {1681 // Configuration for SAMPLE-AES encryption.1682 SampleAes *Encryption_SampleAesEncryption `protobuf:"bytes,4,opt,name=sample_aes,json=sampleAes,proto3,oneof"`1683}1684type Encryption_MpegCenc struct {1685 // Configuration for MPEG Common Encryption (MPEG-CENC).1686 MpegCenc *Encryption_MpegCommonEncryption `protobuf:"bytes,5,opt,name=mpeg_cenc,json=mpegCenc,proto3,oneof"`1687}1688func (*Encryption_Aes_128) isEncryption_EncryptionMode() {}1689func (*Encryption_SampleAes) isEncryption_EncryptionMode() {}1690func (*Encryption_MpegCenc) isEncryption_EncryptionMode() {}1691// 2D normalized coordinates. Default: `{0.0, 0.0}`1692type Overlay_NormalizedCoordinate struct {1693 state protoimpl.MessageState1694 sizeCache protoimpl.SizeCache1695 unknownFields protoimpl.UnknownFields1696 // Normalized x coordinate.1697 X float64 `protobuf:"fixed64,1,opt,name=x,proto3" json:"x,omitempty"`1698 // Normalized y coordinate.1699 Y float64 `protobuf:"fixed64,2,opt,name=y,proto3" json:"y,omitempty"`1700}1701func (x *Overlay_NormalizedCoordinate) Reset() {1702 *x = Overlay_NormalizedCoordinate{}1703 if protoimpl.UnsafeEnabled {1704 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[19]1705 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1706 ms.StoreMessageInfo(mi)1707 }1708}1709func (x *Overlay_NormalizedCoordinate) String() string {1710 return protoimpl.X.MessageStringOf(x)1711}1712func (*Overlay_NormalizedCoordinate) ProtoMessage() {}1713func (x *Overlay_NormalizedCoordinate) ProtoReflect() protoreflect.Message {1714 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[19]1715 if protoimpl.UnsafeEnabled && x != nil {1716 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1717 if ms.LoadMessageInfo() == nil {1718 ms.StoreMessageInfo(mi)1719 }1720 return ms1721 }1722 return mi.MessageOf(x)1723}1724// Deprecated: Use Overlay_NormalizedCoordinate.ProtoReflect.Descriptor instead.1725func (*Overlay_NormalizedCoordinate) Descriptor() ([]byte, []int) {1726 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12, 0}1727}1728func (x *Overlay_NormalizedCoordinate) GetX() float64 {1729 if x != nil {1730 return x.X1731 }1732 return 01733}1734func (x *Overlay_NormalizedCoordinate) GetY() float64 {1735 if x != nil {1736 return x.Y1737 }1738 return 01739}1740// Overlaid jpeg image.1741type Overlay_Image struct {1742 state protoimpl.MessageState1743 sizeCache protoimpl.SizeCache1744 unknownFields protoimpl.UnknownFields1745 // Required. URI of the JPEG image in Cloud Storage. For example,1746 // `gs://bucket/inputs/image.jpeg`. JPEG is the only supported image type.1747 Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`1748 // Normalized image resolution, based on output video resolution. Valid1749 // values: `0.0`â`1.0`. To respect the original image aspect ratio, set1750 // either `x` or `y` to `0.0`. To use the original image resolution, set1751 // both `x` and `y` to `0.0`.1752 Resolution *Overlay_NormalizedCoordinate `protobuf:"bytes,2,opt,name=resolution,proto3" json:"resolution,omitempty"`1753 // Target image opacity. Valid values are from `1.0` (solid, default) to1754 // `0.0` (transparent), exclusive. Set this to a value greater than `0.0`.1755 Alpha float64 `protobuf:"fixed64,3,opt,name=alpha,proto3" json:"alpha,omitempty"`1756}1757func (x *Overlay_Image) Reset() {1758 *x = Overlay_Image{}1759 if protoimpl.UnsafeEnabled {1760 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[20]1761 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1762 ms.StoreMessageInfo(mi)1763 }1764}1765func (x *Overlay_Image) String() string {1766 return protoimpl.X.MessageStringOf(x)1767}1768func (*Overlay_Image) ProtoMessage() {}1769func (x *Overlay_Image) ProtoReflect() protoreflect.Message {1770 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[20]1771 if protoimpl.UnsafeEnabled && x != nil {1772 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1773 if ms.LoadMessageInfo() == nil {1774 ms.StoreMessageInfo(mi)1775 }1776 return ms1777 }1778 return mi.MessageOf(x)1779}1780// Deprecated: Use Overlay_Image.ProtoReflect.Descriptor instead.1781func (*Overlay_Image) Descriptor() ([]byte, []int) {1782 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12, 1}1783}1784func (x *Overlay_Image) GetUri() string {1785 if x != nil {1786 return x.Uri1787 }1788 return ""1789}1790func (x *Overlay_Image) GetResolution() *Overlay_NormalizedCoordinate {1791 if x != nil {1792 return x.Resolution1793 }1794 return nil1795}1796func (x *Overlay_Image) GetAlpha() float64 {1797 if x != nil {1798 return x.Alpha1799 }1800 return 01801}1802// Display static overlay object.1803type Overlay_AnimationStatic struct {1804 state protoimpl.MessageState1805 sizeCache protoimpl.SizeCache1806 unknownFields protoimpl.UnknownFields1807 // Normalized coordinates based on output video resolution. Valid1808 // values: `0.0`â`1.0`. `xy` is the upper-left coordinate of the overlay1809 // object. For example, use the x and y coordinates {0,0} to position the1810 // top-left corner of the overlay animation in the top-left corner of the1811 // output video.1812 Xy *Overlay_NormalizedCoordinate `protobuf:"bytes,1,opt,name=xy,proto3" json:"xy,omitempty"`1813 // The time to start displaying the overlay object, in seconds. Default: 01814 StartTimeOffset *durationpb.Duration `protobuf:"bytes,2,opt,name=start_time_offset,json=startTimeOffset,proto3" json:"start_time_offset,omitempty"`1815}1816func (x *Overlay_AnimationStatic) Reset() {1817 *x = Overlay_AnimationStatic{}1818 if protoimpl.UnsafeEnabled {1819 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[21]1820 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1821 ms.StoreMessageInfo(mi)1822 }1823}1824func (x *Overlay_AnimationStatic) String() string {1825 return protoimpl.X.MessageStringOf(x)1826}1827func (*Overlay_AnimationStatic) ProtoMessage() {}1828func (x *Overlay_AnimationStatic) ProtoReflect() protoreflect.Message {1829 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[21]1830 if protoimpl.UnsafeEnabled && x != nil {1831 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1832 if ms.LoadMessageInfo() == nil {1833 ms.StoreMessageInfo(mi)1834 }1835 return ms1836 }1837 return mi.MessageOf(x)1838}1839// Deprecated: Use Overlay_AnimationStatic.ProtoReflect.Descriptor instead.1840func (*Overlay_AnimationStatic) Descriptor() ([]byte, []int) {1841 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12, 2}1842}1843func (x *Overlay_AnimationStatic) GetXy() *Overlay_NormalizedCoordinate {1844 if x != nil {1845 return x.Xy1846 }1847 return nil1848}1849func (x *Overlay_AnimationStatic) GetStartTimeOffset() *durationpb.Duration {1850 if x != nil {1851 return x.StartTimeOffset1852 }1853 return nil1854}1855// Display overlay object with fade animation.1856type Overlay_AnimationFade struct {1857 state protoimpl.MessageState1858 sizeCache protoimpl.SizeCache1859 unknownFields protoimpl.UnknownFields1860 // Required. Type of fade animation: `FADE_IN` or `FADE_OUT`.1861 FadeType Overlay_FadeType `protobuf:"varint,1,opt,name=fade_type,json=fadeType,proto3,enum=google.cloud.video.transcoder.v1.Overlay_FadeType" json:"fade_type,omitempty"`1862 // Normalized coordinates based on output video resolution. Valid1863 // values: `0.0`â`1.0`. `xy` is the upper-left coordinate of the overlay1864 // object. For example, use the x and y coordinates {0,0} to position the1865 // top-left corner of the overlay animation in the top-left corner of the1866 // output video.1867 Xy *Overlay_NormalizedCoordinate `protobuf:"bytes,2,opt,name=xy,proto3" json:"xy,omitempty"`1868 // The time to start the fade animation, in seconds. Default: 01869 StartTimeOffset *durationpb.Duration `protobuf:"bytes,3,opt,name=start_time_offset,json=startTimeOffset,proto3" json:"start_time_offset,omitempty"`1870 // The time to end the fade animation, in seconds. Default:1871 // `start_time_offset` + 1s1872 EndTimeOffset *durationpb.Duration `protobuf:"bytes,4,opt,name=end_time_offset,json=endTimeOffset,proto3" json:"end_time_offset,omitempty"`1873}1874func (x *Overlay_AnimationFade) Reset() {1875 *x = Overlay_AnimationFade{}1876 if protoimpl.UnsafeEnabled {1877 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[22]1878 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1879 ms.StoreMessageInfo(mi)1880 }1881}1882func (x *Overlay_AnimationFade) String() string {1883 return protoimpl.X.MessageStringOf(x)1884}1885func (*Overlay_AnimationFade) ProtoMessage() {}1886func (x *Overlay_AnimationFade) ProtoReflect() protoreflect.Message {1887 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[22]1888 if protoimpl.UnsafeEnabled && x != nil {1889 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1890 if ms.LoadMessageInfo() == nil {1891 ms.StoreMessageInfo(mi)1892 }1893 return ms1894 }1895 return mi.MessageOf(x)1896}1897// Deprecated: Use Overlay_AnimationFade.ProtoReflect.Descriptor instead.1898func (*Overlay_AnimationFade) Descriptor() ([]byte, []int) {1899 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12, 3}1900}1901func (x *Overlay_AnimationFade) GetFadeType() Overlay_FadeType {1902 if x != nil {1903 return x.FadeType1904 }1905 return Overlay_FADE_TYPE_UNSPECIFIED1906}1907func (x *Overlay_AnimationFade) GetXy() *Overlay_NormalizedCoordinate {1908 if x != nil {1909 return x.Xy1910 }1911 return nil1912}1913func (x *Overlay_AnimationFade) GetStartTimeOffset() *durationpb.Duration {1914 if x != nil {1915 return x.StartTimeOffset1916 }1917 return nil1918}1919func (x *Overlay_AnimationFade) GetEndTimeOffset() *durationpb.Duration {1920 if x != nil {1921 return x.EndTimeOffset1922 }1923 return nil1924}1925// End previous overlay animation from the video. Without AnimationEnd, the1926// overlay object will keep the state of previous animation until the end of1927// the video.1928type Overlay_AnimationEnd struct {1929 state protoimpl.MessageState1930 sizeCache protoimpl.SizeCache1931 unknownFields protoimpl.UnknownFields1932 // The time to end overlay object, in seconds. Default: 01933 StartTimeOffset *durationpb.Duration `protobuf:"bytes,1,opt,name=start_time_offset,json=startTimeOffset,proto3" json:"start_time_offset,omitempty"`1934}1935func (x *Overlay_AnimationEnd) Reset() {1936 *x = Overlay_AnimationEnd{}1937 if protoimpl.UnsafeEnabled {1938 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[23]1939 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1940 ms.StoreMessageInfo(mi)1941 }1942}1943func (x *Overlay_AnimationEnd) String() string {1944 return protoimpl.X.MessageStringOf(x)1945}1946func (*Overlay_AnimationEnd) ProtoMessage() {}1947func (x *Overlay_AnimationEnd) ProtoReflect() protoreflect.Message {1948 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[23]1949 if protoimpl.UnsafeEnabled && x != nil {1950 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1951 if ms.LoadMessageInfo() == nil {1952 ms.StoreMessageInfo(mi)1953 }1954 return ms1955 }1956 return mi.MessageOf(x)1957}1958// Deprecated: Use Overlay_AnimationEnd.ProtoReflect.Descriptor instead.1959func (*Overlay_AnimationEnd) Descriptor() ([]byte, []int) {1960 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12, 4}1961}1962func (x *Overlay_AnimationEnd) GetStartTimeOffset() *durationpb.Duration {1963 if x != nil {1964 return x.StartTimeOffset1965 }1966 return nil1967}1968// Animation types.1969type Overlay_Animation struct {1970 state protoimpl.MessageState1971 sizeCache protoimpl.SizeCache1972 unknownFields protoimpl.UnknownFields1973 // Animations can be static or fade, or they can end the previous animation.1974 //1975 // Types that are assignable to AnimationType:1976 // *Overlay_Animation_AnimationStatic1977 // *Overlay_Animation_AnimationFade1978 // *Overlay_Animation_AnimationEnd1979 AnimationType isOverlay_Animation_AnimationType `protobuf_oneof:"animation_type"`1980}1981func (x *Overlay_Animation) Reset() {1982 *x = Overlay_Animation{}1983 if protoimpl.UnsafeEnabled {1984 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[24]1985 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1986 ms.StoreMessageInfo(mi)1987 }1988}1989func (x *Overlay_Animation) String() string {1990 return protoimpl.X.MessageStringOf(x)1991}1992func (*Overlay_Animation) ProtoMessage() {}1993func (x *Overlay_Animation) ProtoReflect() protoreflect.Message {1994 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[24]1995 if protoimpl.UnsafeEnabled && x != nil {1996 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))1997 if ms.LoadMessageInfo() == nil {1998 ms.StoreMessageInfo(mi)1999 }2000 return ms2001 }2002 return mi.MessageOf(x)2003}2004// Deprecated: Use Overlay_Animation.ProtoReflect.Descriptor instead.2005func (*Overlay_Animation) Descriptor() ([]byte, []int) {2006 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12, 5}2007}2008func (m *Overlay_Animation) GetAnimationType() isOverlay_Animation_AnimationType {2009 if m != nil {2010 return m.AnimationType2011 }2012 return nil2013}2014func (x *Overlay_Animation) GetAnimationStatic() *Overlay_AnimationStatic {2015 if x, ok := x.GetAnimationType().(*Overlay_Animation_AnimationStatic); ok {2016 return x.AnimationStatic2017 }2018 return nil2019}2020func (x *Overlay_Animation) GetAnimationFade() *Overlay_AnimationFade {2021 if x, ok := x.GetAnimationType().(*Overlay_Animation_AnimationFade); ok {2022 return x.AnimationFade2023 }2024 return nil2025}2026func (x *Overlay_Animation) GetAnimationEnd() *Overlay_AnimationEnd {2027 if x, ok := x.GetAnimationType().(*Overlay_Animation_AnimationEnd); ok {2028 return x.AnimationEnd2029 }2030 return nil2031}2032type isOverlay_Animation_AnimationType interface {2033 isOverlay_Animation_AnimationType()2034}2035type Overlay_Animation_AnimationStatic struct {2036 // Display static overlay object.2037 AnimationStatic *Overlay_AnimationStatic `protobuf:"bytes,1,opt,name=animation_static,json=animationStatic,proto3,oneof"`2038}2039type Overlay_Animation_AnimationFade struct {2040 // Display overlay object with fade animation.2041 AnimationFade *Overlay_AnimationFade `protobuf:"bytes,2,opt,name=animation_fade,json=animationFade,proto3,oneof"`2042}2043type Overlay_Animation_AnimationEnd struct {2044 // End previous animation.2045 AnimationEnd *Overlay_AnimationEnd `protobuf:"bytes,3,opt,name=animation_end,json=animationEnd,proto3,oneof"`2046}2047func (*Overlay_Animation_AnimationStatic) isOverlay_Animation_AnimationType() {}2048func (*Overlay_Animation_AnimationFade) isOverlay_Animation_AnimationType() {}2049func (*Overlay_Animation_AnimationEnd) isOverlay_Animation_AnimationType() {}2050// Color preprocessing configuration.2051type PreprocessingConfig_Color struct {2052 state protoimpl.MessageState2053 sizeCache protoimpl.SizeCache2054 unknownFields protoimpl.UnknownFields2055 // Control color saturation of the video. Enter a value between -1 and 1,2056 // where -1 is fully desaturated and 1 is maximum saturation. 0 is no2057 // change. The default is 0.2058 Saturation float64 `protobuf:"fixed64,1,opt,name=saturation,proto3" json:"saturation,omitempty"`2059 // Control black and white contrast of the video. Enter a value between -12060 // and 1, where -1 is minimum contrast and 1 is maximum contrast. 0 is no2061 // change. The default is 0.2062 Contrast float64 `protobuf:"fixed64,2,opt,name=contrast,proto3" json:"contrast,omitempty"`2063 // Control brightness of the video. Enter a value between -1 and 1, where -12064 // is minimum brightness and 1 is maximum brightness. 0 is no change. The2065 // default is 0.2066 Brightness float64 `protobuf:"fixed64,3,opt,name=brightness,proto3" json:"brightness,omitempty"`2067}2068func (x *PreprocessingConfig_Color) Reset() {2069 *x = PreprocessingConfig_Color{}2070 if protoimpl.UnsafeEnabled {2071 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[25]2072 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2073 ms.StoreMessageInfo(mi)2074 }2075}2076func (x *PreprocessingConfig_Color) String() string {2077 return protoimpl.X.MessageStringOf(x)2078}2079func (*PreprocessingConfig_Color) ProtoMessage() {}2080func (x *PreprocessingConfig_Color) ProtoReflect() protoreflect.Message {2081 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[25]2082 if protoimpl.UnsafeEnabled && x != nil {2083 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2084 if ms.LoadMessageInfo() == nil {2085 ms.StoreMessageInfo(mi)2086 }2087 return ms2088 }2089 return mi.MessageOf(x)2090}2091// Deprecated: Use PreprocessingConfig_Color.ProtoReflect.Descriptor instead.2092func (*PreprocessingConfig_Color) Descriptor() ([]byte, []int) {2093 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{13, 0}2094}2095func (x *PreprocessingConfig_Color) GetSaturation() float64 {2096 if x != nil {2097 return x.Saturation2098 }2099 return 02100}2101func (x *PreprocessingConfig_Color) GetContrast() float64 {2102 if x != nil {2103 return x.Contrast2104 }2105 return 02106}2107func (x *PreprocessingConfig_Color) GetBrightness() float64 {2108 if x != nil {2109 return x.Brightness2110 }2111 return 02112}2113// Denoise preprocessing configuration.2114type PreprocessingConfig_Denoise struct {2115 state protoimpl.MessageState2116 sizeCache protoimpl.SizeCache2117 unknownFields protoimpl.UnknownFields2118 // Set strength of the denoise. Enter a value between 0 and 1. The higher2119 // the value, the smoother the image. 0 is no denoising. The default is 0.2120 Strength float64 `protobuf:"fixed64,1,opt,name=strength,proto3" json:"strength,omitempty"`2121 // Set the denoiser mode. The default is `"standard"`.2122 //2123 // Supported denoiser modes:2124 // - 'standard'2125 // - 'grain'2126 Tune string `protobuf:"bytes,2,opt,name=tune,proto3" json:"tune,omitempty"`2127}2128func (x *PreprocessingConfig_Denoise) Reset() {2129 *x = PreprocessingConfig_Denoise{}2130 if protoimpl.UnsafeEnabled {2131 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[26]2132 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2133 ms.StoreMessageInfo(mi)2134 }2135}2136func (x *PreprocessingConfig_Denoise) String() string {2137 return protoimpl.X.MessageStringOf(x)2138}2139func (*PreprocessingConfig_Denoise) ProtoMessage() {}2140func (x *PreprocessingConfig_Denoise) ProtoReflect() protoreflect.Message {2141 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[26]2142 if protoimpl.UnsafeEnabled && x != nil {2143 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2144 if ms.LoadMessageInfo() == nil {2145 ms.StoreMessageInfo(mi)2146 }2147 return ms2148 }2149 return mi.MessageOf(x)2150}2151// Deprecated: Use PreprocessingConfig_Denoise.ProtoReflect.Descriptor instead.2152func (*PreprocessingConfig_Denoise) Descriptor() ([]byte, []int) {2153 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{13, 1}2154}2155func (x *PreprocessingConfig_Denoise) GetStrength() float64 {2156 if x != nil {2157 return x.Strength2158 }2159 return 02160}2161func (x *PreprocessingConfig_Denoise) GetTune() string {2162 if x != nil {2163 return x.Tune2164 }2165 return ""2166}2167// Deblock preprocessing configuration.2168type PreprocessingConfig_Deblock struct {2169 state protoimpl.MessageState2170 sizeCache protoimpl.SizeCache2171 unknownFields protoimpl.UnknownFields2172 // Set strength of the deblocker. Enter a value between 0 and 1. The higher2173 // the value, the stronger the block removal. 0 is no deblocking. The2174 // default is 0.2175 Strength float64 `protobuf:"fixed64,1,opt,name=strength,proto3" json:"strength,omitempty"`2176 // Enable deblocker. The default is `false`.2177 Enabled bool `protobuf:"varint,2,opt,name=enabled,proto3" json:"enabled,omitempty"`2178}2179func (x *PreprocessingConfig_Deblock) Reset() {2180 *x = PreprocessingConfig_Deblock{}2181 if protoimpl.UnsafeEnabled {2182 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[27]2183 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2184 ms.StoreMessageInfo(mi)2185 }2186}2187func (x *PreprocessingConfig_Deblock) String() string {2188 return protoimpl.X.MessageStringOf(x)2189}2190func (*PreprocessingConfig_Deblock) ProtoMessage() {}2191func (x *PreprocessingConfig_Deblock) ProtoReflect() protoreflect.Message {2192 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[27]2193 if protoimpl.UnsafeEnabled && x != nil {2194 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2195 if ms.LoadMessageInfo() == nil {2196 ms.StoreMessageInfo(mi)2197 }2198 return ms2199 }2200 return mi.MessageOf(x)2201}2202// Deprecated: Use PreprocessingConfig_Deblock.ProtoReflect.Descriptor instead.2203func (*PreprocessingConfig_Deblock) Descriptor() ([]byte, []int) {2204 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{13, 2}2205}2206func (x *PreprocessingConfig_Deblock) GetStrength() float64 {2207 if x != nil {2208 return x.Strength2209 }2210 return 02211}2212func (x *PreprocessingConfig_Deblock) GetEnabled() bool {2213 if x != nil {2214 return x.Enabled2215 }2216 return false2217}2218// Audio preprocessing configuration.2219type PreprocessingConfig_Audio struct {2220 state protoimpl.MessageState2221 sizeCache protoimpl.SizeCache2222 unknownFields protoimpl.UnknownFields2223 // Specify audio loudness normalization in loudness units relative to full2224 // scale (LUFS). Enter a value between -24 and 0 (the default), where:2225 //2226 // * -24 is the Advanced Television Systems Committee (ATSC A/85) standard2227 // * -23 is the EU R128 broadcast standard2228 // * -19 is the prior standard for online mono audio2229 // * -18 is the ReplayGain standard2230 // * -16 is the prior standard for stereo audio2231 // * -14 is the new online audio standard recommended by Spotify, as well2232 // as Amazon Echo2233 // * 0 disables normalization2234 Lufs float64 `protobuf:"fixed64,1,opt,name=lufs,proto3" json:"lufs,omitempty"`2235 // Enable boosting high frequency components. The default is `false`.2236 HighBoost bool `protobuf:"varint,2,opt,name=high_boost,json=highBoost,proto3" json:"high_boost,omitempty"`2237 // Enable boosting low frequency components. The default is `false`.2238 LowBoost bool `protobuf:"varint,3,opt,name=low_boost,json=lowBoost,proto3" json:"low_boost,omitempty"`2239}2240func (x *PreprocessingConfig_Audio) Reset() {2241 *x = PreprocessingConfig_Audio{}2242 if protoimpl.UnsafeEnabled {2243 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[28]2244 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2245 ms.StoreMessageInfo(mi)2246 }2247}2248func (x *PreprocessingConfig_Audio) String() string {2249 return protoimpl.X.MessageStringOf(x)2250}2251func (*PreprocessingConfig_Audio) ProtoMessage() {}2252func (x *PreprocessingConfig_Audio) ProtoReflect() protoreflect.Message {2253 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[28]2254 if protoimpl.UnsafeEnabled && x != nil {2255 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2256 if ms.LoadMessageInfo() == nil {2257 ms.StoreMessageInfo(mi)2258 }2259 return ms2260 }2261 return mi.MessageOf(x)2262}2263// Deprecated: Use PreprocessingConfig_Audio.ProtoReflect.Descriptor instead.2264func (*PreprocessingConfig_Audio) Descriptor() ([]byte, []int) {2265 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{13, 3}2266}2267func (x *PreprocessingConfig_Audio) GetLufs() float64 {2268 if x != nil {2269 return x.Lufs2270 }2271 return 02272}2273func (x *PreprocessingConfig_Audio) GetHighBoost() bool {2274 if x != nil {2275 return x.HighBoost2276 }2277 return false2278}2279func (x *PreprocessingConfig_Audio) GetLowBoost() bool {2280 if x != nil {2281 return x.LowBoost2282 }2283 return false2284}2285// Video cropping configuration for the input video. The cropped input video2286// is scaled to match the output resolution.2287type PreprocessingConfig_Crop struct {2288 state protoimpl.MessageState2289 sizeCache protoimpl.SizeCache2290 unknownFields protoimpl.UnknownFields2291 // The number of pixels to crop from the top. The default is 0.2292 TopPixels int32 `protobuf:"varint,1,opt,name=top_pixels,json=topPixels,proto3" json:"top_pixels,omitempty"`2293 // The number of pixels to crop from the bottom. The default is 0.2294 BottomPixels int32 `protobuf:"varint,2,opt,name=bottom_pixels,json=bottomPixels,proto3" json:"bottom_pixels,omitempty"`2295 // The number of pixels to crop from the left. The default is 0.2296 LeftPixels int32 `protobuf:"varint,3,opt,name=left_pixels,json=leftPixels,proto3" json:"left_pixels,omitempty"`2297 // The number of pixels to crop from the right. The default is 0.2298 RightPixels int32 `protobuf:"varint,4,opt,name=right_pixels,json=rightPixels,proto3" json:"right_pixels,omitempty"`2299}2300func (x *PreprocessingConfig_Crop) Reset() {2301 *x = PreprocessingConfig_Crop{}2302 if protoimpl.UnsafeEnabled {2303 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[29]2304 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2305 ms.StoreMessageInfo(mi)2306 }2307}2308func (x *PreprocessingConfig_Crop) String() string {2309 return protoimpl.X.MessageStringOf(x)2310}2311func (*PreprocessingConfig_Crop) ProtoMessage() {}2312func (x *PreprocessingConfig_Crop) ProtoReflect() protoreflect.Message {2313 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[29]2314 if protoimpl.UnsafeEnabled && x != nil {2315 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2316 if ms.LoadMessageInfo() == nil {2317 ms.StoreMessageInfo(mi)2318 }2319 return ms2320 }2321 return mi.MessageOf(x)2322}2323// Deprecated: Use PreprocessingConfig_Crop.ProtoReflect.Descriptor instead.2324func (*PreprocessingConfig_Crop) Descriptor() ([]byte, []int) {2325 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{13, 4}2326}2327func (x *PreprocessingConfig_Crop) GetTopPixels() int32 {2328 if x != nil {2329 return x.TopPixels2330 }2331 return 02332}2333func (x *PreprocessingConfig_Crop) GetBottomPixels() int32 {2334 if x != nil {2335 return x.BottomPixels2336 }2337 return 02338}2339func (x *PreprocessingConfig_Crop) GetLeftPixels() int32 {2340 if x != nil {2341 return x.LeftPixels2342 }2343 return 02344}2345func (x *PreprocessingConfig_Crop) GetRightPixels() int32 {2346 if x != nil {2347 return x.RightPixels2348 }2349 return 02350}2351// Pad filter configuration for the input video. The padded input video2352// is scaled after padding with black to match the output resolution.2353type PreprocessingConfig_Pad struct {2354 state protoimpl.MessageState2355 sizeCache protoimpl.SizeCache2356 unknownFields protoimpl.UnknownFields2357 // The number of pixels to add to the top. The default is 0.2358 TopPixels int32 `protobuf:"varint,1,opt,name=top_pixels,json=topPixels,proto3" json:"top_pixels,omitempty"`2359 // The number of pixels to add to the bottom. The default is 0.2360 BottomPixels int32 `protobuf:"varint,2,opt,name=bottom_pixels,json=bottomPixels,proto3" json:"bottom_pixels,omitempty"`2361 // The number of pixels to add to the left. The default is 0.2362 LeftPixels int32 `protobuf:"varint,3,opt,name=left_pixels,json=leftPixels,proto3" json:"left_pixels,omitempty"`2363 // The number of pixels to add to the right. The default is 0.2364 RightPixels int32 `protobuf:"varint,4,opt,name=right_pixels,json=rightPixels,proto3" json:"right_pixels,omitempty"`2365}2366func (x *PreprocessingConfig_Pad) Reset() {2367 *x = PreprocessingConfig_Pad{}2368 if protoimpl.UnsafeEnabled {2369 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[30]2370 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2371 ms.StoreMessageInfo(mi)2372 }2373}2374func (x *PreprocessingConfig_Pad) String() string {2375 return protoimpl.X.MessageStringOf(x)2376}2377func (*PreprocessingConfig_Pad) ProtoMessage() {}2378func (x *PreprocessingConfig_Pad) ProtoReflect() protoreflect.Message {2379 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[30]2380 if protoimpl.UnsafeEnabled && x != nil {2381 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2382 if ms.LoadMessageInfo() == nil {2383 ms.StoreMessageInfo(mi)2384 }2385 return ms2386 }2387 return mi.MessageOf(x)2388}2389// Deprecated: Use PreprocessingConfig_Pad.ProtoReflect.Descriptor instead.2390func (*PreprocessingConfig_Pad) Descriptor() ([]byte, []int) {2391 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{13, 5}2392}2393func (x *PreprocessingConfig_Pad) GetTopPixels() int32 {2394 if x != nil {2395 return x.TopPixels2396 }2397 return 02398}2399func (x *PreprocessingConfig_Pad) GetBottomPixels() int32 {2400 if x != nil {2401 return x.BottomPixels2402 }2403 return 02404}2405func (x *PreprocessingConfig_Pad) GetLeftPixels() int32 {2406 if x != nil {2407 return x.LeftPixels2408 }2409 return 02410}2411func (x *PreprocessingConfig_Pad) GetRightPixels() int32 {2412 if x != nil {2413 return x.RightPixels2414 }2415 return 02416}2417// H264 codec settings.2418type VideoStream_H264CodecSettings struct {2419 state protoimpl.MessageState2420 sizeCache protoimpl.SizeCache2421 unknownFields protoimpl.UnknownFields2422 // The width of the video in pixels. Must be an even integer.2423 // When not specified, the width is adjusted to match the specified height2424 // and input aspect ratio. If both are omitted, the input width is used.2425 WidthPixels int32 `protobuf:"varint,1,opt,name=width_pixels,json=widthPixels,proto3" json:"width_pixels,omitempty"`2426 // The height of the video in pixels. Must be an even integer.2427 // When not specified, the height is adjusted to match the specified width2428 // and input aspect ratio. If both are omitted, the input height is used.2429 HeightPixels int32 `protobuf:"varint,2,opt,name=height_pixels,json=heightPixels,proto3" json:"height_pixels,omitempty"`2430 // Required. The target video frame rate in frames per second (FPS). Must be less than2431 // or equal to 120. Will default to the input frame rate if larger than the2432 // input frame rate. The API will generate an output FPS that is divisible2433 // by the input FPS, and smaller or equal to the target FPS. See2434 // [Calculating frame2435 // rate](https://cloud.google.com/transcoder/docs/concepts/frame-rate) for2436 // more information.2437 FrameRate float64 `protobuf:"fixed64,3,opt,name=frame_rate,json=frameRate,proto3" json:"frame_rate,omitempty"`2438 // Required. The video bitrate in bits per second. Must be between 1 and2439 // 1,000,000,000.2440 BitrateBps int32 `protobuf:"varint,4,opt,name=bitrate_bps,json=bitrateBps,proto3" json:"bitrate_bps,omitempty"`2441 // Pixel format to use. The default is `"yuv420p"`.2442 //2443 // Supported pixel formats:2444 // - 'yuv420p' pixel format.2445 // - 'yuv422p' pixel format.2446 // - 'yuv444p' pixel format.2447 // - 'yuv420p10' 10-bit HDR pixel format.2448 // - 'yuv422p10' 10-bit HDR pixel format.2449 // - 'yuv444p10' 10-bit HDR pixel format.2450 // - 'yuv420p12' 12-bit HDR pixel format.2451 // - 'yuv422p12' 12-bit HDR pixel format.2452 // - 'yuv444p12' 12-bit HDR pixel format.2453 PixelFormat string `protobuf:"bytes,5,opt,name=pixel_format,json=pixelFormat,proto3" json:"pixel_format,omitempty"`2454 // Specify the `rate_control_mode`. The default is `"vbr"`.2455 //2456 // Supported rate control modes:2457 // - 'vbr' - variable bitrate2458 // - 'crf' - constant rate factor2459 RateControlMode string `protobuf:"bytes,6,opt,name=rate_control_mode,json=rateControlMode,proto3" json:"rate_control_mode,omitempty"`2460 // Target CRF level. Must be between 10 and 36, where 10 is the highest2461 // quality and 36 is the most efficient compression. The default is 21.2462 CrfLevel int32 `protobuf:"varint,7,opt,name=crf_level,json=crfLevel,proto3" json:"crf_level,omitempty"`2463 // Specifies whether an open Group of Pictures (GOP) structure should be2464 // allowed or not. The default is `false`.2465 AllowOpenGop bool `protobuf:"varint,8,opt,name=allow_open_gop,json=allowOpenGop,proto3" json:"allow_open_gop,omitempty"`2466 // GOP mode can be either by frame count or duration.2467 //2468 // Types that are assignable to GopMode:2469 // *VideoStream_H264CodecSettings_GopFrameCount2470 // *VideoStream_H264CodecSettings_GopDuration2471 GopMode isVideoStream_H264CodecSettings_GopMode `protobuf_oneof:"gop_mode"`2472 // Use two-pass encoding strategy to achieve better video quality.2473 // `VideoStream.rate_control_mode` must be `"vbr"`. The default is `false`.2474 EnableTwoPass bool `protobuf:"varint,11,opt,name=enable_two_pass,json=enableTwoPass,proto3" json:"enable_two_pass,omitempty"`2475 // Size of the Video Buffering Verifier (VBV) buffer in bits. Must be2476 // greater than zero. The default is equal to `VideoStream.bitrate_bps`.2477 VbvSizeBits int32 `protobuf:"varint,12,opt,name=vbv_size_bits,json=vbvSizeBits,proto3" json:"vbv_size_bits,omitempty"`2478 // Initial fullness of the Video Buffering Verifier (VBV) buffer in bits.2479 // Must be greater than zero. The default is equal to 90% of2480 // `VideoStream.vbv_size_bits`.2481 VbvFullnessBits int32 `protobuf:"varint,13,opt,name=vbv_fullness_bits,json=vbvFullnessBits,proto3" json:"vbv_fullness_bits,omitempty"`2482 // The entropy coder to use. The default is `"cabac"`.2483 //2484 // Supported entropy coders:2485 // - 'cavlc'2486 // - 'cabac'2487 EntropyCoder string `protobuf:"bytes,14,opt,name=entropy_coder,json=entropyCoder,proto3" json:"entropy_coder,omitempty"`2488 // Allow B-pyramid for reference frame selection. This may not be supported2489 // on all decoders. The default is `false`.2490 BPyramid bool `protobuf:"varint,15,opt,name=b_pyramid,json=bPyramid,proto3" json:"b_pyramid,omitempty"`2491 // The number of consecutive B-frames. Must be greater than or equal to2492 // zero. Must be less than `VideoStream.gop_frame_count` if set. The default2493 // is 0.2494 BFrameCount int32 `protobuf:"varint,16,opt,name=b_frame_count,json=bFrameCount,proto3" json:"b_frame_count,omitempty"`2495 // Specify the intensity of the adaptive quantizer (AQ). Must be between 02496 // and 1, where 0 disables the quantizer and 1 maximizes the quantizer. A2497 // higher value equals a lower bitrate but smoother image. The default is 0.2498 AqStrength float64 `protobuf:"fixed64,17,opt,name=aq_strength,json=aqStrength,proto3" json:"aq_strength,omitempty"`2499 // Enforces the specified codec profile. The following profiles are2500 // supported:2501 //2502 // * `baseline`2503 // * `main`2504 // * `high` (default)2505 //2506 // The available options are2507 // [FFmpeg-compatible](https://trac.ffmpeg.org/wiki/Encode/H.264#Profile){:2508 // class="external" }. Note that certain values for this field may cause the2509 // transcoder to override other fields you set in the `H264CodecSettings`2510 // message.2511 Profile string `protobuf:"bytes,18,opt,name=profile,proto3" json:"profile,omitempty"`2512 // Enforces the specified codec tune. The available options are2513 // [FFmpeg-compatible](https://trac.ffmpeg.org/wiki/Encode/H.264#Tune){:2514 // class="external" }. Note that certain values for this field may cause the2515 // transcoder to override other fields you set in the `H264CodecSettings`2516 // message.2517 Tune string `protobuf:"bytes,19,opt,name=tune,proto3" json:"tune,omitempty"`2518 // Enforces the specified codec preset. The default is `veryfast`. The2519 // available options are2520 // [FFmpeg-compatible](https://trac.ffmpeg.org/wiki/Encode/H.264#Preset){:2521 // class="external" }. Note that certain values for this field may cause the2522 // transcoder to override other fields you set in the `H264CodecSettings`2523 // message.2524 Preset string `protobuf:"bytes,20,opt,name=preset,proto3" json:"preset,omitempty"`2525}2526func (x *VideoStream_H264CodecSettings) Reset() {2527 *x = VideoStream_H264CodecSettings{}2528 if protoimpl.UnsafeEnabled {2529 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[31]2530 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2531 ms.StoreMessageInfo(mi)2532 }2533}2534func (x *VideoStream_H264CodecSettings) String() string {2535 return protoimpl.X.MessageStringOf(x)2536}2537func (*VideoStream_H264CodecSettings) ProtoMessage() {}2538func (x *VideoStream_H264CodecSettings) ProtoReflect() protoreflect.Message {2539 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[31]2540 if protoimpl.UnsafeEnabled && x != nil {2541 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2542 if ms.LoadMessageInfo() == nil {2543 ms.StoreMessageInfo(mi)2544 }2545 return ms2546 }2547 return mi.MessageOf(x)2548}2549// Deprecated: Use VideoStream_H264CodecSettings.ProtoReflect.Descriptor instead.2550func (*VideoStream_H264CodecSettings) Descriptor() ([]byte, []int) {2551 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{14, 0}2552}2553func (x *VideoStream_H264CodecSettings) GetWidthPixels() int32 {2554 if x != nil {2555 return x.WidthPixels2556 }2557 return 02558}2559func (x *VideoStream_H264CodecSettings) GetHeightPixels() int32 {2560 if x != nil {2561 return x.HeightPixels2562 }2563 return 02564}2565func (x *VideoStream_H264CodecSettings) GetFrameRate() float64 {2566 if x != nil {2567 return x.FrameRate2568 }2569 return 02570}2571func (x *VideoStream_H264CodecSettings) GetBitrateBps() int32 {2572 if x != nil {2573 return x.BitrateBps2574 }2575 return 02576}2577func (x *VideoStream_H264CodecSettings) GetPixelFormat() string {2578 if x != nil {2579 return x.PixelFormat2580 }2581 return ""2582}2583func (x *VideoStream_H264CodecSettings) GetRateControlMode() string {2584 if x != nil {2585 return x.RateControlMode2586 }2587 return ""2588}2589func (x *VideoStream_H264CodecSettings) GetCrfLevel() int32 {2590 if x != nil {2591 return x.CrfLevel2592 }2593 return 02594}2595func (x *VideoStream_H264CodecSettings) GetAllowOpenGop() bool {2596 if x != nil {2597 return x.AllowOpenGop2598 }2599 return false2600}2601func (m *VideoStream_H264CodecSettings) GetGopMode() isVideoStream_H264CodecSettings_GopMode {2602 if m != nil {2603 return m.GopMode2604 }2605 return nil2606}2607func (x *VideoStream_H264CodecSettings) GetGopFrameCount() int32 {2608 if x, ok := x.GetGopMode().(*VideoStream_H264CodecSettings_GopFrameCount); ok {2609 return x.GopFrameCount2610 }2611 return 02612}2613func (x *VideoStream_H264CodecSettings) GetGopDuration() *durationpb.Duration {2614 if x, ok := x.GetGopMode().(*VideoStream_H264CodecSettings_GopDuration); ok {2615 return x.GopDuration2616 }2617 return nil2618}2619func (x *VideoStream_H264CodecSettings) GetEnableTwoPass() bool {2620 if x != nil {2621 return x.EnableTwoPass2622 }2623 return false2624}2625func (x *VideoStream_H264CodecSettings) GetVbvSizeBits() int32 {2626 if x != nil {2627 return x.VbvSizeBits2628 }2629 return 02630}2631func (x *VideoStream_H264CodecSettings) GetVbvFullnessBits() int32 {2632 if x != nil {2633 return x.VbvFullnessBits2634 }2635 return 02636}2637func (x *VideoStream_H264CodecSettings) GetEntropyCoder() string {2638 if x != nil {2639 return x.EntropyCoder2640 }2641 return ""2642}2643func (x *VideoStream_H264CodecSettings) GetBPyramid() bool {2644 if x != nil {2645 return x.BPyramid2646 }2647 return false2648}2649func (x *VideoStream_H264CodecSettings) GetBFrameCount() int32 {2650 if x != nil {2651 return x.BFrameCount2652 }2653 return 02654}2655func (x *VideoStream_H264CodecSettings) GetAqStrength() float64 {2656 if x != nil {2657 return x.AqStrength2658 }2659 return 02660}2661func (x *VideoStream_H264CodecSettings) GetProfile() string {2662 if x != nil {2663 return x.Profile2664 }2665 return ""2666}2667func (x *VideoStream_H264CodecSettings) GetTune() string {2668 if x != nil {2669 return x.Tune2670 }2671 return ""2672}2673func (x *VideoStream_H264CodecSettings) GetPreset() string {2674 if x != nil {2675 return x.Preset2676 }2677 return ""2678}2679type isVideoStream_H264CodecSettings_GopMode interface {2680 isVideoStream_H264CodecSettings_GopMode()2681}2682type VideoStream_H264CodecSettings_GopFrameCount struct {2683 // Select the GOP size based on the specified frame count. Must be greater2684 // than zero.2685 GopFrameCount int32 `protobuf:"varint,9,opt,name=gop_frame_count,json=gopFrameCount,proto3,oneof"`2686}2687type VideoStream_H264CodecSettings_GopDuration struct {2688 // Select the GOP size based on the specified duration. The default is2689 // `"3s"`. Note that `gopDuration` must be less than or equal to2690 // [`segmentDuration`](#SegmentSettings), and2691 // [`segmentDuration`](#SegmentSettings) must be divisible by2692 // `gopDuration`.2693 GopDuration *durationpb.Duration `protobuf:"bytes,10,opt,name=gop_duration,json=gopDuration,proto3,oneof"`2694}2695func (*VideoStream_H264CodecSettings_GopFrameCount) isVideoStream_H264CodecSettings_GopMode() {}2696func (*VideoStream_H264CodecSettings_GopDuration) isVideoStream_H264CodecSettings_GopMode() {}2697// H265 codec settings.2698type VideoStream_H265CodecSettings struct {2699 state protoimpl.MessageState2700 sizeCache protoimpl.SizeCache2701 unknownFields protoimpl.UnknownFields2702 // The width of the video in pixels. Must be an even integer.2703 // When not specified, the width is adjusted to match the specified height2704 // and input aspect ratio. If both are omitted, the input width is used.2705 WidthPixels int32 `protobuf:"varint,1,opt,name=width_pixels,json=widthPixels,proto3" json:"width_pixels,omitempty"`2706 // The height of the video in pixels. Must be an even integer.2707 // When not specified, the height is adjusted to match the specified width2708 // and input aspect ratio. If both are omitted, the input height is used.2709 HeightPixels int32 `protobuf:"varint,2,opt,name=height_pixels,json=heightPixels,proto3" json:"height_pixels,omitempty"`2710 // Required. The target video frame rate in frames per second (FPS). Must be less than2711 // or equal to 120. Will default to the input frame rate if larger than the2712 // input frame rate. The API will generate an output FPS that is divisible2713 // by the input FPS, and smaller or equal to the target FPS. See2714 // [Calculating frame2715 // rate](https://cloud.google.com/transcoder/docs/concepts/frame-rate) for2716 // more information.2717 FrameRate float64 `protobuf:"fixed64,3,opt,name=frame_rate,json=frameRate,proto3" json:"frame_rate,omitempty"`2718 // Required. The video bitrate in bits per second. Must be between 1 and2719 // 1,000,000,000.2720 BitrateBps int32 `protobuf:"varint,4,opt,name=bitrate_bps,json=bitrateBps,proto3" json:"bitrate_bps,omitempty"`2721 // Pixel format to use. The default is `"yuv420p"`.2722 //2723 // Supported pixel formats:2724 // - 'yuv420p' pixel format.2725 // - 'yuv422p' pixel format.2726 // - 'yuv444p' pixel format.2727 // - 'yuv420p10' 10-bit HDR pixel format.2728 // - 'yuv422p10' 10-bit HDR pixel format.2729 // - 'yuv444p10' 10-bit HDR pixel format.2730 // - 'yuv420p12' 12-bit HDR pixel format.2731 // - 'yuv422p12' 12-bit HDR pixel format.2732 // - 'yuv444p12' 12-bit HDR pixel format.2733 PixelFormat string `protobuf:"bytes,5,opt,name=pixel_format,json=pixelFormat,proto3" json:"pixel_format,omitempty"`2734 // Specify the `rate_control_mode`. The default is `"vbr"`.2735 //2736 // Supported rate control modes:2737 // - 'vbr' - variable bitrate2738 // - 'crf' - constant rate factor2739 RateControlMode string `protobuf:"bytes,6,opt,name=rate_control_mode,json=rateControlMode,proto3" json:"rate_control_mode,omitempty"`2740 // Target CRF level. Must be between 10 and 36, where 10 is the highest2741 // quality and 36 is the most efficient compression. The default is 21.2742 CrfLevel int32 `protobuf:"varint,7,opt,name=crf_level,json=crfLevel,proto3" json:"crf_level,omitempty"`2743 // Specifies whether an open Group of Pictures (GOP) structure should be2744 // allowed or not. The default is `false`.2745 AllowOpenGop bool `protobuf:"varint,8,opt,name=allow_open_gop,json=allowOpenGop,proto3" json:"allow_open_gop,omitempty"`2746 // GOP mode can be either by frame count or duration.2747 //2748 // Types that are assignable to GopMode:2749 // *VideoStream_H265CodecSettings_GopFrameCount2750 // *VideoStream_H265CodecSettings_GopDuration2751 GopMode isVideoStream_H265CodecSettings_GopMode `protobuf_oneof:"gop_mode"`2752 // Use two-pass encoding strategy to achieve better video quality.2753 // `VideoStream.rate_control_mode` must be `"vbr"`. The default is `false`.2754 EnableTwoPass bool `protobuf:"varint,11,opt,name=enable_two_pass,json=enableTwoPass,proto3" json:"enable_two_pass,omitempty"`2755 // Size of the Video Buffering Verifier (VBV) buffer in bits. Must be2756 // greater than zero. The default is equal to `VideoStream.bitrate_bps`.2757 VbvSizeBits int32 `protobuf:"varint,12,opt,name=vbv_size_bits,json=vbvSizeBits,proto3" json:"vbv_size_bits,omitempty"`2758 // Initial fullness of the Video Buffering Verifier (VBV) buffer in bits.2759 // Must be greater than zero. The default is equal to 90% of2760 // `VideoStream.vbv_size_bits`.2761 VbvFullnessBits int32 `protobuf:"varint,13,opt,name=vbv_fullness_bits,json=vbvFullnessBits,proto3" json:"vbv_fullness_bits,omitempty"`2762 // Allow B-pyramid for reference frame selection. This may not be supported2763 // on all decoders. The default is `false`.2764 BPyramid bool `protobuf:"varint,14,opt,name=b_pyramid,json=bPyramid,proto3" json:"b_pyramid,omitempty"`2765 // The number of consecutive B-frames. Must be greater than or equal to2766 // zero. Must be less than `VideoStream.gop_frame_count` if set. The default2767 // is 0.2768 BFrameCount int32 `protobuf:"varint,15,opt,name=b_frame_count,json=bFrameCount,proto3" json:"b_frame_count,omitempty"`2769 // Specify the intensity of the adaptive quantizer (AQ). Must be between 02770 // and 1, where 0 disables the quantizer and 1 maximizes the quantizer. A2771 // higher value equals a lower bitrate but smoother image. The default is 0.2772 AqStrength float64 `protobuf:"fixed64,16,opt,name=aq_strength,json=aqStrength,proto3" json:"aq_strength,omitempty"`2773 // Enforces the specified codec profile. The following profiles are2774 // supported:2775 //2776 // 8bit profiles2777 // * `main` (default)2778 // * `main-intra`2779 // * `mainstillpicture`2780 //2781 // 10bit profiles2782 // * `main10` (default)2783 // * `main10-intra`2784 // * `main422-10`2785 // * `main422-10-intra`2786 // * `main444-10`2787 // * `main444-10-intra`2788 //2789 // 12bit profiles2790 // * `main12` (default)2791 // * `main12-intra`2792 // * `main422-12`2793 // * `main422-12-intra`2794 // * `main444-12`2795 // * `main444-12-intra`2796 //2797 // The available options are2798 // [FFmpeg-compatible](https://x265.readthedocs.io/){:2799 // class="external" }. Note that certain values for this field may cause the2800 // transcoder to override other fields you set in the `H265CodecSettings`2801 // message.2802 Profile string `protobuf:"bytes,17,opt,name=profile,proto3" json:"profile,omitempty"`2803 // Enforces the specified codec tune. The available options are2804 // [FFmpeg-compatible](https://trac.ffmpeg.org/wiki/Encode/H.265){:2805 // class="external" }. Note that certain values for this field may cause the2806 // transcoder to override other fields you set in the `H265CodecSettings`2807 // message.2808 Tune string `protobuf:"bytes,18,opt,name=tune,proto3" json:"tune,omitempty"`2809 // Enforces the specified codec preset. The default is `veryfast`. The2810 // available options are2811 // [FFmpeg-compatible](https://trac.ffmpeg.org/wiki/Encode/H.265){:2812 // class="external" }. Note that certain values for this field may cause the2813 // transcoder to override other fields you set in the `H265CodecSettings`2814 // message.2815 Preset string `protobuf:"bytes,19,opt,name=preset,proto3" json:"preset,omitempty"`2816}2817func (x *VideoStream_H265CodecSettings) Reset() {2818 *x = VideoStream_H265CodecSettings{}2819 if protoimpl.UnsafeEnabled {2820 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[32]2821 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2822 ms.StoreMessageInfo(mi)2823 }2824}2825func (x *VideoStream_H265CodecSettings) String() string {2826 return protoimpl.X.MessageStringOf(x)2827}2828func (*VideoStream_H265CodecSettings) ProtoMessage() {}2829func (x *VideoStream_H265CodecSettings) ProtoReflect() protoreflect.Message {2830 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[32]2831 if protoimpl.UnsafeEnabled && x != nil {2832 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))2833 if ms.LoadMessageInfo() == nil {2834 ms.StoreMessageInfo(mi)2835 }2836 return ms2837 }2838 return mi.MessageOf(x)2839}2840// Deprecated: Use VideoStream_H265CodecSettings.ProtoReflect.Descriptor instead.2841func (*VideoStream_H265CodecSettings) Descriptor() ([]byte, []int) {2842 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{14, 1}2843}2844func (x *VideoStream_H265CodecSettings) GetWidthPixels() int32 {2845 if x != nil {2846 return x.WidthPixels2847 }2848 return 02849}2850func (x *VideoStream_H265CodecSettings) GetHeightPixels() int32 {2851 if x != nil {2852 return x.HeightPixels2853 }2854 return 02855}2856func (x *VideoStream_H265CodecSettings) GetFrameRate() float64 {2857 if x != nil {2858 return x.FrameRate2859 }2860 return 02861}2862func (x *VideoStream_H265CodecSettings) GetBitrateBps() int32 {2863 if x != nil {2864 return x.BitrateBps2865 }2866 return 02867}2868func (x *VideoStream_H265CodecSettings) GetPixelFormat() string {2869 if x != nil {2870 return x.PixelFormat2871 }2872 return ""2873}2874func (x *VideoStream_H265CodecSettings) GetRateControlMode() string {2875 if x != nil {2876 return x.RateControlMode2877 }2878 return ""2879}2880func (x *VideoStream_H265CodecSettings) GetCrfLevel() int32 {2881 if x != nil {2882 return x.CrfLevel2883 }2884 return 02885}2886func (x *VideoStream_H265CodecSettings) GetAllowOpenGop() bool {2887 if x != nil {2888 return x.AllowOpenGop2889 }2890 return false2891}2892func (m *VideoStream_H265CodecSettings) GetGopMode() isVideoStream_H265CodecSettings_GopMode {2893 if m != nil {2894 return m.GopMode2895 }2896 return nil2897}2898func (x *VideoStream_H265CodecSettings) GetGopFrameCount() int32 {2899 if x, ok := x.GetGopMode().(*VideoStream_H265CodecSettings_GopFrameCount); ok {2900 return x.GopFrameCount2901 }2902 return 02903}2904func (x *VideoStream_H265CodecSettings) GetGopDuration() *durationpb.Duration {2905 if x, ok := x.GetGopMode().(*VideoStream_H265CodecSettings_GopDuration); ok {2906 return x.GopDuration2907 }2908 return nil2909}2910func (x *VideoStream_H265CodecSettings) GetEnableTwoPass() bool {2911 if x != nil {2912 return x.EnableTwoPass2913 }2914 return false2915}2916func (x *VideoStream_H265CodecSettings) GetVbvSizeBits() int32 {2917 if x != nil {2918 return x.VbvSizeBits2919 }2920 return 02921}2922func (x *VideoStream_H265CodecSettings) GetVbvFullnessBits() int32 {2923 if x != nil {2924 return x.VbvFullnessBits2925 }2926 return 02927}2928func (x *VideoStream_H265CodecSettings) GetBPyramid() bool {2929 if x != nil {2930 return x.BPyramid2931 }2932 return false2933}2934func (x *VideoStream_H265CodecSettings) GetBFrameCount() int32 {2935 if x != nil {2936 return x.BFrameCount2937 }2938 return 02939}2940func (x *VideoStream_H265CodecSettings) GetAqStrength() float64 {2941 if x != nil {2942 return x.AqStrength2943 }2944 return 02945}2946func (x *VideoStream_H265CodecSettings) GetProfile() string {2947 if x != nil {2948 return x.Profile2949 }2950 return ""2951}2952func (x *VideoStream_H265CodecSettings) GetTune() string {2953 if x != nil {2954 return x.Tune2955 }2956 return ""2957}2958func (x *VideoStream_H265CodecSettings) GetPreset() string {2959 if x != nil {2960 return x.Preset2961 }2962 return ""2963}2964type isVideoStream_H265CodecSettings_GopMode interface {2965 isVideoStream_H265CodecSettings_GopMode()2966}2967type VideoStream_H265CodecSettings_GopFrameCount struct {2968 // Select the GOP size based on the specified frame count. Must be greater2969 // than zero.2970 GopFrameCount int32 `protobuf:"varint,9,opt,name=gop_frame_count,json=gopFrameCount,proto3,oneof"`2971}2972type VideoStream_H265CodecSettings_GopDuration struct {2973 // Select the GOP size based on the specified duration. The default is2974 // `"3s"`. Note that `gopDuration` must be less than or equal to2975 // [`segmentDuration`](#SegmentSettings), and2976 // [`segmentDuration`](#SegmentSettings) must be divisible by2977 // `gopDuration`.2978 GopDuration *durationpb.Duration `protobuf:"bytes,10,opt,name=gop_duration,json=gopDuration,proto3,oneof"`2979}2980func (*VideoStream_H265CodecSettings_GopFrameCount) isVideoStream_H265CodecSettings_GopMode() {}2981func (*VideoStream_H265CodecSettings_GopDuration) isVideoStream_H265CodecSettings_GopMode() {}2982// VP9 codec settings.2983type VideoStream_Vp9CodecSettings struct {2984 state protoimpl.MessageState2985 sizeCache protoimpl.SizeCache2986 unknownFields protoimpl.UnknownFields2987 // The width of the video in pixels. Must be an even integer.2988 // When not specified, the width is adjusted to match the specified height2989 // and input aspect ratio. If both are omitted, the input width is used.2990 WidthPixels int32 `protobuf:"varint,1,opt,name=width_pixels,json=widthPixels,proto3" json:"width_pixels,omitempty"`2991 // The height of the video in pixels. Must be an even integer.2992 // When not specified, the height is adjusted to match the specified width2993 // and input aspect ratio. If both are omitted, the input height is used.2994 HeightPixels int32 `protobuf:"varint,2,opt,name=height_pixels,json=heightPixels,proto3" json:"height_pixels,omitempty"`2995 // Required. The target video frame rate in frames per second (FPS). Must be less than2996 // or equal to 120. Will default to the input frame rate if larger than the2997 // input frame rate. The API will generate an output FPS that is divisible2998 // by the input FPS, and smaller or equal to the target FPS. See2999 // [Calculating frame3000 // rate](https://cloud.google.com/transcoder/docs/concepts/frame-rate) for3001 // more information.3002 FrameRate float64 `protobuf:"fixed64,3,opt,name=frame_rate,json=frameRate,proto3" json:"frame_rate,omitempty"`3003 // Required. The video bitrate in bits per second. Must be between 1 and3004 // 1,000,000,000.3005 BitrateBps int32 `protobuf:"varint,4,opt,name=bitrate_bps,json=bitrateBps,proto3" json:"bitrate_bps,omitempty"`3006 // Pixel format to use. The default is `"yuv420p"`.3007 //3008 // Supported pixel formats:3009 // - 'yuv420p' pixel format.3010 // - 'yuv422p' pixel format.3011 // - 'yuv444p' pixel format.3012 // - 'yuv420p10' 10-bit HDR pixel format.3013 // - 'yuv422p10' 10-bit HDR pixel format.3014 // - 'yuv444p10' 10-bit HDR pixel format.3015 // - 'yuv420p12' 12-bit HDR pixel format.3016 // - 'yuv422p12' 12-bit HDR pixel format.3017 // - 'yuv444p12' 12-bit HDR pixel format.3018 PixelFormat string `protobuf:"bytes,5,opt,name=pixel_format,json=pixelFormat,proto3" json:"pixel_format,omitempty"`3019 // Specify the `rate_control_mode`. The default is `"vbr"`.3020 //3021 // Supported rate control modes:3022 // - 'vbr' - variable bitrate3023 // - 'crf' - constant rate factor3024 RateControlMode string `protobuf:"bytes,6,opt,name=rate_control_mode,json=rateControlMode,proto3" json:"rate_control_mode,omitempty"`3025 // Target CRF level. Must be between 10 and 36, where 10 is the highest3026 // quality and 36 is the most efficient compression. The default is 21.3027 CrfLevel int32 `protobuf:"varint,7,opt,name=crf_level,json=crfLevel,proto3" json:"crf_level,omitempty"`3028 // GOP mode can be either by frame count or duration.3029 //3030 // Types that are assignable to GopMode:3031 // *VideoStream_Vp9CodecSettings_GopFrameCount3032 // *VideoStream_Vp9CodecSettings_GopDuration3033 GopMode isVideoStream_Vp9CodecSettings_GopMode `protobuf_oneof:"gop_mode"`3034 // Enforces the specified codec profile. The following profiles are3035 // supported:3036 //3037 // * `profile0` (default)3038 // * `profile1`3039 // * `profile2`3040 // * `profile3`3041 //3042 // The available options are3043 // [WebM-compatible](https://www.webmproject.org/vp9/profiles/){:3044 // class="external" }. Note that certain values for this field may cause the3045 // transcoder to override other fields you set in the `Vp9CodecSettings`3046 // message.3047 Profile string `protobuf:"bytes,10,opt,name=profile,proto3" json:"profile,omitempty"`3048}3049func (x *VideoStream_Vp9CodecSettings) Reset() {3050 *x = VideoStream_Vp9CodecSettings{}3051 if protoimpl.UnsafeEnabled {3052 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[33]3053 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))3054 ms.StoreMessageInfo(mi)3055 }3056}3057func (x *VideoStream_Vp9CodecSettings) String() string {3058 return protoimpl.X.MessageStringOf(x)3059}3060func (*VideoStream_Vp9CodecSettings) ProtoMessage() {}3061func (x *VideoStream_Vp9CodecSettings) ProtoReflect() protoreflect.Message {3062 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[33]3063 if protoimpl.UnsafeEnabled && x != nil {3064 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))3065 if ms.LoadMessageInfo() == nil {3066 ms.StoreMessageInfo(mi)3067 }3068 return ms3069 }3070 return mi.MessageOf(x)3071}3072// Deprecated: Use VideoStream_Vp9CodecSettings.ProtoReflect.Descriptor instead.3073func (*VideoStream_Vp9CodecSettings) Descriptor() ([]byte, []int) {3074 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{14, 2}3075}3076func (x *VideoStream_Vp9CodecSettings) GetWidthPixels() int32 {3077 if x != nil {3078 return x.WidthPixels3079 }3080 return 03081}3082func (x *VideoStream_Vp9CodecSettings) GetHeightPixels() int32 {3083 if x != nil {3084 return x.HeightPixels3085 }3086 return 03087}3088func (x *VideoStream_Vp9CodecSettings) GetFrameRate() float64 {3089 if x != nil {3090 return x.FrameRate3091 }3092 return 03093}3094func (x *VideoStream_Vp9CodecSettings) GetBitrateBps() int32 {3095 if x != nil {3096 return x.BitrateBps3097 }3098 return 03099}3100func (x *VideoStream_Vp9CodecSettings) GetPixelFormat() string {3101 if x != nil {3102 return x.PixelFormat3103 }3104 return ""3105}3106func (x *VideoStream_Vp9CodecSettings) GetRateControlMode() string {3107 if x != nil {3108 return x.RateControlMode3109 }3110 return ""3111}3112func (x *VideoStream_Vp9CodecSettings) GetCrfLevel() int32 {3113 if x != nil {3114 return x.CrfLevel3115 }3116 return 03117}3118func (m *VideoStream_Vp9CodecSettings) GetGopMode() isVideoStream_Vp9CodecSettings_GopMode {3119 if m != nil {3120 return m.GopMode3121 }3122 return nil3123}3124func (x *VideoStream_Vp9CodecSettings) GetGopFrameCount() int32 {3125 if x, ok := x.GetGopMode().(*VideoStream_Vp9CodecSettings_GopFrameCount); ok {3126 return x.GopFrameCount3127 }3128 return 03129}3130func (x *VideoStream_Vp9CodecSettings) GetGopDuration() *durationpb.Duration {3131 if x, ok := x.GetGopMode().(*VideoStream_Vp9CodecSettings_GopDuration); ok {3132 return x.GopDuration3133 }3134 return nil3135}3136func (x *VideoStream_Vp9CodecSettings) GetProfile() string {3137 if x != nil {3138 return x.Profile3139 }3140 return ""3141}3142type isVideoStream_Vp9CodecSettings_GopMode interface {3143 isVideoStream_Vp9CodecSettings_GopMode()3144}3145type VideoStream_Vp9CodecSettings_GopFrameCount struct {3146 // Select the GOP size based on the specified frame count. Must be greater3147 // than zero.3148 GopFrameCount int32 `protobuf:"varint,8,opt,name=gop_frame_count,json=gopFrameCount,proto3,oneof"`3149}3150type VideoStream_Vp9CodecSettings_GopDuration struct {3151 // Select the GOP size based on the specified duration. The default is3152 // `"3s"`. Note that `gopDuration` must be less than or equal to3153 // [`segmentDuration`](#SegmentSettings), and3154 // [`segmentDuration`](#SegmentSettings) must be divisible by3155 // `gopDuration`.3156 GopDuration *durationpb.Duration `protobuf:"bytes,9,opt,name=gop_duration,json=gopDuration,proto3,oneof"`3157}3158func (*VideoStream_Vp9CodecSettings_GopFrameCount) isVideoStream_Vp9CodecSettings_GopMode() {}3159func (*VideoStream_Vp9CodecSettings_GopDuration) isVideoStream_Vp9CodecSettings_GopMode() {}3160// The mapping for the `Job.edit_list` atoms with audio `EditAtom.inputs`.3161type AudioStream_AudioMapping struct {3162 state protoimpl.MessageState3163 sizeCache protoimpl.SizeCache3164 unknownFields protoimpl.UnknownFields3165 // Required. The `EditAtom.key` that references the atom with audio inputs in the3166 // `Job.edit_list`.3167 AtomKey string `protobuf:"bytes,1,opt,name=atom_key,json=atomKey,proto3" json:"atom_key,omitempty"`3168 // Required. The `Input.key` that identifies the input file.3169 InputKey string `protobuf:"bytes,2,opt,name=input_key,json=inputKey,proto3" json:"input_key,omitempty"`3170 // Required. The zero-based index of the track in the input file.3171 InputTrack int32 `protobuf:"varint,3,opt,name=input_track,json=inputTrack,proto3" json:"input_track,omitempty"`3172 // Required. The zero-based index of the channel in the input audio stream.3173 InputChannel int32 `protobuf:"varint,4,opt,name=input_channel,json=inputChannel,proto3" json:"input_channel,omitempty"`3174 // Required. The zero-based index of the channel in the output audio stream.3175 OutputChannel int32 `protobuf:"varint,5,opt,name=output_channel,json=outputChannel,proto3" json:"output_channel,omitempty"`3176 // Audio volume control in dB. Negative values decrease volume,3177 // positive values increase. The default is 0.3178 GainDb float64 `protobuf:"fixed64,6,opt,name=gain_db,json=gainDb,proto3" json:"gain_db,omitempty"`3179}3180func (x *AudioStream_AudioMapping) Reset() {3181 *x = AudioStream_AudioMapping{}3182 if protoimpl.UnsafeEnabled {3183 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[34]3184 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))3185 ms.StoreMessageInfo(mi)3186 }3187}3188func (x *AudioStream_AudioMapping) String() string {3189 return protoimpl.X.MessageStringOf(x)3190}3191func (*AudioStream_AudioMapping) ProtoMessage() {}3192func (x *AudioStream_AudioMapping) ProtoReflect() protoreflect.Message {3193 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[34]3194 if protoimpl.UnsafeEnabled && x != nil {3195 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))3196 if ms.LoadMessageInfo() == nil {3197 ms.StoreMessageInfo(mi)3198 }3199 return ms3200 }3201 return mi.MessageOf(x)3202}3203// Deprecated: Use AudioStream_AudioMapping.ProtoReflect.Descriptor instead.3204func (*AudioStream_AudioMapping) Descriptor() ([]byte, []int) {3205 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{15, 0}3206}3207func (x *AudioStream_AudioMapping) GetAtomKey() string {3208 if x != nil {3209 return x.AtomKey3210 }3211 return ""3212}3213func (x *AudioStream_AudioMapping) GetInputKey() string {3214 if x != nil {3215 return x.InputKey3216 }3217 return ""3218}3219func (x *AudioStream_AudioMapping) GetInputTrack() int32 {3220 if x != nil {3221 return x.InputTrack3222 }3223 return 03224}3225func (x *AudioStream_AudioMapping) GetInputChannel() int32 {3226 if x != nil {3227 return x.InputChannel3228 }3229 return 03230}3231func (x *AudioStream_AudioMapping) GetOutputChannel() int32 {3232 if x != nil {3233 return x.OutputChannel3234 }3235 return 03236}3237func (x *AudioStream_AudioMapping) GetGainDb() float64 {3238 if x != nil {3239 return x.GainDb3240 }3241 return 03242}3243// The mapping for the `Job.edit_list` atoms with text `EditAtom.inputs`.3244type TextStream_TextMapping struct {3245 state protoimpl.MessageState3246 sizeCache protoimpl.SizeCache3247 unknownFields protoimpl.UnknownFields3248 // Required. The `EditAtom.key` that references atom with text inputs in the3249 // `Job.edit_list`.3250 AtomKey string `protobuf:"bytes,1,opt,name=atom_key,json=atomKey,proto3" json:"atom_key,omitempty"`3251 // Required. The `Input.key` that identifies the input file.3252 InputKey string `protobuf:"bytes,2,opt,name=input_key,json=inputKey,proto3" json:"input_key,omitempty"`3253 // Required. The zero-based index of the track in the input file.3254 InputTrack int32 `protobuf:"varint,3,opt,name=input_track,json=inputTrack,proto3" json:"input_track,omitempty"`3255}3256func (x *TextStream_TextMapping) Reset() {3257 *x = TextStream_TextMapping{}3258 if protoimpl.UnsafeEnabled {3259 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[35]3260 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))3261 ms.StoreMessageInfo(mi)3262 }3263}3264func (x *TextStream_TextMapping) String() string {3265 return protoimpl.X.MessageStringOf(x)3266}3267func (*TextStream_TextMapping) ProtoMessage() {}3268func (x *TextStream_TextMapping) ProtoReflect() protoreflect.Message {3269 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[35]3270 if protoimpl.UnsafeEnabled && x != nil {3271 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))3272 if ms.LoadMessageInfo() == nil {3273 ms.StoreMessageInfo(mi)3274 }3275 return ms3276 }3277 return mi.MessageOf(x)3278}3279// Deprecated: Use TextStream_TextMapping.ProtoReflect.Descriptor instead.3280func (*TextStream_TextMapping) Descriptor() ([]byte, []int) {3281 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{16, 0}3282}3283func (x *TextStream_TextMapping) GetAtomKey() string {3284 if x != nil {3285 return x.AtomKey3286 }3287 return ""3288}3289func (x *TextStream_TextMapping) GetInputKey() string {3290 if x != nil {3291 return x.InputKey3292 }3293 return ""3294}3295func (x *TextStream_TextMapping) GetInputTrack() int32 {3296 if x != nil {3297 return x.InputTrack3298 }3299 return 03300}3301// Configuration for AES-128 encryption.3302type Encryption_Aes128Encryption struct {3303 state protoimpl.MessageState3304 sizeCache protoimpl.SizeCache3305 unknownFields protoimpl.UnknownFields3306 // Required. URI of the key delivery service. This URI is inserted into the M3U83307 // header.3308 KeyUri string `protobuf:"bytes,1,opt,name=key_uri,json=keyUri,proto3" json:"key_uri,omitempty"`3309}3310func (x *Encryption_Aes128Encryption) Reset() {3311 *x = Encryption_Aes128Encryption{}3312 if protoimpl.UnsafeEnabled {3313 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[36]3314 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))3315 ms.StoreMessageInfo(mi)3316 }3317}3318func (x *Encryption_Aes128Encryption) String() string {3319 return protoimpl.X.MessageStringOf(x)3320}3321func (*Encryption_Aes128Encryption) ProtoMessage() {}3322func (x *Encryption_Aes128Encryption) ProtoReflect() protoreflect.Message {3323 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[36]3324 if protoimpl.UnsafeEnabled && x != nil {3325 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))3326 if ms.LoadMessageInfo() == nil {3327 ms.StoreMessageInfo(mi)3328 }3329 return ms3330 }3331 return mi.MessageOf(x)3332}3333// Deprecated: Use Encryption_Aes128Encryption.ProtoReflect.Descriptor instead.3334func (*Encryption_Aes128Encryption) Descriptor() ([]byte, []int) {3335 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{18, 0}3336}3337func (x *Encryption_Aes128Encryption) GetKeyUri() string {3338 if x != nil {3339 return x.KeyUri3340 }3341 return ""3342}3343// Configuration for SAMPLE-AES encryption.3344type Encryption_SampleAesEncryption struct {3345 state protoimpl.MessageState3346 sizeCache protoimpl.SizeCache3347 unknownFields protoimpl.UnknownFields3348 // Required. URI of the key delivery service. This URI is inserted into the M3U83349 // header.3350 KeyUri string `protobuf:"bytes,1,opt,name=key_uri,json=keyUri,proto3" json:"key_uri,omitempty"`3351}3352func (x *Encryption_SampleAesEncryption) Reset() {3353 *x = Encryption_SampleAesEncryption{}3354 if protoimpl.UnsafeEnabled {3355 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[37]3356 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))3357 ms.StoreMessageInfo(mi)3358 }3359}3360func (x *Encryption_SampleAesEncryption) String() string {3361 return protoimpl.X.MessageStringOf(x)3362}3363func (*Encryption_SampleAesEncryption) ProtoMessage() {}3364func (x *Encryption_SampleAesEncryption) ProtoReflect() protoreflect.Message {3365 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[37]3366 if protoimpl.UnsafeEnabled && x != nil {3367 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))3368 if ms.LoadMessageInfo() == nil {3369 ms.StoreMessageInfo(mi)3370 }3371 return ms3372 }3373 return mi.MessageOf(x)3374}3375// Deprecated: Use Encryption_SampleAesEncryption.ProtoReflect.Descriptor instead.3376func (*Encryption_SampleAesEncryption) Descriptor() ([]byte, []int) {3377 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{18, 1}3378}3379func (x *Encryption_SampleAesEncryption) GetKeyUri() string {3380 if x != nil {3381 return x.KeyUri3382 }3383 return ""3384}3385// Configuration for MPEG Common Encryption (MPEG-CENC).3386type Encryption_MpegCommonEncryption struct {3387 state protoimpl.MessageState3388 sizeCache protoimpl.SizeCache3389 unknownFields protoimpl.UnknownFields3390 // Required. 128 bit Key ID represented as lowercase hexadecimal digits for use with3391 // common encryption.3392 KeyId string `protobuf:"bytes,1,opt,name=key_id,json=keyId,proto3" json:"key_id,omitempty"`3393 // Required. Specify the encryption scheme.3394 //3395 // Supported encryption schemes:3396 // - 'cenc'3397 // - 'cbcs'3398 Scheme string `protobuf:"bytes,2,opt,name=scheme,proto3" json:"scheme,omitempty"`3399}3400func (x *Encryption_MpegCommonEncryption) Reset() {3401 *x = Encryption_MpegCommonEncryption{}3402 if protoimpl.UnsafeEnabled {3403 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[38]3404 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))3405 ms.StoreMessageInfo(mi)3406 }3407}3408func (x *Encryption_MpegCommonEncryption) String() string {3409 return protoimpl.X.MessageStringOf(x)3410}3411func (*Encryption_MpegCommonEncryption) ProtoMessage() {}3412func (x *Encryption_MpegCommonEncryption) ProtoReflect() protoreflect.Message {3413 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[38]3414 if protoimpl.UnsafeEnabled && x != nil {3415 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))3416 if ms.LoadMessageInfo() == nil {3417 ms.StoreMessageInfo(mi)3418 }3419 return ms3420 }3421 return mi.MessageOf(x)3422}3423// Deprecated: Use Encryption_MpegCommonEncryption.ProtoReflect.Descriptor instead.3424func (*Encryption_MpegCommonEncryption) Descriptor() ([]byte, []int) {3425 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{18, 2}3426}3427func (x *Encryption_MpegCommonEncryption) GetKeyId() string {3428 if x != nil {3429 return x.KeyId3430 }3431 return ""3432}3433func (x *Encryption_MpegCommonEncryption) GetScheme() string {3434 if x != nil {3435 return x.Scheme3436 }3437 return ""3438}3439var File_google_cloud_video_transcoder_v1_resources_proto protoreflect.FileDescriptor3440var file_google_cloud_video_transcoder_v1_resources_proto_rawDesc = []byte{3441 0x0a, 0x30, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76,3442 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2f,3443 0x76, 0x31, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f,3444 0x74, 0x6f, 0x12, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,3445 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65,3446 0x72, 0x2e, 0x76, 0x31, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,3447 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e,3448 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70,3449 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,3450 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,3451 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,3452 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,3453 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74,3454 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x72, 0x70, 0x63, 0x2f, 0x73, 0x74,3455 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x98, 0x06, 0x0a, 0x03, 0x4a,3456 0x6f, 0x62, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,3457 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f,3458 0x75, 0x72, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x04, 0x52, 0x08,3459 0x69, 0x6e, 0x70, 0x75, 0x74, 0x55, 0x72, 0x69, 0x12, 0x22, 0x0a, 0x0a, 0x6f, 0x75, 0x74, 0x70,3460 0x75, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,3461 0x04, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x55, 0x72, 0x69, 0x12, 0x26, 0x0a, 0x0b,3462 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28,3463 0x09, 0x42, 0x03, 0xe0, 0x41, 0x04, 0x48, 0x00, 0x52, 0x0a, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61,3464 0x74, 0x65, 0x49, 0x64, 0x12, 0x45, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05,3465 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,3466 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63,3467 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4a, 0x6f, 0x62, 0x43, 0x6f, 0x6e, 0x66, 0x69,3468 0x67, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x50, 0x0a, 0x05, 0x73,3469 0x74, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f,3470 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e,3471 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4a, 0x6f,3472 0x62, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74,3473 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x40, 0x0a,3474 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01,3475 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,3476 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03,3477 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12,3478 0x3e, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0d, 0x20,3479 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,3480 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42,3481 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12,3482 0x3a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28,3483 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,3484 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0,3485 0x41, 0x03, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x19, 0x74,3486 0x74, 0x6c, 0x5f, 0x61, 0x66, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74,3487 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x79, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x16,3488 0x74, 0x74, 0x6c, 0x41, 0x66, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69,3489 0x6f, 0x6e, 0x44, 0x61, 0x79, 0x73, 0x12, 0x2d, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18,3490 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72,3491 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05,3492 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x68, 0x0a, 0x0f, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73,3493 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x50, 0x52, 0x4f, 0x43,3494 0x45, 0x53, 0x53, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53,3495 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45,3496 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x55, 0x4e, 0x4e, 0x49,3497 0x4e, 0x47, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x55, 0x43, 0x43, 0x45, 0x45, 0x44, 0x45,3498 0x44, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x04, 0x3a,3499 0x56, 0xea, 0x41, 0x53, 0x0a, 0x1d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72,3500 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,3501 0x4a, 0x6f, 0x62, 0x12, 0x32, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70,3502 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,3503 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x6a, 0x6f, 0x62,3504 0x73, 0x2f, 0x7b, 0x6a, 0x6f, 0x62, 0x7d, 0x42, 0x0c, 0x0a, 0x0a, 0x6a, 0x6f, 0x62, 0x5f, 0x63,3505 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xd7, 0x01, 0x0a, 0x0b, 0x4a, 0x6f, 0x62, 0x54, 0x65, 0x6d,3506 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,3507 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x63, 0x6f, 0x6e,3508 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67,3509 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74,3510 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4a, 0x6f, 0x62,3511 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, 0x6f,3512 0xea, 0x41, 0x6c, 0x0a, 0x25, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e,3513 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4a,3514 0x6f, 0x62, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x43, 0x70, 0x72, 0x6f, 0x6a,3515 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c,3516 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,3517 0x6f, 0x6e, 0x7d, 0x2f, 0x6a, 0x6f, 0x62, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73,3518 0x2f, 0x7b, 0x6a, 0x6f, 0x62, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x7d, 0x22,3519 0x99, 0x06, 0x0a, 0x09, 0x4a, 0x6f, 0x62, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3f, 0x0a,3520 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e,3521 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64,3522 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31,3523 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x47,3524 0x0a, 0x09, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28,3525 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,3526 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65,3527 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x64, 0x69, 0x74, 0x41, 0x74, 0x6f, 0x6d, 0x52, 0x08, 0x65,3528 0x64, 0x69, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x61, 0x0a, 0x12, 0x65, 0x6c, 0x65, 0x6d, 0x65,3529 0x6e, 0x74, 0x61, 0x72, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20,3530 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,3531 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f,3532 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72,3533 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x11, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74,3534 0x61, 0x72, 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x4c, 0x0a, 0x0b, 0x6d, 0x75,3535 0x78, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32,3536 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,3537 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e,3538 0x76, 0x31, 0x2e, 0x4d, 0x75, 0x78, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x0a, 0x6d, 0x75,3539 0x78, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x48, 0x0a, 0x09, 0x6d, 0x61, 0x6e, 0x69,3540 0x66, 0x65, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f,3541 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f,3542 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4d,3543 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x52, 0x09, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73,3544 0x74, 0x73, 0x12, 0x40, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01,3545 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,3546 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64,3547 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x06, 0x6f, 0x75,3548 0x74, 0x70, 0x75, 0x74, 0x12, 0x46, 0x0a, 0x09, 0x61, 0x64, 0x5f, 0x62, 0x72, 0x65, 0x61, 0x6b,3549 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,3550 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61,3551 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x42, 0x72, 0x65,3552 0x61, 0x6b, 0x52, 0x08, 0x61, 0x64, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x73, 0x12, 0x62, 0x0a, 0x12,3553 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,3554 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,3555 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72,3556 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x75, 0x62, 0x73,3557 0x75, 0x62, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x70,3558 0x75, 0x62, 0x73, 0x75, 0x62, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,3559 0x12, 0x52, 0x0a, 0x0d, 0x73, 0x70, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x73, 0x68, 0x65, 0x65, 0x74,3560 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,3561 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61,3562 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x70, 0x72, 0x69, 0x74,3563 0x65, 0x53, 0x68, 0x65, 0x65, 0x74, 0x52, 0x0c, 0x73, 0x70, 0x72, 0x69, 0x74, 0x65, 0x53, 0x68,3564 0x65, 0x65, 0x74, 0x73, 0x12, 0x45, 0x0a, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x73,3565 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,3566 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e,3567 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61,3568 0x79, 0x52, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x73, 0x22, 0x95, 0x01, 0x0a, 0x05,3569 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,3570 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x02,3571 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x12, 0x68, 0x0a, 0x14, 0x70, 0x72, 0x65,3572 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,3573 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,3574 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61,3575 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x72,3576 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x13,3577 0x70, 0x72, 0x65, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e,3578 0x66, 0x69, 0x67, 0x22, 0x1a, 0x0a, 0x06, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x10, 0x0a,3579 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x22,3580 0xbe, 0x01, 0x0a, 0x08, 0x45, 0x64, 0x69, 0x74, 0x41, 0x74, 0x6f, 0x6d, 0x12, 0x10, 0x0a, 0x03,3581 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x16,3582 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06,3583 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x41, 0x0a, 0x0f, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69,3584 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,3585 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,3586 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x65, 0x6e, 0x64, 0x54,3587 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x45, 0x0a, 0x11, 0x73, 0x74, 0x61,3588 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x04,3589 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,3590 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,3591 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74,3592 0x22, 0x50, 0x0a, 0x07, 0x41, 0x64, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x45, 0x0a, 0x11, 0x73,3593 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74,3594 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,3595 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,3596 0x6e, 0x52, 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73,3597 0x65, 0x74, 0x22, 0xb2, 0x02, 0x0a, 0x10, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72,3598 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x04,3599 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x52, 0x0a, 0x0c, 0x76, 0x69, 0x64,3600 0x65, 0x6f, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,3601 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,3602 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e,3603 0x76, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x48, 0x00,3604 0x52, 0x0b, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x52, 0x0a,3605 0x0c, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20,3606 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,3607 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f,3608 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x74, 0x72, 0x65,3609 0x61, 0x6d, 0x48, 0x00, 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61,3610 0x6d, 0x12, 0x4f, 0x0a, 0x0b, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d,3611 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,3612 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e,3613 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x53, 0x74,3614 0x72, 0x65, 0x61, 0x6d, 0x48, 0x00, 0x52, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x53, 0x74, 0x72, 0x65,3615 0x61, 0x6d, 0x42, 0x13, 0x0a, 0x11, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 0x79,3616 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x22, 0xb3, 0x02, 0x0a, 0x09, 0x4d, 0x75, 0x78, 0x53,3617 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,3618 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f,3619 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65,3620 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,3621 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e,3622 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x12, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 0x79,3623 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11,3624 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,3625 0x73, 0x12, 0x5c, 0x0a, 0x10, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x74,3626 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f,3627 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f,3628 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x53,3629 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x0f,3630 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12,3631 0x4c, 0x0a, 0x0a, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20,3632 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,3633 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f,3634 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f,3635 0x6e, 0x52, 0x0a, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xe1, 0x01,3636 0x0a, 0x08, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69,3637 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66,3638 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x50, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18,3639 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,3640 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73,3641 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73,3642 0x74, 0x2e, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03,3643 0xe0, 0x41, 0x02, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x0b, 0x6d, 0x75, 0x78,3644 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03,3645 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x6d, 0x75, 0x78, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x22,3646 0x40, 0x0a, 0x0c, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12,3647 0x1d, 0x0a, 0x19, 0x4d, 0x41, 0x4e, 0x49, 0x46, 0x45, 0x53, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45,3648 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x07,3649 0x0a, 0x03, 0x48, 0x4c, 0x53, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x41, 0x53, 0x48, 0x10,3650 0x02, 0x22, 0x29, 0x0a, 0x11, 0x50, 0x75, 0x62, 0x73, 0x75, 0x62, 0x44, 0x65, 0x73, 0x74, 0x69,3651 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18,3652 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x22, 0x8e, 0x04, 0x0a,3653 0x0b, 0x53, 0x70, 0x72, 0x69, 0x74, 0x65, 0x53, 0x68, 0x65, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06,3654 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x6f,3655 0x72, 0x6d, 0x61, 0x74, 0x12, 0x24, 0x0a, 0x0b, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x65,3656 0x66, 0x69, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a,3657 0x66, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x33, 0x0a, 0x13, 0x73, 0x70,3658 0x72, 0x69, 0x74, 0x65, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c,3659 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x11, 0x73, 0x70,3660 0x72, 0x69, 0x74, 0x65, 0x57, 0x69, 0x64, 0x74, 0x68, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12,3661 0x35, 0x0a, 0x14, 0x73, 0x70, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74,3662 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0,3663 0x41, 0x02, 0x52, 0x12, 0x73, 0x70, 0x72, 0x69, 0x74, 0x65, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74,3664 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e,3665 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f,3666 0x6c, 0x75, 0x6d, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x77,3667 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x6f,3668 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x45, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f,3669 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28,3670 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,3671 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x73, 0x74,3672 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x41, 0x0a,3673 0x0f, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74,3674 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,3675 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,3676 0x6e, 0x52, 0x0d, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74,3677 0x12, 0x21, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,3678 0x09, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f,3679 0x75, 0x6e, 0x74, 0x12, 0x37, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18,3680 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,3681 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,3682 0x48, 0x00, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x18, 0x0a, 0x07,3683 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x71,3684 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x42, 0x15, 0x0a, 0x13, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63,3685 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x22, 0xbf, 0x0a,3686 0x0a, 0x07, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x12, 0x45, 0x0a, 0x05, 0x69, 0x6d, 0x61,3687 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,3688 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72,3689 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72,3690 0x6c, 0x61, 0x79, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65,3691 0x12, 0x53, 0x0a, 0x0a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02,3692 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,3693 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63,3694 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e,3695 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x61, 0x6e, 0x69, 0x6d, 0x61,3696 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x32, 0x0a, 0x14, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69,3697 0x7a, 0x65, 0x64, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x12, 0x0c, 0x0a,3698 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79,3699 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x01, 0x79, 0x1a, 0x94, 0x01, 0x0a, 0x05, 0x49, 0x6d,3700 0x61, 0x67, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,3701 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x03, 0x75, 0x72, 0x69, 0x12, 0x5e, 0x0a, 0x0a, 0x72, 0x65,3702 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e,3703 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,3704 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76,3705 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c,3706 0x69, 0x7a, 0x65, 0x64, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x52, 0x0a,3707 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c,3708 0x70, 0x68, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x61, 0x6c, 0x70, 0x68, 0x61,3709 0x1a, 0xa8, 0x01, 0x0a, 0x0f, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74,3710 0x61, 0x74, 0x69, 0x63, 0x12, 0x4e, 0x0a, 0x02, 0x78, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,3711 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,3712 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72,3713 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 0x4e, 0x6f, 0x72, 0x6d,3714 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65,3715 0x52, 0x02, 0x78, 0x79, 0x12, 0x45, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69,3716 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,3717 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,3718 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x73, 0x74, 0x61, 0x72,3719 0x74, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x1a, 0xbf, 0x02, 0x0a, 0x0d,3720 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x61, 0x64, 0x65, 0x12, 0x54, 0x0a,3721 0x09, 0x66, 0x61, 0x64, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,3722 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,3723 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72,3724 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 0x46, 0x61, 0x64, 0x65,3725 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x66, 0x61, 0x64, 0x65, 0x54,3726 0x79, 0x70, 0x65, 0x12, 0x4e, 0x0a, 0x02, 0x78, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,3727 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,3728 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e,3729 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 0x4e, 0x6f, 0x72, 0x6d, 0x61,3730 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x52,3731 0x02, 0x78, 0x79, 0x12, 0x45, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d,3732 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19,3733 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,3734 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74,3735 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x41, 0x0a, 0x0f, 0x65, 0x6e,3736 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x04, 0x20,3737 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,3738 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d,3739 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x1a, 0x55, 0x0a,3740 0x0c, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x12, 0x45, 0x0a,3741 0x11, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73,3742 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,3743 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74,3744 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66,3745 0x66, 0x73, 0x65, 0x74, 0x1a, 0xc6, 0x02, 0x0a, 0x09, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69,3746 0x6f, 0x6e, 0x12, 0x66, 0x0a, 0x10, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,3747 0x73, 0x74, 0x61, 0x74, 0x69, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67,3748 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65,3749 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e,3750 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f,3751 0x6e, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x48, 0x00, 0x52, 0x0f, 0x61, 0x6e, 0x69, 0x6d, 0x61,3752 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x12, 0x60, 0x0a, 0x0e, 0x61, 0x6e,3753 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x61, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01,3754 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,3755 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64,3756 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 0x41, 0x6e,3757 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x61, 0x64, 0x65, 0x48, 0x00, 0x52, 0x0d, 0x61,3758 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x61, 0x64, 0x65, 0x12, 0x5d, 0x0a, 0x0d,3759 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x03, 0x20,3760 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,3761 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f,3762 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 0x41,3763 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x0c, 0x61,3764 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x42, 0x10, 0x0a, 0x0e, 0x61,3765 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x40, 0x0a,3766 0x08, 0x46, 0x61, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x46, 0x41, 0x44,3767 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,3768 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x46, 0x41, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x10,3769 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x41, 0x44, 0x45, 0x5f, 0x4f, 0x55, 0x54, 0x10, 0x02, 0x22,3770 0xe5, 0x08, 0x0a, 0x13, 0x50, 0x72, 0x65, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e,3771 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x51, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72,3772 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,3773 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e,3774 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x72, 0x6f,3775 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x6f,3776 0x6c, 0x6f, 0x72, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x57, 0x0a, 0x07, 0x64, 0x65,3777 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f,3778 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f,3779 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x50,3780 0x72, 0x65, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66,3781 0x69, 0x67, 0x2e, 0x44, 0x65, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x52, 0x07, 0x64, 0x65, 0x6e, 0x6f,3782 0x69, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x07, 0x64, 0x65, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x03,3783 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,3784 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63,3785 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x72, 0x6f, 0x63, 0x65,3786 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x65, 0x62, 0x6c,3787 0x6f, 0x63, 0x6b, 0x52, 0x07, 0x64, 0x65, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x51, 0x0a, 0x05,3788 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f,3789 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f,3790 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x50,3791 0x72, 0x65, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66,3792 0x69, 0x67, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x52, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x12,3793 0x4e, 0x0a, 0x04, 0x63, 0x72, 0x6f, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e,3794 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64,3795 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31,3796 0x2e, 0x50, 0x72, 0x65, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f,3797 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x72, 0x6f, 0x70, 0x52, 0x04, 0x63, 0x72, 0x6f, 0x70, 0x12,3798 0x4b, 0x0a, 0x03, 0x70, 0x61, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67,3799 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65,3800 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e,3801 0x50, 0x72, 0x65, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e,3802 0x66, 0x69, 0x67, 0x2e, 0x50, 0x61, 0x64, 0x52, 0x03, 0x70, 0x61, 0x64, 0x1a, 0x63, 0x0a, 0x05,3803 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x61, 0x74, 0x75, 0x72, 0x61, 0x74,3804 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a, 0x73, 0x61, 0x74, 0x75, 0x72,3805 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x73,3806 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x73,3807 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x18,3808 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73,3809 0x73, 0x1a, 0x39, 0x0a, 0x07, 0x44, 0x65, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08,3810 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x08,3811 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x75, 0x6e, 0x65,3812 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x75, 0x6e, 0x65, 0x1a, 0x3f, 0x0a, 0x07,3813 0x44, 0x65, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x65, 0x6e,3814 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x08, 0x73, 0x74, 0x72, 0x65, 0x6e,3815 0x67, 0x74, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02,3816 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x1a, 0x57, 0x0a,3817 0x05, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x75, 0x66, 0x73, 0x18, 0x01,3818 0x20, 0x01, 0x28, 0x01, 0x52, 0x04, 0x6c, 0x75, 0x66, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x69,3819 0x67, 0x68, 0x5f, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,3820 0x68, 0x69, 0x67, 0x68, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x77,3821 0x5f, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6c, 0x6f,3822 0x77, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x1a, 0x8e, 0x01, 0x0a, 0x04, 0x43, 0x72, 0x6f, 0x70, 0x12,3823 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20,3824 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x23,3825 0x0a, 0x0d, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18,3826 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x50, 0x69, 0x78,3827 0x65, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x70, 0x69, 0x78, 0x65,3828 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6c, 0x65, 0x66, 0x74, 0x50, 0x69,3829 0x78, 0x65, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x70, 0x69,3830 0x78, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x69, 0x67, 0x68,3831 0x74, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x1a, 0x8d, 0x01, 0x0a, 0x03, 0x50, 0x61, 0x64, 0x12,3832 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20,3833 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x23,3834 0x0a, 0x0d, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18,3835 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x50, 0x69, 0x78,3836 0x65, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x70, 0x69, 0x78, 0x65,3837 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6c, 0x65, 0x66, 0x74, 0x50, 0x69,3838 0x78, 0x65, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x70, 0x69,3839 0x78, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x69, 0x67, 0x68,3840 0x74, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x22, 0x89, 0x11, 0x0a, 0x0b, 0x56, 0x69, 0x64, 0x65,3841 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x55, 0x0a, 0x04, 0x68, 0x32, 0x36, 0x34, 0x18,3842 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,3843 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73,3844 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x74,3845 0x72, 0x65, 0x61, 0x6d, 0x2e, 0x48, 0x32, 0x36, 0x34, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x53, 0x65,3846 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x48, 0x00, 0x52, 0x04, 0x68, 0x32, 0x36, 0x34, 0x12, 0x55,3847 0x0a, 0x04, 0x68, 0x32, 0x36, 0x35, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67,3848 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65,3849 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e,3850 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x2e, 0x48, 0x32, 0x36, 0x35,3851 0x43, 0x6f, 0x64, 0x65, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x48, 0x00, 0x52,3852 0x04, 0x68, 0x32, 0x36, 0x35, 0x12, 0x52, 0x0a, 0x03, 0x76, 0x70, 0x39, 0x18, 0x03, 0x20, 0x01,3853 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,3854 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64,3855 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61,3856 0x6d, 0x2e, 0x56, 0x70, 0x39, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e,3857 0x67, 0x73, 0x48, 0x00, 0x52, 0x03, 0x76, 0x70, 0x39, 0x1a, 0xf2, 0x05, 0x0a, 0x11, 0x48, 0x32,3858 0x36, 0x34, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12,3859 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18,3860 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x77, 0x69, 0x64, 0x74, 0x68, 0x50, 0x69, 0x78, 0x65,3861 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x70, 0x69, 0x78,3862 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x68, 0x65, 0x69, 0x67, 0x68,3863 0x74, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x66, 0x72, 0x61, 0x6d, 0x65,3864 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x02,3865 0x52, 0x09, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0b, 0x62,3866 0x69, 0x74, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x70, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05,3867 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x62, 0x69, 0x74, 0x72, 0x61, 0x74, 0x65, 0x42, 0x70,3868 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61,3869 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x46, 0x6f,3870 0x72, 0x6d, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e,3871 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52,3872 0x0f, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x4d, 0x6f, 0x64, 0x65,3873 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x72, 0x66, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x07, 0x20,3874 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x72, 0x66, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x24, 0x0a,3875 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x67, 0x6f, 0x70, 0x18,3876 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4f, 0x70, 0x65, 0x6e,3877 0x47, 0x6f, 0x70, 0x12, 0x28, 0x0a, 0x0f, 0x67, 0x6f, 0x70, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65,3878 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0d,3879 0x67, 0x6f, 0x70, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3e, 0x0a,3880 0x0c, 0x67, 0x6f, 0x70, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20,3881 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,3882 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00,3883 0x52, 0x0b, 0x67, 0x6f, 0x70, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a,3884 0x0f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x77, 0x6f, 0x5f, 0x70, 0x61, 0x73, 0x73,3885 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x77,3886 0x6f, 0x50, 0x61, 0x73, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x76, 0x62, 0x76, 0x5f, 0x73, 0x69, 0x7a,3887 0x65, 0x5f, 0x62, 0x69, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x76, 0x62,3888 0x76, 0x53, 0x69, 0x7a, 0x65, 0x42, 0x69, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x76, 0x62, 0x76,3889 0x5f, 0x66, 0x75, 0x6c, 0x6c, 0x6e, 0x65, 0x73, 0x73, 0x5f, 0x62, 0x69, 0x74, 0x73, 0x18, 0x0d,3890 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x76, 0x62, 0x76, 0x46, 0x75, 0x6c, 0x6c, 0x6e, 0x65, 0x73,3891 0x73, 0x42, 0x69, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79,3892 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x6e,3893 0x74, 0x72, 0x6f, 0x70, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x5f,3894 0x70, 0x79, 0x72, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x62,3895 0x50, 0x79, 0x72, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x5f, 0x66, 0x72, 0x61,3896 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b,3897 0x62, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x61,3898 0x71, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x11, 0x20, 0x01, 0x28, 0x01,3899 0x52, 0x0a, 0x61, 0x71, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x18, 0x0a, 0x07,3900 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70,3901 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x75, 0x6e, 0x65, 0x18, 0x13,3902 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x75, 0x6e, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72,3903 0x65, 0x73, 0x65, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x73,3904 0x65, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x67, 0x6f, 0x70, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x1a, 0xcd,3905 0x05, 0x0a, 0x11, 0x48, 0x32, 0x36, 0x35, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x53, 0x65, 0x74, 0x74,3906 0x69, 0x6e, 0x67, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x70, 0x69,3907 0x78, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x77, 0x69, 0x64, 0x74,3908 0x68, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x68, 0x65, 0x69, 0x67, 0x68,3909 0x74, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c,3910 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x22, 0x0a, 0x0a,3911 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01,3912 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x61, 0x74, 0x65,3913 0x12, 0x24, 0x0a, 0x0b, 0x62, 0x69, 0x74, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x70, 0x73, 0x18,3914 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x62, 0x69, 0x74, 0x72,3915 0x61, 0x74, 0x65, 0x42, 0x70, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x5f,3916 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x69,3917 0x78, 0x65, 0x6c, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x61, 0x74,3918 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x06,3919 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f,3920 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x72, 0x66, 0x5f, 0x6c, 0x65, 0x76,3921 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x72, 0x66, 0x4c, 0x65, 0x76,3922 0x65, 0x6c, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6f, 0x70, 0x65, 0x6e,3923 0x5f, 0x67, 0x6f, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f,3924 0x77, 0x4f, 0x70, 0x65, 0x6e, 0x47, 0x6f, 0x70, 0x12, 0x28, 0x0a, 0x0f, 0x67, 0x6f, 0x70, 0x5f,3925 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28,3926 0x05, 0x48, 0x00, 0x52, 0x0d, 0x67, 0x6f, 0x70, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x75,3927 0x6e, 0x74, 0x12, 0x3e, 0x0a, 0x0c, 0x67, 0x6f, 0x70, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69,3928 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,3929 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74,3930 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0b, 0x67, 0x6f, 0x70, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69,3931 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x77, 0x6f,3932 0x5f, 0x70, 0x61, 0x73, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x65, 0x6e, 0x61,3933 0x62, 0x6c, 0x65, 0x54, 0x77, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x76, 0x62,3934 0x76, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x69, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28,3935 0x05, 0x52, 0x0b, 0x76, 0x62, 0x76, 0x53, 0x69, 0x7a, 0x65, 0x42, 0x69, 0x74, 0x73, 0x12, 0x2a,3936 0x0a, 0x11, 0x76, 0x62, 0x76, 0x5f, 0x66, 0x75, 0x6c, 0x6c, 0x6e, 0x65, 0x73, 0x73, 0x5f, 0x62,3937 0x69, 0x74, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x76, 0x62, 0x76, 0x46, 0x75,3938 0x6c, 0x6c, 0x6e, 0x65, 0x73, 0x73, 0x42, 0x69, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x5f,3939 0x70, 0x79, 0x72, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x62,3940 0x50, 0x79, 0x72, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x5f, 0x66, 0x72, 0x61,3941 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b,3942 0x62, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x61,3943 0x71, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x10, 0x20, 0x01, 0x28, 0x01,3944 0x52, 0x0a, 0x61, 0x71, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x18, 0x0a, 0x07,3945 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70,3946 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x75, 0x6e, 0x65, 0x18, 0x12,3947 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x75, 0x6e, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72,3948 0x65, 0x73, 0x65, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x73,3949 0x65, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x67, 0x6f, 0x70, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x1a, 0xa0,3950 0x03, 0x0a, 0x10, 0x56, 0x70, 0x39, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69,3951 0x6e, 0x67, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x70, 0x69, 0x78,3952 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x77, 0x69, 0x64, 0x74, 0x68,3953 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74,3954 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x68,3955 0x65, 0x69, 0x67, 0x68, 0x74, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x66,3956 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x42,3957 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x61, 0x74, 0x65, 0x12,3958 0x24, 0x0a, 0x0b, 0x62, 0x69, 0x74, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x70, 0x73, 0x18, 0x04,3959 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x62, 0x69, 0x74, 0x72, 0x61,3960 0x74, 0x65, 0x42, 0x70, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x5f, 0x66,3961 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x69, 0x78,3962 0x65, 0x6c, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x61, 0x74, 0x65,3963 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20,3964 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c,3965 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x72, 0x66, 0x5f, 0x6c, 0x65, 0x76, 0x65,3966 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x72, 0x66, 0x4c, 0x65, 0x76, 0x65,3967 0x6c, 0x12, 0x28, 0x0a, 0x0f, 0x67, 0x6f, 0x70, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x63,3968 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0d, 0x67, 0x6f,3969 0x70, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3e, 0x0a, 0x0c, 0x67,3970 0x6f, 0x70, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28,3971 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,3972 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0b,3973 0x67, 0x6f, 0x70, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x70,3974 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72,3975 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x67, 0x6f, 0x70, 0x5f, 0x6d, 0x6f, 0x64,3976 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69,3977 0x6e, 0x67, 0x73, 0x22, 0xff, 0x03, 0x0a, 0x0b, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x74, 0x72,3978 0x65, 0x61, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01,3979 0x28, 0x09, 0x52, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x12, 0x24, 0x0a, 0x0b, 0x62, 0x69, 0x74,3980 0x72, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x70, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03,3981 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x62, 0x69, 0x74, 0x72, 0x61, 0x74, 0x65, 0x42, 0x70, 0x73, 0x12,3982 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74,3983 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43,3984 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,3985 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x68,3986 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x54, 0x0a, 0x07, 0x6d,3987 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67,3988 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65,3989 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e,3990 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x2e, 0x41, 0x75, 0x64, 0x69,3991 0x6f, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e,3992 0x67, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65,3993 0x5f, 0x68, 0x65, 0x72, 0x74, 0x7a, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, 0x61,3994 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x61, 0x74, 0x65, 0x48, 0x65, 0x72, 0x74, 0x7a, 0x1a, 0xe5, 0x01,3995 0x0a, 0x0c, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x1e,3996 0x0a, 0x08, 0x61, 0x74, 0x6f, 0x6d, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,3997 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x61, 0x74, 0x6f, 0x6d, 0x4b, 0x65, 0x79, 0x12, 0x20,3998 0x0a, 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28,3999 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x4b, 0x65, 0x79,4000 0x12, 0x24, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x18,4001 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x69, 0x6e, 0x70, 0x75,4002 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x12, 0x28, 0x0a, 0x0d, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f,4003 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0,4004 0x41, 0x02, 0x52, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,4005 0x12, 0x2a, 0x0a, 0x0e, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,4006 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d, 0x6f,4007 0x75, 0x74, 0x70, 0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x17, 0x0a, 0x07,4008 0x67, 0x61, 0x69, 0x6e, 0x5f, 0x64, 0x62, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x52, 0x06, 0x67,4009 0x61, 0x69, 0x6e, 0x44, 0x62, 0x22, 0xed, 0x01, 0x0a, 0x0a, 0x54, 0x65, 0x78, 0x74, 0x53, 0x74,4010 0x72, 0x65, 0x61, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x18, 0x01, 0x20,4011 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x12, 0x52, 0x0a, 0x07, 0x6d, 0x61,4012 0x70, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f,4013 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f,4014 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x54,4015 0x65, 0x78, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x61,4016 0x70, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x1a, 0x75,4017 0x0a, 0x0b, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x1e, 0x0a,4018 0x08, 0x61, 0x74, 0x6f, 0x6d, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,4019 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x61, 0x74, 0x6f, 0x6d, 0x4b, 0x65, 0x79, 0x12, 0x20, 0x0a,4020 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,4021 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x4b, 0x65, 0x79, 0x12,4022 0x24, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x18, 0x03,4023 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x69, 0x6e, 0x70, 0x75, 0x74,4024 0x54, 0x72, 0x61, 0x63, 0x6b, 0x22, 0x8d, 0x01, 0x0a, 0x0f, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e,4025 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x44, 0x0a, 0x10, 0x73, 0x65, 0x67,4026 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20,4027 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,4028 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f,4029 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,4030 0x34, 0x0a, 0x13, 0x69, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x5f, 0x73, 0x65,4031 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41,4032 0x02, 0x52, 0x12, 0x69, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x53, 0x65, 0x67,4033 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0xa2, 0x04, 0x0a, 0x0a, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70,4034 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x15, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,4035 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x13, 0x0a, 0x02, 0x69,4036 0x76, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x76,4037 0x12, 0x58, 0x0a, 0x07, 0x61, 0x65, 0x73, 0x5f, 0x31, 0x32, 0x38, 0x18, 0x03, 0x20, 0x01, 0x28,4038 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,4039 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65,4040 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e,4041 0x41, 0x65, 0x73, 0x31, 0x32, 0x38, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e,4042 0x48, 0x00, 0x52, 0x06, 0x61, 0x65, 0x73, 0x31, 0x32, 0x38, 0x12, 0x61, 0x0a, 0x0a, 0x73, 0x61,4043 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x61, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x40,4044 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,4045 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76,4046 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x61, 0x6d,4047 0x70, 0x6c, 0x65, 0x41, 0x65, 0x73, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e,4048 0x48, 0x00, 0x52, 0x09, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x41, 0x65, 0x73, 0x12, 0x60, 0x0a,4049 0x09, 0x6d, 0x70, 0x65, 0x67, 0x5f, 0x63, 0x65, 0x6e, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,4050 0x32, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,4051 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72,4052 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4d,4053 0x70, 0x65, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74,4054 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x70, 0x65, 0x67, 0x43, 0x65, 0x6e, 0x63, 0x1a,4055 0x30, 0x0a, 0x10, 0x41, 0x65, 0x73, 0x31, 0x32, 0x38, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74,4056 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01,4057 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x6b, 0x65, 0x79, 0x55, 0x72,4058 0x69, 0x1a, 0x33, 0x0a, 0x13, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x41, 0x65, 0x73, 0x45, 0x6e,4059 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x5f,4060 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06,4061 0x6b, 0x65, 0x79, 0x55, 0x72, 0x69, 0x1a, 0x4f, 0x0a, 0x14, 0x4d, 0x70, 0x65, 0x67, 0x43, 0x6f,4062 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a,4063 0x0a, 0x06, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,4064 0xe0, 0x41, 0x02, 0x52, 0x05, 0x6b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x63,4065 0x68, 0x65, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,4066 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x42, 0x11, 0x0a, 0x0f, 0x65, 0x6e, 0x63, 0x72, 0x79,4067 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x42, 0x84, 0x01, 0x0a, 0x24, 0x63,4068 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,4069 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72,4070 0x2e, 0x76, 0x31, 0x42, 0x0e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x50, 0x72,4071 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f,4072 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74,4073 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, 0x6f,4074 0x75, 0x64, 0x2f, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f,4075 0x64, 0x65, 0x72, 0x2f, 0x76, 0x31, 0x3b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65,4076 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,4077}4078var (4079 file_google_cloud_video_transcoder_v1_resources_proto_rawDescOnce sync.Once4080 file_google_cloud_video_transcoder_v1_resources_proto_rawDescData = file_google_cloud_video_transcoder_v1_resources_proto_rawDesc4081)4082func file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP() []byte {4083 file_google_cloud_video_transcoder_v1_resources_proto_rawDescOnce.Do(func() {4084 file_google_cloud_video_transcoder_v1_resources_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_video_transcoder_v1_resources_proto_rawDescData)4085 })4086 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescData4087}4088var file_google_cloud_video_transcoder_v1_resources_proto_enumTypes = make([]protoimpl.EnumInfo, 3)4089var file_google_cloud_video_transcoder_v1_resources_proto_msgTypes = make([]protoimpl.MessageInfo, 39)4090var file_google_cloud_video_transcoder_v1_resources_proto_goTypes = []interface{}{4091 (Job_ProcessingState)(0), // 0: google.cloud.video.transcoder.v1.Job.ProcessingState4092 (Manifest_ManifestType)(0), // 1: google.cloud.video.transcoder.v1.Manifest.ManifestType4093 (Overlay_FadeType)(0), // 2: google.cloud.video.transcoder.v1.Overlay.FadeType4094 (*Job)(nil), // 3: google.cloud.video.transcoder.v1.Job4095 (*JobTemplate)(nil), // 4: google.cloud.video.transcoder.v1.JobTemplate4096 (*JobConfig)(nil), // 5: google.cloud.video.transcoder.v1.JobConfig4097 (*Input)(nil), // 6: google.cloud.video.transcoder.v1.Input4098 (*Output)(nil), // 7: google.cloud.video.transcoder.v1.Output4099 (*EditAtom)(nil), // 8: google.cloud.video.transcoder.v1.EditAtom4100 (*AdBreak)(nil), // 9: google.cloud.video.transcoder.v1.AdBreak4101 (*ElementaryStream)(nil), // 10: google.cloud.video.transcoder.v1.ElementaryStream4102 (*MuxStream)(nil), // 11: google.cloud.video.transcoder.v1.MuxStream4103 (*Manifest)(nil), // 12: google.cloud.video.transcoder.v1.Manifest4104 (*PubsubDestination)(nil), // 13: google.cloud.video.transcoder.v1.PubsubDestination4105 (*SpriteSheet)(nil), // 14: google.cloud.video.transcoder.v1.SpriteSheet4106 (*Overlay)(nil), // 15: google.cloud.video.transcoder.v1.Overlay4107 (*PreprocessingConfig)(nil), // 16: google.cloud.video.transcoder.v1.PreprocessingConfig4108 (*VideoStream)(nil), // 17: google.cloud.video.transcoder.v1.VideoStream4109 (*AudioStream)(nil), // 18: google.cloud.video.transcoder.v1.AudioStream4110 (*TextStream)(nil), // 19: google.cloud.video.transcoder.v1.TextStream4111 (*SegmentSettings)(nil), // 20: google.cloud.video.transcoder.v1.SegmentSettings4112 (*Encryption)(nil), // 21: google.cloud.video.transcoder.v1.Encryption4113 (*Overlay_NormalizedCoordinate)(nil), // 22: google.cloud.video.transcoder.v1.Overlay.NormalizedCoordinate4114 (*Overlay_Image)(nil), // 23: google.cloud.video.transcoder.v1.Overlay.Image4115 (*Overlay_AnimationStatic)(nil), // 24: google.cloud.video.transcoder.v1.Overlay.AnimationStatic4116 (*Overlay_AnimationFade)(nil), // 25: google.cloud.video.transcoder.v1.Overlay.AnimationFade4117 (*Overlay_AnimationEnd)(nil), // 26: google.cloud.video.transcoder.v1.Overlay.AnimationEnd4118 (*Overlay_Animation)(nil), // 27: google.cloud.video.transcoder.v1.Overlay.Animation4119 (*PreprocessingConfig_Color)(nil), // 28: google.cloud.video.transcoder.v1.PreprocessingConfig.Color4120 (*PreprocessingConfig_Denoise)(nil), // 29: google.cloud.video.transcoder.v1.PreprocessingConfig.Denoise4121 (*PreprocessingConfig_Deblock)(nil), // 30: google.cloud.video.transcoder.v1.PreprocessingConfig.Deblock4122 (*PreprocessingConfig_Audio)(nil), // 31: google.cloud.video.transcoder.v1.PreprocessingConfig.Audio4123 (*PreprocessingConfig_Crop)(nil), // 32: google.cloud.video.transcoder.v1.PreprocessingConfig.Crop4124 (*PreprocessingConfig_Pad)(nil), // 33: google.cloud.video.transcoder.v1.PreprocessingConfig.Pad4125 (*VideoStream_H264CodecSettings)(nil), // 34: google.cloud.video.transcoder.v1.VideoStream.H264CodecSettings4126 (*VideoStream_H265CodecSettings)(nil), // 35: google.cloud.video.transcoder.v1.VideoStream.H265CodecSettings4127 (*VideoStream_Vp9CodecSettings)(nil), // 36: google.cloud.video.transcoder.v1.VideoStream.Vp9CodecSettings4128 (*AudioStream_AudioMapping)(nil), // 37: google.cloud.video.transcoder.v1.AudioStream.AudioMapping4129 (*TextStream_TextMapping)(nil), // 38: google.cloud.video.transcoder.v1.TextStream.TextMapping4130 (*Encryption_Aes128Encryption)(nil), // 39: google.cloud.video.transcoder.v1.Encryption.Aes128Encryption4131 (*Encryption_SampleAesEncryption)(nil), // 40: google.cloud.video.transcoder.v1.Encryption.SampleAesEncryption4132 (*Encryption_MpegCommonEncryption)(nil), // 41: google.cloud.video.transcoder.v1.Encryption.MpegCommonEncryption4133 (*timestamppb.Timestamp)(nil), // 42: google.protobuf.Timestamp4134 (*status.Status)(nil), // 43: google.rpc.Status4135 (*durationpb.Duration)(nil), // 44: google.protobuf.Duration4136}4137var file_google_cloud_video_transcoder_v1_resources_proto_depIdxs = []int32{4138 5, // 0: google.cloud.video.transcoder.v1.Job.config:type_name -> google.cloud.video.transcoder.v1.JobConfig4139 0, // 1: google.cloud.video.transcoder.v1.Job.state:type_name -> google.cloud.video.transcoder.v1.Job.ProcessingState4140 42, // 2: google.cloud.video.transcoder.v1.Job.create_time:type_name -> google.protobuf.Timestamp4141 42, // 3: google.cloud.video.transcoder.v1.Job.start_time:type_name -> google.protobuf.Timestamp4142 42, // 4: google.cloud.video.transcoder.v1.Job.end_time:type_name -> google.protobuf.Timestamp4143 43, // 5: google.cloud.video.transcoder.v1.Job.error:type_name -> google.rpc.Status4144 5, // 6: google.cloud.video.transcoder.v1.JobTemplate.config:type_name -> google.cloud.video.transcoder.v1.JobConfig4145 6, // 7: google.cloud.video.transcoder.v1.JobConfig.inputs:type_name -> google.cloud.video.transcoder.v1.Input4146 8, // 8: google.cloud.video.transcoder.v1.JobConfig.edit_list:type_name -> google.cloud.video.transcoder.v1.EditAtom4147 10, // 9: google.cloud.video.transcoder.v1.JobConfig.elementary_streams:type_name -> google.cloud.video.transcoder.v1.ElementaryStream4148 11, // 10: google.cloud.video.transcoder.v1.JobConfig.mux_streams:type_name -> google.cloud.video.transcoder.v1.MuxStream4149 12, // 11: google.cloud.video.transcoder.v1.JobConfig.manifests:type_name -> google.cloud.video.transcoder.v1.Manifest4150 7, // 12: google.cloud.video.transcoder.v1.JobConfig.output:type_name -> google.cloud.video.transcoder.v1.Output4151 9, // 13: google.cloud.video.transcoder.v1.JobConfig.ad_breaks:type_name -> google.cloud.video.transcoder.v1.AdBreak4152 13, // 14: google.cloud.video.transcoder.v1.JobConfig.pubsub_destination:type_name -> google.cloud.video.transcoder.v1.PubsubDestination4153 14, // 15: google.cloud.video.transcoder.v1.JobConfig.sprite_sheets:type_name -> google.cloud.video.transcoder.v1.SpriteSheet4154 15, // 16: google.cloud.video.transcoder.v1.JobConfig.overlays:type_name -> google.cloud.video.transcoder.v1.Overlay4155 16, // 17: google.cloud.video.transcoder.v1.Input.preprocessing_config:type_name -> google.cloud.video.transcoder.v1.PreprocessingConfig4156 44, // 18: google.cloud.video.transcoder.v1.EditAtom.end_time_offset:type_name -> google.protobuf.Duration4157 44, // 19: google.cloud.video.transcoder.v1.EditAtom.start_time_offset:type_name -> google.protobuf.Duration4158 44, // 20: google.cloud.video.transcoder.v1.AdBreak.start_time_offset:type_name -> google.protobuf.Duration4159 17, // 21: google.cloud.video.transcoder.v1.ElementaryStream.video_stream:type_name -> google.cloud.video.transcoder.v1.VideoStream4160 18, // 22: google.cloud.video.transcoder.v1.ElementaryStream.audio_stream:type_name -> google.cloud.video.transcoder.v1.AudioStream4161 19, // 23: google.cloud.video.transcoder.v1.ElementaryStream.text_stream:type_name -> google.cloud.video.transcoder.v1.TextStream4162 20, // 24: google.cloud.video.transcoder.v1.MuxStream.segment_settings:type_name -> google.cloud.video.transcoder.v1.SegmentSettings4163 21, // 25: google.cloud.video.transcoder.v1.MuxStream.encryption:type_name -> google.cloud.video.transcoder.v1.Encryption4164 1, // 26: google.cloud.video.transcoder.v1.Manifest.type:type_name -> google.cloud.video.transcoder.v1.Manifest.ManifestType4165 44, // 27: google.cloud.video.transcoder.v1.SpriteSheet.start_time_offset:type_name -> google.protobuf.Duration4166 44, // 28: google.cloud.video.transcoder.v1.SpriteSheet.end_time_offset:type_name -> google.protobuf.Duration4167 44, // 29: google.cloud.video.transcoder.v1.SpriteSheet.interval:type_name -> google.protobuf.Duration4168 23, // 30: google.cloud.video.transcoder.v1.Overlay.image:type_name -> google.cloud.video.transcoder.v1.Overlay.Image4169 27, // 31: google.cloud.video.transcoder.v1.Overlay.animations:type_name -> google.cloud.video.transcoder.v1.Overlay.Animation4170 28, // 32: google.cloud.video.transcoder.v1.PreprocessingConfig.color:type_name -> google.cloud.video.transcoder.v1.PreprocessingConfig.Color4171 29, // 33: google.cloud.video.transcoder.v1.PreprocessingConfig.denoise:type_name -> google.cloud.video.transcoder.v1.PreprocessingConfig.Denoise4172 30, // 34: google.cloud.video.transcoder.v1.PreprocessingConfig.deblock:type_name -> google.cloud.video.transcoder.v1.PreprocessingConfig.Deblock4173 31, // 35: google.cloud.video.transcoder.v1.PreprocessingConfig.audio:type_name -> google.cloud.video.transcoder.v1.PreprocessingConfig.Audio4174 32, // 36: google.cloud.video.transcoder.v1.PreprocessingConfig.crop:type_name -> google.cloud.video.transcoder.v1.PreprocessingConfig.Crop4175 33, // 37: google.cloud.video.transcoder.v1.PreprocessingConfig.pad:type_name -> google.cloud.video.transcoder.v1.PreprocessingConfig.Pad4176 34, // 38: google.cloud.video.transcoder.v1.VideoStream.h264:type_name -> google.cloud.video.transcoder.v1.VideoStream.H264CodecSettings4177 35, // 39: google.cloud.video.transcoder.v1.VideoStream.h265:type_name -> google.cloud.video.transcoder.v1.VideoStream.H265CodecSettings4178 36, // 40: google.cloud.video.transcoder.v1.VideoStream.vp9:type_name -> google.cloud.video.transcoder.v1.VideoStream.Vp9CodecSettings4179 37, // 41: google.cloud.video.transcoder.v1.AudioStream.mapping:type_name -> google.cloud.video.transcoder.v1.AudioStream.AudioMapping4180 38, // 42: google.cloud.video.transcoder.v1.TextStream.mapping:type_name -> google.cloud.video.transcoder.v1.TextStream.TextMapping4181 44, // 43: google.cloud.video.transcoder.v1.SegmentSettings.segment_duration:type_name -> google.protobuf.Duration4182 39, // 44: google.cloud.video.transcoder.v1.Encryption.aes_128:type_name -> google.cloud.video.transcoder.v1.Encryption.Aes128Encryption4183 40, // 45: google.cloud.video.transcoder.v1.Encryption.sample_aes:type_name -> google.cloud.video.transcoder.v1.Encryption.SampleAesEncryption4184 41, // 46: google.cloud.video.transcoder.v1.Encryption.mpeg_cenc:type_name -> google.cloud.video.transcoder.v1.Encryption.MpegCommonEncryption4185 22, // 47: google.cloud.video.transcoder.v1.Overlay.Image.resolution:type_name -> google.cloud.video.transcoder.v1.Overlay.NormalizedCoordinate4186 22, // 48: google.cloud.video.transcoder.v1.Overlay.AnimationStatic.xy:type_name -> google.cloud.video.transcoder.v1.Overlay.NormalizedCoordinate4187 44, // 49: google.cloud.video.transcoder.v1.Overlay.AnimationStatic.start_time_offset:type_name -> google.protobuf.Duration4188 2, // 50: google.cloud.video.transcoder.v1.Overlay.AnimationFade.fade_type:type_name -> google.cloud.video.transcoder.v1.Overlay.FadeType4189 22, // 51: google.cloud.video.transcoder.v1.Overlay.AnimationFade.xy:type_name -> google.cloud.video.transcoder.v1.Overlay.NormalizedCoordinate4190 44, // 52: google.cloud.video.transcoder.v1.Overlay.AnimationFade.start_time_offset:type_name -> google.protobuf.Duration4191 44, // 53: google.cloud.video.transcoder.v1.Overlay.AnimationFade.end_time_offset:type_name -> google.protobuf.Duration4192 44, // 54: google.cloud.video.transcoder.v1.Overlay.AnimationEnd.start_time_offset:type_name -> google.protobuf.Duration4193 24, // 55: google.cloud.video.transcoder.v1.Overlay.Animation.animation_static:type_name -> google.cloud.video.transcoder.v1.Overlay.AnimationStatic4194 25, // 56: google.cloud.video.transcoder.v1.Overlay.Animation.animation_fade:type_name -> google.cloud.video.transcoder.v1.Overlay.AnimationFade4195 26, // 57: google.cloud.video.transcoder.v1.Overlay.Animation.animation_end:type_name -> google.cloud.video.transcoder.v1.Overlay.AnimationEnd4196 44, // 58: google.cloud.video.transcoder.v1.VideoStream.H264CodecSettings.gop_duration:type_name -> google.protobuf.Duration4197 44, // 59: google.cloud.video.transcoder.v1.VideoStream.H265CodecSettings.gop_duration:type_name -> google.protobuf.Duration4198 44, // 60: google.cloud.video.transcoder.v1.VideoStream.Vp9CodecSettings.gop_duration:type_name -> google.protobuf.Duration4199 61, // [61:61] is the sub-list for method output_type4200 61, // [61:61] is the sub-list for method input_type4201 61, // [61:61] is the sub-list for extension type_name4202 61, // [61:61] is the sub-list for extension extendee4203 0, // [0:61] is the sub-list for field type_name4204}4205func init() { file_google_cloud_video_transcoder_v1_resources_proto_init() }4206func file_google_cloud_video_transcoder_v1_resources_proto_init() {4207 if File_google_cloud_video_transcoder_v1_resources_proto != nil {4208 return4209 }4210 if !protoimpl.UnsafeEnabled {4211 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {4212 switch v := v.(*Job); i {4213 case 0:4214 return &v.state4215 case 1:4216 return &v.sizeCache4217 case 2:4218 return &v.unknownFields4219 default:4220 return nil4221 }4222 }4223 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {4224 switch v := v.(*JobTemplate); i {4225 case 0:4226 return &v.state4227 case 1:4228 return &v.sizeCache4229 case 2:4230 return &v.unknownFields4231 default:4232 return nil4233 }4234 }4235 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {4236 switch v := v.(*JobConfig); i {4237 case 0:4238 return &v.state4239 case 1:4240 return &v.sizeCache4241 case 2:4242 return &v.unknownFields4243 default:4244 return nil4245 }4246 }4247 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {4248 switch v := v.(*Input); i {4249 case 0:4250 return &v.state4251 case 1:4252 return &v.sizeCache4253 case 2:4254 return &v.unknownFields4255 default:4256 return nil4257 }4258 }4259 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {4260 switch v := v.(*Output); i {4261 case 0:4262 return &v.state4263 case 1:4264 return &v.sizeCache4265 case 2:4266 return &v.unknownFields4267 default:4268 return nil4269 }4270 }4271 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {4272 switch v := v.(*EditAtom); i {4273 case 0:4274 return &v.state4275 case 1:4276 return &v.sizeCache4277 case 2:4278 return &v.unknownFields4279 default:4280 return nil4281 }4282 }4283 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {4284 switch v := v.(*AdBreak); i {4285 case 0:4286 return &v.state4287 case 1:4288 return &v.sizeCache4289 case 2:4290 return &v.unknownFields4291 default:4292 return nil4293 }4294 }4295 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {4296 switch v := v.(*ElementaryStream); i {4297 case 0:4298 return &v.state4299 case 1:4300 return &v.sizeCache4301 case 2:4302 return &v.unknownFields4303 default:4304 return nil4305 }4306 }4307 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {4308 switch v := v.(*MuxStream); i {4309 case 0:4310 return &v.state4311 case 1:4312 return &v.sizeCache4313 case 2:4314 return &v.unknownFields4315 default:4316 return nil4317 }4318 }4319 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {4320 switch v := v.(*Manifest); i {4321 case 0:4322 return &v.state4323 case 1:4324 return &v.sizeCache4325 case 2:4326 return &v.unknownFields4327 default:4328 return nil4329 }4330 }4331 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {4332 switch v := v.(*PubsubDestination); i {4333 case 0:4334 return &v.state4335 case 1:4336 return &v.sizeCache4337 case 2:4338 return &v.unknownFields4339 default:4340 return nil4341 }4342 }4343 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {4344 switch v := v.(*SpriteSheet); i {4345 case 0:4346 return &v.state4347 case 1:4348 return &v.sizeCache4349 case 2:4350 return &v.unknownFields4351 default:4352 return nil4353 }4354 }4355 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {4356 switch v := v.(*Overlay); i {4357 case 0:4358 return &v.state4359 case 1:4360 return &v.sizeCache4361 case 2:4362 return &v.unknownFields4363 default:4364 return nil4365 }4366 }4367 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {4368 switch v := v.(*PreprocessingConfig); i {4369 case 0:4370 return &v.state4371 case 1:4372 return &v.sizeCache4373 case 2:4374 return &v.unknownFields4375 default:4376 return nil4377 }4378 }4379 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {4380 switch v := v.(*VideoStream); i {4381 case 0:4382 return &v.state4383 case 1:4384 return &v.sizeCache4385 case 2:4386 return &v.unknownFields4387 default:4388 return nil4389 }4390 }4391 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {4392 switch v := v.(*AudioStream); i {4393 case 0:4394 return &v.state4395 case 1:4396 return &v.sizeCache4397 case 2:4398 return &v.unknownFields4399 default:4400 return nil4401 }4402 }4403 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {4404 switch v := v.(*TextStream); i {4405 case 0:4406 return &v.state4407 case 1:4408 return &v.sizeCache4409 case 2:4410 return &v.unknownFields4411 default:4412 return nil4413 }4414 }4415 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {4416 switch v := v.(*SegmentSettings); i {4417 case 0:4418 return &v.state4419 case 1:4420 return &v.sizeCache4421 case 2:4422 return &v.unknownFields4423 default:4424 return nil4425 }4426 }4427 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {4428 switch v := v.(*Encryption); i {4429 case 0:4430 return &v.state4431 case 1:4432 return &v.sizeCache4433 case 2:4434 return &v.unknownFields4435 default:4436 return nil4437 }4438 }4439 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {4440 switch v := v.(*Overlay_NormalizedCoordinate); i {4441 case 0:4442 return &v.state4443 case 1:4444 return &v.sizeCache4445 case 2:4446 return &v.unknownFields4447 default:4448 return nil4449 }4450 }4451 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {4452 switch v := v.(*Overlay_Image); i {4453 case 0:4454 return &v.state4455 case 1:4456 return &v.sizeCache4457 case 2:4458 return &v.unknownFields4459 default:4460 return nil4461 }4462 }4463 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {4464 switch v := v.(*Overlay_AnimationStatic); i {4465 case 0:4466 return &v.state4467 case 1:4468 return &v.sizeCache4469 case 2:4470 return &v.unknownFields4471 default:4472 return nil4473 }4474 }4475 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {4476 switch v := v.(*Overlay_AnimationFade); i {4477 case 0:4478 return &v.state4479 case 1:4480 return &v.sizeCache4481 case 2:4482 return &v.unknownFields4483 default:4484 return nil4485 }4486 }4487 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {4488 switch v := v.(*Overlay_AnimationEnd); i {4489 case 0:4490 return &v.state4491 case 1:4492 return &v.sizeCache4493 case 2:4494 return &v.unknownFields4495 default:4496 return nil4497 }4498 }4499 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {4500 switch v := v.(*Overlay_Animation); i {4501 case 0:4502 return &v.state4503 case 1:4504 return &v.sizeCache4505 case 2:4506 return &v.unknownFields4507 default:4508 return nil4509 }4510 }4511 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {4512 switch v := v.(*PreprocessingConfig_Color); i {4513 case 0:4514 return &v.state4515 case 1:4516 return &v.sizeCache4517 case 2:4518 return &v.unknownFields4519 default:4520 return nil4521 }4522 }4523 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {4524 switch v := v.(*PreprocessingConfig_Denoise); i {4525 case 0:4526 return &v.state4527 case 1:4528 return &v.sizeCache4529 case 2:4530 return &v.unknownFields4531 default:4532 return nil4533 }4534 }4535 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {4536 switch v := v.(*PreprocessingConfig_Deblock); i {4537 case 0:4538 return &v.state4539 case 1:4540 return &v.sizeCache4541 case 2:4542 return &v.unknownFields4543 default:4544 return nil4545 }4546 }4547 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {4548 switch v := v.(*PreprocessingConfig_Audio); i {4549 case 0:4550 return &v.state4551 case 1:4552 return &v.sizeCache4553 case 2:4554 return &v.unknownFields4555 default:4556 return nil4557 }4558 }4559 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {4560 switch v := v.(*PreprocessingConfig_Crop); i {4561 case 0:4562 return &v.state4563 case 1:4564 return &v.sizeCache4565 case 2:4566 return &v.unknownFields4567 default:4568 return nil4569 }4570 }4571 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {4572 switch v := v.(*PreprocessingConfig_Pad); i {4573 case 0:4574 return &v.state4575 case 1:4576 return &v.sizeCache4577 case 2:4578 return &v.unknownFields4579 default:4580 return nil4581 }4582 }4583 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {4584 switch v := v.(*VideoStream_H264CodecSettings); i {4585 case 0:4586 return &v.state4587 case 1:4588 return &v.sizeCache4589 case 2:4590 return &v.unknownFields4591 default:4592 return nil4593 }4594 }4595 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {4596 switch v := v.(*VideoStream_H265CodecSettings); i {4597 case 0:4598 return &v.state4599 case 1:4600 return &v.sizeCache4601 case 2:4602 return &v.unknownFields4603 default:4604 return nil4605 }4606 }4607 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {4608 switch v := v.(*VideoStream_Vp9CodecSettings); i {4609 case 0:4610 return &v.state4611 case 1:4612 return &v.sizeCache4613 case 2:4614 return &v.unknownFields4615 default:4616 return nil4617 }4618 }4619 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {4620 switch v := v.(*AudioStream_AudioMapping); i {4621 case 0:4622 return &v.state4623 case 1:4624 return &v.sizeCache4625 case 2:4626 return &v.unknownFields4627 default:4628 return nil4629 }4630 }4631 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {4632 switch v := v.(*TextStream_TextMapping); i {4633 case 0:4634 return &v.state4635 case 1:4636 return &v.sizeCache4637 case 2:4638 return &v.unknownFields4639 default:4640 return nil4641 }4642 }4643 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {4644 switch v := v.(*Encryption_Aes128Encryption); i {4645 case 0:4646 return &v.state4647 case 1:4648 return &v.sizeCache4649 case 2:4650 return &v.unknownFields4651 default:4652 return nil4653 }4654 }4655 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {4656 switch v := v.(*Encryption_SampleAesEncryption); i {4657 case 0:4658 return &v.state4659 case 1:4660 return &v.sizeCache4661 case 2:4662 return &v.unknownFields4663 default:4664 return nil4665 }4666 }4667 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {4668 switch v := v.(*Encryption_MpegCommonEncryption); i {4669 case 0:4670 return &v.state4671 case 1:4672 return &v.sizeCache4673 case 2:4674 return &v.unknownFields4675 default:4676 return nil4677 }4678 }4679 }4680 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[0].OneofWrappers = []interface{}{4681 (*Job_TemplateId)(nil),4682 (*Job_Config)(nil),4683 }4684 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[7].OneofWrappers = []interface{}{4685 (*ElementaryStream_VideoStream)(nil),4686 (*ElementaryStream_AudioStream)(nil),4687 (*ElementaryStream_TextStream)(nil),4688 }4689 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[11].OneofWrappers = []interface{}{4690 (*SpriteSheet_TotalCount)(nil),4691 (*SpriteSheet_Interval)(nil),4692 }4693 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[14].OneofWrappers = []interface{}{4694 (*VideoStream_H264)(nil),4695 (*VideoStream_H265)(nil),4696 (*VideoStream_Vp9)(nil),4697 }4698 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[18].OneofWrappers = []interface{}{4699 (*Encryption_Aes_128)(nil),4700 (*Encryption_SampleAes)(nil),4701 (*Encryption_MpegCenc)(nil),4702 }4703 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[24].OneofWrappers = []interface{}{4704 (*Overlay_Animation_AnimationStatic)(nil),4705 (*Overlay_Animation_AnimationFade)(nil),4706 (*Overlay_Animation_AnimationEnd)(nil),4707 }4708 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[31].OneofWrappers = []interface{}{4709 (*VideoStream_H264CodecSettings_GopFrameCount)(nil),4710 (*VideoStream_H264CodecSettings_GopDuration)(nil),4711 }4712 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[32].OneofWrappers = []interface{}{4713 (*VideoStream_H265CodecSettings_GopFrameCount)(nil),4714 (*VideoStream_H265CodecSettings_GopDuration)(nil),4715 }4716 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[33].OneofWrappers = []interface{}{4717 (*VideoStream_Vp9CodecSettings_GopFrameCount)(nil),4718 (*VideoStream_Vp9CodecSettings_GopDuration)(nil),4719 }4720 type x struct{}4721 out := protoimpl.TypeBuilder{4722 File: protoimpl.DescBuilder{4723 GoPackagePath: reflect.TypeOf(x{}).PkgPath(),4724 RawDescriptor: file_google_cloud_video_transcoder_v1_resources_proto_rawDesc,4725 NumEnums: 3,4726 NumMessages: 39,4727 NumExtensions: 0,4728 NumServices: 0,4729 },4730 GoTypes: file_google_cloud_video_transcoder_v1_resources_proto_goTypes,4731 DependencyIndexes: file_google_cloud_video_transcoder_v1_resources_proto_depIdxs,4732 EnumInfos: file_google_cloud_video_transcoder_v1_resources_proto_enumTypes,4733 MessageInfos: file_google_cloud_video_transcoder_v1_resources_proto_msgTypes,4734 }.Build()4735 File_google_cloud_video_transcoder_v1_resources_proto = out.File4736 file_google_cloud_video_transcoder_v1_resources_proto_rawDesc = nil4737 file_google_cloud_video_transcoder_v1_resources_proto_goTypes = nil4738 file_google_cloud_video_transcoder_v1_resources_proto_depIdxs = nil4739}...
format.go
Source:format.go
...67func Format(ts []*Token, theme Theme) string {68 out := ""69 depth := 070 for i, t := range ts {71 if oneOf(t.Type, SliceOpen, MapOpen, StructOpen) {72 depth++73 }74 if i < len(ts)-1 && oneOf(ts[i+1].Type, SliceClose, MapClose, StructClose) {75 depth--76 }77 styles := theme(t.Type)78 switch t.Type {79 case SliceOpen, MapOpen, StructOpen:80 out += Stylize(t.Literal, styles) + "\n"81 case SliceItem, MapKey, StructKey:82 out += strings.Repeat(indentUnit, depth)83 case Colon, InlineComma, Chan:84 out += Stylize(t.Literal, styles) + " "85 case Comma:86 out += Stylize(t.Literal, styles) + "\n"87 case SliceClose, MapClose, StructClose:88 out += strings.Repeat(indentUnit, depth) + Stylize(t.Literal, styles)89 case String:90 out += Stylize(readableStr(depth, t.Literal), styles)91 default:92 out += Stylize(t.Literal, styles)93 }94 }95 return out96}97func oneOf(t Type, list ...Type) bool {98 for _, el := range list {99 if t == el {100 return true101 }102 }103 return false104}105// To make multi-line string block more human readable.106// Split newline into two strings, convert "\t" into tab.107// Such as foramt string: "line one \n\t line two" into:108// "line one \n" +109// " line two"110func readableStr(depth int, s string) string {111 if ((len(s) > LongStringLen) || strings.Contains(s, "\n") || strings.Contains(s, `"`)) && !strings.Contains(s, "`") {...
oneOf
Using AI Code Generation
1import (2func main() {3 logrus.SetLevel(logrus.DebugLevel)4 api := operations.NewOneOfAPI(nil)5 server := restapi.NewServer(api)6 defer server.Shutdown()7 server.ConfigureAPI()8 api.Validator = &Validator{}9 api.OneOfOneOfHandler = one_of.OneOfHandlerFunc(func(params one_of.OneOfParams) middleware.Responder {10 spew.Dump(params)11 return one_of.NewOneOfOK()12 })13 if err := server.Serve(); err != nil {14 logrus.Fatalln(err)15 }16}17type Validator struct{}18func (v *Validator) Validate(i interface{}) error {19 return validate.Struct(i)20}21func (v *Validator) RegisterValidation(key string, fn validator.Func, callValidationEvenIfNull bool) error {22}23func (v *Validator) RegisterStructValidation(fn validator.StructLevelFunc, types ...interface{}) error {24}25func (v *Validator) Var(fl validator.FieldLevel) bool {26}27func (v *Validator) Field(fl validator.FieldLevel) bool {28}29func (v *Validator) Struct(s interface{}) error {30}31func (v *Validator) StructExcept(s interface{}, fields ...string) error {32}33func (v *Validator) StructPartial(s interface{}, fields ...string) error {34}35func (v *Validator) SetTagName(name string) {36}37func (v *Validator) Engine() *validator.Validate {38}
oneOf
Using AI Code Generation
1import (2func main() {3 gop.RegisterGlobal("fmt", map[string]interface{}{4 })5 gop.RegisterGlobal("main", map[string]interface{}{6 })7 gop.RegisterTypes(8 gop.RegisterFuncs(9 gop.RegisterConsts(10 gop.RegisterVars(11 gop.RegisterTypes(12 gop.RegisterFuncs(13 gop.RegisterConsts(14 gop.RegisterVars(15 gop.RegisterTypes(16 gop.RegisterFuncs(17 gop.RegisterConsts(18 gop.RegisterVars(19 gop.RegisterTypes(20 gop.RegisterFuncs(21 gop.RegisterConsts(22 gop.RegisterVars(23 gop.RegisterTypes(24 gop.RegisterFuncs(25 gop.RegisterConsts(26 gop.RegisterVars(27 gop.RegisterTypes(28 gop.RegisterFuncs(29 gop.RegisterConsts(30 gop.RegisterVars(31 gop.RegisterTypes(32 gop.RegisterFuncs(33 gop.RegisterConsts(34 gop.RegisterVars(35 gop.RegisterTypes(36 gop.RegisterFuncs(37 gop.RegisterConsts(38 gop.RegisterVars(39 gop.RegisterTypes(40 gop.RegisterFuncs(41 gop.RegisterConsts(
oneOf
Using AI Code Generation
1import "fmt"2import "gop"3func main() {4 fmt.Println(gop.OneOf("Hello", "Hello", "World"))5 fmt.Println(gop.OneOf("World", "Hello", "World"))6 fmt.Println(gop.OneOf("Hello", "Hello", "World", "World"))7 fmt.Println(gop.OneOf("World", "Hello", "World", "World"))8 fmt.Println(gop.OneOf("World", "Hello", "World", "World", "World"))9 fmt.Println(gop.OneOf("World", "Hello", "World", "World", "World", "World"))10}
oneOf
Using AI Code Generation
1import (2func main() {3 err := ui.Main(func() {4 window := ui.NewWindow("Hello", 200, 100, false)5 window.SetMargined(true)6 label := ui.NewLabel("Hello World")7 window.SetChild(label)8 window.Show()9 })10 if err != nil {11 panic(err)12 }13}
oneOf
Using AI Code Generation
1import (2func main() {3 g := gop.NewGop()4 g.Add("one", func() {5 fmt.Println("one")6 })7 g.Add("two", func() {8 fmt.Println("two")9 })10 g.Add("three", func() {11 fmt.Println("three")12 })13 g.OneOf("one", "two", "three")()14}15import (16func main() {17 g := gop.NewGop()18 g.Add("one", func() {19 fmt.Println("one")20 })21 g.Add("two", func() {22 fmt.Println("two")23 })24 g.Add("three", func() {25 fmt.Println("three")26 })27 g.OneOf("one", "two", "three")()28}29import (30func main() {31 g := gop.NewGop()32 g.Add("one", func() {33 fmt.Println("one")34 })35 g.Add("two", func() {36 fmt.Println("two")37 })38 g.Add("three", func() {39 fmt.Println("three")40 })41 g.OneOf("one", "two", "three")()42}43import (44func main() {45 g := gop.NewGop()46 g.Add("one", func() {47 fmt.Println("one")48 })49 g.Add("two",
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!