1// Copyright 2021 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Code generated by protoc-gen-go. DO NOT EDIT. 16// versions: 17// protoc-gen-go v1.26.0 18// protoc v3.12.2 19// source: google/cloud/video/transcoder/v1/resources.proto 20 21package transcoder 22 23import ( 24 reflect "reflect" 25 sync "sync" 26 27 _ "google.golang.org/genproto/googleapis/api/annotations" 28 status "google.golang.org/genproto/googleapis/rpc/status" 29 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 30 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 31 durationpb "google.golang.org/protobuf/types/known/durationpb" 32 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 33) 34 35const ( 36 // Verify that this generated code is sufficiently up-to-date. 37 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 38 // Verify that runtime/protoimpl is sufficiently up-to-date. 39 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 40) 41 42// The current state of the job. 43type Job_ProcessingState int32 44 45const ( 46 // The processing state is not specified. 47 Job_PROCESSING_STATE_UNSPECIFIED Job_ProcessingState = 0 48 // The job is enqueued and will be picked up for processing soon. 49 Job_PENDING Job_ProcessingState = 1 50 // The job is being processed. 51 Job_RUNNING Job_ProcessingState = 2 52 // The job has been completed successfully. 53 Job_SUCCEEDED Job_ProcessingState = 3 54 // The job has failed. For additional information, see `failure_reason` and 55 // `failure_details` 56 Job_FAILED Job_ProcessingState = 4 57) 58 59// Enum value maps for Job_ProcessingState. 60var ( 61 Job_ProcessingState_name = map[int32]string{ 62 0: "PROCESSING_STATE_UNSPECIFIED", 63 1: "PENDING", 64 2: "RUNNING", 65 3: "SUCCEEDED", 66 4: "FAILED", 67 } 68 Job_ProcessingState_value = map[string]int32{ 69 "PROCESSING_STATE_UNSPECIFIED": 0, 70 "PENDING": 1, 71 "RUNNING": 2, 72 "SUCCEEDED": 3, 73 "FAILED": 4, 74 } 75) 76 77func (x Job_ProcessingState) Enum() *Job_ProcessingState { 78 p := new(Job_ProcessingState) 79 *p = x 80 return p 81} 82 83func (x Job_ProcessingState) String() string { 84 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 85} 86 87func (Job_ProcessingState) Descriptor() protoreflect.EnumDescriptor { 88 return file_google_cloud_video_transcoder_v1_resources_proto_enumTypes[0].Descriptor() 89} 90 91func (Job_ProcessingState) Type() protoreflect.EnumType { 92 return &file_google_cloud_video_transcoder_v1_resources_proto_enumTypes[0] 93} 94 95func (x Job_ProcessingState) Number() protoreflect.EnumNumber { 96 return protoreflect.EnumNumber(x) 97} 98 99// Deprecated: Use Job_ProcessingState.Descriptor instead. 100func (Job_ProcessingState) EnumDescriptor() ([]byte, []int) { 101 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{0, 0} 102} 103 104// The manifest type can be either `"HLS"` or `"DASH"`. 105type Manifest_ManifestType int32 106 107const ( 108 // The manifest type is not specified. 109 Manifest_MANIFEST_TYPE_UNSPECIFIED Manifest_ManifestType = 0 110 // Create `"HLS"` manifest. The corresponding file extension is `".m3u8"`. 111 Manifest_HLS Manifest_ManifestType = 1 112 // Create `"DASH"` manifest. The corresponding file extension is `".mpd"`. 113 Manifest_DASH Manifest_ManifestType = 2 114) 115 116// Enum value maps for Manifest_ManifestType. 117var ( 118 Manifest_ManifestType_name = map[int32]string{ 119 0: "MANIFEST_TYPE_UNSPECIFIED", 120 1: "HLS", 121 2: "DASH", 122 } 123 Manifest_ManifestType_value = map[string]int32{ 124 "MANIFEST_TYPE_UNSPECIFIED": 0, 125 "HLS": 1, 126 "DASH": 2, 127 } 128) 129 130func (x Manifest_ManifestType) Enum() *Manifest_ManifestType { 131 p := new(Manifest_ManifestType) 132 *p = x 133 return p 134} 135 136func (x Manifest_ManifestType) String() string { 137 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 138} 139 140func (Manifest_ManifestType) Descriptor() protoreflect.EnumDescriptor { 141 return file_google_cloud_video_transcoder_v1_resources_proto_enumTypes[1].Descriptor() 142} 143 144func (Manifest_ManifestType) Type() protoreflect.EnumType { 145 return &file_google_cloud_video_transcoder_v1_resources_proto_enumTypes[1] 146} 147 148func (x Manifest_ManifestType) Number() protoreflect.EnumNumber { 149 return protoreflect.EnumNumber(x) 150} 151 152// Deprecated: Use Manifest_ManifestType.Descriptor instead. 153func (Manifest_ManifestType) EnumDescriptor() ([]byte, []int) { 154 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{9, 0} 155} 156 157// Fade type for the overlay: `FADE_IN` or `FADE_OUT`. 158type Overlay_FadeType int32 159 160const ( 161 // The fade type is not specified. 162 Overlay_FADE_TYPE_UNSPECIFIED Overlay_FadeType = 0 163 // Fade the overlay object into view. 164 Overlay_FADE_IN Overlay_FadeType = 1 165 // Fade the overlay object out of view. 166 Overlay_FADE_OUT Overlay_FadeType = 2 167) 168 169// Enum value maps for Overlay_FadeType. 170var ( 171 Overlay_FadeType_name = map[int32]string{ 172 0: "FADE_TYPE_UNSPECIFIED", 173 1: "FADE_IN", 174 2: "FADE_OUT", 175 } 176 Overlay_FadeType_value = map[string]int32{ 177 "FADE_TYPE_UNSPECIFIED": 0, 178 "FADE_IN": 1, 179 "FADE_OUT": 2, 180 } 181) 182 183func (x Overlay_FadeType) Enum() *Overlay_FadeType { 184 p := new(Overlay_FadeType) 185 *p = x 186 return p 187} 188 189func (x Overlay_FadeType) String() string { 190 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 191} 192 193func (Overlay_FadeType) Descriptor() protoreflect.EnumDescriptor { 194 return file_google_cloud_video_transcoder_v1_resources_proto_enumTypes[2].Descriptor() 195} 196 197func (Overlay_FadeType) Type() protoreflect.EnumType { 198 return &file_google_cloud_video_transcoder_v1_resources_proto_enumTypes[2] 199} 200 201func (x Overlay_FadeType) Number() protoreflect.EnumNumber { 202 return protoreflect.EnumNumber(x) 203} 204 205// Deprecated: Use Overlay_FadeType.Descriptor instead. 206func (Overlay_FadeType) EnumDescriptor() ([]byte, []int) { 207 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12, 0} 208} 209 210// Transcoding job resource. 211type Job struct { 212 state protoimpl.MessageState 213 sizeCache protoimpl.SizeCache 214 unknownFields protoimpl.UnknownFields 215 216 // The resource name of the job. 217 // Format: `projects/{project}/locations/{location}/jobs/{job}` 218 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 219 // Input only. Specify the `input_uri` to populate empty `uri` fields in each element of 220 // `Job.config.inputs` or `JobTemplate.config.inputs` when using template. 221 // URI of the media. Input files must be at least 5 seconds in duration and 222 // stored in Cloud Storage (for example, `gs://bucket/inputs/file.mp4`). 223 InputUri string `protobuf:"bytes,2,opt,name=input_uri,json=inputUri,proto3" json:"input_uri,omitempty"` 224 // Input only. Specify the `output_uri` to populate an empty `Job.config.output.uri` or 225 // `JobTemplate.config.output.uri` when using template. 226 // URI for the output file(s). For example, `gs://my-bucket/outputs/`. 227 OutputUri string `protobuf:"bytes,3,opt,name=output_uri,json=outputUri,proto3" json:"output_uri,omitempty"` 228 // Specify the `job_config` for the transcoding job. If you don't specify the 229 // `job_config`, the API selects `templateId`; this template ID is set to 230 // `preset/web-hd` by default. When you use a `template_id` to create a job, 231 // the `Job.config` is populated by the `JobTemplate.config`.<br> 232 // 233 // Types that are assignable to JobConfig: 234 // *Job_TemplateId 235 // *Job_Config 236 JobConfig isJob_JobConfig `protobuf_oneof:"job_config"` 237 // Output only. The current state of the job. 238 State Job_ProcessingState `protobuf:"varint,8,opt,name=state,proto3,enum=google.cloud.video.transcoder.v1.Job_ProcessingState" json:"state,omitempty"` 239 // Output only. The time the job was created. 240 CreateTime *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` 241 // Output only. The time the transcoding started. 242 StartTime *timestamppb.Timestamp `protobuf:"bytes,13,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` 243 // Output only. The time the transcoding finished. 244 EndTime *timestamppb.Timestamp `protobuf:"bytes,14,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` 245 // Job time to live value in days, which will be effective after job 246 // completion. Job should be deleted automatically after the given TTL. Enter 247 // a value between 1 and 90. The default is 30. 248 TtlAfterCompletionDays int32 `protobuf:"varint,15,opt,name=ttl_after_completion_days,json=ttlAfterCompletionDays,proto3" json:"ttl_after_completion_days,omitempty"` 249 // Output only. An error object that describes the reason for the failure. 250 // This property is always present when `state` is `FAILED`. 251 Error *status.Status `protobuf:"bytes,17,opt,name=error,proto3" json:"error,omitempty"` 252} 253 254func (x *Job) Reset() { 255 *x = Job{} 256 if protoimpl.UnsafeEnabled { 257 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[0] 258 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 259 ms.StoreMessageInfo(mi) 260 } 261} 262 263func (x *Job) String() string { 264 return protoimpl.X.MessageStringOf(x) 265} 266 267func (*Job) ProtoMessage() {} 268 269func (x *Job) ProtoReflect() protoreflect.Message { 270 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[0] 271 if protoimpl.UnsafeEnabled && x != nil { 272 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 273 if ms.LoadMessageInfo() == nil { 274 ms.StoreMessageInfo(mi) 275 } 276 return ms 277 } 278 return mi.MessageOf(x) 279} 280 281// Deprecated: Use Job.ProtoReflect.Descriptor instead. 282func (*Job) Descriptor() ([]byte, []int) { 283 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{0} 284} 285 286func (x *Job) GetName() string { 287 if x != nil { 288 return x.Name 289 } 290 return "" 291} 292 293func (x *Job) GetInputUri() string { 294 if x != nil { 295 return x.InputUri 296 } 297 return "" 298} 299 300func (x *Job) GetOutputUri() string { 301 if x != nil { 302 return x.OutputUri 303 } 304 return "" 305} 306 307func (m *Job) GetJobConfig() isJob_JobConfig { 308 if m != nil { 309 return m.JobConfig 310 } 311 return nil 312} 313 314func (x *Job) GetTemplateId() string { 315 if x, ok := x.GetJobConfig().(*Job_TemplateId); ok { 316 return x.TemplateId 317 } 318 return "" 319} 320 321func (x *Job) GetConfig() *JobConfig { 322 if x, ok := x.GetJobConfig().(*Job_Config); ok { 323 return x.Config 324 } 325 return nil 326} 327 328func (x *Job) GetState() Job_ProcessingState { 329 if x != nil { 330 return x.State 331 } 332 return Job_PROCESSING_STATE_UNSPECIFIED 333} 334 335func (x *Job) GetCreateTime() *timestamppb.Timestamp { 336 if x != nil { 337 return x.CreateTime 338 } 339 return nil 340} 341 342func (x *Job) GetStartTime() *timestamppb.Timestamp { 343 if x != nil { 344 return x.StartTime 345 } 346 return nil 347} 348 349func (x *Job) GetEndTime() *timestamppb.Timestamp { 350 if x != nil { 351 return x.EndTime 352 } 353 return nil 354} 355 356func (x *Job) GetTtlAfterCompletionDays() int32 { 357 if x != nil { 358 return x.TtlAfterCompletionDays 359 } 360 return 0 361} 362 363func (x *Job) GetError() *status.Status { 364 if x != nil { 365 return x.Error 366 } 367 return nil 368} 369 370type isJob_JobConfig interface { 371 isJob_JobConfig() 372} 373 374type Job_TemplateId struct { 375 // Input only. Specify the `template_id` to use for populating `Job.config`. The default 376 // is `preset/web-hd`. 377 // 378 // Preset Transcoder templates: 379 // - `preset/{preset_id}` 380 // 381 // - User defined JobTemplate: 382 // `{job_template_id}` 383 TemplateId string `protobuf:"bytes,4,opt,name=template_id,json=templateId,proto3,oneof"` 384} 385 386type Job_Config struct { 387 // The configuration for this job. 388 Config *JobConfig `protobuf:"bytes,5,opt,name=config,proto3,oneof"` 389} 390 391func (*Job_TemplateId) isJob_JobConfig() {} 392 393func (*Job_Config) isJob_JobConfig() {} 394 395// Transcoding job template resource. 396type JobTemplate struct { 397 state protoimpl.MessageState 398 sizeCache protoimpl.SizeCache 399 unknownFields protoimpl.UnknownFields 400 401 // The resource name of the job template. 402 // Format: 403 // `projects/{project}/locations/{location}/jobTemplates/{job_template}` 404 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 405 // The configuration for this template. 406 Config *JobConfig `protobuf:"bytes,2,opt,name=config,proto3" json:"config,omitempty"` 407} 408 409func (x *JobTemplate) Reset() { 410 *x = JobTemplate{} 411 if protoimpl.UnsafeEnabled { 412 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[1] 413 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 414 ms.StoreMessageInfo(mi) 415 } 416} 417 418func (x *JobTemplate) String() string { 419 return protoimpl.X.MessageStringOf(x) 420} 421 422func (*JobTemplate) ProtoMessage() {} 423 424func (x *JobTemplate) ProtoReflect() protoreflect.Message { 425 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[1] 426 if protoimpl.UnsafeEnabled && x != nil { 427 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 428 if ms.LoadMessageInfo() == nil { 429 ms.StoreMessageInfo(mi) 430 } 431 return ms 432 } 433 return mi.MessageOf(x) 434} 435 436// Deprecated: Use JobTemplate.ProtoReflect.Descriptor instead. 437func (*JobTemplate) Descriptor() ([]byte, []int) { 438 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{1} 439} 440 441func (x *JobTemplate) GetName() string { 442 if x != nil { 443 return x.Name 444 } 445 return "" 446} 447 448func (x *JobTemplate) GetConfig() *JobConfig { 449 if x != nil { 450 return x.Config 451 } 452 return nil 453} 454 455// Job configuration 456type JobConfig struct { 457 state protoimpl.MessageState 458 sizeCache protoimpl.SizeCache 459 unknownFields protoimpl.UnknownFields 460 461 // List of input assets stored in Cloud Storage. 462 Inputs []*Input `protobuf:"bytes,1,rep,name=inputs,proto3" json:"inputs,omitempty"` 463 // List of `Edit atom`s. Defines the ultimate timeline of the resulting 464 // file or manifest. 465 EditList []*EditAtom `protobuf:"bytes,2,rep,name=edit_list,json=editList,proto3" json:"edit_list,omitempty"` 466 // List of elementary streams. 467 ElementaryStreams []*ElementaryStream `protobuf:"bytes,3,rep,name=elementary_streams,json=elementaryStreams,proto3" json:"elementary_streams,omitempty"` 468 // List of multiplexing settings for output streams. 469 MuxStreams []*MuxStream `protobuf:"bytes,4,rep,name=mux_streams,json=muxStreams,proto3" json:"mux_streams,omitempty"` 470 // List of output manifests. 471 Manifests []*Manifest `protobuf:"bytes,5,rep,name=manifests,proto3" json:"manifests,omitempty"` 472 // Output configuration. 473 Output *Output `protobuf:"bytes,6,opt,name=output,proto3" json:"output,omitempty"` 474 // List of ad breaks. Specifies where to insert ad break tags in the output 475 // manifests. 476 AdBreaks []*AdBreak `protobuf:"bytes,7,rep,name=ad_breaks,json=adBreaks,proto3" json:"ad_breaks,omitempty"` 477 // Destination on Pub/Sub. 478 PubsubDestination *PubsubDestination `protobuf:"bytes,8,opt,name=pubsub_destination,json=pubsubDestination,proto3" json:"pubsub_destination,omitempty"` 479 // List of output sprite sheets. 480 SpriteSheets []*SpriteSheet `protobuf:"bytes,9,rep,name=sprite_sheets,json=spriteSheets,proto3" json:"sprite_sheets,omitempty"` 481 // List of overlays on the output video, in descending Z-order. 482 Overlays []*Overlay `protobuf:"bytes,10,rep,name=overlays,proto3" json:"overlays,omitempty"` 483} 484 485func (x *JobConfig) Reset() { 486 *x = JobConfig{} 487 if protoimpl.UnsafeEnabled { 488 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[2] 489 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 490 ms.StoreMessageInfo(mi) 491 } 492} 493 494func (x *JobConfig) String() string { 495 return protoimpl.X.MessageStringOf(x) 496} 497 498func (*JobConfig) ProtoMessage() {} 499 500func (x *JobConfig) ProtoReflect() protoreflect.Message { 501 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[2] 502 if protoimpl.UnsafeEnabled && x != nil { 503 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 504 if ms.LoadMessageInfo() == nil { 505 ms.StoreMessageInfo(mi) 506 } 507 return ms 508 } 509 return mi.MessageOf(x) 510} 511 512// Deprecated: Use JobConfig.ProtoReflect.Descriptor instead. 513func (*JobConfig) Descriptor() ([]byte, []int) { 514 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{2} 515} 516 517func (x *JobConfig) GetInputs() []*Input { 518 if x != nil { 519 return x.Inputs 520 } 521 return nil 522} 523 524func (x *JobConfig) GetEditList() []*EditAtom { 525 if x != nil { 526 return x.EditList 527 } 528 return nil 529} 530 531func (x *JobConfig) GetElementaryStreams() []*ElementaryStream { 532 if x != nil { 533 return x.ElementaryStreams 534 } 535 return nil 536} 537 538func (x *JobConfig) GetMuxStreams() []*MuxStream { 539 if x != nil { 540 return x.MuxStreams 541 } 542 return nil 543} 544 545func (x *JobConfig) GetManifests() []*Manifest { 546 if x != nil { 547 return x.Manifests 548 } 549 return nil 550} 551 552func (x *JobConfig) GetOutput() *Output { 553 if x != nil { 554 return x.Output 555 } 556 return nil 557} 558 559func (x *JobConfig) GetAdBreaks() []*AdBreak { 560 if x != nil { 561 return x.AdBreaks 562 } 563 return nil 564} 565 566func (x *JobConfig) GetPubsubDestination() *PubsubDestination { 567 if x != nil { 568 return x.PubsubDestination 569 } 570 return nil 571} 572 573func (x *JobConfig) GetSpriteSheets() []*SpriteSheet { 574 if x != nil { 575 return x.SpriteSheets 576 } 577 return nil 578} 579 580func (x *JobConfig) GetOverlays() []*Overlay { 581 if x != nil { 582 return x.Overlays 583 } 584 return nil 585} 586 587// Input asset. 588type Input struct { 589 state protoimpl.MessageState 590 sizeCache protoimpl.SizeCache 591 unknownFields protoimpl.UnknownFields 592 593 // A unique key for this input. Must be specified when using advanced 594 // mapping and edit lists. 595 Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` 596 // URI of the media. Input files must be at least 5 seconds in duration and 597 // stored in Cloud Storage (for example, `gs://bucket/inputs/file.mp4`). 598 // If empty, the value will be populated from `Job.input_uri`. 599 Uri string `protobuf:"bytes,2,opt,name=uri,proto3" json:"uri,omitempty"` 600 // Preprocessing configurations. 601 PreprocessingConfig *PreprocessingConfig `protobuf:"bytes,3,opt,name=preprocessing_config,json=preprocessingConfig,proto3" json:"preprocessing_config,omitempty"` 602} 603 604func (x *Input) Reset() { 605 *x = Input{} 606 if protoimpl.UnsafeEnabled { 607 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[3] 608 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 609 ms.StoreMessageInfo(mi) 610 } 611} 612 613func (x *Input) String() string { 614 return protoimpl.X.MessageStringOf(x) 615} 616 617func (*Input) ProtoMessage() {} 618 619func (x *Input) ProtoReflect() protoreflect.Message { 620 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[3] 621 if protoimpl.UnsafeEnabled && x != nil { 622 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 623 if ms.LoadMessageInfo() == nil { 624 ms.StoreMessageInfo(mi) 625 } 626 return ms 627 } 628 return mi.MessageOf(x) 629} 630 631// Deprecated: Use Input.ProtoReflect.Descriptor instead. 632func (*Input) Descriptor() ([]byte, []int) { 633 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{3} 634} 635 636func (x *Input) GetKey() string { 637 if x != nil { 638 return x.Key 639 } 640 return "" 641} 642 643func (x *Input) GetUri() string { 644 if x != nil { 645 return x.Uri 646 } 647 return "" 648} 649 650func (x *Input) GetPreprocessingConfig() *PreprocessingConfig { 651 if x != nil { 652 return x.PreprocessingConfig 653 } 654 return nil 655} 656 657// Location of output file(s) in a Cloud Storage bucket. 658type Output struct { 659 state protoimpl.MessageState 660 sizeCache protoimpl.SizeCache 661 unknownFields protoimpl.UnknownFields 662 663 // URI for the output file(s). For example, `gs://my-bucket/outputs/`. 664 // If empty the value is populated from `Job.output_uri`. 665 Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"` 666} 667 668func (x *Output) Reset() { 669 *x = Output{} 670 if protoimpl.UnsafeEnabled { 671 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[4] 672 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 673 ms.StoreMessageInfo(mi) 674 } 675} 676 677func (x *Output) String() string { 678 return protoimpl.X.MessageStringOf(x) 679} 680 681func (*Output) ProtoMessage() {} 682 683func (x *Output) ProtoReflect() protoreflect.Message { 684 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[4] 685 if protoimpl.UnsafeEnabled && x != nil { 686 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 687 if ms.LoadMessageInfo() == nil { 688 ms.StoreMessageInfo(mi) 689 } 690 return ms 691 } 692 return mi.MessageOf(x) 693} 694 695// Deprecated: Use Output.ProtoReflect.Descriptor instead. 696func (*Output) Descriptor() ([]byte, []int) { 697 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{4} 698} 699 700func (x *Output) GetUri() string { 701 if x != nil { 702 return x.Uri 703 } 704 return "" 705} 706 707// Edit atom. 708type EditAtom struct { 709 state protoimpl.MessageState 710 sizeCache protoimpl.SizeCache 711 unknownFields protoimpl.UnknownFields 712 713 // A unique key for this atom. Must be specified when using advanced 714 // mapping. 715 Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` 716 // List of `Input.key`s identifying files that should be used in this atom. 717 // The listed `inputs` must have the same timeline. 718 Inputs []string `protobuf:"bytes,2,rep,name=inputs,proto3" json:"inputs,omitempty"` 719 // End time in seconds for the atom, relative to the input file timeline. 720 // When `end_time_offset` is not specified, the `inputs` are used until 721 // the end of the atom. 722 EndTimeOffset *durationpb.Duration `protobuf:"bytes,3,opt,name=end_time_offset,json=endTimeOffset,proto3" json:"end_time_offset,omitempty"` 723 // Start time in seconds for the atom, relative to the input file timeline. 724 // The default is `0s`. 725 StartTimeOffset *durationpb.Duration `protobuf:"bytes,4,opt,name=start_time_offset,json=startTimeOffset,proto3" json:"start_time_offset,omitempty"` 726} 727 728func (x *EditAtom) Reset() { 729 *x = EditAtom{} 730 if protoimpl.UnsafeEnabled { 731 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[5] 732 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 733 ms.StoreMessageInfo(mi) 734 } 735} 736 737func (x *EditAtom) String() string { 738 return protoimpl.X.MessageStringOf(x) 739} 740 741func (*EditAtom) ProtoMessage() {} 742 743func (x *EditAtom) ProtoReflect() protoreflect.Message { 744 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[5] 745 if protoimpl.UnsafeEnabled && x != nil { 746 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 747 if ms.LoadMessageInfo() == nil { 748 ms.StoreMessageInfo(mi) 749 } 750 return ms 751 } 752 return mi.MessageOf(x) 753} 754 755// Deprecated: Use EditAtom.ProtoReflect.Descriptor instead. 756func (*EditAtom) Descriptor() ([]byte, []int) { 757 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{5} 758} 759 760func (x *EditAtom) GetKey() string { 761 if x != nil { 762 return x.Key 763 } 764 return "" 765} 766 767func (x *EditAtom) GetInputs() []string { 768 if x != nil { 769 return x.Inputs 770 } 771 return nil 772} 773 774func (x *EditAtom) GetEndTimeOffset() *durationpb.Duration { 775 if x != nil { 776 return x.EndTimeOffset 777 } 778 return nil 779} 780 781func (x *EditAtom) GetStartTimeOffset() *durationpb.Duration { 782 if x != nil { 783 return x.StartTimeOffset 784 } 785 return nil 786} 787 788// Ad break. 789type AdBreak struct { 790 state protoimpl.MessageState 791 sizeCache protoimpl.SizeCache 792 unknownFields protoimpl.UnknownFields 793 794 // Start time in seconds for the ad break, relative to the output file 795 // timeline. The default is `0s`. 796 StartTimeOffset *durationpb.Duration `protobuf:"bytes,1,opt,name=start_time_offset,json=startTimeOffset,proto3" json:"start_time_offset,omitempty"` 797} 798 799func (x *AdBreak) Reset() { 800 *x = AdBreak{} 801 if protoimpl.UnsafeEnabled { 802 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[6] 803 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 804 ms.StoreMessageInfo(mi) 805 } 806} 807 808func (x *AdBreak) String() string { 809 return protoimpl.X.MessageStringOf(x) 810} 811 812func (*AdBreak) ProtoMessage() {} 813 814func (x *AdBreak) ProtoReflect() protoreflect.Message { 815 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[6] 816 if protoimpl.UnsafeEnabled && x != nil { 817 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 818 if ms.LoadMessageInfo() == nil { 819 ms.StoreMessageInfo(mi) 820 } 821 return ms 822 } 823 return mi.MessageOf(x) 824} 825 826// Deprecated: Use AdBreak.ProtoReflect.Descriptor instead. 827func (*AdBreak) Descriptor() ([]byte, []int) { 828 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{6} 829} 830 831func (x *AdBreak) GetStartTimeOffset() *durationpb.Duration { 832 if x != nil { 833 return x.StartTimeOffset 834 } 835 return nil 836} 837 838// Encoding of an input file such as an audio, video, or text track. 839// Elementary streams must be packaged before 840// mapping and sharing between different output formats. 841type ElementaryStream struct { 842 state protoimpl.MessageState 843 sizeCache protoimpl.SizeCache 844 unknownFields protoimpl.UnknownFields 845 846 // A unique key for this elementary stream. 847 Key string `protobuf:"bytes,4,opt,name=key,proto3" json:"key,omitempty"` 848 // Encoding of an audio, video, or text track. 849 // 850 // Types that are assignable to ElementaryStream: 851 // *ElementaryStream_VideoStream 852 // *ElementaryStream_AudioStream 853 // *ElementaryStream_TextStream 854 ElementaryStream isElementaryStream_ElementaryStream `protobuf_oneof:"elementary_stream"` 855} 856 857func (x *ElementaryStream) Reset() { 858 *x = ElementaryStream{} 859 if protoimpl.UnsafeEnabled { 860 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[7] 861 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 862 ms.StoreMessageInfo(mi) 863 } 864} 865 866func (x *ElementaryStream) String() string { 867 return protoimpl.X.MessageStringOf(x) 868} 869 870func (*ElementaryStream) ProtoMessage() {} 871 872func (x *ElementaryStream) ProtoReflect() protoreflect.Message { 873 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[7] 874 if protoimpl.UnsafeEnabled && x != nil { 875 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 876 if ms.LoadMessageInfo() == nil { 877 ms.StoreMessageInfo(mi) 878 } 879 return ms 880 } 881 return mi.MessageOf(x) 882} 883 884// Deprecated: Use ElementaryStream.ProtoReflect.Descriptor instead. 885func (*ElementaryStream) Descriptor() ([]byte, []int) { 886 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{7} 887} 888 889func (x *ElementaryStream) GetKey() string { 890 if x != nil { 891 return x.Key 892 } 893 return "" 894} 895 896func (m *ElementaryStream) GetElementaryStream() isElementaryStream_ElementaryStream { 897 if m != nil { 898 return m.ElementaryStream 899 } 900 return nil 901} 902 903func (x *ElementaryStream) GetVideoStream() *VideoStream { 904 if x, ok := x.GetElementaryStream().(*ElementaryStream_VideoStream); ok { 905 return x.VideoStream 906 } 907 return nil 908} 909 910func (x *ElementaryStream) GetAudioStream() *AudioStream { 911 if x, ok := x.GetElementaryStream().(*ElementaryStream_AudioStream); ok { 912 return x.AudioStream 913 } 914 return nil 915} 916 917func (x *ElementaryStream) GetTextStream() *TextStream { 918 if x, ok := x.GetElementaryStream().(*ElementaryStream_TextStream); ok { 919 return x.TextStream 920 } 921 return nil 922} 923 924type isElementaryStream_ElementaryStream interface { 925 isElementaryStream_ElementaryStream() 926} 927 928type ElementaryStream_VideoStream struct { 929 // Encoding of a video stream. 930 VideoStream *VideoStream `protobuf:"bytes,1,opt,name=video_stream,json=videoStream,proto3,oneof"` 931} 932 933type ElementaryStream_AudioStream struct { 934 // Encoding of an audio stream. 935 AudioStream *AudioStream `protobuf:"bytes,2,opt,name=audio_stream,json=audioStream,proto3,oneof"` 936} 937 938type ElementaryStream_TextStream struct { 939 // Encoding of a text stream. For example, closed captions or subtitles. 940 TextStream *TextStream `protobuf:"bytes,3,opt,name=text_stream,json=textStream,proto3,oneof"` 941} 942 943func (*ElementaryStream_VideoStream) isElementaryStream_ElementaryStream() {} 944 945func (*ElementaryStream_AudioStream) isElementaryStream_ElementaryStream() {} 946 947func (*ElementaryStream_TextStream) isElementaryStream_ElementaryStream() {} 948 949// Multiplexing settings for output stream. 950type MuxStream struct { 951 state protoimpl.MessageState 952 sizeCache protoimpl.SizeCache 953 unknownFields protoimpl.UnknownFields 954 955 // A unique key for this multiplexed stream. HLS media manifests will be 956 // named `MuxStream.key` with the `".m3u8"` extension suffix. 957 Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` 958 // The name of the generated file. The default is `MuxStream.key` with the 959 // extension suffix corresponding to the `MuxStream.container`. 960 // 961 // Individual segments also have an incremental 10-digit zero-padded suffix 962 // starting from 0 before the extension, such as `"mux_stream0000000123.ts"`. 963 FileName string `protobuf:"bytes,2,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"` 964 // The container format. The default is `"mp4"` 965 // 966 // Supported container formats: 967 // - 'ts' 968 // - 'fmp4'- the corresponding file extension is `".m4s"` 969 // - 'mp4' 970 // - 'vtt' 971 Container string `protobuf:"bytes,3,opt,name=container,proto3" json:"container,omitempty"` 972 // List of `ElementaryStream.key`s multiplexed in this stream. 973 ElementaryStreams []string `protobuf:"bytes,4,rep,name=elementary_streams,json=elementaryStreams,proto3" json:"elementary_streams,omitempty"` 974 // Segment settings for `"ts"`, `"fmp4"` and `"vtt"`. 975 SegmentSettings *SegmentSettings `protobuf:"bytes,5,opt,name=segment_settings,json=segmentSettings,proto3" json:"segment_settings,omitempty"` 976 // Encryption settings. 977 Encryption *Encryption `protobuf:"bytes,6,opt,name=encryption,proto3" json:"encryption,omitempty"` 978} 979 980func (x *MuxStream) Reset() { 981 *x = MuxStream{} 982 if protoimpl.UnsafeEnabled { 983 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[8] 984 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 985 ms.StoreMessageInfo(mi) 986 } 987} 988 989func (x *MuxStream) String() string { 990 return protoimpl.X.MessageStringOf(x) 991} 992 993func (*MuxStream) ProtoMessage() {} 994 995func (x *MuxStream) ProtoReflect() protoreflect.Message { 996 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[8] 997 if protoimpl.UnsafeEnabled && x != nil { 998 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 999 if ms.LoadMessageInfo() == nil { 1000 ms.StoreMessageInfo(mi) 1001 } 1002 return ms 1003 } 1004 return mi.MessageOf(x) 1005} 1006 1007// Deprecated: Use MuxStream.ProtoReflect.Descriptor instead. 1008func (*MuxStream) Descriptor() ([]byte, []int) { 1009 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{8} 1010} 1011 1012func (x *MuxStream) GetKey() string { 1013 if x != nil { 1014 return x.Key 1015 } 1016 return "" 1017} 1018 1019func (x *MuxStream) GetFileName() string { 1020 if x != nil { 1021 return x.FileName 1022 } 1023 return "" 1024} 1025 1026func (x *MuxStream) GetContainer() string { 1027 if x != nil { 1028 return x.Container 1029 } 1030 return "" 1031} 1032 1033func (x *MuxStream) GetElementaryStreams() []string { 1034 if x != nil { 1035 return x.ElementaryStreams 1036 } 1037 return nil 1038} 1039 1040func (x *MuxStream) GetSegmentSettings() *SegmentSettings { 1041 if x != nil { 1042 return x.SegmentSettings 1043 } 1044 return nil 1045} 1046 1047func (x *MuxStream) GetEncryption() *Encryption { 1048 if x != nil { 1049 return x.Encryption 1050 } 1051 return nil 1052} 1053 1054// Manifest configuration. 1055type Manifest struct { 1056 state protoimpl.MessageState 1057 sizeCache protoimpl.SizeCache 1058 unknownFields protoimpl.UnknownFields 1059 1060 // The name of the generated file. The default is `"manifest"` with the 1061 // extension suffix corresponding to the `Manifest.type`. 1062 FileName string `protobuf:"bytes,1,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"` 1063 // Required. Type of the manifest, can be "HLS" or "DASH". 1064 Type Manifest_ManifestType `protobuf:"varint,2,opt,name=type,proto3,enum=google.cloud.video.transcoder.v1.Manifest_ManifestType" json:"type,omitempty"` 1065 // Required. List of user given `MuxStream.key`s that should appear in this manifest. 1066 // 1067 // When `Manifest.type` is `HLS`, a media manifest with name `MuxStream.key` 1068 // and `.m3u8` extension is generated for each element of the 1069 // `Manifest.mux_streams`. 1070 MuxStreams []string `protobuf:"bytes,3,rep,name=mux_streams,json=muxStreams,proto3" json:"mux_streams,omitempty"` 1071} 1072 1073func (x *Manifest) Reset() { 1074 *x = Manifest{} 1075 if protoimpl.UnsafeEnabled { 1076 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[9] 1077 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1078 ms.StoreMessageInfo(mi) 1079 } 1080} 1081 1082func (x *Manifest) String() string { 1083 return protoimpl.X.MessageStringOf(x) 1084} 1085 1086func (*Manifest) ProtoMessage() {} 1087 1088func (x *Manifest) ProtoReflect() protoreflect.Message { 1089 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[9] 1090 if protoimpl.UnsafeEnabled && x != nil { 1091 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1092 if ms.LoadMessageInfo() == nil { 1093 ms.StoreMessageInfo(mi) 1094 } 1095 return ms 1096 } 1097 return mi.MessageOf(x) 1098} 1099 1100// Deprecated: Use Manifest.ProtoReflect.Descriptor instead. 1101func (*Manifest) Descriptor() ([]byte, []int) { 1102 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{9} 1103} 1104 1105func (x *Manifest) GetFileName() string { 1106 if x != nil { 1107 return x.FileName 1108 } 1109 return "" 1110} 1111 1112func (x *Manifest) GetType() Manifest_ManifestType { 1113 if x != nil { 1114 return x.Type 1115 } 1116 return Manifest_MANIFEST_TYPE_UNSPECIFIED 1117} 1118 1119func (x *Manifest) GetMuxStreams() []string { 1120 if x != nil { 1121 return x.MuxStreams 1122 } 1123 return nil 1124} 1125 1126// A Pub/Sub destination. 1127type PubsubDestination struct { 1128 state protoimpl.MessageState 1129 sizeCache protoimpl.SizeCache 1130 unknownFields protoimpl.UnknownFields 1131 1132 // The name of the Pub/Sub topic to publish job completion notification 1133 // to. For example: `projects/{project}/topics/{topic}`. 1134 Topic string `protobuf:"bytes,1,opt,name=topic,proto3" json:"topic,omitempty"` 1135} 1136 1137func (x *PubsubDestination) Reset() { 1138 *x = PubsubDestination{} 1139 if protoimpl.UnsafeEnabled { 1140 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[10] 1141 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1142 ms.StoreMessageInfo(mi) 1143 } 1144} 1145 1146func (x *PubsubDestination) String() string { 1147 return protoimpl.X.MessageStringOf(x) 1148} 1149 1150func (*PubsubDestination) ProtoMessage() {} 1151 1152func (x *PubsubDestination) ProtoReflect() protoreflect.Message { 1153 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[10] 1154 if protoimpl.UnsafeEnabled && x != nil { 1155 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1156 if ms.LoadMessageInfo() == nil { 1157 ms.StoreMessageInfo(mi) 1158 } 1159 return ms 1160 } 1161 return mi.MessageOf(x) 1162} 1163 1164// Deprecated: Use PubsubDestination.ProtoReflect.Descriptor instead. 1165func (*PubsubDestination) Descriptor() ([]byte, []int) { 1166 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{10} 1167} 1168 1169func (x *PubsubDestination) GetTopic() string { 1170 if x != nil { 1171 return x.Topic 1172 } 1173 return "" 1174} 1175 1176// Sprite sheet configuration. 1177type SpriteSheet struct { 1178 state protoimpl.MessageState 1179 sizeCache protoimpl.SizeCache 1180 unknownFields protoimpl.UnknownFields 1181 1182 // Format type. The default is `"jpeg"`. 1183 // 1184 // Supported formats: 1185 // - 'jpeg' 1186 Format string `protobuf:"bytes,1,opt,name=format,proto3" json:"format,omitempty"` 1187 // Required. File name prefix for the generated sprite sheets. 1188 // 1189 // Each sprite sheet has an incremental 10-digit zero-padded suffix starting 1190 // from 0 before the extension, such as `"sprite_sheet0000000123.jpeg"`. 1191 FilePrefix string `protobuf:"bytes,2,opt,name=file_prefix,json=filePrefix,proto3" json:"file_prefix,omitempty"` 1192 // Required. The width of sprite in pixels. Must be an even integer. To preserve the 1193 // source aspect ratio, set the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field or 1194 // the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field, but not both (the API will 1195 // automatically calculate the missing field). 1196 SpriteWidthPixels int32 `protobuf:"varint,3,opt,name=sprite_width_pixels,json=spriteWidthPixels,proto3" json:"sprite_width_pixels,omitempty"` 1197 // Required. The height of sprite in pixels. Must be an even integer. To preserve the 1198 // source aspect ratio, set the [SpriteSheet.sprite_height_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_height_pixels] field or 1199 // the [SpriteSheet.sprite_width_pixels][google.cloud.video.transcoder.v1.SpriteSheet.sprite_width_pixels] field, but not both (the API will 1200 // automatically calculate the missing field). 1201 SpriteHeightPixels int32 `protobuf:"varint,4,opt,name=sprite_height_pixels,json=spriteHeightPixels,proto3" json:"sprite_height_pixels,omitempty"` 1202 // The maximum number of sprites per row in a sprite sheet. The default is 0, 1203 // which indicates no maximum limit. 1204 ColumnCount int32 `protobuf:"varint,5,opt,name=column_count,json=columnCount,proto3" json:"column_count,omitempty"` 1205 // The maximum number of rows per sprite sheet. When the sprite sheet is full, 1206 // a new sprite sheet is created. The default is 0, which indicates no maximum 1207 // limit. 1208 RowCount int32 `protobuf:"varint,6,opt,name=row_count,json=rowCount,proto3" json:"row_count,omitempty"` 1209 // Start time in seconds, relative to the output file timeline. Determines the 1210 // first sprite to pick. The default is `0s`. 1211 StartTimeOffset *durationpb.Duration `protobuf:"bytes,7,opt,name=start_time_offset,json=startTimeOffset,proto3" json:"start_time_offset,omitempty"` 1212 // End time in seconds, relative to the output file timeline. When 1213 // `end_time_offset` is not specified, the sprites are generated until the end 1214 // of the output file. 1215 EndTimeOffset *durationpb.Duration `protobuf:"bytes,8,opt,name=end_time_offset,json=endTimeOffset,proto3" json:"end_time_offset,omitempty"` 1216 // Specify either total number of sprites or interval to create sprites. 1217 // 1218 // Types that are assignable to ExtractionStrategy: 1219 // *SpriteSheet_TotalCount 1220 // *SpriteSheet_Interval 1221 ExtractionStrategy isSpriteSheet_ExtractionStrategy `protobuf_oneof:"extraction_strategy"` 1222 // The quality of the generated sprite sheet. Enter a value between 1 1223 // and 100, where 1 is the lowest quality and 100 is the highest quality. 1224 // The default is 100. A high quality value corresponds to a low image data 1225 // compression ratio. 1226 Quality int32 `protobuf:"varint,11,opt,name=quality,proto3" json:"quality,omitempty"` 1227} 1228 1229func (x *SpriteSheet) Reset() { 1230 *x = SpriteSheet{} 1231 if protoimpl.UnsafeEnabled { 1232 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[11] 1233 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1234 ms.StoreMessageInfo(mi) 1235 } 1236} 1237 1238func (x *SpriteSheet) String() string { 1239 return protoimpl.X.MessageStringOf(x) 1240} 1241 1242func (*SpriteSheet) ProtoMessage() {} 1243 1244func (x *SpriteSheet) ProtoReflect() protoreflect.Message { 1245 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[11] 1246 if protoimpl.UnsafeEnabled && x != nil { 1247 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1248 if ms.LoadMessageInfo() == nil { 1249 ms.StoreMessageInfo(mi) 1250 } 1251 return ms 1252 } 1253 return mi.MessageOf(x) 1254} 1255 1256// Deprecated: Use SpriteSheet.ProtoReflect.Descriptor instead. 1257func (*SpriteSheet) Descriptor() ([]byte, []int) { 1258 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{11} 1259} 1260 1261func (x *SpriteSheet) GetFormat() string { 1262 if x != nil { 1263 return x.Format 1264 } 1265 return "" 1266} 1267 1268func (x *SpriteSheet) GetFilePrefix() string { 1269 if x != nil { 1270 return x.FilePrefix 1271 } 1272 return "" 1273} 1274 1275func (x *SpriteSheet) GetSpriteWidthPixels() int32 { 1276 if x != nil { 1277 return x.SpriteWidthPixels 1278 } 1279 return 0 1280} 1281 1282func (x *SpriteSheet) GetSpriteHeightPixels() int32 { 1283 if x != nil { 1284 return x.SpriteHeightPixels 1285 } 1286 return 0 1287} 1288 1289func (x *SpriteSheet) GetColumnCount() int32 { 1290 if x != nil { 1291 return x.ColumnCount 1292 } 1293 return 0 1294} 1295 1296func (x *SpriteSheet) GetRowCount() int32 { 1297 if x != nil { 1298 return x.RowCount 1299 } 1300 return 0 1301} 1302 1303func (x *SpriteSheet) GetStartTimeOffset() *durationpb.Duration { 1304 if x != nil { 1305 return x.StartTimeOffset 1306 } 1307 return nil 1308} 1309 1310func (x *SpriteSheet) GetEndTimeOffset() *durationpb.Duration { 1311 if x != nil { 1312 return x.EndTimeOffset 1313 } 1314 return nil 1315} 1316 1317func (m *SpriteSheet) GetExtractionStrategy() isSpriteSheet_ExtractionStrategy { 1318 if m != nil { 1319 return m.ExtractionStrategy 1320 } 1321 return nil 1322} 1323 1324func (x *SpriteSheet) GetTotalCount() int32 { 1325 if x, ok := x.GetExtractionStrategy().(*SpriteSheet_TotalCount); ok { 1326 return x.TotalCount 1327 } 1328 return 0 1329} 1330 1331func (x *SpriteSheet) GetInterval() *durationpb.Duration { 1332 if x, ok := x.GetExtractionStrategy().(*SpriteSheet_Interval); ok { 1333 return x.Interval 1334 } 1335 return nil 1336} 1337 1338func (x *SpriteSheet) GetQuality() int32 { 1339 if x != nil { 1340 return x.Quality 1341 } 1342 return 0 1343} 1344 1345type isSpriteSheet_ExtractionStrategy interface { 1346 isSpriteSheet_ExtractionStrategy() 1347} 1348 1349type SpriteSheet_TotalCount struct { 1350 // Total number of sprites. Create the specified number of sprites 1351 // distributed evenly across the timeline of the output media. The default 1352 // is 100. 1353 TotalCount int32 `protobuf:"varint,9,opt,name=total_count,json=totalCount,proto3,oneof"` 1354} 1355 1356type SpriteSheet_Interval struct { 1357 // Starting from `0s`, create sprites at regular intervals. Specify the 1358 // interval value in seconds. 1359 Interval *durationpb.Duration `protobuf:"bytes,10,opt,name=interval,proto3,oneof"` 1360} 1361 1362func (*SpriteSheet_TotalCount) isSpriteSheet_ExtractionStrategy() {} 1363 1364func (*SpriteSheet_Interval) isSpriteSheet_ExtractionStrategy() {} 1365 1366// Overlay configuration. 1367type Overlay struct { 1368 state protoimpl.MessageState 1369 sizeCache protoimpl.SizeCache 1370 unknownFields protoimpl.UnknownFields 1371 1372 // Image overlay. 1373 Image *Overlay_Image `protobuf:"bytes,1,opt,name=image,proto3" json:"image,omitempty"` 1374 // List of Animations. The list should be chronological, without any time 1375 // overlap. 1376 Animations []*Overlay_Animation `protobuf:"bytes,2,rep,name=animations,proto3" json:"animations,omitempty"` 1377} 1378 1379func (x *Overlay) Reset() { 1380 *x = Overlay{} 1381 if protoimpl.UnsafeEnabled { 1382 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[12] 1383 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1384 ms.StoreMessageInfo(mi) 1385 } 1386} 1387 1388func (x *Overlay) String() string { 1389 return protoimpl.X.MessageStringOf(x) 1390} 1391 1392func (*Overlay) ProtoMessage() {} 1393 1394func (x *Overlay) ProtoReflect() protoreflect.Message { 1395 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[12] 1396 if protoimpl.UnsafeEnabled && x != nil { 1397 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1398 if ms.LoadMessageInfo() == nil { 1399 ms.StoreMessageInfo(mi) 1400 } 1401 return ms 1402 } 1403 return mi.MessageOf(x) 1404} 1405 1406// Deprecated: Use Overlay.ProtoReflect.Descriptor instead. 1407func (*Overlay) Descriptor() ([]byte, []int) { 1408 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12} 1409} 1410 1411func (x *Overlay) GetImage() *Overlay_Image { 1412 if x != nil { 1413 return x.Image 1414 } 1415 return nil 1416} 1417 1418func (x *Overlay) GetAnimations() []*Overlay_Animation { 1419 if x != nil { 1420 return x.Animations 1421 } 1422 return nil 1423} 1424 1425// Preprocessing configurations. 1426type PreprocessingConfig struct { 1427 state protoimpl.MessageState 1428 sizeCache protoimpl.SizeCache 1429 unknownFields protoimpl.UnknownFields 1430 1431 // Color preprocessing configuration. 1432 Color *PreprocessingConfig_Color `protobuf:"bytes,1,opt,name=color,proto3" json:"color,omitempty"` 1433 // Denoise preprocessing configuration. 1434 Denoise *PreprocessingConfig_Denoise `protobuf:"bytes,2,opt,name=denoise,proto3" json:"denoise,omitempty"` 1435 // Deblock preprocessing configuration. 1436 Deblock *PreprocessingConfig_Deblock `protobuf:"bytes,3,opt,name=deblock,proto3" json:"deblock,omitempty"` 1437 // Audio preprocessing configuration. 1438 Audio *PreprocessingConfig_Audio `protobuf:"bytes,4,opt,name=audio,proto3" json:"audio,omitempty"` 1439 // Specify the video cropping configuration. 1440 Crop *PreprocessingConfig_Crop `protobuf:"bytes,5,opt,name=crop,proto3" json:"crop,omitempty"` 1441 // Specify the video pad filter configuration. 1442 Pad *PreprocessingConfig_Pad `protobuf:"bytes,6,opt,name=pad,proto3" json:"pad,omitempty"` 1443} 1444 1445func (x *PreprocessingConfig) Reset() { 1446 *x = PreprocessingConfig{} 1447 if protoimpl.UnsafeEnabled { 1448 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[13] 1449 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1450 ms.StoreMessageInfo(mi) 1451 } 1452} 1453 1454func (x *PreprocessingConfig) String() string { 1455 return protoimpl.X.MessageStringOf(x) 1456} 1457 1458func (*PreprocessingConfig) ProtoMessage() {} 1459 1460func (x *PreprocessingConfig) ProtoReflect() protoreflect.Message { 1461 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[13] 1462 if protoimpl.UnsafeEnabled && x != nil { 1463 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1464 if ms.LoadMessageInfo() == nil { 1465 ms.StoreMessageInfo(mi) 1466 } 1467 return ms 1468 } 1469 return mi.MessageOf(x) 1470} 1471 1472// Deprecated: Use PreprocessingConfig.ProtoReflect.Descriptor instead. 1473func (*PreprocessingConfig) Descriptor() ([]byte, []int) { 1474 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{13} 1475} 1476 1477func (x *PreprocessingConfig) GetColor() *PreprocessingConfig_Color { 1478 if x != nil { 1479 return x.Color 1480 } 1481 return nil 1482} 1483 1484func (x *PreprocessingConfig) GetDenoise() *PreprocessingConfig_Denoise { 1485 if x != nil { 1486 return x.Denoise 1487 } 1488 return nil 1489} 1490 1491func (x *PreprocessingConfig) GetDeblock() *PreprocessingConfig_Deblock { 1492 if x != nil { 1493 return x.Deblock 1494 } 1495 return nil 1496} 1497 1498func (x *PreprocessingConfig) GetAudio() *PreprocessingConfig_Audio { 1499 if x != nil { 1500 return x.Audio 1501 } 1502 return nil 1503} 1504 1505func (x *PreprocessingConfig) GetCrop() *PreprocessingConfig_Crop { 1506 if x != nil { 1507 return x.Crop 1508 } 1509 return nil 1510} 1511 1512func (x *PreprocessingConfig) GetPad() *PreprocessingConfig_Pad { 1513 if x != nil { 1514 return x.Pad 1515 } 1516 return nil 1517} 1518 1519// Video stream resource. 1520type VideoStream struct { 1521 state protoimpl.MessageState 1522 sizeCache protoimpl.SizeCache 1523 unknownFields protoimpl.UnknownFields 1524 1525 // Codec settings can be h264, h265, or vp9. 1526 // 1527 // Types that are assignable to CodecSettings: 1528 // *VideoStream_H264 1529 // *VideoStream_H265 1530 // *VideoStream_Vp9 1531 CodecSettings isVideoStream_CodecSettings `protobuf_oneof:"codec_settings"` 1532} 1533 1534func (x *VideoStream) Reset() { 1535 *x = VideoStream{} 1536 if protoimpl.UnsafeEnabled { 1537 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[14] 1538 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1539 ms.StoreMessageInfo(mi) 1540 } 1541} 1542 1543func (x *VideoStream) String() string { 1544 return protoimpl.X.MessageStringOf(x) 1545} 1546 1547func (*VideoStream) ProtoMessage() {} 1548 1549func (x *VideoStream) ProtoReflect() protoreflect.Message { 1550 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[14] 1551 if protoimpl.UnsafeEnabled && x != nil { 1552 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1553 if ms.LoadMessageInfo() == nil { 1554 ms.StoreMessageInfo(mi) 1555 } 1556 return ms 1557 } 1558 return mi.MessageOf(x) 1559} 1560 1561// Deprecated: Use VideoStream.ProtoReflect.Descriptor instead. 1562func (*VideoStream) Descriptor() ([]byte, []int) { 1563 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{14} 1564} 1565 1566func (m *VideoStream) GetCodecSettings() isVideoStream_CodecSettings { 1567 if m != nil { 1568 return m.CodecSettings 1569 } 1570 return nil 1571} 1572 1573func (x *VideoStream) GetH264() *VideoStream_H264CodecSettings { 1574 if x, ok := x.GetCodecSettings().(*VideoStream_H264); ok { 1575 return x.H264 1576 } 1577 return nil 1578} 1579 1580func (x *VideoStream) GetH265() *VideoStream_H265CodecSettings { 1581 if x, ok := x.GetCodecSettings().(*VideoStream_H265); ok { 1582 return x.H265 1583 } 1584 return nil 1585} 1586 1587func (x *VideoStream) GetVp9() *VideoStream_Vp9CodecSettings { 1588 if x, ok := x.GetCodecSettings().(*VideoStream_Vp9); ok { 1589 return x.Vp9 1590 } 1591 return nil 1592} 1593 1594type isVideoStream_CodecSettings interface { 1595 isVideoStream_CodecSettings() 1596} 1597 1598type VideoStream_H264 struct { 1599 // H264 codec settings. 1600 H264 *VideoStream_H264CodecSettings `protobuf:"bytes,1,opt,name=h264,proto3,oneof"` 1601} 1602 1603type VideoStream_H265 struct { 1604 // H265 codec settings. 1605 H265 *VideoStream_H265CodecSettings `protobuf:"bytes,2,opt,name=h265,proto3,oneof"` 1606} 1607 1608type VideoStream_Vp9 struct { 1609 // VP9 codec settings. 1610 Vp9 *VideoStream_Vp9CodecSettings `protobuf:"bytes,3,opt,name=vp9,proto3,oneof"` 1611} 1612 1613func (*VideoStream_H264) isVideoStream_CodecSettings() {} 1614 1615func (*VideoStream_H265) isVideoStream_CodecSettings() {} 1616 1617func (*VideoStream_Vp9) isVideoStream_CodecSettings() {} 1618 1619// Audio stream resource. 1620type AudioStream struct { 1621 state protoimpl.MessageState 1622 sizeCache protoimpl.SizeCache 1623 unknownFields protoimpl.UnknownFields 1624 1625 // The codec for this audio stream. The default is `"aac"`. 1626 // 1627 // Supported audio codecs: 1628 // - 'aac' 1629 // - 'aac-he' 1630 // - 'aac-he-v2' 1631 // - 'mp3' 1632 // - 'ac3' 1633 // - 'eac3' 1634 Codec string `protobuf:"bytes,1,opt,name=codec,proto3" json:"codec,omitempty"` 1635 // Required. Audio bitrate in bits per second. Must be between 1 and 10,000,000. 1636 BitrateBps int32 `protobuf:"varint,2,opt,name=bitrate_bps,json=bitrateBps,proto3" json:"bitrate_bps,omitempty"` 1637 // Number of audio channels. Must be between 1 and 6. The default is 2. 1638 ChannelCount int32 `protobuf:"varint,3,opt,name=channel_count,json=channelCount,proto3" json:"channel_count,omitempty"` 1639 // A list of channel names specifying layout of the audio channels. 1640 // This only affects the metadata embedded in the container headers, if 1641 // supported by the specified format. The default is `["fl", "fr"]`. 1642 // 1643 // Supported channel names: 1644 // - 'fl' - Front left channel 1645 // - 'fr' - Front right channel 1646 // - 'sl' - Side left channel 1647 // - 'sr' - Side right channel 1648 // - 'fc' - Front center channel 1649 // - 'lfe' - Low frequency 1650 ChannelLayout []string `protobuf:"bytes,4,rep,name=channel_layout,json=channelLayout,proto3" json:"channel_layout,omitempty"` 1651 // The mapping for the `Job.edit_list` atoms with audio `EditAtom.inputs`. 1652 Mapping []*AudioStream_AudioMapping `protobuf:"bytes,5,rep,name=mapping,proto3" json:"mapping,omitempty"` 1653 // The audio sample rate in Hertz. The default is 48000 Hertz. 1654 SampleRateHertz int32 `protobuf:"varint,6,opt,name=sample_rate_hertz,json=sampleRateHertz,proto3" json:"sample_rate_hertz,omitempty"` 1655} 1656 1657func (x *AudioStream) Reset() { 1658 *x = AudioStream{} 1659 if protoimpl.UnsafeEnabled { 1660 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[15] 1661 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1662 ms.StoreMessageInfo(mi) 1663 } 1664} 1665 1666func (x *AudioStream) String() string { 1667 return protoimpl.X.MessageStringOf(x) 1668} 1669 1670func (*AudioStream) ProtoMessage() {} 1671 1672func (x *AudioStream) ProtoReflect() protoreflect.Message { 1673 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[15] 1674 if protoimpl.UnsafeEnabled && x != nil { 1675 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1676 if ms.LoadMessageInfo() == nil { 1677 ms.StoreMessageInfo(mi) 1678 } 1679 return ms 1680 } 1681 return mi.MessageOf(x) 1682} 1683 1684// Deprecated: Use AudioStream.ProtoReflect.Descriptor instead. 1685func (*AudioStream) Descriptor() ([]byte, []int) { 1686 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{15} 1687} 1688 1689func (x *AudioStream) GetCodec() string { 1690 if x != nil { 1691 return x.Codec 1692 } 1693 return "" 1694} 1695 1696func (x *AudioStream) GetBitrateBps() int32 { 1697 if x != nil { 1698 return x.BitrateBps 1699 } 1700 return 0 1701} 1702 1703func (x *AudioStream) GetChannelCount() int32 { 1704 if x != nil { 1705 return x.ChannelCount 1706 } 1707 return 0 1708} 1709 1710func (x *AudioStream) GetChannelLayout() []string { 1711 if x != nil { 1712 return x.ChannelLayout 1713 } 1714 return nil 1715} 1716 1717func (x *AudioStream) GetMapping() []*AudioStream_AudioMapping { 1718 if x != nil { 1719 return x.Mapping 1720 } 1721 return nil 1722} 1723 1724func (x *AudioStream) GetSampleRateHertz() int32 { 1725 if x != nil { 1726 return x.SampleRateHertz 1727 } 1728 return 0 1729} 1730 1731// Encoding of a text stream. For example, closed captions or subtitles. 1732type TextStream struct { 1733 state protoimpl.MessageState 1734 sizeCache protoimpl.SizeCache 1735 unknownFields protoimpl.UnknownFields 1736 1737 // The codec for this text stream. The default is `"webvtt"`. 1738 // 1739 // Supported text codecs: 1740 // - 'srt' 1741 // - 'ttml' 1742 // - 'cea608' 1743 // - 'cea708' 1744 // - 'webvtt' 1745 Codec string `protobuf:"bytes,1,opt,name=codec,proto3" json:"codec,omitempty"` 1746 // The mapping for the `Job.edit_list` atoms with text `EditAtom.inputs`. 1747 Mapping []*TextStream_TextMapping `protobuf:"bytes,3,rep,name=mapping,proto3" json:"mapping,omitempty"` 1748} 1749 1750func (x *TextStream) Reset() { 1751 *x = TextStream{} 1752 if protoimpl.UnsafeEnabled { 1753 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[16] 1754 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1755 ms.StoreMessageInfo(mi) 1756 } 1757} 1758 1759func (x *TextStream) String() string { 1760 return protoimpl.X.MessageStringOf(x) 1761} 1762 1763func (*TextStream) ProtoMessage() {} 1764 1765func (x *TextStream) ProtoReflect() protoreflect.Message { 1766 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[16] 1767 if protoimpl.UnsafeEnabled && x != nil { 1768 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1769 if ms.LoadMessageInfo() == nil { 1770 ms.StoreMessageInfo(mi) 1771 } 1772 return ms 1773 } 1774 return mi.MessageOf(x) 1775} 1776 1777// Deprecated: Use TextStream.ProtoReflect.Descriptor instead. 1778func (*TextStream) Descriptor() ([]byte, []int) { 1779 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{16} 1780} 1781 1782func (x *TextStream) GetCodec() string { 1783 if x != nil { 1784 return x.Codec 1785 } 1786 return "" 1787} 1788 1789func (x *TextStream) GetMapping() []*TextStream_TextMapping { 1790 if x != nil { 1791 return x.Mapping 1792 } 1793 return nil 1794} 1795 1796// Segment settings for `"ts"`, `"fmp4"` and `"vtt"`. 1797type SegmentSettings struct { 1798 state protoimpl.MessageState 1799 sizeCache protoimpl.SizeCache 1800 unknownFields protoimpl.UnknownFields 1801 1802 // Duration of the segments in seconds. The default is `"6.0s"`. Note that 1803 // `segmentDuration` must be greater than or equal to 1804 // [`gopDuration`](#videostream), and `segmentDuration` must be divisible by 1805 // [`gopDuration`](#videostream). 1806 SegmentDuration *durationpb.Duration `protobuf:"bytes,1,opt,name=segment_duration,json=segmentDuration,proto3" json:"segment_duration,omitempty"` 1807 // Required. Create an individual segment file. The default is `false`. 1808 IndividualSegments bool `protobuf:"varint,3,opt,name=individual_segments,json=individualSegments,proto3" json:"individual_segments,omitempty"` 1809} 1810 1811func (x *SegmentSettings) Reset() { 1812 *x = SegmentSettings{} 1813 if protoimpl.UnsafeEnabled { 1814 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[17] 1815 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1816 ms.StoreMessageInfo(mi) 1817 } 1818} 1819 1820func (x *SegmentSettings) String() string { 1821 return protoimpl.X.MessageStringOf(x) 1822} 1823 1824func (*SegmentSettings) ProtoMessage() {} 1825 1826func (x *SegmentSettings) ProtoReflect() protoreflect.Message { 1827 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[17] 1828 if protoimpl.UnsafeEnabled && x != nil { 1829 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1830 if ms.LoadMessageInfo() == nil { 1831 ms.StoreMessageInfo(mi) 1832 } 1833 return ms 1834 } 1835 return mi.MessageOf(x) 1836} 1837 1838// Deprecated: Use SegmentSettings.ProtoReflect.Descriptor instead. 1839func (*SegmentSettings) Descriptor() ([]byte, []int) { 1840 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{17} 1841} 1842 1843func (x *SegmentSettings) GetSegmentDuration() *durationpb.Duration { 1844 if x != nil { 1845 return x.SegmentDuration 1846 } 1847 return nil 1848} 1849 1850func (x *SegmentSettings) GetIndividualSegments() bool { 1851 if x != nil { 1852 return x.IndividualSegments 1853 } 1854 return false 1855} 1856 1857// Encryption settings. 1858type Encryption struct { 1859 state protoimpl.MessageState 1860 sizeCache protoimpl.SizeCache 1861 unknownFields protoimpl.UnknownFields 1862 1863 // Required. 128 bit encryption key represented as lowercase hexadecimal digits. 1864 Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` 1865 // Required. 128 bit Initialization Vector (IV) represented as lowercase hexadecimal 1866 // digits. 1867 Iv string `protobuf:"bytes,2,opt,name=iv,proto3" json:"iv,omitempty"` 1868 // Encryption mode can be either `aes` or `cenc`. 1869 // 1870 // Types that are assignable to EncryptionMode: 1871 // *Encryption_Aes_128 1872 // *Encryption_SampleAes 1873 // *Encryption_MpegCenc 1874 EncryptionMode isEncryption_EncryptionMode `protobuf_oneof:"encryption_mode"` 1875} 1876 1877func (x *Encryption) Reset() { 1878 *x = Encryption{} 1879 if protoimpl.UnsafeEnabled { 1880 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[18] 1881 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1882 ms.StoreMessageInfo(mi) 1883 } 1884} 1885 1886func (x *Encryption) String() string { 1887 return protoimpl.X.MessageStringOf(x) 1888} 1889 1890func (*Encryption) ProtoMessage() {} 1891 1892func (x *Encryption) ProtoReflect() protoreflect.Message { 1893 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[18] 1894 if protoimpl.UnsafeEnabled && x != nil { 1895 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1896 if ms.LoadMessageInfo() == nil { 1897 ms.StoreMessageInfo(mi) 1898 } 1899 return ms 1900 } 1901 return mi.MessageOf(x) 1902} 1903 1904// Deprecated: Use Encryption.ProtoReflect.Descriptor instead. 1905func (*Encryption) Descriptor() ([]byte, []int) { 1906 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{18} 1907} 1908 1909func (x *Encryption) GetKey() string { 1910 if x != nil { 1911 return x.Key 1912 } 1913 return "" 1914} 1915 1916func (x *Encryption) GetIv() string { 1917 if x != nil { 1918 return x.Iv 1919 } 1920 return "" 1921} 1922 1923func (m *Encryption) GetEncryptionMode() isEncryption_EncryptionMode { 1924 if m != nil { 1925 return m.EncryptionMode 1926 } 1927 return nil 1928} 1929 1930func (x *Encryption) GetAes_128() *Encryption_Aes128Encryption { 1931 if x, ok := x.GetEncryptionMode().(*Encryption_Aes_128); ok { 1932 return x.Aes_128 1933 } 1934 return nil 1935} 1936 1937func (x *Encryption) GetSampleAes() *Encryption_SampleAesEncryption { 1938 if x, ok := x.GetEncryptionMode().(*Encryption_SampleAes); ok { 1939 return x.SampleAes 1940 } 1941 return nil 1942} 1943 1944func (x *Encryption) GetMpegCenc() *Encryption_MpegCommonEncryption { 1945 if x, ok := x.GetEncryptionMode().(*Encryption_MpegCenc); ok { 1946 return x.MpegCenc 1947 } 1948 return nil 1949} 1950 1951type isEncryption_EncryptionMode interface { 1952 isEncryption_EncryptionMode() 1953} 1954 1955type Encryption_Aes_128 struct { 1956 // Configuration for AES-128 encryption. 1957 Aes_128 *Encryption_Aes128Encryption `protobuf:"bytes,3,opt,name=aes_128,json=aes128,proto3,oneof"` 1958} 1959 1960type Encryption_SampleAes struct { 1961 // Configuration for SAMPLE-AES encryption. 1962 SampleAes *Encryption_SampleAesEncryption `protobuf:"bytes,4,opt,name=sample_aes,json=sampleAes,proto3,oneof"` 1963} 1964 1965type Encryption_MpegCenc struct { 1966 // Configuration for MPEG Common Encryption (MPEG-CENC). 1967 MpegCenc *Encryption_MpegCommonEncryption `protobuf:"bytes,5,opt,name=mpeg_cenc,json=mpegCenc,proto3,oneof"` 1968} 1969 1970func (*Encryption_Aes_128) isEncryption_EncryptionMode() {} 1971 1972func (*Encryption_SampleAes) isEncryption_EncryptionMode() {} 1973 1974func (*Encryption_MpegCenc) isEncryption_EncryptionMode() {} 1975 1976// 2D normalized coordinates. Default: `{0.0, 0.0}` 1977type Overlay_NormalizedCoordinate struct { 1978 state protoimpl.MessageState 1979 sizeCache protoimpl.SizeCache 1980 unknownFields protoimpl.UnknownFields 1981 1982 // Normalized x coordinate. 1983 X float64 `protobuf:"fixed64,1,opt,name=x,proto3" json:"x,omitempty"` 1984 // Normalized y coordinate. 1985 Y float64 `protobuf:"fixed64,2,opt,name=y,proto3" json:"y,omitempty"` 1986} 1987 1988func (x *Overlay_NormalizedCoordinate) Reset() { 1989 *x = Overlay_NormalizedCoordinate{} 1990 if protoimpl.UnsafeEnabled { 1991 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[19] 1992 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1993 ms.StoreMessageInfo(mi) 1994 } 1995} 1996 1997func (x *Overlay_NormalizedCoordinate) String() string { 1998 return protoimpl.X.MessageStringOf(x) 1999} 2000 2001func (*Overlay_NormalizedCoordinate) ProtoMessage() {} 2002 2003func (x *Overlay_NormalizedCoordinate) ProtoReflect() protoreflect.Message { 2004 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[19] 2005 if protoimpl.UnsafeEnabled && x != nil { 2006 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2007 if ms.LoadMessageInfo() == nil { 2008 ms.StoreMessageInfo(mi) 2009 } 2010 return ms 2011 } 2012 return mi.MessageOf(x) 2013} 2014 2015// Deprecated: Use Overlay_NormalizedCoordinate.ProtoReflect.Descriptor instead. 2016func (*Overlay_NormalizedCoordinate) Descriptor() ([]byte, []int) { 2017 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12, 0} 2018} 2019 2020func (x *Overlay_NormalizedCoordinate) GetX() float64 { 2021 if x != nil { 2022 return x.X 2023 } 2024 return 0 2025} 2026 2027func (x *Overlay_NormalizedCoordinate) GetY() float64 { 2028 if x != nil { 2029 return x.Y 2030 } 2031 return 0 2032} 2033 2034// Overlaid jpeg image. 2035type Overlay_Image struct { 2036 state protoimpl.MessageState 2037 sizeCache protoimpl.SizeCache 2038 unknownFields protoimpl.UnknownFields 2039 2040 // Required. URI of the JPEG image in Cloud Storage. For example, 2041 // `gs://bucket/inputs/image.jpeg`. JPEG is the only supported image type. 2042 Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"` 2043 // Normalized image resolution, based on output video resolution. Valid 2044 // values: `0.0`–`1.0`. To respect the original image aspect ratio, set 2045 // either `x` or `y` to `0.0`. To use the original image resolution, set 2046 // both `x` and `y` to `0.0`. 2047 Resolution *Overlay_NormalizedCoordinate `protobuf:"bytes,2,opt,name=resolution,proto3" json:"resolution,omitempty"` 2048 // Target image opacity. Valid values are from `1.0` (solid, default) to 2049 // `0.0` (transparent), exclusive. Set this to a value greater than `0.0`. 2050 Alpha float64 `protobuf:"fixed64,3,opt,name=alpha,proto3" json:"alpha,omitempty"` 2051} 2052 2053func (x *Overlay_Image) Reset() { 2054 *x = Overlay_Image{} 2055 if protoimpl.UnsafeEnabled { 2056 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[20] 2057 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2058 ms.StoreMessageInfo(mi) 2059 } 2060} 2061 2062func (x *Overlay_Image) String() string { 2063 return protoimpl.X.MessageStringOf(x) 2064} 2065 2066func (*Overlay_Image) ProtoMessage() {} 2067 2068func (x *Overlay_Image) ProtoReflect() protoreflect.Message { 2069 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[20] 2070 if protoimpl.UnsafeEnabled && x != nil { 2071 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2072 if ms.LoadMessageInfo() == nil { 2073 ms.StoreMessageInfo(mi) 2074 } 2075 return ms 2076 } 2077 return mi.MessageOf(x) 2078} 2079 2080// Deprecated: Use Overlay_Image.ProtoReflect.Descriptor instead. 2081func (*Overlay_Image) Descriptor() ([]byte, []int) { 2082 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12, 1} 2083} 2084 2085func (x *Overlay_Image) GetUri() string { 2086 if x != nil { 2087 return x.Uri 2088 } 2089 return "" 2090} 2091 2092func (x *Overlay_Image) GetResolution() *Overlay_NormalizedCoordinate { 2093 if x != nil { 2094 return x.Resolution 2095 } 2096 return nil 2097} 2098 2099func (x *Overlay_Image) GetAlpha() float64 { 2100 if x != nil { 2101 return x.Alpha 2102 } 2103 return 0 2104} 2105 2106// Display static overlay object. 2107type Overlay_AnimationStatic struct { 2108 state protoimpl.MessageState 2109 sizeCache protoimpl.SizeCache 2110 unknownFields protoimpl.UnknownFields 2111 2112 // Normalized coordinates based on output video resolution. Valid 2113 // values: `0.0`–`1.0`. `xy` is the upper-left coordinate of the overlay 2114 // object. For example, use the x and y coordinates {0,0} to position the 2115 // top-left corner of the overlay animation in the top-left corner of the 2116 // output video. 2117 Xy *Overlay_NormalizedCoordinate `protobuf:"bytes,1,opt,name=xy,proto3" json:"xy,omitempty"` 2118 // The time to start displaying the overlay object, in seconds. Default: 0 2119 StartTimeOffset *durationpb.Duration `protobuf:"bytes,2,opt,name=start_time_offset,json=startTimeOffset,proto3" json:"start_time_offset,omitempty"` 2120} 2121 2122func (x *Overlay_AnimationStatic) Reset() { 2123 *x = Overlay_AnimationStatic{} 2124 if protoimpl.UnsafeEnabled { 2125 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[21] 2126 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2127 ms.StoreMessageInfo(mi) 2128 } 2129} 2130 2131func (x *Overlay_AnimationStatic) String() string { 2132 return protoimpl.X.MessageStringOf(x) 2133} 2134 2135func (*Overlay_AnimationStatic) ProtoMessage() {} 2136 2137func (x *Overlay_AnimationStatic) ProtoReflect() protoreflect.Message { 2138 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[21] 2139 if protoimpl.UnsafeEnabled && x != nil { 2140 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2141 if ms.LoadMessageInfo() == nil { 2142 ms.StoreMessageInfo(mi) 2143 } 2144 return ms 2145 } 2146 return mi.MessageOf(x) 2147} 2148 2149// Deprecated: Use Overlay_AnimationStatic.ProtoReflect.Descriptor instead. 2150func (*Overlay_AnimationStatic) Descriptor() ([]byte, []int) { 2151 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12, 2} 2152} 2153 2154func (x *Overlay_AnimationStatic) GetXy() *Overlay_NormalizedCoordinate { 2155 if x != nil { 2156 return x.Xy 2157 } 2158 return nil 2159} 2160 2161func (x *Overlay_AnimationStatic) GetStartTimeOffset() *durationpb.Duration { 2162 if x != nil { 2163 return x.StartTimeOffset 2164 } 2165 return nil 2166} 2167 2168// Display overlay object with fade animation. 2169type Overlay_AnimationFade struct { 2170 state protoimpl.MessageState 2171 sizeCache protoimpl.SizeCache 2172 unknownFields protoimpl.UnknownFields 2173 2174 // Required. Type of fade animation: `FADE_IN` or `FADE_OUT`. 2175 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"` 2176 // Normalized coordinates based on output video resolution. Valid 2177 // values: `0.0`–`1.0`. `xy` is the upper-left coordinate of the overlay 2178 // object. For example, use the x and y coordinates {0,0} to position the 2179 // top-left corner of the overlay animation in the top-left corner of the 2180 // output video. 2181 Xy *Overlay_NormalizedCoordinate `protobuf:"bytes,2,opt,name=xy,proto3" json:"xy,omitempty"` 2182 // The time to start the fade animation, in seconds. Default: 0 2183 StartTimeOffset *durationpb.Duration `protobuf:"bytes,3,opt,name=start_time_offset,json=startTimeOffset,proto3" json:"start_time_offset,omitempty"` 2184 // The time to end the fade animation, in seconds. Default: 2185 // `start_time_offset` + 1s 2186 EndTimeOffset *durationpb.Duration `protobuf:"bytes,4,opt,name=end_time_offset,json=endTimeOffset,proto3" json:"end_time_offset,omitempty"` 2187} 2188 2189func (x *Overlay_AnimationFade) Reset() { 2190 *x = Overlay_AnimationFade{} 2191 if protoimpl.UnsafeEnabled { 2192 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[22] 2193 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2194 ms.StoreMessageInfo(mi) 2195 } 2196} 2197 2198func (x *Overlay_AnimationFade) String() string { 2199 return protoimpl.X.MessageStringOf(x) 2200} 2201 2202func (*Overlay_AnimationFade) ProtoMessage() {} 2203 2204func (x *Overlay_AnimationFade) ProtoReflect() protoreflect.Message { 2205 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[22] 2206 if protoimpl.UnsafeEnabled && x != nil { 2207 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2208 if ms.LoadMessageInfo() == nil { 2209 ms.StoreMessageInfo(mi) 2210 } 2211 return ms 2212 } 2213 return mi.MessageOf(x) 2214} 2215 2216// Deprecated: Use Overlay_AnimationFade.ProtoReflect.Descriptor instead. 2217func (*Overlay_AnimationFade) Descriptor() ([]byte, []int) { 2218 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12, 3} 2219} 2220 2221func (x *Overlay_AnimationFade) GetFadeType() Overlay_FadeType { 2222 if x != nil { 2223 return x.FadeType 2224 } 2225 return Overlay_FADE_TYPE_UNSPECIFIED 2226} 2227 2228func (x *Overlay_AnimationFade) GetXy() *Overlay_NormalizedCoordinate { 2229 if x != nil { 2230 return x.Xy 2231 } 2232 return nil 2233} 2234 2235func (x *Overlay_AnimationFade) GetStartTimeOffset() *durationpb.Duration { 2236 if x != nil { 2237 return x.StartTimeOffset 2238 } 2239 return nil 2240} 2241 2242func (x *Overlay_AnimationFade) GetEndTimeOffset() *durationpb.Duration { 2243 if x != nil { 2244 return x.EndTimeOffset 2245 } 2246 return nil 2247} 2248 2249// End previous overlay animation from the video. Without AnimationEnd, the 2250// overlay object will keep the state of previous animation until the end of 2251// the video. 2252type Overlay_AnimationEnd struct { 2253 state protoimpl.MessageState 2254 sizeCache protoimpl.SizeCache 2255 unknownFields protoimpl.UnknownFields 2256 2257 // The time to end overlay object, in seconds. Default: 0 2258 StartTimeOffset *durationpb.Duration `protobuf:"bytes,1,opt,name=start_time_offset,json=startTimeOffset,proto3" json:"start_time_offset,omitempty"` 2259} 2260 2261func (x *Overlay_AnimationEnd) Reset() { 2262 *x = Overlay_AnimationEnd{} 2263 if protoimpl.UnsafeEnabled { 2264 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[23] 2265 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2266 ms.StoreMessageInfo(mi) 2267 } 2268} 2269 2270func (x *Overlay_AnimationEnd) String() string { 2271 return protoimpl.X.MessageStringOf(x) 2272} 2273 2274func (*Overlay_AnimationEnd) ProtoMessage() {} 2275 2276func (x *Overlay_AnimationEnd) ProtoReflect() protoreflect.Message { 2277 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[23] 2278 if protoimpl.UnsafeEnabled && x != nil { 2279 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2280 if ms.LoadMessageInfo() == nil { 2281 ms.StoreMessageInfo(mi) 2282 } 2283 return ms 2284 } 2285 return mi.MessageOf(x) 2286} 2287 2288// Deprecated: Use Overlay_AnimationEnd.ProtoReflect.Descriptor instead. 2289func (*Overlay_AnimationEnd) Descriptor() ([]byte, []int) { 2290 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12, 4} 2291} 2292 2293func (x *Overlay_AnimationEnd) GetStartTimeOffset() *durationpb.Duration { 2294 if x != nil { 2295 return x.StartTimeOffset 2296 } 2297 return nil 2298} 2299 2300// Animation types. 2301type Overlay_Animation struct { 2302 state protoimpl.MessageState 2303 sizeCache protoimpl.SizeCache 2304 unknownFields protoimpl.UnknownFields 2305 2306 // Animations can be static or fade, or they can end the previous animation. 2307 // 2308 // Types that are assignable to AnimationType: 2309 // *Overlay_Animation_AnimationStatic 2310 // *Overlay_Animation_AnimationFade 2311 // *Overlay_Animation_AnimationEnd 2312 AnimationType isOverlay_Animation_AnimationType `protobuf_oneof:"animation_type"` 2313} 2314 2315func (x *Overlay_Animation) Reset() { 2316 *x = Overlay_Animation{} 2317 if protoimpl.UnsafeEnabled { 2318 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[24] 2319 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2320 ms.StoreMessageInfo(mi) 2321 } 2322} 2323 2324func (x *Overlay_Animation) String() string { 2325 return protoimpl.X.MessageStringOf(x) 2326} 2327 2328func (*Overlay_Animation) ProtoMessage() {} 2329 2330func (x *Overlay_Animation) ProtoReflect() protoreflect.Message { 2331 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[24] 2332 if protoimpl.UnsafeEnabled && x != nil { 2333 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2334 if ms.LoadMessageInfo() == nil { 2335 ms.StoreMessageInfo(mi) 2336 } 2337 return ms 2338 } 2339 return mi.MessageOf(x) 2340} 2341 2342// Deprecated: Use Overlay_Animation.ProtoReflect.Descriptor instead. 2343func (*Overlay_Animation) Descriptor() ([]byte, []int) { 2344 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{12, 5} 2345} 2346 2347func (m *Overlay_Animation) GetAnimationType() isOverlay_Animation_AnimationType { 2348 if m != nil { 2349 return m.AnimationType 2350 } 2351 return nil 2352} 2353 2354func (x *Overlay_Animation) GetAnimationStatic() *Overlay_AnimationStatic { 2355 if x, ok := x.GetAnimationType().(*Overlay_Animation_AnimationStatic); ok { 2356 return x.AnimationStatic 2357 } 2358 return nil 2359} 2360 2361func (x *Overlay_Animation) GetAnimationFade() *Overlay_AnimationFade { 2362 if x, ok := x.GetAnimationType().(*Overlay_Animation_AnimationFade); ok { 2363 return x.AnimationFade 2364 } 2365 return nil 2366} 2367 2368func (x *Overlay_Animation) GetAnimationEnd() *Overlay_AnimationEnd { 2369 if x, ok := x.GetAnimationType().(*Overlay_Animation_AnimationEnd); ok { 2370 return x.AnimationEnd 2371 } 2372 return nil 2373} 2374 2375type isOverlay_Animation_AnimationType interface { 2376 isOverlay_Animation_AnimationType() 2377} 2378 2379type Overlay_Animation_AnimationStatic struct { 2380 // Display static overlay object. 2381 AnimationStatic *Overlay_AnimationStatic `protobuf:"bytes,1,opt,name=animation_static,json=animationStatic,proto3,oneof"` 2382} 2383 2384type Overlay_Animation_AnimationFade struct { 2385 // Display overlay object with fade animation. 2386 AnimationFade *Overlay_AnimationFade `protobuf:"bytes,2,opt,name=animation_fade,json=animationFade,proto3,oneof"` 2387} 2388 2389type Overlay_Animation_AnimationEnd struct { 2390 // End previous animation. 2391 AnimationEnd *Overlay_AnimationEnd `protobuf:"bytes,3,opt,name=animation_end,json=animationEnd,proto3,oneof"` 2392} 2393 2394func (*Overlay_Animation_AnimationStatic) isOverlay_Animation_AnimationType() {} 2395 2396func (*Overlay_Animation_AnimationFade) isOverlay_Animation_AnimationType() {} 2397 2398func (*Overlay_Animation_AnimationEnd) isOverlay_Animation_AnimationType() {} 2399 2400// Color preprocessing configuration. 2401type PreprocessingConfig_Color struct { 2402 state protoimpl.MessageState 2403 sizeCache protoimpl.SizeCache 2404 unknownFields protoimpl.UnknownFields 2405 2406 // Control color saturation of the video. Enter a value between -1 and 1, 2407 // where -1 is fully desaturated and 1 is maximum saturation. 0 is no 2408 // change. The default is 0. 2409 Saturation float64 `protobuf:"fixed64,1,opt,name=saturation,proto3" json:"saturation,omitempty"` 2410 // Control black and white contrast of the video. Enter a value between -1 2411 // and 1, where -1 is minimum contrast and 1 is maximum contrast. 0 is no 2412 // change. The default is 0. 2413 Contrast float64 `protobuf:"fixed64,2,opt,name=contrast,proto3" json:"contrast,omitempty"` 2414 // Control brightness of the video. Enter a value between -1 and 1, where -1 2415 // is minimum brightness and 1 is maximum brightness. 0 is no change. The 2416 // default is 0. 2417 Brightness float64 `protobuf:"fixed64,3,opt,name=brightness,proto3" json:"brightness,omitempty"` 2418} 2419 2420func (x *PreprocessingConfig_Color) Reset() { 2421 *x = PreprocessingConfig_Color{} 2422 if protoimpl.UnsafeEnabled { 2423 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[25] 2424 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2425 ms.StoreMessageInfo(mi) 2426 } 2427} 2428 2429func (x *PreprocessingConfig_Color) String() string { 2430 return protoimpl.X.MessageStringOf(x) 2431} 2432 2433func (*PreprocessingConfig_Color) ProtoMessage() {} 2434 2435func (x *PreprocessingConfig_Color) ProtoReflect() protoreflect.Message { 2436 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[25] 2437 if protoimpl.UnsafeEnabled && x != nil { 2438 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2439 if ms.LoadMessageInfo() == nil { 2440 ms.StoreMessageInfo(mi) 2441 } 2442 return ms 2443 } 2444 return mi.MessageOf(x) 2445} 2446 2447// Deprecated: Use PreprocessingConfig_Color.ProtoReflect.Descriptor instead. 2448func (*PreprocessingConfig_Color) Descriptor() ([]byte, []int) { 2449 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{13, 0} 2450} 2451 2452func (x *PreprocessingConfig_Color) GetSaturation() float64 { 2453 if x != nil { 2454 return x.Saturation 2455 } 2456 return 0 2457} 2458 2459func (x *PreprocessingConfig_Color) GetContrast() float64 { 2460 if x != nil { 2461 return x.Contrast 2462 } 2463 return 0 2464} 2465 2466func (x *PreprocessingConfig_Color) GetBrightness() float64 { 2467 if x != nil { 2468 return x.Brightness 2469 } 2470 return 0 2471} 2472 2473// Denoise preprocessing configuration. 2474type PreprocessingConfig_Denoise struct { 2475 state protoimpl.MessageState 2476 sizeCache protoimpl.SizeCache 2477 unknownFields protoimpl.UnknownFields 2478 2479 // Set strength of the denoise. Enter a value between 0 and 1. The higher 2480 // the value, the smoother the image. 0 is no denoising. The default is 0. 2481 Strength float64 `protobuf:"fixed64,1,opt,name=strength,proto3" json:"strength,omitempty"` 2482 // Set the denoiser mode. The default is `"standard"`. 2483 // 2484 // Supported denoiser modes: 2485 // - 'standard' 2486 // - 'grain' 2487 Tune string `protobuf:"bytes,2,opt,name=tune,proto3" json:"tune,omitempty"` 2488} 2489 2490func (x *PreprocessingConfig_Denoise) Reset() { 2491 *x = PreprocessingConfig_Denoise{} 2492 if protoimpl.UnsafeEnabled { 2493 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[26] 2494 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2495 ms.StoreMessageInfo(mi) 2496 } 2497} 2498 2499func (x *PreprocessingConfig_Denoise) String() string { 2500 return protoimpl.X.MessageStringOf(x) 2501} 2502 2503func (*PreprocessingConfig_Denoise) ProtoMessage() {} 2504 2505func (x *PreprocessingConfig_Denoise) ProtoReflect() protoreflect.Message { 2506 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[26] 2507 if protoimpl.UnsafeEnabled && x != nil { 2508 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2509 if ms.LoadMessageInfo() == nil { 2510 ms.StoreMessageInfo(mi) 2511 } 2512 return ms 2513 } 2514 return mi.MessageOf(x) 2515} 2516 2517// Deprecated: Use PreprocessingConfig_Denoise.ProtoReflect.Descriptor instead. 2518func (*PreprocessingConfig_Denoise) Descriptor() ([]byte, []int) { 2519 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{13, 1} 2520} 2521 2522func (x *PreprocessingConfig_Denoise) GetStrength() float64 { 2523 if x != nil { 2524 return x.Strength 2525 } 2526 return 0 2527} 2528 2529func (x *PreprocessingConfig_Denoise) GetTune() string { 2530 if x != nil { 2531 return x.Tune 2532 } 2533 return "" 2534} 2535 2536// Deblock preprocessing configuration. 2537type PreprocessingConfig_Deblock struct { 2538 state protoimpl.MessageState 2539 sizeCache protoimpl.SizeCache 2540 unknownFields protoimpl.UnknownFields 2541 2542 // Set strength of the deblocker. Enter a value between 0 and 1. The higher 2543 // the value, the stronger the block removal. 0 is no deblocking. The 2544 // default is 0. 2545 Strength float64 `protobuf:"fixed64,1,opt,name=strength,proto3" json:"strength,omitempty"` 2546 // Enable deblocker. The default is `false`. 2547 Enabled bool `protobuf:"varint,2,opt,name=enabled,proto3" json:"enabled,omitempty"` 2548} 2549 2550func (x *PreprocessingConfig_Deblock) Reset() { 2551 *x = PreprocessingConfig_Deblock{} 2552 if protoimpl.UnsafeEnabled { 2553 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[27] 2554 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2555 ms.StoreMessageInfo(mi) 2556 } 2557} 2558 2559func (x *PreprocessingConfig_Deblock) String() string { 2560 return protoimpl.X.MessageStringOf(x) 2561} 2562 2563func (*PreprocessingConfig_Deblock) ProtoMessage() {} 2564 2565func (x *PreprocessingConfig_Deblock) ProtoReflect() protoreflect.Message { 2566 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[27] 2567 if protoimpl.UnsafeEnabled && x != nil { 2568 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2569 if ms.LoadMessageInfo() == nil { 2570 ms.StoreMessageInfo(mi) 2571 } 2572 return ms 2573 } 2574 return mi.MessageOf(x) 2575} 2576 2577// Deprecated: Use PreprocessingConfig_Deblock.ProtoReflect.Descriptor instead. 2578func (*PreprocessingConfig_Deblock) Descriptor() ([]byte, []int) { 2579 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{13, 2} 2580} 2581 2582func (x *PreprocessingConfig_Deblock) GetStrength() float64 { 2583 if x != nil { 2584 return x.Strength 2585 } 2586 return 0 2587} 2588 2589func (x *PreprocessingConfig_Deblock) GetEnabled() bool { 2590 if x != nil { 2591 return x.Enabled 2592 } 2593 return false 2594} 2595 2596// Audio preprocessing configuration. 2597type PreprocessingConfig_Audio struct { 2598 state protoimpl.MessageState 2599 sizeCache protoimpl.SizeCache 2600 unknownFields protoimpl.UnknownFields 2601 2602 // Specify audio loudness normalization in loudness units relative to full 2603 // scale (LUFS). Enter a value between -24 and 0 (the default), where: 2604 // 2605 // * -24 is the Advanced Television Systems Committee (ATSC A/85) standard 2606 // * -23 is the EU R128 broadcast standard 2607 // * -19 is the prior standard for online mono audio 2608 // * -18 is the ReplayGain standard 2609 // * -16 is the prior standard for stereo audio 2610 // * -14 is the new online audio standard recommended by Spotify, as well 2611 // as Amazon Echo 2612 // * 0 disables normalization 2613 Lufs float64 `protobuf:"fixed64,1,opt,name=lufs,proto3" json:"lufs,omitempty"` 2614 // Enable boosting high frequency components. The default is `false`. 2615 HighBoost bool `protobuf:"varint,2,opt,name=high_boost,json=highBoost,proto3" json:"high_boost,omitempty"` 2616 // Enable boosting low frequency components. The default is `false`. 2617 LowBoost bool `protobuf:"varint,3,opt,name=low_boost,json=lowBoost,proto3" json:"low_boost,omitempty"` 2618} 2619 2620func (x *PreprocessingConfig_Audio) Reset() { 2621 *x = PreprocessingConfig_Audio{} 2622 if protoimpl.UnsafeEnabled { 2623 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[28] 2624 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2625 ms.StoreMessageInfo(mi) 2626 } 2627} 2628 2629func (x *PreprocessingConfig_Audio) String() string { 2630 return protoimpl.X.MessageStringOf(x) 2631} 2632 2633func (*PreprocessingConfig_Audio) ProtoMessage() {} 2634 2635func (x *PreprocessingConfig_Audio) ProtoReflect() protoreflect.Message { 2636 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[28] 2637 if protoimpl.UnsafeEnabled && x != nil { 2638 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2639 if ms.LoadMessageInfo() == nil { 2640 ms.StoreMessageInfo(mi) 2641 } 2642 return ms 2643 } 2644 return mi.MessageOf(x) 2645} 2646 2647// Deprecated: Use PreprocessingConfig_Audio.ProtoReflect.Descriptor instead. 2648func (*PreprocessingConfig_Audio) Descriptor() ([]byte, []int) { 2649 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{13, 3} 2650} 2651 2652func (x *PreprocessingConfig_Audio) GetLufs() float64 { 2653 if x != nil { 2654 return x.Lufs 2655 } 2656 return 0 2657} 2658 2659func (x *PreprocessingConfig_Audio) GetHighBoost() bool { 2660 if x != nil { 2661 return x.HighBoost 2662 } 2663 return false 2664} 2665 2666func (x *PreprocessingConfig_Audio) GetLowBoost() bool { 2667 if x != nil { 2668 return x.LowBoost 2669 } 2670 return false 2671} 2672 2673// Video cropping configuration for the input video. The cropped input video 2674// is scaled to match the output resolution. 2675type PreprocessingConfig_Crop struct { 2676 state protoimpl.MessageState 2677 sizeCache protoimpl.SizeCache 2678 unknownFields protoimpl.UnknownFields 2679 2680 // The number of pixels to crop from the top. The default is 0. 2681 TopPixels int32 `protobuf:"varint,1,opt,name=top_pixels,json=topPixels,proto3" json:"top_pixels,omitempty"` 2682 // The number of pixels to crop from the bottom. The default is 0. 2683 BottomPixels int32 `protobuf:"varint,2,opt,name=bottom_pixels,json=bottomPixels,proto3" json:"bottom_pixels,omitempty"` 2684 // The number of pixels to crop from the left. The default is 0. 2685 LeftPixels int32 `protobuf:"varint,3,opt,name=left_pixels,json=leftPixels,proto3" json:"left_pixels,omitempty"` 2686 // The number of pixels to crop from the right. The default is 0. 2687 RightPixels int32 `protobuf:"varint,4,opt,name=right_pixels,json=rightPixels,proto3" json:"right_pixels,omitempty"` 2688} 2689 2690func (x *PreprocessingConfig_Crop) Reset() { 2691 *x = PreprocessingConfig_Crop{} 2692 if protoimpl.UnsafeEnabled { 2693 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[29] 2694 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2695 ms.StoreMessageInfo(mi) 2696 } 2697} 2698 2699func (x *PreprocessingConfig_Crop) String() string { 2700 return protoimpl.X.MessageStringOf(x) 2701} 2702 2703func (*PreprocessingConfig_Crop) ProtoMessage() {} 2704 2705func (x *PreprocessingConfig_Crop) ProtoReflect() protoreflect.Message { 2706 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[29] 2707 if protoimpl.UnsafeEnabled && x != nil { 2708 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2709 if ms.LoadMessageInfo() == nil { 2710 ms.StoreMessageInfo(mi) 2711 } 2712 return ms 2713 } 2714 return mi.MessageOf(x) 2715} 2716 2717// Deprecated: Use PreprocessingConfig_Crop.ProtoReflect.Descriptor instead. 2718func (*PreprocessingConfig_Crop) Descriptor() ([]byte, []int) { 2719 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{13, 4} 2720} 2721 2722func (x *PreprocessingConfig_Crop) GetTopPixels() int32 { 2723 if x != nil { 2724 return x.TopPixels 2725 } 2726 return 0 2727} 2728 2729func (x *PreprocessingConfig_Crop) GetBottomPixels() int32 { 2730 if x != nil { 2731 return x.BottomPixels 2732 } 2733 return 0 2734} 2735 2736func (x *PreprocessingConfig_Crop) GetLeftPixels() int32 { 2737 if x != nil { 2738 return x.LeftPixels 2739 } 2740 return 0 2741} 2742 2743func (x *PreprocessingConfig_Crop) GetRightPixels() int32 { 2744 if x != nil { 2745 return x.RightPixels 2746 } 2747 return 0 2748} 2749 2750// Pad filter configuration for the input video. The padded input video 2751// is scaled after padding with black to match the output resolution. 2752type PreprocessingConfig_Pad struct { 2753 state protoimpl.MessageState 2754 sizeCache protoimpl.SizeCache 2755 unknownFields protoimpl.UnknownFields 2756 2757 // The number of pixels to add to the top. The default is 0. 2758 TopPixels int32 `protobuf:"varint,1,opt,name=top_pixels,json=topPixels,proto3" json:"top_pixels,omitempty"` 2759 // The number of pixels to add to the bottom. The default is 0. 2760 BottomPixels int32 `protobuf:"varint,2,opt,name=bottom_pixels,json=bottomPixels,proto3" json:"bottom_pixels,omitempty"` 2761 // The number of pixels to add to the left. The default is 0. 2762 LeftPixels int32 `protobuf:"varint,3,opt,name=left_pixels,json=leftPixels,proto3" json:"left_pixels,omitempty"` 2763 // The number of pixels to add to the right. The default is 0. 2764 RightPixels int32 `protobuf:"varint,4,opt,name=right_pixels,json=rightPixels,proto3" json:"right_pixels,omitempty"` 2765} 2766 2767func (x *PreprocessingConfig_Pad) Reset() { 2768 *x = PreprocessingConfig_Pad{} 2769 if protoimpl.UnsafeEnabled { 2770 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[30] 2771 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2772 ms.StoreMessageInfo(mi) 2773 } 2774} 2775 2776func (x *PreprocessingConfig_Pad) String() string { 2777 return protoimpl.X.MessageStringOf(x) 2778} 2779 2780func (*PreprocessingConfig_Pad) ProtoMessage() {} 2781 2782func (x *PreprocessingConfig_Pad) ProtoReflect() protoreflect.Message { 2783 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[30] 2784 if protoimpl.UnsafeEnabled && x != nil { 2785 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2786 if ms.LoadMessageInfo() == nil { 2787 ms.StoreMessageInfo(mi) 2788 } 2789 return ms 2790 } 2791 return mi.MessageOf(x) 2792} 2793 2794// Deprecated: Use PreprocessingConfig_Pad.ProtoReflect.Descriptor instead. 2795func (*PreprocessingConfig_Pad) Descriptor() ([]byte, []int) { 2796 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{13, 5} 2797} 2798 2799func (x *PreprocessingConfig_Pad) GetTopPixels() int32 { 2800 if x != nil { 2801 return x.TopPixels 2802 } 2803 return 0 2804} 2805 2806func (x *PreprocessingConfig_Pad) GetBottomPixels() int32 { 2807 if x != nil { 2808 return x.BottomPixels 2809 } 2810 return 0 2811} 2812 2813func (x *PreprocessingConfig_Pad) GetLeftPixels() int32 { 2814 if x != nil { 2815 return x.LeftPixels 2816 } 2817 return 0 2818} 2819 2820func (x *PreprocessingConfig_Pad) GetRightPixels() int32 { 2821 if x != nil { 2822 return x.RightPixels 2823 } 2824 return 0 2825} 2826 2827// H264 codec settings. 2828type VideoStream_H264CodecSettings struct { 2829 state protoimpl.MessageState 2830 sizeCache protoimpl.SizeCache 2831 unknownFields protoimpl.UnknownFields 2832 2833 // The width of the video in pixels. Must be an even integer. 2834 // When not specified, the width is adjusted to match the specified height 2835 // and input aspect ratio. If both are omitted, the input width is used. 2836 WidthPixels int32 `protobuf:"varint,1,opt,name=width_pixels,json=widthPixels,proto3" json:"width_pixels,omitempty"` 2837 // The height of the video in pixels. Must be an even integer. 2838 // When not specified, the height is adjusted to match the specified width 2839 // and input aspect ratio. If both are omitted, the input height is used. 2840 HeightPixels int32 `protobuf:"varint,2,opt,name=height_pixels,json=heightPixels,proto3" json:"height_pixels,omitempty"` 2841 // Required. The target video frame rate in frames per second (FPS). Must be less than 2842 // or equal to 120. Will default to the input frame rate if larger than the 2843 // input frame rate. The API will generate an output FPS that is divisible 2844 // by the input FPS, and smaller or equal to the target FPS. See 2845 // [Calculating frame 2846 // rate](https://cloud.google.com/transcoder/docs/concepts/frame-rate) for 2847 // more information. 2848 FrameRate float64 `protobuf:"fixed64,3,opt,name=frame_rate,json=frameRate,proto3" json:"frame_rate,omitempty"` 2849 // Required. The video bitrate in bits per second. Must be between 1 and 2850 // 1,000,000,000. 2851 BitrateBps int32 `protobuf:"varint,4,opt,name=bitrate_bps,json=bitrateBps,proto3" json:"bitrate_bps,omitempty"` 2852 // Pixel format to use. The default is `"yuv420p"`. 2853 // 2854 // Supported pixel formats: 2855 // - 'yuv420p' pixel format. 2856 // - 'yuv422p' pixel format. 2857 // - 'yuv444p' pixel format. 2858 // - 'yuv420p10' 10-bit HDR pixel format. 2859 // - 'yuv422p10' 10-bit HDR pixel format. 2860 // - 'yuv444p10' 10-bit HDR pixel format. 2861 // - 'yuv420p12' 12-bit HDR pixel format. 2862 // - 'yuv422p12' 12-bit HDR pixel format. 2863 // - 'yuv444p12' 12-bit HDR pixel format. 2864 PixelFormat string `protobuf:"bytes,5,opt,name=pixel_format,json=pixelFormat,proto3" json:"pixel_format,omitempty"` 2865 // Specify the `rate_control_mode`. The default is `"vbr"`. 2866 // 2867 // Supported rate control modes: 2868 // - 'vbr' - variable bitrate 2869 // - 'crf' - constant rate factor 2870 RateControlMode string `protobuf:"bytes,6,opt,name=rate_control_mode,json=rateControlMode,proto3" json:"rate_control_mode,omitempty"` 2871 // Target CRF level. Must be between 10 and 36, where 10 is the highest 2872 // quality and 36 is the most efficient compression. The default is 21. 2873 CrfLevel int32 `protobuf:"varint,7,opt,name=crf_level,json=crfLevel,proto3" json:"crf_level,omitempty"` 2874 // Specifies whether an open Group of Pictures (GOP) structure should be 2875 // allowed or not. The default is `false`. 2876 AllowOpenGop bool `protobuf:"varint,8,opt,name=allow_open_gop,json=allowOpenGop,proto3" json:"allow_open_gop,omitempty"` 2877 // GOP mode can be either by frame count or duration. 2878 // 2879 // Types that are assignable to GopMode: 2880 // *VideoStream_H264CodecSettings_GopFrameCount 2881 // *VideoStream_H264CodecSettings_GopDuration 2882 GopMode isVideoStream_H264CodecSettings_GopMode `protobuf_oneof:"gop_mode"` 2883 // Use two-pass encoding strategy to achieve better video quality. 2884 // `VideoStream.rate_control_mode` must be `"vbr"`. The default is `false`. 2885 EnableTwoPass bool `protobuf:"varint,11,opt,name=enable_two_pass,json=enableTwoPass,proto3" json:"enable_two_pass,omitempty"` 2886 // Size of the Video Buffering Verifier (VBV) buffer in bits. Must be 2887 // greater than zero. The default is equal to `VideoStream.bitrate_bps`. 2888 VbvSizeBits int32 `protobuf:"varint,12,opt,name=vbv_size_bits,json=vbvSizeBits,proto3" json:"vbv_size_bits,omitempty"` 2889 // Initial fullness of the Video Buffering Verifier (VBV) buffer in bits. 2890 // Must be greater than zero. The default is equal to 90% of 2891 // `VideoStream.vbv_size_bits`. 2892 VbvFullnessBits int32 `protobuf:"varint,13,opt,name=vbv_fullness_bits,json=vbvFullnessBits,proto3" json:"vbv_fullness_bits,omitempty"` 2893 // The entropy coder to use. The default is `"cabac"`. 2894 // 2895 // Supported entropy coders: 2896 // - 'cavlc' 2897 // - 'cabac' 2898 EntropyCoder string `protobuf:"bytes,14,opt,name=entropy_coder,json=entropyCoder,proto3" json:"entropy_coder,omitempty"` 2899 // Allow B-pyramid for reference frame selection. This may not be supported 2900 // on all decoders. The default is `false`. 2901 BPyramid bool `protobuf:"varint,15,opt,name=b_pyramid,json=bPyramid,proto3" json:"b_pyramid,omitempty"` 2902 // The number of consecutive B-frames. Must be greater than or equal to 2903 // zero. Must be less than `VideoStream.gop_frame_count` if set. The default 2904 // is 0. 2905 BFrameCount int32 `protobuf:"varint,16,opt,name=b_frame_count,json=bFrameCount,proto3" json:"b_frame_count,omitempty"` 2906 // Specify the intensity of the adaptive quantizer (AQ). Must be between 0 2907 // and 1, where 0 disables the quantizer and 1 maximizes the quantizer. A 2908 // higher value equals a lower bitrate but smoother image. The default is 0. 2909 AqStrength float64 `protobuf:"fixed64,17,opt,name=aq_strength,json=aqStrength,proto3" json:"aq_strength,omitempty"` 2910 // Enforces the specified codec profile. The following profiles are 2911 // supported: 2912 // 2913 // * `baseline` 2914 // * `main` 2915 // * `high` (default) 2916 // 2917 // The available options are 2918 // [FFmpeg-compatible](https://trac.ffmpeg.org/wiki/Encode/H.264#Profile){: 2919 // class="external" }. Note that certain values for this field may cause the 2920 // transcoder to override other fields you set in the `H264CodecSettings` 2921 // message. 2922 Profile string `protobuf:"bytes,18,opt,name=profile,proto3" json:"profile,omitempty"` 2923 // Enforces the specified codec tune. The available options are 2924 // [FFmpeg-compatible](https://trac.ffmpeg.org/wiki/Encode/H.264#Tune){: 2925 // class="external" }. Note that certain values for this field may cause the 2926 // transcoder to override other fields you set in the `H264CodecSettings` 2927 // message. 2928 Tune string `protobuf:"bytes,19,opt,name=tune,proto3" json:"tune,omitempty"` 2929 // Enforces the specified codec preset. The default is `veryfast`. The 2930 // available options are 2931 // [FFmpeg-compatible](https://trac.ffmpeg.org/wiki/Encode/H.264#Preset){: 2932 // class="external" }. Note that certain values for this field may cause the 2933 // transcoder to override other fields you set in the `H264CodecSettings` 2934 // message. 2935 Preset string `protobuf:"bytes,20,opt,name=preset,proto3" json:"preset,omitempty"` 2936} 2937 2938func (x *VideoStream_H264CodecSettings) Reset() { 2939 *x = VideoStream_H264CodecSettings{} 2940 if protoimpl.UnsafeEnabled { 2941 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[31] 2942 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2943 ms.StoreMessageInfo(mi) 2944 } 2945} 2946 2947func (x *VideoStream_H264CodecSettings) String() string { 2948 return protoimpl.X.MessageStringOf(x) 2949} 2950 2951func (*VideoStream_H264CodecSettings) ProtoMessage() {} 2952 2953func (x *VideoStream_H264CodecSettings) ProtoReflect() protoreflect.Message { 2954 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[31] 2955 if protoimpl.UnsafeEnabled && x != nil { 2956 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2957 if ms.LoadMessageInfo() == nil { 2958 ms.StoreMessageInfo(mi) 2959 } 2960 return ms 2961 } 2962 return mi.MessageOf(x) 2963} 2964 2965// Deprecated: Use VideoStream_H264CodecSettings.ProtoReflect.Descriptor instead. 2966func (*VideoStream_H264CodecSettings) Descriptor() ([]byte, []int) { 2967 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{14, 0} 2968} 2969 2970func (x *VideoStream_H264CodecSettings) GetWidthPixels() int32 { 2971 if x != nil { 2972 return x.WidthPixels 2973 } 2974 return 0 2975} 2976 2977func (x *VideoStream_H264CodecSettings) GetHeightPixels() int32 { 2978 if x != nil { 2979 return x.HeightPixels 2980 } 2981 return 0 2982} 2983 2984func (x *VideoStream_H264CodecSettings) GetFrameRate() float64 { 2985 if x != nil { 2986 return x.FrameRate 2987 } 2988 return 0 2989} 2990 2991func (x *VideoStream_H264CodecSettings) GetBitrateBps() int32 { 2992 if x != nil { 2993 return x.BitrateBps 2994 } 2995 return 0 2996} 2997 2998func (x *VideoStream_H264CodecSettings) GetPixelFormat() string { 2999 if x != nil { 3000 return x.PixelFormat 3001 } 3002 return "" 3003} 3004 3005func (x *VideoStream_H264CodecSettings) GetRateControlMode() string { 3006 if x != nil { 3007 return x.RateControlMode 3008 } 3009 return "" 3010} 3011 3012func (x *VideoStream_H264CodecSettings) GetCrfLevel() int32 { 3013 if x != nil { 3014 return x.CrfLevel 3015 } 3016 return 0 3017} 3018 3019func (x *VideoStream_H264CodecSettings) GetAllowOpenGop() bool { 3020 if x != nil { 3021 return x.AllowOpenGop 3022 } 3023 return false 3024} 3025 3026func (m *VideoStream_H264CodecSettings) GetGopMode() isVideoStream_H264CodecSettings_GopMode { 3027 if m != nil { 3028 return m.GopMode 3029 } 3030 return nil 3031} 3032 3033func (x *VideoStream_H264CodecSettings) GetGopFrameCount() int32 { 3034 if x, ok := x.GetGopMode().(*VideoStream_H264CodecSettings_GopFrameCount); ok { 3035 return x.GopFrameCount 3036 } 3037 return 0 3038} 3039 3040func (x *VideoStream_H264CodecSettings) GetGopDuration() *durationpb.Duration { 3041 if x, ok := x.GetGopMode().(*VideoStream_H264CodecSettings_GopDuration); ok { 3042 return x.GopDuration 3043 } 3044 return nil 3045} 3046 3047func (x *VideoStream_H264CodecSettings) GetEnableTwoPass() bool { 3048 if x != nil { 3049 return x.EnableTwoPass 3050 } 3051 return false 3052} 3053 3054func (x *VideoStream_H264CodecSettings) GetVbvSizeBits() int32 { 3055 if x != nil { 3056 return x.VbvSizeBits 3057 } 3058 return 0 3059} 3060 3061func (x *VideoStream_H264CodecSettings) GetVbvFullnessBits() int32 { 3062 if x != nil { 3063 return x.VbvFullnessBits 3064 } 3065 return 0 3066} 3067 3068func (x *VideoStream_H264CodecSettings) GetEntropyCoder() string { 3069 if x != nil { 3070 return x.EntropyCoder 3071 } 3072 return "" 3073} 3074 3075func (x *VideoStream_H264CodecSettings) GetBPyramid() bool { 3076 if x != nil { 3077 return x.BPyramid 3078 } 3079 return false 3080} 3081 3082func (x *VideoStream_H264CodecSettings) GetBFrameCount() int32 { 3083 if x != nil { 3084 return x.BFrameCount 3085 } 3086 return 0 3087} 3088 3089func (x *VideoStream_H264CodecSettings) GetAqStrength() float64 { 3090 if x != nil { 3091 return x.AqStrength 3092 } 3093 return 0 3094} 3095 3096func (x *VideoStream_H264CodecSettings) GetProfile() string { 3097 if x != nil { 3098 return x.Profile 3099 } 3100 return "" 3101} 3102 3103func (x *VideoStream_H264CodecSettings) GetTune() string { 3104 if x != nil { 3105 return x.Tune 3106 } 3107 return "" 3108} 3109 3110func (x *VideoStream_H264CodecSettings) GetPreset() string { 3111 if x != nil { 3112 return x.Preset 3113 } 3114 return "" 3115} 3116 3117type isVideoStream_H264CodecSettings_GopMode interface { 3118 isVideoStream_H264CodecSettings_GopMode() 3119} 3120 3121type VideoStream_H264CodecSettings_GopFrameCount struct { 3122 // Select the GOP size based on the specified frame count. Must be greater 3123 // than zero. 3124 GopFrameCount int32 `protobuf:"varint,9,opt,name=gop_frame_count,json=gopFrameCount,proto3,oneof"` 3125} 3126 3127type VideoStream_H264CodecSettings_GopDuration struct { 3128 // Select the GOP size based on the specified duration. The default is 3129 // `"3s"`. Note that `gopDuration` must be less than or equal to 3130 // [`segmentDuration`](#SegmentSettings), and 3131 // [`segmentDuration`](#SegmentSettings) must be divisible by 3132 // `gopDuration`. 3133 GopDuration *durationpb.Duration `protobuf:"bytes,10,opt,name=gop_duration,json=gopDuration,proto3,oneof"` 3134} 3135 3136func (*VideoStream_H264CodecSettings_GopFrameCount) isVideoStream_H264CodecSettings_GopMode() {} 3137 3138func (*VideoStream_H264CodecSettings_GopDuration) isVideoStream_H264CodecSettings_GopMode() {} 3139 3140// H265 codec settings. 3141type VideoStream_H265CodecSettings struct { 3142 state protoimpl.MessageState 3143 sizeCache protoimpl.SizeCache 3144 unknownFields protoimpl.UnknownFields 3145 3146 // The width of the video in pixels. Must be an even integer. 3147 // When not specified, the width is adjusted to match the specified height 3148 // and input aspect ratio. If both are omitted, the input width is used. 3149 WidthPixels int32 `protobuf:"varint,1,opt,name=width_pixels,json=widthPixels,proto3" json:"width_pixels,omitempty"` 3150 // The height of the video in pixels. Must be an even integer. 3151 // When not specified, the height is adjusted to match the specified width 3152 // and input aspect ratio. If both are omitted, the input height is used. 3153 HeightPixels int32 `protobuf:"varint,2,opt,name=height_pixels,json=heightPixels,proto3" json:"height_pixels,omitempty"` 3154 // Required. The target video frame rate in frames per second (FPS). Must be less than 3155 // or equal to 120. Will default to the input frame rate if larger than the 3156 // input frame rate. The API will generate an output FPS that is divisible 3157 // by the input FPS, and smaller or equal to the target FPS. See 3158 // [Calculating frame 3159 // rate](https://cloud.google.com/transcoder/docs/concepts/frame-rate) for 3160 // more information. 3161 FrameRate float64 `protobuf:"fixed64,3,opt,name=frame_rate,json=frameRate,proto3" json:"frame_rate,omitempty"` 3162 // Required. The video bitrate in bits per second. Must be between 1 and 3163 // 1,000,000,000. 3164 BitrateBps int32 `protobuf:"varint,4,opt,name=bitrate_bps,json=bitrateBps,proto3" json:"bitrate_bps,omitempty"` 3165 // Pixel format to use. The default is `"yuv420p"`. 3166 // 3167 // Supported pixel formats: 3168 // - 'yuv420p' pixel format. 3169 // - 'yuv422p' pixel format. 3170 // - 'yuv444p' pixel format. 3171 // - 'yuv420p10' 10-bit HDR pixel format. 3172 // - 'yuv422p10' 10-bit HDR pixel format. 3173 // - 'yuv444p10' 10-bit HDR pixel format. 3174 // - 'yuv420p12' 12-bit HDR pixel format. 3175 // - 'yuv422p12' 12-bit HDR pixel format. 3176 // - 'yuv444p12' 12-bit HDR pixel format. 3177 PixelFormat string `protobuf:"bytes,5,opt,name=pixel_format,json=pixelFormat,proto3" json:"pixel_format,omitempty"` 3178 // Specify the `rate_control_mode`. The default is `"vbr"`. 3179 // 3180 // Supported rate control modes: 3181 // - 'vbr' - variable bitrate 3182 // - 'crf' - constant rate factor 3183 RateControlMode string `protobuf:"bytes,6,opt,name=rate_control_mode,json=rateControlMode,proto3" json:"rate_control_mode,omitempty"` 3184 // Target CRF level. Must be between 10 and 36, where 10 is the highest 3185 // quality and 36 is the most efficient compression. The default is 21. 3186 CrfLevel int32 `protobuf:"varint,7,opt,name=crf_level,json=crfLevel,proto3" json:"crf_level,omitempty"` 3187 // Specifies whether an open Group of Pictures (GOP) structure should be 3188 // allowed or not. The default is `false`. 3189 AllowOpenGop bool `protobuf:"varint,8,opt,name=allow_open_gop,json=allowOpenGop,proto3" json:"allow_open_gop,omitempty"` 3190 // GOP mode can be either by frame count or duration. 3191 // 3192 // Types that are assignable to GopMode: 3193 // *VideoStream_H265CodecSettings_GopFrameCount 3194 // *VideoStream_H265CodecSettings_GopDuration 3195 GopMode isVideoStream_H265CodecSettings_GopMode `protobuf_oneof:"gop_mode"` 3196 // Use two-pass encoding strategy to achieve better video quality. 3197 // `VideoStream.rate_control_mode` must be `"vbr"`. The default is `false`. 3198 EnableTwoPass bool `protobuf:"varint,11,opt,name=enable_two_pass,json=enableTwoPass,proto3" json:"enable_two_pass,omitempty"` 3199 // Size of the Video Buffering Verifier (VBV) buffer in bits. Must be 3200 // greater than zero. The default is equal to `VideoStream.bitrate_bps`. 3201 VbvSizeBits int32 `protobuf:"varint,12,opt,name=vbv_size_bits,json=vbvSizeBits,proto3" json:"vbv_size_bits,omitempty"` 3202 // Initial fullness of the Video Buffering Verifier (VBV) buffer in bits. 3203 // Must be greater than zero. The default is equal to 90% of 3204 // `VideoStream.vbv_size_bits`. 3205 VbvFullnessBits int32 `protobuf:"varint,13,opt,name=vbv_fullness_bits,json=vbvFullnessBits,proto3" json:"vbv_fullness_bits,omitempty"` 3206 // Allow B-pyramid for reference frame selection. This may not be supported 3207 // on all decoders. The default is `false`. 3208 BPyramid bool `protobuf:"varint,14,opt,name=b_pyramid,json=bPyramid,proto3" json:"b_pyramid,omitempty"` 3209 // The number of consecutive B-frames. Must be greater than or equal to 3210 // zero. Must be less than `VideoStream.gop_frame_count` if set. The default 3211 // is 0. 3212 BFrameCount int32 `protobuf:"varint,15,opt,name=b_frame_count,json=bFrameCount,proto3" json:"b_frame_count,omitempty"` 3213 // Specify the intensity of the adaptive quantizer (AQ). Must be between 0 3214 // and 1, where 0 disables the quantizer and 1 maximizes the quantizer. A 3215 // higher value equals a lower bitrate but smoother image. The default is 0. 3216 AqStrength float64 `protobuf:"fixed64,16,opt,name=aq_strength,json=aqStrength,proto3" json:"aq_strength,omitempty"` 3217 // Enforces the specified codec profile. The following profiles are 3218 // supported: 3219 // 3220 // 8bit profiles 3221 // * `main` (default) 3222 // * `main-intra` 3223 // * `mainstillpicture` 3224 // 3225 // 10bit profiles 3226 // * `main10` (default) 3227 // * `main10-intra` 3228 // * `main422-10` 3229 // * `main422-10-intra` 3230 // * `main444-10` 3231 // * `main444-10-intra` 3232 // 3233 // 12bit profiles 3234 // * `main12` (default) 3235 // * `main12-intra` 3236 // * `main422-12` 3237 // * `main422-12-intra` 3238 // * `main444-12` 3239 // * `main444-12-intra` 3240 // 3241 // The available options are 3242 // [FFmpeg-compatible](https://x265.readthedocs.io/){: 3243 // class="external" }. Note that certain values for this field may cause the 3244 // transcoder to override other fields you set in the `H265CodecSettings` 3245 // message. 3246 Profile string `protobuf:"bytes,17,opt,name=profile,proto3" json:"profile,omitempty"` 3247 // Enforces the specified codec tune. The available options are 3248 // [FFmpeg-compatible](https://trac.ffmpeg.org/wiki/Encode/H.265){: 3249 // class="external" }. Note that certain values for this field may cause the 3250 // transcoder to override other fields you set in the `H265CodecSettings` 3251 // message. 3252 Tune string `protobuf:"bytes,18,opt,name=tune,proto3" json:"tune,omitempty"` 3253 // Enforces the specified codec preset. The default is `veryfast`. The 3254 // available options are 3255 // [FFmpeg-compatible](https://trac.ffmpeg.org/wiki/Encode/H.265){: 3256 // class="external" }. Note that certain values for this field may cause the 3257 // transcoder to override other fields you set in the `H265CodecSettings` 3258 // message. 3259 Preset string `protobuf:"bytes,19,opt,name=preset,proto3" json:"preset,omitempty"` 3260} 3261 3262func (x *VideoStream_H265CodecSettings) Reset() { 3263 *x = VideoStream_H265CodecSettings{} 3264 if protoimpl.UnsafeEnabled { 3265 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[32] 3266 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3267 ms.StoreMessageInfo(mi) 3268 } 3269} 3270 3271func (x *VideoStream_H265CodecSettings) String() string { 3272 return protoimpl.X.MessageStringOf(x) 3273} 3274 3275func (*VideoStream_H265CodecSettings) ProtoMessage() {} 3276 3277func (x *VideoStream_H265CodecSettings) ProtoReflect() protoreflect.Message { 3278 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[32] 3279 if protoimpl.UnsafeEnabled && x != nil { 3280 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3281 if ms.LoadMessageInfo() == nil { 3282 ms.StoreMessageInfo(mi) 3283 } 3284 return ms 3285 } 3286 return mi.MessageOf(x) 3287} 3288 3289// Deprecated: Use VideoStream_H265CodecSettings.ProtoReflect.Descriptor instead. 3290func (*VideoStream_H265CodecSettings) Descriptor() ([]byte, []int) { 3291 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{14, 1} 3292} 3293 3294func (x *VideoStream_H265CodecSettings) GetWidthPixels() int32 { 3295 if x != nil { 3296 return x.WidthPixels 3297 } 3298 return 0 3299} 3300 3301func (x *VideoStream_H265CodecSettings) GetHeightPixels() int32 { 3302 if x != nil { 3303 return x.HeightPixels 3304 } 3305 return 0 3306} 3307 3308func (x *VideoStream_H265CodecSettings) GetFrameRate() float64 { 3309 if x != nil { 3310 return x.FrameRate 3311 } 3312 return 0 3313} 3314 3315func (x *VideoStream_H265CodecSettings) GetBitrateBps() int32 { 3316 if x != nil { 3317 return x.BitrateBps 3318 } 3319 return 0 3320} 3321 3322func (x *VideoStream_H265CodecSettings) GetPixelFormat() string { 3323 if x != nil { 3324 return x.PixelFormat 3325 } 3326 return "" 3327} 3328 3329func (x *VideoStream_H265CodecSettings) GetRateControlMode() string { 3330 if x != nil { 3331 return x.RateControlMode 3332 } 3333 return "" 3334} 3335 3336func (x *VideoStream_H265CodecSettings) GetCrfLevel() int32 { 3337 if x != nil { 3338 return x.CrfLevel 3339 } 3340 return 0 3341} 3342 3343func (x *VideoStream_H265CodecSettings) GetAllowOpenGop() bool { 3344 if x != nil { 3345 return x.AllowOpenGop 3346 } 3347 return false 3348} 3349 3350func (m *VideoStream_H265CodecSettings) GetGopMode() isVideoStream_H265CodecSettings_GopMode { 3351 if m != nil { 3352 return m.GopMode 3353 } 3354 return nil 3355} 3356 3357func (x *VideoStream_H265CodecSettings) GetGopFrameCount() int32 { 3358 if x, ok := x.GetGopMode().(*VideoStream_H265CodecSettings_GopFrameCount); ok { 3359 return x.GopFrameCount 3360 } 3361 return 0 3362} 3363 3364func (x *VideoStream_H265CodecSettings) GetGopDuration() *durationpb.Duration { 3365 if x, ok := x.GetGopMode().(*VideoStream_H265CodecSettings_GopDuration); ok { 3366 return x.GopDuration 3367 } 3368 return nil 3369} 3370 3371func (x *VideoStream_H265CodecSettings) GetEnableTwoPass() bool { 3372 if x != nil { 3373 return x.EnableTwoPass 3374 } 3375 return false 3376} 3377 3378func (x *VideoStream_H265CodecSettings) GetVbvSizeBits() int32 { 3379 if x != nil { 3380 return x.VbvSizeBits 3381 } 3382 return 0 3383} 3384 3385func (x *VideoStream_H265CodecSettings) GetVbvFullnessBits() int32 { 3386 if x != nil { 3387 return x.VbvFullnessBits 3388 } 3389 return 0 3390} 3391 3392func (x *VideoStream_H265CodecSettings) GetBPyramid() bool { 3393 if x != nil { 3394 return x.BPyramid 3395 } 3396 return false 3397} 3398 3399func (x *VideoStream_H265CodecSettings) GetBFrameCount() int32 { 3400 if x != nil { 3401 return x.BFrameCount 3402 } 3403 return 0 3404} 3405 3406func (x *VideoStream_H265CodecSettings) GetAqStrength() float64 { 3407 if x != nil { 3408 return x.AqStrength 3409 } 3410 return 0 3411} 3412 3413func (x *VideoStream_H265CodecSettings) GetProfile() string { 3414 if x != nil { 3415 return x.Profile 3416 } 3417 return "" 3418} 3419 3420func (x *VideoStream_H265CodecSettings) GetTune() string { 3421 if x != nil { 3422 return x.Tune 3423 } 3424 return "" 3425} 3426 3427func (x *VideoStream_H265CodecSettings) GetPreset() string { 3428 if x != nil { 3429 return x.Preset 3430 } 3431 return "" 3432} 3433 3434type isVideoStream_H265CodecSettings_GopMode interface { 3435 isVideoStream_H265CodecSettings_GopMode() 3436} 3437 3438type VideoStream_H265CodecSettings_GopFrameCount struct { 3439 // Select the GOP size based on the specified frame count. Must be greater 3440 // than zero. 3441 GopFrameCount int32 `protobuf:"varint,9,opt,name=gop_frame_count,json=gopFrameCount,proto3,oneof"` 3442} 3443 3444type VideoStream_H265CodecSettings_GopDuration struct { 3445 // Select the GOP size based on the specified duration. The default is 3446 // `"3s"`. Note that `gopDuration` must be less than or equal to 3447 // [`segmentDuration`](#SegmentSettings), and 3448 // [`segmentDuration`](#SegmentSettings) must be divisible by 3449 // `gopDuration`. 3450 GopDuration *durationpb.Duration `protobuf:"bytes,10,opt,name=gop_duration,json=gopDuration,proto3,oneof"` 3451} 3452 3453func (*VideoStream_H265CodecSettings_GopFrameCount) isVideoStream_H265CodecSettings_GopMode() {} 3454 3455func (*VideoStream_H265CodecSettings_GopDuration) isVideoStream_H265CodecSettings_GopMode() {} 3456 3457// VP9 codec settings. 3458type VideoStream_Vp9CodecSettings struct { 3459 state protoimpl.MessageState 3460 sizeCache protoimpl.SizeCache 3461 unknownFields protoimpl.UnknownFields 3462 3463 // The width of the video in pixels. Must be an even integer. 3464 // When not specified, the width is adjusted to match the specified height 3465 // and input aspect ratio. If both are omitted, the input width is used. 3466 WidthPixels int32 `protobuf:"varint,1,opt,name=width_pixels,json=widthPixels,proto3" json:"width_pixels,omitempty"` 3467 // The height of the video in pixels. Must be an even integer. 3468 // When not specified, the height is adjusted to match the specified width 3469 // and input aspect ratio. If both are omitted, the input height is used. 3470 HeightPixels int32 `protobuf:"varint,2,opt,name=height_pixels,json=heightPixels,proto3" json:"height_pixels,omitempty"` 3471 // Required. The target video frame rate in frames per second (FPS). Must be less than 3472 // or equal to 120. Will default to the input frame rate if larger than the 3473 // input frame rate. The API will generate an output FPS that is divisible 3474 // by the input FPS, and smaller or equal to the target FPS. See 3475 // [Calculating frame 3476 // rate](https://cloud.google.com/transcoder/docs/concepts/frame-rate) for 3477 // more information. 3478 FrameRate float64 `protobuf:"fixed64,3,opt,name=frame_rate,json=frameRate,proto3" json:"frame_rate,omitempty"` 3479 // Required. The video bitrate in bits per second. Must be between 1 and 3480 // 1,000,000,000. 3481 BitrateBps int32 `protobuf:"varint,4,opt,name=bitrate_bps,json=bitrateBps,proto3" json:"bitrate_bps,omitempty"` 3482 // Pixel format to use. The default is `"yuv420p"`. 3483 // 3484 // Supported pixel formats: 3485 // - 'yuv420p' pixel format. 3486 // - 'yuv422p' pixel format. 3487 // - 'yuv444p' pixel format. 3488 // - 'yuv420p10' 10-bit HDR pixel format. 3489 // - 'yuv422p10' 10-bit HDR pixel format. 3490 // - 'yuv444p10' 10-bit HDR pixel format. 3491 // - 'yuv420p12' 12-bit HDR pixel format. 3492 // - 'yuv422p12' 12-bit HDR pixel format. 3493 // - 'yuv444p12' 12-bit HDR pixel format. 3494 PixelFormat string `protobuf:"bytes,5,opt,name=pixel_format,json=pixelFormat,proto3" json:"pixel_format,omitempty"` 3495 // Specify the `rate_control_mode`. The default is `"vbr"`. 3496 // 3497 // Supported rate control modes: 3498 // - 'vbr' - variable bitrate 3499 // - 'crf' - constant rate factor 3500 RateControlMode string `protobuf:"bytes,6,opt,name=rate_control_mode,json=rateControlMode,proto3" json:"rate_control_mode,omitempty"` 3501 // Target CRF level. Must be between 10 and 36, where 10 is the highest 3502 // quality and 36 is the most efficient compression. The default is 21. 3503 CrfLevel int32 `protobuf:"varint,7,opt,name=crf_level,json=crfLevel,proto3" json:"crf_level,omitempty"` 3504 // GOP mode can be either by frame count or duration. 3505 // 3506 // Types that are assignable to GopMode: 3507 // *VideoStream_Vp9CodecSettings_GopFrameCount 3508 // *VideoStream_Vp9CodecSettings_GopDuration 3509 GopMode isVideoStream_Vp9CodecSettings_GopMode `protobuf_oneof:"gop_mode"` 3510 // Enforces the specified codec profile. The following profiles are 3511 // supported: 3512 // 3513 // * `profile0` (default) 3514 // * `profile1` 3515 // * `profile2` 3516 // * `profile3` 3517 // 3518 // The available options are 3519 // [WebM-compatible](https://www.webmproject.org/vp9/profiles/){: 3520 // class="external" }. Note that certain values for this field may cause the 3521 // transcoder to override other fields you set in the `Vp9CodecSettings` 3522 // message. 3523 Profile string `protobuf:"bytes,10,opt,name=profile,proto3" json:"profile,omitempty"` 3524} 3525 3526func (x *VideoStream_Vp9CodecSettings) Reset() { 3527 *x = VideoStream_Vp9CodecSettings{} 3528 if protoimpl.UnsafeEnabled { 3529 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[33] 3530 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3531 ms.StoreMessageInfo(mi) 3532 } 3533} 3534 3535func (x *VideoStream_Vp9CodecSettings) String() string { 3536 return protoimpl.X.MessageStringOf(x) 3537} 3538 3539func (*VideoStream_Vp9CodecSettings) ProtoMessage() {} 3540 3541func (x *VideoStream_Vp9CodecSettings) ProtoReflect() protoreflect.Message { 3542 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[33] 3543 if protoimpl.UnsafeEnabled && x != nil { 3544 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3545 if ms.LoadMessageInfo() == nil { 3546 ms.StoreMessageInfo(mi) 3547 } 3548 return ms 3549 } 3550 return mi.MessageOf(x) 3551} 3552 3553// Deprecated: Use VideoStream_Vp9CodecSettings.ProtoReflect.Descriptor instead. 3554func (*VideoStream_Vp9CodecSettings) Descriptor() ([]byte, []int) { 3555 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{14, 2} 3556} 3557 3558func (x *VideoStream_Vp9CodecSettings) GetWidthPixels() int32 { 3559 if x != nil { 3560 return x.WidthPixels 3561 } 3562 return 0 3563} 3564 3565func (x *VideoStream_Vp9CodecSettings) GetHeightPixels() int32 { 3566 if x != nil { 3567 return x.HeightPixels 3568 } 3569 return 0 3570} 3571 3572func (x *VideoStream_Vp9CodecSettings) GetFrameRate() float64 { 3573 if x != nil { 3574 return x.FrameRate 3575 } 3576 return 0 3577} 3578 3579func (x *VideoStream_Vp9CodecSettings) GetBitrateBps() int32 { 3580 if x != nil { 3581 return x.BitrateBps 3582 } 3583 return 0 3584} 3585 3586func (x *VideoStream_Vp9CodecSettings) GetPixelFormat() string { 3587 if x != nil { 3588 return x.PixelFormat 3589 } 3590 return "" 3591} 3592 3593func (x *VideoStream_Vp9CodecSettings) GetRateControlMode() string { 3594 if x != nil { 3595 return x.RateControlMode 3596 } 3597 return "" 3598} 3599 3600func (x *VideoStream_Vp9CodecSettings) GetCrfLevel() int32 { 3601 if x != nil { 3602 return x.CrfLevel 3603 } 3604 return 0 3605} 3606 3607func (m *VideoStream_Vp9CodecSettings) GetGopMode() isVideoStream_Vp9CodecSettings_GopMode { 3608 if m != nil { 3609 return m.GopMode 3610 } 3611 return nil 3612} 3613 3614func (x *VideoStream_Vp9CodecSettings) GetGopFrameCount() int32 { 3615 if x, ok := x.GetGopMode().(*VideoStream_Vp9CodecSettings_GopFrameCount); ok { 3616 return x.GopFrameCount 3617 } 3618 return 0 3619} 3620 3621func (x *VideoStream_Vp9CodecSettings) GetGopDuration() *durationpb.Duration { 3622 if x, ok := x.GetGopMode().(*VideoStream_Vp9CodecSettings_GopDuration); ok { 3623 return x.GopDuration 3624 } 3625 return nil 3626} 3627 3628func (x *VideoStream_Vp9CodecSettings) GetProfile() string { 3629 if x != nil { 3630 return x.Profile 3631 } 3632 return "" 3633} 3634 3635type isVideoStream_Vp9CodecSettings_GopMode interface { 3636 isVideoStream_Vp9CodecSettings_GopMode() 3637} 3638 3639type VideoStream_Vp9CodecSettings_GopFrameCount struct { 3640 // Select the GOP size based on the specified frame count. Must be greater 3641 // than zero. 3642 GopFrameCount int32 `protobuf:"varint,8,opt,name=gop_frame_count,json=gopFrameCount,proto3,oneof"` 3643} 3644 3645type VideoStream_Vp9CodecSettings_GopDuration struct { 3646 // Select the GOP size based on the specified duration. The default is 3647 // `"3s"`. Note that `gopDuration` must be less than or equal to 3648 // [`segmentDuration`](#SegmentSettings), and 3649 // [`segmentDuration`](#SegmentSettings) must be divisible by 3650 // `gopDuration`. 3651 GopDuration *durationpb.Duration `protobuf:"bytes,9,opt,name=gop_duration,json=gopDuration,proto3,oneof"` 3652} 3653 3654func (*VideoStream_Vp9CodecSettings_GopFrameCount) isVideoStream_Vp9CodecSettings_GopMode() {} 3655 3656func (*VideoStream_Vp9CodecSettings_GopDuration) isVideoStream_Vp9CodecSettings_GopMode() {} 3657 3658// The mapping for the `Job.edit_list` atoms with audio `EditAtom.inputs`. 3659type AudioStream_AudioMapping struct { 3660 state protoimpl.MessageState 3661 sizeCache protoimpl.SizeCache 3662 unknownFields protoimpl.UnknownFields 3663 3664 // Required. The `EditAtom.key` that references the atom with audio inputs in the 3665 // `Job.edit_list`. 3666 AtomKey string `protobuf:"bytes,1,opt,name=atom_key,json=atomKey,proto3" json:"atom_key,omitempty"` 3667 // Required. The `Input.key` that identifies the input file. 3668 InputKey string `protobuf:"bytes,2,opt,name=input_key,json=inputKey,proto3" json:"input_key,omitempty"` 3669 // Required. The zero-based index of the track in the input file. 3670 InputTrack int32 `protobuf:"varint,3,opt,name=input_track,json=inputTrack,proto3" json:"input_track,omitempty"` 3671 // Required. The zero-based index of the channel in the input audio stream. 3672 InputChannel int32 `protobuf:"varint,4,opt,name=input_channel,json=inputChannel,proto3" json:"input_channel,omitempty"` 3673 // Required. The zero-based index of the channel in the output audio stream. 3674 OutputChannel int32 `protobuf:"varint,5,opt,name=output_channel,json=outputChannel,proto3" json:"output_channel,omitempty"` 3675 // Audio volume control in dB. Negative values decrease volume, 3676 // positive values increase. The default is 0. 3677 GainDb float64 `protobuf:"fixed64,6,opt,name=gain_db,json=gainDb,proto3" json:"gain_db,omitempty"` 3678} 3679 3680func (x *AudioStream_AudioMapping) Reset() { 3681 *x = AudioStream_AudioMapping{} 3682 if protoimpl.UnsafeEnabled { 3683 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[34] 3684 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3685 ms.StoreMessageInfo(mi) 3686 } 3687} 3688 3689func (x *AudioStream_AudioMapping) String() string { 3690 return protoimpl.X.MessageStringOf(x) 3691} 3692 3693func (*AudioStream_AudioMapping) ProtoMessage() {} 3694 3695func (x *AudioStream_AudioMapping) ProtoReflect() protoreflect.Message { 3696 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[34] 3697 if protoimpl.UnsafeEnabled && x != nil { 3698 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3699 if ms.LoadMessageInfo() == nil { 3700 ms.StoreMessageInfo(mi) 3701 } 3702 return ms 3703 } 3704 return mi.MessageOf(x) 3705} 3706 3707// Deprecated: Use AudioStream_AudioMapping.ProtoReflect.Descriptor instead. 3708func (*AudioStream_AudioMapping) Descriptor() ([]byte, []int) { 3709 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{15, 0} 3710} 3711 3712func (x *AudioStream_AudioMapping) GetAtomKey() string { 3713 if x != nil { 3714 return x.AtomKey 3715 } 3716 return "" 3717} 3718 3719func (x *AudioStream_AudioMapping) GetInputKey() string { 3720 if x != nil { 3721 return x.InputKey 3722 } 3723 return "" 3724} 3725 3726func (x *AudioStream_AudioMapping) GetInputTrack() int32 { 3727 if x != nil { 3728 return x.InputTrack 3729 } 3730 return 0 3731} 3732 3733func (x *AudioStream_AudioMapping) GetInputChannel() int32 { 3734 if x != nil { 3735 return x.InputChannel 3736 } 3737 return 0 3738} 3739 3740func (x *AudioStream_AudioMapping) GetOutputChannel() int32 { 3741 if x != nil { 3742 return x.OutputChannel 3743 } 3744 return 0 3745} 3746 3747func (x *AudioStream_AudioMapping) GetGainDb() float64 { 3748 if x != nil { 3749 return x.GainDb 3750 } 3751 return 0 3752} 3753 3754// The mapping for the `Job.edit_list` atoms with text `EditAtom.inputs`. 3755type TextStream_TextMapping struct { 3756 state protoimpl.MessageState 3757 sizeCache protoimpl.SizeCache 3758 unknownFields protoimpl.UnknownFields 3759 3760 // Required. The `EditAtom.key` that references atom with text inputs in the 3761 // `Job.edit_list`. 3762 AtomKey string `protobuf:"bytes,1,opt,name=atom_key,json=atomKey,proto3" json:"atom_key,omitempty"` 3763 // Required. The `Input.key` that identifies the input file. 3764 InputKey string `protobuf:"bytes,2,opt,name=input_key,json=inputKey,proto3" json:"input_key,omitempty"` 3765 // Required. The zero-based index of the track in the input file. 3766 InputTrack int32 `protobuf:"varint,3,opt,name=input_track,json=inputTrack,proto3" json:"input_track,omitempty"` 3767} 3768 3769func (x *TextStream_TextMapping) Reset() { 3770 *x = TextStream_TextMapping{} 3771 if protoimpl.UnsafeEnabled { 3772 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[35] 3773 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3774 ms.StoreMessageInfo(mi) 3775 } 3776} 3777 3778func (x *TextStream_TextMapping) String() string { 3779 return protoimpl.X.MessageStringOf(x) 3780} 3781 3782func (*TextStream_TextMapping) ProtoMessage() {} 3783 3784func (x *TextStream_TextMapping) ProtoReflect() protoreflect.Message { 3785 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[35] 3786 if protoimpl.UnsafeEnabled && x != nil { 3787 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3788 if ms.LoadMessageInfo() == nil { 3789 ms.StoreMessageInfo(mi) 3790 } 3791 return ms 3792 } 3793 return mi.MessageOf(x) 3794} 3795 3796// Deprecated: Use TextStream_TextMapping.ProtoReflect.Descriptor instead. 3797func (*TextStream_TextMapping) Descriptor() ([]byte, []int) { 3798 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{16, 0} 3799} 3800 3801func (x *TextStream_TextMapping) GetAtomKey() string { 3802 if x != nil { 3803 return x.AtomKey 3804 } 3805 return "" 3806} 3807 3808func (x *TextStream_TextMapping) GetInputKey() string { 3809 if x != nil { 3810 return x.InputKey 3811 } 3812 return "" 3813} 3814 3815func (x *TextStream_TextMapping) GetInputTrack() int32 { 3816 if x != nil { 3817 return x.InputTrack 3818 } 3819 return 0 3820} 3821 3822// Configuration for AES-128 encryption. 3823type Encryption_Aes128Encryption struct { 3824 state protoimpl.MessageState 3825 sizeCache protoimpl.SizeCache 3826 unknownFields protoimpl.UnknownFields 3827 3828 // Required. URI of the key delivery service. This URI is inserted into the M3U8 3829 // header. 3830 KeyUri string `protobuf:"bytes,1,opt,name=key_uri,json=keyUri,proto3" json:"key_uri,omitempty"` 3831} 3832 3833func (x *Encryption_Aes128Encryption) Reset() { 3834 *x = Encryption_Aes128Encryption{} 3835 if protoimpl.UnsafeEnabled { 3836 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[36] 3837 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3838 ms.StoreMessageInfo(mi) 3839 } 3840} 3841 3842func (x *Encryption_Aes128Encryption) String() string { 3843 return protoimpl.X.MessageStringOf(x) 3844} 3845 3846func (*Encryption_Aes128Encryption) ProtoMessage() {} 3847 3848func (x *Encryption_Aes128Encryption) ProtoReflect() protoreflect.Message { 3849 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[36] 3850 if protoimpl.UnsafeEnabled && x != nil { 3851 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3852 if ms.LoadMessageInfo() == nil { 3853 ms.StoreMessageInfo(mi) 3854 } 3855 return ms 3856 } 3857 return mi.MessageOf(x) 3858} 3859 3860// Deprecated: Use Encryption_Aes128Encryption.ProtoReflect.Descriptor instead. 3861func (*Encryption_Aes128Encryption) Descriptor() ([]byte, []int) { 3862 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{18, 0} 3863} 3864 3865func (x *Encryption_Aes128Encryption) GetKeyUri() string { 3866 if x != nil { 3867 return x.KeyUri 3868 } 3869 return "" 3870} 3871 3872// Configuration for SAMPLE-AES encryption. 3873type Encryption_SampleAesEncryption struct { 3874 state protoimpl.MessageState 3875 sizeCache protoimpl.SizeCache 3876 unknownFields protoimpl.UnknownFields 3877 3878 // Required. URI of the key delivery service. This URI is inserted into the M3U8 3879 // header. 3880 KeyUri string `protobuf:"bytes,1,opt,name=key_uri,json=keyUri,proto3" json:"key_uri,omitempty"` 3881} 3882 3883func (x *Encryption_SampleAesEncryption) Reset() { 3884 *x = Encryption_SampleAesEncryption{} 3885 if protoimpl.UnsafeEnabled { 3886 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[37] 3887 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3888 ms.StoreMessageInfo(mi) 3889 } 3890} 3891 3892func (x *Encryption_SampleAesEncryption) String() string { 3893 return protoimpl.X.MessageStringOf(x) 3894} 3895 3896func (*Encryption_SampleAesEncryption) ProtoMessage() {} 3897 3898func (x *Encryption_SampleAesEncryption) ProtoReflect() protoreflect.Message { 3899 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[37] 3900 if protoimpl.UnsafeEnabled && x != nil { 3901 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3902 if ms.LoadMessageInfo() == nil { 3903 ms.StoreMessageInfo(mi) 3904 } 3905 return ms 3906 } 3907 return mi.MessageOf(x) 3908} 3909 3910// Deprecated: Use Encryption_SampleAesEncryption.ProtoReflect.Descriptor instead. 3911func (*Encryption_SampleAesEncryption) Descriptor() ([]byte, []int) { 3912 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{18, 1} 3913} 3914 3915func (x *Encryption_SampleAesEncryption) GetKeyUri() string { 3916 if x != nil { 3917 return x.KeyUri 3918 } 3919 return "" 3920} 3921 3922// Configuration for MPEG Common Encryption (MPEG-CENC). 3923type Encryption_MpegCommonEncryption struct { 3924 state protoimpl.MessageState 3925 sizeCache protoimpl.SizeCache 3926 unknownFields protoimpl.UnknownFields 3927 3928 // Required. 128 bit Key ID represented as lowercase hexadecimal digits for use with 3929 // common encryption. 3930 KeyId string `protobuf:"bytes,1,opt,name=key_id,json=keyId,proto3" json:"key_id,omitempty"` 3931 // Required. Specify the encryption scheme. 3932 // 3933 // Supported encryption schemes: 3934 // - 'cenc' 3935 // - 'cbcs' 3936 Scheme string `protobuf:"bytes,2,opt,name=scheme,proto3" json:"scheme,omitempty"` 3937} 3938 3939func (x *Encryption_MpegCommonEncryption) Reset() { 3940 *x = Encryption_MpegCommonEncryption{} 3941 if protoimpl.UnsafeEnabled { 3942 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[38] 3943 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3944 ms.StoreMessageInfo(mi) 3945 } 3946} 3947 3948func (x *Encryption_MpegCommonEncryption) String() string { 3949 return protoimpl.X.MessageStringOf(x) 3950} 3951 3952func (*Encryption_MpegCommonEncryption) ProtoMessage() {} 3953 3954func (x *Encryption_MpegCommonEncryption) ProtoReflect() protoreflect.Message { 3955 mi := &file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[38] 3956 if protoimpl.UnsafeEnabled && x != nil { 3957 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 3958 if ms.LoadMessageInfo() == nil { 3959 ms.StoreMessageInfo(mi) 3960 } 3961 return ms 3962 } 3963 return mi.MessageOf(x) 3964} 3965 3966// Deprecated: Use Encryption_MpegCommonEncryption.ProtoReflect.Descriptor instead. 3967func (*Encryption_MpegCommonEncryption) Descriptor() ([]byte, []int) { 3968 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP(), []int{18, 2} 3969} 3970 3971func (x *Encryption_MpegCommonEncryption) GetKeyId() string { 3972 if x != nil { 3973 return x.KeyId 3974 } 3975 return "" 3976} 3977 3978func (x *Encryption_MpegCommonEncryption) GetScheme() string { 3979 if x != nil { 3980 return x.Scheme 3981 } 3982 return "" 3983} 3984 3985var File_google_cloud_video_transcoder_v1_resources_proto protoreflect.FileDescriptor 3986 3987var file_google_cloud_video_transcoder_v1_resources_proto_rawDesc = []byte{ 3988 0x0a, 0x30, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76, 3989 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2f, 3990 0x76, 0x31, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 3991 0x74, 0x6f, 0x12, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3992 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 3993 0x72, 0x2e, 0x76, 0x31, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 3994 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 3995 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 3996 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 3997 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 3998 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 3999 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 4000 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 4001 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x72, 0x70, 0x63, 0x2f, 0x73, 0x74, 4002 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x98, 0x06, 0x0a, 0x03, 0x4a, 4003 0x6f, 0x62, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 4004 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 4005 0x75, 0x72, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x04, 0x52, 0x08, 4006 0x69, 0x6e, 0x70, 0x75, 0x74, 0x55, 0x72, 0x69, 0x12, 0x22, 0x0a, 0x0a, 0x6f, 0x75, 0x74, 0x70, 4007 0x75, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 4008 0x04, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x55, 0x72, 0x69, 0x12, 0x26, 0x0a, 0x0b, 4009 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 4010 0x09, 0x42, 0x03, 0xe0, 0x41, 0x04, 0x48, 0x00, 0x52, 0x0a, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 4011 0x74, 0x65, 0x49, 0x64, 0x12, 0x45, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 4012 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 4013 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 4014 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4a, 0x6f, 0x62, 0x43, 0x6f, 0x6e, 0x66, 0x69, 4015 0x67, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x50, 0x0a, 0x05, 0x73, 4016 0x74, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 4017 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 4018 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4a, 0x6f, 4019 0x62, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 4020 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x40, 0x0a, 4021 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 4022 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 4023 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 4024 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 4025 0x3e, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0d, 0x20, 4026 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 4027 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 4028 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 4029 0x3a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 4030 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 4031 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 4032 0x41, 0x03, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x19, 0x74, 4033 0x74, 0x6c, 0x5f, 0x61, 0x66, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 4034 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x79, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, 4035 0x74, 0x74, 0x6c, 0x41, 0x66, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 4036 0x6f, 0x6e, 0x44, 0x61, 0x79, 0x73, 0x12, 0x2d, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 4037 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 4038 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 4039 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x68, 0x0a, 0x0f, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 4040 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x50, 0x52, 0x4f, 0x43, 4041 0x45, 0x53, 0x53, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 4042 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 4043 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x55, 0x4e, 0x4e, 0x49, 4044 0x4e, 0x47, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x55, 0x43, 0x43, 0x45, 0x45, 0x44, 0x45, 4045 0x44, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x04, 0x3a, 4046 0x56, 0xea, 0x41, 0x53, 0x0a, 0x1d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 4047 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 4048 0x4a, 0x6f, 0x62, 0x12, 0x32, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 4049 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 4050 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x6a, 0x6f, 0x62, 4051 0x73, 0x2f, 0x7b, 0x6a, 0x6f, 0x62, 0x7d, 0x42, 0x0c, 0x0a, 0x0a, 0x6a, 0x6f, 0x62, 0x5f, 0x63, 4052 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xd7, 0x01, 0x0a, 0x0b, 0x4a, 0x6f, 0x62, 0x54, 0x65, 0x6d, 4053 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 4054 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 4055 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 4056 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 4057 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4a, 0x6f, 0x62, 4058 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, 0x6f, 4059 0xea, 0x41, 0x6c, 0x0a, 0x25, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 4060 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4a, 4061 0x6f, 0x62, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x43, 0x70, 0x72, 0x6f, 0x6a, 4062 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 4063 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 4064 0x6f, 0x6e, 0x7d, 0x2f, 0x6a, 0x6f, 0x62, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 4065 0x2f, 0x7b, 0x6a, 0x6f, 0x62, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x7d, 0x22, 4066 0x99, 0x06, 0x0a, 0x09, 0x4a, 0x6f, 0x62, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3f, 0x0a, 4067 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 4068 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 4069 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 4070 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x47, 4071 0x0a, 0x09, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 4072 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 4073 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 4074 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x64, 0x69, 0x74, 0x41, 0x74, 0x6f, 0x6d, 0x52, 0x08, 0x65, 4075 0x64, 0x69, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x61, 0x0a, 0x12, 0x65, 0x6c, 0x65, 0x6d, 0x65, 4076 0x6e, 0x74, 0x61, 0x72, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 4077 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 4078 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 4079 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 4080 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x11, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 4081 0x61, 0x72, 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x4c, 0x0a, 0x0b, 0x6d, 0x75, 4082 0x78, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 4083 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 4084 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 4085 0x76, 0x31, 0x2e, 0x4d, 0x75, 0x78, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x0a, 0x6d, 0x75, 4086 0x78, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x48, 0x0a, 0x09, 0x6d, 0x61, 0x6e, 0x69, 4087 0x66, 0x65, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 4088 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 4089 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 4090 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x52, 0x09, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 4091 0x74, 0x73, 0x12, 0x40, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 4092 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 4093 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 4094 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x06, 0x6f, 0x75, 4095 0x74, 0x70, 0x75, 0x74, 0x12, 0x46, 0x0a, 0x09, 0x61, 0x64, 0x5f, 0x62, 0x72, 0x65, 0x61, 0x6b, 4096 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 4097 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 4098 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x42, 0x72, 0x65, 4099 0x61, 0x6b, 0x52, 0x08, 0x61, 0x64, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x73, 0x12, 0x62, 0x0a, 0x12, 4100 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 4101 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 4102 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 4103 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x75, 0x62, 0x73, 4104 0x75, 0x62, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x70, 4105 0x75, 0x62, 0x73, 0x75, 0x62, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 4106 0x12, 0x52, 0x0a, 0x0d, 0x73, 0x70, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x73, 0x68, 0x65, 0x65, 0x74, 4107 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 4108 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 4109 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x70, 0x72, 0x69, 0x74, 4110 0x65, 0x53, 0x68, 0x65, 0x65, 0x74, 0x52, 0x0c, 0x73, 0x70, 0x72, 0x69, 0x74, 0x65, 0x53, 0x68, 4111 0x65, 0x65, 0x74, 0x73, 0x12, 0x45, 0x0a, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x73, 4112 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 4113 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 4114 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 4115 0x79, 0x52, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x73, 0x22, 0x95, 0x01, 0x0a, 0x05, 4116 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 4117 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x02, 4118 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x12, 0x68, 0x0a, 0x14, 0x70, 0x72, 0x65, 4119 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 4120 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 4121 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 4122 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x72, 4123 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x13, 4124 0x70, 0x72, 0x65, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 4125 0x66, 0x69, 0x67, 0x22, 0x1a, 0x0a, 0x06, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x10, 0x0a, 4126 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x22, 4127 0xbe, 0x01, 0x0a, 0x08, 0x45, 0x64, 0x69, 0x74, 0x41, 0x74, 0x6f, 0x6d, 0x12, 0x10, 0x0a, 0x03, 4128 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x16, 4129 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 4130 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x41, 0x0a, 0x0f, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 4131 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 4132 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 4133 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x65, 0x6e, 0x64, 0x54, 4134 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x45, 0x0a, 0x11, 0x73, 0x74, 0x61, 4135 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x04, 4136 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 4137 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 4138 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 4139 0x22, 0x50, 0x0a, 0x07, 0x41, 0x64, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x45, 0x0a, 0x11, 0x73, 4140 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 4141 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 4142 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 4143 0x6e, 0x52, 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 4144 0x65, 0x74, 0x22, 0xb2, 0x02, 0x0a, 0x10, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 4145 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x04, 4146 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x52, 0x0a, 0x0c, 0x76, 0x69, 0x64, 4147 0x65, 0x6f, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 4148 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 4149 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 4150 0x76, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x48, 0x00, 4151 0x52, 0x0b, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x52, 0x0a, 4152 0x0c, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 4153 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 4154 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 4155 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x74, 0x72, 0x65, 4156 0x61, 0x6d, 0x48, 0x00, 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 4157 0x6d, 0x12, 0x4f, 0x0a, 0x0b, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 4158 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 4159 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 4160 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x53, 0x74, 4161 0x72, 0x65, 0x61, 0x6d, 0x48, 0x00, 0x52, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x53, 0x74, 0x72, 0x65, 4162 0x61, 0x6d, 0x42, 0x13, 0x0a, 0x11, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 0x79, 4163 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x22, 0xb3, 0x02, 0x0a, 0x09, 0x4d, 0x75, 0x78, 0x53, 4164 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 4165 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 4166 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 4167 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 4168 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 4169 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x12, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 0x79, 4170 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 4171 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 4172 0x73, 0x12, 0x5c, 0x0a, 0x10, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x74, 4173 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 4174 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 4175 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x53, 4176 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x0f, 4177 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 4178 0x4c, 0x0a, 0x0a, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 4179 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 4180 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 4181 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 4182 0x6e, 0x52, 0x0a, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xe1, 0x01, 4183 0x0a, 0x08, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 4184 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 4185 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x50, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 4186 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 4187 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 4188 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 4189 0x74, 0x2e, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 4190 0xe0, 0x41, 0x02, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x0b, 0x6d, 0x75, 0x78, 4191 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 4192 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x6d, 0x75, 0x78, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x22, 4193 0x40, 0x0a, 0x0c, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 4194 0x1d, 0x0a, 0x19, 0x4d, 0x41, 0x4e, 0x49, 0x46, 0x45, 0x53, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 4195 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x07, 4196 0x0a, 0x03, 0x48, 0x4c, 0x53, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x41, 0x53, 0x48, 0x10, 4197 0x02, 0x22, 0x29, 0x0a, 0x11, 0x50, 0x75, 0x62, 0x73, 0x75, 0x62, 0x44, 0x65, 0x73, 0x74, 0x69, 4198 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18, 4199 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x22, 0x8e, 0x04, 0x0a, 4200 0x0b, 0x53, 0x70, 0x72, 0x69, 0x74, 0x65, 0x53, 0x68, 0x65, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 4201 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x6f, 4202 0x72, 0x6d, 0x61, 0x74, 0x12, 0x24, 0x0a, 0x0b, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x65, 4203 0x66, 0x69, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 4204 0x66, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x33, 0x0a, 0x13, 0x73, 0x70, 4205 0x72, 0x69, 0x74, 0x65, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 4206 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x11, 0x73, 0x70, 4207 0x72, 0x69, 0x74, 0x65, 0x57, 0x69, 0x64, 0x74, 0x68, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 4208 0x35, 0x0a, 0x14, 0x73, 0x70, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 4209 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 4210 0x41, 0x02, 0x52, 0x12, 0x73, 0x70, 0x72, 0x69, 0x74, 0x65, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 4211 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 4212 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 4213 0x6c, 0x75, 0x6d, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x77, 4214 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x6f, 4215 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x45, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 4216 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 4217 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 4218 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x73, 0x74, 4219 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x41, 0x0a, 4220 0x0f, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 4221 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 4222 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 4223 0x6e, 0x52, 0x0d, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 4224 0x12, 0x21, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 4225 0x09, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 4226 0x75, 0x6e, 0x74, 0x12, 0x37, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 4227 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 4228 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 4229 0x48, 0x00, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x18, 0x0a, 0x07, 4230 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x71, 4231 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x42, 0x15, 0x0a, 0x13, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 4232 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x22, 0xbf, 0x0a, 4233 0x0a, 0x07, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x12, 0x45, 0x0a, 0x05, 0x69, 0x6d, 0x61, 4234 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 4235 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 4236 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 4237 0x6c, 0x61, 0x79, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 4238 0x12, 0x53, 0x0a, 0x0a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 4239 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 4240 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 4241 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 4242 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x61, 0x6e, 0x69, 0x6d, 0x61, 4243 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x32, 0x0a, 0x14, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 4244 0x7a, 0x65, 0x64, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x12, 0x0c, 0x0a, 4245 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 4246 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x01, 0x79, 0x1a, 0x94, 0x01, 0x0a, 0x05, 0x49, 0x6d, 4247 0x61, 0x67, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 4248 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x03, 0x75, 0x72, 0x69, 0x12, 0x5e, 0x0a, 0x0a, 0x72, 0x65, 4249 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 4250 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 4251 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 4252 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 4253 0x69, 0x7a, 0x65, 0x64, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x52, 0x0a, 4254 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 4255 0x70, 0x68, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x61, 0x6c, 0x70, 0x68, 0x61, 4256 0x1a, 0xa8, 0x01, 0x0a, 0x0f, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 4257 0x61, 0x74, 0x69, 0x63, 0x12, 0x4e, 0x0a, 0x02, 0x78, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 4258 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 4259 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 4260 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 0x4e, 0x6f, 0x72, 0x6d, 4261 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 4262 0x52, 0x02, 0x78, 0x79, 0x12, 0x45, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 4263 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 4264 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 4265 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x73, 0x74, 0x61, 0x72, 4266 0x74, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x1a, 0xbf, 0x02, 0x0a, 0x0d, 4267 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x61, 0x64, 0x65, 0x12, 0x54, 0x0a, 4268 0x09, 0x66, 0x61, 0x64, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 4269 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 4270 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 4271 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 0x46, 0x61, 0x64, 0x65, 4272 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x66, 0x61, 0x64, 0x65, 0x54, 4273 0x79, 0x70, 0x65, 0x12, 0x4e, 0x0a, 0x02, 0x78, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 4274 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 4275 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 4276 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 4277 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x52, 4278 0x02, 0x78, 0x79, 0x12, 0x45, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 4279 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 4280 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 4281 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 4282 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x41, 0x0a, 0x0f, 0x65, 0x6e, 4283 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x04, 0x20, 4284 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 4285 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 4286 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x1a, 0x55, 0x0a, 4287 0x0c, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x12, 0x45, 0x0a, 4288 0x11, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 4289 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 4290 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 4291 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x66, 4292 0x66, 0x73, 0x65, 0x74, 0x1a, 0xc6, 0x02, 0x0a, 0x09, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 4293 0x6f, 0x6e, 0x12, 0x66, 0x0a, 0x10, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 4294 0x73, 0x74, 0x61, 0x74, 0x69, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 4295 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 4296 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 4297 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 4298 0x6e, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x48, 0x00, 0x52, 0x0f, 0x61, 0x6e, 0x69, 0x6d, 0x61, 4299 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x12, 0x60, 0x0a, 0x0e, 0x61, 0x6e, 4300 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x61, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 4301 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 4302 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 4303 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 0x41, 0x6e, 4304 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x61, 0x64, 0x65, 0x48, 0x00, 0x52, 0x0d, 0x61, 4305 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x61, 0x64, 0x65, 0x12, 0x5d, 0x0a, 0x0d, 4306 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x03, 0x20, 4307 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 4308 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 4309 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x2e, 0x41, 4310 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x0c, 0x61, 4311 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x42, 0x10, 0x0a, 0x0e, 0x61, 4312 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x40, 0x0a, 4313 0x08, 0x46, 0x61, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x46, 0x41, 0x44, 4314 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 4315 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x46, 0x41, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x10, 4316 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x41, 0x44, 0x45, 0x5f, 0x4f, 0x55, 0x54, 0x10, 0x02, 0x22, 4317 0xe5, 0x08, 0x0a, 0x13, 0x50, 0x72, 0x65, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 4318 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x51, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 4319 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 4320 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 4321 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x72, 0x6f, 4322 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x6f, 4323 0x6c, 0x6f, 0x72, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x57, 0x0a, 0x07, 0x64, 0x65, 4324 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f, 4325 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 4326 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x50, 4327 0x72, 0x65, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 4328 0x69, 0x67, 0x2e, 0x44, 0x65, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x52, 0x07, 0x64, 0x65, 0x6e, 0x6f, 4329 0x69, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x07, 0x64, 0x65, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x03, 4330 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 4331 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 4332 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x72, 0x6f, 0x63, 0x65, 4333 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x65, 0x62, 0x6c, 4334 0x6f, 0x63, 0x6b, 0x52, 0x07, 0x64, 0x65, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x51, 0x0a, 0x05, 4335 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 4336 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 4337 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x50, 4338 0x72, 0x65, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 4339 0x69, 0x67, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x52, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x12, 4340 0x4e, 0x0a, 0x04, 0x63, 0x72, 0x6f, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 4341 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 4342 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 4343 0x2e, 0x50, 0x72, 0x65, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 4344 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x72, 0x6f, 0x70, 0x52, 0x04, 0x63, 0x72, 0x6f, 0x70, 0x12, 4345 0x4b, 0x0a, 0x03, 0x70, 0x61, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 4346 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 4347 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 4348 0x50, 0x72, 0x65, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 4349 0x66, 0x69, 0x67, 0x2e, 0x50, 0x61, 0x64, 0x52, 0x03, 0x70, 0x61, 0x64, 0x1a, 0x63, 0x0a, 0x05, 4350 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x61, 0x74, 0x75, 0x72, 0x61, 0x74, 4351 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a, 0x73, 0x61, 0x74, 0x75, 0x72, 4352 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x73, 4353 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x73, 4354 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x18, 4355 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 4356 0x73, 0x1a, 0x39, 0x0a, 0x07, 0x44, 0x65, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 4357 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x08, 4358 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x75, 0x6e, 0x65, 4359 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x75, 0x6e, 0x65, 0x1a, 0x3f, 0x0a, 0x07, 4360 0x44, 0x65, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x65, 0x6e, 4361 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x08, 0x73, 0x74, 0x72, 0x65, 0x6e, 4362 0x67, 0x74, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 4363 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x1a, 0x57, 0x0a, 4364 0x05, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x75, 0x66, 0x73, 0x18, 0x01, 4365 0x20, 0x01, 0x28, 0x01, 0x52, 0x04, 0x6c, 0x75, 0x66, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x69, 4366 0x67, 0x68, 0x5f, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 4367 0x68, 0x69, 0x67, 0x68, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x77, 4368 0x5f, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6c, 0x6f, 4369 0x77, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x1a, 0x8e, 0x01, 0x0a, 0x04, 0x43, 0x72, 0x6f, 0x70, 0x12, 4370 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 4371 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x23, 4372 0x0a, 0x0d, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 4373 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x50, 0x69, 0x78, 4374 0x65, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x70, 0x69, 0x78, 0x65, 4375 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6c, 0x65, 0x66, 0x74, 0x50, 0x69, 4376 0x78, 0x65, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x70, 0x69, 4377 0x78, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x69, 0x67, 0x68, 4378 0x74, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x1a, 0x8d, 0x01, 0x0a, 0x03, 0x50, 0x61, 0x64, 0x12, 4379 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x70, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 4380 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x23, 4381 0x0a, 0x0d, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 4382 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x50, 0x69, 0x78, 4383 0x65, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x70, 0x69, 0x78, 0x65, 4384 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6c, 0x65, 0x66, 0x74, 0x50, 0x69, 4385 0x78, 0x65, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x70, 0x69, 4386 0x78, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x69, 0x67, 0x68, 4387 0x74, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x22, 0x89, 0x11, 0x0a, 0x0b, 0x56, 0x69, 0x64, 0x65, 4388 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x55, 0x0a, 0x04, 0x68, 0x32, 0x36, 0x34, 0x18, 4389 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 4390 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 4391 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x74, 4392 0x72, 0x65, 0x61, 0x6d, 0x2e, 0x48, 0x32, 0x36, 0x34, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x53, 0x65, 4393 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x48, 0x00, 0x52, 0x04, 0x68, 0x32, 0x36, 0x34, 0x12, 0x55, 4394 0x0a, 0x04, 0x68, 0x32, 0x36, 0x35, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67, 4395 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 4396 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 4397 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x2e, 0x48, 0x32, 0x36, 0x35, 4398 0x43, 0x6f, 0x64, 0x65, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x48, 0x00, 0x52, 4399 0x04, 0x68, 0x32, 0x36, 0x35, 0x12, 0x52, 0x0a, 0x03, 0x76, 0x70, 0x39, 0x18, 0x03, 0x20, 0x01, 4400 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 4401 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 4402 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 4403 0x6d, 0x2e, 0x56, 0x70, 0x39, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 4404 0x67, 0x73, 0x48, 0x00, 0x52, 0x03, 0x76, 0x70, 0x39, 0x1a, 0xf2, 0x05, 0x0a, 0x11, 0x48, 0x32, 4405 0x36, 0x34, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 4406 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 4407 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x77, 0x69, 0x64, 0x74, 0x68, 0x50, 0x69, 0x78, 0x65, 4408 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x70, 0x69, 0x78, 4409 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x68, 0x65, 0x69, 0x67, 0x68, 4410 0x74, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x66, 0x72, 0x61, 0x6d, 0x65, 4411 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x02, 4412 0x52, 0x09, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0b, 0x62, 4413 0x69, 0x74, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x70, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 4414 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x62, 0x69, 0x74, 0x72, 0x61, 0x74, 0x65, 0x42, 0x70, 4415 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 4416 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x46, 0x6f, 4417 0x72, 0x6d, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 4418 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 4419 0x0f, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x4d, 0x6f, 0x64, 0x65, 4420 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x72, 0x66, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x07, 0x20, 4421 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x72, 0x66, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x24, 0x0a, 4422 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x67, 0x6f, 0x70, 0x18, 4423 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4f, 0x70, 0x65, 0x6e, 4424 0x47, 0x6f, 0x70, 0x12, 0x28, 0x0a, 0x0f, 0x67, 0x6f, 0x70, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 4425 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0d, 4426 0x67, 0x6f, 0x70, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3e, 0x0a, 4427 0x0c, 0x67, 0x6f, 0x70, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 4428 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 4429 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 4430 0x52, 0x0b, 0x67, 0x6f, 0x70, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 4431 0x0f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x77, 0x6f, 0x5f, 0x70, 0x61, 0x73, 0x73, 4432 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x77, 4433 0x6f, 0x50, 0x61, 0x73, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x76, 0x62, 0x76, 0x5f, 0x73, 0x69, 0x7a, 4434 0x65, 0x5f, 0x62, 0x69, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x76, 0x62, 4435 0x76, 0x53, 0x69, 0x7a, 0x65, 0x42, 0x69, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x76, 0x62, 0x76, 4436 0x5f, 0x66, 0x75, 0x6c, 0x6c, 0x6e, 0x65, 0x73, 0x73, 0x5f, 0x62, 0x69, 0x74, 0x73, 0x18, 0x0d, 4437 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x76, 0x62, 0x76, 0x46, 0x75, 0x6c, 0x6c, 0x6e, 0x65, 0x73, 4438 0x73, 0x42, 0x69, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 4439 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x6e, 4440 0x74, 0x72, 0x6f, 0x70, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x5f, 4441 0x70, 0x79, 0x72, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x62, 4442 0x50, 0x79, 0x72, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x5f, 0x66, 0x72, 0x61, 4443 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 4444 0x62, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 4445 0x71, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x11, 0x20, 0x01, 0x28, 0x01, 4446 0x52, 0x0a, 0x61, 0x71, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x18, 0x0a, 0x07, 4447 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 4448 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x75, 0x6e, 0x65, 0x18, 0x13, 4449 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x75, 0x6e, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 4450 0x65, 0x73, 0x65, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x73, 4451 0x65, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x67, 0x6f, 0x70, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x1a, 0xcd, 4452 0x05, 0x0a, 0x11, 0x48, 0x32, 0x36, 0x35, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x53, 0x65, 0x74, 0x74, 4453 0x69, 0x6e, 0x67, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x70, 0x69, 4454 0x78, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x77, 0x69, 0x64, 0x74, 4455 0x68, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x68, 0x65, 0x69, 0x67, 0x68, 4456 0x74, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 4457 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x22, 0x0a, 0x0a, 4458 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 4459 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x61, 0x74, 0x65, 4460 0x12, 0x24, 0x0a, 0x0b, 0x62, 0x69, 0x74, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x70, 0x73, 0x18, 4461 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x62, 0x69, 0x74, 0x72, 4462 0x61, 0x74, 0x65, 0x42, 0x70, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x5f, 4463 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x69, 4464 0x78, 0x65, 0x6c, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x61, 0x74, 4465 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x06, 4466 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 4467 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x72, 0x66, 0x5f, 0x6c, 0x65, 0x76, 4468 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x72, 0x66, 0x4c, 0x65, 0x76, 4469 0x65, 0x6c, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 4470 0x5f, 0x67, 0x6f, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 4471 0x77, 0x4f, 0x70, 0x65, 0x6e, 0x47, 0x6f, 0x70, 0x12, 0x28, 0x0a, 0x0f, 0x67, 0x6f, 0x70, 0x5f, 4472 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 4473 0x05, 0x48, 0x00, 0x52, 0x0d, 0x67, 0x6f, 0x70, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x75, 4474 0x6e, 0x74, 0x12, 0x3e, 0x0a, 0x0c, 0x67, 0x6f, 0x70, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 4475 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 4476 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 4477 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0b, 0x67, 0x6f, 0x70, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 4478 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x77, 0x6f, 4479 0x5f, 0x70, 0x61, 0x73, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x65, 0x6e, 0x61, 4480 0x62, 0x6c, 0x65, 0x54, 0x77, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x76, 0x62, 4481 0x76, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x69, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 4482 0x05, 0x52, 0x0b, 0x76, 0x62, 0x76, 0x53, 0x69, 0x7a, 0x65, 0x42, 0x69, 0x74, 0x73, 0x12, 0x2a, 4483 0x0a, 0x11, 0x76, 0x62, 0x76, 0x5f, 0x66, 0x75, 0x6c, 0x6c, 0x6e, 0x65, 0x73, 0x73, 0x5f, 0x62, 4484 0x69, 0x74, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x76, 0x62, 0x76, 0x46, 0x75, 4485 0x6c, 0x6c, 0x6e, 0x65, 0x73, 0x73, 0x42, 0x69, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x5f, 4486 0x70, 0x79, 0x72, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x62, 4487 0x50, 0x79, 0x72, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x5f, 0x66, 0x72, 0x61, 4488 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 4489 0x62, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 4490 0x71, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x10, 0x20, 0x01, 0x28, 0x01, 4491 0x52, 0x0a, 0x61, 0x71, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x18, 0x0a, 0x07, 4492 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 4493 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x75, 0x6e, 0x65, 0x18, 0x12, 4494 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x75, 0x6e, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 4495 0x65, 0x73, 0x65, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x73, 4496 0x65, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x67, 0x6f, 0x70, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x1a, 0xa0, 4497 0x03, 0x0a, 0x10, 0x56, 0x70, 0x39, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x53, 0x65, 0x74, 0x74, 0x69, 4498 0x6e, 0x67, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x70, 0x69, 0x78, 4499 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x77, 0x69, 0x64, 0x74, 0x68, 4500 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 4501 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x68, 4502 0x65, 0x69, 0x67, 0x68, 0x74, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x66, 4503 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x42, 4504 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x61, 0x74, 0x65, 0x12, 4505 0x24, 0x0a, 0x0b, 0x62, 0x69, 0x74, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x70, 0x73, 0x18, 0x04, 4506 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x62, 0x69, 0x74, 0x72, 0x61, 4507 0x74, 0x65, 0x42, 0x70, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x5f, 0x66, 4508 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x69, 0x78, 4509 0x65, 0x6c, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x61, 0x74, 0x65, 4510 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, 4511 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 4512 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x72, 0x66, 0x5f, 0x6c, 0x65, 0x76, 0x65, 4513 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x72, 0x66, 0x4c, 0x65, 0x76, 0x65, 4514 0x6c, 0x12, 0x28, 0x0a, 0x0f, 0x67, 0x6f, 0x70, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x63, 4515 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0d, 0x67, 0x6f, 4516 0x70, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3e, 0x0a, 0x0c, 0x67, 4517 0x6f, 0x70, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 4518 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 4519 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0b, 4520 0x67, 0x6f, 0x70, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x70, 4521 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 4522 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x67, 0x6f, 0x70, 0x5f, 0x6d, 0x6f, 0x64, 4523 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 4524 0x6e, 0x67, 0x73, 0x22, 0xff, 0x03, 0x0a, 0x0b, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x74, 0x72, 4525 0x65, 0x61, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 4526 0x28, 0x09, 0x52, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x12, 0x24, 0x0a, 0x0b, 0x62, 0x69, 0x74, 4527 0x72, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x70, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 4528 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x62, 0x69, 0x74, 0x72, 0x61, 0x74, 0x65, 0x42, 0x70, 0x73, 0x12, 4529 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 4530 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 4531 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 4532 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x68, 4533 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x54, 0x0a, 0x07, 0x6d, 4534 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67, 4535 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 4536 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 4537 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x2e, 0x41, 0x75, 0x64, 0x69, 4538 0x6f, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 4539 0x67, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 4540 0x5f, 0x68, 0x65, 0x72, 0x74, 0x7a, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, 0x61, 4541 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x61, 0x74, 0x65, 0x48, 0x65, 0x72, 0x74, 0x7a, 0x1a, 0xe5, 0x01, 4542 0x0a, 0x0c, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x1e, 4543 0x0a, 0x08, 0x61, 0x74, 0x6f, 0x6d, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 4544 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x61, 0x74, 0x6f, 0x6d, 0x4b, 0x65, 0x79, 0x12, 0x20, 4545 0x0a, 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 4546 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x4b, 0x65, 0x79, 4547 0x12, 0x24, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x18, 4548 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x69, 0x6e, 0x70, 0x75, 4549 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x12, 0x28, 0x0a, 0x0d, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 4550 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 4551 0x41, 0x02, 0x52, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 4552 0x12, 0x2a, 0x0a, 0x0e, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 4553 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d, 0x6f, 4554 0x75, 0x74, 0x70, 0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x17, 0x0a, 0x07, 4555 0x67, 0x61, 0x69, 0x6e, 0x5f, 0x64, 0x62, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x52, 0x06, 0x67, 4556 0x61, 0x69, 0x6e, 0x44, 0x62, 0x22, 0xed, 0x01, 0x0a, 0x0a, 0x54, 0x65, 0x78, 0x74, 0x53, 0x74, 4557 0x72, 0x65, 0x61, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x18, 0x01, 0x20, 4558 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x12, 0x52, 0x0a, 0x07, 0x6d, 0x61, 4559 0x70, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 4560 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 4561 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x54, 4562 0x65, 0x78, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x61, 4563 0x70, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x1a, 0x75, 4564 0x0a, 0x0b, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x1e, 0x0a, 4565 0x08, 0x61, 0x74, 0x6f, 0x6d, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 4566 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x61, 0x74, 0x6f, 0x6d, 0x4b, 0x65, 0x79, 0x12, 0x20, 0x0a, 4567 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 4568 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x4b, 0x65, 0x79, 0x12, 4569 0x24, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x18, 0x03, 4570 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x69, 0x6e, 0x70, 0x75, 0x74, 4571 0x54, 0x72, 0x61, 0x63, 0x6b, 0x22, 0x8d, 0x01, 0x0a, 0x0f, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 4572 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x44, 0x0a, 0x10, 0x73, 0x65, 0x67, 4573 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 4574 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 4575 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 4576 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 4577 0x34, 0x0a, 0x13, 0x69, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x5f, 0x73, 0x65, 4578 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 4579 0x02, 0x52, 0x12, 0x69, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x53, 0x65, 0x67, 4580 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0xa2, 0x04, 0x0a, 0x0a, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 4581 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x15, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 4582 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x13, 0x0a, 0x02, 0x69, 4583 0x76, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x02, 0x69, 0x76, 4584 0x12, 0x58, 0x0a, 0x07, 0x61, 0x65, 0x73, 0x5f, 0x31, 0x32, 0x38, 0x18, 0x03, 0x20, 0x01, 0x28, 4585 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 4586 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 4587 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 4588 0x41, 0x65, 0x73, 0x31, 0x32, 0x38, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 4589 0x48, 0x00, 0x52, 0x06, 0x61, 0x65, 0x73, 0x31, 0x32, 0x38, 0x12, 0x61, 0x0a, 0x0a, 0x73, 0x61, 4590 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x61, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x40, 4591 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 4592 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2e, 0x76, 4593 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x61, 0x6d, 4594 0x70, 0x6c, 0x65, 0x41, 0x65, 0x73, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 4595 0x48, 0x00, 0x52, 0x09, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x41, 0x65, 0x73, 0x12, 0x60, 0x0a, 4596 0x09, 0x6d, 0x70, 0x65, 0x67, 0x5f, 0x63, 0x65, 0x6e, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 4597 0x32, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 4598 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 4599 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4d, 4600 0x70, 0x65, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 4601 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x70, 0x65, 0x67, 0x43, 0x65, 0x6e, 0x63, 0x1a, 4602 0x30, 0x0a, 0x10, 0x41, 0x65, 0x73, 0x31, 0x32, 0x38, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 4603 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 4604 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x6b, 0x65, 0x79, 0x55, 0x72, 4605 0x69, 0x1a, 0x33, 0x0a, 0x13, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x41, 0x65, 0x73, 0x45, 0x6e, 4606 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x5f, 4607 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 4608 0x6b, 0x65, 0x79, 0x55, 0x72, 0x69, 0x1a, 0x4f, 0x0a, 0x14, 0x4d, 0x70, 0x65, 0x67, 0x43, 0x6f, 4609 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 4610 0x0a, 0x06, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 4611 0xe0, 0x41, 0x02, 0x52, 0x05, 0x6b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x63, 4612 0x68, 0x65, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 4613 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x42, 0x11, 0x0a, 0x0f, 0x65, 0x6e, 0x63, 0x72, 0x79, 4614 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x42, 0x84, 0x01, 0x0a, 0x24, 0x63, 4615 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 4616 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 0x72, 4617 0x2e, 0x76, 0x31, 0x42, 0x0e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x50, 0x72, 4618 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 4619 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 4620 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, 0x6f, 4621 0x75, 0x64, 0x2f, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x2f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 4622 0x64, 0x65, 0x72, 0x2f, 0x76, 0x31, 0x3b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x6f, 0x64, 0x65, 4623 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 4624} 4625 4626var ( 4627 file_google_cloud_video_transcoder_v1_resources_proto_rawDescOnce sync.Once 4628 file_google_cloud_video_transcoder_v1_resources_proto_rawDescData = file_google_cloud_video_transcoder_v1_resources_proto_rawDesc 4629) 4630 4631func file_google_cloud_video_transcoder_v1_resources_proto_rawDescGZIP() []byte { 4632 file_google_cloud_video_transcoder_v1_resources_proto_rawDescOnce.Do(func() { 4633 file_google_cloud_video_transcoder_v1_resources_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_video_transcoder_v1_resources_proto_rawDescData) 4634 }) 4635 return file_google_cloud_video_transcoder_v1_resources_proto_rawDescData 4636} 4637 4638var file_google_cloud_video_transcoder_v1_resources_proto_enumTypes = make([]protoimpl.EnumInfo, 3) 4639var file_google_cloud_video_transcoder_v1_resources_proto_msgTypes = make([]protoimpl.MessageInfo, 39) 4640var file_google_cloud_video_transcoder_v1_resources_proto_goTypes = []interface{}{ 4641 (Job_ProcessingState)(0), // 0: google.cloud.video.transcoder.v1.Job.ProcessingState 4642 (Manifest_ManifestType)(0), // 1: google.cloud.video.transcoder.v1.Manifest.ManifestType 4643 (Overlay_FadeType)(0), // 2: google.cloud.video.transcoder.v1.Overlay.FadeType 4644 (*Job)(nil), // 3: google.cloud.video.transcoder.v1.Job 4645 (*JobTemplate)(nil), // 4: google.cloud.video.transcoder.v1.JobTemplate 4646 (*JobConfig)(nil), // 5: google.cloud.video.transcoder.v1.JobConfig 4647 (*Input)(nil), // 6: google.cloud.video.transcoder.v1.Input 4648 (*Output)(nil), // 7: google.cloud.video.transcoder.v1.Output 4649 (*EditAtom)(nil), // 8: google.cloud.video.transcoder.v1.EditAtom 4650 (*AdBreak)(nil), // 9: google.cloud.video.transcoder.v1.AdBreak 4651 (*ElementaryStream)(nil), // 10: google.cloud.video.transcoder.v1.ElementaryStream 4652 (*MuxStream)(nil), // 11: google.cloud.video.transcoder.v1.MuxStream 4653 (*Manifest)(nil), // 12: google.cloud.video.transcoder.v1.Manifest 4654 (*PubsubDestination)(nil), // 13: google.cloud.video.transcoder.v1.PubsubDestination 4655 (*SpriteSheet)(nil), // 14: google.cloud.video.transcoder.v1.SpriteSheet 4656 (*Overlay)(nil), // 15: google.cloud.video.transcoder.v1.Overlay 4657 (*PreprocessingConfig)(nil), // 16: google.cloud.video.transcoder.v1.PreprocessingConfig 4658 (*VideoStream)(nil), // 17: google.cloud.video.transcoder.v1.VideoStream 4659 (*AudioStream)(nil), // 18: google.cloud.video.transcoder.v1.AudioStream 4660 (*TextStream)(nil), // 19: google.cloud.video.transcoder.v1.TextStream 4661 (*SegmentSettings)(nil), // 20: google.cloud.video.transcoder.v1.SegmentSettings 4662 (*Encryption)(nil), // 21: google.cloud.video.transcoder.v1.Encryption 4663 (*Overlay_NormalizedCoordinate)(nil), // 22: google.cloud.video.transcoder.v1.Overlay.NormalizedCoordinate 4664 (*Overlay_Image)(nil), // 23: google.cloud.video.transcoder.v1.Overlay.Image 4665 (*Overlay_AnimationStatic)(nil), // 24: google.cloud.video.transcoder.v1.Overlay.AnimationStatic 4666 (*Overlay_AnimationFade)(nil), // 25: google.cloud.video.transcoder.v1.Overlay.AnimationFade 4667 (*Overlay_AnimationEnd)(nil), // 26: google.cloud.video.transcoder.v1.Overlay.AnimationEnd 4668 (*Overlay_Animation)(nil), // 27: google.cloud.video.transcoder.v1.Overlay.Animation 4669 (*PreprocessingConfig_Color)(nil), // 28: google.cloud.video.transcoder.v1.PreprocessingConfig.Color 4670 (*PreprocessingConfig_Denoise)(nil), // 29: google.cloud.video.transcoder.v1.PreprocessingConfig.Denoise 4671 (*PreprocessingConfig_Deblock)(nil), // 30: google.cloud.video.transcoder.v1.PreprocessingConfig.Deblock 4672 (*PreprocessingConfig_Audio)(nil), // 31: google.cloud.video.transcoder.v1.PreprocessingConfig.Audio 4673 (*PreprocessingConfig_Crop)(nil), // 32: google.cloud.video.transcoder.v1.PreprocessingConfig.Crop 4674 (*PreprocessingConfig_Pad)(nil), // 33: google.cloud.video.transcoder.v1.PreprocessingConfig.Pad 4675 (*VideoStream_H264CodecSettings)(nil), // 34: google.cloud.video.transcoder.v1.VideoStream.H264CodecSettings 4676 (*VideoStream_H265CodecSettings)(nil), // 35: google.cloud.video.transcoder.v1.VideoStream.H265CodecSettings 4677 (*VideoStream_Vp9CodecSettings)(nil), // 36: google.cloud.video.transcoder.v1.VideoStream.Vp9CodecSettings 4678 (*AudioStream_AudioMapping)(nil), // 37: google.cloud.video.transcoder.v1.AudioStream.AudioMapping 4679 (*TextStream_TextMapping)(nil), // 38: google.cloud.video.transcoder.v1.TextStream.TextMapping 4680 (*Encryption_Aes128Encryption)(nil), // 39: google.cloud.video.transcoder.v1.Encryption.Aes128Encryption 4681 (*Encryption_SampleAesEncryption)(nil), // 40: google.cloud.video.transcoder.v1.Encryption.SampleAesEncryption 4682 (*Encryption_MpegCommonEncryption)(nil), // 41: google.cloud.video.transcoder.v1.Encryption.MpegCommonEncryption 4683 (*timestamppb.Timestamp)(nil), // 42: google.protobuf.Timestamp 4684 (*status.Status)(nil), // 43: google.rpc.Status 4685 (*durationpb.Duration)(nil), // 44: google.protobuf.Duration 4686} 4687var file_google_cloud_video_transcoder_v1_resources_proto_depIdxs = []int32{ 4688 5, // 0: google.cloud.video.transcoder.v1.Job.config:type_name -> google.cloud.video.transcoder.v1.JobConfig 4689 0, // 1: google.cloud.video.transcoder.v1.Job.state:type_name -> google.cloud.video.transcoder.v1.Job.ProcessingState 4690 42, // 2: google.cloud.video.transcoder.v1.Job.create_time:type_name -> google.protobuf.Timestamp 4691 42, // 3: google.cloud.video.transcoder.v1.Job.start_time:type_name -> google.protobuf.Timestamp 4692 42, // 4: google.cloud.video.transcoder.v1.Job.end_time:type_name -> google.protobuf.Timestamp 4693 43, // 5: google.cloud.video.transcoder.v1.Job.error:type_name -> google.rpc.Status 4694 5, // 6: google.cloud.video.transcoder.v1.JobTemplate.config:type_name -> google.cloud.video.transcoder.v1.JobConfig 4695 6, // 7: google.cloud.video.transcoder.v1.JobConfig.inputs:type_name -> google.cloud.video.transcoder.v1.Input 4696 8, // 8: google.cloud.video.transcoder.v1.JobConfig.edit_list:type_name -> google.cloud.video.transcoder.v1.EditAtom 4697 10, // 9: google.cloud.video.transcoder.v1.JobConfig.elementary_streams:type_name -> google.cloud.video.transcoder.v1.ElementaryStream 4698 11, // 10: google.cloud.video.transcoder.v1.JobConfig.mux_streams:type_name -> google.cloud.video.transcoder.v1.MuxStream 4699 12, // 11: google.cloud.video.transcoder.v1.JobConfig.manifests:type_name -> google.cloud.video.transcoder.v1.Manifest 4700 7, // 12: google.cloud.video.transcoder.v1.JobConfig.output:type_name -> google.cloud.video.transcoder.v1.Output 4701 9, // 13: google.cloud.video.transcoder.v1.JobConfig.ad_breaks:type_name -> google.cloud.video.transcoder.v1.AdBreak 4702 13, // 14: google.cloud.video.transcoder.v1.JobConfig.pubsub_destination:type_name -> google.cloud.video.transcoder.v1.PubsubDestination 4703 14, // 15: google.cloud.video.transcoder.v1.JobConfig.sprite_sheets:type_name -> google.cloud.video.transcoder.v1.SpriteSheet 4704 15, // 16: google.cloud.video.transcoder.v1.JobConfig.overlays:type_name -> google.cloud.video.transcoder.v1.Overlay 4705 16, // 17: google.cloud.video.transcoder.v1.Input.preprocessing_config:type_name -> google.cloud.video.transcoder.v1.PreprocessingConfig 4706 44, // 18: google.cloud.video.transcoder.v1.EditAtom.end_time_offset:type_name -> google.protobuf.Duration 4707 44, // 19: google.cloud.video.transcoder.v1.EditAtom.start_time_offset:type_name -> google.protobuf.Duration 4708 44, // 20: google.cloud.video.transcoder.v1.AdBreak.start_time_offset:type_name -> google.protobuf.Duration 4709 17, // 21: google.cloud.video.transcoder.v1.ElementaryStream.video_stream:type_name -> google.cloud.video.transcoder.v1.VideoStream 4710 18, // 22: google.cloud.video.transcoder.v1.ElementaryStream.audio_stream:type_name -> google.cloud.video.transcoder.v1.AudioStream 4711 19, // 23: google.cloud.video.transcoder.v1.ElementaryStream.text_stream:type_name -> google.cloud.video.transcoder.v1.TextStream 4712 20, // 24: google.cloud.video.transcoder.v1.MuxStream.segment_settings:type_name -> google.cloud.video.transcoder.v1.SegmentSettings 4713 21, // 25: google.cloud.video.transcoder.v1.MuxStream.encryption:type_name -> google.cloud.video.transcoder.v1.Encryption 4714 1, // 26: google.cloud.video.transcoder.v1.Manifest.type:type_name -> google.cloud.video.transcoder.v1.Manifest.ManifestType 4715 44, // 27: google.cloud.video.transcoder.v1.SpriteSheet.start_time_offset:type_name -> google.protobuf.Duration 4716 44, // 28: google.cloud.video.transcoder.v1.SpriteSheet.end_time_offset:type_name -> google.protobuf.Duration 4717 44, // 29: google.cloud.video.transcoder.v1.SpriteSheet.interval:type_name -> google.protobuf.Duration 4718 23, // 30: google.cloud.video.transcoder.v1.Overlay.image:type_name -> google.cloud.video.transcoder.v1.Overlay.Image 4719 27, // 31: google.cloud.video.transcoder.v1.Overlay.animations:type_name -> google.cloud.video.transcoder.v1.Overlay.Animation 4720 28, // 32: google.cloud.video.transcoder.v1.PreprocessingConfig.color:type_name -> google.cloud.video.transcoder.v1.PreprocessingConfig.Color 4721 29, // 33: google.cloud.video.transcoder.v1.PreprocessingConfig.denoise:type_name -> google.cloud.video.transcoder.v1.PreprocessingConfig.Denoise 4722 30, // 34: google.cloud.video.transcoder.v1.PreprocessingConfig.deblock:type_name -> google.cloud.video.transcoder.v1.PreprocessingConfig.Deblock 4723 31, // 35: google.cloud.video.transcoder.v1.PreprocessingConfig.audio:type_name -> google.cloud.video.transcoder.v1.PreprocessingConfig.Audio 4724 32, // 36: google.cloud.video.transcoder.v1.PreprocessingConfig.crop:type_name -> google.cloud.video.transcoder.v1.PreprocessingConfig.Crop 4725 33, // 37: google.cloud.video.transcoder.v1.PreprocessingConfig.pad:type_name -> google.cloud.video.transcoder.v1.PreprocessingConfig.Pad 4726 34, // 38: google.cloud.video.transcoder.v1.VideoStream.h264:type_name -> google.cloud.video.transcoder.v1.VideoStream.H264CodecSettings 4727 35, // 39: google.cloud.video.transcoder.v1.VideoStream.h265:type_name -> google.cloud.video.transcoder.v1.VideoStream.H265CodecSettings 4728 36, // 40: google.cloud.video.transcoder.v1.VideoStream.vp9:type_name -> google.cloud.video.transcoder.v1.VideoStream.Vp9CodecSettings 4729 37, // 41: google.cloud.video.transcoder.v1.AudioStream.mapping:type_name -> google.cloud.video.transcoder.v1.AudioStream.AudioMapping 4730 38, // 42: google.cloud.video.transcoder.v1.TextStream.mapping:type_name -> google.cloud.video.transcoder.v1.TextStream.TextMapping 4731 44, // 43: google.cloud.video.transcoder.v1.SegmentSettings.segment_duration:type_name -> google.protobuf.Duration 4732 39, // 44: google.cloud.video.transcoder.v1.Encryption.aes_128:type_name -> google.cloud.video.transcoder.v1.Encryption.Aes128Encryption 4733 40, // 45: google.cloud.video.transcoder.v1.Encryption.sample_aes:type_name -> google.cloud.video.transcoder.v1.Encryption.SampleAesEncryption 4734 41, // 46: google.cloud.video.transcoder.v1.Encryption.mpeg_cenc:type_name -> google.cloud.video.transcoder.v1.Encryption.MpegCommonEncryption 4735 22, // 47: google.cloud.video.transcoder.v1.Overlay.Image.resolution:type_name -> google.cloud.video.transcoder.v1.Overlay.NormalizedCoordinate 4736 22, // 48: google.cloud.video.transcoder.v1.Overlay.AnimationStatic.xy:type_name -> google.cloud.video.transcoder.v1.Overlay.NormalizedCoordinate 4737 44, // 49: google.cloud.video.transcoder.v1.Overlay.AnimationStatic.start_time_offset:type_name -> google.protobuf.Duration 4738 2, // 50: google.cloud.video.transcoder.v1.Overlay.AnimationFade.fade_type:type_name -> google.cloud.video.transcoder.v1.Overlay.FadeType 4739 22, // 51: google.cloud.video.transcoder.v1.Overlay.AnimationFade.xy:type_name -> google.cloud.video.transcoder.v1.Overlay.NormalizedCoordinate 4740 44, // 52: google.cloud.video.transcoder.v1.Overlay.AnimationFade.start_time_offset:type_name -> google.protobuf.Duration 4741 44, // 53: google.cloud.video.transcoder.v1.Overlay.AnimationFade.end_time_offset:type_name -> google.protobuf.Duration 4742 44, // 54: google.cloud.video.transcoder.v1.Overlay.AnimationEnd.start_time_offset:type_name -> google.protobuf.Duration 4743 24, // 55: google.cloud.video.transcoder.v1.Overlay.Animation.animation_static:type_name -> google.cloud.video.transcoder.v1.Overlay.AnimationStatic 4744 25, // 56: google.cloud.video.transcoder.v1.Overlay.Animation.animation_fade:type_name -> google.cloud.video.transcoder.v1.Overlay.AnimationFade 4745 26, // 57: google.cloud.video.transcoder.v1.Overlay.Animation.animation_end:type_name -> google.cloud.video.transcoder.v1.Overlay.AnimationEnd 4746 44, // 58: google.cloud.video.transcoder.v1.VideoStream.H264CodecSettings.gop_duration:type_name -> google.protobuf.Duration 4747 44, // 59: google.cloud.video.transcoder.v1.VideoStream.H265CodecSettings.gop_duration:type_name -> google.protobuf.Duration 4748 44, // 60: google.cloud.video.transcoder.v1.VideoStream.Vp9CodecSettings.gop_duration:type_name -> google.protobuf.Duration 4749 61, // [61:61] is the sub-list for method output_type 4750 61, // [61:61] is the sub-list for method input_type 4751 61, // [61:61] is the sub-list for extension type_name 4752 61, // [61:61] is the sub-list for extension extendee 4753 0, // [0:61] is the sub-list for field type_name 4754} 4755 4756func init() { file_google_cloud_video_transcoder_v1_resources_proto_init() } 4757func file_google_cloud_video_transcoder_v1_resources_proto_init() { 4758 if File_google_cloud_video_transcoder_v1_resources_proto != nil { 4759 return 4760 } 4761 if !protoimpl.UnsafeEnabled { 4762 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 4763 switch v := v.(*Job); i { 4764 case 0: 4765 return &v.state 4766 case 1: 4767 return &v.sizeCache 4768 case 2: 4769 return &v.unknownFields 4770 default: 4771 return nil 4772 } 4773 } 4774 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 4775 switch v := v.(*JobTemplate); i { 4776 case 0: 4777 return &v.state 4778 case 1: 4779 return &v.sizeCache 4780 case 2: 4781 return &v.unknownFields 4782 default: 4783 return nil 4784 } 4785 } 4786 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 4787 switch v := v.(*JobConfig); i { 4788 case 0: 4789 return &v.state 4790 case 1: 4791 return &v.sizeCache 4792 case 2: 4793 return &v.unknownFields 4794 default: 4795 return nil 4796 } 4797 } 4798 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 4799 switch v := v.(*Input); i { 4800 case 0: 4801 return &v.state 4802 case 1: 4803 return &v.sizeCache 4804 case 2: 4805 return &v.unknownFields 4806 default: 4807 return nil 4808 } 4809 } 4810 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 4811 switch v := v.(*Output); i { 4812 case 0: 4813 return &v.state 4814 case 1: 4815 return &v.sizeCache 4816 case 2: 4817 return &v.unknownFields 4818 default: 4819 return nil 4820 } 4821 } 4822 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 4823 switch v := v.(*EditAtom); i { 4824 case 0: 4825 return &v.state 4826 case 1: 4827 return &v.sizeCache 4828 case 2: 4829 return &v.unknownFields 4830 default: 4831 return nil 4832 } 4833 } 4834 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 4835 switch v := v.(*AdBreak); i { 4836 case 0: 4837 return &v.state 4838 case 1: 4839 return &v.sizeCache 4840 case 2: 4841 return &v.unknownFields 4842 default: 4843 return nil 4844 } 4845 } 4846 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 4847 switch v := v.(*ElementaryStream); i { 4848 case 0: 4849 return &v.state 4850 case 1: 4851 return &v.sizeCache 4852 case 2: 4853 return &v.unknownFields 4854 default: 4855 return nil 4856 } 4857 } 4858 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 4859 switch v := v.(*MuxStream); i { 4860 case 0: 4861 return &v.state 4862 case 1: 4863 return &v.sizeCache 4864 case 2: 4865 return &v.unknownFields 4866 default: 4867 return nil 4868 } 4869 } 4870 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 4871 switch v := v.(*Manifest); i { 4872 case 0: 4873 return &v.state 4874 case 1: 4875 return &v.sizeCache 4876 case 2: 4877 return &v.unknownFields 4878 default: 4879 return nil 4880 } 4881 } 4882 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 4883 switch v := v.(*PubsubDestination); i { 4884 case 0: 4885 return &v.state 4886 case 1: 4887 return &v.sizeCache 4888 case 2: 4889 return &v.unknownFields 4890 default: 4891 return nil 4892 } 4893 } 4894 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 4895 switch v := v.(*SpriteSheet); i { 4896 case 0: 4897 return &v.state 4898 case 1: 4899 return &v.sizeCache 4900 case 2: 4901 return &v.unknownFields 4902 default: 4903 return nil 4904 } 4905 } 4906 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 4907 switch v := v.(*Overlay); i { 4908 case 0: 4909 return &v.state 4910 case 1: 4911 return &v.sizeCache 4912 case 2: 4913 return &v.unknownFields 4914 default: 4915 return nil 4916 } 4917 } 4918 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { 4919 switch v := v.(*PreprocessingConfig); i { 4920 case 0: 4921 return &v.state 4922 case 1: 4923 return &v.sizeCache 4924 case 2: 4925 return &v.unknownFields 4926 default: 4927 return nil 4928 } 4929 } 4930 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { 4931 switch v := v.(*VideoStream); i { 4932 case 0: 4933 return &v.state 4934 case 1: 4935 return &v.sizeCache 4936 case 2: 4937 return &v.unknownFields 4938 default: 4939 return nil 4940 } 4941 } 4942 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { 4943 switch v := v.(*AudioStream); i { 4944 case 0: 4945 return &v.state 4946 case 1: 4947 return &v.sizeCache 4948 case 2: 4949 return &v.unknownFields 4950 default: 4951 return nil 4952 } 4953 } 4954 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { 4955 switch v := v.(*TextStream); i { 4956 case 0: 4957 return &v.state 4958 case 1: 4959 return &v.sizeCache 4960 case 2: 4961 return &v.unknownFields 4962 default: 4963 return nil 4964 } 4965 } 4966 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { 4967 switch v := v.(*SegmentSettings); i { 4968 case 0: 4969 return &v.state 4970 case 1: 4971 return &v.sizeCache 4972 case 2: 4973 return &v.unknownFields 4974 default: 4975 return nil 4976 } 4977 } 4978 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { 4979 switch v := v.(*Encryption); i { 4980 case 0: 4981 return &v.state 4982 case 1: 4983 return &v.sizeCache 4984 case 2: 4985 return &v.unknownFields 4986 default: 4987 return nil 4988 } 4989 } 4990 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { 4991 switch v := v.(*Overlay_NormalizedCoordinate); i { 4992 case 0: 4993 return &v.state 4994 case 1: 4995 return &v.sizeCache 4996 case 2: 4997 return &v.unknownFields 4998 default: 4999 return nil 5000 } 5001 } 5002 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { 5003 switch v := v.(*Overlay_Image); i { 5004 case 0: 5005 return &v.state 5006 case 1: 5007 return &v.sizeCache 5008 case 2: 5009 return &v.unknownFields 5010 default: 5011 return nil 5012 } 5013 } 5014 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { 5015 switch v := v.(*Overlay_AnimationStatic); i { 5016 case 0: 5017 return &v.state 5018 case 1: 5019 return &v.sizeCache 5020 case 2: 5021 return &v.unknownFields 5022 default: 5023 return nil 5024 } 5025 } 5026 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { 5027 switch v := v.(*Overlay_AnimationFade); i { 5028 case 0: 5029 return &v.state 5030 case 1: 5031 return &v.sizeCache 5032 case 2: 5033 return &v.unknownFields 5034 default: 5035 return nil 5036 } 5037 } 5038 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { 5039 switch v := v.(*Overlay_AnimationEnd); i { 5040 case 0: 5041 return &v.state 5042 case 1: 5043 return &v.sizeCache 5044 case 2: 5045 return &v.unknownFields 5046 default: 5047 return nil 5048 } 5049 } 5050 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { 5051 switch v := v.(*Overlay_Animation); i { 5052 case 0: 5053 return &v.state 5054 case 1: 5055 return &v.sizeCache 5056 case 2: 5057 return &v.unknownFields 5058 default: 5059 return nil 5060 } 5061 } 5062 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { 5063 switch v := v.(*PreprocessingConfig_Color); i { 5064 case 0: 5065 return &v.state 5066 case 1: 5067 return &v.sizeCache 5068 case 2: 5069 return &v.unknownFields 5070 default: 5071 return nil 5072 } 5073 } 5074 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { 5075 switch v := v.(*PreprocessingConfig_Denoise); i { 5076 case 0: 5077 return &v.state 5078 case 1: 5079 return &v.sizeCache 5080 case 2: 5081 return &v.unknownFields 5082 default: 5083 return nil 5084 } 5085 } 5086 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { 5087 switch v := v.(*PreprocessingConfig_Deblock); i { 5088 case 0: 5089 return &v.state 5090 case 1: 5091 return &v.sizeCache 5092 case 2: 5093 return &v.unknownFields 5094 default: 5095 return nil 5096 } 5097 } 5098 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { 5099 switch v := v.(*PreprocessingConfig_Audio); i { 5100 case 0: 5101 return &v.state 5102 case 1: 5103 return &v.sizeCache 5104 case 2: 5105 return &v.unknownFields 5106 default: 5107 return nil 5108 } 5109 } 5110 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { 5111 switch v := v.(*PreprocessingConfig_Crop); i { 5112 case 0: 5113 return &v.state 5114 case 1: 5115 return &v.sizeCache 5116 case 2: 5117 return &v.unknownFields 5118 default: 5119 return nil 5120 } 5121 } 5122 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { 5123 switch v := v.(*PreprocessingConfig_Pad); i { 5124 case 0: 5125 return &v.state 5126 case 1: 5127 return &v.sizeCache 5128 case 2: 5129 return &v.unknownFields 5130 default: 5131 return nil 5132 } 5133 } 5134 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { 5135 switch v := v.(*VideoStream_H264CodecSettings); i { 5136 case 0: 5137 return &v.state 5138 case 1: 5139 return &v.sizeCache 5140 case 2: 5141 return &v.unknownFields 5142 default: 5143 return nil 5144 } 5145 } 5146 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { 5147 switch v := v.(*VideoStream_H265CodecSettings); i { 5148 case 0: 5149 return &v.state 5150 case 1: 5151 return &v.sizeCache 5152 case 2: 5153 return &v.unknownFields 5154 default: 5155 return nil 5156 } 5157 } 5158 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { 5159 switch v := v.(*VideoStream_Vp9CodecSettings); i { 5160 case 0: 5161 return &v.state 5162 case 1: 5163 return &v.sizeCache 5164 case 2: 5165 return &v.unknownFields 5166 default: 5167 return nil 5168 } 5169 } 5170 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { 5171 switch v := v.(*AudioStream_AudioMapping); i { 5172 case 0: 5173 return &v.state 5174 case 1: 5175 return &v.sizeCache 5176 case 2: 5177 return &v.unknownFields 5178 default: 5179 return nil 5180 } 5181 } 5182 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { 5183 switch v := v.(*TextStream_TextMapping); i { 5184 case 0: 5185 return &v.state 5186 case 1: 5187 return &v.sizeCache 5188 case 2: 5189 return &v.unknownFields 5190 default: 5191 return nil 5192 } 5193 } 5194 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { 5195 switch v := v.(*Encryption_Aes128Encryption); i { 5196 case 0: 5197 return &v.state 5198 case 1: 5199 return &v.sizeCache 5200 case 2: 5201 return &v.unknownFields 5202 default: 5203 return nil 5204 } 5205 } 5206 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { 5207 switch v := v.(*Encryption_SampleAesEncryption); i { 5208 case 0: 5209 return &v.state 5210 case 1: 5211 return &v.sizeCache 5212 case 2: 5213 return &v.unknownFields 5214 default: 5215 return nil 5216 } 5217 } 5218 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { 5219 switch v := v.(*Encryption_MpegCommonEncryption); i { 5220 case 0: 5221 return &v.state 5222 case 1: 5223 return &v.sizeCache 5224 case 2: 5225 return &v.unknownFields 5226 default: 5227 return nil 5228 } 5229 } 5230 } 5231 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[0].OneofWrappers = []interface{}{ 5232 (*Job_TemplateId)(nil), 5233 (*Job_Config)(nil), 5234 } 5235 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[7].OneofWrappers = []interface{}{ 5236 (*ElementaryStream_VideoStream)(nil), 5237 (*ElementaryStream_AudioStream)(nil), 5238 (*ElementaryStream_TextStream)(nil), 5239 } 5240 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[11].OneofWrappers = []interface{}{ 5241 (*SpriteSheet_TotalCount)(nil), 5242 (*SpriteSheet_Interval)(nil), 5243 } 5244 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[14].OneofWrappers = []interface{}{ 5245 (*VideoStream_H264)(nil), 5246 (*VideoStream_H265)(nil), 5247 (*VideoStream_Vp9)(nil), 5248 } 5249 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[18].OneofWrappers = []interface{}{ 5250 (*Encryption_Aes_128)(nil), 5251 (*Encryption_SampleAes)(nil), 5252 (*Encryption_MpegCenc)(nil), 5253 } 5254 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[24].OneofWrappers = []interface{}{ 5255 (*Overlay_Animation_AnimationStatic)(nil), 5256 (*Overlay_Animation_AnimationFade)(nil), 5257 (*Overlay_Animation_AnimationEnd)(nil), 5258 } 5259 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[31].OneofWrappers = []interface{}{ 5260 (*VideoStream_H264CodecSettings_GopFrameCount)(nil), 5261 (*VideoStream_H264CodecSettings_GopDuration)(nil), 5262 } 5263 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[32].OneofWrappers = []interface{}{ 5264 (*VideoStream_H265CodecSettings_GopFrameCount)(nil), 5265 (*VideoStream_H265CodecSettings_GopDuration)(nil), 5266 } 5267 file_google_cloud_video_transcoder_v1_resources_proto_msgTypes[33].OneofWrappers = []interface{}{ 5268 (*VideoStream_Vp9CodecSettings_GopFrameCount)(nil), 5269 (*VideoStream_Vp9CodecSettings_GopDuration)(nil), 5270 } 5271 type x struct{} 5272 out := protoimpl.TypeBuilder{ 5273 File: protoimpl.DescBuilder{ 5274 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 5275 RawDescriptor: file_google_cloud_video_transcoder_v1_resources_proto_rawDesc, 5276 NumEnums: 3, 5277 NumMessages: 39, 5278 NumExtensions: 0, 5279 NumServices: 0, 5280 }, 5281 GoTypes: file_google_cloud_video_transcoder_v1_resources_proto_goTypes, 5282 DependencyIndexes: file_google_cloud_video_transcoder_v1_resources_proto_depIdxs, 5283 EnumInfos: file_google_cloud_video_transcoder_v1_resources_proto_enumTypes, 5284 MessageInfos: file_google_cloud_video_transcoder_v1_resources_proto_msgTypes, 5285 }.Build() 5286 File_google_cloud_video_transcoder_v1_resources_proto = out.File 5287 file_google_cloud_video_transcoder_v1_resources_proto_rawDesc = nil 5288 file_google_cloud_video_transcoder_v1_resources_proto_goTypes = nil 5289 file_google_cloud_video_transcoder_v1_resources_proto_depIdxs = nil 5290} 5291