1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3package mediaconvert 4 5import ( 6 "fmt" 7 "time" 8 9 "github.com/aws/aws-sdk-go/aws" 10 "github.com/aws/aws-sdk-go/aws/awsutil" 11 "github.com/aws/aws-sdk-go/aws/request" 12) 13 14const opCancelJob = "CancelJob" 15 16// CancelJobRequest generates a "aws/request.Request" representing the 17// client's request for the CancelJob operation. The "output" return 18// value will be populated with the request's response once the request completes 19// successfuly. 20// 21// Use "Send" method on the returned Request to send the API call to the service. 22// the "output" return value is not valid until after Send returns without error. 23// 24// See CancelJob for more information on using the CancelJob 25// API call, and error handling. 26// 27// This method is useful when you want to inject custom logic or configuration 28// into the SDK's request lifecycle. Such as custom headers, or retry logic. 29// 30// 31// // Example sending a request using the CancelJobRequest method. 32// req, resp := client.CancelJobRequest(params) 33// 34// err := req.Send() 35// if err == nil { // resp is now filled 36// fmt.Println(resp) 37// } 38// 39// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CancelJob 40func (c *MediaConvert) CancelJobRequest(input *CancelJobInput) (req *request.Request, output *CancelJobOutput) { 41 op := &request.Operation{ 42 Name: opCancelJob, 43 HTTPMethod: "DELETE", 44 HTTPPath: "/2017-08-29/jobs/{id}", 45 } 46 47 if input == nil { 48 input = &CancelJobInput{} 49 } 50 51 output = &CancelJobOutput{} 52 req = c.newRequest(op, input, output) 53 return 54} 55 56// CancelJob API operation for AWS Elemental MediaConvert. 57// 58// Permanently remove a job from a queue. Once you have canceled a job, you 59// can't start it again. You can't delete a running job. 60// 61// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 62// with awserr.Error's Code and Message methods to get detailed information about 63// the error. 64// 65// See the AWS API reference guide for AWS Elemental MediaConvert's 66// API operation CancelJob for usage and error information. 67// 68// Returned Error Codes: 69// * ErrCodeBadRequestException "BadRequestException" 70// 71// * ErrCodeInternalServerErrorException "InternalServerErrorException" 72// 73// * ErrCodeForbiddenException "ForbiddenException" 74// 75// * ErrCodeNotFoundException "NotFoundException" 76// 77// * ErrCodeTooManyRequestsException "TooManyRequestsException" 78// 79// * ErrCodeConflictException "ConflictException" 80// 81// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CancelJob 82func (c *MediaConvert) CancelJob(input *CancelJobInput) (*CancelJobOutput, error) { 83 req, out := c.CancelJobRequest(input) 84 return out, req.Send() 85} 86 87// CancelJobWithContext is the same as CancelJob with the addition of 88// the ability to pass a context and additional request options. 89// 90// See CancelJob for details on how to use this API operation. 91// 92// The context must be non-nil and will be used for request cancellation. If 93// the context is nil a panic will occur. In the future the SDK may create 94// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 95// for more information on using Contexts. 96func (c *MediaConvert) CancelJobWithContext(ctx aws.Context, input *CancelJobInput, opts ...request.Option) (*CancelJobOutput, error) { 97 req, out := c.CancelJobRequest(input) 98 req.SetContext(ctx) 99 req.ApplyOptions(opts...) 100 return out, req.Send() 101} 102 103const opCreateJob = "CreateJob" 104 105// CreateJobRequest generates a "aws/request.Request" representing the 106// client's request for the CreateJob operation. The "output" return 107// value will be populated with the request's response once the request completes 108// successfuly. 109// 110// Use "Send" method on the returned Request to send the API call to the service. 111// the "output" return value is not valid until after Send returns without error. 112// 113// See CreateJob for more information on using the CreateJob 114// API call, and error handling. 115// 116// This method is useful when you want to inject custom logic or configuration 117// into the SDK's request lifecycle. Such as custom headers, or retry logic. 118// 119// 120// // Example sending a request using the CreateJobRequest method. 121// req, resp := client.CreateJobRequest(params) 122// 123// err := req.Send() 124// if err == nil { // resp is now filled 125// fmt.Println(resp) 126// } 127// 128// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreateJob 129func (c *MediaConvert) CreateJobRequest(input *CreateJobInput) (req *request.Request, output *CreateJobOutput) { 130 op := &request.Operation{ 131 Name: opCreateJob, 132 HTTPMethod: "POST", 133 HTTPPath: "/2017-08-29/jobs", 134 } 135 136 if input == nil { 137 input = &CreateJobInput{} 138 } 139 140 output = &CreateJobOutput{} 141 req = c.newRequest(op, input, output) 142 return 143} 144 145// CreateJob API operation for AWS Elemental MediaConvert. 146// 147// Create a new transcoding job. For information about jobs and job settings, 148// see the User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html 149// 150// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 151// with awserr.Error's Code and Message methods to get detailed information about 152// the error. 153// 154// See the AWS API reference guide for AWS Elemental MediaConvert's 155// API operation CreateJob for usage and error information. 156// 157// Returned Error Codes: 158// * ErrCodeBadRequestException "BadRequestException" 159// 160// * ErrCodeInternalServerErrorException "InternalServerErrorException" 161// 162// * ErrCodeForbiddenException "ForbiddenException" 163// 164// * ErrCodeNotFoundException "NotFoundException" 165// 166// * ErrCodeTooManyRequestsException "TooManyRequestsException" 167// 168// * ErrCodeConflictException "ConflictException" 169// 170// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreateJob 171func (c *MediaConvert) CreateJob(input *CreateJobInput) (*CreateJobOutput, error) { 172 req, out := c.CreateJobRequest(input) 173 return out, req.Send() 174} 175 176// CreateJobWithContext is the same as CreateJob with the addition of 177// the ability to pass a context and additional request options. 178// 179// See CreateJob for details on how to use this API operation. 180// 181// The context must be non-nil and will be used for request cancellation. If 182// the context is nil a panic will occur. In the future the SDK may create 183// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 184// for more information on using Contexts. 185func (c *MediaConvert) CreateJobWithContext(ctx aws.Context, input *CreateJobInput, opts ...request.Option) (*CreateJobOutput, error) { 186 req, out := c.CreateJobRequest(input) 187 req.SetContext(ctx) 188 req.ApplyOptions(opts...) 189 return out, req.Send() 190} 191 192const opCreateJobTemplate = "CreateJobTemplate" 193 194// CreateJobTemplateRequest generates a "aws/request.Request" representing the 195// client's request for the CreateJobTemplate operation. The "output" return 196// value will be populated with the request's response once the request completes 197// successfuly. 198// 199// Use "Send" method on the returned Request to send the API call to the service. 200// the "output" return value is not valid until after Send returns without error. 201// 202// See CreateJobTemplate for more information on using the CreateJobTemplate 203// API call, and error handling. 204// 205// This method is useful when you want to inject custom logic or configuration 206// into the SDK's request lifecycle. Such as custom headers, or retry logic. 207// 208// 209// // Example sending a request using the CreateJobTemplateRequest method. 210// req, resp := client.CreateJobTemplateRequest(params) 211// 212// err := req.Send() 213// if err == nil { // resp is now filled 214// fmt.Println(resp) 215// } 216// 217// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreateJobTemplate 218func (c *MediaConvert) CreateJobTemplateRequest(input *CreateJobTemplateInput) (req *request.Request, output *CreateJobTemplateOutput) { 219 op := &request.Operation{ 220 Name: opCreateJobTemplate, 221 HTTPMethod: "POST", 222 HTTPPath: "/2017-08-29/jobTemplates", 223 } 224 225 if input == nil { 226 input = &CreateJobTemplateInput{} 227 } 228 229 output = &CreateJobTemplateOutput{} 230 req = c.newRequest(op, input, output) 231 return 232} 233 234// CreateJobTemplate API operation for AWS Elemental MediaConvert. 235// 236// Create a new job template. For information about job templates see the User 237// Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html 238// 239// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 240// with awserr.Error's Code and Message methods to get detailed information about 241// the error. 242// 243// See the AWS API reference guide for AWS Elemental MediaConvert's 244// API operation CreateJobTemplate for usage and error information. 245// 246// Returned Error Codes: 247// * ErrCodeBadRequestException "BadRequestException" 248// 249// * ErrCodeInternalServerErrorException "InternalServerErrorException" 250// 251// * ErrCodeForbiddenException "ForbiddenException" 252// 253// * ErrCodeNotFoundException "NotFoundException" 254// 255// * ErrCodeTooManyRequestsException "TooManyRequestsException" 256// 257// * ErrCodeConflictException "ConflictException" 258// 259// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreateJobTemplate 260func (c *MediaConvert) CreateJobTemplate(input *CreateJobTemplateInput) (*CreateJobTemplateOutput, error) { 261 req, out := c.CreateJobTemplateRequest(input) 262 return out, req.Send() 263} 264 265// CreateJobTemplateWithContext is the same as CreateJobTemplate with the addition of 266// the ability to pass a context and additional request options. 267// 268// See CreateJobTemplate for details on how to use this API operation. 269// 270// The context must be non-nil and will be used for request cancellation. If 271// the context is nil a panic will occur. In the future the SDK may create 272// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 273// for more information on using Contexts. 274func (c *MediaConvert) CreateJobTemplateWithContext(ctx aws.Context, input *CreateJobTemplateInput, opts ...request.Option) (*CreateJobTemplateOutput, error) { 275 req, out := c.CreateJobTemplateRequest(input) 276 req.SetContext(ctx) 277 req.ApplyOptions(opts...) 278 return out, req.Send() 279} 280 281const opCreatePreset = "CreatePreset" 282 283// CreatePresetRequest generates a "aws/request.Request" representing the 284// client's request for the CreatePreset operation. The "output" return 285// value will be populated with the request's response once the request completes 286// successfuly. 287// 288// Use "Send" method on the returned Request to send the API call to the service. 289// the "output" return value is not valid until after Send returns without error. 290// 291// See CreatePreset for more information on using the CreatePreset 292// API call, and error handling. 293// 294// This method is useful when you want to inject custom logic or configuration 295// into the SDK's request lifecycle. Such as custom headers, or retry logic. 296// 297// 298// // Example sending a request using the CreatePresetRequest method. 299// req, resp := client.CreatePresetRequest(params) 300// 301// err := req.Send() 302// if err == nil { // resp is now filled 303// fmt.Println(resp) 304// } 305// 306// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreatePreset 307func (c *MediaConvert) CreatePresetRequest(input *CreatePresetInput) (req *request.Request, output *CreatePresetOutput) { 308 op := &request.Operation{ 309 Name: opCreatePreset, 310 HTTPMethod: "POST", 311 HTTPPath: "/2017-08-29/presets", 312 } 313 314 if input == nil { 315 input = &CreatePresetInput{} 316 } 317 318 output = &CreatePresetOutput{} 319 req = c.newRequest(op, input, output) 320 return 321} 322 323// CreatePreset API operation for AWS Elemental MediaConvert. 324// 325// Create a new preset. For information about job templates see the User Guide 326// at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html 327// 328// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 329// with awserr.Error's Code and Message methods to get detailed information about 330// the error. 331// 332// See the AWS API reference guide for AWS Elemental MediaConvert's 333// API operation CreatePreset for usage and error information. 334// 335// Returned Error Codes: 336// * ErrCodeBadRequestException "BadRequestException" 337// 338// * ErrCodeInternalServerErrorException "InternalServerErrorException" 339// 340// * ErrCodeForbiddenException "ForbiddenException" 341// 342// * ErrCodeNotFoundException "NotFoundException" 343// 344// * ErrCodeTooManyRequestsException "TooManyRequestsException" 345// 346// * ErrCodeConflictException "ConflictException" 347// 348// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreatePreset 349func (c *MediaConvert) CreatePreset(input *CreatePresetInput) (*CreatePresetOutput, error) { 350 req, out := c.CreatePresetRequest(input) 351 return out, req.Send() 352} 353 354// CreatePresetWithContext is the same as CreatePreset with the addition of 355// the ability to pass a context and additional request options. 356// 357// See CreatePreset for details on how to use this API operation. 358// 359// The context must be non-nil and will be used for request cancellation. If 360// the context is nil a panic will occur. In the future the SDK may create 361// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 362// for more information on using Contexts. 363func (c *MediaConvert) CreatePresetWithContext(ctx aws.Context, input *CreatePresetInput, opts ...request.Option) (*CreatePresetOutput, error) { 364 req, out := c.CreatePresetRequest(input) 365 req.SetContext(ctx) 366 req.ApplyOptions(opts...) 367 return out, req.Send() 368} 369 370const opCreateQueue = "CreateQueue" 371 372// CreateQueueRequest generates a "aws/request.Request" representing the 373// client's request for the CreateQueue operation. The "output" return 374// value will be populated with the request's response once the request completes 375// successfuly. 376// 377// Use "Send" method on the returned Request to send the API call to the service. 378// the "output" return value is not valid until after Send returns without error. 379// 380// See CreateQueue for more information on using the CreateQueue 381// API call, and error handling. 382// 383// This method is useful when you want to inject custom logic or configuration 384// into the SDK's request lifecycle. Such as custom headers, or retry logic. 385// 386// 387// // Example sending a request using the CreateQueueRequest method. 388// req, resp := client.CreateQueueRequest(params) 389// 390// err := req.Send() 391// if err == nil { // resp is now filled 392// fmt.Println(resp) 393// } 394// 395// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreateQueue 396func (c *MediaConvert) CreateQueueRequest(input *CreateQueueInput) (req *request.Request, output *CreateQueueOutput) { 397 op := &request.Operation{ 398 Name: opCreateQueue, 399 HTTPMethod: "POST", 400 HTTPPath: "/2017-08-29/queues", 401 } 402 403 if input == nil { 404 input = &CreateQueueInput{} 405 } 406 407 output = &CreateQueueOutput{} 408 req = c.newRequest(op, input, output) 409 return 410} 411 412// CreateQueue API operation for AWS Elemental MediaConvert. 413// 414// Create a new transcoding queue. For information about job templates see the 415// User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html 416// 417// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 418// with awserr.Error's Code and Message methods to get detailed information about 419// the error. 420// 421// See the AWS API reference guide for AWS Elemental MediaConvert's 422// API operation CreateQueue for usage and error information. 423// 424// Returned Error Codes: 425// * ErrCodeBadRequestException "BadRequestException" 426// 427// * ErrCodeInternalServerErrorException "InternalServerErrorException" 428// 429// * ErrCodeForbiddenException "ForbiddenException" 430// 431// * ErrCodeNotFoundException "NotFoundException" 432// 433// * ErrCodeTooManyRequestsException "TooManyRequestsException" 434// 435// * ErrCodeConflictException "ConflictException" 436// 437// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreateQueue 438func (c *MediaConvert) CreateQueue(input *CreateQueueInput) (*CreateQueueOutput, error) { 439 req, out := c.CreateQueueRequest(input) 440 return out, req.Send() 441} 442 443// CreateQueueWithContext is the same as CreateQueue with the addition of 444// the ability to pass a context and additional request options. 445// 446// See CreateQueue for details on how to use this API operation. 447// 448// The context must be non-nil and will be used for request cancellation. If 449// the context is nil a panic will occur. In the future the SDK may create 450// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 451// for more information on using Contexts. 452func (c *MediaConvert) CreateQueueWithContext(ctx aws.Context, input *CreateQueueInput, opts ...request.Option) (*CreateQueueOutput, error) { 453 req, out := c.CreateQueueRequest(input) 454 req.SetContext(ctx) 455 req.ApplyOptions(opts...) 456 return out, req.Send() 457} 458 459const opDeleteJobTemplate = "DeleteJobTemplate" 460 461// DeleteJobTemplateRequest generates a "aws/request.Request" representing the 462// client's request for the DeleteJobTemplate operation. The "output" return 463// value will be populated with the request's response once the request completes 464// successfuly. 465// 466// Use "Send" method on the returned Request to send the API call to the service. 467// the "output" return value is not valid until after Send returns without error. 468// 469// See DeleteJobTemplate for more information on using the DeleteJobTemplate 470// API call, and error handling. 471// 472// This method is useful when you want to inject custom logic or configuration 473// into the SDK's request lifecycle. Such as custom headers, or retry logic. 474// 475// 476// // Example sending a request using the DeleteJobTemplateRequest method. 477// req, resp := client.DeleteJobTemplateRequest(params) 478// 479// err := req.Send() 480// if err == nil { // resp is now filled 481// fmt.Println(resp) 482// } 483// 484// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DeleteJobTemplate 485func (c *MediaConvert) DeleteJobTemplateRequest(input *DeleteJobTemplateInput) (req *request.Request, output *DeleteJobTemplateOutput) { 486 op := &request.Operation{ 487 Name: opDeleteJobTemplate, 488 HTTPMethod: "DELETE", 489 HTTPPath: "/2017-08-29/jobTemplates/{name}", 490 } 491 492 if input == nil { 493 input = &DeleteJobTemplateInput{} 494 } 495 496 output = &DeleteJobTemplateOutput{} 497 req = c.newRequest(op, input, output) 498 return 499} 500 501// DeleteJobTemplate API operation for AWS Elemental MediaConvert. 502// 503// Permanently delete a job template you have created. 504// 505// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 506// with awserr.Error's Code and Message methods to get detailed information about 507// the error. 508// 509// See the AWS API reference guide for AWS Elemental MediaConvert's 510// API operation DeleteJobTemplate for usage and error information. 511// 512// Returned Error Codes: 513// * ErrCodeBadRequestException "BadRequestException" 514// 515// * ErrCodeInternalServerErrorException "InternalServerErrorException" 516// 517// * ErrCodeForbiddenException "ForbiddenException" 518// 519// * ErrCodeNotFoundException "NotFoundException" 520// 521// * ErrCodeTooManyRequestsException "TooManyRequestsException" 522// 523// * ErrCodeConflictException "ConflictException" 524// 525// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DeleteJobTemplate 526func (c *MediaConvert) DeleteJobTemplate(input *DeleteJobTemplateInput) (*DeleteJobTemplateOutput, error) { 527 req, out := c.DeleteJobTemplateRequest(input) 528 return out, req.Send() 529} 530 531// DeleteJobTemplateWithContext is the same as DeleteJobTemplate with the addition of 532// the ability to pass a context and additional request options. 533// 534// See DeleteJobTemplate for details on how to use this API operation. 535// 536// The context must be non-nil and will be used for request cancellation. If 537// the context is nil a panic will occur. In the future the SDK may create 538// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 539// for more information on using Contexts. 540func (c *MediaConvert) DeleteJobTemplateWithContext(ctx aws.Context, input *DeleteJobTemplateInput, opts ...request.Option) (*DeleteJobTemplateOutput, error) { 541 req, out := c.DeleteJobTemplateRequest(input) 542 req.SetContext(ctx) 543 req.ApplyOptions(opts...) 544 return out, req.Send() 545} 546 547const opDeletePreset = "DeletePreset" 548 549// DeletePresetRequest generates a "aws/request.Request" representing the 550// client's request for the DeletePreset operation. The "output" return 551// value will be populated with the request's response once the request completes 552// successfuly. 553// 554// Use "Send" method on the returned Request to send the API call to the service. 555// the "output" return value is not valid until after Send returns without error. 556// 557// See DeletePreset for more information on using the DeletePreset 558// API call, and error handling. 559// 560// This method is useful when you want to inject custom logic or configuration 561// into the SDK's request lifecycle. Such as custom headers, or retry logic. 562// 563// 564// // Example sending a request using the DeletePresetRequest method. 565// req, resp := client.DeletePresetRequest(params) 566// 567// err := req.Send() 568// if err == nil { // resp is now filled 569// fmt.Println(resp) 570// } 571// 572// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DeletePreset 573func (c *MediaConvert) DeletePresetRequest(input *DeletePresetInput) (req *request.Request, output *DeletePresetOutput) { 574 op := &request.Operation{ 575 Name: opDeletePreset, 576 HTTPMethod: "DELETE", 577 HTTPPath: "/2017-08-29/presets/{name}", 578 } 579 580 if input == nil { 581 input = &DeletePresetInput{} 582 } 583 584 output = &DeletePresetOutput{} 585 req = c.newRequest(op, input, output) 586 return 587} 588 589// DeletePreset API operation for AWS Elemental MediaConvert. 590// 591// Permanently delete a preset you have created. 592// 593// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 594// with awserr.Error's Code and Message methods to get detailed information about 595// the error. 596// 597// See the AWS API reference guide for AWS Elemental MediaConvert's 598// API operation DeletePreset for usage and error information. 599// 600// Returned Error Codes: 601// * ErrCodeBadRequestException "BadRequestException" 602// 603// * ErrCodeInternalServerErrorException "InternalServerErrorException" 604// 605// * ErrCodeForbiddenException "ForbiddenException" 606// 607// * ErrCodeNotFoundException "NotFoundException" 608// 609// * ErrCodeTooManyRequestsException "TooManyRequestsException" 610// 611// * ErrCodeConflictException "ConflictException" 612// 613// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DeletePreset 614func (c *MediaConvert) DeletePreset(input *DeletePresetInput) (*DeletePresetOutput, error) { 615 req, out := c.DeletePresetRequest(input) 616 return out, req.Send() 617} 618 619// DeletePresetWithContext is the same as DeletePreset with the addition of 620// the ability to pass a context and additional request options. 621// 622// See DeletePreset for details on how to use this API operation. 623// 624// The context must be non-nil and will be used for request cancellation. If 625// the context is nil a panic will occur. In the future the SDK may create 626// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 627// for more information on using Contexts. 628func (c *MediaConvert) DeletePresetWithContext(ctx aws.Context, input *DeletePresetInput, opts ...request.Option) (*DeletePresetOutput, error) { 629 req, out := c.DeletePresetRequest(input) 630 req.SetContext(ctx) 631 req.ApplyOptions(opts...) 632 return out, req.Send() 633} 634 635const opDeleteQueue = "DeleteQueue" 636 637// DeleteQueueRequest generates a "aws/request.Request" representing the 638// client's request for the DeleteQueue operation. The "output" return 639// value will be populated with the request's response once the request completes 640// successfuly. 641// 642// Use "Send" method on the returned Request to send the API call to the service. 643// the "output" return value is not valid until after Send returns without error. 644// 645// See DeleteQueue for more information on using the DeleteQueue 646// API call, and error handling. 647// 648// This method is useful when you want to inject custom logic or configuration 649// into the SDK's request lifecycle. Such as custom headers, or retry logic. 650// 651// 652// // Example sending a request using the DeleteQueueRequest method. 653// req, resp := client.DeleteQueueRequest(params) 654// 655// err := req.Send() 656// if err == nil { // resp is now filled 657// fmt.Println(resp) 658// } 659// 660// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DeleteQueue 661func (c *MediaConvert) DeleteQueueRequest(input *DeleteQueueInput) (req *request.Request, output *DeleteQueueOutput) { 662 op := &request.Operation{ 663 Name: opDeleteQueue, 664 HTTPMethod: "DELETE", 665 HTTPPath: "/2017-08-29/queues/{name}", 666 } 667 668 if input == nil { 669 input = &DeleteQueueInput{} 670 } 671 672 output = &DeleteQueueOutput{} 673 req = c.newRequest(op, input, output) 674 return 675} 676 677// DeleteQueue API operation for AWS Elemental MediaConvert. 678// 679// Permanently delete a queue you have created. 680// 681// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 682// with awserr.Error's Code and Message methods to get detailed information about 683// the error. 684// 685// See the AWS API reference guide for AWS Elemental MediaConvert's 686// API operation DeleteQueue for usage and error information. 687// 688// Returned Error Codes: 689// * ErrCodeBadRequestException "BadRequestException" 690// 691// * ErrCodeInternalServerErrorException "InternalServerErrorException" 692// 693// * ErrCodeForbiddenException "ForbiddenException" 694// 695// * ErrCodeNotFoundException "NotFoundException" 696// 697// * ErrCodeTooManyRequestsException "TooManyRequestsException" 698// 699// * ErrCodeConflictException "ConflictException" 700// 701// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DeleteQueue 702func (c *MediaConvert) DeleteQueue(input *DeleteQueueInput) (*DeleteQueueOutput, error) { 703 req, out := c.DeleteQueueRequest(input) 704 return out, req.Send() 705} 706 707// DeleteQueueWithContext is the same as DeleteQueue with the addition of 708// the ability to pass a context and additional request options. 709// 710// See DeleteQueue for details on how to use this API operation. 711// 712// The context must be non-nil and will be used for request cancellation. If 713// the context is nil a panic will occur. In the future the SDK may create 714// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 715// for more information on using Contexts. 716func (c *MediaConvert) DeleteQueueWithContext(ctx aws.Context, input *DeleteQueueInput, opts ...request.Option) (*DeleteQueueOutput, error) { 717 req, out := c.DeleteQueueRequest(input) 718 req.SetContext(ctx) 719 req.ApplyOptions(opts...) 720 return out, req.Send() 721} 722 723const opDescribeEndpoints = "DescribeEndpoints" 724 725// DescribeEndpointsRequest generates a "aws/request.Request" representing the 726// client's request for the DescribeEndpoints operation. The "output" return 727// value will be populated with the request's response once the request completes 728// successfuly. 729// 730// Use "Send" method on the returned Request to send the API call to the service. 731// the "output" return value is not valid until after Send returns without error. 732// 733// See DescribeEndpoints for more information on using the DescribeEndpoints 734// API call, and error handling. 735// 736// This method is useful when you want to inject custom logic or configuration 737// into the SDK's request lifecycle. Such as custom headers, or retry logic. 738// 739// 740// // Example sending a request using the DescribeEndpointsRequest method. 741// req, resp := client.DescribeEndpointsRequest(params) 742// 743// err := req.Send() 744// if err == nil { // resp is now filled 745// fmt.Println(resp) 746// } 747// 748// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DescribeEndpoints 749func (c *MediaConvert) DescribeEndpointsRequest(input *DescribeEndpointsInput) (req *request.Request, output *DescribeEndpointsOutput) { 750 op := &request.Operation{ 751 Name: opDescribeEndpoints, 752 HTTPMethod: "POST", 753 HTTPPath: "/2017-08-29/endpoints", 754 } 755 756 if input == nil { 757 input = &DescribeEndpointsInput{} 758 } 759 760 output = &DescribeEndpointsOutput{} 761 req = c.newRequest(op, input, output) 762 return 763} 764 765// DescribeEndpoints API operation for AWS Elemental MediaConvert. 766// 767// Send an request with an empty body to the regional API endpoint to get your 768// account API endpoint. 769// 770// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 771// with awserr.Error's Code and Message methods to get detailed information about 772// the error. 773// 774// See the AWS API reference guide for AWS Elemental MediaConvert's 775// API operation DescribeEndpoints for usage and error information. 776// 777// Returned Error Codes: 778// * ErrCodeBadRequestException "BadRequestException" 779// 780// * ErrCodeInternalServerErrorException "InternalServerErrorException" 781// 782// * ErrCodeForbiddenException "ForbiddenException" 783// 784// * ErrCodeNotFoundException "NotFoundException" 785// 786// * ErrCodeTooManyRequestsException "TooManyRequestsException" 787// 788// * ErrCodeConflictException "ConflictException" 789// 790// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DescribeEndpoints 791func (c *MediaConvert) DescribeEndpoints(input *DescribeEndpointsInput) (*DescribeEndpointsOutput, error) { 792 req, out := c.DescribeEndpointsRequest(input) 793 return out, req.Send() 794} 795 796// DescribeEndpointsWithContext is the same as DescribeEndpoints with the addition of 797// the ability to pass a context and additional request options. 798// 799// See DescribeEndpoints for details on how to use this API operation. 800// 801// The context must be non-nil and will be used for request cancellation. If 802// the context is nil a panic will occur. In the future the SDK may create 803// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 804// for more information on using Contexts. 805func (c *MediaConvert) DescribeEndpointsWithContext(ctx aws.Context, input *DescribeEndpointsInput, opts ...request.Option) (*DescribeEndpointsOutput, error) { 806 req, out := c.DescribeEndpointsRequest(input) 807 req.SetContext(ctx) 808 req.ApplyOptions(opts...) 809 return out, req.Send() 810} 811 812const opGetJob = "GetJob" 813 814// GetJobRequest generates a "aws/request.Request" representing the 815// client's request for the GetJob operation. The "output" return 816// value will be populated with the request's response once the request completes 817// successfuly. 818// 819// Use "Send" method on the returned Request to send the API call to the service. 820// the "output" return value is not valid until after Send returns without error. 821// 822// See GetJob for more information on using the GetJob 823// API call, and error handling. 824// 825// This method is useful when you want to inject custom logic or configuration 826// into the SDK's request lifecycle. Such as custom headers, or retry logic. 827// 828// 829// // Example sending a request using the GetJobRequest method. 830// req, resp := client.GetJobRequest(params) 831// 832// err := req.Send() 833// if err == nil { // resp is now filled 834// fmt.Println(resp) 835// } 836// 837// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetJob 838func (c *MediaConvert) GetJobRequest(input *GetJobInput) (req *request.Request, output *GetJobOutput) { 839 op := &request.Operation{ 840 Name: opGetJob, 841 HTTPMethod: "GET", 842 HTTPPath: "/2017-08-29/jobs/{id}", 843 } 844 845 if input == nil { 846 input = &GetJobInput{} 847 } 848 849 output = &GetJobOutput{} 850 req = c.newRequest(op, input, output) 851 return 852} 853 854// GetJob API operation for AWS Elemental MediaConvert. 855// 856// Retrieve the JSON for a specific completed transcoding job. 857// 858// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 859// with awserr.Error's Code and Message methods to get detailed information about 860// the error. 861// 862// See the AWS API reference guide for AWS Elemental MediaConvert's 863// API operation GetJob for usage and error information. 864// 865// Returned Error Codes: 866// * ErrCodeBadRequestException "BadRequestException" 867// 868// * ErrCodeInternalServerErrorException "InternalServerErrorException" 869// 870// * ErrCodeForbiddenException "ForbiddenException" 871// 872// * ErrCodeNotFoundException "NotFoundException" 873// 874// * ErrCodeTooManyRequestsException "TooManyRequestsException" 875// 876// * ErrCodeConflictException "ConflictException" 877// 878// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetJob 879func (c *MediaConvert) GetJob(input *GetJobInput) (*GetJobOutput, error) { 880 req, out := c.GetJobRequest(input) 881 return out, req.Send() 882} 883 884// GetJobWithContext is the same as GetJob with the addition of 885// the ability to pass a context and additional request options. 886// 887// See GetJob for details on how to use this API operation. 888// 889// The context must be non-nil and will be used for request cancellation. If 890// the context is nil a panic will occur. In the future the SDK may create 891// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 892// for more information on using Contexts. 893func (c *MediaConvert) GetJobWithContext(ctx aws.Context, input *GetJobInput, opts ...request.Option) (*GetJobOutput, error) { 894 req, out := c.GetJobRequest(input) 895 req.SetContext(ctx) 896 req.ApplyOptions(opts...) 897 return out, req.Send() 898} 899 900const opGetJobTemplate = "GetJobTemplate" 901 902// GetJobTemplateRequest generates a "aws/request.Request" representing the 903// client's request for the GetJobTemplate operation. The "output" return 904// value will be populated with the request's response once the request completes 905// successfuly. 906// 907// Use "Send" method on the returned Request to send the API call to the service. 908// the "output" return value is not valid until after Send returns without error. 909// 910// See GetJobTemplate for more information on using the GetJobTemplate 911// API call, and error handling. 912// 913// This method is useful when you want to inject custom logic or configuration 914// into the SDK's request lifecycle. Such as custom headers, or retry logic. 915// 916// 917// // Example sending a request using the GetJobTemplateRequest method. 918// req, resp := client.GetJobTemplateRequest(params) 919// 920// err := req.Send() 921// if err == nil { // resp is now filled 922// fmt.Println(resp) 923// } 924// 925// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetJobTemplate 926func (c *MediaConvert) GetJobTemplateRequest(input *GetJobTemplateInput) (req *request.Request, output *GetJobTemplateOutput) { 927 op := &request.Operation{ 928 Name: opGetJobTemplate, 929 HTTPMethod: "GET", 930 HTTPPath: "/2017-08-29/jobTemplates/{name}", 931 } 932 933 if input == nil { 934 input = &GetJobTemplateInput{} 935 } 936 937 output = &GetJobTemplateOutput{} 938 req = c.newRequest(op, input, output) 939 return 940} 941 942// GetJobTemplate API operation for AWS Elemental MediaConvert. 943// 944// Retrieve the JSON for a specific job template. 945// 946// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 947// with awserr.Error's Code and Message methods to get detailed information about 948// the error. 949// 950// See the AWS API reference guide for AWS Elemental MediaConvert's 951// API operation GetJobTemplate for usage and error information. 952// 953// Returned Error Codes: 954// * ErrCodeBadRequestException "BadRequestException" 955// 956// * ErrCodeInternalServerErrorException "InternalServerErrorException" 957// 958// * ErrCodeForbiddenException "ForbiddenException" 959// 960// * ErrCodeNotFoundException "NotFoundException" 961// 962// * ErrCodeTooManyRequestsException "TooManyRequestsException" 963// 964// * ErrCodeConflictException "ConflictException" 965// 966// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetJobTemplate 967func (c *MediaConvert) GetJobTemplate(input *GetJobTemplateInput) (*GetJobTemplateOutput, error) { 968 req, out := c.GetJobTemplateRequest(input) 969 return out, req.Send() 970} 971 972// GetJobTemplateWithContext is the same as GetJobTemplate with the addition of 973// the ability to pass a context and additional request options. 974// 975// See GetJobTemplate for details on how to use this API operation. 976// 977// The context must be non-nil and will be used for request cancellation. If 978// the context is nil a panic will occur. In the future the SDK may create 979// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 980// for more information on using Contexts. 981func (c *MediaConvert) GetJobTemplateWithContext(ctx aws.Context, input *GetJobTemplateInput, opts ...request.Option) (*GetJobTemplateOutput, error) { 982 req, out := c.GetJobTemplateRequest(input) 983 req.SetContext(ctx) 984 req.ApplyOptions(opts...) 985 return out, req.Send() 986} 987 988const opGetPreset = "GetPreset" 989 990// GetPresetRequest generates a "aws/request.Request" representing the 991// client's request for the GetPreset operation. The "output" return 992// value will be populated with the request's response once the request completes 993// successfuly. 994// 995// Use "Send" method on the returned Request to send the API call to the service. 996// the "output" return value is not valid until after Send returns without error. 997// 998// See GetPreset for more information on using the GetPreset 999// API call, and error handling. 1000// 1001// This method is useful when you want to inject custom logic or configuration 1002// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1003// 1004// 1005// // Example sending a request using the GetPresetRequest method. 1006// req, resp := client.GetPresetRequest(params) 1007// 1008// err := req.Send() 1009// if err == nil { // resp is now filled 1010// fmt.Println(resp) 1011// } 1012// 1013// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetPreset 1014func (c *MediaConvert) GetPresetRequest(input *GetPresetInput) (req *request.Request, output *GetPresetOutput) { 1015 op := &request.Operation{ 1016 Name: opGetPreset, 1017 HTTPMethod: "GET", 1018 HTTPPath: "/2017-08-29/presets/{name}", 1019 } 1020 1021 if input == nil { 1022 input = &GetPresetInput{} 1023 } 1024 1025 output = &GetPresetOutput{} 1026 req = c.newRequest(op, input, output) 1027 return 1028} 1029 1030// GetPreset API operation for AWS Elemental MediaConvert. 1031// 1032// Retrieve the JSON for a specific preset. 1033// 1034// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1035// with awserr.Error's Code and Message methods to get detailed information about 1036// the error. 1037// 1038// See the AWS API reference guide for AWS Elemental MediaConvert's 1039// API operation GetPreset for usage and error information. 1040// 1041// Returned Error Codes: 1042// * ErrCodeBadRequestException "BadRequestException" 1043// 1044// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1045// 1046// * ErrCodeForbiddenException "ForbiddenException" 1047// 1048// * ErrCodeNotFoundException "NotFoundException" 1049// 1050// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1051// 1052// * ErrCodeConflictException "ConflictException" 1053// 1054// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetPreset 1055func (c *MediaConvert) GetPreset(input *GetPresetInput) (*GetPresetOutput, error) { 1056 req, out := c.GetPresetRequest(input) 1057 return out, req.Send() 1058} 1059 1060// GetPresetWithContext is the same as GetPreset with the addition of 1061// the ability to pass a context and additional request options. 1062// 1063// See GetPreset for details on how to use this API operation. 1064// 1065// The context must be non-nil and will be used for request cancellation. If 1066// the context is nil a panic will occur. In the future the SDK may create 1067// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1068// for more information on using Contexts. 1069func (c *MediaConvert) GetPresetWithContext(ctx aws.Context, input *GetPresetInput, opts ...request.Option) (*GetPresetOutput, error) { 1070 req, out := c.GetPresetRequest(input) 1071 req.SetContext(ctx) 1072 req.ApplyOptions(opts...) 1073 return out, req.Send() 1074} 1075 1076const opGetQueue = "GetQueue" 1077 1078// GetQueueRequest generates a "aws/request.Request" representing the 1079// client's request for the GetQueue operation. The "output" return 1080// value will be populated with the request's response once the request completes 1081// successfuly. 1082// 1083// Use "Send" method on the returned Request to send the API call to the service. 1084// the "output" return value is not valid until after Send returns without error. 1085// 1086// See GetQueue for more information on using the GetQueue 1087// API call, and error handling. 1088// 1089// This method is useful when you want to inject custom logic or configuration 1090// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1091// 1092// 1093// // Example sending a request using the GetQueueRequest method. 1094// req, resp := client.GetQueueRequest(params) 1095// 1096// err := req.Send() 1097// if err == nil { // resp is now filled 1098// fmt.Println(resp) 1099// } 1100// 1101// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetQueue 1102func (c *MediaConvert) GetQueueRequest(input *GetQueueInput) (req *request.Request, output *GetQueueOutput) { 1103 op := &request.Operation{ 1104 Name: opGetQueue, 1105 HTTPMethod: "GET", 1106 HTTPPath: "/2017-08-29/queues/{name}", 1107 } 1108 1109 if input == nil { 1110 input = &GetQueueInput{} 1111 } 1112 1113 output = &GetQueueOutput{} 1114 req = c.newRequest(op, input, output) 1115 return 1116} 1117 1118// GetQueue API operation for AWS Elemental MediaConvert. 1119// 1120// Retrieve the JSON for a specific queue. 1121// 1122// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1123// with awserr.Error's Code and Message methods to get detailed information about 1124// the error. 1125// 1126// See the AWS API reference guide for AWS Elemental MediaConvert's 1127// API operation GetQueue for usage and error information. 1128// 1129// Returned Error Codes: 1130// * ErrCodeBadRequestException "BadRequestException" 1131// 1132// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1133// 1134// * ErrCodeForbiddenException "ForbiddenException" 1135// 1136// * ErrCodeNotFoundException "NotFoundException" 1137// 1138// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1139// 1140// * ErrCodeConflictException "ConflictException" 1141// 1142// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetQueue 1143func (c *MediaConvert) GetQueue(input *GetQueueInput) (*GetQueueOutput, error) { 1144 req, out := c.GetQueueRequest(input) 1145 return out, req.Send() 1146} 1147 1148// GetQueueWithContext is the same as GetQueue with the addition of 1149// the ability to pass a context and additional request options. 1150// 1151// See GetQueue for details on how to use this API operation. 1152// 1153// The context must be non-nil and will be used for request cancellation. If 1154// the context is nil a panic will occur. In the future the SDK may create 1155// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1156// for more information on using Contexts. 1157func (c *MediaConvert) GetQueueWithContext(ctx aws.Context, input *GetQueueInput, opts ...request.Option) (*GetQueueOutput, error) { 1158 req, out := c.GetQueueRequest(input) 1159 req.SetContext(ctx) 1160 req.ApplyOptions(opts...) 1161 return out, req.Send() 1162} 1163 1164const opListJobTemplates = "ListJobTemplates" 1165 1166// ListJobTemplatesRequest generates a "aws/request.Request" representing the 1167// client's request for the ListJobTemplates operation. The "output" return 1168// value will be populated with the request's response once the request completes 1169// successfuly. 1170// 1171// Use "Send" method on the returned Request to send the API call to the service. 1172// the "output" return value is not valid until after Send returns without error. 1173// 1174// See ListJobTemplates for more information on using the ListJobTemplates 1175// API call, and error handling. 1176// 1177// This method is useful when you want to inject custom logic or configuration 1178// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1179// 1180// 1181// // Example sending a request using the ListJobTemplatesRequest method. 1182// req, resp := client.ListJobTemplatesRequest(params) 1183// 1184// err := req.Send() 1185// if err == nil { // resp is now filled 1186// fmt.Println(resp) 1187// } 1188// 1189// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListJobTemplates 1190func (c *MediaConvert) ListJobTemplatesRequest(input *ListJobTemplatesInput) (req *request.Request, output *ListJobTemplatesOutput) { 1191 op := &request.Operation{ 1192 Name: opListJobTemplates, 1193 HTTPMethod: "GET", 1194 HTTPPath: "/2017-08-29/jobTemplates", 1195 } 1196 1197 if input == nil { 1198 input = &ListJobTemplatesInput{} 1199 } 1200 1201 output = &ListJobTemplatesOutput{} 1202 req = c.newRequest(op, input, output) 1203 return 1204} 1205 1206// ListJobTemplates API operation for AWS Elemental MediaConvert. 1207// 1208// Retrieve a JSON array of up to twenty of your job templates. This will return 1209// the templates themselves, not just a list of them. To retrieve the next twenty 1210// templates, use the nextToken string returned with the array 1211// 1212// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1213// with awserr.Error's Code and Message methods to get detailed information about 1214// the error. 1215// 1216// See the AWS API reference guide for AWS Elemental MediaConvert's 1217// API operation ListJobTemplates for usage and error information. 1218// 1219// Returned Error Codes: 1220// * ErrCodeBadRequestException "BadRequestException" 1221// 1222// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1223// 1224// * ErrCodeForbiddenException "ForbiddenException" 1225// 1226// * ErrCodeNotFoundException "NotFoundException" 1227// 1228// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1229// 1230// * ErrCodeConflictException "ConflictException" 1231// 1232// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListJobTemplates 1233func (c *MediaConvert) ListJobTemplates(input *ListJobTemplatesInput) (*ListJobTemplatesOutput, error) { 1234 req, out := c.ListJobTemplatesRequest(input) 1235 return out, req.Send() 1236} 1237 1238// ListJobTemplatesWithContext is the same as ListJobTemplates with the addition of 1239// the ability to pass a context and additional request options. 1240// 1241// See ListJobTemplates for details on how to use this API operation. 1242// 1243// The context must be non-nil and will be used for request cancellation. If 1244// the context is nil a panic will occur. In the future the SDK may create 1245// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1246// for more information on using Contexts. 1247func (c *MediaConvert) ListJobTemplatesWithContext(ctx aws.Context, input *ListJobTemplatesInput, opts ...request.Option) (*ListJobTemplatesOutput, error) { 1248 req, out := c.ListJobTemplatesRequest(input) 1249 req.SetContext(ctx) 1250 req.ApplyOptions(opts...) 1251 return out, req.Send() 1252} 1253 1254const opListJobs = "ListJobs" 1255 1256// ListJobsRequest generates a "aws/request.Request" representing the 1257// client's request for the ListJobs operation. The "output" return 1258// value will be populated with the request's response once the request completes 1259// successfuly. 1260// 1261// Use "Send" method on the returned Request to send the API call to the service. 1262// the "output" return value is not valid until after Send returns without error. 1263// 1264// See ListJobs for more information on using the ListJobs 1265// API call, and error handling. 1266// 1267// This method is useful when you want to inject custom logic or configuration 1268// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1269// 1270// 1271// // Example sending a request using the ListJobsRequest method. 1272// req, resp := client.ListJobsRequest(params) 1273// 1274// err := req.Send() 1275// if err == nil { // resp is now filled 1276// fmt.Println(resp) 1277// } 1278// 1279// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListJobs 1280func (c *MediaConvert) ListJobsRequest(input *ListJobsInput) (req *request.Request, output *ListJobsOutput) { 1281 op := &request.Operation{ 1282 Name: opListJobs, 1283 HTTPMethod: "GET", 1284 HTTPPath: "/2017-08-29/jobs", 1285 } 1286 1287 if input == nil { 1288 input = &ListJobsInput{} 1289 } 1290 1291 output = &ListJobsOutput{} 1292 req = c.newRequest(op, input, output) 1293 return 1294} 1295 1296// ListJobs API operation for AWS Elemental MediaConvert. 1297// 1298// Retrieve a JSON array of up to twenty of your most recently created jobs. 1299// This array includes in-process, completed, and errored jobs. This will return 1300// the jobs themselves, not just a list of the jobs. To retrieve the twenty 1301// next most recent jobs, use the nextToken string returned with the array. 1302// 1303// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1304// with awserr.Error's Code and Message methods to get detailed information about 1305// the error. 1306// 1307// See the AWS API reference guide for AWS Elemental MediaConvert's 1308// API operation ListJobs for usage and error information. 1309// 1310// Returned Error Codes: 1311// * ErrCodeBadRequestException "BadRequestException" 1312// 1313// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1314// 1315// * ErrCodeForbiddenException "ForbiddenException" 1316// 1317// * ErrCodeNotFoundException "NotFoundException" 1318// 1319// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1320// 1321// * ErrCodeConflictException "ConflictException" 1322// 1323// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListJobs 1324func (c *MediaConvert) ListJobs(input *ListJobsInput) (*ListJobsOutput, error) { 1325 req, out := c.ListJobsRequest(input) 1326 return out, req.Send() 1327} 1328 1329// ListJobsWithContext is the same as ListJobs with the addition of 1330// the ability to pass a context and additional request options. 1331// 1332// See ListJobs for details on how to use this API operation. 1333// 1334// The context must be non-nil and will be used for request cancellation. If 1335// the context is nil a panic will occur. In the future the SDK may create 1336// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1337// for more information on using Contexts. 1338func (c *MediaConvert) ListJobsWithContext(ctx aws.Context, input *ListJobsInput, opts ...request.Option) (*ListJobsOutput, error) { 1339 req, out := c.ListJobsRequest(input) 1340 req.SetContext(ctx) 1341 req.ApplyOptions(opts...) 1342 return out, req.Send() 1343} 1344 1345const opListPresets = "ListPresets" 1346 1347// ListPresetsRequest generates a "aws/request.Request" representing the 1348// client's request for the ListPresets operation. The "output" return 1349// value will be populated with the request's response once the request completes 1350// successfuly. 1351// 1352// Use "Send" method on the returned Request to send the API call to the service. 1353// the "output" return value is not valid until after Send returns without error. 1354// 1355// See ListPresets for more information on using the ListPresets 1356// API call, and error handling. 1357// 1358// This method is useful when you want to inject custom logic or configuration 1359// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1360// 1361// 1362// // Example sending a request using the ListPresetsRequest method. 1363// req, resp := client.ListPresetsRequest(params) 1364// 1365// err := req.Send() 1366// if err == nil { // resp is now filled 1367// fmt.Println(resp) 1368// } 1369// 1370// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListPresets 1371func (c *MediaConvert) ListPresetsRequest(input *ListPresetsInput) (req *request.Request, output *ListPresetsOutput) { 1372 op := &request.Operation{ 1373 Name: opListPresets, 1374 HTTPMethod: "GET", 1375 HTTPPath: "/2017-08-29/presets", 1376 } 1377 1378 if input == nil { 1379 input = &ListPresetsInput{} 1380 } 1381 1382 output = &ListPresetsOutput{} 1383 req = c.newRequest(op, input, output) 1384 return 1385} 1386 1387// ListPresets API operation for AWS Elemental MediaConvert. 1388// 1389// Retrieve a JSON array of up to twenty of your presets. This will return the 1390// presets themselves, not just a list of them. To retrieve the next twenty 1391// presets, use the nextToken string returned with the array. 1392// 1393// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1394// with awserr.Error's Code and Message methods to get detailed information about 1395// the error. 1396// 1397// See the AWS API reference guide for AWS Elemental MediaConvert's 1398// API operation ListPresets for usage and error information. 1399// 1400// Returned Error Codes: 1401// * ErrCodeBadRequestException "BadRequestException" 1402// 1403// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1404// 1405// * ErrCodeForbiddenException "ForbiddenException" 1406// 1407// * ErrCodeNotFoundException "NotFoundException" 1408// 1409// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1410// 1411// * ErrCodeConflictException "ConflictException" 1412// 1413// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListPresets 1414func (c *MediaConvert) ListPresets(input *ListPresetsInput) (*ListPresetsOutput, error) { 1415 req, out := c.ListPresetsRequest(input) 1416 return out, req.Send() 1417} 1418 1419// ListPresetsWithContext is the same as ListPresets with the addition of 1420// the ability to pass a context and additional request options. 1421// 1422// See ListPresets for details on how to use this API operation. 1423// 1424// The context must be non-nil and will be used for request cancellation. If 1425// the context is nil a panic will occur. In the future the SDK may create 1426// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1427// for more information on using Contexts. 1428func (c *MediaConvert) ListPresetsWithContext(ctx aws.Context, input *ListPresetsInput, opts ...request.Option) (*ListPresetsOutput, error) { 1429 req, out := c.ListPresetsRequest(input) 1430 req.SetContext(ctx) 1431 req.ApplyOptions(opts...) 1432 return out, req.Send() 1433} 1434 1435const opListQueues = "ListQueues" 1436 1437// ListQueuesRequest generates a "aws/request.Request" representing the 1438// client's request for the ListQueues operation. The "output" return 1439// value will be populated with the request's response once the request completes 1440// successfuly. 1441// 1442// Use "Send" method on the returned Request to send the API call to the service. 1443// the "output" return value is not valid until after Send returns without error. 1444// 1445// See ListQueues for more information on using the ListQueues 1446// API call, and error handling. 1447// 1448// This method is useful when you want to inject custom logic or configuration 1449// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1450// 1451// 1452// // Example sending a request using the ListQueuesRequest method. 1453// req, resp := client.ListQueuesRequest(params) 1454// 1455// err := req.Send() 1456// if err == nil { // resp is now filled 1457// fmt.Println(resp) 1458// } 1459// 1460// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListQueues 1461func (c *MediaConvert) ListQueuesRequest(input *ListQueuesInput) (req *request.Request, output *ListQueuesOutput) { 1462 op := &request.Operation{ 1463 Name: opListQueues, 1464 HTTPMethod: "GET", 1465 HTTPPath: "/2017-08-29/queues", 1466 } 1467 1468 if input == nil { 1469 input = &ListQueuesInput{} 1470 } 1471 1472 output = &ListQueuesOutput{} 1473 req = c.newRequest(op, input, output) 1474 return 1475} 1476 1477// ListQueues API operation for AWS Elemental MediaConvert. 1478// 1479// Retrieve a JSON array of up to twenty of your queues. This will return the 1480// queues themselves, not just a list of them. To retrieve the next twenty queues, 1481// use the nextToken string returned with the array. 1482// 1483// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1484// with awserr.Error's Code and Message methods to get detailed information about 1485// the error. 1486// 1487// See the AWS API reference guide for AWS Elemental MediaConvert's 1488// API operation ListQueues for usage and error information. 1489// 1490// Returned Error Codes: 1491// * ErrCodeBadRequestException "BadRequestException" 1492// 1493// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1494// 1495// * ErrCodeForbiddenException "ForbiddenException" 1496// 1497// * ErrCodeNotFoundException "NotFoundException" 1498// 1499// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1500// 1501// * ErrCodeConflictException "ConflictException" 1502// 1503// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListQueues 1504func (c *MediaConvert) ListQueues(input *ListQueuesInput) (*ListQueuesOutput, error) { 1505 req, out := c.ListQueuesRequest(input) 1506 return out, req.Send() 1507} 1508 1509// ListQueuesWithContext is the same as ListQueues with the addition of 1510// the ability to pass a context and additional request options. 1511// 1512// See ListQueues for details on how to use this API operation. 1513// 1514// The context must be non-nil and will be used for request cancellation. If 1515// the context is nil a panic will occur. In the future the SDK may create 1516// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1517// for more information on using Contexts. 1518func (c *MediaConvert) ListQueuesWithContext(ctx aws.Context, input *ListQueuesInput, opts ...request.Option) (*ListQueuesOutput, error) { 1519 req, out := c.ListQueuesRequest(input) 1520 req.SetContext(ctx) 1521 req.ApplyOptions(opts...) 1522 return out, req.Send() 1523} 1524 1525const opListTagsForResource = "ListTagsForResource" 1526 1527// ListTagsForResourceRequest generates a "aws/request.Request" representing the 1528// client's request for the ListTagsForResource operation. The "output" return 1529// value will be populated with the request's response once the request completes 1530// successfuly. 1531// 1532// Use "Send" method on the returned Request to send the API call to the service. 1533// the "output" return value is not valid until after Send returns without error. 1534// 1535// See ListTagsForResource for more information on using the ListTagsForResource 1536// API call, and error handling. 1537// 1538// This method is useful when you want to inject custom logic or configuration 1539// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1540// 1541// 1542// // Example sending a request using the ListTagsForResourceRequest method. 1543// req, resp := client.ListTagsForResourceRequest(params) 1544// 1545// err := req.Send() 1546// if err == nil { // resp is now filled 1547// fmt.Println(resp) 1548// } 1549// 1550// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListTagsForResource 1551func (c *MediaConvert) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { 1552 op := &request.Operation{ 1553 Name: opListTagsForResource, 1554 HTTPMethod: "GET", 1555 HTTPPath: "/2017-08-29/tags/{arn}", 1556 } 1557 1558 if input == nil { 1559 input = &ListTagsForResourceInput{} 1560 } 1561 1562 output = &ListTagsForResourceOutput{} 1563 req = c.newRequest(op, input, output) 1564 return 1565} 1566 1567// ListTagsForResource API operation for AWS Elemental MediaConvert. 1568// 1569// Retrieve the tags for a MediaConvert resource. 1570// 1571// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1572// with awserr.Error's Code and Message methods to get detailed information about 1573// the error. 1574// 1575// See the AWS API reference guide for AWS Elemental MediaConvert's 1576// API operation ListTagsForResource for usage and error information. 1577// 1578// Returned Error Codes: 1579// * ErrCodeBadRequestException "BadRequestException" 1580// 1581// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1582// 1583// * ErrCodeForbiddenException "ForbiddenException" 1584// 1585// * ErrCodeNotFoundException "NotFoundException" 1586// 1587// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1588// 1589// * ErrCodeConflictException "ConflictException" 1590// 1591// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListTagsForResource 1592func (c *MediaConvert) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { 1593 req, out := c.ListTagsForResourceRequest(input) 1594 return out, req.Send() 1595} 1596 1597// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of 1598// the ability to pass a context and additional request options. 1599// 1600// See ListTagsForResource for details on how to use this API operation. 1601// 1602// The context must be non-nil and will be used for request cancellation. If 1603// the context is nil a panic will occur. In the future the SDK may create 1604// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1605// for more information on using Contexts. 1606func (c *MediaConvert) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { 1607 req, out := c.ListTagsForResourceRequest(input) 1608 req.SetContext(ctx) 1609 req.ApplyOptions(opts...) 1610 return out, req.Send() 1611} 1612 1613const opTagResource = "TagResource" 1614 1615// TagResourceRequest generates a "aws/request.Request" representing the 1616// client's request for the TagResource operation. The "output" return 1617// value will be populated with the request's response once the request completes 1618// successfuly. 1619// 1620// Use "Send" method on the returned Request to send the API call to the service. 1621// the "output" return value is not valid until after Send returns without error. 1622// 1623// See TagResource for more information on using the TagResource 1624// API call, and error handling. 1625// 1626// This method is useful when you want to inject custom logic or configuration 1627// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1628// 1629// 1630// // Example sending a request using the TagResourceRequest method. 1631// req, resp := client.TagResourceRequest(params) 1632// 1633// err := req.Send() 1634// if err == nil { // resp is now filled 1635// fmt.Println(resp) 1636// } 1637// 1638// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/TagResource 1639func (c *MediaConvert) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { 1640 op := &request.Operation{ 1641 Name: opTagResource, 1642 HTTPMethod: "POST", 1643 HTTPPath: "/2017-08-29/tags", 1644 } 1645 1646 if input == nil { 1647 input = &TagResourceInput{} 1648 } 1649 1650 output = &TagResourceOutput{} 1651 req = c.newRequest(op, input, output) 1652 return 1653} 1654 1655// TagResource API operation for AWS Elemental MediaConvert. 1656// 1657// Tag a MediaConvert queue, preset, or job template. For information about 1658// these resource types, see the User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html 1659// 1660// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1661// with awserr.Error's Code and Message methods to get detailed information about 1662// the error. 1663// 1664// See the AWS API reference guide for AWS Elemental MediaConvert's 1665// API operation TagResource for usage and error information. 1666// 1667// Returned Error Codes: 1668// * ErrCodeBadRequestException "BadRequestException" 1669// 1670// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1671// 1672// * ErrCodeForbiddenException "ForbiddenException" 1673// 1674// * ErrCodeNotFoundException "NotFoundException" 1675// 1676// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1677// 1678// * ErrCodeConflictException "ConflictException" 1679// 1680// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/TagResource 1681func (c *MediaConvert) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { 1682 req, out := c.TagResourceRequest(input) 1683 return out, req.Send() 1684} 1685 1686// TagResourceWithContext is the same as TagResource with the addition of 1687// the ability to pass a context and additional request options. 1688// 1689// See TagResource for details on how to use this API operation. 1690// 1691// The context must be non-nil and will be used for request cancellation. If 1692// the context is nil a panic will occur. In the future the SDK may create 1693// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1694// for more information on using Contexts. 1695func (c *MediaConvert) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { 1696 req, out := c.TagResourceRequest(input) 1697 req.SetContext(ctx) 1698 req.ApplyOptions(opts...) 1699 return out, req.Send() 1700} 1701 1702const opUntagResource = "UntagResource" 1703 1704// UntagResourceRequest generates a "aws/request.Request" representing the 1705// client's request for the UntagResource operation. The "output" return 1706// value will be populated with the request's response once the request completes 1707// successfuly. 1708// 1709// Use "Send" method on the returned Request to send the API call to the service. 1710// the "output" return value is not valid until after Send returns without error. 1711// 1712// See UntagResource for more information on using the UntagResource 1713// API call, and error handling. 1714// 1715// This method is useful when you want to inject custom logic or configuration 1716// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1717// 1718// 1719// // Example sending a request using the UntagResourceRequest method. 1720// req, resp := client.UntagResourceRequest(params) 1721// 1722// err := req.Send() 1723// if err == nil { // resp is now filled 1724// fmt.Println(resp) 1725// } 1726// 1727// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UntagResource 1728func (c *MediaConvert) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { 1729 op := &request.Operation{ 1730 Name: opUntagResource, 1731 HTTPMethod: "DELETE", 1732 HTTPPath: "/2017-08-29/tags", 1733 } 1734 1735 if input == nil { 1736 input = &UntagResourceInput{} 1737 } 1738 1739 output = &UntagResourceOutput{} 1740 req = c.newRequest(op, input, output) 1741 return 1742} 1743 1744// UntagResource API operation for AWS Elemental MediaConvert. 1745// 1746// Untag a MediaConvert queue, preset, or job template. For information about 1747// these resource types, see the User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html 1748// 1749// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1750// with awserr.Error's Code and Message methods to get detailed information about 1751// the error. 1752// 1753// See the AWS API reference guide for AWS Elemental MediaConvert's 1754// API operation UntagResource for usage and error information. 1755// 1756// Returned Error Codes: 1757// * ErrCodeBadRequestException "BadRequestException" 1758// 1759// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1760// 1761// * ErrCodeForbiddenException "ForbiddenException" 1762// 1763// * ErrCodeNotFoundException "NotFoundException" 1764// 1765// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1766// 1767// * ErrCodeConflictException "ConflictException" 1768// 1769// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UntagResource 1770func (c *MediaConvert) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { 1771 req, out := c.UntagResourceRequest(input) 1772 return out, req.Send() 1773} 1774 1775// UntagResourceWithContext is the same as UntagResource with the addition of 1776// the ability to pass a context and additional request options. 1777// 1778// See UntagResource for details on how to use this API operation. 1779// 1780// The context must be non-nil and will be used for request cancellation. If 1781// the context is nil a panic will occur. In the future the SDK may create 1782// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1783// for more information on using Contexts. 1784func (c *MediaConvert) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { 1785 req, out := c.UntagResourceRequest(input) 1786 req.SetContext(ctx) 1787 req.ApplyOptions(opts...) 1788 return out, req.Send() 1789} 1790 1791const opUpdateJobTemplate = "UpdateJobTemplate" 1792 1793// UpdateJobTemplateRequest generates a "aws/request.Request" representing the 1794// client's request for the UpdateJobTemplate operation. The "output" return 1795// value will be populated with the request's response once the request completes 1796// successfuly. 1797// 1798// Use "Send" method on the returned Request to send the API call to the service. 1799// the "output" return value is not valid until after Send returns without error. 1800// 1801// See UpdateJobTemplate for more information on using the UpdateJobTemplate 1802// API call, and error handling. 1803// 1804// This method is useful when you want to inject custom logic or configuration 1805// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1806// 1807// 1808// // Example sending a request using the UpdateJobTemplateRequest method. 1809// req, resp := client.UpdateJobTemplateRequest(params) 1810// 1811// err := req.Send() 1812// if err == nil { // resp is now filled 1813// fmt.Println(resp) 1814// } 1815// 1816// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UpdateJobTemplate 1817func (c *MediaConvert) UpdateJobTemplateRequest(input *UpdateJobTemplateInput) (req *request.Request, output *UpdateJobTemplateOutput) { 1818 op := &request.Operation{ 1819 Name: opUpdateJobTemplate, 1820 HTTPMethod: "PUT", 1821 HTTPPath: "/2017-08-29/jobTemplates/{name}", 1822 } 1823 1824 if input == nil { 1825 input = &UpdateJobTemplateInput{} 1826 } 1827 1828 output = &UpdateJobTemplateOutput{} 1829 req = c.newRequest(op, input, output) 1830 return 1831} 1832 1833// UpdateJobTemplate API operation for AWS Elemental MediaConvert. 1834// 1835// Modify one of your existing job templates. 1836// 1837// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1838// with awserr.Error's Code and Message methods to get detailed information about 1839// the error. 1840// 1841// See the AWS API reference guide for AWS Elemental MediaConvert's 1842// API operation UpdateJobTemplate for usage and error information. 1843// 1844// Returned Error Codes: 1845// * ErrCodeBadRequestException "BadRequestException" 1846// 1847// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1848// 1849// * ErrCodeForbiddenException "ForbiddenException" 1850// 1851// * ErrCodeNotFoundException "NotFoundException" 1852// 1853// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1854// 1855// * ErrCodeConflictException "ConflictException" 1856// 1857// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UpdateJobTemplate 1858func (c *MediaConvert) UpdateJobTemplate(input *UpdateJobTemplateInput) (*UpdateJobTemplateOutput, error) { 1859 req, out := c.UpdateJobTemplateRequest(input) 1860 return out, req.Send() 1861} 1862 1863// UpdateJobTemplateWithContext is the same as UpdateJobTemplate with the addition of 1864// the ability to pass a context and additional request options. 1865// 1866// See UpdateJobTemplate for details on how to use this API operation. 1867// 1868// The context must be non-nil and will be used for request cancellation. If 1869// the context is nil a panic will occur. In the future the SDK may create 1870// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1871// for more information on using Contexts. 1872func (c *MediaConvert) UpdateJobTemplateWithContext(ctx aws.Context, input *UpdateJobTemplateInput, opts ...request.Option) (*UpdateJobTemplateOutput, error) { 1873 req, out := c.UpdateJobTemplateRequest(input) 1874 req.SetContext(ctx) 1875 req.ApplyOptions(opts...) 1876 return out, req.Send() 1877} 1878 1879const opUpdatePreset = "UpdatePreset" 1880 1881// UpdatePresetRequest generates a "aws/request.Request" representing the 1882// client's request for the UpdatePreset operation. The "output" return 1883// value will be populated with the request's response once the request completes 1884// successfuly. 1885// 1886// Use "Send" method on the returned Request to send the API call to the service. 1887// the "output" return value is not valid until after Send returns without error. 1888// 1889// See UpdatePreset for more information on using the UpdatePreset 1890// API call, and error handling. 1891// 1892// This method is useful when you want to inject custom logic or configuration 1893// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1894// 1895// 1896// // Example sending a request using the UpdatePresetRequest method. 1897// req, resp := client.UpdatePresetRequest(params) 1898// 1899// err := req.Send() 1900// if err == nil { // resp is now filled 1901// fmt.Println(resp) 1902// } 1903// 1904// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UpdatePreset 1905func (c *MediaConvert) UpdatePresetRequest(input *UpdatePresetInput) (req *request.Request, output *UpdatePresetOutput) { 1906 op := &request.Operation{ 1907 Name: opUpdatePreset, 1908 HTTPMethod: "PUT", 1909 HTTPPath: "/2017-08-29/presets/{name}", 1910 } 1911 1912 if input == nil { 1913 input = &UpdatePresetInput{} 1914 } 1915 1916 output = &UpdatePresetOutput{} 1917 req = c.newRequest(op, input, output) 1918 return 1919} 1920 1921// UpdatePreset API operation for AWS Elemental MediaConvert. 1922// 1923// Modify one of your existing presets. 1924// 1925// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1926// with awserr.Error's Code and Message methods to get detailed information about 1927// the error. 1928// 1929// See the AWS API reference guide for AWS Elemental MediaConvert's 1930// API operation UpdatePreset for usage and error information. 1931// 1932// Returned Error Codes: 1933// * ErrCodeBadRequestException "BadRequestException" 1934// 1935// * ErrCodeInternalServerErrorException "InternalServerErrorException" 1936// 1937// * ErrCodeForbiddenException "ForbiddenException" 1938// 1939// * ErrCodeNotFoundException "NotFoundException" 1940// 1941// * ErrCodeTooManyRequestsException "TooManyRequestsException" 1942// 1943// * ErrCodeConflictException "ConflictException" 1944// 1945// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UpdatePreset 1946func (c *MediaConvert) UpdatePreset(input *UpdatePresetInput) (*UpdatePresetOutput, error) { 1947 req, out := c.UpdatePresetRequest(input) 1948 return out, req.Send() 1949} 1950 1951// UpdatePresetWithContext is the same as UpdatePreset with the addition of 1952// the ability to pass a context and additional request options. 1953// 1954// See UpdatePreset for details on how to use this API operation. 1955// 1956// The context must be non-nil and will be used for request cancellation. If 1957// the context is nil a panic will occur. In the future the SDK may create 1958// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1959// for more information on using Contexts. 1960func (c *MediaConvert) UpdatePresetWithContext(ctx aws.Context, input *UpdatePresetInput, opts ...request.Option) (*UpdatePresetOutput, error) { 1961 req, out := c.UpdatePresetRequest(input) 1962 req.SetContext(ctx) 1963 req.ApplyOptions(opts...) 1964 return out, req.Send() 1965} 1966 1967const opUpdateQueue = "UpdateQueue" 1968 1969// UpdateQueueRequest generates a "aws/request.Request" representing the 1970// client's request for the UpdateQueue operation. The "output" return 1971// value will be populated with the request's response once the request completes 1972// successfuly. 1973// 1974// Use "Send" method on the returned Request to send the API call to the service. 1975// the "output" return value is not valid until after Send returns without error. 1976// 1977// See UpdateQueue for more information on using the UpdateQueue 1978// API call, and error handling. 1979// 1980// This method is useful when you want to inject custom logic or configuration 1981// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1982// 1983// 1984// // Example sending a request using the UpdateQueueRequest method. 1985// req, resp := client.UpdateQueueRequest(params) 1986// 1987// err := req.Send() 1988// if err == nil { // resp is now filled 1989// fmt.Println(resp) 1990// } 1991// 1992// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UpdateQueue 1993func (c *MediaConvert) UpdateQueueRequest(input *UpdateQueueInput) (req *request.Request, output *UpdateQueueOutput) { 1994 op := &request.Operation{ 1995 Name: opUpdateQueue, 1996 HTTPMethod: "PUT", 1997 HTTPPath: "/2017-08-29/queues/{name}", 1998 } 1999 2000 if input == nil { 2001 input = &UpdateQueueInput{} 2002 } 2003 2004 output = &UpdateQueueOutput{} 2005 req = c.newRequest(op, input, output) 2006 return 2007} 2008 2009// UpdateQueue API operation for AWS Elemental MediaConvert. 2010// 2011// Modify one of your existing queues. 2012// 2013// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2014// with awserr.Error's Code and Message methods to get detailed information about 2015// the error. 2016// 2017// See the AWS API reference guide for AWS Elemental MediaConvert's 2018// API operation UpdateQueue for usage and error information. 2019// 2020// Returned Error Codes: 2021// * ErrCodeBadRequestException "BadRequestException" 2022// 2023// * ErrCodeInternalServerErrorException "InternalServerErrorException" 2024// 2025// * ErrCodeForbiddenException "ForbiddenException" 2026// 2027// * ErrCodeNotFoundException "NotFoundException" 2028// 2029// * ErrCodeTooManyRequestsException "TooManyRequestsException" 2030// 2031// * ErrCodeConflictException "ConflictException" 2032// 2033// See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UpdateQueue 2034func (c *MediaConvert) UpdateQueue(input *UpdateQueueInput) (*UpdateQueueOutput, error) { 2035 req, out := c.UpdateQueueRequest(input) 2036 return out, req.Send() 2037} 2038 2039// UpdateQueueWithContext is the same as UpdateQueue with the addition of 2040// the ability to pass a context and additional request options. 2041// 2042// See UpdateQueue for details on how to use this API operation. 2043// 2044// The context must be non-nil and will be used for request cancellation. If 2045// the context is nil a panic will occur. In the future the SDK may create 2046// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2047// for more information on using Contexts. 2048func (c *MediaConvert) UpdateQueueWithContext(ctx aws.Context, input *UpdateQueueInput, opts ...request.Option) (*UpdateQueueOutput, error) { 2049 req, out := c.UpdateQueueRequest(input) 2050 req.SetContext(ctx) 2051 req.ApplyOptions(opts...) 2052 return out, req.Send() 2053} 2054 2055// Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to 2056// the value AAC. The service accepts one of two mutually exclusive groups of 2057// AAC settings--VBR and CBR. To select one of these modes, set the value of 2058// Bitrate control mode (rateControlMode) to "VBR" or "CBR". In VBR mode, you 2059// control the audio quality with the setting VBR quality (vbrQuality). In CBR 2060// mode, you use the setting Bitrate (bitrate). Defaults and valid values depend 2061// on the rate control mode. 2062type AacSettings struct { 2063 _ struct{} `type:"structure"` 2064 2065 // Choose BROADCASTER_MIXED_AD when the input contains pre-mixed main audio 2066 // + audio description (AD) as a stereo pair. The value for AudioType will be 2067 // set to 3, which signals to downstream systems that this stream contains "broadcaster 2068 // mixed AD". Note that the input received by the encoder must contain pre-mixed 2069 // audio; the encoder does not perform the mixing. When you choose BROADCASTER_MIXED_AD, 2070 // the encoder ignores any values you provide in AudioType and FollowInputAudioType. 2071 // Choose NORMAL when the input does not contain pre-mixed audio + audio description 2072 // (AD). In this case, the encoder will use any values you provide for AudioType 2073 // and FollowInputAudioType. 2074 AudioDescriptionBroadcasterMix *string `locationName:"audioDescriptionBroadcasterMix" type:"string" enum:"AacAudioDescriptionBroadcasterMix"` 2075 2076 // Average bitrate in bits/second. Defaults and valid values depend on rate 2077 // control mode and profile. 2078 Bitrate *int64 `locationName:"bitrate" min:"6000" type:"integer"` 2079 2080 // AAC Profile. 2081 CodecProfile *string `locationName:"codecProfile" type:"string" enum:"AacCodecProfile"` 2082 2083 // Mono (Audio Description), Mono, Stereo, or 5.1 channel layout. Valid values 2084 // depend on rate control mode and profile. "1.0 - Audio Description (Receiver 2085 // Mix)" setting receives a stereo description plus control track and emits 2086 // a mono AAC encode of the description track, with control data emitted in 2087 // the PES header as per ETSI TS 101 154 Annex E. 2088 // 2089 // CodingMode is a required field 2090 CodingMode *string `locationName:"codingMode" type:"string" required:"true" enum:"AacCodingMode"` 2091 2092 // Rate Control Mode. 2093 RateControlMode *string `locationName:"rateControlMode" type:"string" enum:"AacRateControlMode"` 2094 2095 // Enables LATM/LOAS AAC output. Note that if you use LATM/LOAS AAC in an output, 2096 // you must choose "No container" for the output container. 2097 RawFormat *string `locationName:"rawFormat" type:"string" enum:"AacRawFormat"` 2098 2099 // Sample rate in Hz. Valid values depend on rate control mode and profile. 2100 // 2101 // SampleRate is a required field 2102 SampleRate *int64 `locationName:"sampleRate" min:"8000" type:"integer" required:"true"` 2103 2104 // Use MPEG-2 AAC instead of MPEG-4 AAC audio for raw or MPEG-2 Transport Stream 2105 // containers. 2106 Specification *string `locationName:"specification" type:"string" enum:"AacSpecification"` 2107 2108 // VBR Quality Level - Only used if rate_control_mode is VBR. 2109 VbrQuality *string `locationName:"vbrQuality" type:"string" enum:"AacVbrQuality"` 2110} 2111 2112// String returns the string representation 2113func (s AacSettings) String() string { 2114 return awsutil.Prettify(s) 2115} 2116 2117// GoString returns the string representation 2118func (s AacSettings) GoString() string { 2119 return s.String() 2120} 2121 2122// Validate inspects the fields of the type to determine if they are valid. 2123func (s *AacSettings) Validate() error { 2124 invalidParams := request.ErrInvalidParams{Context: "AacSettings"} 2125 if s.Bitrate != nil && *s.Bitrate < 6000 { 2126 invalidParams.Add(request.NewErrParamMinValue("Bitrate", 6000)) 2127 } 2128 if s.CodingMode == nil { 2129 invalidParams.Add(request.NewErrParamRequired("CodingMode")) 2130 } 2131 if s.SampleRate == nil { 2132 invalidParams.Add(request.NewErrParamRequired("SampleRate")) 2133 } 2134 if s.SampleRate != nil && *s.SampleRate < 8000 { 2135 invalidParams.Add(request.NewErrParamMinValue("SampleRate", 8000)) 2136 } 2137 2138 if invalidParams.Len() > 0 { 2139 return invalidParams 2140 } 2141 return nil 2142} 2143 2144// SetAudioDescriptionBroadcasterMix sets the AudioDescriptionBroadcasterMix field's value. 2145func (s *AacSettings) SetAudioDescriptionBroadcasterMix(v string) *AacSettings { 2146 s.AudioDescriptionBroadcasterMix = &v 2147 return s 2148} 2149 2150// SetBitrate sets the Bitrate field's value. 2151func (s *AacSettings) SetBitrate(v int64) *AacSettings { 2152 s.Bitrate = &v 2153 return s 2154} 2155 2156// SetCodecProfile sets the CodecProfile field's value. 2157func (s *AacSettings) SetCodecProfile(v string) *AacSettings { 2158 s.CodecProfile = &v 2159 return s 2160} 2161 2162// SetCodingMode sets the CodingMode field's value. 2163func (s *AacSettings) SetCodingMode(v string) *AacSettings { 2164 s.CodingMode = &v 2165 return s 2166} 2167 2168// SetRateControlMode sets the RateControlMode field's value. 2169func (s *AacSettings) SetRateControlMode(v string) *AacSettings { 2170 s.RateControlMode = &v 2171 return s 2172} 2173 2174// SetRawFormat sets the RawFormat field's value. 2175func (s *AacSettings) SetRawFormat(v string) *AacSettings { 2176 s.RawFormat = &v 2177 return s 2178} 2179 2180// SetSampleRate sets the SampleRate field's value. 2181func (s *AacSettings) SetSampleRate(v int64) *AacSettings { 2182 s.SampleRate = &v 2183 return s 2184} 2185 2186// SetSpecification sets the Specification field's value. 2187func (s *AacSettings) SetSpecification(v string) *AacSettings { 2188 s.Specification = &v 2189 return s 2190} 2191 2192// SetVbrQuality sets the VbrQuality field's value. 2193func (s *AacSettings) SetVbrQuality(v string) *AacSettings { 2194 s.VbrQuality = &v 2195 return s 2196} 2197 2198// Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to 2199// the value AC3. 2200type Ac3Settings struct { 2201 _ struct{} `type:"structure"` 2202 2203 // Average bitrate in bits/second. Valid bitrates depend on the coding mode. 2204 Bitrate *int64 `locationName:"bitrate" min:"64000" type:"integer"` 2205 2206 // Specifies the "Bitstream Mode" (bsmod) for the emitted AC-3 stream. See ATSC 2207 // A/52-2012 for background on these values. 2208 BitstreamMode *string `locationName:"bitstreamMode" type:"string" enum:"Ac3BitstreamMode"` 2209 2210 // Dolby Digital coding mode. Determines number of channels. 2211 CodingMode *string `locationName:"codingMode" type:"string" enum:"Ac3CodingMode"` 2212 2213 // Sets the dialnorm for the output. If blank and input audio is Dolby Digital, 2214 // dialnorm will be passed through. 2215 Dialnorm *int64 `locationName:"dialnorm" min:"1" type:"integer"` 2216 2217 // If set to FILM_STANDARD, adds dynamic range compression signaling to the 2218 // output bitstream as defined in the Dolby Digital specification. 2219 DynamicRangeCompressionProfile *string `locationName:"dynamicRangeCompressionProfile" type:"string" enum:"Ac3DynamicRangeCompressionProfile"` 2220 2221 // Applies a 120Hz lowpass filter to the LFE channel prior to encoding. Only 2222 // valid with 3_2_LFE coding mode. 2223 LfeFilter *string `locationName:"lfeFilter" type:"string" enum:"Ac3LfeFilter"` 2224 2225 // When set to FOLLOW_INPUT, encoder metadata will be sourced from the DD, DD+, 2226 // or DolbyE decoder that supplied this audio data. If audio was not supplied 2227 // from one of these streams, then the static metadata settings will be used. 2228 MetadataControl *string `locationName:"metadataControl" type:"string" enum:"Ac3MetadataControl"` 2229 2230 // Sample rate in hz. Sample rate is always 48000. 2231 SampleRate *int64 `locationName:"sampleRate" min:"48000" type:"integer"` 2232} 2233 2234// String returns the string representation 2235func (s Ac3Settings) String() string { 2236 return awsutil.Prettify(s) 2237} 2238 2239// GoString returns the string representation 2240func (s Ac3Settings) GoString() string { 2241 return s.String() 2242} 2243 2244// Validate inspects the fields of the type to determine if they are valid. 2245func (s *Ac3Settings) Validate() error { 2246 invalidParams := request.ErrInvalidParams{Context: "Ac3Settings"} 2247 if s.Bitrate != nil && *s.Bitrate < 64000 { 2248 invalidParams.Add(request.NewErrParamMinValue("Bitrate", 64000)) 2249 } 2250 if s.Dialnorm != nil && *s.Dialnorm < 1 { 2251 invalidParams.Add(request.NewErrParamMinValue("Dialnorm", 1)) 2252 } 2253 if s.SampleRate != nil && *s.SampleRate < 48000 { 2254 invalidParams.Add(request.NewErrParamMinValue("SampleRate", 48000)) 2255 } 2256 2257 if invalidParams.Len() > 0 { 2258 return invalidParams 2259 } 2260 return nil 2261} 2262 2263// SetBitrate sets the Bitrate field's value. 2264func (s *Ac3Settings) SetBitrate(v int64) *Ac3Settings { 2265 s.Bitrate = &v 2266 return s 2267} 2268 2269// SetBitstreamMode sets the BitstreamMode field's value. 2270func (s *Ac3Settings) SetBitstreamMode(v string) *Ac3Settings { 2271 s.BitstreamMode = &v 2272 return s 2273} 2274 2275// SetCodingMode sets the CodingMode field's value. 2276func (s *Ac3Settings) SetCodingMode(v string) *Ac3Settings { 2277 s.CodingMode = &v 2278 return s 2279} 2280 2281// SetDialnorm sets the Dialnorm field's value. 2282func (s *Ac3Settings) SetDialnorm(v int64) *Ac3Settings { 2283 s.Dialnorm = &v 2284 return s 2285} 2286 2287// SetDynamicRangeCompressionProfile sets the DynamicRangeCompressionProfile field's value. 2288func (s *Ac3Settings) SetDynamicRangeCompressionProfile(v string) *Ac3Settings { 2289 s.DynamicRangeCompressionProfile = &v 2290 return s 2291} 2292 2293// SetLfeFilter sets the LfeFilter field's value. 2294func (s *Ac3Settings) SetLfeFilter(v string) *Ac3Settings { 2295 s.LfeFilter = &v 2296 return s 2297} 2298 2299// SetMetadataControl sets the MetadataControl field's value. 2300func (s *Ac3Settings) SetMetadataControl(v string) *Ac3Settings { 2301 s.MetadataControl = &v 2302 return s 2303} 2304 2305// SetSampleRate sets the SampleRate field's value. 2306func (s *Ac3Settings) SetSampleRate(v int64) *Ac3Settings { 2307 s.SampleRate = &v 2308 return s 2309} 2310 2311// Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to 2312// the value AIFF. 2313type AiffSettings struct { 2314 _ struct{} `type:"structure"` 2315 2316 // Specify Bit depth (BitDepth), in bits per sample, to choose the encoding 2317 // quality for this audio track. 2318 BitDepth *int64 `locationName:"bitDepth" min:"16" type:"integer"` 2319 2320 // Set Channels to specify the number of channels in this output audio track. 2321 // Choosing Mono in the console will give you 1 output channel; choosing Stereo 2322 // will give you 2. In the API, valid values are 1 and 2. 2323 Channels *int64 `locationName:"channels" min:"1" type:"integer"` 2324 2325 // Sample rate in hz. 2326 SampleRate *int64 `locationName:"sampleRate" min:"8000" type:"integer"` 2327} 2328 2329// String returns the string representation 2330func (s AiffSettings) String() string { 2331 return awsutil.Prettify(s) 2332} 2333 2334// GoString returns the string representation 2335func (s AiffSettings) GoString() string { 2336 return s.String() 2337} 2338 2339// Validate inspects the fields of the type to determine if they are valid. 2340func (s *AiffSettings) Validate() error { 2341 invalidParams := request.ErrInvalidParams{Context: "AiffSettings"} 2342 if s.BitDepth != nil && *s.BitDepth < 16 { 2343 invalidParams.Add(request.NewErrParamMinValue("BitDepth", 16)) 2344 } 2345 if s.Channels != nil && *s.Channels < 1 { 2346 invalidParams.Add(request.NewErrParamMinValue("Channels", 1)) 2347 } 2348 if s.SampleRate != nil && *s.SampleRate < 8000 { 2349 invalidParams.Add(request.NewErrParamMinValue("SampleRate", 8000)) 2350 } 2351 2352 if invalidParams.Len() > 0 { 2353 return invalidParams 2354 } 2355 return nil 2356} 2357 2358// SetBitDepth sets the BitDepth field's value. 2359func (s *AiffSettings) SetBitDepth(v int64) *AiffSettings { 2360 s.BitDepth = &v 2361 return s 2362} 2363 2364// SetChannels sets the Channels field's value. 2365func (s *AiffSettings) SetChannels(v int64) *AiffSettings { 2366 s.Channels = &v 2367 return s 2368} 2369 2370// SetSampleRate sets the SampleRate field's value. 2371func (s *AiffSettings) SetSampleRate(v int64) *AiffSettings { 2372 s.SampleRate = &v 2373 return s 2374} 2375 2376// Settings for ancillary captions source. 2377type AncillarySourceSettings struct { 2378 _ struct{} `type:"structure"` 2379 2380 // Specifies the 608 channel number in the ancillary data track from which to 2381 // extract captions. Unused for passthrough. 2382 SourceAncillaryChannelNumber *int64 `locationName:"sourceAncillaryChannelNumber" min:"1" type:"integer"` 2383} 2384 2385// String returns the string representation 2386func (s AncillarySourceSettings) String() string { 2387 return awsutil.Prettify(s) 2388} 2389 2390// GoString returns the string representation 2391func (s AncillarySourceSettings) GoString() string { 2392 return s.String() 2393} 2394 2395// Validate inspects the fields of the type to determine if they are valid. 2396func (s *AncillarySourceSettings) Validate() error { 2397 invalidParams := request.ErrInvalidParams{Context: "AncillarySourceSettings"} 2398 if s.SourceAncillaryChannelNumber != nil && *s.SourceAncillaryChannelNumber < 1 { 2399 invalidParams.Add(request.NewErrParamMinValue("SourceAncillaryChannelNumber", 1)) 2400 } 2401 2402 if invalidParams.Len() > 0 { 2403 return invalidParams 2404 } 2405 return nil 2406} 2407 2408// SetSourceAncillaryChannelNumber sets the SourceAncillaryChannelNumber field's value. 2409func (s *AncillarySourceSettings) SetSourceAncillaryChannelNumber(v int64) *AncillarySourceSettings { 2410 s.SourceAncillaryChannelNumber = &v 2411 return s 2412} 2413 2414// Audio codec settings (CodecSettings) under (AudioDescriptions) contains the 2415// group of settings related to audio encoding. The settings in this group vary 2416// depending on the value you choose for Audio codec (Codec). For each codec 2417// enum you choose, define the corresponding settings object. The following 2418// lists the codec enum, settings object pairs. * AAC, AacSettings * MP2, Mp2Settings 2419// * WAV, WavSettings * AIFF, AiffSettings * AC3, Ac3Settings * EAC3, Eac3Settings 2420type AudioCodecSettings struct { 2421 _ struct{} `type:"structure"` 2422 2423 // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to 2424 // the value AAC. The service accepts one of two mutually exclusive groups of 2425 // AAC settings--VBR and CBR. To select one of these modes, set the value of 2426 // Bitrate control mode (rateControlMode) to "VBR" or "CBR". In VBR mode, you 2427 // control the audio quality with the setting VBR quality (vbrQuality). In CBR 2428 // mode, you use the setting Bitrate (bitrate). Defaults and valid values depend 2429 // on the rate control mode. 2430 AacSettings *AacSettings `locationName:"aacSettings" type:"structure"` 2431 2432 // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to 2433 // the value AC3. 2434 Ac3Settings *Ac3Settings `locationName:"ac3Settings" type:"structure"` 2435 2436 // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to 2437 // the value AIFF. 2438 AiffSettings *AiffSettings `locationName:"aiffSettings" type:"structure"` 2439 2440 // Type of Audio codec. 2441 // 2442 // Codec is a required field 2443 Codec *string `locationName:"codec" type:"string" required:"true" enum:"AudioCodec"` 2444 2445 // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to 2446 // the value EAC3. 2447 Eac3Settings *Eac3Settings `locationName:"eac3Settings" type:"structure"` 2448 2449 // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to 2450 // the value MP2. 2451 Mp2Settings *Mp2Settings `locationName:"mp2Settings" type:"structure"` 2452 2453 // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to 2454 // the value WAV. 2455 WavSettings *WavSettings `locationName:"wavSettings" type:"structure"` 2456} 2457 2458// String returns the string representation 2459func (s AudioCodecSettings) String() string { 2460 return awsutil.Prettify(s) 2461} 2462 2463// GoString returns the string representation 2464func (s AudioCodecSettings) GoString() string { 2465 return s.String() 2466} 2467 2468// Validate inspects the fields of the type to determine if they are valid. 2469func (s *AudioCodecSettings) Validate() error { 2470 invalidParams := request.ErrInvalidParams{Context: "AudioCodecSettings"} 2471 if s.Codec == nil { 2472 invalidParams.Add(request.NewErrParamRequired("Codec")) 2473 } 2474 if s.AacSettings != nil { 2475 if err := s.AacSettings.Validate(); err != nil { 2476 invalidParams.AddNested("AacSettings", err.(request.ErrInvalidParams)) 2477 } 2478 } 2479 if s.Ac3Settings != nil { 2480 if err := s.Ac3Settings.Validate(); err != nil { 2481 invalidParams.AddNested("Ac3Settings", err.(request.ErrInvalidParams)) 2482 } 2483 } 2484 if s.AiffSettings != nil { 2485 if err := s.AiffSettings.Validate(); err != nil { 2486 invalidParams.AddNested("AiffSettings", err.(request.ErrInvalidParams)) 2487 } 2488 } 2489 if s.Eac3Settings != nil { 2490 if err := s.Eac3Settings.Validate(); err != nil { 2491 invalidParams.AddNested("Eac3Settings", err.(request.ErrInvalidParams)) 2492 } 2493 } 2494 if s.Mp2Settings != nil { 2495 if err := s.Mp2Settings.Validate(); err != nil { 2496 invalidParams.AddNested("Mp2Settings", err.(request.ErrInvalidParams)) 2497 } 2498 } 2499 if s.WavSettings != nil { 2500 if err := s.WavSettings.Validate(); err != nil { 2501 invalidParams.AddNested("WavSettings", err.(request.ErrInvalidParams)) 2502 } 2503 } 2504 2505 if invalidParams.Len() > 0 { 2506 return invalidParams 2507 } 2508 return nil 2509} 2510 2511// SetAacSettings sets the AacSettings field's value. 2512func (s *AudioCodecSettings) SetAacSettings(v *AacSettings) *AudioCodecSettings { 2513 s.AacSettings = v 2514 return s 2515} 2516 2517// SetAc3Settings sets the Ac3Settings field's value. 2518func (s *AudioCodecSettings) SetAc3Settings(v *Ac3Settings) *AudioCodecSettings { 2519 s.Ac3Settings = v 2520 return s 2521} 2522 2523// SetAiffSettings sets the AiffSettings field's value. 2524func (s *AudioCodecSettings) SetAiffSettings(v *AiffSettings) *AudioCodecSettings { 2525 s.AiffSettings = v 2526 return s 2527} 2528 2529// SetCodec sets the Codec field's value. 2530func (s *AudioCodecSettings) SetCodec(v string) *AudioCodecSettings { 2531 s.Codec = &v 2532 return s 2533} 2534 2535// SetEac3Settings sets the Eac3Settings field's value. 2536func (s *AudioCodecSettings) SetEac3Settings(v *Eac3Settings) *AudioCodecSettings { 2537 s.Eac3Settings = v 2538 return s 2539} 2540 2541// SetMp2Settings sets the Mp2Settings field's value. 2542func (s *AudioCodecSettings) SetMp2Settings(v *Mp2Settings) *AudioCodecSettings { 2543 s.Mp2Settings = v 2544 return s 2545} 2546 2547// SetWavSettings sets the WavSettings field's value. 2548func (s *AudioCodecSettings) SetWavSettings(v *WavSettings) *AudioCodecSettings { 2549 s.WavSettings = v 2550 return s 2551} 2552 2553// Description of audio output 2554type AudioDescription struct { 2555 _ struct{} `type:"structure"` 2556 2557 // Advanced audio normalization settings. 2558 AudioNormalizationSettings *AudioNormalizationSettings `locationName:"audioNormalizationSettings" type:"structure"` 2559 2560 // Specifies which audio data to use from each input. In the simplest case, 2561 // specify an "Audio Selector":#inputs-audio_selector by name based on its order 2562 // within each input. For example if you specify "Audio Selector 3", then the 2563 // third audio selector will be used from each input. If an input does not have 2564 // an "Audio Selector 3", then the audio selector marked as "default" in that 2565 // input will be used. If there is no audio selector marked as "default", silence 2566 // will be inserted for the duration of that input. Alternatively, an "Audio 2567 // Selector Group":#inputs-audio_selector_group name may be specified, with 2568 // similar default/silence behavior. If no audio_source_name is specified, then 2569 // "Audio Selector 1" will be chosen automatically. 2570 AudioSourceName *string `locationName:"audioSourceName" type:"string"` 2571 2572 // Applies only if Follow Input Audio Type is unchecked (false). A number between 2573 // 0 and 255. The following are defined in ISO-IEC 13818-1: 0 = Undefined, 1 2574 // = Clean Effects, 2 = Hearing Impaired, 3 = Visually Impaired Commentary, 2575 // 4-255 = Reserved. 2576 AudioType *int64 `locationName:"audioType" type:"integer"` 2577 2578 // When set to FOLLOW_INPUT, if the input contains an ISO 639 audio_type, then 2579 // that value is passed through to the output. If the input contains no ISO 2580 // 639 audio_type, the value in Audio Type is included in the output. Otherwise 2581 // the value in Audio Type is included in the output. Note that this field and 2582 // audioType are both ignored if audioDescriptionBroadcasterMix is set to BROADCASTER_MIXED_AD. 2583 AudioTypeControl *string `locationName:"audioTypeControl" type:"string" enum:"AudioTypeControl"` 2584 2585 // Audio codec settings (CodecSettings) under (AudioDescriptions) contains the 2586 // group of settings related to audio encoding. The settings in this group vary 2587 // depending on the value you choose for Audio codec (Codec). For each codec 2588 // enum you choose, define the corresponding settings object. The following 2589 // lists the codec enum, settings object pairs. * AAC, AacSettings * MP2, Mp2Settings 2590 // * WAV, WavSettings * AIFF, AiffSettings * AC3, Ac3Settings * EAC3, Eac3Settings 2591 // 2592 // CodecSettings is a required field 2593 CodecSettings *AudioCodecSettings `locationName:"codecSettings" type:"structure" required:"true"` 2594 2595 // Specify the language for this audio output track, using the ISO 639-2 or 2596 // ISO 639-3 three-letter language code. The language specified will be used 2597 // when 'Follow Input Language Code' is not selected or when 'Follow Input Language 2598 // Code' is selected but there is no ISO 639 language code specified by the 2599 // input. 2600 CustomLanguageCode *string `locationName:"customLanguageCode" min:"3" type:"string"` 2601 2602 // Indicates the language of the audio output track. The ISO 639 language specified 2603 // in the 'Language Code' drop down will be used when 'Follow Input Language 2604 // Code' is not selected or when 'Follow Input Language Code' is selected but 2605 // there is no ISO 639 language code specified by the input. 2606 LanguageCode *string `locationName:"languageCode" type:"string" enum:"LanguageCode"` 2607 2608 // Choosing FOLLOW_INPUT will cause the ISO 639 language code of the output 2609 // to follow the ISO 639 language code of the input. The language specified 2610 // for languageCode' will be used when USE_CONFIGURED is selected or when FOLLOW_INPUT 2611 // is selected but there is no ISO 639 language code specified by the input. 2612 LanguageCodeControl *string `locationName:"languageCodeControl" type:"string" enum:"AudioLanguageCodeControl"` 2613 2614 // Advanced audio remixing settings. 2615 RemixSettings *RemixSettings `locationName:"remixSettings" type:"structure"` 2616 2617 // Used for MS Smooth and Apple HLS outputs. Indicates the name displayed by 2618 // the player (eg. English, or Director Commentary). Alphanumeric characters, 2619 // spaces, and underscore are legal. 2620 StreamName *string `locationName:"streamName" type:"string"` 2621} 2622 2623// String returns the string representation 2624func (s AudioDescription) String() string { 2625 return awsutil.Prettify(s) 2626} 2627 2628// GoString returns the string representation 2629func (s AudioDescription) GoString() string { 2630 return s.String() 2631} 2632 2633// Validate inspects the fields of the type to determine if they are valid. 2634func (s *AudioDescription) Validate() error { 2635 invalidParams := request.ErrInvalidParams{Context: "AudioDescription"} 2636 if s.CodecSettings == nil { 2637 invalidParams.Add(request.NewErrParamRequired("CodecSettings")) 2638 } 2639 if s.CustomLanguageCode != nil && len(*s.CustomLanguageCode) < 3 { 2640 invalidParams.Add(request.NewErrParamMinLen("CustomLanguageCode", 3)) 2641 } 2642 if s.AudioNormalizationSettings != nil { 2643 if err := s.AudioNormalizationSettings.Validate(); err != nil { 2644 invalidParams.AddNested("AudioNormalizationSettings", err.(request.ErrInvalidParams)) 2645 } 2646 } 2647 if s.CodecSettings != nil { 2648 if err := s.CodecSettings.Validate(); err != nil { 2649 invalidParams.AddNested("CodecSettings", err.(request.ErrInvalidParams)) 2650 } 2651 } 2652 if s.RemixSettings != nil { 2653 if err := s.RemixSettings.Validate(); err != nil { 2654 invalidParams.AddNested("RemixSettings", err.(request.ErrInvalidParams)) 2655 } 2656 } 2657 2658 if invalidParams.Len() > 0 { 2659 return invalidParams 2660 } 2661 return nil 2662} 2663 2664// SetAudioNormalizationSettings sets the AudioNormalizationSettings field's value. 2665func (s *AudioDescription) SetAudioNormalizationSettings(v *AudioNormalizationSettings) *AudioDescription { 2666 s.AudioNormalizationSettings = v 2667 return s 2668} 2669 2670// SetAudioSourceName sets the AudioSourceName field's value. 2671func (s *AudioDescription) SetAudioSourceName(v string) *AudioDescription { 2672 s.AudioSourceName = &v 2673 return s 2674} 2675 2676// SetAudioType sets the AudioType field's value. 2677func (s *AudioDescription) SetAudioType(v int64) *AudioDescription { 2678 s.AudioType = &v 2679 return s 2680} 2681 2682// SetAudioTypeControl sets the AudioTypeControl field's value. 2683func (s *AudioDescription) SetAudioTypeControl(v string) *AudioDescription { 2684 s.AudioTypeControl = &v 2685 return s 2686} 2687 2688// SetCodecSettings sets the CodecSettings field's value. 2689func (s *AudioDescription) SetCodecSettings(v *AudioCodecSettings) *AudioDescription { 2690 s.CodecSettings = v 2691 return s 2692} 2693 2694// SetCustomLanguageCode sets the CustomLanguageCode field's value. 2695func (s *AudioDescription) SetCustomLanguageCode(v string) *AudioDescription { 2696 s.CustomLanguageCode = &v 2697 return s 2698} 2699 2700// SetLanguageCode sets the LanguageCode field's value. 2701func (s *AudioDescription) SetLanguageCode(v string) *AudioDescription { 2702 s.LanguageCode = &v 2703 return s 2704} 2705 2706// SetLanguageCodeControl sets the LanguageCodeControl field's value. 2707func (s *AudioDescription) SetLanguageCodeControl(v string) *AudioDescription { 2708 s.LanguageCodeControl = &v 2709 return s 2710} 2711 2712// SetRemixSettings sets the RemixSettings field's value. 2713func (s *AudioDescription) SetRemixSettings(v *RemixSettings) *AudioDescription { 2714 s.RemixSettings = v 2715 return s 2716} 2717 2718// SetStreamName sets the StreamName field's value. 2719func (s *AudioDescription) SetStreamName(v string) *AudioDescription { 2720 s.StreamName = &v 2721 return s 2722} 2723 2724// Advanced audio normalization settings. 2725type AudioNormalizationSettings struct { 2726 _ struct{} `type:"structure"` 2727 2728 // Audio normalization algorithm to use. 1770-1 conforms to the CALM Act specification, 2729 // 1770-2 conforms to the EBU R-128 specification. 2730 Algorithm *string `locationName:"algorithm" type:"string" enum:"AudioNormalizationAlgorithm"` 2731 2732 // When enabled the output audio is corrected using the chosen algorithm. If 2733 // disabled, the audio will be measured but not adjusted. 2734 AlgorithmControl *string `locationName:"algorithmControl" type:"string" enum:"AudioNormalizationAlgorithmControl"` 2735 2736 // Content measuring above this level will be corrected to the target level. 2737 // Content measuring below this level will not be corrected. Gating only applies 2738 // when not using real_time_correction. 2739 CorrectionGateLevel *int64 `locationName:"correctionGateLevel" type:"integer"` 2740 2741 // If set to LOG, log each output's audio track loudness to a CSV file. 2742 LoudnessLogging *string `locationName:"loudnessLogging" type:"string" enum:"AudioNormalizationLoudnessLogging"` 2743 2744 // If set to TRUE_PEAK, calculate and log the TruePeak for each output's audio 2745 // track loudness. 2746 PeakCalculation *string `locationName:"peakCalculation" type:"string" enum:"AudioNormalizationPeakCalculation"` 2747 2748 // Target LKFS(loudness) to adjust volume to. If no value is entered, a default 2749 // value will be used according to the chosen algorithm. The CALM Act (1770-1) 2750 // recommends a target of -24 LKFS. The EBU R-128 specification (1770-2) recommends 2751 // a target of -23 LKFS. 2752 TargetLkfs *float64 `locationName:"targetLkfs" type:"double"` 2753} 2754 2755// String returns the string representation 2756func (s AudioNormalizationSettings) String() string { 2757 return awsutil.Prettify(s) 2758} 2759 2760// GoString returns the string representation 2761func (s AudioNormalizationSettings) GoString() string { 2762 return s.String() 2763} 2764 2765// Validate inspects the fields of the type to determine if they are valid. 2766func (s *AudioNormalizationSettings) Validate() error { 2767 invalidParams := request.ErrInvalidParams{Context: "AudioNormalizationSettings"} 2768 if s.CorrectionGateLevel != nil && *s.CorrectionGateLevel < -70 { 2769 invalidParams.Add(request.NewErrParamMinValue("CorrectionGateLevel", -70)) 2770 } 2771 2772 if invalidParams.Len() > 0 { 2773 return invalidParams 2774 } 2775 return nil 2776} 2777 2778// SetAlgorithm sets the Algorithm field's value. 2779func (s *AudioNormalizationSettings) SetAlgorithm(v string) *AudioNormalizationSettings { 2780 s.Algorithm = &v 2781 return s 2782} 2783 2784// SetAlgorithmControl sets the AlgorithmControl field's value. 2785func (s *AudioNormalizationSettings) SetAlgorithmControl(v string) *AudioNormalizationSettings { 2786 s.AlgorithmControl = &v 2787 return s 2788} 2789 2790// SetCorrectionGateLevel sets the CorrectionGateLevel field's value. 2791func (s *AudioNormalizationSettings) SetCorrectionGateLevel(v int64) *AudioNormalizationSettings { 2792 s.CorrectionGateLevel = &v 2793 return s 2794} 2795 2796// SetLoudnessLogging sets the LoudnessLogging field's value. 2797func (s *AudioNormalizationSettings) SetLoudnessLogging(v string) *AudioNormalizationSettings { 2798 s.LoudnessLogging = &v 2799 return s 2800} 2801 2802// SetPeakCalculation sets the PeakCalculation field's value. 2803func (s *AudioNormalizationSettings) SetPeakCalculation(v string) *AudioNormalizationSettings { 2804 s.PeakCalculation = &v 2805 return s 2806} 2807 2808// SetTargetLkfs sets the TargetLkfs field's value. 2809func (s *AudioNormalizationSettings) SetTargetLkfs(v float64) *AudioNormalizationSettings { 2810 s.TargetLkfs = &v 2811 return s 2812} 2813 2814// Selector for Audio 2815type AudioSelector struct { 2816 _ struct{} `type:"structure"` 2817 2818 // Selects a specific language code from within an audio source, using the ISO 2819 // 639-2 or ISO 639-3 three-letter language code 2820 CustomLanguageCode *string `locationName:"customLanguageCode" min:"3" type:"string"` 2821 2822 // Enable this setting on one audio selector to set it as the default for the 2823 // job. The service uses this default for outputs where it can't find the specified 2824 // input audio. If you don't set a default, those outputs have no audio. 2825 DefaultSelection *string `locationName:"defaultSelection" type:"string" enum:"AudioDefaultSelection"` 2826 2827 // Specifies audio data from an external file source. 2828 ExternalAudioFileInput *string `locationName:"externalAudioFileInput" type:"string"` 2829 2830 // Selects a specific language code from within an audio source. 2831 LanguageCode *string `locationName:"languageCode" type:"string" enum:"LanguageCode"` 2832 2833 // Specifies a time delta in milliseconds to offset the audio from the input 2834 // video. 2835 Offset *int64 `locationName:"offset" type:"integer"` 2836 2837 // Selects a specific PID from within an audio source (e.g. 257 selects PID 2838 // 0x101). 2839 Pids []*int64 `locationName:"pids" type:"list"` 2840 2841 // Use this setting for input streams that contain Dolby E, to have the service 2842 // extract specific program data from the track. To select multiple programs, 2843 // create multiple selectors with the same Track and different Program numbers. 2844 // In the console, this setting is visible when you set Selector type to Track. 2845 // Choose the program number from the dropdown list. If you are sending a JSON 2846 // file, provide the program ID, which is part of the audio metadata. If your 2847 // input file has incorrect metadata, you can choose All channels instead of 2848 // a program number to have the service ignore the program IDs and include all 2849 // the programs in the track. 2850 ProgramSelection *int64 `locationName:"programSelection" type:"integer"` 2851 2852 // Use these settings to reorder the audio channels of one input to match those 2853 // of another input. This allows you to combine the two files into a single 2854 // output, one after the other. 2855 RemixSettings *RemixSettings `locationName:"remixSettings" type:"structure"` 2856 2857 // Specifies the type of the audio selector. 2858 SelectorType *string `locationName:"selectorType" type:"string" enum:"AudioSelectorType"` 2859 2860 // Identify a track from the input audio to include in this selector by entering 2861 // the track index number. To include several tracks in a single audio selector, 2862 // specify multiple tracks as follows. Using the console, enter a comma-separated 2863 // list. For examle, type "1,2,3" to include tracks 1 through 3. Specifying 2864 // directly in your JSON job file, provide the track numbers in an array. For 2865 // example, "tracks": [1,2,3]. 2866 Tracks []*int64 `locationName:"tracks" type:"list"` 2867} 2868 2869// String returns the string representation 2870func (s AudioSelector) String() string { 2871 return awsutil.Prettify(s) 2872} 2873 2874// GoString returns the string representation 2875func (s AudioSelector) GoString() string { 2876 return s.String() 2877} 2878 2879// Validate inspects the fields of the type to determine if they are valid. 2880func (s *AudioSelector) Validate() error { 2881 invalidParams := request.ErrInvalidParams{Context: "AudioSelector"} 2882 if s.CustomLanguageCode != nil && len(*s.CustomLanguageCode) < 3 { 2883 invalidParams.Add(request.NewErrParamMinLen("CustomLanguageCode", 3)) 2884 } 2885 if s.Offset != nil && *s.Offset < -2.147483648e+09 { 2886 invalidParams.Add(request.NewErrParamMinValue("Offset", -2.147483648e+09)) 2887 } 2888 if s.RemixSettings != nil { 2889 if err := s.RemixSettings.Validate(); err != nil { 2890 invalidParams.AddNested("RemixSettings", err.(request.ErrInvalidParams)) 2891 } 2892 } 2893 2894 if invalidParams.Len() > 0 { 2895 return invalidParams 2896 } 2897 return nil 2898} 2899 2900// SetCustomLanguageCode sets the CustomLanguageCode field's value. 2901func (s *AudioSelector) SetCustomLanguageCode(v string) *AudioSelector { 2902 s.CustomLanguageCode = &v 2903 return s 2904} 2905 2906// SetDefaultSelection sets the DefaultSelection field's value. 2907func (s *AudioSelector) SetDefaultSelection(v string) *AudioSelector { 2908 s.DefaultSelection = &v 2909 return s 2910} 2911 2912// SetExternalAudioFileInput sets the ExternalAudioFileInput field's value. 2913func (s *AudioSelector) SetExternalAudioFileInput(v string) *AudioSelector { 2914 s.ExternalAudioFileInput = &v 2915 return s 2916} 2917 2918// SetLanguageCode sets the LanguageCode field's value. 2919func (s *AudioSelector) SetLanguageCode(v string) *AudioSelector { 2920 s.LanguageCode = &v 2921 return s 2922} 2923 2924// SetOffset sets the Offset field's value. 2925func (s *AudioSelector) SetOffset(v int64) *AudioSelector { 2926 s.Offset = &v 2927 return s 2928} 2929 2930// SetPids sets the Pids field's value. 2931func (s *AudioSelector) SetPids(v []*int64) *AudioSelector { 2932 s.Pids = v 2933 return s 2934} 2935 2936// SetProgramSelection sets the ProgramSelection field's value. 2937func (s *AudioSelector) SetProgramSelection(v int64) *AudioSelector { 2938 s.ProgramSelection = &v 2939 return s 2940} 2941 2942// SetRemixSettings sets the RemixSettings field's value. 2943func (s *AudioSelector) SetRemixSettings(v *RemixSettings) *AudioSelector { 2944 s.RemixSettings = v 2945 return s 2946} 2947 2948// SetSelectorType sets the SelectorType field's value. 2949func (s *AudioSelector) SetSelectorType(v string) *AudioSelector { 2950 s.SelectorType = &v 2951 return s 2952} 2953 2954// SetTracks sets the Tracks field's value. 2955func (s *AudioSelector) SetTracks(v []*int64) *AudioSelector { 2956 s.Tracks = v 2957 return s 2958} 2959 2960// Group of Audio Selectors 2961type AudioSelectorGroup struct { 2962 _ struct{} `type:"structure"` 2963 2964 // Name of an Audio Selector within the same input to include in the group. 2965 // Audio selector names are standardized, based on their order within the input 2966 // (e.g., "Audio Selector 1"). The audio selector name parameter can be repeated 2967 // to add any number of audio selectors to the group. 2968 // 2969 // AudioSelectorNames is a required field 2970 AudioSelectorNames []*string `locationName:"audioSelectorNames" type:"list" required:"true"` 2971} 2972 2973// String returns the string representation 2974func (s AudioSelectorGroup) String() string { 2975 return awsutil.Prettify(s) 2976} 2977 2978// GoString returns the string representation 2979func (s AudioSelectorGroup) GoString() string { 2980 return s.String() 2981} 2982 2983// Validate inspects the fields of the type to determine if they are valid. 2984func (s *AudioSelectorGroup) Validate() error { 2985 invalidParams := request.ErrInvalidParams{Context: "AudioSelectorGroup"} 2986 if s.AudioSelectorNames == nil { 2987 invalidParams.Add(request.NewErrParamRequired("AudioSelectorNames")) 2988 } 2989 2990 if invalidParams.Len() > 0 { 2991 return invalidParams 2992 } 2993 return nil 2994} 2995 2996// SetAudioSelectorNames sets the AudioSelectorNames field's value. 2997func (s *AudioSelectorGroup) SetAudioSelectorNames(v []*string) *AudioSelectorGroup { 2998 s.AudioSelectorNames = v 2999 return s 3000} 3001 3002// Settings for Avail Blanking 3003type AvailBlanking struct { 3004 _ struct{} `type:"structure"` 3005 3006 // Blanking image to be used. Leave empty for solid black. Only bmp and png 3007 // images are supported. 3008 AvailBlankingImage *string `locationName:"availBlankingImage" min:"14" type:"string"` 3009} 3010 3011// String returns the string representation 3012func (s AvailBlanking) String() string { 3013 return awsutil.Prettify(s) 3014} 3015 3016// GoString returns the string representation 3017func (s AvailBlanking) GoString() string { 3018 return s.String() 3019} 3020 3021// Validate inspects the fields of the type to determine if they are valid. 3022func (s *AvailBlanking) Validate() error { 3023 invalidParams := request.ErrInvalidParams{Context: "AvailBlanking"} 3024 if s.AvailBlankingImage != nil && len(*s.AvailBlankingImage) < 14 { 3025 invalidParams.Add(request.NewErrParamMinLen("AvailBlankingImage", 14)) 3026 } 3027 3028 if invalidParams.Len() > 0 { 3029 return invalidParams 3030 } 3031 return nil 3032} 3033 3034// SetAvailBlankingImage sets the AvailBlankingImage field's value. 3035func (s *AvailBlanking) SetAvailBlankingImage(v string) *AvailBlanking { 3036 s.AvailBlankingImage = &v 3037 return s 3038} 3039 3040// Burn-In Destination Settings. 3041type BurninDestinationSettings struct { 3042 _ struct{} `type:"structure"` 3043 3044 // If no explicit x_position or y_position is provided, setting alignment to 3045 // centered will place the captions at the bottom center of the output. Similarly, 3046 // setting a left alignment will align captions to the bottom left of the output. 3047 // If x and y positions are given in conjunction with the alignment parameter, 3048 // the font will be justified (either left or centered) relative to those coordinates. 3049 // This option is not valid for source captions that are STL, 608/embedded or 3050 // teletext. These source settings are already pre-defined by the caption stream. 3051 // All burn-in and DVB-Sub font settings must match. 3052 // 3053 // Alignment is a required field 3054 Alignment *string `locationName:"alignment" type:"string" required:"true" enum:"BurninSubtitleAlignment"` 3055 3056 // Specifies the color of the rectangle behind the captions.All burn-in and 3057 // DVB-Sub font settings must match. 3058 BackgroundColor *string `locationName:"backgroundColor" type:"string" enum:"BurninSubtitleBackgroundColor"` 3059 3060 // Specifies the opacity of the background rectangle. 255 is opaque; 0 is transparent. 3061 // Leaving this parameter blank is equivalent to setting it to 0 (transparent). 3062 // All burn-in and DVB-Sub font settings must match. 3063 BackgroundOpacity *int64 `locationName:"backgroundOpacity" type:"integer"` 3064 3065 // Specifies the color of the burned-in captions. This option is not valid for 3066 // source captions that are STL, 608/embedded or teletext. These source settings 3067 // are already pre-defined by the caption stream. All burn-in and DVB-Sub font 3068 // settings must match. 3069 FontColor *string `locationName:"fontColor" type:"string" enum:"BurninSubtitleFontColor"` 3070 3071 // Specifies the opacity of the burned-in captions. 255 is opaque; 0 is transparent.All 3072 // burn-in and DVB-Sub font settings must match. 3073 // 3074 // FontOpacity is a required field 3075 FontOpacity *int64 `locationName:"fontOpacity" type:"integer" required:"true"` 3076 3077 // Font resolution in DPI (dots per inch); default is 96 dpi.All burn-in and 3078 // DVB-Sub font settings must match. 3079 FontResolution *int64 `locationName:"fontResolution" min:"96" type:"integer"` 3080 3081 // A positive integer indicates the exact font size in points. Set to 0 for 3082 // automatic font size selection. All burn-in and DVB-Sub font settings must 3083 // match. 3084 FontSize *int64 `locationName:"fontSize" type:"integer"` 3085 3086 // Specifies font outline color. This option is not valid for source captions 3087 // that are either 608/embedded or teletext. These source settings are already 3088 // pre-defined by the caption stream. All burn-in and DVB-Sub font settings 3089 // must match. 3090 // 3091 // OutlineColor is a required field 3092 OutlineColor *string `locationName:"outlineColor" type:"string" required:"true" enum:"BurninSubtitleOutlineColor"` 3093 3094 // Specifies font outline size in pixels. This option is not valid for source 3095 // captions that are either 608/embedded or teletext. These source settings 3096 // are already pre-defined by the caption stream. All burn-in and DVB-Sub font 3097 // settings must match. 3098 // 3099 // OutlineSize is a required field 3100 OutlineSize *int64 `locationName:"outlineSize" type:"integer" required:"true"` 3101 3102 // Specifies the color of the shadow cast by the captions.All burn-in and DVB-Sub 3103 // font settings must match. 3104 ShadowColor *string `locationName:"shadowColor" type:"string" enum:"BurninSubtitleShadowColor"` 3105 3106 // Specifies the opacity of the shadow. 255 is opaque; 0 is transparent. Leaving 3107 // this parameter blank is equivalent to setting it to 0 (transparent). All 3108 // burn-in and DVB-Sub font settings must match. 3109 ShadowOpacity *int64 `locationName:"shadowOpacity" type:"integer"` 3110 3111 // Specifies the horizontal offset of the shadow relative to the captions in 3112 // pixels. A value of -2 would result in a shadow offset 2 pixels to the left. 3113 // All burn-in and DVB-Sub font settings must match. 3114 ShadowXOffset *int64 `locationName:"shadowXOffset" type:"integer"` 3115 3116 // Specifies the vertical offset of the shadow relative to the captions in pixels. 3117 // A value of -2 would result in a shadow offset 2 pixels above the text. All 3118 // burn-in and DVB-Sub font settings must match. 3119 ShadowYOffset *int64 `locationName:"shadowYOffset" type:"integer"` 3120 3121 // Only applies to jobs with input captions in Teletext or STL formats. Specify 3122 // whether the spacing between letters in your captions is set by the captions 3123 // grid or varies depending on letter width. Choose fixed grid to conform to 3124 // the spacing specified in the captions file more accurately. Choose proportional 3125 // to make the text easier to read if the captions are closed caption. 3126 TeletextSpacing *string `locationName:"teletextSpacing" type:"string" enum:"BurninSubtitleTeletextSpacing"` 3127 3128 // Specifies the horizontal position of the caption relative to the left side 3129 // of the output in pixels. A value of 10 would result in the captions starting 3130 // 10 pixels from the left of the output. If no explicit x_position is provided, 3131 // the horizontal caption position will be determined by the alignment parameter. 3132 // This option is not valid for source captions that are STL, 608/embedded or 3133 // teletext. These source settings are already pre-defined by the caption stream. 3134 // All burn-in and DVB-Sub font settings must match. 3135 XPosition *int64 `locationName:"xPosition" type:"integer"` 3136 3137 // Specifies the vertical position of the caption relative to the top of the 3138 // output in pixels. A value of 10 would result in the captions starting 10 3139 // pixels from the top of the output. If no explicit y_position is provided, 3140 // the caption will be positioned towards the bottom of the output. This option 3141 // is not valid for source captions that are STL, 608/embedded or teletext. 3142 // These source settings are already pre-defined by the caption stream. All 3143 // burn-in and DVB-Sub font settings must match. 3144 YPosition *int64 `locationName:"yPosition" type:"integer"` 3145} 3146 3147// String returns the string representation 3148func (s BurninDestinationSettings) String() string { 3149 return awsutil.Prettify(s) 3150} 3151 3152// GoString returns the string representation 3153func (s BurninDestinationSettings) GoString() string { 3154 return s.String() 3155} 3156 3157// Validate inspects the fields of the type to determine if they are valid. 3158func (s *BurninDestinationSettings) Validate() error { 3159 invalidParams := request.ErrInvalidParams{Context: "BurninDestinationSettings"} 3160 if s.Alignment == nil { 3161 invalidParams.Add(request.NewErrParamRequired("Alignment")) 3162 } 3163 if s.FontOpacity == nil { 3164 invalidParams.Add(request.NewErrParamRequired("FontOpacity")) 3165 } 3166 if s.FontResolution != nil && *s.FontResolution < 96 { 3167 invalidParams.Add(request.NewErrParamMinValue("FontResolution", 96)) 3168 } 3169 if s.OutlineColor == nil { 3170 invalidParams.Add(request.NewErrParamRequired("OutlineColor")) 3171 } 3172 if s.OutlineSize == nil { 3173 invalidParams.Add(request.NewErrParamRequired("OutlineSize")) 3174 } 3175 if s.ShadowXOffset != nil && *s.ShadowXOffset < -2.147483648e+09 { 3176 invalidParams.Add(request.NewErrParamMinValue("ShadowXOffset", -2.147483648e+09)) 3177 } 3178 if s.ShadowYOffset != nil && *s.ShadowYOffset < -2.147483648e+09 { 3179 invalidParams.Add(request.NewErrParamMinValue("ShadowYOffset", -2.147483648e+09)) 3180 } 3181 3182 if invalidParams.Len() > 0 { 3183 return invalidParams 3184 } 3185 return nil 3186} 3187 3188// SetAlignment sets the Alignment field's value. 3189func (s *BurninDestinationSettings) SetAlignment(v string) *BurninDestinationSettings { 3190 s.Alignment = &v 3191 return s 3192} 3193 3194// SetBackgroundColor sets the BackgroundColor field's value. 3195func (s *BurninDestinationSettings) SetBackgroundColor(v string) *BurninDestinationSettings { 3196 s.BackgroundColor = &v 3197 return s 3198} 3199 3200// SetBackgroundOpacity sets the BackgroundOpacity field's value. 3201func (s *BurninDestinationSettings) SetBackgroundOpacity(v int64) *BurninDestinationSettings { 3202 s.BackgroundOpacity = &v 3203 return s 3204} 3205 3206// SetFontColor sets the FontColor field's value. 3207func (s *BurninDestinationSettings) SetFontColor(v string) *BurninDestinationSettings { 3208 s.FontColor = &v 3209 return s 3210} 3211 3212// SetFontOpacity sets the FontOpacity field's value. 3213func (s *BurninDestinationSettings) SetFontOpacity(v int64) *BurninDestinationSettings { 3214 s.FontOpacity = &v 3215 return s 3216} 3217 3218// SetFontResolution sets the FontResolution field's value. 3219func (s *BurninDestinationSettings) SetFontResolution(v int64) *BurninDestinationSettings { 3220 s.FontResolution = &v 3221 return s 3222} 3223 3224// SetFontSize sets the FontSize field's value. 3225func (s *BurninDestinationSettings) SetFontSize(v int64) *BurninDestinationSettings { 3226 s.FontSize = &v 3227 return s 3228} 3229 3230// SetOutlineColor sets the OutlineColor field's value. 3231func (s *BurninDestinationSettings) SetOutlineColor(v string) *BurninDestinationSettings { 3232 s.OutlineColor = &v 3233 return s 3234} 3235 3236// SetOutlineSize sets the OutlineSize field's value. 3237func (s *BurninDestinationSettings) SetOutlineSize(v int64) *BurninDestinationSettings { 3238 s.OutlineSize = &v 3239 return s 3240} 3241 3242// SetShadowColor sets the ShadowColor field's value. 3243func (s *BurninDestinationSettings) SetShadowColor(v string) *BurninDestinationSettings { 3244 s.ShadowColor = &v 3245 return s 3246} 3247 3248// SetShadowOpacity sets the ShadowOpacity field's value. 3249func (s *BurninDestinationSettings) SetShadowOpacity(v int64) *BurninDestinationSettings { 3250 s.ShadowOpacity = &v 3251 return s 3252} 3253 3254// SetShadowXOffset sets the ShadowXOffset field's value. 3255func (s *BurninDestinationSettings) SetShadowXOffset(v int64) *BurninDestinationSettings { 3256 s.ShadowXOffset = &v 3257 return s 3258} 3259 3260// SetShadowYOffset sets the ShadowYOffset field's value. 3261func (s *BurninDestinationSettings) SetShadowYOffset(v int64) *BurninDestinationSettings { 3262 s.ShadowYOffset = &v 3263 return s 3264} 3265 3266// SetTeletextSpacing sets the TeletextSpacing field's value. 3267func (s *BurninDestinationSettings) SetTeletextSpacing(v string) *BurninDestinationSettings { 3268 s.TeletextSpacing = &v 3269 return s 3270} 3271 3272// SetXPosition sets the XPosition field's value. 3273func (s *BurninDestinationSettings) SetXPosition(v int64) *BurninDestinationSettings { 3274 s.XPosition = &v 3275 return s 3276} 3277 3278// SetYPosition sets the YPosition field's value. 3279func (s *BurninDestinationSettings) SetYPosition(v int64) *BurninDestinationSettings { 3280 s.YPosition = &v 3281 return s 3282} 3283 3284// Cancel a job by sending a request with the job ID 3285type CancelJobInput struct { 3286 _ struct{} `type:"structure"` 3287 3288 // The Job ID of the job to be cancelled. 3289 // 3290 // Id is a required field 3291 Id *string `location:"uri" locationName:"id" type:"string" required:"true"` 3292} 3293 3294// String returns the string representation 3295func (s CancelJobInput) String() string { 3296 return awsutil.Prettify(s) 3297} 3298 3299// GoString returns the string representation 3300func (s CancelJobInput) GoString() string { 3301 return s.String() 3302} 3303 3304// Validate inspects the fields of the type to determine if they are valid. 3305func (s *CancelJobInput) Validate() error { 3306 invalidParams := request.ErrInvalidParams{Context: "CancelJobInput"} 3307 if s.Id == nil { 3308 invalidParams.Add(request.NewErrParamRequired("Id")) 3309 } 3310 3311 if invalidParams.Len() > 0 { 3312 return invalidParams 3313 } 3314 return nil 3315} 3316 3317// SetId sets the Id field's value. 3318func (s *CancelJobInput) SetId(v string) *CancelJobInput { 3319 s.Id = &v 3320 return s 3321} 3322 3323// A cancel job request will receive a response with an empty body. 3324type CancelJobOutput struct { 3325 _ struct{} `type:"structure"` 3326} 3327 3328// String returns the string representation 3329func (s CancelJobOutput) String() string { 3330 return awsutil.Prettify(s) 3331} 3332 3333// GoString returns the string representation 3334func (s CancelJobOutput) GoString() string { 3335 return s.String() 3336} 3337 3338// Description of Caption output 3339type CaptionDescription struct { 3340 _ struct{} `type:"structure"` 3341 3342 // Specifies which "Caption Selector":#inputs-caption_selector to use from each 3343 // input when generating captions. The name should be of the format "Caption 3344 // Selector ", which denotes that the Nth Caption Selector will be used from 3345 // each input. 3346 // 3347 // CaptionSelectorName is a required field 3348 CaptionSelectorName *string `locationName:"captionSelectorName" min:"1" type:"string" required:"true"` 3349 3350 // Indicates the language of the caption output track, using the ISO 639-2 or 3351 // ISO 639-3 three-letter language code 3352 CustomLanguageCode *string `locationName:"customLanguageCode" min:"3" type:"string"` 3353 3354 // Specific settings required by destination type. Note that burnin_destination_settings 3355 // are not available if the source of the caption data is Embedded or Teletext. 3356 // 3357 // DestinationSettings is a required field 3358 DestinationSettings *CaptionDestinationSettings `locationName:"destinationSettings" type:"structure" required:"true"` 3359 3360 // Indicates the language of the caption output track. 3361 LanguageCode *string `locationName:"languageCode" type:"string" enum:"LanguageCode"` 3362 3363 // Human readable information to indicate captions available for players (eg. 3364 // English, or Spanish). Alphanumeric characters, spaces, and underscore are 3365 // legal. 3366 LanguageDescription *string `locationName:"languageDescription" type:"string"` 3367} 3368 3369// String returns the string representation 3370func (s CaptionDescription) String() string { 3371 return awsutil.Prettify(s) 3372} 3373 3374// GoString returns the string representation 3375func (s CaptionDescription) GoString() string { 3376 return s.String() 3377} 3378 3379// Validate inspects the fields of the type to determine if they are valid. 3380func (s *CaptionDescription) Validate() error { 3381 invalidParams := request.ErrInvalidParams{Context: "CaptionDescription"} 3382 if s.CaptionSelectorName == nil { 3383 invalidParams.Add(request.NewErrParamRequired("CaptionSelectorName")) 3384 } 3385 if s.CaptionSelectorName != nil && len(*s.CaptionSelectorName) < 1 { 3386 invalidParams.Add(request.NewErrParamMinLen("CaptionSelectorName", 1)) 3387 } 3388 if s.CustomLanguageCode != nil && len(*s.CustomLanguageCode) < 3 { 3389 invalidParams.Add(request.NewErrParamMinLen("CustomLanguageCode", 3)) 3390 } 3391 if s.DestinationSettings == nil { 3392 invalidParams.Add(request.NewErrParamRequired("DestinationSettings")) 3393 } 3394 if s.DestinationSettings != nil { 3395 if err := s.DestinationSettings.Validate(); err != nil { 3396 invalidParams.AddNested("DestinationSettings", err.(request.ErrInvalidParams)) 3397 } 3398 } 3399 3400 if invalidParams.Len() > 0 { 3401 return invalidParams 3402 } 3403 return nil 3404} 3405 3406// SetCaptionSelectorName sets the CaptionSelectorName field's value. 3407func (s *CaptionDescription) SetCaptionSelectorName(v string) *CaptionDescription { 3408 s.CaptionSelectorName = &v 3409 return s 3410} 3411 3412// SetCustomLanguageCode sets the CustomLanguageCode field's value. 3413func (s *CaptionDescription) SetCustomLanguageCode(v string) *CaptionDescription { 3414 s.CustomLanguageCode = &v 3415 return s 3416} 3417 3418// SetDestinationSettings sets the DestinationSettings field's value. 3419func (s *CaptionDescription) SetDestinationSettings(v *CaptionDestinationSettings) *CaptionDescription { 3420 s.DestinationSettings = v 3421 return s 3422} 3423 3424// SetLanguageCode sets the LanguageCode field's value. 3425func (s *CaptionDescription) SetLanguageCode(v string) *CaptionDescription { 3426 s.LanguageCode = &v 3427 return s 3428} 3429 3430// SetLanguageDescription sets the LanguageDescription field's value. 3431func (s *CaptionDescription) SetLanguageDescription(v string) *CaptionDescription { 3432 s.LanguageDescription = &v 3433 return s 3434} 3435 3436// Caption Description for preset 3437type CaptionDescriptionPreset struct { 3438 _ struct{} `type:"structure"` 3439 3440 // Indicates the language of the caption output track, using the ISO 639-2 or 3441 // ISO 639-3 three-letter language code 3442 CustomLanguageCode *string `locationName:"customLanguageCode" min:"3" type:"string"` 3443 3444 // Specific settings required by destination type. Note that burnin_destination_settings 3445 // are not available if the source of the caption data is Embedded or Teletext. 3446 // 3447 // DestinationSettings is a required field 3448 DestinationSettings *CaptionDestinationSettings `locationName:"destinationSettings" type:"structure" required:"true"` 3449 3450 // Indicates the language of the caption output track. 3451 LanguageCode *string `locationName:"languageCode" type:"string" enum:"LanguageCode"` 3452 3453 // Human readable information to indicate captions available for players (eg. 3454 // English, or Spanish). Alphanumeric characters, spaces, and underscore are 3455 // legal. 3456 LanguageDescription *string `locationName:"languageDescription" type:"string"` 3457} 3458 3459// String returns the string representation 3460func (s CaptionDescriptionPreset) String() string { 3461 return awsutil.Prettify(s) 3462} 3463 3464// GoString returns the string representation 3465func (s CaptionDescriptionPreset) GoString() string { 3466 return s.String() 3467} 3468 3469// Validate inspects the fields of the type to determine if they are valid. 3470func (s *CaptionDescriptionPreset) Validate() error { 3471 invalidParams := request.ErrInvalidParams{Context: "CaptionDescriptionPreset"} 3472 if s.CustomLanguageCode != nil && len(*s.CustomLanguageCode) < 3 { 3473 invalidParams.Add(request.NewErrParamMinLen("CustomLanguageCode", 3)) 3474 } 3475 if s.DestinationSettings == nil { 3476 invalidParams.Add(request.NewErrParamRequired("DestinationSettings")) 3477 } 3478 if s.DestinationSettings != nil { 3479 if err := s.DestinationSettings.Validate(); err != nil { 3480 invalidParams.AddNested("DestinationSettings", err.(request.ErrInvalidParams)) 3481 } 3482 } 3483 3484 if invalidParams.Len() > 0 { 3485 return invalidParams 3486 } 3487 return nil 3488} 3489 3490// SetCustomLanguageCode sets the CustomLanguageCode field's value. 3491func (s *CaptionDescriptionPreset) SetCustomLanguageCode(v string) *CaptionDescriptionPreset { 3492 s.CustomLanguageCode = &v 3493 return s 3494} 3495 3496// SetDestinationSettings sets the DestinationSettings field's value. 3497func (s *CaptionDescriptionPreset) SetDestinationSettings(v *CaptionDestinationSettings) *CaptionDescriptionPreset { 3498 s.DestinationSettings = v 3499 return s 3500} 3501 3502// SetLanguageCode sets the LanguageCode field's value. 3503func (s *CaptionDescriptionPreset) SetLanguageCode(v string) *CaptionDescriptionPreset { 3504 s.LanguageCode = &v 3505 return s 3506} 3507 3508// SetLanguageDescription sets the LanguageDescription field's value. 3509func (s *CaptionDescriptionPreset) SetLanguageDescription(v string) *CaptionDescriptionPreset { 3510 s.LanguageDescription = &v 3511 return s 3512} 3513 3514// Specific settings required by destination type. Note that burnin_destination_settings 3515// are not available if the source of the caption data is Embedded or Teletext. 3516type CaptionDestinationSettings struct { 3517 _ struct{} `type:"structure"` 3518 3519 // Burn-In Destination Settings. 3520 BurninDestinationSettings *BurninDestinationSettings `locationName:"burninDestinationSettings" type:"structure"` 3521 3522 // Type of Caption output, including Burn-In, Embedded, SCC, SRT, TTML, WebVTT, 3523 // DVB-Sub, Teletext. 3524 // 3525 // DestinationType is a required field 3526 DestinationType *string `locationName:"destinationType" type:"string" required:"true" enum:"CaptionDestinationType"` 3527 3528 // DVB-Sub Destination Settings 3529 DvbSubDestinationSettings *DvbSubDestinationSettings `locationName:"dvbSubDestinationSettings" type:"structure"` 3530 3531 // Settings for SCC caption output. 3532 SccDestinationSettings *SccDestinationSettings `locationName:"sccDestinationSettings" type:"structure"` 3533 3534 // Settings for Teletext caption output 3535 TeletextDestinationSettings *TeletextDestinationSettings `locationName:"teletextDestinationSettings" type:"structure"` 3536 3537 // Settings specific to TTML caption outputs, including Pass style information 3538 // (TtmlStylePassthrough). 3539 TtmlDestinationSettings *TtmlDestinationSettings `locationName:"ttmlDestinationSettings" type:"structure"` 3540} 3541 3542// String returns the string representation 3543func (s CaptionDestinationSettings) String() string { 3544 return awsutil.Prettify(s) 3545} 3546 3547// GoString returns the string representation 3548func (s CaptionDestinationSettings) GoString() string { 3549 return s.String() 3550} 3551 3552// Validate inspects the fields of the type to determine if they are valid. 3553func (s *CaptionDestinationSettings) Validate() error { 3554 invalidParams := request.ErrInvalidParams{Context: "CaptionDestinationSettings"} 3555 if s.DestinationType == nil { 3556 invalidParams.Add(request.NewErrParamRequired("DestinationType")) 3557 } 3558 if s.BurninDestinationSettings != nil { 3559 if err := s.BurninDestinationSettings.Validate(); err != nil { 3560 invalidParams.AddNested("BurninDestinationSettings", err.(request.ErrInvalidParams)) 3561 } 3562 } 3563 if s.DvbSubDestinationSettings != nil { 3564 if err := s.DvbSubDestinationSettings.Validate(); err != nil { 3565 invalidParams.AddNested("DvbSubDestinationSettings", err.(request.ErrInvalidParams)) 3566 } 3567 } 3568 if s.TeletextDestinationSettings != nil { 3569 if err := s.TeletextDestinationSettings.Validate(); err != nil { 3570 invalidParams.AddNested("TeletextDestinationSettings", err.(request.ErrInvalidParams)) 3571 } 3572 } 3573 3574 if invalidParams.Len() > 0 { 3575 return invalidParams 3576 } 3577 return nil 3578} 3579 3580// SetBurninDestinationSettings sets the BurninDestinationSettings field's value. 3581func (s *CaptionDestinationSettings) SetBurninDestinationSettings(v *BurninDestinationSettings) *CaptionDestinationSettings { 3582 s.BurninDestinationSettings = v 3583 return s 3584} 3585 3586// SetDestinationType sets the DestinationType field's value. 3587func (s *CaptionDestinationSettings) SetDestinationType(v string) *CaptionDestinationSettings { 3588 s.DestinationType = &v 3589 return s 3590} 3591 3592// SetDvbSubDestinationSettings sets the DvbSubDestinationSettings field's value. 3593func (s *CaptionDestinationSettings) SetDvbSubDestinationSettings(v *DvbSubDestinationSettings) *CaptionDestinationSettings { 3594 s.DvbSubDestinationSettings = v 3595 return s 3596} 3597 3598// SetSccDestinationSettings sets the SccDestinationSettings field's value. 3599func (s *CaptionDestinationSettings) SetSccDestinationSettings(v *SccDestinationSettings) *CaptionDestinationSettings { 3600 s.SccDestinationSettings = v 3601 return s 3602} 3603 3604// SetTeletextDestinationSettings sets the TeletextDestinationSettings field's value. 3605func (s *CaptionDestinationSettings) SetTeletextDestinationSettings(v *TeletextDestinationSettings) *CaptionDestinationSettings { 3606 s.TeletextDestinationSettings = v 3607 return s 3608} 3609 3610// SetTtmlDestinationSettings sets the TtmlDestinationSettings field's value. 3611func (s *CaptionDestinationSettings) SetTtmlDestinationSettings(v *TtmlDestinationSettings) *CaptionDestinationSettings { 3612 s.TtmlDestinationSettings = v 3613 return s 3614} 3615 3616// Set up captions in your outputs by first selecting them from your input here. 3617type CaptionSelector struct { 3618 _ struct{} `type:"structure"` 3619 3620 // The specific language to extract from source, using the ISO 639-2 or ISO 3621 // 639-3 three-letter language code. If input is SCTE-27, complete this field 3622 // and/or PID to select the caption language to extract. If input is DVB-Sub 3623 // and output is Burn-in or SMPTE-TT, complete this field and/or PID to select 3624 // the caption language to extract. If input is DVB-Sub that is being passed 3625 // through, omit this field (and PID field); there is no way to extract a specific 3626 // language with pass-through captions. 3627 CustomLanguageCode *string `locationName:"customLanguageCode" min:"3" type:"string"` 3628 3629 // The specific language to extract from source. If input is SCTE-27, complete 3630 // this field and/or PID to select the caption language to extract. If input 3631 // is DVB-Sub and output is Burn-in or SMPTE-TT, complete this field and/or 3632 // PID to select the caption language to extract. If input is DVB-Sub that is 3633 // being passed through, omit this field (and PID field); there is no way to 3634 // extract a specific language with pass-through captions. 3635 LanguageCode *string `locationName:"languageCode" type:"string" enum:"LanguageCode"` 3636 3637 // Source settings (SourceSettings) contains the group of settings for captions 3638 // in the input. 3639 // 3640 // SourceSettings is a required field 3641 SourceSettings *CaptionSourceSettings `locationName:"sourceSettings" type:"structure" required:"true"` 3642} 3643 3644// String returns the string representation 3645func (s CaptionSelector) String() string { 3646 return awsutil.Prettify(s) 3647} 3648 3649// GoString returns the string representation 3650func (s CaptionSelector) GoString() string { 3651 return s.String() 3652} 3653 3654// Validate inspects the fields of the type to determine if they are valid. 3655func (s *CaptionSelector) Validate() error { 3656 invalidParams := request.ErrInvalidParams{Context: "CaptionSelector"} 3657 if s.CustomLanguageCode != nil && len(*s.CustomLanguageCode) < 3 { 3658 invalidParams.Add(request.NewErrParamMinLen("CustomLanguageCode", 3)) 3659 } 3660 if s.SourceSettings == nil { 3661 invalidParams.Add(request.NewErrParamRequired("SourceSettings")) 3662 } 3663 if s.SourceSettings != nil { 3664 if err := s.SourceSettings.Validate(); err != nil { 3665 invalidParams.AddNested("SourceSettings", err.(request.ErrInvalidParams)) 3666 } 3667 } 3668 3669 if invalidParams.Len() > 0 { 3670 return invalidParams 3671 } 3672 return nil 3673} 3674 3675// SetCustomLanguageCode sets the CustomLanguageCode field's value. 3676func (s *CaptionSelector) SetCustomLanguageCode(v string) *CaptionSelector { 3677 s.CustomLanguageCode = &v 3678 return s 3679} 3680 3681// SetLanguageCode sets the LanguageCode field's value. 3682func (s *CaptionSelector) SetLanguageCode(v string) *CaptionSelector { 3683 s.LanguageCode = &v 3684 return s 3685} 3686 3687// SetSourceSettings sets the SourceSettings field's value. 3688func (s *CaptionSelector) SetSourceSettings(v *CaptionSourceSettings) *CaptionSelector { 3689 s.SourceSettings = v 3690 return s 3691} 3692 3693// Source settings (SourceSettings) contains the group of settings for captions 3694// in the input. 3695type CaptionSourceSettings struct { 3696 _ struct{} `type:"structure"` 3697 3698 // Settings for ancillary captions source. 3699 AncillarySourceSettings *AncillarySourceSettings `locationName:"ancillarySourceSettings" type:"structure"` 3700 3701 // DVB Sub Source Settings 3702 DvbSubSourceSettings *DvbSubSourceSettings `locationName:"dvbSubSourceSettings" type:"structure"` 3703 3704 // Settings for embedded captions Source 3705 EmbeddedSourceSettings *EmbeddedSourceSettings `locationName:"embeddedSourceSettings" type:"structure"` 3706 3707 // Settings for File-based Captions in Source 3708 FileSourceSettings *FileSourceSettings `locationName:"fileSourceSettings" type:"structure"` 3709 3710 // Use Source (SourceType) to identify the format of your input captions. The 3711 // service cannot auto-detect caption format. 3712 // 3713 // SourceType is a required field 3714 SourceType *string `locationName:"sourceType" type:"string" required:"true" enum:"CaptionSourceType"` 3715 3716 // Settings specific to Teletext caption sources, including Page number. 3717 TeletextSourceSettings *TeletextSourceSettings `locationName:"teletextSourceSettings" type:"structure"` 3718} 3719 3720// String returns the string representation 3721func (s CaptionSourceSettings) String() string { 3722 return awsutil.Prettify(s) 3723} 3724 3725// GoString returns the string representation 3726func (s CaptionSourceSettings) GoString() string { 3727 return s.String() 3728} 3729 3730// Validate inspects the fields of the type to determine if they are valid. 3731func (s *CaptionSourceSettings) Validate() error { 3732 invalidParams := request.ErrInvalidParams{Context: "CaptionSourceSettings"} 3733 if s.SourceType == nil { 3734 invalidParams.Add(request.NewErrParamRequired("SourceType")) 3735 } 3736 if s.AncillarySourceSettings != nil { 3737 if err := s.AncillarySourceSettings.Validate(); err != nil { 3738 invalidParams.AddNested("AncillarySourceSettings", err.(request.ErrInvalidParams)) 3739 } 3740 } 3741 if s.DvbSubSourceSettings != nil { 3742 if err := s.DvbSubSourceSettings.Validate(); err != nil { 3743 invalidParams.AddNested("DvbSubSourceSettings", err.(request.ErrInvalidParams)) 3744 } 3745 } 3746 if s.EmbeddedSourceSettings != nil { 3747 if err := s.EmbeddedSourceSettings.Validate(); err != nil { 3748 invalidParams.AddNested("EmbeddedSourceSettings", err.(request.ErrInvalidParams)) 3749 } 3750 } 3751 if s.FileSourceSettings != nil { 3752 if err := s.FileSourceSettings.Validate(); err != nil { 3753 invalidParams.AddNested("FileSourceSettings", err.(request.ErrInvalidParams)) 3754 } 3755 } 3756 if s.TeletextSourceSettings != nil { 3757 if err := s.TeletextSourceSettings.Validate(); err != nil { 3758 invalidParams.AddNested("TeletextSourceSettings", err.(request.ErrInvalidParams)) 3759 } 3760 } 3761 3762 if invalidParams.Len() > 0 { 3763 return invalidParams 3764 } 3765 return nil 3766} 3767 3768// SetAncillarySourceSettings sets the AncillarySourceSettings field's value. 3769func (s *CaptionSourceSettings) SetAncillarySourceSettings(v *AncillarySourceSettings) *CaptionSourceSettings { 3770 s.AncillarySourceSettings = v 3771 return s 3772} 3773 3774// SetDvbSubSourceSettings sets the DvbSubSourceSettings field's value. 3775func (s *CaptionSourceSettings) SetDvbSubSourceSettings(v *DvbSubSourceSettings) *CaptionSourceSettings { 3776 s.DvbSubSourceSettings = v 3777 return s 3778} 3779 3780// SetEmbeddedSourceSettings sets the EmbeddedSourceSettings field's value. 3781func (s *CaptionSourceSettings) SetEmbeddedSourceSettings(v *EmbeddedSourceSettings) *CaptionSourceSettings { 3782 s.EmbeddedSourceSettings = v 3783 return s 3784} 3785 3786// SetFileSourceSettings sets the FileSourceSettings field's value. 3787func (s *CaptionSourceSettings) SetFileSourceSettings(v *FileSourceSettings) *CaptionSourceSettings { 3788 s.FileSourceSettings = v 3789 return s 3790} 3791 3792// SetSourceType sets the SourceType field's value. 3793func (s *CaptionSourceSettings) SetSourceType(v string) *CaptionSourceSettings { 3794 s.SourceType = &v 3795 return s 3796} 3797 3798// SetTeletextSourceSettings sets the TeletextSourceSettings field's value. 3799func (s *CaptionSourceSettings) SetTeletextSourceSettings(v *TeletextSourceSettings) *CaptionSourceSettings { 3800 s.TeletextSourceSettings = v 3801 return s 3802} 3803 3804// Channel mapping (ChannelMapping) contains the group of fields that hold the 3805// remixing value for each channel. Units are in dB. Acceptable values are within 3806// the range from -60 (mute) through 6. A setting of 0 passes the input channel 3807// unchanged to the output channel (no attenuation or amplification). 3808type ChannelMapping struct { 3809 _ struct{} `type:"structure"` 3810 3811 // List of output channels 3812 // 3813 // OutputChannels is a required field 3814 OutputChannels []*OutputChannelMapping `locationName:"outputChannels" type:"list" required:"true"` 3815} 3816 3817// String returns the string representation 3818func (s ChannelMapping) String() string { 3819 return awsutil.Prettify(s) 3820} 3821 3822// GoString returns the string representation 3823func (s ChannelMapping) GoString() string { 3824 return s.String() 3825} 3826 3827// Validate inspects the fields of the type to determine if they are valid. 3828func (s *ChannelMapping) Validate() error { 3829 invalidParams := request.ErrInvalidParams{Context: "ChannelMapping"} 3830 if s.OutputChannels == nil { 3831 invalidParams.Add(request.NewErrParamRequired("OutputChannels")) 3832 } 3833 if s.OutputChannels != nil { 3834 for i, v := range s.OutputChannels { 3835 if v == nil { 3836 continue 3837 } 3838 if err := v.Validate(); err != nil { 3839 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputChannels", i), err.(request.ErrInvalidParams)) 3840 } 3841 } 3842 } 3843 3844 if invalidParams.Len() > 0 { 3845 return invalidParams 3846 } 3847 return nil 3848} 3849 3850// SetOutputChannels sets the OutputChannels field's value. 3851func (s *ChannelMapping) SetOutputChannels(v []*OutputChannelMapping) *ChannelMapping { 3852 s.OutputChannels = v 3853 return s 3854} 3855 3856// Settings for CMAF encryption 3857type CmafEncryptionSettings struct { 3858 _ struct{} `type:"structure"` 3859 3860 // This is a 128-bit, 16-byte hex value represented by a 32-character text string. 3861 // If this parameter is not set then the Initialization Vector will follow the 3862 // segment number by default. 3863 ConstantInitializationVector *string `locationName:"constantInitializationVector" min:"32" type:"string"` 3864 3865 // Encrypts the segments with the given encryption scheme. Leave blank to disable. 3866 // Selecting 'Disabled' in the web interface also disables encryption. 3867 EncryptionMethod *string `locationName:"encryptionMethod" type:"string" enum:"CmafEncryptionType"` 3868 3869 // The Initialization Vector is a 128-bit number used in conjunction with the 3870 // key for encrypting blocks. If set to INCLUDE, Initialization Vector is listed 3871 // in the manifest. Otherwise Initialization Vector is not in the manifest. 3872 InitializationVectorInManifest *string `locationName:"initializationVectorInManifest" type:"string" enum:"CmafInitializationVectorInManifest"` 3873 3874 // Settings for use with a SPEKE key provider. 3875 StaticKeyProvider *StaticKeyProvider `locationName:"staticKeyProvider" type:"structure"` 3876 3877 // Indicates which type of key provider is used for encryption. 3878 // 3879 // Type is a required field 3880 Type *string `locationName:"type" type:"string" required:"true" enum:"CmafKeyProviderType"` 3881} 3882 3883// String returns the string representation 3884func (s CmafEncryptionSettings) String() string { 3885 return awsutil.Prettify(s) 3886} 3887 3888// GoString returns the string representation 3889func (s CmafEncryptionSettings) GoString() string { 3890 return s.String() 3891} 3892 3893// Validate inspects the fields of the type to determine if they are valid. 3894func (s *CmafEncryptionSettings) Validate() error { 3895 invalidParams := request.ErrInvalidParams{Context: "CmafEncryptionSettings"} 3896 if s.ConstantInitializationVector != nil && len(*s.ConstantInitializationVector) < 32 { 3897 invalidParams.Add(request.NewErrParamMinLen("ConstantInitializationVector", 32)) 3898 } 3899 if s.Type == nil { 3900 invalidParams.Add(request.NewErrParamRequired("Type")) 3901 } 3902 if s.StaticKeyProvider != nil { 3903 if err := s.StaticKeyProvider.Validate(); err != nil { 3904 invalidParams.AddNested("StaticKeyProvider", err.(request.ErrInvalidParams)) 3905 } 3906 } 3907 3908 if invalidParams.Len() > 0 { 3909 return invalidParams 3910 } 3911 return nil 3912} 3913 3914// SetConstantInitializationVector sets the ConstantInitializationVector field's value. 3915func (s *CmafEncryptionSettings) SetConstantInitializationVector(v string) *CmafEncryptionSettings { 3916 s.ConstantInitializationVector = &v 3917 return s 3918} 3919 3920// SetEncryptionMethod sets the EncryptionMethod field's value. 3921func (s *CmafEncryptionSettings) SetEncryptionMethod(v string) *CmafEncryptionSettings { 3922 s.EncryptionMethod = &v 3923 return s 3924} 3925 3926// SetInitializationVectorInManifest sets the InitializationVectorInManifest field's value. 3927func (s *CmafEncryptionSettings) SetInitializationVectorInManifest(v string) *CmafEncryptionSettings { 3928 s.InitializationVectorInManifest = &v 3929 return s 3930} 3931 3932// SetStaticKeyProvider sets the StaticKeyProvider field's value. 3933func (s *CmafEncryptionSettings) SetStaticKeyProvider(v *StaticKeyProvider) *CmafEncryptionSettings { 3934 s.StaticKeyProvider = v 3935 return s 3936} 3937 3938// SetType sets the Type field's value. 3939func (s *CmafEncryptionSettings) SetType(v string) *CmafEncryptionSettings { 3940 s.Type = &v 3941 return s 3942} 3943 3944// Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to 3945// CMAF_GROUP_SETTINGS. Each output in a CMAF Output Group may only contain 3946// a single video, audio, or caption output. 3947type CmafGroupSettings struct { 3948 _ struct{} `type:"structure"` 3949 3950 // A partial URI prefix that will be put in the manifest file at the top level 3951 // BaseURL element. Can be used if streams are delivered from a different URL 3952 // than the manifest file. 3953 BaseUrl *string `locationName:"baseUrl" type:"string"` 3954 3955 // When set to ENABLED, sets #EXT-X-ALLOW-CACHE:no tag, which prevents client 3956 // from saving media segments for later replay. 3957 ClientCache *string `locationName:"clientCache" type:"string" enum:"CmafClientCache"` 3958 3959 // Specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist 3960 // generation. 3961 CodecSpecification *string `locationName:"codecSpecification" type:"string" enum:"CmafCodecSpecification"` 3962 3963 // Use Destination (Destination) to specify the S3 output location and the output 3964 // filename base. Destination accepts format identifiers. If you do not specify 3965 // the base filename in the URI, the service will use the filename of the input 3966 // file. If your job has multiple inputs, the service uses the filename of the 3967 // first input file. 3968 Destination *string `locationName:"destination" type:"string"` 3969 3970 // DRM settings. 3971 Encryption *CmafEncryptionSettings `locationName:"encryption" type:"structure"` 3972 3973 // Length of fragments to generate (in seconds). Fragment length must be compatible 3974 // with GOP size and Framerate. Note that fragments will end on the next keyframe 3975 // after this number of seconds, so actual fragment length may be longer. When 3976 // Emit Single File is checked, the fragmentation is internal to a single output 3977 // file and it does not cause the creation of many output files as in other 3978 // output types. 3979 // 3980 // FragmentLength is a required field 3981 FragmentLength *int64 `locationName:"fragmentLength" min:"1" type:"integer" required:"true"` 3982 3983 // When set to GZIP, compresses HLS playlist. 3984 ManifestCompression *string `locationName:"manifestCompression" type:"string" enum:"CmafManifestCompression"` 3985 3986 // Indicates whether the output manifest should use floating point values for 3987 // segment duration. 3988 ManifestDurationFormat *string `locationName:"manifestDurationFormat" type:"string" enum:"CmafManifestDurationFormat"` 3989 3990 // Minimum time of initially buffered media that is needed to ensure smooth 3991 // playout. 3992 MinBufferTime *int64 `locationName:"minBufferTime" type:"integer"` 3993 3994 // Keep this setting at the default value of 0, unless you are troubleshooting 3995 // a problem with how devices play back the end of your video asset. If you 3996 // know that player devices are hanging on the final segment of your video because 3997 // the length of your final segment is too short, use this setting to specify 3998 // a minimum final segment length, in seconds. Choose a value that is greater 3999 // than or equal to 1 and less than your segment length. When you specify a 4000 // value for this setting, the encoder will combine any final segment that is 4001 // shorter than the length that you specify with the previous segment. For example, 4002 // your segment length is 3 seconds and your final segment is .5 seconds without 4003 // a minimum final segment length; when you set the minimum final segment length 4004 // to 1, your final segment is 3.5 seconds. 4005 MinFinalSegmentLength *float64 `locationName:"minFinalSegmentLength" type:"double"` 4006 4007 // When set to SINGLE_FILE, a single output file is generated, which is internally 4008 // segmented using the Fragment Length and Segment Length. When set to SEGMENTED_FILES, 4009 // separate segment files will be created. 4010 SegmentControl *string `locationName:"segmentControl" type:"string" enum:"CmafSegmentControl"` 4011 4012 // Use this setting to specify the length, in seconds, of each individual CMAF 4013 // segment. This value applies to the whole package; that is, to every output 4014 // in the output group. Note that segments end on the first keyframe after this 4015 // number of seconds, so the actual segment length might be slightly longer. 4016 // If you set Segment control (CmafSegmentControl) to single file, the service 4017 // puts the content of each output in a single file that has metadata that marks 4018 // these segments. If you set it to segmented files, the service creates multiple 4019 // files for each output, each with the content of one segment. 4020 // 4021 // SegmentLength is a required field 4022 SegmentLength *int64 `locationName:"segmentLength" min:"1" type:"integer" required:"true"` 4023 4024 // Include or exclude RESOLUTION attribute for video in EXT-X-STREAM-INF tag 4025 // of variant manifest. 4026 StreamInfResolution *string `locationName:"streamInfResolution" type:"string" enum:"CmafStreamInfResolution"` 4027 4028 // When set to ENABLED, a DASH MPD manifest will be generated for this output. 4029 WriteDashManifest *string `locationName:"writeDashManifest" type:"string" enum:"CmafWriteDASHManifest"` 4030 4031 // When set to ENABLED, an Apple HLS manifest will be generated for this output. 4032 WriteHlsManifest *string `locationName:"writeHlsManifest" type:"string" enum:"CmafWriteHLSManifest"` 4033} 4034 4035// String returns the string representation 4036func (s CmafGroupSettings) String() string { 4037 return awsutil.Prettify(s) 4038} 4039 4040// GoString returns the string representation 4041func (s CmafGroupSettings) GoString() string { 4042 return s.String() 4043} 4044 4045// Validate inspects the fields of the type to determine if they are valid. 4046func (s *CmafGroupSettings) Validate() error { 4047 invalidParams := request.ErrInvalidParams{Context: "CmafGroupSettings"} 4048 if s.FragmentLength == nil { 4049 invalidParams.Add(request.NewErrParamRequired("FragmentLength")) 4050 } 4051 if s.FragmentLength != nil && *s.FragmentLength < 1 { 4052 invalidParams.Add(request.NewErrParamMinValue("FragmentLength", 1)) 4053 } 4054 if s.SegmentLength == nil { 4055 invalidParams.Add(request.NewErrParamRequired("SegmentLength")) 4056 } 4057 if s.SegmentLength != nil && *s.SegmentLength < 1 { 4058 invalidParams.Add(request.NewErrParamMinValue("SegmentLength", 1)) 4059 } 4060 if s.Encryption != nil { 4061 if err := s.Encryption.Validate(); err != nil { 4062 invalidParams.AddNested("Encryption", err.(request.ErrInvalidParams)) 4063 } 4064 } 4065 4066 if invalidParams.Len() > 0 { 4067 return invalidParams 4068 } 4069 return nil 4070} 4071 4072// SetBaseUrl sets the BaseUrl field's value. 4073func (s *CmafGroupSettings) SetBaseUrl(v string) *CmafGroupSettings { 4074 s.BaseUrl = &v 4075 return s 4076} 4077 4078// SetClientCache sets the ClientCache field's value. 4079func (s *CmafGroupSettings) SetClientCache(v string) *CmafGroupSettings { 4080 s.ClientCache = &v 4081 return s 4082} 4083 4084// SetCodecSpecification sets the CodecSpecification field's value. 4085func (s *CmafGroupSettings) SetCodecSpecification(v string) *CmafGroupSettings { 4086 s.CodecSpecification = &v 4087 return s 4088} 4089 4090// SetDestination sets the Destination field's value. 4091func (s *CmafGroupSettings) SetDestination(v string) *CmafGroupSettings { 4092 s.Destination = &v 4093 return s 4094} 4095 4096// SetEncryption sets the Encryption field's value. 4097func (s *CmafGroupSettings) SetEncryption(v *CmafEncryptionSettings) *CmafGroupSettings { 4098 s.Encryption = v 4099 return s 4100} 4101 4102// SetFragmentLength sets the FragmentLength field's value. 4103func (s *CmafGroupSettings) SetFragmentLength(v int64) *CmafGroupSettings { 4104 s.FragmentLength = &v 4105 return s 4106} 4107 4108// SetManifestCompression sets the ManifestCompression field's value. 4109func (s *CmafGroupSettings) SetManifestCompression(v string) *CmafGroupSettings { 4110 s.ManifestCompression = &v 4111 return s 4112} 4113 4114// SetManifestDurationFormat sets the ManifestDurationFormat field's value. 4115func (s *CmafGroupSettings) SetManifestDurationFormat(v string) *CmafGroupSettings { 4116 s.ManifestDurationFormat = &v 4117 return s 4118} 4119 4120// SetMinBufferTime sets the MinBufferTime field's value. 4121func (s *CmafGroupSettings) SetMinBufferTime(v int64) *CmafGroupSettings { 4122 s.MinBufferTime = &v 4123 return s 4124} 4125 4126// SetMinFinalSegmentLength sets the MinFinalSegmentLength field's value. 4127func (s *CmafGroupSettings) SetMinFinalSegmentLength(v float64) *CmafGroupSettings { 4128 s.MinFinalSegmentLength = &v 4129 return s 4130} 4131 4132// SetSegmentControl sets the SegmentControl field's value. 4133func (s *CmafGroupSettings) SetSegmentControl(v string) *CmafGroupSettings { 4134 s.SegmentControl = &v 4135 return s 4136} 4137 4138// SetSegmentLength sets the SegmentLength field's value. 4139func (s *CmafGroupSettings) SetSegmentLength(v int64) *CmafGroupSettings { 4140 s.SegmentLength = &v 4141 return s 4142} 4143 4144// SetStreamInfResolution sets the StreamInfResolution field's value. 4145func (s *CmafGroupSettings) SetStreamInfResolution(v string) *CmafGroupSettings { 4146 s.StreamInfResolution = &v 4147 return s 4148} 4149 4150// SetWriteDashManifest sets the WriteDashManifest field's value. 4151func (s *CmafGroupSettings) SetWriteDashManifest(v string) *CmafGroupSettings { 4152 s.WriteDashManifest = &v 4153 return s 4154} 4155 4156// SetWriteHlsManifest sets the WriteHlsManifest field's value. 4157func (s *CmafGroupSettings) SetWriteHlsManifest(v string) *CmafGroupSettings { 4158 s.WriteHlsManifest = &v 4159 return s 4160} 4161 4162// Settings for color correction. 4163type ColorCorrector struct { 4164 _ struct{} `type:"structure"` 4165 4166 // Brightness level. 4167 Brightness *int64 `locationName:"brightness" min:"1" type:"integer"` 4168 4169 // Determines if colorspace conversion will be performed. If set to _None_, 4170 // no conversion will be performed. If _Force 601_ or _Force 709_ are selected, 4171 // conversion will be performed for inputs with differing colorspaces. An input's 4172 // colorspace can be specified explicitly in the "Video Selector":#inputs-video_selector 4173 // if necessary. 4174 ColorSpaceConversion *string `locationName:"colorSpaceConversion" type:"string" enum:"ColorSpaceConversion"` 4175 4176 // Contrast level. 4177 Contrast *int64 `locationName:"contrast" min:"1" type:"integer"` 4178 4179 // Use the HDR master display (Hdr10Metadata) settings to correct HDR metadata 4180 // or to provide missing metadata. These values vary depending on the input 4181 // video and must be provided by a color grader. Range is 0 to 50,000, each 4182 // increment represents 0.00002 in CIE1931 color coordinate. Note that these 4183 // settings are not color correction. Note that if you are creating HDR outputs 4184 // inside of an HLS CMAF package, to comply with the Apple specification, you 4185 // must use the HVC1 for H.265 setting. 4186 Hdr10Metadata *Hdr10Metadata `locationName:"hdr10Metadata" type:"structure"` 4187 4188 // Hue in degrees. 4189 Hue *int64 `locationName:"hue" type:"integer"` 4190 4191 // Saturation level. 4192 Saturation *int64 `locationName:"saturation" min:"1" type:"integer"` 4193} 4194 4195// String returns the string representation 4196func (s ColorCorrector) String() string { 4197 return awsutil.Prettify(s) 4198} 4199 4200// GoString returns the string representation 4201func (s ColorCorrector) GoString() string { 4202 return s.String() 4203} 4204 4205// Validate inspects the fields of the type to determine if they are valid. 4206func (s *ColorCorrector) Validate() error { 4207 invalidParams := request.ErrInvalidParams{Context: "ColorCorrector"} 4208 if s.Brightness != nil && *s.Brightness < 1 { 4209 invalidParams.Add(request.NewErrParamMinValue("Brightness", 1)) 4210 } 4211 if s.Contrast != nil && *s.Contrast < 1 { 4212 invalidParams.Add(request.NewErrParamMinValue("Contrast", 1)) 4213 } 4214 if s.Hue != nil && *s.Hue < -180 { 4215 invalidParams.Add(request.NewErrParamMinValue("Hue", -180)) 4216 } 4217 if s.Saturation != nil && *s.Saturation < 1 { 4218 invalidParams.Add(request.NewErrParamMinValue("Saturation", 1)) 4219 } 4220 if s.Hdr10Metadata != nil { 4221 if err := s.Hdr10Metadata.Validate(); err != nil { 4222 invalidParams.AddNested("Hdr10Metadata", err.(request.ErrInvalidParams)) 4223 } 4224 } 4225 4226 if invalidParams.Len() > 0 { 4227 return invalidParams 4228 } 4229 return nil 4230} 4231 4232// SetBrightness sets the Brightness field's value. 4233func (s *ColorCorrector) SetBrightness(v int64) *ColorCorrector { 4234 s.Brightness = &v 4235 return s 4236} 4237 4238// SetColorSpaceConversion sets the ColorSpaceConversion field's value. 4239func (s *ColorCorrector) SetColorSpaceConversion(v string) *ColorCorrector { 4240 s.ColorSpaceConversion = &v 4241 return s 4242} 4243 4244// SetContrast sets the Contrast field's value. 4245func (s *ColorCorrector) SetContrast(v int64) *ColorCorrector { 4246 s.Contrast = &v 4247 return s 4248} 4249 4250// SetHdr10Metadata sets the Hdr10Metadata field's value. 4251func (s *ColorCorrector) SetHdr10Metadata(v *Hdr10Metadata) *ColorCorrector { 4252 s.Hdr10Metadata = v 4253 return s 4254} 4255 4256// SetHue sets the Hue field's value. 4257func (s *ColorCorrector) SetHue(v int64) *ColorCorrector { 4258 s.Hue = &v 4259 return s 4260} 4261 4262// SetSaturation sets the Saturation field's value. 4263func (s *ColorCorrector) SetSaturation(v int64) *ColorCorrector { 4264 s.Saturation = &v 4265 return s 4266} 4267 4268// Container specific settings. 4269type ContainerSettings struct { 4270 _ struct{} `type:"structure"` 4271 4272 // Container for this output. Some containers require a container settings object. 4273 // If not specified, the default object will be created. 4274 // 4275 // Container is a required field 4276 Container *string `locationName:"container" type:"string" required:"true" enum:"ContainerType"` 4277 4278 // Settings for F4v container 4279 F4vSettings *F4vSettings `locationName:"f4vSettings" type:"structure"` 4280 4281 // Settings for M2TS Container. 4282 M2tsSettings *M2tsSettings `locationName:"m2tsSettings" type:"structure"` 4283 4284 // Settings for TS segments in HLS 4285 M3u8Settings *M3u8Settings `locationName:"m3u8Settings" type:"structure"` 4286 4287 // Settings for MOV Container. 4288 MovSettings *MovSettings `locationName:"movSettings" type:"structure"` 4289 4290 // Settings for MP4 Container 4291 Mp4Settings *Mp4Settings `locationName:"mp4Settings" type:"structure"` 4292} 4293 4294// String returns the string representation 4295func (s ContainerSettings) String() string { 4296 return awsutil.Prettify(s) 4297} 4298 4299// GoString returns the string representation 4300func (s ContainerSettings) GoString() string { 4301 return s.String() 4302} 4303 4304// Validate inspects the fields of the type to determine if they are valid. 4305func (s *ContainerSettings) Validate() error { 4306 invalidParams := request.ErrInvalidParams{Context: "ContainerSettings"} 4307 if s.Container == nil { 4308 invalidParams.Add(request.NewErrParamRequired("Container")) 4309 } 4310 if s.M2tsSettings != nil { 4311 if err := s.M2tsSettings.Validate(); err != nil { 4312 invalidParams.AddNested("M2tsSettings", err.(request.ErrInvalidParams)) 4313 } 4314 } 4315 if s.M3u8Settings != nil { 4316 if err := s.M3u8Settings.Validate(); err != nil { 4317 invalidParams.AddNested("M3u8Settings", err.(request.ErrInvalidParams)) 4318 } 4319 } 4320 4321 if invalidParams.Len() > 0 { 4322 return invalidParams 4323 } 4324 return nil 4325} 4326 4327// SetContainer sets the Container field's value. 4328func (s *ContainerSettings) SetContainer(v string) *ContainerSettings { 4329 s.Container = &v 4330 return s 4331} 4332 4333// SetF4vSettings sets the F4vSettings field's value. 4334func (s *ContainerSettings) SetF4vSettings(v *F4vSettings) *ContainerSettings { 4335 s.F4vSettings = v 4336 return s 4337} 4338 4339// SetM2tsSettings sets the M2tsSettings field's value. 4340func (s *ContainerSettings) SetM2tsSettings(v *M2tsSettings) *ContainerSettings { 4341 s.M2tsSettings = v 4342 return s 4343} 4344 4345// SetM3u8Settings sets the M3u8Settings field's value. 4346func (s *ContainerSettings) SetM3u8Settings(v *M3u8Settings) *ContainerSettings { 4347 s.M3u8Settings = v 4348 return s 4349} 4350 4351// SetMovSettings sets the MovSettings field's value. 4352func (s *ContainerSettings) SetMovSettings(v *MovSettings) *ContainerSettings { 4353 s.MovSettings = v 4354 return s 4355} 4356 4357// SetMp4Settings sets the Mp4Settings field's value. 4358func (s *ContainerSettings) SetMp4Settings(v *Mp4Settings) *ContainerSettings { 4359 s.Mp4Settings = v 4360 return s 4361} 4362 4363// Send your create job request with your job settings and IAM role. Optionally, 4364// include user metadata and the ARN for the queue. 4365type CreateJobInput struct { 4366 _ struct{} `type:"structure"` 4367 4368 // Idempotency token for CreateJob operation. 4369 ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` 4370 4371 // When you create a job, you can either specify a job template or specify the 4372 // transcoding settings individually 4373 JobTemplate *string `locationName:"jobTemplate" type:"string"` 4374 4375 // Optional. When you create a job, you can specify a queue to send it to. If 4376 // you don't specify, the job will go to the default queue. For more about queues, 4377 // see the User Guide topic at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html. 4378 Queue *string `locationName:"queue" type:"string"` 4379 4380 // Required. The IAM role you use for creating this job. For details about permissions, 4381 // see the User Guide topic at the User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/iam-role.html. 4382 // 4383 // Role is a required field 4384 Role *string `locationName:"role" type:"string" required:"true"` 4385 4386 // JobSettings contains all the transcode settings for a job. 4387 // 4388 // Settings is a required field 4389 Settings *JobSettings `locationName:"settings" type:"structure" required:"true"` 4390 4391 // User-defined metadata that you want to associate with an MediaConvert job. 4392 // You specify metadata in key/value pairs. 4393 UserMetadata map[string]*string `locationName:"userMetadata" type:"map"` 4394} 4395 4396// String returns the string representation 4397func (s CreateJobInput) String() string { 4398 return awsutil.Prettify(s) 4399} 4400 4401// GoString returns the string representation 4402func (s CreateJobInput) GoString() string { 4403 return s.String() 4404} 4405 4406// Validate inspects the fields of the type to determine if they are valid. 4407func (s *CreateJobInput) Validate() error { 4408 invalidParams := request.ErrInvalidParams{Context: "CreateJobInput"} 4409 if s.Role == nil { 4410 invalidParams.Add(request.NewErrParamRequired("Role")) 4411 } 4412 if s.Settings == nil { 4413 invalidParams.Add(request.NewErrParamRequired("Settings")) 4414 } 4415 if s.Settings != nil { 4416 if err := s.Settings.Validate(); err != nil { 4417 invalidParams.AddNested("Settings", err.(request.ErrInvalidParams)) 4418 } 4419 } 4420 4421 if invalidParams.Len() > 0 { 4422 return invalidParams 4423 } 4424 return nil 4425} 4426 4427// SetClientRequestToken sets the ClientRequestToken field's value. 4428func (s *CreateJobInput) SetClientRequestToken(v string) *CreateJobInput { 4429 s.ClientRequestToken = &v 4430 return s 4431} 4432 4433// SetJobTemplate sets the JobTemplate field's value. 4434func (s *CreateJobInput) SetJobTemplate(v string) *CreateJobInput { 4435 s.JobTemplate = &v 4436 return s 4437} 4438 4439// SetQueue sets the Queue field's value. 4440func (s *CreateJobInput) SetQueue(v string) *CreateJobInput { 4441 s.Queue = &v 4442 return s 4443} 4444 4445// SetRole sets the Role field's value. 4446func (s *CreateJobInput) SetRole(v string) *CreateJobInput { 4447 s.Role = &v 4448 return s 4449} 4450 4451// SetSettings sets the Settings field's value. 4452func (s *CreateJobInput) SetSettings(v *JobSettings) *CreateJobInput { 4453 s.Settings = v 4454 return s 4455} 4456 4457// SetUserMetadata sets the UserMetadata field's value. 4458func (s *CreateJobInput) SetUserMetadata(v map[string]*string) *CreateJobInput { 4459 s.UserMetadata = v 4460 return s 4461} 4462 4463// Successful create job requests will return the job JSON. 4464type CreateJobOutput struct { 4465 _ struct{} `type:"structure"` 4466 4467 // Each job converts an input file into an output file or files. For more information, 4468 // see the User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html 4469 Job *Job `locationName:"job" type:"structure"` 4470} 4471 4472// String returns the string representation 4473func (s CreateJobOutput) String() string { 4474 return awsutil.Prettify(s) 4475} 4476 4477// GoString returns the string representation 4478func (s CreateJobOutput) GoString() string { 4479 return s.String() 4480} 4481 4482// SetJob sets the Job field's value. 4483func (s *CreateJobOutput) SetJob(v *Job) *CreateJobOutput { 4484 s.Job = v 4485 return s 4486} 4487 4488// Send your create job template request with the name of the template and the 4489// JSON for the template. The template JSON should include everything in a valid 4490// job, except for input location and filename, IAM role, and user metadata. 4491type CreateJobTemplateInput struct { 4492 _ struct{} `type:"structure"` 4493 4494 // Optional. A category for the job template you are creating 4495 Category *string `locationName:"category" type:"string"` 4496 4497 // Optional. A description of the job template you are creating. 4498 Description *string `locationName:"description" type:"string"` 4499 4500 // The name of the job template you are creating. 4501 // 4502 // Name is a required field 4503 Name *string `locationName:"name" type:"string" required:"true"` 4504 4505 // Optional. The queue that jobs created from this template are assigned to. 4506 // If you don't specify this, jobs will go to the default queue. 4507 Queue *string `locationName:"queue" type:"string"` 4508 4509 // JobTemplateSettings contains all the transcode settings saved in the template 4510 // that will be applied to jobs created from it. 4511 // 4512 // Settings is a required field 4513 Settings *JobTemplateSettings `locationName:"settings" type:"structure" required:"true"` 4514 4515 // The tags that you want to add to the resource. You can tag resources with 4516 // a key-value pair or with only a key. 4517 Tags map[string]*string `locationName:"tags" type:"map"` 4518} 4519 4520// String returns the string representation 4521func (s CreateJobTemplateInput) String() string { 4522 return awsutil.Prettify(s) 4523} 4524 4525// GoString returns the string representation 4526func (s CreateJobTemplateInput) GoString() string { 4527 return s.String() 4528} 4529 4530// Validate inspects the fields of the type to determine if they are valid. 4531func (s *CreateJobTemplateInput) Validate() error { 4532 invalidParams := request.ErrInvalidParams{Context: "CreateJobTemplateInput"} 4533 if s.Name == nil { 4534 invalidParams.Add(request.NewErrParamRequired("Name")) 4535 } 4536 if s.Settings == nil { 4537 invalidParams.Add(request.NewErrParamRequired("Settings")) 4538 } 4539 if s.Settings != nil { 4540 if err := s.Settings.Validate(); err != nil { 4541 invalidParams.AddNested("Settings", err.(request.ErrInvalidParams)) 4542 } 4543 } 4544 4545 if invalidParams.Len() > 0 { 4546 return invalidParams 4547 } 4548 return nil 4549} 4550 4551// SetCategory sets the Category field's value. 4552func (s *CreateJobTemplateInput) SetCategory(v string) *CreateJobTemplateInput { 4553 s.Category = &v 4554 return s 4555} 4556 4557// SetDescription sets the Description field's value. 4558func (s *CreateJobTemplateInput) SetDescription(v string) *CreateJobTemplateInput { 4559 s.Description = &v 4560 return s 4561} 4562 4563// SetName sets the Name field's value. 4564func (s *CreateJobTemplateInput) SetName(v string) *CreateJobTemplateInput { 4565 s.Name = &v 4566 return s 4567} 4568 4569// SetQueue sets the Queue field's value. 4570func (s *CreateJobTemplateInput) SetQueue(v string) *CreateJobTemplateInput { 4571 s.Queue = &v 4572 return s 4573} 4574 4575// SetSettings sets the Settings field's value. 4576func (s *CreateJobTemplateInput) SetSettings(v *JobTemplateSettings) *CreateJobTemplateInput { 4577 s.Settings = v 4578 return s 4579} 4580 4581// SetTags sets the Tags field's value. 4582func (s *CreateJobTemplateInput) SetTags(v map[string]*string) *CreateJobTemplateInput { 4583 s.Tags = v 4584 return s 4585} 4586 4587// Successful create job template requests will return the template JSON. 4588type CreateJobTemplateOutput struct { 4589 _ struct{} `type:"structure"` 4590 4591 // A job template is a pre-made set of encoding instructions that you can use 4592 // to quickly create a job. 4593 JobTemplate *JobTemplate `locationName:"jobTemplate" type:"structure"` 4594} 4595 4596// String returns the string representation 4597func (s CreateJobTemplateOutput) String() string { 4598 return awsutil.Prettify(s) 4599} 4600 4601// GoString returns the string representation 4602func (s CreateJobTemplateOutput) GoString() string { 4603 return s.String() 4604} 4605 4606// SetJobTemplate sets the JobTemplate field's value. 4607func (s *CreateJobTemplateOutput) SetJobTemplate(v *JobTemplate) *CreateJobTemplateOutput { 4608 s.JobTemplate = v 4609 return s 4610} 4611 4612// Send your create preset request with the name of the preset and the JSON 4613// for the output settings specified by the preset. 4614type CreatePresetInput struct { 4615 _ struct{} `type:"structure"` 4616 4617 // Optional. A category for the preset you are creating. 4618 Category *string `locationName:"category" type:"string"` 4619 4620 // Optional. A description of the preset you are creating. 4621 Description *string `locationName:"description" type:"string"` 4622 4623 // The name of the preset you are creating. 4624 // 4625 // Name is a required field 4626 Name *string `locationName:"name" type:"string" required:"true"` 4627 4628 // Settings for preset 4629 // 4630 // Settings is a required field 4631 Settings *PresetSettings `locationName:"settings" type:"structure" required:"true"` 4632 4633 // The tags that you want to add to the resource. You can tag resources with 4634 // a key-value pair or with only a key. 4635 Tags map[string]*string `locationName:"tags" type:"map"` 4636} 4637 4638// String returns the string representation 4639func (s CreatePresetInput) String() string { 4640 return awsutil.Prettify(s) 4641} 4642 4643// GoString returns the string representation 4644func (s CreatePresetInput) GoString() string { 4645 return s.String() 4646} 4647 4648// Validate inspects the fields of the type to determine if they are valid. 4649func (s *CreatePresetInput) Validate() error { 4650 invalidParams := request.ErrInvalidParams{Context: "CreatePresetInput"} 4651 if s.Name == nil { 4652 invalidParams.Add(request.NewErrParamRequired("Name")) 4653 } 4654 if s.Settings == nil { 4655 invalidParams.Add(request.NewErrParamRequired("Settings")) 4656 } 4657 if s.Settings != nil { 4658 if err := s.Settings.Validate(); err != nil { 4659 invalidParams.AddNested("Settings", err.(request.ErrInvalidParams)) 4660 } 4661 } 4662 4663 if invalidParams.Len() > 0 { 4664 return invalidParams 4665 } 4666 return nil 4667} 4668 4669// SetCategory sets the Category field's value. 4670func (s *CreatePresetInput) SetCategory(v string) *CreatePresetInput { 4671 s.Category = &v 4672 return s 4673} 4674 4675// SetDescription sets the Description field's value. 4676func (s *CreatePresetInput) SetDescription(v string) *CreatePresetInput { 4677 s.Description = &v 4678 return s 4679} 4680 4681// SetName sets the Name field's value. 4682func (s *CreatePresetInput) SetName(v string) *CreatePresetInput { 4683 s.Name = &v 4684 return s 4685} 4686 4687// SetSettings sets the Settings field's value. 4688func (s *CreatePresetInput) SetSettings(v *PresetSettings) *CreatePresetInput { 4689 s.Settings = v 4690 return s 4691} 4692 4693// SetTags sets the Tags field's value. 4694func (s *CreatePresetInput) SetTags(v map[string]*string) *CreatePresetInput { 4695 s.Tags = v 4696 return s 4697} 4698 4699// Successful create preset requests will return the preset JSON. 4700type CreatePresetOutput struct { 4701 _ struct{} `type:"structure"` 4702 4703 // A preset is a collection of preconfigured media conversion settings that 4704 // you want MediaConvert to apply to the output during the conversion process. 4705 Preset *Preset `locationName:"preset" type:"structure"` 4706} 4707 4708// String returns the string representation 4709func (s CreatePresetOutput) String() string { 4710 return awsutil.Prettify(s) 4711} 4712 4713// GoString returns the string representation 4714func (s CreatePresetOutput) GoString() string { 4715 return s.String() 4716} 4717 4718// SetPreset sets the Preset field's value. 4719func (s *CreatePresetOutput) SetPreset(v *Preset) *CreatePresetOutput { 4720 s.Preset = v 4721 return s 4722} 4723 4724// Send your create queue request with the name of the queue. 4725type CreateQueueInput struct { 4726 _ struct{} `type:"structure"` 4727 4728 // Optional. A description of the queue you are creating. 4729 Description *string `locationName:"description" type:"string"` 4730 4731 // The name of the queue you are creating. 4732 // 4733 // Name is a required field 4734 Name *string `locationName:"name" type:"string" required:"true"` 4735 4736 // The tags that you want to add to the resource. You can tag resources with 4737 // a key-value pair or with only a key. 4738 Tags map[string]*string `locationName:"tags" type:"map"` 4739} 4740 4741// String returns the string representation 4742func (s CreateQueueInput) String() string { 4743 return awsutil.Prettify(s) 4744} 4745 4746// GoString returns the string representation 4747func (s CreateQueueInput) GoString() string { 4748 return s.String() 4749} 4750 4751// Validate inspects the fields of the type to determine if they are valid. 4752func (s *CreateQueueInput) Validate() error { 4753 invalidParams := request.ErrInvalidParams{Context: "CreateQueueInput"} 4754 if s.Name == nil { 4755 invalidParams.Add(request.NewErrParamRequired("Name")) 4756 } 4757 4758 if invalidParams.Len() > 0 { 4759 return invalidParams 4760 } 4761 return nil 4762} 4763 4764// SetDescription sets the Description field's value. 4765func (s *CreateQueueInput) SetDescription(v string) *CreateQueueInput { 4766 s.Description = &v 4767 return s 4768} 4769 4770// SetName sets the Name field's value. 4771func (s *CreateQueueInput) SetName(v string) *CreateQueueInput { 4772 s.Name = &v 4773 return s 4774} 4775 4776// SetTags sets the Tags field's value. 4777func (s *CreateQueueInput) SetTags(v map[string]*string) *CreateQueueInput { 4778 s.Tags = v 4779 return s 4780} 4781 4782// Successful create queue requests will return the name of the queue you just 4783// created and information about it. 4784type CreateQueueOutput struct { 4785 _ struct{} `type:"structure"` 4786 4787 // MediaConvert jobs are submitted to a queue. Unless specified otherwise jobs 4788 // are submitted to a built-in default queue. User can create additional queues 4789 // to separate the jobs of different categories or priority. 4790 Queue *Queue `locationName:"queue" type:"structure"` 4791} 4792 4793// String returns the string representation 4794func (s CreateQueueOutput) String() string { 4795 return awsutil.Prettify(s) 4796} 4797 4798// GoString returns the string representation 4799func (s CreateQueueOutput) GoString() string { 4800 return s.String() 4801} 4802 4803// SetQueue sets the Queue field's value. 4804func (s *CreateQueueOutput) SetQueue(v *Queue) *CreateQueueOutput { 4805 s.Queue = v 4806 return s 4807} 4808 4809// Specifies DRM settings for DASH outputs. 4810type DashIsoEncryptionSettings struct { 4811 _ struct{} `type:"structure"` 4812 4813 // Settings for use with a SPEKE key provider 4814 // 4815 // SpekeKeyProvider is a required field 4816 SpekeKeyProvider *SpekeKeyProvider `locationName:"spekeKeyProvider" type:"structure" required:"true"` 4817} 4818 4819// String returns the string representation 4820func (s DashIsoEncryptionSettings) String() string { 4821 return awsutil.Prettify(s) 4822} 4823 4824// GoString returns the string representation 4825func (s DashIsoEncryptionSettings) GoString() string { 4826 return s.String() 4827} 4828 4829// Validate inspects the fields of the type to determine if they are valid. 4830func (s *DashIsoEncryptionSettings) Validate() error { 4831 invalidParams := request.ErrInvalidParams{Context: "DashIsoEncryptionSettings"} 4832 if s.SpekeKeyProvider == nil { 4833 invalidParams.Add(request.NewErrParamRequired("SpekeKeyProvider")) 4834 } 4835 if s.SpekeKeyProvider != nil { 4836 if err := s.SpekeKeyProvider.Validate(); err != nil { 4837 invalidParams.AddNested("SpekeKeyProvider", err.(request.ErrInvalidParams)) 4838 } 4839 } 4840 4841 if invalidParams.Len() > 0 { 4842 return invalidParams 4843 } 4844 return nil 4845} 4846 4847// SetSpekeKeyProvider sets the SpekeKeyProvider field's value. 4848func (s *DashIsoEncryptionSettings) SetSpekeKeyProvider(v *SpekeKeyProvider) *DashIsoEncryptionSettings { 4849 s.SpekeKeyProvider = v 4850 return s 4851} 4852 4853// Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to 4854// DASH_ISO_GROUP_SETTINGS. 4855type DashIsoGroupSettings struct { 4856 _ struct{} `type:"structure"` 4857 4858 // A partial URI prefix that will be put in the manifest (.mpd) file at the 4859 // top level BaseURL element. Can be used if streams are delivered from a different 4860 // URL than the manifest file. 4861 BaseUrl *string `locationName:"baseUrl" type:"string"` 4862 4863 // Use Destination (Destination) to specify the S3 output location and the output 4864 // filename base. Destination accepts format identifiers. If you do not specify 4865 // the base filename in the URI, the service will use the filename of the input 4866 // file. If your job has multiple inputs, the service uses the filename of the 4867 // first input file. 4868 Destination *string `locationName:"destination" type:"string"` 4869 4870 // DRM settings. 4871 Encryption *DashIsoEncryptionSettings `locationName:"encryption" type:"structure"` 4872 4873 // Length of fragments to generate (in seconds). Fragment length must be compatible 4874 // with GOP size and Framerate. Note that fragments will end on the next keyframe 4875 // after this number of seconds, so actual fragment length may be longer. When 4876 // Emit Single File is checked, the fragmentation is internal to a single output 4877 // file and it does not cause the creation of many output files as in other 4878 // output types. 4879 // 4880 // FragmentLength is a required field 4881 FragmentLength *int64 `locationName:"fragmentLength" min:"1" type:"integer" required:"true"` 4882 4883 // Supports HbbTV specification as indicated 4884 HbbtvCompliance *string `locationName:"hbbtvCompliance" type:"string" enum:"DashIsoHbbtvCompliance"` 4885 4886 // Minimum time of initially buffered media that is needed to ensure smooth 4887 // playout. 4888 MinBufferTime *int64 `locationName:"minBufferTime" type:"integer"` 4889 4890 // When set to SINGLE_FILE, a single output file is generated, which is internally 4891 // segmented using the Fragment Length and Segment Length. When set to SEGMENTED_FILES, 4892 // separate segment files will be created. 4893 SegmentControl *string `locationName:"segmentControl" type:"string" enum:"DashIsoSegmentControl"` 4894 4895 // Length of mpd segments to create (in seconds). Note that segments will end 4896 // on the next keyframe after this number of seconds, so actual segment length 4897 // may be longer. When Emit Single File is checked, the segmentation is internal 4898 // to a single output file and it does not cause the creation of many output 4899 // files as in other output types. 4900 // 4901 // SegmentLength is a required field 4902 SegmentLength *int64 `locationName:"segmentLength" min:"1" type:"integer" required:"true"` 4903} 4904 4905// String returns the string representation 4906func (s DashIsoGroupSettings) String() string { 4907 return awsutil.Prettify(s) 4908} 4909 4910// GoString returns the string representation 4911func (s DashIsoGroupSettings) GoString() string { 4912 return s.String() 4913} 4914 4915// Validate inspects the fields of the type to determine if they are valid. 4916func (s *DashIsoGroupSettings) Validate() error { 4917 invalidParams := request.ErrInvalidParams{Context: "DashIsoGroupSettings"} 4918 if s.FragmentLength == nil { 4919 invalidParams.Add(request.NewErrParamRequired("FragmentLength")) 4920 } 4921 if s.FragmentLength != nil && *s.FragmentLength < 1 { 4922 invalidParams.Add(request.NewErrParamMinValue("FragmentLength", 1)) 4923 } 4924 if s.SegmentLength == nil { 4925 invalidParams.Add(request.NewErrParamRequired("SegmentLength")) 4926 } 4927 if s.SegmentLength != nil && *s.SegmentLength < 1 { 4928 invalidParams.Add(request.NewErrParamMinValue("SegmentLength", 1)) 4929 } 4930 if s.Encryption != nil { 4931 if err := s.Encryption.Validate(); err != nil { 4932 invalidParams.AddNested("Encryption", err.(request.ErrInvalidParams)) 4933 } 4934 } 4935 4936 if invalidParams.Len() > 0 { 4937 return invalidParams 4938 } 4939 return nil 4940} 4941 4942// SetBaseUrl sets the BaseUrl field's value. 4943func (s *DashIsoGroupSettings) SetBaseUrl(v string) *DashIsoGroupSettings { 4944 s.BaseUrl = &v 4945 return s 4946} 4947 4948// SetDestination sets the Destination field's value. 4949func (s *DashIsoGroupSettings) SetDestination(v string) *DashIsoGroupSettings { 4950 s.Destination = &v 4951 return s 4952} 4953 4954// SetEncryption sets the Encryption field's value. 4955func (s *DashIsoGroupSettings) SetEncryption(v *DashIsoEncryptionSettings) *DashIsoGroupSettings { 4956 s.Encryption = v 4957 return s 4958} 4959 4960// SetFragmentLength sets the FragmentLength field's value. 4961func (s *DashIsoGroupSettings) SetFragmentLength(v int64) *DashIsoGroupSettings { 4962 s.FragmentLength = &v 4963 return s 4964} 4965 4966// SetHbbtvCompliance sets the HbbtvCompliance field's value. 4967func (s *DashIsoGroupSettings) SetHbbtvCompliance(v string) *DashIsoGroupSettings { 4968 s.HbbtvCompliance = &v 4969 return s 4970} 4971 4972// SetMinBufferTime sets the MinBufferTime field's value. 4973func (s *DashIsoGroupSettings) SetMinBufferTime(v int64) *DashIsoGroupSettings { 4974 s.MinBufferTime = &v 4975 return s 4976} 4977 4978// SetSegmentControl sets the SegmentControl field's value. 4979func (s *DashIsoGroupSettings) SetSegmentControl(v string) *DashIsoGroupSettings { 4980 s.SegmentControl = &v 4981 return s 4982} 4983 4984// SetSegmentLength sets the SegmentLength field's value. 4985func (s *DashIsoGroupSettings) SetSegmentLength(v int64) *DashIsoGroupSettings { 4986 s.SegmentLength = &v 4987 return s 4988} 4989 4990// Settings for deinterlacer 4991type Deinterlacer struct { 4992 _ struct{} `type:"structure"` 4993 4994 // Only applies when you set Deinterlacer (DeinterlaceMode) to Deinterlace (DEINTERLACE) 4995 // or Adaptive (ADAPTIVE). Motion adaptive interpolate (INTERPOLATE) produces 4996 // sharper pictures, while blend (BLEND) produces smoother motion. Use (INTERPOLATE_TICKER) 4997 // OR (BLEND_TICKER) if your source file includes a ticker, such as a scrolling 4998 // headline at the bottom of the frame. 4999 Algorithm *string `locationName:"algorithm" type:"string" enum:"DeinterlaceAlgorithm"` 5000 5001 // - When set to NORMAL (default), the deinterlacer does not convert frames 5002 // that are tagged in metadata as progressive. It will only convert those that 5003 // are tagged as some other type. - When set to FORCE_ALL_FRAMES, the deinterlacer 5004 // converts every frame to progressive - even those that are already tagged 5005 // as progressive. Turn Force mode on only if there is a good chance that the 5006 // metadata has tagged frames as progressive when they are not progressive. 5007 // Do not turn on otherwise; processing frames that are already progressive 5008 // into progressive will probably result in lower quality video. 5009 Control *string `locationName:"control" type:"string" enum:"DeinterlacerControl"` 5010 5011 // Use Deinterlacer (DeinterlaceMode) to choose how the service will do deinterlacing. 5012 // Default is Deinterlace. - Deinterlace converts interlaced to progressive. 5013 // - Inverse telecine converts Hard Telecine 29.97i to progressive 23.976p. 5014 // - Adaptive auto-detects and converts to progressive. 5015 Mode *string `locationName:"mode" type:"string" enum:"DeinterlacerMode"` 5016} 5017 5018// String returns the string representation 5019func (s Deinterlacer) String() string { 5020 return awsutil.Prettify(s) 5021} 5022 5023// GoString returns the string representation 5024func (s Deinterlacer) GoString() string { 5025 return s.String() 5026} 5027 5028// SetAlgorithm sets the Algorithm field's value. 5029func (s *Deinterlacer) SetAlgorithm(v string) *Deinterlacer { 5030 s.Algorithm = &v 5031 return s 5032} 5033 5034// SetControl sets the Control field's value. 5035func (s *Deinterlacer) SetControl(v string) *Deinterlacer { 5036 s.Control = &v 5037 return s 5038} 5039 5040// SetMode sets the Mode field's value. 5041func (s *Deinterlacer) SetMode(v string) *Deinterlacer { 5042 s.Mode = &v 5043 return s 5044} 5045 5046// Delete a job template by sending a request with the job template name 5047type DeleteJobTemplateInput struct { 5048 _ struct{} `type:"structure"` 5049 5050 // The name of the job template to be deleted. 5051 // 5052 // Name is a required field 5053 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 5054} 5055 5056// String returns the string representation 5057func (s DeleteJobTemplateInput) String() string { 5058 return awsutil.Prettify(s) 5059} 5060 5061// GoString returns the string representation 5062func (s DeleteJobTemplateInput) GoString() string { 5063 return s.String() 5064} 5065 5066// Validate inspects the fields of the type to determine if they are valid. 5067func (s *DeleteJobTemplateInput) Validate() error { 5068 invalidParams := request.ErrInvalidParams{Context: "DeleteJobTemplateInput"} 5069 if s.Name == nil { 5070 invalidParams.Add(request.NewErrParamRequired("Name")) 5071 } 5072 5073 if invalidParams.Len() > 0 { 5074 return invalidParams 5075 } 5076 return nil 5077} 5078 5079// SetName sets the Name field's value. 5080func (s *DeleteJobTemplateInput) SetName(v string) *DeleteJobTemplateInput { 5081 s.Name = &v 5082 return s 5083} 5084 5085// Delete job template requests will return an OK message or error message with 5086// an empty body. 5087type DeleteJobTemplateOutput struct { 5088 _ struct{} `type:"structure"` 5089} 5090 5091// String returns the string representation 5092func (s DeleteJobTemplateOutput) String() string { 5093 return awsutil.Prettify(s) 5094} 5095 5096// GoString returns the string representation 5097func (s DeleteJobTemplateOutput) GoString() string { 5098 return s.String() 5099} 5100 5101// Delete a preset by sending a request with the preset name 5102type DeletePresetInput struct { 5103 _ struct{} `type:"structure"` 5104 5105 // The name of the preset to be deleted. 5106 // 5107 // Name is a required field 5108 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 5109} 5110 5111// String returns the string representation 5112func (s DeletePresetInput) String() string { 5113 return awsutil.Prettify(s) 5114} 5115 5116// GoString returns the string representation 5117func (s DeletePresetInput) GoString() string { 5118 return s.String() 5119} 5120 5121// Validate inspects the fields of the type to determine if they are valid. 5122func (s *DeletePresetInput) Validate() error { 5123 invalidParams := request.ErrInvalidParams{Context: "DeletePresetInput"} 5124 if s.Name == nil { 5125 invalidParams.Add(request.NewErrParamRequired("Name")) 5126 } 5127 5128 if invalidParams.Len() > 0 { 5129 return invalidParams 5130 } 5131 return nil 5132} 5133 5134// SetName sets the Name field's value. 5135func (s *DeletePresetInput) SetName(v string) *DeletePresetInput { 5136 s.Name = &v 5137 return s 5138} 5139 5140// Delete preset requests will return an OK message or error message with an 5141// empty body. 5142type DeletePresetOutput struct { 5143 _ struct{} `type:"structure"` 5144} 5145 5146// String returns the string representation 5147func (s DeletePresetOutput) String() string { 5148 return awsutil.Prettify(s) 5149} 5150 5151// GoString returns the string representation 5152func (s DeletePresetOutput) GoString() string { 5153 return s.String() 5154} 5155 5156// Delete a queue by sending a request with the queue name 5157type DeleteQueueInput struct { 5158 _ struct{} `type:"structure"` 5159 5160 // The name of the queue to be deleted. 5161 // 5162 // Name is a required field 5163 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 5164} 5165 5166// String returns the string representation 5167func (s DeleteQueueInput) String() string { 5168 return awsutil.Prettify(s) 5169} 5170 5171// GoString returns the string representation 5172func (s DeleteQueueInput) GoString() string { 5173 return s.String() 5174} 5175 5176// Validate inspects the fields of the type to determine if they are valid. 5177func (s *DeleteQueueInput) Validate() error { 5178 invalidParams := request.ErrInvalidParams{Context: "DeleteQueueInput"} 5179 if s.Name == nil { 5180 invalidParams.Add(request.NewErrParamRequired("Name")) 5181 } 5182 5183 if invalidParams.Len() > 0 { 5184 return invalidParams 5185 } 5186 return nil 5187} 5188 5189// SetName sets the Name field's value. 5190func (s *DeleteQueueInput) SetName(v string) *DeleteQueueInput { 5191 s.Name = &v 5192 return s 5193} 5194 5195// Delete queue requests will return an OK message or error message with an 5196// empty body. 5197type DeleteQueueOutput struct { 5198 _ struct{} `type:"structure"` 5199} 5200 5201// String returns the string representation 5202func (s DeleteQueueOutput) String() string { 5203 return awsutil.Prettify(s) 5204} 5205 5206// GoString returns the string representation 5207func (s DeleteQueueOutput) GoString() string { 5208 return s.String() 5209} 5210 5211// Send an request with an empty body to the regional API endpoint to get your 5212// account API endpoint. 5213type DescribeEndpointsInput struct { 5214 _ struct{} `type:"structure"` 5215 5216 // Optional. Max number of endpoints, up to twenty, that will be returned at 5217 // one time. 5218 MaxResults *int64 `locationName:"maxResults" type:"integer"` 5219 5220 // Use this string, provided with the response to a previous request, to request 5221 // the next batch of endpoints. 5222 NextToken *string `locationName:"nextToken" type:"string"` 5223} 5224 5225// String returns the string representation 5226func (s DescribeEndpointsInput) String() string { 5227 return awsutil.Prettify(s) 5228} 5229 5230// GoString returns the string representation 5231func (s DescribeEndpointsInput) GoString() string { 5232 return s.String() 5233} 5234 5235// SetMaxResults sets the MaxResults field's value. 5236func (s *DescribeEndpointsInput) SetMaxResults(v int64) *DescribeEndpointsInput { 5237 s.MaxResults = &v 5238 return s 5239} 5240 5241// SetNextToken sets the NextToken field's value. 5242func (s *DescribeEndpointsInput) SetNextToken(v string) *DescribeEndpointsInput { 5243 s.NextToken = &v 5244 return s 5245} 5246 5247// Successful describe endpoints requests will return your account API endpoint. 5248type DescribeEndpointsOutput struct { 5249 _ struct{} `type:"structure"` 5250 5251 // List of endpoints 5252 Endpoints []*Endpoint `locationName:"endpoints" type:"list"` 5253 5254 // Use this string to request the next batch of endpoints. 5255 NextToken *string `locationName:"nextToken" type:"string"` 5256} 5257 5258// String returns the string representation 5259func (s DescribeEndpointsOutput) String() string { 5260 return awsutil.Prettify(s) 5261} 5262 5263// GoString returns the string representation 5264func (s DescribeEndpointsOutput) GoString() string { 5265 return s.String() 5266} 5267 5268// SetEndpoints sets the Endpoints field's value. 5269func (s *DescribeEndpointsOutput) SetEndpoints(v []*Endpoint) *DescribeEndpointsOutput { 5270 s.Endpoints = v 5271 return s 5272} 5273 5274// SetNextToken sets the NextToken field's value. 5275func (s *DescribeEndpointsOutput) SetNextToken(v string) *DescribeEndpointsOutput { 5276 s.NextToken = &v 5277 return s 5278} 5279 5280// Inserts DVB Network Information Table (NIT) at the specified table repetition 5281// interval. 5282type DvbNitSettings struct { 5283 _ struct{} `type:"structure"` 5284 5285 // The numeric value placed in the Network Information Table (NIT). 5286 // 5287 // NetworkId is a required field 5288 NetworkId *int64 `locationName:"networkId" type:"integer" required:"true"` 5289 5290 // The network name text placed in the network_name_descriptor inside the Network 5291 // Information Table. Maximum length is 256 characters. 5292 // 5293 // NetworkName is a required field 5294 NetworkName *string `locationName:"networkName" min:"1" type:"string" required:"true"` 5295 5296 // The number of milliseconds between instances of this table in the output 5297 // transport stream. 5298 // 5299 // NitInterval is a required field 5300 NitInterval *int64 `locationName:"nitInterval" min:"25" type:"integer" required:"true"` 5301} 5302 5303// String returns the string representation 5304func (s DvbNitSettings) String() string { 5305 return awsutil.Prettify(s) 5306} 5307 5308// GoString returns the string representation 5309func (s DvbNitSettings) GoString() string { 5310 return s.String() 5311} 5312 5313// Validate inspects the fields of the type to determine if they are valid. 5314func (s *DvbNitSettings) Validate() error { 5315 invalidParams := request.ErrInvalidParams{Context: "DvbNitSettings"} 5316 if s.NetworkId == nil { 5317 invalidParams.Add(request.NewErrParamRequired("NetworkId")) 5318 } 5319 if s.NetworkName == nil { 5320 invalidParams.Add(request.NewErrParamRequired("NetworkName")) 5321 } 5322 if s.NetworkName != nil && len(*s.NetworkName) < 1 { 5323 invalidParams.Add(request.NewErrParamMinLen("NetworkName", 1)) 5324 } 5325 if s.NitInterval == nil { 5326 invalidParams.Add(request.NewErrParamRequired("NitInterval")) 5327 } 5328 if s.NitInterval != nil && *s.NitInterval < 25 { 5329 invalidParams.Add(request.NewErrParamMinValue("NitInterval", 25)) 5330 } 5331 5332 if invalidParams.Len() > 0 { 5333 return invalidParams 5334 } 5335 return nil 5336} 5337 5338// SetNetworkId sets the NetworkId field's value. 5339func (s *DvbNitSettings) SetNetworkId(v int64) *DvbNitSettings { 5340 s.NetworkId = &v 5341 return s 5342} 5343 5344// SetNetworkName sets the NetworkName field's value. 5345func (s *DvbNitSettings) SetNetworkName(v string) *DvbNitSettings { 5346 s.NetworkName = &v 5347 return s 5348} 5349 5350// SetNitInterval sets the NitInterval field's value. 5351func (s *DvbNitSettings) SetNitInterval(v int64) *DvbNitSettings { 5352 s.NitInterval = &v 5353 return s 5354} 5355 5356// Inserts DVB Service Description Table (NIT) at the specified table repetition 5357// interval. 5358type DvbSdtSettings struct { 5359 _ struct{} `type:"structure"` 5360 5361 // Selects method of inserting SDT information into output stream. "Follow input 5362 // SDT" copies SDT information from input stream to output stream. "Follow input 5363 // SDT if present" copies SDT information from input stream to output stream 5364 // if SDT information is present in the input, otherwise it will fall back on 5365 // the user-defined values. Enter "SDT Manually" means user will enter the SDT 5366 // information. "No SDT" means output stream will not contain SDT information. 5367 OutputSdt *string `locationName:"outputSdt" type:"string" enum:"OutputSdt"` 5368 5369 // The number of milliseconds between instances of this table in the output 5370 // transport stream. 5371 SdtInterval *int64 `locationName:"sdtInterval" min:"25" type:"integer"` 5372 5373 // The service name placed in the service_descriptor in the Service Description 5374 // Table. Maximum length is 256 characters. 5375 ServiceName *string `locationName:"serviceName" min:"1" type:"string"` 5376 5377 // The service provider name placed in the service_descriptor in the Service 5378 // Description Table. Maximum length is 256 characters. 5379 ServiceProviderName *string `locationName:"serviceProviderName" min:"1" type:"string"` 5380} 5381 5382// String returns the string representation 5383func (s DvbSdtSettings) String() string { 5384 return awsutil.Prettify(s) 5385} 5386 5387// GoString returns the string representation 5388func (s DvbSdtSettings) GoString() string { 5389 return s.String() 5390} 5391 5392// Validate inspects the fields of the type to determine if they are valid. 5393func (s *DvbSdtSettings) Validate() error { 5394 invalidParams := request.ErrInvalidParams{Context: "DvbSdtSettings"} 5395 if s.SdtInterval != nil && *s.SdtInterval < 25 { 5396 invalidParams.Add(request.NewErrParamMinValue("SdtInterval", 25)) 5397 } 5398 if s.ServiceName != nil && len(*s.ServiceName) < 1 { 5399 invalidParams.Add(request.NewErrParamMinLen("ServiceName", 1)) 5400 } 5401 if s.ServiceProviderName != nil && len(*s.ServiceProviderName) < 1 { 5402 invalidParams.Add(request.NewErrParamMinLen("ServiceProviderName", 1)) 5403 } 5404 5405 if invalidParams.Len() > 0 { 5406 return invalidParams 5407 } 5408 return nil 5409} 5410 5411// SetOutputSdt sets the OutputSdt field's value. 5412func (s *DvbSdtSettings) SetOutputSdt(v string) *DvbSdtSettings { 5413 s.OutputSdt = &v 5414 return s 5415} 5416 5417// SetSdtInterval sets the SdtInterval field's value. 5418func (s *DvbSdtSettings) SetSdtInterval(v int64) *DvbSdtSettings { 5419 s.SdtInterval = &v 5420 return s 5421} 5422 5423// SetServiceName sets the ServiceName field's value. 5424func (s *DvbSdtSettings) SetServiceName(v string) *DvbSdtSettings { 5425 s.ServiceName = &v 5426 return s 5427} 5428 5429// SetServiceProviderName sets the ServiceProviderName field's value. 5430func (s *DvbSdtSettings) SetServiceProviderName(v string) *DvbSdtSettings { 5431 s.ServiceProviderName = &v 5432 return s 5433} 5434 5435// DVB-Sub Destination Settings 5436type DvbSubDestinationSettings struct { 5437 _ struct{} `type:"structure"` 5438 5439 // If no explicit x_position or y_position is provided, setting alignment to 5440 // centered will place the captions at the bottom center of the output. Similarly, 5441 // setting a left alignment will align captions to the bottom left of the output. 5442 // If x and y positions are given in conjunction with the alignment parameter, 5443 // the font will be justified (either left or centered) relative to those coordinates. 5444 // This option is not valid for source captions that are STL, 608/embedded or 5445 // teletext. These source settings are already pre-defined by the caption stream. 5446 // All burn-in and DVB-Sub font settings must match. 5447 // 5448 // Alignment is a required field 5449 Alignment *string `locationName:"alignment" type:"string" required:"true" enum:"DvbSubtitleAlignment"` 5450 5451 // Specifies the color of the rectangle behind the captions.All burn-in and 5452 // DVB-Sub font settings must match. 5453 BackgroundColor *string `locationName:"backgroundColor" type:"string" enum:"DvbSubtitleBackgroundColor"` 5454 5455 // Specifies the opacity of the background rectangle. 255 is opaque; 0 is transparent. 5456 // Leaving this parameter blank is equivalent to setting it to 0 (transparent). 5457 // All burn-in and DVB-Sub font settings must match. 5458 BackgroundOpacity *int64 `locationName:"backgroundOpacity" type:"integer"` 5459 5460 // Specifies the color of the burned-in captions. This option is not valid for 5461 // source captions that are STL, 608/embedded or teletext. These source settings 5462 // are already pre-defined by the caption stream. All burn-in and DVB-Sub font 5463 // settings must match. 5464 FontColor *string `locationName:"fontColor" type:"string" enum:"DvbSubtitleFontColor"` 5465 5466 // Specifies the opacity of the burned-in captions. 255 is opaque; 0 is transparent.All 5467 // burn-in and DVB-Sub font settings must match. 5468 // 5469 // FontOpacity is a required field 5470 FontOpacity *int64 `locationName:"fontOpacity" type:"integer" required:"true"` 5471 5472 // Font resolution in DPI (dots per inch); default is 96 dpi.All burn-in and 5473 // DVB-Sub font settings must match. 5474 FontResolution *int64 `locationName:"fontResolution" min:"96" type:"integer"` 5475 5476 // A positive integer indicates the exact font size in points. Set to 0 for 5477 // automatic font size selection. All burn-in and DVB-Sub font settings must 5478 // match. 5479 FontSize *int64 `locationName:"fontSize" type:"integer"` 5480 5481 // Specifies font outline color. This option is not valid for source captions 5482 // that are either 608/embedded or teletext. These source settings are already 5483 // pre-defined by the caption stream. All burn-in and DVB-Sub font settings 5484 // must match. 5485 // 5486 // OutlineColor is a required field 5487 OutlineColor *string `locationName:"outlineColor" type:"string" required:"true" enum:"DvbSubtitleOutlineColor"` 5488 5489 // Specifies font outline size in pixels. This option is not valid for source 5490 // captions that are either 608/embedded or teletext. These source settings 5491 // are already pre-defined by the caption stream. All burn-in and DVB-Sub font 5492 // settings must match. 5493 // 5494 // OutlineSize is a required field 5495 OutlineSize *int64 `locationName:"outlineSize" type:"integer" required:"true"` 5496 5497 // Specifies the color of the shadow cast by the captions.All burn-in and DVB-Sub 5498 // font settings must match. 5499 ShadowColor *string `locationName:"shadowColor" type:"string" enum:"DvbSubtitleShadowColor"` 5500 5501 // Specifies the opacity of the shadow. 255 is opaque; 0 is transparent. Leaving 5502 // this parameter blank is equivalent to setting it to 0 (transparent). All 5503 // burn-in and DVB-Sub font settings must match. 5504 ShadowOpacity *int64 `locationName:"shadowOpacity" type:"integer"` 5505 5506 // Specifies the horizontal offset of the shadow relative to the captions in 5507 // pixels. A value of -2 would result in a shadow offset 2 pixels to the left. 5508 // All burn-in and DVB-Sub font settings must match. 5509 ShadowXOffset *int64 `locationName:"shadowXOffset" type:"integer"` 5510 5511 // Specifies the vertical offset of the shadow relative to the captions in pixels. 5512 // A value of -2 would result in a shadow offset 2 pixels above the text. All 5513 // burn-in and DVB-Sub font settings must match. 5514 ShadowYOffset *int64 `locationName:"shadowYOffset" type:"integer"` 5515 5516 // Only applies to jobs with input captions in Teletext or STL formats. Specify 5517 // whether the spacing between letters in your captions is set by the captions 5518 // grid or varies depending on letter width. Choose fixed grid to conform to 5519 // the spacing specified in the captions file more accurately. Choose proportional 5520 // to make the text easier to read if the captions are closed caption. 5521 TeletextSpacing *string `locationName:"teletextSpacing" type:"string" enum:"DvbSubtitleTeletextSpacing"` 5522 5523 // Specifies the horizontal position of the caption relative to the left side 5524 // of the output in pixels. A value of 10 would result in the captions starting 5525 // 10 pixels from the left of the output. If no explicit x_position is provided, 5526 // the horizontal caption position will be determined by the alignment parameter. 5527 // This option is not valid for source captions that are STL, 608/embedded or 5528 // teletext. These source settings are already pre-defined by the caption stream. 5529 // All burn-in and DVB-Sub font settings must match. 5530 XPosition *int64 `locationName:"xPosition" type:"integer"` 5531 5532 // Specifies the vertical position of the caption relative to the top of the 5533 // output in pixels. A value of 10 would result in the captions starting 10 5534 // pixels from the top of the output. If no explicit y_position is provided, 5535 // the caption will be positioned towards the bottom of the output. This option 5536 // is not valid for source captions that are STL, 608/embedded or teletext. 5537 // These source settings are already pre-defined by the caption stream. All 5538 // burn-in and DVB-Sub font settings must match. 5539 YPosition *int64 `locationName:"yPosition" type:"integer"` 5540} 5541 5542// String returns the string representation 5543func (s DvbSubDestinationSettings) String() string { 5544 return awsutil.Prettify(s) 5545} 5546 5547// GoString returns the string representation 5548func (s DvbSubDestinationSettings) GoString() string { 5549 return s.String() 5550} 5551 5552// Validate inspects the fields of the type to determine if they are valid. 5553func (s *DvbSubDestinationSettings) Validate() error { 5554 invalidParams := request.ErrInvalidParams{Context: "DvbSubDestinationSettings"} 5555 if s.Alignment == nil { 5556 invalidParams.Add(request.NewErrParamRequired("Alignment")) 5557 } 5558 if s.FontOpacity == nil { 5559 invalidParams.Add(request.NewErrParamRequired("FontOpacity")) 5560 } 5561 if s.FontResolution != nil && *s.FontResolution < 96 { 5562 invalidParams.Add(request.NewErrParamMinValue("FontResolution", 96)) 5563 } 5564 if s.OutlineColor == nil { 5565 invalidParams.Add(request.NewErrParamRequired("OutlineColor")) 5566 } 5567 if s.OutlineSize == nil { 5568 invalidParams.Add(request.NewErrParamRequired("OutlineSize")) 5569 } 5570 if s.ShadowXOffset != nil && *s.ShadowXOffset < -2.147483648e+09 { 5571 invalidParams.Add(request.NewErrParamMinValue("ShadowXOffset", -2.147483648e+09)) 5572 } 5573 if s.ShadowYOffset != nil && *s.ShadowYOffset < -2.147483648e+09 { 5574 invalidParams.Add(request.NewErrParamMinValue("ShadowYOffset", -2.147483648e+09)) 5575 } 5576 5577 if invalidParams.Len() > 0 { 5578 return invalidParams 5579 } 5580 return nil 5581} 5582 5583// SetAlignment sets the Alignment field's value. 5584func (s *DvbSubDestinationSettings) SetAlignment(v string) *DvbSubDestinationSettings { 5585 s.Alignment = &v 5586 return s 5587} 5588 5589// SetBackgroundColor sets the BackgroundColor field's value. 5590func (s *DvbSubDestinationSettings) SetBackgroundColor(v string) *DvbSubDestinationSettings { 5591 s.BackgroundColor = &v 5592 return s 5593} 5594 5595// SetBackgroundOpacity sets the BackgroundOpacity field's value. 5596func (s *DvbSubDestinationSettings) SetBackgroundOpacity(v int64) *DvbSubDestinationSettings { 5597 s.BackgroundOpacity = &v 5598 return s 5599} 5600 5601// SetFontColor sets the FontColor field's value. 5602func (s *DvbSubDestinationSettings) SetFontColor(v string) *DvbSubDestinationSettings { 5603 s.FontColor = &v 5604 return s 5605} 5606 5607// SetFontOpacity sets the FontOpacity field's value. 5608func (s *DvbSubDestinationSettings) SetFontOpacity(v int64) *DvbSubDestinationSettings { 5609 s.FontOpacity = &v 5610 return s 5611} 5612 5613// SetFontResolution sets the FontResolution field's value. 5614func (s *DvbSubDestinationSettings) SetFontResolution(v int64) *DvbSubDestinationSettings { 5615 s.FontResolution = &v 5616 return s 5617} 5618 5619// SetFontSize sets the FontSize field's value. 5620func (s *DvbSubDestinationSettings) SetFontSize(v int64) *DvbSubDestinationSettings { 5621 s.FontSize = &v 5622 return s 5623} 5624 5625// SetOutlineColor sets the OutlineColor field's value. 5626func (s *DvbSubDestinationSettings) SetOutlineColor(v string) *DvbSubDestinationSettings { 5627 s.OutlineColor = &v 5628 return s 5629} 5630 5631// SetOutlineSize sets the OutlineSize field's value. 5632func (s *DvbSubDestinationSettings) SetOutlineSize(v int64) *DvbSubDestinationSettings { 5633 s.OutlineSize = &v 5634 return s 5635} 5636 5637// SetShadowColor sets the ShadowColor field's value. 5638func (s *DvbSubDestinationSettings) SetShadowColor(v string) *DvbSubDestinationSettings { 5639 s.ShadowColor = &v 5640 return s 5641} 5642 5643// SetShadowOpacity sets the ShadowOpacity field's value. 5644func (s *DvbSubDestinationSettings) SetShadowOpacity(v int64) *DvbSubDestinationSettings { 5645 s.ShadowOpacity = &v 5646 return s 5647} 5648 5649// SetShadowXOffset sets the ShadowXOffset field's value. 5650func (s *DvbSubDestinationSettings) SetShadowXOffset(v int64) *DvbSubDestinationSettings { 5651 s.ShadowXOffset = &v 5652 return s 5653} 5654 5655// SetShadowYOffset sets the ShadowYOffset field's value. 5656func (s *DvbSubDestinationSettings) SetShadowYOffset(v int64) *DvbSubDestinationSettings { 5657 s.ShadowYOffset = &v 5658 return s 5659} 5660 5661// SetTeletextSpacing sets the TeletextSpacing field's value. 5662func (s *DvbSubDestinationSettings) SetTeletextSpacing(v string) *DvbSubDestinationSettings { 5663 s.TeletextSpacing = &v 5664 return s 5665} 5666 5667// SetXPosition sets the XPosition field's value. 5668func (s *DvbSubDestinationSettings) SetXPosition(v int64) *DvbSubDestinationSettings { 5669 s.XPosition = &v 5670 return s 5671} 5672 5673// SetYPosition sets the YPosition field's value. 5674func (s *DvbSubDestinationSettings) SetYPosition(v int64) *DvbSubDestinationSettings { 5675 s.YPosition = &v 5676 return s 5677} 5678 5679// DVB Sub Source Settings 5680type DvbSubSourceSettings struct { 5681 _ struct{} `type:"structure"` 5682 5683 // When using DVB-Sub with Burn-In or SMPTE-TT, use this PID for the source 5684 // content. Unused for DVB-Sub passthrough. All DVB-Sub content is passed through, 5685 // regardless of selectors. 5686 Pid *int64 `locationName:"pid" min:"1" type:"integer"` 5687} 5688 5689// String returns the string representation 5690func (s DvbSubSourceSettings) String() string { 5691 return awsutil.Prettify(s) 5692} 5693 5694// GoString returns the string representation 5695func (s DvbSubSourceSettings) GoString() string { 5696 return s.String() 5697} 5698 5699// Validate inspects the fields of the type to determine if they are valid. 5700func (s *DvbSubSourceSettings) Validate() error { 5701 invalidParams := request.ErrInvalidParams{Context: "DvbSubSourceSettings"} 5702 if s.Pid != nil && *s.Pid < 1 { 5703 invalidParams.Add(request.NewErrParamMinValue("Pid", 1)) 5704 } 5705 5706 if invalidParams.Len() > 0 { 5707 return invalidParams 5708 } 5709 return nil 5710} 5711 5712// SetPid sets the Pid field's value. 5713func (s *DvbSubSourceSettings) SetPid(v int64) *DvbSubSourceSettings { 5714 s.Pid = &v 5715 return s 5716} 5717 5718// Inserts DVB Time and Date Table (TDT) at the specified table repetition interval. 5719type DvbTdtSettings struct { 5720 _ struct{} `type:"structure"` 5721 5722 // The number of milliseconds between instances of this table in the output 5723 // transport stream. 5724 // 5725 // TdtInterval is a required field 5726 TdtInterval *int64 `locationName:"tdtInterval" min:"1000" type:"integer" required:"true"` 5727} 5728 5729// String returns the string representation 5730func (s DvbTdtSettings) String() string { 5731 return awsutil.Prettify(s) 5732} 5733 5734// GoString returns the string representation 5735func (s DvbTdtSettings) GoString() string { 5736 return s.String() 5737} 5738 5739// Validate inspects the fields of the type to determine if they are valid. 5740func (s *DvbTdtSettings) Validate() error { 5741 invalidParams := request.ErrInvalidParams{Context: "DvbTdtSettings"} 5742 if s.TdtInterval == nil { 5743 invalidParams.Add(request.NewErrParamRequired("TdtInterval")) 5744 } 5745 if s.TdtInterval != nil && *s.TdtInterval < 1000 { 5746 invalidParams.Add(request.NewErrParamMinValue("TdtInterval", 1000)) 5747 } 5748 5749 if invalidParams.Len() > 0 { 5750 return invalidParams 5751 } 5752 return nil 5753} 5754 5755// SetTdtInterval sets the TdtInterval field's value. 5756func (s *DvbTdtSettings) SetTdtInterval(v int64) *DvbTdtSettings { 5757 s.TdtInterval = &v 5758 return s 5759} 5760 5761// Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to 5762// the value EAC3. 5763type Eac3Settings struct { 5764 _ struct{} `type:"structure"` 5765 5766 // If set to ATTENUATE_3_DB, applies a 3 dB attenuation to the surround channels. 5767 // Only used for 3/2 coding mode. 5768 AttenuationControl *string `locationName:"attenuationControl" type:"string" enum:"Eac3AttenuationControl"` 5769 5770 // Average bitrate in bits/second. Valid bitrates depend on the coding mode. 5771 Bitrate *int64 `locationName:"bitrate" min:"64000" type:"integer"` 5772 5773 // Specifies the "Bitstream Mode" (bsmod) for the emitted E-AC-3 stream. See 5774 // ATSC A/52-2012 (Annex E) for background on these values. 5775 BitstreamMode *string `locationName:"bitstreamMode" type:"string" enum:"Eac3BitstreamMode"` 5776 5777 // Dolby Digital Plus coding mode. Determines number of channels. 5778 CodingMode *string `locationName:"codingMode" type:"string" enum:"Eac3CodingMode"` 5779 5780 // Activates a DC highpass filter for all input channels. 5781 DcFilter *string `locationName:"dcFilter" type:"string" enum:"Eac3DcFilter"` 5782 5783 // Sets the dialnorm for the output. If blank and input audio is Dolby Digital 5784 // Plus, dialnorm will be passed through. 5785 Dialnorm *int64 `locationName:"dialnorm" min:"1" type:"integer"` 5786 5787 // Enables Dynamic Range Compression that restricts the absolute peak level 5788 // for a signal. 5789 DynamicRangeCompressionLine *string `locationName:"dynamicRangeCompressionLine" type:"string" enum:"Eac3DynamicRangeCompressionLine"` 5790 5791 // Enables Heavy Dynamic Range Compression, ensures that the instantaneous signal 5792 // peaks do not exceed specified levels. 5793 DynamicRangeCompressionRf *string `locationName:"dynamicRangeCompressionRf" type:"string" enum:"Eac3DynamicRangeCompressionRf"` 5794 5795 // When encoding 3/2 audio, controls whether the LFE channel is enabled 5796 LfeControl *string `locationName:"lfeControl" type:"string" enum:"Eac3LfeControl"` 5797 5798 // Applies a 120Hz lowpass filter to the LFE channel prior to encoding. Only 5799 // valid with 3_2_LFE coding mode. 5800 LfeFilter *string `locationName:"lfeFilter" type:"string" enum:"Eac3LfeFilter"` 5801 5802 // Left only/Right only center mix level. Only used for 3/2 coding mode.Valid 5803 // values: 3.0, 1.5, 0.0, -1.5 -3.0 -4.5 -6.0 -60 5804 LoRoCenterMixLevel *float64 `locationName:"loRoCenterMixLevel" type:"double"` 5805 5806 // Left only/Right only surround mix level. Only used for 3/2 coding mode.Valid 5807 // values: -1.5 -3.0 -4.5 -6.0 -60 5808 LoRoSurroundMixLevel *float64 `locationName:"loRoSurroundMixLevel" type:"double"` 5809 5810 // Left total/Right total center mix level. Only used for 3/2 coding mode.Valid 5811 // values: 3.0, 1.5, 0.0, -1.5 -3.0 -4.5 -6.0 -60 5812 LtRtCenterMixLevel *float64 `locationName:"ltRtCenterMixLevel" type:"double"` 5813 5814 // Left total/Right total surround mix level. Only used for 3/2 coding mode.Valid 5815 // values: -1.5 -3.0 -4.5 -6.0 -60 5816 LtRtSurroundMixLevel *float64 `locationName:"ltRtSurroundMixLevel" type:"double"` 5817 5818 // When set to FOLLOW_INPUT, encoder metadata will be sourced from the DD, DD+, 5819 // or DolbyE decoder that supplied this audio data. If audio was not supplied 5820 // from one of these streams, then the static metadata settings will be used. 5821 MetadataControl *string `locationName:"metadataControl" type:"string" enum:"Eac3MetadataControl"` 5822 5823 // When set to WHEN_POSSIBLE, input DD+ audio will be passed through if it is 5824 // present on the input. this detection is dynamic over the life of the transcode. 5825 // Inputs that alternate between DD+ and non-DD+ content will have a consistent 5826 // DD+ output as the system alternates between passthrough and encoding. 5827 PassthroughControl *string `locationName:"passthroughControl" type:"string" enum:"Eac3PassthroughControl"` 5828 5829 // Controls the amount of phase-shift applied to the surround channels. Only 5830 // used for 3/2 coding mode. 5831 PhaseControl *string `locationName:"phaseControl" type:"string" enum:"Eac3PhaseControl"` 5832 5833 // Sample rate in hz. Sample rate is always 48000. 5834 SampleRate *int64 `locationName:"sampleRate" min:"48000" type:"integer"` 5835 5836 // Stereo downmix preference. Only used for 3/2 coding mode. 5837 StereoDownmix *string `locationName:"stereoDownmix" type:"string" enum:"Eac3StereoDownmix"` 5838 5839 // When encoding 3/2 audio, sets whether an extra center back surround channel 5840 // is matrix encoded into the left and right surround channels. 5841 SurroundExMode *string `locationName:"surroundExMode" type:"string" enum:"Eac3SurroundExMode"` 5842 5843 // When encoding 2/0 audio, sets whether Dolby Surround is matrix encoded into 5844 // the two channels. 5845 SurroundMode *string `locationName:"surroundMode" type:"string" enum:"Eac3SurroundMode"` 5846} 5847 5848// String returns the string representation 5849func (s Eac3Settings) String() string { 5850 return awsutil.Prettify(s) 5851} 5852 5853// GoString returns the string representation 5854func (s Eac3Settings) GoString() string { 5855 return s.String() 5856} 5857 5858// Validate inspects the fields of the type to determine if they are valid. 5859func (s *Eac3Settings) Validate() error { 5860 invalidParams := request.ErrInvalidParams{Context: "Eac3Settings"} 5861 if s.Bitrate != nil && *s.Bitrate < 64000 { 5862 invalidParams.Add(request.NewErrParamMinValue("Bitrate", 64000)) 5863 } 5864 if s.Dialnorm != nil && *s.Dialnorm < 1 { 5865 invalidParams.Add(request.NewErrParamMinValue("Dialnorm", 1)) 5866 } 5867 if s.SampleRate != nil && *s.SampleRate < 48000 { 5868 invalidParams.Add(request.NewErrParamMinValue("SampleRate", 48000)) 5869 } 5870 5871 if invalidParams.Len() > 0 { 5872 return invalidParams 5873 } 5874 return nil 5875} 5876 5877// SetAttenuationControl sets the AttenuationControl field's value. 5878func (s *Eac3Settings) SetAttenuationControl(v string) *Eac3Settings { 5879 s.AttenuationControl = &v 5880 return s 5881} 5882 5883// SetBitrate sets the Bitrate field's value. 5884func (s *Eac3Settings) SetBitrate(v int64) *Eac3Settings { 5885 s.Bitrate = &v 5886 return s 5887} 5888 5889// SetBitstreamMode sets the BitstreamMode field's value. 5890func (s *Eac3Settings) SetBitstreamMode(v string) *Eac3Settings { 5891 s.BitstreamMode = &v 5892 return s 5893} 5894 5895// SetCodingMode sets the CodingMode field's value. 5896func (s *Eac3Settings) SetCodingMode(v string) *Eac3Settings { 5897 s.CodingMode = &v 5898 return s 5899} 5900 5901// SetDcFilter sets the DcFilter field's value. 5902func (s *Eac3Settings) SetDcFilter(v string) *Eac3Settings { 5903 s.DcFilter = &v 5904 return s 5905} 5906 5907// SetDialnorm sets the Dialnorm field's value. 5908func (s *Eac3Settings) SetDialnorm(v int64) *Eac3Settings { 5909 s.Dialnorm = &v 5910 return s 5911} 5912 5913// SetDynamicRangeCompressionLine sets the DynamicRangeCompressionLine field's value. 5914func (s *Eac3Settings) SetDynamicRangeCompressionLine(v string) *Eac3Settings { 5915 s.DynamicRangeCompressionLine = &v 5916 return s 5917} 5918 5919// SetDynamicRangeCompressionRf sets the DynamicRangeCompressionRf field's value. 5920func (s *Eac3Settings) SetDynamicRangeCompressionRf(v string) *Eac3Settings { 5921 s.DynamicRangeCompressionRf = &v 5922 return s 5923} 5924 5925// SetLfeControl sets the LfeControl field's value. 5926func (s *Eac3Settings) SetLfeControl(v string) *Eac3Settings { 5927 s.LfeControl = &v 5928 return s 5929} 5930 5931// SetLfeFilter sets the LfeFilter field's value. 5932func (s *Eac3Settings) SetLfeFilter(v string) *Eac3Settings { 5933 s.LfeFilter = &v 5934 return s 5935} 5936 5937// SetLoRoCenterMixLevel sets the LoRoCenterMixLevel field's value. 5938func (s *Eac3Settings) SetLoRoCenterMixLevel(v float64) *Eac3Settings { 5939 s.LoRoCenterMixLevel = &v 5940 return s 5941} 5942 5943// SetLoRoSurroundMixLevel sets the LoRoSurroundMixLevel field's value. 5944func (s *Eac3Settings) SetLoRoSurroundMixLevel(v float64) *Eac3Settings { 5945 s.LoRoSurroundMixLevel = &v 5946 return s 5947} 5948 5949// SetLtRtCenterMixLevel sets the LtRtCenterMixLevel field's value. 5950func (s *Eac3Settings) SetLtRtCenterMixLevel(v float64) *Eac3Settings { 5951 s.LtRtCenterMixLevel = &v 5952 return s 5953} 5954 5955// SetLtRtSurroundMixLevel sets the LtRtSurroundMixLevel field's value. 5956func (s *Eac3Settings) SetLtRtSurroundMixLevel(v float64) *Eac3Settings { 5957 s.LtRtSurroundMixLevel = &v 5958 return s 5959} 5960 5961// SetMetadataControl sets the MetadataControl field's value. 5962func (s *Eac3Settings) SetMetadataControl(v string) *Eac3Settings { 5963 s.MetadataControl = &v 5964 return s 5965} 5966 5967// SetPassthroughControl sets the PassthroughControl field's value. 5968func (s *Eac3Settings) SetPassthroughControl(v string) *Eac3Settings { 5969 s.PassthroughControl = &v 5970 return s 5971} 5972 5973// SetPhaseControl sets the PhaseControl field's value. 5974func (s *Eac3Settings) SetPhaseControl(v string) *Eac3Settings { 5975 s.PhaseControl = &v 5976 return s 5977} 5978 5979// SetSampleRate sets the SampleRate field's value. 5980func (s *Eac3Settings) SetSampleRate(v int64) *Eac3Settings { 5981 s.SampleRate = &v 5982 return s 5983} 5984 5985// SetStereoDownmix sets the StereoDownmix field's value. 5986func (s *Eac3Settings) SetStereoDownmix(v string) *Eac3Settings { 5987 s.StereoDownmix = &v 5988 return s 5989} 5990 5991// SetSurroundExMode sets the SurroundExMode field's value. 5992func (s *Eac3Settings) SetSurroundExMode(v string) *Eac3Settings { 5993 s.SurroundExMode = &v 5994 return s 5995} 5996 5997// SetSurroundMode sets the SurroundMode field's value. 5998func (s *Eac3Settings) SetSurroundMode(v string) *Eac3Settings { 5999 s.SurroundMode = &v 6000 return s 6001} 6002 6003// Settings for embedded captions Source 6004type EmbeddedSourceSettings struct { 6005 _ struct{} `type:"structure"` 6006 6007 // When set to UPCONVERT, 608 data is both passed through via the "608 compatibility 6008 // bytes" fields of the 708 wrapper as well as translated into 708. 708 data 6009 // present in the source content will be discarded. 6010 Convert608To708 *string `locationName:"convert608To708" type:"string" enum:"EmbeddedConvert608To708"` 6011 6012 // Specifies the 608/708 channel number within the video track from which to 6013 // extract captions. Unused for passthrough. 6014 Source608ChannelNumber *int64 `locationName:"source608ChannelNumber" min:"1" type:"integer"` 6015 6016 // Specifies the video track index used for extracting captions. The system 6017 // only supports one input video track, so this should always be set to '1'. 6018 Source608TrackNumber *int64 `locationName:"source608TrackNumber" min:"1" type:"integer"` 6019} 6020 6021// String returns the string representation 6022func (s EmbeddedSourceSettings) String() string { 6023 return awsutil.Prettify(s) 6024} 6025 6026// GoString returns the string representation 6027func (s EmbeddedSourceSettings) GoString() string { 6028 return s.String() 6029} 6030 6031// Validate inspects the fields of the type to determine if they are valid. 6032func (s *EmbeddedSourceSettings) Validate() error { 6033 invalidParams := request.ErrInvalidParams{Context: "EmbeddedSourceSettings"} 6034 if s.Source608ChannelNumber != nil && *s.Source608ChannelNumber < 1 { 6035 invalidParams.Add(request.NewErrParamMinValue("Source608ChannelNumber", 1)) 6036 } 6037 if s.Source608TrackNumber != nil && *s.Source608TrackNumber < 1 { 6038 invalidParams.Add(request.NewErrParamMinValue("Source608TrackNumber", 1)) 6039 } 6040 6041 if invalidParams.Len() > 0 { 6042 return invalidParams 6043 } 6044 return nil 6045} 6046 6047// SetConvert608To708 sets the Convert608To708 field's value. 6048func (s *EmbeddedSourceSettings) SetConvert608To708(v string) *EmbeddedSourceSettings { 6049 s.Convert608To708 = &v 6050 return s 6051} 6052 6053// SetSource608ChannelNumber sets the Source608ChannelNumber field's value. 6054func (s *EmbeddedSourceSettings) SetSource608ChannelNumber(v int64) *EmbeddedSourceSettings { 6055 s.Source608ChannelNumber = &v 6056 return s 6057} 6058 6059// SetSource608TrackNumber sets the Source608TrackNumber field's value. 6060func (s *EmbeddedSourceSettings) SetSource608TrackNumber(v int64) *EmbeddedSourceSettings { 6061 s.Source608TrackNumber = &v 6062 return s 6063} 6064 6065// Describes account specific API endpoint 6066type Endpoint struct { 6067 _ struct{} `type:"structure"` 6068 6069 // URL of endpoint 6070 Url *string `locationName:"url" type:"string"` 6071} 6072 6073// String returns the string representation 6074func (s Endpoint) String() string { 6075 return awsutil.Prettify(s) 6076} 6077 6078// GoString returns the string representation 6079func (s Endpoint) GoString() string { 6080 return s.String() 6081} 6082 6083// SetUrl sets the Url field's value. 6084func (s *Endpoint) SetUrl(v string) *Endpoint { 6085 s.Url = &v 6086 return s 6087} 6088 6089// Settings for F4v container 6090type F4vSettings struct { 6091 _ struct{} `type:"structure"` 6092 6093 // If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning 6094 // of the archive as required for progressive downloading. Otherwise it is placed 6095 // normally at the end. 6096 MoovPlacement *string `locationName:"moovPlacement" type:"string" enum:"F4vMoovPlacement"` 6097} 6098 6099// String returns the string representation 6100func (s F4vSettings) String() string { 6101 return awsutil.Prettify(s) 6102} 6103 6104// GoString returns the string representation 6105func (s F4vSettings) GoString() string { 6106 return s.String() 6107} 6108 6109// SetMoovPlacement sets the MoovPlacement field's value. 6110func (s *F4vSettings) SetMoovPlacement(v string) *F4vSettings { 6111 s.MoovPlacement = &v 6112 return s 6113} 6114 6115// Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to 6116// FILE_GROUP_SETTINGS. 6117type FileGroupSettings struct { 6118 _ struct{} `type:"structure"` 6119 6120 // Use Destination (Destination) to specify the S3 output location and the output 6121 // filename base. Destination accepts format identifiers. If you do not specify 6122 // the base filename in the URI, the service will use the filename of the input 6123 // file. If your job has multiple inputs, the service uses the filename of the 6124 // first input file. 6125 Destination *string `locationName:"destination" type:"string"` 6126} 6127 6128// String returns the string representation 6129func (s FileGroupSettings) String() string { 6130 return awsutil.Prettify(s) 6131} 6132 6133// GoString returns the string representation 6134func (s FileGroupSettings) GoString() string { 6135 return s.String() 6136} 6137 6138// SetDestination sets the Destination field's value. 6139func (s *FileGroupSettings) SetDestination(v string) *FileGroupSettings { 6140 s.Destination = &v 6141 return s 6142} 6143 6144// Settings for File-based Captions in Source 6145type FileSourceSettings struct { 6146 _ struct{} `type:"structure"` 6147 6148 // If set to UPCONVERT, 608 caption data is both passed through via the "608 6149 // compatibility bytes" fields of the 708 wrapper as well as translated into 6150 // 708. 708 data present in the source content will be discarded. 6151 Convert608To708 *string `locationName:"convert608To708" type:"string" enum:"FileSourceConvert608To708"` 6152 6153 // External caption file used for loading captions. Accepted file extensions 6154 // are 'scc', 'ttml', 'dfxp', 'stl', 'srt', and 'smi'. 6155 // 6156 // SourceFile is a required field 6157 SourceFile *string `locationName:"sourceFile" min:"14" type:"string" required:"true"` 6158 6159 // Specifies a time delta in seconds to offset the captions from the source 6160 // file. 6161 TimeDelta *int64 `locationName:"timeDelta" type:"integer"` 6162} 6163 6164// String returns the string representation 6165func (s FileSourceSettings) String() string { 6166 return awsutil.Prettify(s) 6167} 6168 6169// GoString returns the string representation 6170func (s FileSourceSettings) GoString() string { 6171 return s.String() 6172} 6173 6174// Validate inspects the fields of the type to determine if they are valid. 6175func (s *FileSourceSettings) Validate() error { 6176 invalidParams := request.ErrInvalidParams{Context: "FileSourceSettings"} 6177 if s.SourceFile == nil { 6178 invalidParams.Add(request.NewErrParamRequired("SourceFile")) 6179 } 6180 if s.SourceFile != nil && len(*s.SourceFile) < 14 { 6181 invalidParams.Add(request.NewErrParamMinLen("SourceFile", 14)) 6182 } 6183 if s.TimeDelta != nil && *s.TimeDelta < -2.147483648e+09 { 6184 invalidParams.Add(request.NewErrParamMinValue("TimeDelta", -2.147483648e+09)) 6185 } 6186 6187 if invalidParams.Len() > 0 { 6188 return invalidParams 6189 } 6190 return nil 6191} 6192 6193// SetConvert608To708 sets the Convert608To708 field's value. 6194func (s *FileSourceSettings) SetConvert608To708(v string) *FileSourceSettings { 6195 s.Convert608To708 = &v 6196 return s 6197} 6198 6199// SetSourceFile sets the SourceFile field's value. 6200func (s *FileSourceSettings) SetSourceFile(v string) *FileSourceSettings { 6201 s.SourceFile = &v 6202 return s 6203} 6204 6205// SetTimeDelta sets the TimeDelta field's value. 6206func (s *FileSourceSettings) SetTimeDelta(v int64) *FileSourceSettings { 6207 s.TimeDelta = &v 6208 return s 6209} 6210 6211// Required when you set (Codec) under (VideoDescription)>(CodecSettings) to 6212// the value FRAME_CAPTURE. 6213type FrameCaptureSettings struct { 6214 _ struct{} `type:"structure"` 6215 6216 // Frame capture will encode the first frame of the output stream, then one 6217 // frame every framerateDenominator/framerateNumerator seconds. For example, 6218 // settings of framerateNumerator = 1 and framerateDenominator = 3 (a rate of 6219 // 1/3 frame per second) will capture the first frame, then 1 frame every 3s. 6220 // Files will be named as filename.n.jpg where n is the 0-based sequence number 6221 // of each Capture. 6222 FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"` 6223 6224 // Frame capture will encode the first frame of the output stream, then one 6225 // frame every framerateDenominator/framerateNumerator seconds. For example, 6226 // settings of framerateNumerator = 1 and framerateDenominator = 3 (a rate of 6227 // 1/3 frame per second) will capture the first frame, then 1 frame every 3s. 6228 // Files will be named as filename.NNNNNNN.jpg where N is the 0-based frame 6229 // sequence number zero padded to 7 decimal places. 6230 FramerateNumerator *int64 `locationName:"framerateNumerator" min:"1" type:"integer"` 6231 6232 // Maximum number of captures (encoded jpg output files). 6233 MaxCaptures *int64 `locationName:"maxCaptures" min:"1" type:"integer"` 6234 6235 // JPEG Quality - a higher value equals higher quality. 6236 Quality *int64 `locationName:"quality" min:"1" type:"integer"` 6237} 6238 6239// String returns the string representation 6240func (s FrameCaptureSettings) String() string { 6241 return awsutil.Prettify(s) 6242} 6243 6244// GoString returns the string representation 6245func (s FrameCaptureSettings) GoString() string { 6246 return s.String() 6247} 6248 6249// Validate inspects the fields of the type to determine if they are valid. 6250func (s *FrameCaptureSettings) Validate() error { 6251 invalidParams := request.ErrInvalidParams{Context: "FrameCaptureSettings"} 6252 if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 { 6253 invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1)) 6254 } 6255 if s.FramerateNumerator != nil && *s.FramerateNumerator < 1 { 6256 invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 1)) 6257 } 6258 if s.MaxCaptures != nil && *s.MaxCaptures < 1 { 6259 invalidParams.Add(request.NewErrParamMinValue("MaxCaptures", 1)) 6260 } 6261 if s.Quality != nil && *s.Quality < 1 { 6262 invalidParams.Add(request.NewErrParamMinValue("Quality", 1)) 6263 } 6264 6265 if invalidParams.Len() > 0 { 6266 return invalidParams 6267 } 6268 return nil 6269} 6270 6271// SetFramerateDenominator sets the FramerateDenominator field's value. 6272func (s *FrameCaptureSettings) SetFramerateDenominator(v int64) *FrameCaptureSettings { 6273 s.FramerateDenominator = &v 6274 return s 6275} 6276 6277// SetFramerateNumerator sets the FramerateNumerator field's value. 6278func (s *FrameCaptureSettings) SetFramerateNumerator(v int64) *FrameCaptureSettings { 6279 s.FramerateNumerator = &v 6280 return s 6281} 6282 6283// SetMaxCaptures sets the MaxCaptures field's value. 6284func (s *FrameCaptureSettings) SetMaxCaptures(v int64) *FrameCaptureSettings { 6285 s.MaxCaptures = &v 6286 return s 6287} 6288 6289// SetQuality sets the Quality field's value. 6290func (s *FrameCaptureSettings) SetQuality(v int64) *FrameCaptureSettings { 6291 s.Quality = &v 6292 return s 6293} 6294 6295// Query a job by sending a request with the job ID. 6296type GetJobInput struct { 6297 _ struct{} `type:"structure"` 6298 6299 // the job ID of the job. 6300 // 6301 // Id is a required field 6302 Id *string `location:"uri" locationName:"id" type:"string" required:"true"` 6303} 6304 6305// String returns the string representation 6306func (s GetJobInput) String() string { 6307 return awsutil.Prettify(s) 6308} 6309 6310// GoString returns the string representation 6311func (s GetJobInput) GoString() string { 6312 return s.String() 6313} 6314 6315// Validate inspects the fields of the type to determine if they are valid. 6316func (s *GetJobInput) Validate() error { 6317 invalidParams := request.ErrInvalidParams{Context: "GetJobInput"} 6318 if s.Id == nil { 6319 invalidParams.Add(request.NewErrParamRequired("Id")) 6320 } 6321 6322 if invalidParams.Len() > 0 { 6323 return invalidParams 6324 } 6325 return nil 6326} 6327 6328// SetId sets the Id field's value. 6329func (s *GetJobInput) SetId(v string) *GetJobInput { 6330 s.Id = &v 6331 return s 6332} 6333 6334// Successful get job requests will return an OK message and the job JSON. 6335type GetJobOutput struct { 6336 _ struct{} `type:"structure"` 6337 6338 // Each job converts an input file into an output file or files. For more information, 6339 // see the User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html 6340 Job *Job `locationName:"job" type:"structure"` 6341} 6342 6343// String returns the string representation 6344func (s GetJobOutput) String() string { 6345 return awsutil.Prettify(s) 6346} 6347 6348// GoString returns the string representation 6349func (s GetJobOutput) GoString() string { 6350 return s.String() 6351} 6352 6353// SetJob sets the Job field's value. 6354func (s *GetJobOutput) SetJob(v *Job) *GetJobOutput { 6355 s.Job = v 6356 return s 6357} 6358 6359// Query a job template by sending a request with the job template name. 6360type GetJobTemplateInput struct { 6361 _ struct{} `type:"structure"` 6362 6363 // The name of the job template. 6364 // 6365 // Name is a required field 6366 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 6367} 6368 6369// String returns the string representation 6370func (s GetJobTemplateInput) String() string { 6371 return awsutil.Prettify(s) 6372} 6373 6374// GoString returns the string representation 6375func (s GetJobTemplateInput) GoString() string { 6376 return s.String() 6377} 6378 6379// Validate inspects the fields of the type to determine if they are valid. 6380func (s *GetJobTemplateInput) Validate() error { 6381 invalidParams := request.ErrInvalidParams{Context: "GetJobTemplateInput"} 6382 if s.Name == nil { 6383 invalidParams.Add(request.NewErrParamRequired("Name")) 6384 } 6385 6386 if invalidParams.Len() > 0 { 6387 return invalidParams 6388 } 6389 return nil 6390} 6391 6392// SetName sets the Name field's value. 6393func (s *GetJobTemplateInput) SetName(v string) *GetJobTemplateInput { 6394 s.Name = &v 6395 return s 6396} 6397 6398// Successful get job template requests will return an OK message and the job 6399// template JSON. 6400type GetJobTemplateOutput struct { 6401 _ struct{} `type:"structure"` 6402 6403 // A job template is a pre-made set of encoding instructions that you can use 6404 // to quickly create a job. 6405 JobTemplate *JobTemplate `locationName:"jobTemplate" type:"structure"` 6406} 6407 6408// String returns the string representation 6409func (s GetJobTemplateOutput) String() string { 6410 return awsutil.Prettify(s) 6411} 6412 6413// GoString returns the string representation 6414func (s GetJobTemplateOutput) GoString() string { 6415 return s.String() 6416} 6417 6418// SetJobTemplate sets the JobTemplate field's value. 6419func (s *GetJobTemplateOutput) SetJobTemplate(v *JobTemplate) *GetJobTemplateOutput { 6420 s.JobTemplate = v 6421 return s 6422} 6423 6424// Query a preset by sending a request with the preset name. 6425type GetPresetInput struct { 6426 _ struct{} `type:"structure"` 6427 6428 // The name of the preset. 6429 // 6430 // Name is a required field 6431 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 6432} 6433 6434// String returns the string representation 6435func (s GetPresetInput) String() string { 6436 return awsutil.Prettify(s) 6437} 6438 6439// GoString returns the string representation 6440func (s GetPresetInput) GoString() string { 6441 return s.String() 6442} 6443 6444// Validate inspects the fields of the type to determine if they are valid. 6445func (s *GetPresetInput) Validate() error { 6446 invalidParams := request.ErrInvalidParams{Context: "GetPresetInput"} 6447 if s.Name == nil { 6448 invalidParams.Add(request.NewErrParamRequired("Name")) 6449 } 6450 6451 if invalidParams.Len() > 0 { 6452 return invalidParams 6453 } 6454 return nil 6455} 6456 6457// SetName sets the Name field's value. 6458func (s *GetPresetInput) SetName(v string) *GetPresetInput { 6459 s.Name = &v 6460 return s 6461} 6462 6463// Successful get preset requests will return an OK message and the preset JSON. 6464type GetPresetOutput struct { 6465 _ struct{} `type:"structure"` 6466 6467 // A preset is a collection of preconfigured media conversion settings that 6468 // you want MediaConvert to apply to the output during the conversion process. 6469 Preset *Preset `locationName:"preset" type:"structure"` 6470} 6471 6472// String returns the string representation 6473func (s GetPresetOutput) String() string { 6474 return awsutil.Prettify(s) 6475} 6476 6477// GoString returns the string representation 6478func (s GetPresetOutput) GoString() string { 6479 return s.String() 6480} 6481 6482// SetPreset sets the Preset field's value. 6483func (s *GetPresetOutput) SetPreset(v *Preset) *GetPresetOutput { 6484 s.Preset = v 6485 return s 6486} 6487 6488// Query a queue by sending a request with the queue name. 6489type GetQueueInput struct { 6490 _ struct{} `type:"structure"` 6491 6492 // The name of the queue. 6493 // 6494 // Name is a required field 6495 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 6496} 6497 6498// String returns the string representation 6499func (s GetQueueInput) String() string { 6500 return awsutil.Prettify(s) 6501} 6502 6503// GoString returns the string representation 6504func (s GetQueueInput) GoString() string { 6505 return s.String() 6506} 6507 6508// Validate inspects the fields of the type to determine if they are valid. 6509func (s *GetQueueInput) Validate() error { 6510 invalidParams := request.ErrInvalidParams{Context: "GetQueueInput"} 6511 if s.Name == nil { 6512 invalidParams.Add(request.NewErrParamRequired("Name")) 6513 } 6514 6515 if invalidParams.Len() > 0 { 6516 return invalidParams 6517 } 6518 return nil 6519} 6520 6521// SetName sets the Name field's value. 6522func (s *GetQueueInput) SetName(v string) *GetQueueInput { 6523 s.Name = &v 6524 return s 6525} 6526 6527// Successful get queue requests will return an OK message and the queue JSON. 6528type GetQueueOutput struct { 6529 _ struct{} `type:"structure"` 6530 6531 // MediaConvert jobs are submitted to a queue. Unless specified otherwise jobs 6532 // are submitted to a built-in default queue. User can create additional queues 6533 // to separate the jobs of different categories or priority. 6534 Queue *Queue `locationName:"queue" type:"structure"` 6535} 6536 6537// String returns the string representation 6538func (s GetQueueOutput) String() string { 6539 return awsutil.Prettify(s) 6540} 6541 6542// GoString returns the string representation 6543func (s GetQueueOutput) GoString() string { 6544 return s.String() 6545} 6546 6547// SetQueue sets the Queue field's value. 6548func (s *GetQueueOutput) SetQueue(v *Queue) *GetQueueOutput { 6549 s.Queue = v 6550 return s 6551} 6552 6553// Settings for quality-defined variable bitrate encoding with the H.264 codec. 6554// Required when you set Rate control mode to QVBR. Not valid when you set Rate 6555// control mode to a value other than QVBR, or when you don't define Rate control 6556// mode. 6557type H264QvbrSettings struct { 6558 _ struct{} `type:"structure"` 6559 6560 // Use this setting only when Rate control mode is QVBR and Quality tuning level 6561 // is Multi-pass HQ. For Max average bitrate values suited to the complexity 6562 // of your input video, the service limits the average bitrate of the video 6563 // part of this output to the value you choose. That is, the total size of the 6564 // video element is less than or equal to the value you set multiplied by the 6565 // number of seconds of encoded output. 6566 MaxAverageBitrate *int64 `locationName:"maxAverageBitrate" min:"1000" type:"integer"` 6567 6568 // Required when you use QVBR rate control mode. That is, when you specify qvbrSettings 6569 // within h264Settings. Specify the target quality level for this output, from 6570 // 1 to 10. Use higher numbers for greater quality. Level 10 results in nearly 6571 // lossless compression. The quality level for most broadcast-quality transcodes 6572 // is between 6 and 9. 6573 // 6574 // QvbrQualityLevel is a required field 6575 QvbrQualityLevel *int64 `locationName:"qvbrQualityLevel" min:"1" type:"integer" required:"true"` 6576} 6577 6578// String returns the string representation 6579func (s H264QvbrSettings) String() string { 6580 return awsutil.Prettify(s) 6581} 6582 6583// GoString returns the string representation 6584func (s H264QvbrSettings) GoString() string { 6585 return s.String() 6586} 6587 6588// Validate inspects the fields of the type to determine if they are valid. 6589func (s *H264QvbrSettings) Validate() error { 6590 invalidParams := request.ErrInvalidParams{Context: "H264QvbrSettings"} 6591 if s.MaxAverageBitrate != nil && *s.MaxAverageBitrate < 1000 { 6592 invalidParams.Add(request.NewErrParamMinValue("MaxAverageBitrate", 1000)) 6593 } 6594 if s.QvbrQualityLevel == nil { 6595 invalidParams.Add(request.NewErrParamRequired("QvbrQualityLevel")) 6596 } 6597 if s.QvbrQualityLevel != nil && *s.QvbrQualityLevel < 1 { 6598 invalidParams.Add(request.NewErrParamMinValue("QvbrQualityLevel", 1)) 6599 } 6600 6601 if invalidParams.Len() > 0 { 6602 return invalidParams 6603 } 6604 return nil 6605} 6606 6607// SetMaxAverageBitrate sets the MaxAverageBitrate field's value. 6608func (s *H264QvbrSettings) SetMaxAverageBitrate(v int64) *H264QvbrSettings { 6609 s.MaxAverageBitrate = &v 6610 return s 6611} 6612 6613// SetQvbrQualityLevel sets the QvbrQualityLevel field's value. 6614func (s *H264QvbrSettings) SetQvbrQualityLevel(v int64) *H264QvbrSettings { 6615 s.QvbrQualityLevel = &v 6616 return s 6617} 6618 6619// Required when you set (Codec) under (VideoDescription)>(CodecSettings) to 6620// the value H_264. 6621type H264Settings struct { 6622 _ struct{} `type:"structure"` 6623 6624 // Adaptive quantization. Allows intra-frame quantizers to vary to improve visual 6625 // quality. 6626 AdaptiveQuantization *string `locationName:"adaptiveQuantization" type:"string" enum:"H264AdaptiveQuantization"` 6627 6628 // Average bitrate in bits/second. Required for VBR and CBR. For MS Smooth outputs, 6629 // bitrates must be unique when rounded down to the nearest multiple of 1000. 6630 Bitrate *int64 `locationName:"bitrate" min:"1000" type:"integer"` 6631 6632 // H.264 Level. 6633 CodecLevel *string `locationName:"codecLevel" type:"string" enum:"H264CodecLevel"` 6634 6635 // H.264 Profile. High 4:2:2 and 10-bit profiles are only available with the 6636 // AVC-I License. 6637 CodecProfile *string `locationName:"codecProfile" type:"string" enum:"H264CodecProfile"` 6638 6639 // Choose Adaptive to improve subjective video quality for high-motion content. 6640 // This will cause the service to use fewer B-frames (which infer information 6641 // based on other frames) for high-motion portions of the video and more B-frames 6642 // for low-motion portions. The maximum number of B-frames is limited by the 6643 // value you provide for the setting B frames between reference frames (numberBFramesBetweenReferenceFrames). 6644 DynamicSubGop *string `locationName:"dynamicSubGop" type:"string" enum:"H264DynamicSubGop"` 6645 6646 // Entropy encoding mode. Use CABAC (must be in Main or High profile) or CAVLC. 6647 EntropyEncoding *string `locationName:"entropyEncoding" type:"string" enum:"H264EntropyEncoding"` 6648 6649 // Choosing FORCE_FIELD disables PAFF encoding for interlaced outputs. 6650 FieldEncoding *string `locationName:"fieldEncoding" type:"string" enum:"H264FieldEncoding"` 6651 6652 // Adjust quantization within each frame to reduce flicker or 'pop' on I-frames. 6653 FlickerAdaptiveQuantization *string `locationName:"flickerAdaptiveQuantization" type:"string" enum:"H264FlickerAdaptiveQuantization"` 6654 6655 // If you are using the console, use the Framerate setting to specify the framerate 6656 // for this output. If you want to keep the same framerate as the input video, 6657 // choose Follow source. If you want to do framerate conversion, choose a framerate 6658 // from the dropdown list or choose Custom. The framerates shown in the dropdown 6659 // list are decimal approximations of fractions. If you choose Custom, specify 6660 // your framerate as a fraction. If you are creating your transcoding job specification 6661 // as a JSON file without the console, use FramerateControl to specify which 6662 // value the service uses for the framerate for this output. Choose INITIALIZE_FROM_SOURCE 6663 // if you want the service to use the framerate from the input. Choose SPECIFIED 6664 // if you want the service to use the framerate you specify in the settings 6665 // FramerateNumerator and FramerateDenominator. 6666 FramerateControl *string `locationName:"framerateControl" type:"string" enum:"H264FramerateControl"` 6667 6668 // When set to INTERPOLATE, produces smoother motion during framerate conversion. 6669 FramerateConversionAlgorithm *string `locationName:"framerateConversionAlgorithm" type:"string" enum:"H264FramerateConversionAlgorithm"` 6670 6671 // When you use the API for transcode jobs that use framerate conversion, specify 6672 // the framerate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use 6673 // FramerateDenominator to specify the denominator of this fraction. In this 6674 // example, use 1001 for the value of FramerateDenominator. When you use the 6675 // console for transcode jobs that use framerate conversion, provide the value 6676 // as a decimal number for Framerate. In this example, specify 23.976. 6677 FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"` 6678 6679 // Framerate numerator - framerate is a fraction, e.g. 24000 / 1001 = 23.976 6680 // fps. 6681 FramerateNumerator *int64 `locationName:"framerateNumerator" min:"1" type:"integer"` 6682 6683 // If enable, use reference B frames for GOP structures that have B frames > 6684 // 1. 6685 GopBReference *string `locationName:"gopBReference" type:"string" enum:"H264GopBReference"` 6686 6687 // Frequency of closed GOPs. In streaming applications, it is recommended that 6688 // this be set to 1 so a decoder joining mid-stream will receive an IDR frame 6689 // as quickly as possible. Setting this value to 0 will break output segmenting. 6690 GopClosedCadence *int64 `locationName:"gopClosedCadence" type:"integer"` 6691 6692 // GOP Length (keyframe interval) in frames or seconds. Must be greater than 6693 // zero. 6694 GopSize *float64 `locationName:"gopSize" type:"double"` 6695 6696 // Indicates if the GOP Size in H264 is specified in frames or seconds. If seconds 6697 // the system will convert the GOP Size into a frame count at run time. 6698 GopSizeUnits *string `locationName:"gopSizeUnits" type:"string" enum:"H264GopSizeUnits"` 6699 6700 // Percentage of the buffer that should initially be filled (HRD buffer model). 6701 HrdBufferInitialFillPercentage *int64 `locationName:"hrdBufferInitialFillPercentage" type:"integer"` 6702 6703 // Size of buffer (HRD buffer model) in bits. For example, enter five megabits 6704 // as 5000000. 6705 HrdBufferSize *int64 `locationName:"hrdBufferSize" type:"integer"` 6706 6707 // Use Interlace mode (InterlaceMode) to choose the scan line type for the output. 6708 // * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce 6709 // interlaced output with the entire output having the same field polarity (top 6710 // or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default 6711 // Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, 6712 // behavior depends on the input scan type, as follows. - If the source is interlaced, 6713 // the output will be interlaced with the same polarity as the source (it will 6714 // follow the source). The output could therefore be a mix of "top field first" 6715 // and "bottom field first". - If the source is progressive, the output will 6716 // be interlaced with "top field first" or "bottom field first" polarity, depending 6717 // on which of the Follow options you chose. 6718 InterlaceMode *string `locationName:"interlaceMode" type:"string" enum:"H264InterlaceMode"` 6719 6720 // Maximum bitrate in bits/second. For example, enter five megabits per second 6721 // as 5000000. Required when Rate control mode is QVBR. 6722 MaxBitrate *int64 `locationName:"maxBitrate" min:"1000" type:"integer"` 6723 6724 // Enforces separation between repeated (cadence) I-frames and I-frames inserted 6725 // by Scene Change Detection. If a scene change I-frame is within I-interval 6726 // frames of a cadence I-frame, the GOP is shrunk and/or stretched to the scene 6727 // change I-frame. GOP stretch requires enabling lookahead as well as setting 6728 // I-interval. The normal cadence resumes for the next GOP. This setting is 6729 // only used when Scene Change Detect is enabled. Note: Maximum GOP stretch 6730 // = GOP size + Min-I-interval - 1 6731 MinIInterval *int64 `locationName:"minIInterval" type:"integer"` 6732 6733 // Number of B-frames between reference frames. 6734 NumberBFramesBetweenReferenceFrames *int64 `locationName:"numberBFramesBetweenReferenceFrames" type:"integer"` 6735 6736 // Number of reference frames to use. The encoder may use more than requested 6737 // if using B-frames and/or interlaced encoding. 6738 NumberReferenceFrames *int64 `locationName:"numberReferenceFrames" min:"1" type:"integer"` 6739 6740 // Using the API, enable ParFollowSource if you want the service to use the 6741 // pixel aspect ratio from the input. Using the console, do this by choosing 6742 // Follow source for Pixel aspect ratio. 6743 ParControl *string `locationName:"parControl" type:"string" enum:"H264ParControl"` 6744 6745 // Pixel Aspect Ratio denominator. 6746 ParDenominator *int64 `locationName:"parDenominator" min:"1" type:"integer"` 6747 6748 // Pixel Aspect Ratio numerator. 6749 ParNumerator *int64 `locationName:"parNumerator" min:"1" type:"integer"` 6750 6751 // Use Quality tuning level (H264QualityTuningLevel) to specifiy whether to 6752 // use fast single-pass, high-quality singlepass, or high-quality multipass 6753 // video encoding. 6754 QualityTuningLevel *string `locationName:"qualityTuningLevel" type:"string" enum:"H264QualityTuningLevel"` 6755 6756 // Settings for quality-defined variable bitrate encoding with the H.264 codec. 6757 // Required when you set Rate control mode to QVBR. Not valid when you set Rate 6758 // control mode to a value other than QVBR, or when you don't define Rate control 6759 // mode. 6760 QvbrSettings *H264QvbrSettings `locationName:"qvbrSettings" type:"structure"` 6761 6762 // Use this setting to specify whether this output has a variable bitrate (VBR), 6763 // constant bitrate (CBR) or quality-defined variable bitrate (QVBR). 6764 RateControlMode *string `locationName:"rateControlMode" type:"string" enum:"H264RateControlMode"` 6765 6766 // Places a PPS header on each encoded picture, even if repeated. 6767 RepeatPps *string `locationName:"repeatPps" type:"string" enum:"H264RepeatPps"` 6768 6769 // Scene change detection (inserts I-frames on scene changes). 6770 SceneChangeDetect *string `locationName:"sceneChangeDetect" type:"string" enum:"H264SceneChangeDetect"` 6771 6772 // Number of slices per picture. Must be less than or equal to the number of 6773 // macroblock rows for progressive pictures, and less than or equal to half 6774 // the number of macroblock rows for interlaced pictures. 6775 Slices *int64 `locationName:"slices" min:"1" type:"integer"` 6776 6777 // Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled 6778 // as 25fps, and audio is sped up correspondingly. 6779 SlowPal *string `locationName:"slowPal" type:"string" enum:"H264SlowPal"` 6780 6781 // Softness. Selects quantizer matrix, larger values reduce high-frequency content 6782 // in the encoded image. 6783 Softness *int64 `locationName:"softness" type:"integer"` 6784 6785 // Adjust quantization within each frame based on spatial variation of content 6786 // complexity. 6787 SpatialAdaptiveQuantization *string `locationName:"spatialAdaptiveQuantization" type:"string" enum:"H264SpatialAdaptiveQuantization"` 6788 6789 // Produces a bitstream compliant with SMPTE RP-2027. 6790 Syntax *string `locationName:"syntax" type:"string" enum:"H264Syntax"` 6791 6792 // This field applies only if the Streams > Advanced > Framerate (framerate) 6793 // field is set to 29.970. This field works with the Streams > Advanced > Preprocessors 6794 // > Deinterlacer field (deinterlace_mode) and the Streams > Advanced > Interlaced 6795 // Mode field (interlace_mode) to identify the scan type for the output: Progressive, 6796 // Interlaced, Hard Telecine or Soft Telecine. - Hard: produces 29.97i output 6797 // from 23.976 input. - Soft: produces 23.976; the player converts this output 6798 // to 29.97i. 6799 Telecine *string `locationName:"telecine" type:"string" enum:"H264Telecine"` 6800 6801 // Adjust quantization within each frame based on temporal variation of content 6802 // complexity. 6803 TemporalAdaptiveQuantization *string `locationName:"temporalAdaptiveQuantization" type:"string" enum:"H264TemporalAdaptiveQuantization"` 6804 6805 // Inserts timecode for each frame as 4 bytes of an unregistered SEI message. 6806 UnregisteredSeiTimecode *string `locationName:"unregisteredSeiTimecode" type:"string" enum:"H264UnregisteredSeiTimecode"` 6807} 6808 6809// String returns the string representation 6810func (s H264Settings) String() string { 6811 return awsutil.Prettify(s) 6812} 6813 6814// GoString returns the string representation 6815func (s H264Settings) GoString() string { 6816 return s.String() 6817} 6818 6819// Validate inspects the fields of the type to determine if they are valid. 6820func (s *H264Settings) Validate() error { 6821 invalidParams := request.ErrInvalidParams{Context: "H264Settings"} 6822 if s.Bitrate != nil && *s.Bitrate < 1000 { 6823 invalidParams.Add(request.NewErrParamMinValue("Bitrate", 1000)) 6824 } 6825 if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 { 6826 invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1)) 6827 } 6828 if s.FramerateNumerator != nil && *s.FramerateNumerator < 1 { 6829 invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 1)) 6830 } 6831 if s.MaxBitrate != nil && *s.MaxBitrate < 1000 { 6832 invalidParams.Add(request.NewErrParamMinValue("MaxBitrate", 1000)) 6833 } 6834 if s.NumberReferenceFrames != nil && *s.NumberReferenceFrames < 1 { 6835 invalidParams.Add(request.NewErrParamMinValue("NumberReferenceFrames", 1)) 6836 } 6837 if s.ParDenominator != nil && *s.ParDenominator < 1 { 6838 invalidParams.Add(request.NewErrParamMinValue("ParDenominator", 1)) 6839 } 6840 if s.ParNumerator != nil && *s.ParNumerator < 1 { 6841 invalidParams.Add(request.NewErrParamMinValue("ParNumerator", 1)) 6842 } 6843 if s.Slices != nil && *s.Slices < 1 { 6844 invalidParams.Add(request.NewErrParamMinValue("Slices", 1)) 6845 } 6846 if s.QvbrSettings != nil { 6847 if err := s.QvbrSettings.Validate(); err != nil { 6848 invalidParams.AddNested("QvbrSettings", err.(request.ErrInvalidParams)) 6849 } 6850 } 6851 6852 if invalidParams.Len() > 0 { 6853 return invalidParams 6854 } 6855 return nil 6856} 6857 6858// SetAdaptiveQuantization sets the AdaptiveQuantization field's value. 6859func (s *H264Settings) SetAdaptiveQuantization(v string) *H264Settings { 6860 s.AdaptiveQuantization = &v 6861 return s 6862} 6863 6864// SetBitrate sets the Bitrate field's value. 6865func (s *H264Settings) SetBitrate(v int64) *H264Settings { 6866 s.Bitrate = &v 6867 return s 6868} 6869 6870// SetCodecLevel sets the CodecLevel field's value. 6871func (s *H264Settings) SetCodecLevel(v string) *H264Settings { 6872 s.CodecLevel = &v 6873 return s 6874} 6875 6876// SetCodecProfile sets the CodecProfile field's value. 6877func (s *H264Settings) SetCodecProfile(v string) *H264Settings { 6878 s.CodecProfile = &v 6879 return s 6880} 6881 6882// SetDynamicSubGop sets the DynamicSubGop field's value. 6883func (s *H264Settings) SetDynamicSubGop(v string) *H264Settings { 6884 s.DynamicSubGop = &v 6885 return s 6886} 6887 6888// SetEntropyEncoding sets the EntropyEncoding field's value. 6889func (s *H264Settings) SetEntropyEncoding(v string) *H264Settings { 6890 s.EntropyEncoding = &v 6891 return s 6892} 6893 6894// SetFieldEncoding sets the FieldEncoding field's value. 6895func (s *H264Settings) SetFieldEncoding(v string) *H264Settings { 6896 s.FieldEncoding = &v 6897 return s 6898} 6899 6900// SetFlickerAdaptiveQuantization sets the FlickerAdaptiveQuantization field's value. 6901func (s *H264Settings) SetFlickerAdaptiveQuantization(v string) *H264Settings { 6902 s.FlickerAdaptiveQuantization = &v 6903 return s 6904} 6905 6906// SetFramerateControl sets the FramerateControl field's value. 6907func (s *H264Settings) SetFramerateControl(v string) *H264Settings { 6908 s.FramerateControl = &v 6909 return s 6910} 6911 6912// SetFramerateConversionAlgorithm sets the FramerateConversionAlgorithm field's value. 6913func (s *H264Settings) SetFramerateConversionAlgorithm(v string) *H264Settings { 6914 s.FramerateConversionAlgorithm = &v 6915 return s 6916} 6917 6918// SetFramerateDenominator sets the FramerateDenominator field's value. 6919func (s *H264Settings) SetFramerateDenominator(v int64) *H264Settings { 6920 s.FramerateDenominator = &v 6921 return s 6922} 6923 6924// SetFramerateNumerator sets the FramerateNumerator field's value. 6925func (s *H264Settings) SetFramerateNumerator(v int64) *H264Settings { 6926 s.FramerateNumerator = &v 6927 return s 6928} 6929 6930// SetGopBReference sets the GopBReference field's value. 6931func (s *H264Settings) SetGopBReference(v string) *H264Settings { 6932 s.GopBReference = &v 6933 return s 6934} 6935 6936// SetGopClosedCadence sets the GopClosedCadence field's value. 6937func (s *H264Settings) SetGopClosedCadence(v int64) *H264Settings { 6938 s.GopClosedCadence = &v 6939 return s 6940} 6941 6942// SetGopSize sets the GopSize field's value. 6943func (s *H264Settings) SetGopSize(v float64) *H264Settings { 6944 s.GopSize = &v 6945 return s 6946} 6947 6948// SetGopSizeUnits sets the GopSizeUnits field's value. 6949func (s *H264Settings) SetGopSizeUnits(v string) *H264Settings { 6950 s.GopSizeUnits = &v 6951 return s 6952} 6953 6954// SetHrdBufferInitialFillPercentage sets the HrdBufferInitialFillPercentage field's value. 6955func (s *H264Settings) SetHrdBufferInitialFillPercentage(v int64) *H264Settings { 6956 s.HrdBufferInitialFillPercentage = &v 6957 return s 6958} 6959 6960// SetHrdBufferSize sets the HrdBufferSize field's value. 6961func (s *H264Settings) SetHrdBufferSize(v int64) *H264Settings { 6962 s.HrdBufferSize = &v 6963 return s 6964} 6965 6966// SetInterlaceMode sets the InterlaceMode field's value. 6967func (s *H264Settings) SetInterlaceMode(v string) *H264Settings { 6968 s.InterlaceMode = &v 6969 return s 6970} 6971 6972// SetMaxBitrate sets the MaxBitrate field's value. 6973func (s *H264Settings) SetMaxBitrate(v int64) *H264Settings { 6974 s.MaxBitrate = &v 6975 return s 6976} 6977 6978// SetMinIInterval sets the MinIInterval field's value. 6979func (s *H264Settings) SetMinIInterval(v int64) *H264Settings { 6980 s.MinIInterval = &v 6981 return s 6982} 6983 6984// SetNumberBFramesBetweenReferenceFrames sets the NumberBFramesBetweenReferenceFrames field's value. 6985func (s *H264Settings) SetNumberBFramesBetweenReferenceFrames(v int64) *H264Settings { 6986 s.NumberBFramesBetweenReferenceFrames = &v 6987 return s 6988} 6989 6990// SetNumberReferenceFrames sets the NumberReferenceFrames field's value. 6991func (s *H264Settings) SetNumberReferenceFrames(v int64) *H264Settings { 6992 s.NumberReferenceFrames = &v 6993 return s 6994} 6995 6996// SetParControl sets the ParControl field's value. 6997func (s *H264Settings) SetParControl(v string) *H264Settings { 6998 s.ParControl = &v 6999 return s 7000} 7001 7002// SetParDenominator sets the ParDenominator field's value. 7003func (s *H264Settings) SetParDenominator(v int64) *H264Settings { 7004 s.ParDenominator = &v 7005 return s 7006} 7007 7008// SetParNumerator sets the ParNumerator field's value. 7009func (s *H264Settings) SetParNumerator(v int64) *H264Settings { 7010 s.ParNumerator = &v 7011 return s 7012} 7013 7014// SetQualityTuningLevel sets the QualityTuningLevel field's value. 7015func (s *H264Settings) SetQualityTuningLevel(v string) *H264Settings { 7016 s.QualityTuningLevel = &v 7017 return s 7018} 7019 7020// SetQvbrSettings sets the QvbrSettings field's value. 7021func (s *H264Settings) SetQvbrSettings(v *H264QvbrSettings) *H264Settings { 7022 s.QvbrSettings = v 7023 return s 7024} 7025 7026// SetRateControlMode sets the RateControlMode field's value. 7027func (s *H264Settings) SetRateControlMode(v string) *H264Settings { 7028 s.RateControlMode = &v 7029 return s 7030} 7031 7032// SetRepeatPps sets the RepeatPps field's value. 7033func (s *H264Settings) SetRepeatPps(v string) *H264Settings { 7034 s.RepeatPps = &v 7035 return s 7036} 7037 7038// SetSceneChangeDetect sets the SceneChangeDetect field's value. 7039func (s *H264Settings) SetSceneChangeDetect(v string) *H264Settings { 7040 s.SceneChangeDetect = &v 7041 return s 7042} 7043 7044// SetSlices sets the Slices field's value. 7045func (s *H264Settings) SetSlices(v int64) *H264Settings { 7046 s.Slices = &v 7047 return s 7048} 7049 7050// SetSlowPal sets the SlowPal field's value. 7051func (s *H264Settings) SetSlowPal(v string) *H264Settings { 7052 s.SlowPal = &v 7053 return s 7054} 7055 7056// SetSoftness sets the Softness field's value. 7057func (s *H264Settings) SetSoftness(v int64) *H264Settings { 7058 s.Softness = &v 7059 return s 7060} 7061 7062// SetSpatialAdaptiveQuantization sets the SpatialAdaptiveQuantization field's value. 7063func (s *H264Settings) SetSpatialAdaptiveQuantization(v string) *H264Settings { 7064 s.SpatialAdaptiveQuantization = &v 7065 return s 7066} 7067 7068// SetSyntax sets the Syntax field's value. 7069func (s *H264Settings) SetSyntax(v string) *H264Settings { 7070 s.Syntax = &v 7071 return s 7072} 7073 7074// SetTelecine sets the Telecine field's value. 7075func (s *H264Settings) SetTelecine(v string) *H264Settings { 7076 s.Telecine = &v 7077 return s 7078} 7079 7080// SetTemporalAdaptiveQuantization sets the TemporalAdaptiveQuantization field's value. 7081func (s *H264Settings) SetTemporalAdaptiveQuantization(v string) *H264Settings { 7082 s.TemporalAdaptiveQuantization = &v 7083 return s 7084} 7085 7086// SetUnregisteredSeiTimecode sets the UnregisteredSeiTimecode field's value. 7087func (s *H264Settings) SetUnregisteredSeiTimecode(v string) *H264Settings { 7088 s.UnregisteredSeiTimecode = &v 7089 return s 7090} 7091 7092// Settings for quality-defined variable bitrate encoding with the H.265 codec. 7093// Required when you set Rate control mode to QVBR. Not valid when you set Rate 7094// control mode to a value other than QVBR, or when you don't define Rate control 7095// mode. 7096type H265QvbrSettings struct { 7097 _ struct{} `type:"structure"` 7098 7099 // Use this setting only when Rate control mode is QVBR and Quality tuning level 7100 // is Multi-pass HQ. For Max average bitrate values suited to the complexity 7101 // of your input video, the service limits the average bitrate of the video 7102 // part of this output to the value you choose. That is, the total size of the 7103 // video element is less than or equal to the value you set multiplied by the 7104 // number of seconds of encoded output. 7105 MaxAverageBitrate *int64 `locationName:"maxAverageBitrate" min:"1000" type:"integer"` 7106 7107 // Required when you use QVBR rate control mode. That is, when you specify qvbrSettings 7108 // within h265Settings. Specify the target quality level for this output, from 7109 // 1 to 10. Use higher numbers for greater quality. Level 10 results in nearly 7110 // lossless compression. The quality level for most broadcast-quality transcodes 7111 // is between 6 and 9. 7112 // 7113 // QvbrQualityLevel is a required field 7114 QvbrQualityLevel *int64 `locationName:"qvbrQualityLevel" min:"1" type:"integer" required:"true"` 7115} 7116 7117// String returns the string representation 7118func (s H265QvbrSettings) String() string { 7119 return awsutil.Prettify(s) 7120} 7121 7122// GoString returns the string representation 7123func (s H265QvbrSettings) GoString() string { 7124 return s.String() 7125} 7126 7127// Validate inspects the fields of the type to determine if they are valid. 7128func (s *H265QvbrSettings) Validate() error { 7129 invalidParams := request.ErrInvalidParams{Context: "H265QvbrSettings"} 7130 if s.MaxAverageBitrate != nil && *s.MaxAverageBitrate < 1000 { 7131 invalidParams.Add(request.NewErrParamMinValue("MaxAverageBitrate", 1000)) 7132 } 7133 if s.QvbrQualityLevel == nil { 7134 invalidParams.Add(request.NewErrParamRequired("QvbrQualityLevel")) 7135 } 7136 if s.QvbrQualityLevel != nil && *s.QvbrQualityLevel < 1 { 7137 invalidParams.Add(request.NewErrParamMinValue("QvbrQualityLevel", 1)) 7138 } 7139 7140 if invalidParams.Len() > 0 { 7141 return invalidParams 7142 } 7143 return nil 7144} 7145 7146// SetMaxAverageBitrate sets the MaxAverageBitrate field's value. 7147func (s *H265QvbrSettings) SetMaxAverageBitrate(v int64) *H265QvbrSettings { 7148 s.MaxAverageBitrate = &v 7149 return s 7150} 7151 7152// SetQvbrQualityLevel sets the QvbrQualityLevel field's value. 7153func (s *H265QvbrSettings) SetQvbrQualityLevel(v int64) *H265QvbrSettings { 7154 s.QvbrQualityLevel = &v 7155 return s 7156} 7157 7158// Settings for H265 codec 7159type H265Settings struct { 7160 _ struct{} `type:"structure"` 7161 7162 // Adaptive quantization. Allows intra-frame quantizers to vary to improve visual 7163 // quality. 7164 AdaptiveQuantization *string `locationName:"adaptiveQuantization" type:"string" enum:"H265AdaptiveQuantization"` 7165 7166 // Enables Alternate Transfer Function SEI message for outputs using Hybrid 7167 // Log Gamma (HLG) Electro-Optical Transfer Function (EOTF). 7168 AlternateTransferFunctionSei *string `locationName:"alternateTransferFunctionSei" type:"string" enum:"H265AlternateTransferFunctionSei"` 7169 7170 // Average bitrate in bits/second. Required for VBR and CBR. For MS Smooth outputs, 7171 // bitrates must be unique when rounded down to the nearest multiple of 1000. 7172 Bitrate *int64 `locationName:"bitrate" min:"1000" type:"integer"` 7173 7174 // H.265 Level. 7175 CodecLevel *string `locationName:"codecLevel" type:"string" enum:"H265CodecLevel"` 7176 7177 // Represents the Profile and Tier, per the HEVC (H.265) specification. Selections 7178 // are grouped as [Profile] / [Tier], so "Main/High" represents Main Profile 7179 // with High Tier. 4:2:2 profiles are only available with the HEVC 4:2:2 License. 7180 CodecProfile *string `locationName:"codecProfile" type:"string" enum:"H265CodecProfile"` 7181 7182 // Choose Adaptive to improve subjective video quality for high-motion content. 7183 // This will cause the service to use fewer B-frames (which infer information 7184 // based on other frames) for high-motion portions of the video and more B-frames 7185 // for low-motion portions. The maximum number of B-frames is limited by the 7186 // value you provide for the setting B frames between reference frames (numberBFramesBetweenReferenceFrames). 7187 DynamicSubGop *string `locationName:"dynamicSubGop" type:"string" enum:"H265DynamicSubGop"` 7188 7189 // Adjust quantization within each frame to reduce flicker or 'pop' on I-frames. 7190 FlickerAdaptiveQuantization *string `locationName:"flickerAdaptiveQuantization" type:"string" enum:"H265FlickerAdaptiveQuantization"` 7191 7192 // If you are using the console, use the Framerate setting to specify the framerate 7193 // for this output. If you want to keep the same framerate as the input video, 7194 // choose Follow source. If you want to do framerate conversion, choose a framerate 7195 // from the dropdown list or choose Custom. The framerates shown in the dropdown 7196 // list are decimal approximations of fractions. If you choose Custom, specify 7197 // your framerate as a fraction. If you are creating your transcoding job sepecification 7198 // as a JSON file without the console, use FramerateControl to specify which 7199 // value the service uses for the framerate for this output. Choose INITIALIZE_FROM_SOURCE 7200 // if you want the service to use the framerate from the input. Choose SPECIFIED 7201 // if you want the service to use the framerate you specify in the settings 7202 // FramerateNumerator and FramerateDenominator. 7203 FramerateControl *string `locationName:"framerateControl" type:"string" enum:"H265FramerateControl"` 7204 7205 // When set to INTERPOLATE, produces smoother motion during framerate conversion. 7206 FramerateConversionAlgorithm *string `locationName:"framerateConversionAlgorithm" type:"string" enum:"H265FramerateConversionAlgorithm"` 7207 7208 // Framerate denominator. 7209 FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"` 7210 7211 // Framerate numerator - framerate is a fraction, e.g. 24000 / 1001 = 23.976 7212 // fps. 7213 FramerateNumerator *int64 `locationName:"framerateNumerator" min:"1" type:"integer"` 7214 7215 // If enable, use reference B frames for GOP structures that have B frames > 7216 // 1. 7217 GopBReference *string `locationName:"gopBReference" type:"string" enum:"H265GopBReference"` 7218 7219 // Frequency of closed GOPs. In streaming applications, it is recommended that 7220 // this be set to 1 so a decoder joining mid-stream will receive an IDR frame 7221 // as quickly as possible. Setting this value to 0 will break output segmenting. 7222 GopClosedCadence *int64 `locationName:"gopClosedCadence" type:"integer"` 7223 7224 // GOP Length (keyframe interval) in frames or seconds. Must be greater than 7225 // zero. 7226 GopSize *float64 `locationName:"gopSize" type:"double"` 7227 7228 // Indicates if the GOP Size in H265 is specified in frames or seconds. If seconds 7229 // the system will convert the GOP Size into a frame count at run time. 7230 GopSizeUnits *string `locationName:"gopSizeUnits" type:"string" enum:"H265GopSizeUnits"` 7231 7232 // Percentage of the buffer that should initially be filled (HRD buffer model). 7233 HrdBufferInitialFillPercentage *int64 `locationName:"hrdBufferInitialFillPercentage" type:"integer"` 7234 7235 // Size of buffer (HRD buffer model) in bits. For example, enter five megabits 7236 // as 5000000. 7237 HrdBufferSize *int64 `locationName:"hrdBufferSize" type:"integer"` 7238 7239 // Use Interlace mode (InterlaceMode) to choose the scan line type for the output. 7240 // * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce 7241 // interlaced output with the entire output having the same field polarity (top 7242 // or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default 7243 // Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, 7244 // behavior depends on the input scan type. - If the source is interlaced, the 7245 // output will be interlaced with the same polarity as the source (it will follow 7246 // the source). The output could therefore be a mix of "top field first" and 7247 // "bottom field first". - If the source is progressive, the output will be 7248 // interlaced with "top field first" or "bottom field first" polarity, depending 7249 // on which of the Follow options you chose. 7250 InterlaceMode *string `locationName:"interlaceMode" type:"string" enum:"H265InterlaceMode"` 7251 7252 // Maximum bitrate in bits/second. For example, enter five megabits per second 7253 // as 5000000. Required when Rate control mode is QVBR. 7254 MaxBitrate *int64 `locationName:"maxBitrate" min:"1000" type:"integer"` 7255 7256 // Enforces separation between repeated (cadence) I-frames and I-frames inserted 7257 // by Scene Change Detection. If a scene change I-frame is within I-interval 7258 // frames of a cadence I-frame, the GOP is shrunk and/or stretched to the scene 7259 // change I-frame. GOP stretch requires enabling lookahead as well as setting 7260 // I-interval. The normal cadence resumes for the next GOP. This setting is 7261 // only used when Scene Change Detect is enabled. Note: Maximum GOP stretch 7262 // = GOP size + Min-I-interval - 1 7263 MinIInterval *int64 `locationName:"minIInterval" type:"integer"` 7264 7265 // Number of B-frames between reference frames. 7266 NumberBFramesBetweenReferenceFrames *int64 `locationName:"numberBFramesBetweenReferenceFrames" type:"integer"` 7267 7268 // Number of reference frames to use. The encoder may use more than requested 7269 // if using B-frames and/or interlaced encoding. 7270 NumberReferenceFrames *int64 `locationName:"numberReferenceFrames" min:"1" type:"integer"` 7271 7272 // Using the API, enable ParFollowSource if you want the service to use the 7273 // pixel aspect ratio from the input. Using the console, do this by choosing 7274 // Follow source for Pixel aspect ratio. 7275 ParControl *string `locationName:"parControl" type:"string" enum:"H265ParControl"` 7276 7277 // Pixel Aspect Ratio denominator. 7278 ParDenominator *int64 `locationName:"parDenominator" min:"1" type:"integer"` 7279 7280 // Pixel Aspect Ratio numerator. 7281 ParNumerator *int64 `locationName:"parNumerator" min:"1" type:"integer"` 7282 7283 // Use Quality tuning level (H265QualityTuningLevel) to specifiy whether to 7284 // use fast single-pass, high-quality singlepass, or high-quality multipass 7285 // video encoding. 7286 QualityTuningLevel *string `locationName:"qualityTuningLevel" type:"string" enum:"H265QualityTuningLevel"` 7287 7288 // Settings for quality-defined variable bitrate encoding with the H.265 codec. 7289 // Required when you set Rate control mode to QVBR. Not valid when you set Rate 7290 // control mode to a value other than QVBR, or when you don't define Rate control 7291 // mode. 7292 QvbrSettings *H265QvbrSettings `locationName:"qvbrSettings" type:"structure"` 7293 7294 // Use this setting to specify whether this output has a variable bitrate (VBR), 7295 // constant bitrate (CBR) or quality-defined variable bitrate (QVBR). 7296 RateControlMode *string `locationName:"rateControlMode" type:"string" enum:"H265RateControlMode"` 7297 7298 // Specify Sample Adaptive Offset (SAO) filter strength. Adaptive mode dynamically 7299 // selects best strength based on content 7300 SampleAdaptiveOffsetFilterMode *string `locationName:"sampleAdaptiveOffsetFilterMode" type:"string" enum:"H265SampleAdaptiveOffsetFilterMode"` 7301 7302 // Scene change detection (inserts I-frames on scene changes). 7303 SceneChangeDetect *string `locationName:"sceneChangeDetect" type:"string" enum:"H265SceneChangeDetect"` 7304 7305 // Number of slices per picture. Must be less than or equal to the number of 7306 // macroblock rows for progressive pictures, and less than or equal to half 7307 // the number of macroblock rows for interlaced pictures. 7308 Slices *int64 `locationName:"slices" min:"1" type:"integer"` 7309 7310 // Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled 7311 // as 25fps, and audio is sped up correspondingly. 7312 SlowPal *string `locationName:"slowPal" type:"string" enum:"H265SlowPal"` 7313 7314 // Adjust quantization within each frame based on spatial variation of content 7315 // complexity. 7316 SpatialAdaptiveQuantization *string `locationName:"spatialAdaptiveQuantization" type:"string" enum:"H265SpatialAdaptiveQuantization"` 7317 7318 // This field applies only if the Streams > Advanced > Framerate (framerate) 7319 // field is set to 29.970. This field works with the Streams > Advanced > Preprocessors 7320 // > Deinterlacer field (deinterlace_mode) and the Streams > Advanced > Interlaced 7321 // Mode field (interlace_mode) to identify the scan type for the output: Progressive, 7322 // Interlaced, Hard Telecine or Soft Telecine. - Hard: produces 29.97i output 7323 // from 23.976 input. - Soft: produces 23.976; the player converts this output 7324 // to 29.97i. 7325 Telecine *string `locationName:"telecine" type:"string" enum:"H265Telecine"` 7326 7327 // Adjust quantization within each frame based on temporal variation of content 7328 // complexity. 7329 TemporalAdaptiveQuantization *string `locationName:"temporalAdaptiveQuantization" type:"string" enum:"H265TemporalAdaptiveQuantization"` 7330 7331 // Enables temporal layer identifiers in the encoded bitstream. Up to 3 layers 7332 // are supported depending on GOP structure: I- and P-frames form one layer, 7333 // reference B-frames can form a second layer and non-reference b-frames can 7334 // form a third layer. Decoders can optionally decode only the lower temporal 7335 // layers to generate a lower frame rate output. For example, given a bitstream 7336 // with temporal IDs and with b-frames = 1 (i.e. IbPbPb display order), a decoder 7337 // could decode all the frames for full frame rate output or only the I and 7338 // P frames (lowest temporal layer) for a half frame rate output. 7339 TemporalIds *string `locationName:"temporalIds" type:"string" enum:"H265TemporalIds"` 7340 7341 // Enable use of tiles, allowing horizontal as well as vertical subdivision 7342 // of the encoded pictures. 7343 Tiles *string `locationName:"tiles" type:"string" enum:"H265Tiles"` 7344 7345 // Inserts timecode for each frame as 4 bytes of an unregistered SEI message. 7346 UnregisteredSeiTimecode *string `locationName:"unregisteredSeiTimecode" type:"string" enum:"H265UnregisteredSeiTimecode"` 7347 7348 // If HVC1, output that is H.265 will be marked as HVC1 and adhere to the ISO-IECJTC1-SC29_N13798_Text_ISOIEC_FDIS_14496-15_3rd_E 7349 // spec which states that parameter set NAL units will be stored in the sample 7350 // headers but not in the samples directly. If HEV1, then H.265 will be marked 7351 // as HEV1 and parameter set NAL units will be written into the samples. 7352 WriteMp4PackagingType *string `locationName:"writeMp4PackagingType" type:"string" enum:"H265WriteMp4PackagingType"` 7353} 7354 7355// String returns the string representation 7356func (s H265Settings) String() string { 7357 return awsutil.Prettify(s) 7358} 7359 7360// GoString returns the string representation 7361func (s H265Settings) GoString() string { 7362 return s.String() 7363} 7364 7365// Validate inspects the fields of the type to determine if they are valid. 7366func (s *H265Settings) Validate() error { 7367 invalidParams := request.ErrInvalidParams{Context: "H265Settings"} 7368 if s.Bitrate != nil && *s.Bitrate < 1000 { 7369 invalidParams.Add(request.NewErrParamMinValue("Bitrate", 1000)) 7370 } 7371 if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 { 7372 invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1)) 7373 } 7374 if s.FramerateNumerator != nil && *s.FramerateNumerator < 1 { 7375 invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 1)) 7376 } 7377 if s.MaxBitrate != nil && *s.MaxBitrate < 1000 { 7378 invalidParams.Add(request.NewErrParamMinValue("MaxBitrate", 1000)) 7379 } 7380 if s.NumberReferenceFrames != nil && *s.NumberReferenceFrames < 1 { 7381 invalidParams.Add(request.NewErrParamMinValue("NumberReferenceFrames", 1)) 7382 } 7383 if s.ParDenominator != nil && *s.ParDenominator < 1 { 7384 invalidParams.Add(request.NewErrParamMinValue("ParDenominator", 1)) 7385 } 7386 if s.ParNumerator != nil && *s.ParNumerator < 1 { 7387 invalidParams.Add(request.NewErrParamMinValue("ParNumerator", 1)) 7388 } 7389 if s.Slices != nil && *s.Slices < 1 { 7390 invalidParams.Add(request.NewErrParamMinValue("Slices", 1)) 7391 } 7392 if s.QvbrSettings != nil { 7393 if err := s.QvbrSettings.Validate(); err != nil { 7394 invalidParams.AddNested("QvbrSettings", err.(request.ErrInvalidParams)) 7395 } 7396 } 7397 7398 if invalidParams.Len() > 0 { 7399 return invalidParams 7400 } 7401 return nil 7402} 7403 7404// SetAdaptiveQuantization sets the AdaptiveQuantization field's value. 7405func (s *H265Settings) SetAdaptiveQuantization(v string) *H265Settings { 7406 s.AdaptiveQuantization = &v 7407 return s 7408} 7409 7410// SetAlternateTransferFunctionSei sets the AlternateTransferFunctionSei field's value. 7411func (s *H265Settings) SetAlternateTransferFunctionSei(v string) *H265Settings { 7412 s.AlternateTransferFunctionSei = &v 7413 return s 7414} 7415 7416// SetBitrate sets the Bitrate field's value. 7417func (s *H265Settings) SetBitrate(v int64) *H265Settings { 7418 s.Bitrate = &v 7419 return s 7420} 7421 7422// SetCodecLevel sets the CodecLevel field's value. 7423func (s *H265Settings) SetCodecLevel(v string) *H265Settings { 7424 s.CodecLevel = &v 7425 return s 7426} 7427 7428// SetCodecProfile sets the CodecProfile field's value. 7429func (s *H265Settings) SetCodecProfile(v string) *H265Settings { 7430 s.CodecProfile = &v 7431 return s 7432} 7433 7434// SetDynamicSubGop sets the DynamicSubGop field's value. 7435func (s *H265Settings) SetDynamicSubGop(v string) *H265Settings { 7436 s.DynamicSubGop = &v 7437 return s 7438} 7439 7440// SetFlickerAdaptiveQuantization sets the FlickerAdaptiveQuantization field's value. 7441func (s *H265Settings) SetFlickerAdaptiveQuantization(v string) *H265Settings { 7442 s.FlickerAdaptiveQuantization = &v 7443 return s 7444} 7445 7446// SetFramerateControl sets the FramerateControl field's value. 7447func (s *H265Settings) SetFramerateControl(v string) *H265Settings { 7448 s.FramerateControl = &v 7449 return s 7450} 7451 7452// SetFramerateConversionAlgorithm sets the FramerateConversionAlgorithm field's value. 7453func (s *H265Settings) SetFramerateConversionAlgorithm(v string) *H265Settings { 7454 s.FramerateConversionAlgorithm = &v 7455 return s 7456} 7457 7458// SetFramerateDenominator sets the FramerateDenominator field's value. 7459func (s *H265Settings) SetFramerateDenominator(v int64) *H265Settings { 7460 s.FramerateDenominator = &v 7461 return s 7462} 7463 7464// SetFramerateNumerator sets the FramerateNumerator field's value. 7465func (s *H265Settings) SetFramerateNumerator(v int64) *H265Settings { 7466 s.FramerateNumerator = &v 7467 return s 7468} 7469 7470// SetGopBReference sets the GopBReference field's value. 7471func (s *H265Settings) SetGopBReference(v string) *H265Settings { 7472 s.GopBReference = &v 7473 return s 7474} 7475 7476// SetGopClosedCadence sets the GopClosedCadence field's value. 7477func (s *H265Settings) SetGopClosedCadence(v int64) *H265Settings { 7478 s.GopClosedCadence = &v 7479 return s 7480} 7481 7482// SetGopSize sets the GopSize field's value. 7483func (s *H265Settings) SetGopSize(v float64) *H265Settings { 7484 s.GopSize = &v 7485 return s 7486} 7487 7488// SetGopSizeUnits sets the GopSizeUnits field's value. 7489func (s *H265Settings) SetGopSizeUnits(v string) *H265Settings { 7490 s.GopSizeUnits = &v 7491 return s 7492} 7493 7494// SetHrdBufferInitialFillPercentage sets the HrdBufferInitialFillPercentage field's value. 7495func (s *H265Settings) SetHrdBufferInitialFillPercentage(v int64) *H265Settings { 7496 s.HrdBufferInitialFillPercentage = &v 7497 return s 7498} 7499 7500// SetHrdBufferSize sets the HrdBufferSize field's value. 7501func (s *H265Settings) SetHrdBufferSize(v int64) *H265Settings { 7502 s.HrdBufferSize = &v 7503 return s 7504} 7505 7506// SetInterlaceMode sets the InterlaceMode field's value. 7507func (s *H265Settings) SetInterlaceMode(v string) *H265Settings { 7508 s.InterlaceMode = &v 7509 return s 7510} 7511 7512// SetMaxBitrate sets the MaxBitrate field's value. 7513func (s *H265Settings) SetMaxBitrate(v int64) *H265Settings { 7514 s.MaxBitrate = &v 7515 return s 7516} 7517 7518// SetMinIInterval sets the MinIInterval field's value. 7519func (s *H265Settings) SetMinIInterval(v int64) *H265Settings { 7520 s.MinIInterval = &v 7521 return s 7522} 7523 7524// SetNumberBFramesBetweenReferenceFrames sets the NumberBFramesBetweenReferenceFrames field's value. 7525func (s *H265Settings) SetNumberBFramesBetweenReferenceFrames(v int64) *H265Settings { 7526 s.NumberBFramesBetweenReferenceFrames = &v 7527 return s 7528} 7529 7530// SetNumberReferenceFrames sets the NumberReferenceFrames field's value. 7531func (s *H265Settings) SetNumberReferenceFrames(v int64) *H265Settings { 7532 s.NumberReferenceFrames = &v 7533 return s 7534} 7535 7536// SetParControl sets the ParControl field's value. 7537func (s *H265Settings) SetParControl(v string) *H265Settings { 7538 s.ParControl = &v 7539 return s 7540} 7541 7542// SetParDenominator sets the ParDenominator field's value. 7543func (s *H265Settings) SetParDenominator(v int64) *H265Settings { 7544 s.ParDenominator = &v 7545 return s 7546} 7547 7548// SetParNumerator sets the ParNumerator field's value. 7549func (s *H265Settings) SetParNumerator(v int64) *H265Settings { 7550 s.ParNumerator = &v 7551 return s 7552} 7553 7554// SetQualityTuningLevel sets the QualityTuningLevel field's value. 7555func (s *H265Settings) SetQualityTuningLevel(v string) *H265Settings { 7556 s.QualityTuningLevel = &v 7557 return s 7558} 7559 7560// SetQvbrSettings sets the QvbrSettings field's value. 7561func (s *H265Settings) SetQvbrSettings(v *H265QvbrSettings) *H265Settings { 7562 s.QvbrSettings = v 7563 return s 7564} 7565 7566// SetRateControlMode sets the RateControlMode field's value. 7567func (s *H265Settings) SetRateControlMode(v string) *H265Settings { 7568 s.RateControlMode = &v 7569 return s 7570} 7571 7572// SetSampleAdaptiveOffsetFilterMode sets the SampleAdaptiveOffsetFilterMode field's value. 7573func (s *H265Settings) SetSampleAdaptiveOffsetFilterMode(v string) *H265Settings { 7574 s.SampleAdaptiveOffsetFilterMode = &v 7575 return s 7576} 7577 7578// SetSceneChangeDetect sets the SceneChangeDetect field's value. 7579func (s *H265Settings) SetSceneChangeDetect(v string) *H265Settings { 7580 s.SceneChangeDetect = &v 7581 return s 7582} 7583 7584// SetSlices sets the Slices field's value. 7585func (s *H265Settings) SetSlices(v int64) *H265Settings { 7586 s.Slices = &v 7587 return s 7588} 7589 7590// SetSlowPal sets the SlowPal field's value. 7591func (s *H265Settings) SetSlowPal(v string) *H265Settings { 7592 s.SlowPal = &v 7593 return s 7594} 7595 7596// SetSpatialAdaptiveQuantization sets the SpatialAdaptiveQuantization field's value. 7597func (s *H265Settings) SetSpatialAdaptiveQuantization(v string) *H265Settings { 7598 s.SpatialAdaptiveQuantization = &v 7599 return s 7600} 7601 7602// SetTelecine sets the Telecine field's value. 7603func (s *H265Settings) SetTelecine(v string) *H265Settings { 7604 s.Telecine = &v 7605 return s 7606} 7607 7608// SetTemporalAdaptiveQuantization sets the TemporalAdaptiveQuantization field's value. 7609func (s *H265Settings) SetTemporalAdaptiveQuantization(v string) *H265Settings { 7610 s.TemporalAdaptiveQuantization = &v 7611 return s 7612} 7613 7614// SetTemporalIds sets the TemporalIds field's value. 7615func (s *H265Settings) SetTemporalIds(v string) *H265Settings { 7616 s.TemporalIds = &v 7617 return s 7618} 7619 7620// SetTiles sets the Tiles field's value. 7621func (s *H265Settings) SetTiles(v string) *H265Settings { 7622 s.Tiles = &v 7623 return s 7624} 7625 7626// SetUnregisteredSeiTimecode sets the UnregisteredSeiTimecode field's value. 7627func (s *H265Settings) SetUnregisteredSeiTimecode(v string) *H265Settings { 7628 s.UnregisteredSeiTimecode = &v 7629 return s 7630} 7631 7632// SetWriteMp4PackagingType sets the WriteMp4PackagingType field's value. 7633func (s *H265Settings) SetWriteMp4PackagingType(v string) *H265Settings { 7634 s.WriteMp4PackagingType = &v 7635 return s 7636} 7637 7638// Use the HDR master display (Hdr10Metadata) settings to correct HDR metadata 7639// or to provide missing metadata. These values vary depending on the input 7640// video and must be provided by a color grader. Range is 0 to 50,000, each 7641// increment represents 0.00002 in CIE1931 color coordinate. Note that these 7642// settings are not color correction. Note that if you are creating HDR outputs 7643// inside of an HLS CMAF package, to comply with the Apple specification, you 7644// must use the HVC1 for H.265 setting. 7645type Hdr10Metadata struct { 7646 _ struct{} `type:"structure"` 7647 7648 // HDR Master Display Information must be provided by a color grader, using 7649 // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 7650 // in CIE1931 color coordinate. Note that this setting is not for color correction. 7651 BluePrimaryX *int64 `locationName:"bluePrimaryX" type:"integer"` 7652 7653 // HDR Master Display Information must be provided by a color grader, using 7654 // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 7655 // in CIE1931 color coordinate. Note that this setting is not for color correction. 7656 BluePrimaryY *int64 `locationName:"bluePrimaryY" type:"integer"` 7657 7658 // HDR Master Display Information must be provided by a color grader, using 7659 // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 7660 // in CIE1931 color coordinate. Note that this setting is not for color correction. 7661 GreenPrimaryX *int64 `locationName:"greenPrimaryX" type:"integer"` 7662 7663 // HDR Master Display Information must be provided by a color grader, using 7664 // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 7665 // in CIE1931 color coordinate. Note that this setting is not for color correction. 7666 GreenPrimaryY *int64 `locationName:"greenPrimaryY" type:"integer"` 7667 7668 // Maximum light level among all samples in the coded video sequence, in units 7669 // of candelas per square meter. 7670 // 7671 // MaxContentLightLevel is a required field 7672 MaxContentLightLevel *int64 `locationName:"maxContentLightLevel" type:"integer" required:"true"` 7673 7674 // Maximum average light level of any frame in the coded video sequence, in 7675 // units of candelas per square meter. 7676 // 7677 // MaxFrameAverageLightLevel is a required field 7678 MaxFrameAverageLightLevel *int64 `locationName:"maxFrameAverageLightLevel" type:"integer" required:"true"` 7679 7680 // Nominal maximum mastering display luminance in units of of 0.0001 candelas 7681 // per square meter. 7682 MaxLuminance *int64 `locationName:"maxLuminance" type:"integer"` 7683 7684 // Nominal minimum mastering display luminance in units of of 0.0001 candelas 7685 // per square meter 7686 MinLuminance *int64 `locationName:"minLuminance" type:"integer"` 7687 7688 // HDR Master Display Information must be provided by a color grader, using 7689 // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 7690 // in CIE1931 color coordinate. Note that this setting is not for color correction. 7691 RedPrimaryX *int64 `locationName:"redPrimaryX" type:"integer"` 7692 7693 // HDR Master Display Information must be provided by a color grader, using 7694 // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 7695 // in CIE1931 color coordinate. Note that this setting is not for color correction. 7696 RedPrimaryY *int64 `locationName:"redPrimaryY" type:"integer"` 7697 7698 // HDR Master Display Information must be provided by a color grader, using 7699 // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 7700 // in CIE1931 color coordinate. Note that this setting is not for color correction. 7701 WhitePointX *int64 `locationName:"whitePointX" type:"integer"` 7702 7703 // HDR Master Display Information must be provided by a color grader, using 7704 // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 7705 // in CIE1931 color coordinate. Note that this setting is not for color correction. 7706 WhitePointY *int64 `locationName:"whitePointY" type:"integer"` 7707} 7708 7709// String returns the string representation 7710func (s Hdr10Metadata) String() string { 7711 return awsutil.Prettify(s) 7712} 7713 7714// GoString returns the string representation 7715func (s Hdr10Metadata) GoString() string { 7716 return s.String() 7717} 7718 7719// Validate inspects the fields of the type to determine if they are valid. 7720func (s *Hdr10Metadata) Validate() error { 7721 invalidParams := request.ErrInvalidParams{Context: "Hdr10Metadata"} 7722 if s.MaxContentLightLevel == nil { 7723 invalidParams.Add(request.NewErrParamRequired("MaxContentLightLevel")) 7724 } 7725 if s.MaxFrameAverageLightLevel == nil { 7726 invalidParams.Add(request.NewErrParamRequired("MaxFrameAverageLightLevel")) 7727 } 7728 7729 if invalidParams.Len() > 0 { 7730 return invalidParams 7731 } 7732 return nil 7733} 7734 7735// SetBluePrimaryX sets the BluePrimaryX field's value. 7736func (s *Hdr10Metadata) SetBluePrimaryX(v int64) *Hdr10Metadata { 7737 s.BluePrimaryX = &v 7738 return s 7739} 7740 7741// SetBluePrimaryY sets the BluePrimaryY field's value. 7742func (s *Hdr10Metadata) SetBluePrimaryY(v int64) *Hdr10Metadata { 7743 s.BluePrimaryY = &v 7744 return s 7745} 7746 7747// SetGreenPrimaryX sets the GreenPrimaryX field's value. 7748func (s *Hdr10Metadata) SetGreenPrimaryX(v int64) *Hdr10Metadata { 7749 s.GreenPrimaryX = &v 7750 return s 7751} 7752 7753// SetGreenPrimaryY sets the GreenPrimaryY field's value. 7754func (s *Hdr10Metadata) SetGreenPrimaryY(v int64) *Hdr10Metadata { 7755 s.GreenPrimaryY = &v 7756 return s 7757} 7758 7759// SetMaxContentLightLevel sets the MaxContentLightLevel field's value. 7760func (s *Hdr10Metadata) SetMaxContentLightLevel(v int64) *Hdr10Metadata { 7761 s.MaxContentLightLevel = &v 7762 return s 7763} 7764 7765// SetMaxFrameAverageLightLevel sets the MaxFrameAverageLightLevel field's value. 7766func (s *Hdr10Metadata) SetMaxFrameAverageLightLevel(v int64) *Hdr10Metadata { 7767 s.MaxFrameAverageLightLevel = &v 7768 return s 7769} 7770 7771// SetMaxLuminance sets the MaxLuminance field's value. 7772func (s *Hdr10Metadata) SetMaxLuminance(v int64) *Hdr10Metadata { 7773 s.MaxLuminance = &v 7774 return s 7775} 7776 7777// SetMinLuminance sets the MinLuminance field's value. 7778func (s *Hdr10Metadata) SetMinLuminance(v int64) *Hdr10Metadata { 7779 s.MinLuminance = &v 7780 return s 7781} 7782 7783// SetRedPrimaryX sets the RedPrimaryX field's value. 7784func (s *Hdr10Metadata) SetRedPrimaryX(v int64) *Hdr10Metadata { 7785 s.RedPrimaryX = &v 7786 return s 7787} 7788 7789// SetRedPrimaryY sets the RedPrimaryY field's value. 7790func (s *Hdr10Metadata) SetRedPrimaryY(v int64) *Hdr10Metadata { 7791 s.RedPrimaryY = &v 7792 return s 7793} 7794 7795// SetWhitePointX sets the WhitePointX field's value. 7796func (s *Hdr10Metadata) SetWhitePointX(v int64) *Hdr10Metadata { 7797 s.WhitePointX = &v 7798 return s 7799} 7800 7801// SetWhitePointY sets the WhitePointY field's value. 7802func (s *Hdr10Metadata) SetWhitePointY(v int64) *Hdr10Metadata { 7803 s.WhitePointY = &v 7804 return s 7805} 7806 7807// Caption Language Mapping 7808type HlsCaptionLanguageMapping struct { 7809 _ struct{} `type:"structure"` 7810 7811 // Caption channel. 7812 CaptionChannel *int64 `locationName:"captionChannel" type:"integer"` 7813 7814 // Specify the language for this caption channel, using the ISO 639-2 or ISO 7815 // 639-3 three-letter language code 7816 CustomLanguageCode *string `locationName:"customLanguageCode" min:"3" type:"string"` 7817 7818 // Specify the language, using the ISO 639-2 three-letter code listed at https://www.loc.gov/standards/iso639-2/php/code_list.php. 7819 LanguageCode *string `locationName:"languageCode" type:"string" enum:"LanguageCode"` 7820 7821 // Caption language description. 7822 LanguageDescription *string `locationName:"languageDescription" type:"string"` 7823} 7824 7825// String returns the string representation 7826func (s HlsCaptionLanguageMapping) String() string { 7827 return awsutil.Prettify(s) 7828} 7829 7830// GoString returns the string representation 7831func (s HlsCaptionLanguageMapping) GoString() string { 7832 return s.String() 7833} 7834 7835// Validate inspects the fields of the type to determine if they are valid. 7836func (s *HlsCaptionLanguageMapping) Validate() error { 7837 invalidParams := request.ErrInvalidParams{Context: "HlsCaptionLanguageMapping"} 7838 if s.CaptionChannel != nil && *s.CaptionChannel < -2.147483648e+09 { 7839 invalidParams.Add(request.NewErrParamMinValue("CaptionChannel", -2.147483648e+09)) 7840 } 7841 if s.CustomLanguageCode != nil && len(*s.CustomLanguageCode) < 3 { 7842 invalidParams.Add(request.NewErrParamMinLen("CustomLanguageCode", 3)) 7843 } 7844 7845 if invalidParams.Len() > 0 { 7846 return invalidParams 7847 } 7848 return nil 7849} 7850 7851// SetCaptionChannel sets the CaptionChannel field's value. 7852func (s *HlsCaptionLanguageMapping) SetCaptionChannel(v int64) *HlsCaptionLanguageMapping { 7853 s.CaptionChannel = &v 7854 return s 7855} 7856 7857// SetCustomLanguageCode sets the CustomLanguageCode field's value. 7858func (s *HlsCaptionLanguageMapping) SetCustomLanguageCode(v string) *HlsCaptionLanguageMapping { 7859 s.CustomLanguageCode = &v 7860 return s 7861} 7862 7863// SetLanguageCode sets the LanguageCode field's value. 7864func (s *HlsCaptionLanguageMapping) SetLanguageCode(v string) *HlsCaptionLanguageMapping { 7865 s.LanguageCode = &v 7866 return s 7867} 7868 7869// SetLanguageDescription sets the LanguageDescription field's value. 7870func (s *HlsCaptionLanguageMapping) SetLanguageDescription(v string) *HlsCaptionLanguageMapping { 7871 s.LanguageDescription = &v 7872 return s 7873} 7874 7875// Settings for HLS encryption 7876type HlsEncryptionSettings struct { 7877 _ struct{} `type:"structure"` 7878 7879 // This is a 128-bit, 16-byte hex value represented by a 32-character text string. 7880 // If this parameter is not set then the Initialization Vector will follow the 7881 // segment number by default. 7882 ConstantInitializationVector *string `locationName:"constantInitializationVector" min:"32" type:"string"` 7883 7884 // Encrypts the segments with the given encryption scheme. Leave blank to disable. 7885 // Selecting 'Disabled' in the web interface also disables encryption. 7886 EncryptionMethod *string `locationName:"encryptionMethod" type:"string" enum:"HlsEncryptionType"` 7887 7888 // The Initialization Vector is a 128-bit number used in conjunction with the 7889 // key for encrypting blocks. If set to INCLUDE, Initialization Vector is listed 7890 // in the manifest. Otherwise Initialization Vector is not in the manifest. 7891 InitializationVectorInManifest *string `locationName:"initializationVectorInManifest" type:"string" enum:"HlsInitializationVectorInManifest"` 7892 7893 // Settings for use with a SPEKE key provider 7894 SpekeKeyProvider *SpekeKeyProvider `locationName:"spekeKeyProvider" type:"structure"` 7895 7896 // Settings for use with a SPEKE key provider. 7897 StaticKeyProvider *StaticKeyProvider `locationName:"staticKeyProvider" type:"structure"` 7898 7899 // Indicates which type of key provider is used for encryption. 7900 // 7901 // Type is a required field 7902 Type *string `locationName:"type" type:"string" required:"true" enum:"HlsKeyProviderType"` 7903} 7904 7905// String returns the string representation 7906func (s HlsEncryptionSettings) String() string { 7907 return awsutil.Prettify(s) 7908} 7909 7910// GoString returns the string representation 7911func (s HlsEncryptionSettings) GoString() string { 7912 return s.String() 7913} 7914 7915// Validate inspects the fields of the type to determine if they are valid. 7916func (s *HlsEncryptionSettings) Validate() error { 7917 invalidParams := request.ErrInvalidParams{Context: "HlsEncryptionSettings"} 7918 if s.ConstantInitializationVector != nil && len(*s.ConstantInitializationVector) < 32 { 7919 invalidParams.Add(request.NewErrParamMinLen("ConstantInitializationVector", 32)) 7920 } 7921 if s.Type == nil { 7922 invalidParams.Add(request.NewErrParamRequired("Type")) 7923 } 7924 if s.SpekeKeyProvider != nil { 7925 if err := s.SpekeKeyProvider.Validate(); err != nil { 7926 invalidParams.AddNested("SpekeKeyProvider", err.(request.ErrInvalidParams)) 7927 } 7928 } 7929 if s.StaticKeyProvider != nil { 7930 if err := s.StaticKeyProvider.Validate(); err != nil { 7931 invalidParams.AddNested("StaticKeyProvider", err.(request.ErrInvalidParams)) 7932 } 7933 } 7934 7935 if invalidParams.Len() > 0 { 7936 return invalidParams 7937 } 7938 return nil 7939} 7940 7941// SetConstantInitializationVector sets the ConstantInitializationVector field's value. 7942func (s *HlsEncryptionSettings) SetConstantInitializationVector(v string) *HlsEncryptionSettings { 7943 s.ConstantInitializationVector = &v 7944 return s 7945} 7946 7947// SetEncryptionMethod sets the EncryptionMethod field's value. 7948func (s *HlsEncryptionSettings) SetEncryptionMethod(v string) *HlsEncryptionSettings { 7949 s.EncryptionMethod = &v 7950 return s 7951} 7952 7953// SetInitializationVectorInManifest sets the InitializationVectorInManifest field's value. 7954func (s *HlsEncryptionSettings) SetInitializationVectorInManifest(v string) *HlsEncryptionSettings { 7955 s.InitializationVectorInManifest = &v 7956 return s 7957} 7958 7959// SetSpekeKeyProvider sets the SpekeKeyProvider field's value. 7960func (s *HlsEncryptionSettings) SetSpekeKeyProvider(v *SpekeKeyProvider) *HlsEncryptionSettings { 7961 s.SpekeKeyProvider = v 7962 return s 7963} 7964 7965// SetStaticKeyProvider sets the StaticKeyProvider field's value. 7966func (s *HlsEncryptionSettings) SetStaticKeyProvider(v *StaticKeyProvider) *HlsEncryptionSettings { 7967 s.StaticKeyProvider = v 7968 return s 7969} 7970 7971// SetType sets the Type field's value. 7972func (s *HlsEncryptionSettings) SetType(v string) *HlsEncryptionSettings { 7973 s.Type = &v 7974 return s 7975} 7976 7977// Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to 7978// HLS_GROUP_SETTINGS. 7979type HlsGroupSettings struct { 7980 _ struct{} `type:"structure"` 7981 7982 // Choose one or more ad marker types to pass SCTE35 signals through to this 7983 // group of Apple HLS outputs. 7984 AdMarkers []*string `locationName:"adMarkers" type:"list"` 7985 7986 // A partial URI prefix that will be prepended to each output in the media .m3u8 7987 // file. Can be used if base manifest is delivered from a different URL than 7988 // the main .m3u8 file. 7989 BaseUrl *string `locationName:"baseUrl" type:"string"` 7990 7991 // Language to be used on Caption outputs 7992 CaptionLanguageMappings []*HlsCaptionLanguageMapping `locationName:"captionLanguageMappings" type:"list"` 7993 7994 // Applies only to 608 Embedded output captions. Insert: Include CLOSED-CAPTIONS 7995 // lines in the manifest. Specify at least one language in the CC1 Language 7996 // Code field. One CLOSED-CAPTION line is added for each Language Code you specify. 7997 // Make sure to specify the languages in the order in which they appear in the 7998 // original source (if the source is embedded format) or the order of the caption 7999 // selectors (if the source is other than embedded). Otherwise, languages in 8000 // the manifest will not match up properly with the output captions. None: Include 8001 // CLOSED-CAPTIONS=NONE line in the manifest. Omit: Omit any CLOSED-CAPTIONS 8002 // line from the manifest. 8003 CaptionLanguageSetting *string `locationName:"captionLanguageSetting" type:"string" enum:"HlsCaptionLanguageSetting"` 8004 8005 // When set to ENABLED, sets #EXT-X-ALLOW-CACHE:no tag, which prevents client 8006 // from saving media segments for later replay. 8007 ClientCache *string `locationName:"clientCache" type:"string" enum:"HlsClientCache"` 8008 8009 // Specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist 8010 // generation. 8011 CodecSpecification *string `locationName:"codecSpecification" type:"string" enum:"HlsCodecSpecification"` 8012 8013 // Use Destination (Destination) to specify the S3 output location and the output 8014 // filename base. Destination accepts format identifiers. If you do not specify 8015 // the base filename in the URI, the service will use the filename of the input 8016 // file. If your job has multiple inputs, the service uses the filename of the 8017 // first input file. 8018 Destination *string `locationName:"destination" type:"string"` 8019 8020 // Indicates whether segments should be placed in subdirectories. 8021 DirectoryStructure *string `locationName:"directoryStructure" type:"string" enum:"HlsDirectoryStructure"` 8022 8023 // DRM settings. 8024 Encryption *HlsEncryptionSettings `locationName:"encryption" type:"structure"` 8025 8026 // When set to GZIP, compresses HLS playlist. 8027 ManifestCompression *string `locationName:"manifestCompression" type:"string" enum:"HlsManifestCompression"` 8028 8029 // Indicates whether the output manifest should use floating point values for 8030 // segment duration. 8031 ManifestDurationFormat *string `locationName:"manifestDurationFormat" type:"string" enum:"HlsManifestDurationFormat"` 8032 8033 // Keep this setting at the default value of 0, unless you are troubleshooting 8034 // a problem with how devices play back the end of your video asset. If you 8035 // know that player devices are hanging on the final segment of your video because 8036 // the length of your final segment is too short, use this setting to specify 8037 // a minimum final segment length, in seconds. Choose a value that is greater 8038 // than or equal to 1 and less than your segment length. When you specify a 8039 // value for this setting, the encoder will combine any final segment that is 8040 // shorter than the length that you specify with the previous segment. For example, 8041 // your segment length is 3 seconds and your final segment is .5 seconds without 8042 // a minimum final segment length; when you set the minimum final segment length 8043 // to 1, your final segment is 3.5 seconds. 8044 MinFinalSegmentLength *float64 `locationName:"minFinalSegmentLength" type:"double"` 8045 8046 // When set, Minimum Segment Size is enforced by looking ahead and back within 8047 // the specified range for a nearby avail and extending the segment size if 8048 // needed. 8049 // 8050 // MinSegmentLength is a required field 8051 MinSegmentLength *int64 `locationName:"minSegmentLength" type:"integer" required:"true"` 8052 8053 // Indicates whether the .m3u8 manifest file should be generated for this HLS 8054 // output group. 8055 OutputSelection *string `locationName:"outputSelection" type:"string" enum:"HlsOutputSelection"` 8056 8057 // Includes or excludes EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files. 8058 // The value is calculated as follows: either the program date and time are 8059 // initialized using the input timecode source, or the time is initialized using 8060 // the input timecode source and the date is initialized using the timestamp_offset. 8061 ProgramDateTime *string `locationName:"programDateTime" type:"string" enum:"HlsProgramDateTime"` 8062 8063 // Period of insertion of EXT-X-PROGRAM-DATE-TIME entry, in seconds. 8064 ProgramDateTimePeriod *int64 `locationName:"programDateTimePeriod" type:"integer"` 8065 8066 // When set to SINGLE_FILE, emits program as a single media resource (.ts) file, 8067 // uses #EXT-X-BYTERANGE tags to index segment for playback. 8068 SegmentControl *string `locationName:"segmentControl" type:"string" enum:"HlsSegmentControl"` 8069 8070 // Length of MPEG-2 Transport Stream segments to create (in seconds). Note that 8071 // segments will end on the next keyframe after this number of seconds, so actual 8072 // segment length may be longer. 8073 // 8074 // SegmentLength is a required field 8075 SegmentLength *int64 `locationName:"segmentLength" min:"1" type:"integer" required:"true"` 8076 8077 // Number of segments to write to a subdirectory before starting a new one. 8078 // directoryStructure must be SINGLE_DIRECTORY for this setting to have an effect. 8079 SegmentsPerSubdirectory *int64 `locationName:"segmentsPerSubdirectory" min:"1" type:"integer"` 8080 8081 // Include or exclude RESOLUTION attribute for video in EXT-X-STREAM-INF tag 8082 // of variant manifest. 8083 StreamInfResolution *string `locationName:"streamInfResolution" type:"string" enum:"HlsStreamInfResolution"` 8084 8085 // Indicates ID3 frame that has the timecode. 8086 TimedMetadataId3Frame *string `locationName:"timedMetadataId3Frame" type:"string" enum:"HlsTimedMetadataId3Frame"` 8087 8088 // Timed Metadata interval in seconds. 8089 TimedMetadataId3Period *int64 `locationName:"timedMetadataId3Period" type:"integer"` 8090 8091 // Provides an extra millisecond delta offset to fine tune the timestamps. 8092 TimestampDeltaMilliseconds *int64 `locationName:"timestampDeltaMilliseconds" type:"integer"` 8093} 8094 8095// String returns the string representation 8096func (s HlsGroupSettings) String() string { 8097 return awsutil.Prettify(s) 8098} 8099 8100// GoString returns the string representation 8101func (s HlsGroupSettings) GoString() string { 8102 return s.String() 8103} 8104 8105// Validate inspects the fields of the type to determine if they are valid. 8106func (s *HlsGroupSettings) Validate() error { 8107 invalidParams := request.ErrInvalidParams{Context: "HlsGroupSettings"} 8108 if s.MinSegmentLength == nil { 8109 invalidParams.Add(request.NewErrParamRequired("MinSegmentLength")) 8110 } 8111 if s.SegmentLength == nil { 8112 invalidParams.Add(request.NewErrParamRequired("SegmentLength")) 8113 } 8114 if s.SegmentLength != nil && *s.SegmentLength < 1 { 8115 invalidParams.Add(request.NewErrParamMinValue("SegmentLength", 1)) 8116 } 8117 if s.SegmentsPerSubdirectory != nil && *s.SegmentsPerSubdirectory < 1 { 8118 invalidParams.Add(request.NewErrParamMinValue("SegmentsPerSubdirectory", 1)) 8119 } 8120 if s.TimedMetadataId3Period != nil && *s.TimedMetadataId3Period < -2.147483648e+09 { 8121 invalidParams.Add(request.NewErrParamMinValue("TimedMetadataId3Period", -2.147483648e+09)) 8122 } 8123 if s.TimestampDeltaMilliseconds != nil && *s.TimestampDeltaMilliseconds < -2.147483648e+09 { 8124 invalidParams.Add(request.NewErrParamMinValue("TimestampDeltaMilliseconds", -2.147483648e+09)) 8125 } 8126 if s.CaptionLanguageMappings != nil { 8127 for i, v := range s.CaptionLanguageMappings { 8128 if v == nil { 8129 continue 8130 } 8131 if err := v.Validate(); err != nil { 8132 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionLanguageMappings", i), err.(request.ErrInvalidParams)) 8133 } 8134 } 8135 } 8136 if s.Encryption != nil { 8137 if err := s.Encryption.Validate(); err != nil { 8138 invalidParams.AddNested("Encryption", err.(request.ErrInvalidParams)) 8139 } 8140 } 8141 8142 if invalidParams.Len() > 0 { 8143 return invalidParams 8144 } 8145 return nil 8146} 8147 8148// SetAdMarkers sets the AdMarkers field's value. 8149func (s *HlsGroupSettings) SetAdMarkers(v []*string) *HlsGroupSettings { 8150 s.AdMarkers = v 8151 return s 8152} 8153 8154// SetBaseUrl sets the BaseUrl field's value. 8155func (s *HlsGroupSettings) SetBaseUrl(v string) *HlsGroupSettings { 8156 s.BaseUrl = &v 8157 return s 8158} 8159 8160// SetCaptionLanguageMappings sets the CaptionLanguageMappings field's value. 8161func (s *HlsGroupSettings) SetCaptionLanguageMappings(v []*HlsCaptionLanguageMapping) *HlsGroupSettings { 8162 s.CaptionLanguageMappings = v 8163 return s 8164} 8165 8166// SetCaptionLanguageSetting sets the CaptionLanguageSetting field's value. 8167func (s *HlsGroupSettings) SetCaptionLanguageSetting(v string) *HlsGroupSettings { 8168 s.CaptionLanguageSetting = &v 8169 return s 8170} 8171 8172// SetClientCache sets the ClientCache field's value. 8173func (s *HlsGroupSettings) SetClientCache(v string) *HlsGroupSettings { 8174 s.ClientCache = &v 8175 return s 8176} 8177 8178// SetCodecSpecification sets the CodecSpecification field's value. 8179func (s *HlsGroupSettings) SetCodecSpecification(v string) *HlsGroupSettings { 8180 s.CodecSpecification = &v 8181 return s 8182} 8183 8184// SetDestination sets the Destination field's value. 8185func (s *HlsGroupSettings) SetDestination(v string) *HlsGroupSettings { 8186 s.Destination = &v 8187 return s 8188} 8189 8190// SetDirectoryStructure sets the DirectoryStructure field's value. 8191func (s *HlsGroupSettings) SetDirectoryStructure(v string) *HlsGroupSettings { 8192 s.DirectoryStructure = &v 8193 return s 8194} 8195 8196// SetEncryption sets the Encryption field's value. 8197func (s *HlsGroupSettings) SetEncryption(v *HlsEncryptionSettings) *HlsGroupSettings { 8198 s.Encryption = v 8199 return s 8200} 8201 8202// SetManifestCompression sets the ManifestCompression field's value. 8203func (s *HlsGroupSettings) SetManifestCompression(v string) *HlsGroupSettings { 8204 s.ManifestCompression = &v 8205 return s 8206} 8207 8208// SetManifestDurationFormat sets the ManifestDurationFormat field's value. 8209func (s *HlsGroupSettings) SetManifestDurationFormat(v string) *HlsGroupSettings { 8210 s.ManifestDurationFormat = &v 8211 return s 8212} 8213 8214// SetMinFinalSegmentLength sets the MinFinalSegmentLength field's value. 8215func (s *HlsGroupSettings) SetMinFinalSegmentLength(v float64) *HlsGroupSettings { 8216 s.MinFinalSegmentLength = &v 8217 return s 8218} 8219 8220// SetMinSegmentLength sets the MinSegmentLength field's value. 8221func (s *HlsGroupSettings) SetMinSegmentLength(v int64) *HlsGroupSettings { 8222 s.MinSegmentLength = &v 8223 return s 8224} 8225 8226// SetOutputSelection sets the OutputSelection field's value. 8227func (s *HlsGroupSettings) SetOutputSelection(v string) *HlsGroupSettings { 8228 s.OutputSelection = &v 8229 return s 8230} 8231 8232// SetProgramDateTime sets the ProgramDateTime field's value. 8233func (s *HlsGroupSettings) SetProgramDateTime(v string) *HlsGroupSettings { 8234 s.ProgramDateTime = &v 8235 return s 8236} 8237 8238// SetProgramDateTimePeriod sets the ProgramDateTimePeriod field's value. 8239func (s *HlsGroupSettings) SetProgramDateTimePeriod(v int64) *HlsGroupSettings { 8240 s.ProgramDateTimePeriod = &v 8241 return s 8242} 8243 8244// SetSegmentControl sets the SegmentControl field's value. 8245func (s *HlsGroupSettings) SetSegmentControl(v string) *HlsGroupSettings { 8246 s.SegmentControl = &v 8247 return s 8248} 8249 8250// SetSegmentLength sets the SegmentLength field's value. 8251func (s *HlsGroupSettings) SetSegmentLength(v int64) *HlsGroupSettings { 8252 s.SegmentLength = &v 8253 return s 8254} 8255 8256// SetSegmentsPerSubdirectory sets the SegmentsPerSubdirectory field's value. 8257func (s *HlsGroupSettings) SetSegmentsPerSubdirectory(v int64) *HlsGroupSettings { 8258 s.SegmentsPerSubdirectory = &v 8259 return s 8260} 8261 8262// SetStreamInfResolution sets the StreamInfResolution field's value. 8263func (s *HlsGroupSettings) SetStreamInfResolution(v string) *HlsGroupSettings { 8264 s.StreamInfResolution = &v 8265 return s 8266} 8267 8268// SetTimedMetadataId3Frame sets the TimedMetadataId3Frame field's value. 8269func (s *HlsGroupSettings) SetTimedMetadataId3Frame(v string) *HlsGroupSettings { 8270 s.TimedMetadataId3Frame = &v 8271 return s 8272} 8273 8274// SetTimedMetadataId3Period sets the TimedMetadataId3Period field's value. 8275func (s *HlsGroupSettings) SetTimedMetadataId3Period(v int64) *HlsGroupSettings { 8276 s.TimedMetadataId3Period = &v 8277 return s 8278} 8279 8280// SetTimestampDeltaMilliseconds sets the TimestampDeltaMilliseconds field's value. 8281func (s *HlsGroupSettings) SetTimestampDeltaMilliseconds(v int64) *HlsGroupSettings { 8282 s.TimestampDeltaMilliseconds = &v 8283 return s 8284} 8285 8286// Settings for HLS output groups 8287type HlsSettings struct { 8288 _ struct{} `type:"structure"` 8289 8290 // Specifies the group to which the audio Rendition belongs. 8291 AudioGroupId *string `locationName:"audioGroupId" type:"string"` 8292 8293 // List all the audio groups that are used with the video output stream. Input 8294 // all the audio GROUP-IDs that are associated to the video, separate by ','. 8295 AudioRenditionSets *string `locationName:"audioRenditionSets" type:"string"` 8296 8297 // Four types of audio-only tracks are supported: Audio-Only Variant Stream 8298 // The client can play back this audio-only stream instead of video in low-bandwidth 8299 // scenarios. Represented as an EXT-X-STREAM-INF in the HLS manifest. Alternate 8300 // Audio, Auto Select, Default Alternate rendition that the client should try 8301 // to play back by default. Represented as an EXT-X-MEDIA in the HLS manifest 8302 // with DEFAULT=YES, AUTOSELECT=YES Alternate Audio, Auto Select, Not Default 8303 // Alternate rendition that the client may try to play back by default. Represented 8304 // as an EXT-X-MEDIA in the HLS manifest with DEFAULT=NO, AUTOSELECT=YES Alternate 8305 // Audio, not Auto Select Alternate rendition that the client will not try to 8306 // play back by default. Represented as an EXT-X-MEDIA in the HLS manifest with 8307 // DEFAULT=NO, AUTOSELECT=NO 8308 AudioTrackType *string `locationName:"audioTrackType" type:"string" enum:"HlsAudioTrackType"` 8309 8310 // When set to INCLUDE, writes I-Frame Only Manifest in addition to the HLS 8311 // manifest 8312 IFrameOnlyManifest *string `locationName:"iFrameOnlyManifest" type:"string" enum:"HlsIFrameOnlyManifest"` 8313 8314 // String concatenated to end of segment filenames. Accepts "Format Identifiers":#format_identifier_parameters. 8315 SegmentModifier *string `locationName:"segmentModifier" type:"string"` 8316} 8317 8318// String returns the string representation 8319func (s HlsSettings) String() string { 8320 return awsutil.Prettify(s) 8321} 8322 8323// GoString returns the string representation 8324func (s HlsSettings) GoString() string { 8325 return s.String() 8326} 8327 8328// SetAudioGroupId sets the AudioGroupId field's value. 8329func (s *HlsSettings) SetAudioGroupId(v string) *HlsSettings { 8330 s.AudioGroupId = &v 8331 return s 8332} 8333 8334// SetAudioRenditionSets sets the AudioRenditionSets field's value. 8335func (s *HlsSettings) SetAudioRenditionSets(v string) *HlsSettings { 8336 s.AudioRenditionSets = &v 8337 return s 8338} 8339 8340// SetAudioTrackType sets the AudioTrackType field's value. 8341func (s *HlsSettings) SetAudioTrackType(v string) *HlsSettings { 8342 s.AudioTrackType = &v 8343 return s 8344} 8345 8346// SetIFrameOnlyManifest sets the IFrameOnlyManifest field's value. 8347func (s *HlsSettings) SetIFrameOnlyManifest(v string) *HlsSettings { 8348 s.IFrameOnlyManifest = &v 8349 return s 8350} 8351 8352// SetSegmentModifier sets the SegmentModifier field's value. 8353func (s *HlsSettings) SetSegmentModifier(v string) *HlsSettings { 8354 s.SegmentModifier = &v 8355 return s 8356} 8357 8358// To insert ID3 tags in your output, specify two values. Use ID3 tag (Id3) 8359// to specify the base 64 encoded string and use Timecode (TimeCode) to specify 8360// the time when the tag should be inserted. To insert multiple ID3 tags in 8361// your output, create multiple instances of ID3 insertion (Id3Insertion). 8362type Id3Insertion struct { 8363 _ struct{} `type:"structure"` 8364 8365 // Use ID3 tag (Id3) to provide a tag value in base64-encode format. 8366 // 8367 // Id3 is a required field 8368 Id3 *string `locationName:"id3" type:"string" required:"true"` 8369 8370 // Provide a Timecode (TimeCode) in HH:MM:SS:FF or HH:MM:SS;FF format. 8371 // 8372 // Timecode is a required field 8373 Timecode *string `locationName:"timecode" type:"string" required:"true"` 8374} 8375 8376// String returns the string representation 8377func (s Id3Insertion) String() string { 8378 return awsutil.Prettify(s) 8379} 8380 8381// GoString returns the string representation 8382func (s Id3Insertion) GoString() string { 8383 return s.String() 8384} 8385 8386// Validate inspects the fields of the type to determine if they are valid. 8387func (s *Id3Insertion) Validate() error { 8388 invalidParams := request.ErrInvalidParams{Context: "Id3Insertion"} 8389 if s.Id3 == nil { 8390 invalidParams.Add(request.NewErrParamRequired("Id3")) 8391 } 8392 if s.Timecode == nil { 8393 invalidParams.Add(request.NewErrParamRequired("Timecode")) 8394 } 8395 8396 if invalidParams.Len() > 0 { 8397 return invalidParams 8398 } 8399 return nil 8400} 8401 8402// SetId3 sets the Id3 field's value. 8403func (s *Id3Insertion) SetId3(v string) *Id3Insertion { 8404 s.Id3 = &v 8405 return s 8406} 8407 8408// SetTimecode sets the Timecode field's value. 8409func (s *Id3Insertion) SetTimecode(v string) *Id3Insertion { 8410 s.Timecode = &v 8411 return s 8412} 8413 8414// Enable the Image inserter (ImageInserter) feature to include a graphic overlay 8415// on your video. Enable or disable this feature for each output individually. 8416// This setting is disabled by default. 8417type ImageInserter struct { 8418 _ struct{} `type:"structure"` 8419 8420 // Image to insert. Must be 32 bit windows BMP, PNG, or TGA file. Must not be 8421 // larger than the output frames. 8422 // 8423 // InsertableImages is a required field 8424 InsertableImages []*InsertableImage `locationName:"insertableImages" type:"list" required:"true"` 8425} 8426 8427// String returns the string representation 8428func (s ImageInserter) String() string { 8429 return awsutil.Prettify(s) 8430} 8431 8432// GoString returns the string representation 8433func (s ImageInserter) GoString() string { 8434 return s.String() 8435} 8436 8437// Validate inspects the fields of the type to determine if they are valid. 8438func (s *ImageInserter) Validate() error { 8439 invalidParams := request.ErrInvalidParams{Context: "ImageInserter"} 8440 if s.InsertableImages == nil { 8441 invalidParams.Add(request.NewErrParamRequired("InsertableImages")) 8442 } 8443 if s.InsertableImages != nil { 8444 for i, v := range s.InsertableImages { 8445 if v == nil { 8446 continue 8447 } 8448 if err := v.Validate(); err != nil { 8449 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InsertableImages", i), err.(request.ErrInvalidParams)) 8450 } 8451 } 8452 } 8453 8454 if invalidParams.Len() > 0 { 8455 return invalidParams 8456 } 8457 return nil 8458} 8459 8460// SetInsertableImages sets the InsertableImages field's value. 8461func (s *ImageInserter) SetInsertableImages(v []*InsertableImage) *ImageInserter { 8462 s.InsertableImages = v 8463 return s 8464} 8465 8466// Specifies media input 8467type Input struct { 8468 _ struct{} `type:"structure"` 8469 8470 // Specifies set of audio selectors within an input to combine. An input may 8471 // have multiple audio selector groups. See "Audio Selector Group":#inputs-audio_selector_group 8472 // for more information. 8473 AudioSelectorGroups map[string]*AudioSelectorGroup `locationName:"audioSelectorGroups" type:"map"` 8474 8475 // Use Audio selectors (AudioSelectors) to specify a track or set of tracks 8476 // from the input that you will use in your outputs. You can use mutiple Audio 8477 // selectors per input. 8478 AudioSelectors map[string]*AudioSelector `locationName:"audioSelectors" type:"map"` 8479 8480 // Use Captions selectors (CaptionSelectors) to specify the captions data from 8481 // the input that you will use in your outputs. You can use mutiple captions 8482 // selectors per input. 8483 CaptionSelectors map[string]*CaptionSelector `locationName:"captionSelectors" type:"map"` 8484 8485 // Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. 8486 // Default is disabled. Only manaully controllable for MPEG2 and uncompressed 8487 // video inputs. 8488 DeblockFilter *string `locationName:"deblockFilter" type:"string" enum:"InputDeblockFilter"` 8489 8490 // Enable Denoise (InputDenoiseFilter) to filter noise from the input. Default 8491 // is disabled. Only applicable to MPEG2, H.264, H.265, and uncompressed video 8492 // inputs. 8493 DenoiseFilter *string `locationName:"denoiseFilter" type:"string" enum:"InputDenoiseFilter"` 8494 8495 // Use Input (fileInput) to define the source file used in the transcode job. 8496 // There can be multiple inputs in a job. These inputs are concantenated, in 8497 // the order they are specified in the job, to create the output. 8498 // 8499 // FileInput is a required field 8500 FileInput *string `locationName:"fileInput" type:"string" required:"true"` 8501 8502 // Use Filter enable (InputFilterEnable) to specify how the transcoding service 8503 // applies the denoise and deblock filters. You must also enable the filters 8504 // separately, with Denoise (InputDenoiseFilter) and Deblock (InputDeblockFilter). 8505 // * Auto - The transcoding service determines whether to apply filtering, depending 8506 // on input type and quality. * Disable - The input is not filtered. This is 8507 // true even if you use the API to enable them in (InputDeblockFilter) and (InputDeblockFilter). 8508 // * Force - The in put is filtered regardless of input type. 8509 FilterEnable *string `locationName:"filterEnable" type:"string" enum:"InputFilterEnable"` 8510 8511 // Use Filter strength (FilterStrength) to adjust the magnitude the input filter 8512 // settings (Deblock and Denoise). The range is -5 to 5. Default is 0. 8513 FilterStrength *int64 `locationName:"filterStrength" type:"integer"` 8514 8515 // (InputClippings) contains sets of start and end times that together specify 8516 // a portion of the input to be used in the outputs. If you provide only a start 8517 // time, the clip will be the entire input from that point to the end. If you 8518 // provide only an end time, it will be the entire input up to that point. When 8519 // you specify more than one input clip, the transcoding service creates the 8520 // job outputs by stringing the clips together in the order you specify them. 8521 InputClippings []*InputClipping `locationName:"inputClippings" type:"list"` 8522 8523 // Use Program (programNumber) to select a specific program from within a multi-program 8524 // transport stream. Note that Quad 4K is not currently supported. Default is 8525 // the first program within the transport stream. If the program you specify 8526 // doesn't exist, the transcoding service will use this default. 8527 ProgramNumber *int64 `locationName:"programNumber" min:"1" type:"integer"` 8528 8529 // Set PSI control (InputPsiControl) for transport stream inputs to specify 8530 // which data the demux process to scans. * Ignore PSI - Scan all PIDs for audio 8531 // and video. * Use PSI - Scan only PSI data. 8532 PsiControl *string `locationName:"psiControl" type:"string" enum:"InputPsiControl"` 8533 8534 // Timecode source under input settings (InputTimecodeSource) only affects the 8535 // behavior of features that apply to a single input at a time, such as input 8536 // clipping and synchronizing some captions formats. Use this setting to specify 8537 // whether the service counts frames by timecodes embedded in the video (EMBEDDED) 8538 // or by starting the first frame at zero (ZEROBASED). In both cases, the timecode 8539 // format is HH:MM:SS:FF or HH:MM:SS;FF, where FF is the frame number. Only 8540 // set this to EMBEDDED if your source video has embedded timecodes. 8541 TimecodeSource *string `locationName:"timecodeSource" type:"string" enum:"InputTimecodeSource"` 8542 8543 // Selector for video. 8544 VideoSelector *VideoSelector `locationName:"videoSelector" type:"structure"` 8545} 8546 8547// String returns the string representation 8548func (s Input) String() string { 8549 return awsutil.Prettify(s) 8550} 8551 8552// GoString returns the string representation 8553func (s Input) GoString() string { 8554 return s.String() 8555} 8556 8557// Validate inspects the fields of the type to determine if they are valid. 8558func (s *Input) Validate() error { 8559 invalidParams := request.ErrInvalidParams{Context: "Input"} 8560 if s.FileInput == nil { 8561 invalidParams.Add(request.NewErrParamRequired("FileInput")) 8562 } 8563 if s.FilterStrength != nil && *s.FilterStrength < -5 { 8564 invalidParams.Add(request.NewErrParamMinValue("FilterStrength", -5)) 8565 } 8566 if s.ProgramNumber != nil && *s.ProgramNumber < 1 { 8567 invalidParams.Add(request.NewErrParamMinValue("ProgramNumber", 1)) 8568 } 8569 if s.AudioSelectorGroups != nil { 8570 for i, v := range s.AudioSelectorGroups { 8571 if v == nil { 8572 continue 8573 } 8574 if err := v.Validate(); err != nil { 8575 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AudioSelectorGroups", i), err.(request.ErrInvalidParams)) 8576 } 8577 } 8578 } 8579 if s.AudioSelectors != nil { 8580 for i, v := range s.AudioSelectors { 8581 if v == nil { 8582 continue 8583 } 8584 if err := v.Validate(); err != nil { 8585 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AudioSelectors", i), err.(request.ErrInvalidParams)) 8586 } 8587 } 8588 } 8589 if s.CaptionSelectors != nil { 8590 for i, v := range s.CaptionSelectors { 8591 if v == nil { 8592 continue 8593 } 8594 if err := v.Validate(); err != nil { 8595 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionSelectors", i), err.(request.ErrInvalidParams)) 8596 } 8597 } 8598 } 8599 if s.VideoSelector != nil { 8600 if err := s.VideoSelector.Validate(); err != nil { 8601 invalidParams.AddNested("VideoSelector", err.(request.ErrInvalidParams)) 8602 } 8603 } 8604 8605 if invalidParams.Len() > 0 { 8606 return invalidParams 8607 } 8608 return nil 8609} 8610 8611// SetAudioSelectorGroups sets the AudioSelectorGroups field's value. 8612func (s *Input) SetAudioSelectorGroups(v map[string]*AudioSelectorGroup) *Input { 8613 s.AudioSelectorGroups = v 8614 return s 8615} 8616 8617// SetAudioSelectors sets the AudioSelectors field's value. 8618func (s *Input) SetAudioSelectors(v map[string]*AudioSelector) *Input { 8619 s.AudioSelectors = v 8620 return s 8621} 8622 8623// SetCaptionSelectors sets the CaptionSelectors field's value. 8624func (s *Input) SetCaptionSelectors(v map[string]*CaptionSelector) *Input { 8625 s.CaptionSelectors = v 8626 return s 8627} 8628 8629// SetDeblockFilter sets the DeblockFilter field's value. 8630func (s *Input) SetDeblockFilter(v string) *Input { 8631 s.DeblockFilter = &v 8632 return s 8633} 8634 8635// SetDenoiseFilter sets the DenoiseFilter field's value. 8636func (s *Input) SetDenoiseFilter(v string) *Input { 8637 s.DenoiseFilter = &v 8638 return s 8639} 8640 8641// SetFileInput sets the FileInput field's value. 8642func (s *Input) SetFileInput(v string) *Input { 8643 s.FileInput = &v 8644 return s 8645} 8646 8647// SetFilterEnable sets the FilterEnable field's value. 8648func (s *Input) SetFilterEnable(v string) *Input { 8649 s.FilterEnable = &v 8650 return s 8651} 8652 8653// SetFilterStrength sets the FilterStrength field's value. 8654func (s *Input) SetFilterStrength(v int64) *Input { 8655 s.FilterStrength = &v 8656 return s 8657} 8658 8659// SetInputClippings sets the InputClippings field's value. 8660func (s *Input) SetInputClippings(v []*InputClipping) *Input { 8661 s.InputClippings = v 8662 return s 8663} 8664 8665// SetProgramNumber sets the ProgramNumber field's value. 8666func (s *Input) SetProgramNumber(v int64) *Input { 8667 s.ProgramNumber = &v 8668 return s 8669} 8670 8671// SetPsiControl sets the PsiControl field's value. 8672func (s *Input) SetPsiControl(v string) *Input { 8673 s.PsiControl = &v 8674 return s 8675} 8676 8677// SetTimecodeSource sets the TimecodeSource field's value. 8678func (s *Input) SetTimecodeSource(v string) *Input { 8679 s.TimecodeSource = &v 8680 return s 8681} 8682 8683// SetVideoSelector sets the VideoSelector field's value. 8684func (s *Input) SetVideoSelector(v *VideoSelector) *Input { 8685 s.VideoSelector = v 8686 return s 8687} 8688 8689// To transcode only portions of your input (clips), include one Input clipping 8690// (one instance of InputClipping in the JSON job file) for each input clip. 8691// All input clips you specify will be included in every output of the job. 8692type InputClipping struct { 8693 _ struct{} `type:"structure"` 8694 8695 // Set End timecode (EndTimecode) to the end of the portion of the input you 8696 // are clipping. The frame corresponding to the End timecode value is included 8697 // in the clip. Start timecode or End timecode may be left blank, but not both. 8698 // Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the 8699 // minute, SS is the second, and FF is the frame number. When choosing this 8700 // value, take into account your setting for timecode source under input settings 8701 // (InputTimecodeSource). For example, if you have embedded timecodes that start 8702 // at 01:00:00:00 and you want your clip to end six minutes into the video, 8703 // use 01:06:00:00. 8704 EndTimecode *string `locationName:"endTimecode" type:"string"` 8705 8706 // Set Start timecode (StartTimecode) to the beginning of the portion of the 8707 // input you are clipping. The frame corresponding to the Start timecode value 8708 // is included in the clip. Start timecode or End timecode may be left blank, 8709 // but not both. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the 8710 // hour, MM is the minute, SS is the second, and FF is the frame number. When 8711 // choosing this value, take into account your setting for Input timecode source. 8712 // For example, if you have embedded timecodes that start at 01:00:00:00 and 8713 // you want your clip to begin five minutes into the video, use 01:05:00:00. 8714 StartTimecode *string `locationName:"startTimecode" type:"string"` 8715} 8716 8717// String returns the string representation 8718func (s InputClipping) String() string { 8719 return awsutil.Prettify(s) 8720} 8721 8722// GoString returns the string representation 8723func (s InputClipping) GoString() string { 8724 return s.String() 8725} 8726 8727// SetEndTimecode sets the EndTimecode field's value. 8728func (s *InputClipping) SetEndTimecode(v string) *InputClipping { 8729 s.EndTimecode = &v 8730 return s 8731} 8732 8733// SetStartTimecode sets the StartTimecode field's value. 8734func (s *InputClipping) SetStartTimecode(v string) *InputClipping { 8735 s.StartTimecode = &v 8736 return s 8737} 8738 8739// Specified video input in a template. 8740type InputTemplate struct { 8741 _ struct{} `type:"structure"` 8742 8743 // Specifies set of audio selectors within an input to combine. An input may 8744 // have multiple audio selector groups. See "Audio Selector Group":#inputs-audio_selector_group 8745 // for more information. 8746 AudioSelectorGroups map[string]*AudioSelectorGroup `locationName:"audioSelectorGroups" type:"map"` 8747 8748 // Use Audio selectors (AudioSelectors) to specify a track or set of tracks 8749 // from the input that you will use in your outputs. You can use mutiple Audio 8750 // selectors per input. 8751 AudioSelectors map[string]*AudioSelector `locationName:"audioSelectors" type:"map"` 8752 8753 // Use Captions selectors (CaptionSelectors) to specify the captions data from 8754 // the input that you will use in your outputs. You can use mutiple captions 8755 // selectors per input. 8756 CaptionSelectors map[string]*CaptionSelector `locationName:"captionSelectors" type:"map"` 8757 8758 // Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. 8759 // Default is disabled. Only manaully controllable for MPEG2 and uncompressed 8760 // video inputs. 8761 DeblockFilter *string `locationName:"deblockFilter" type:"string" enum:"InputDeblockFilter"` 8762 8763 // Enable Denoise (InputDenoiseFilter) to filter noise from the input. Default 8764 // is disabled. Only applicable to MPEG2, H.264, H.265, and uncompressed video 8765 // inputs. 8766 DenoiseFilter *string `locationName:"denoiseFilter" type:"string" enum:"InputDenoiseFilter"` 8767 8768 // Use Filter enable (InputFilterEnable) to specify how the transcoding service 8769 // applies the denoise and deblock filters. You must also enable the filters 8770 // separately, with Denoise (InputDenoiseFilter) and Deblock (InputDeblockFilter). 8771 // * Auto - The transcoding service determines whether to apply filtering, depending 8772 // on input type and quality. * Disable - The input is not filtered. This is 8773 // true even if you use the API to enable them in (InputDeblockFilter) and (InputDeblockFilter). 8774 // * Force - The in put is filtered regardless of input type. 8775 FilterEnable *string `locationName:"filterEnable" type:"string" enum:"InputFilterEnable"` 8776 8777 // Use Filter strength (FilterStrength) to adjust the magnitude the input filter 8778 // settings (Deblock and Denoise). The range is -5 to 5. Default is 0. 8779 FilterStrength *int64 `locationName:"filterStrength" type:"integer"` 8780 8781 // (InputClippings) contains sets of start and end times that together specify 8782 // a portion of the input to be used in the outputs. If you provide only a start 8783 // time, the clip will be the entire input from that point to the end. If you 8784 // provide only an end time, it will be the entire input up to that point. When 8785 // you specify more than one input clip, the transcoding service creates the 8786 // job outputs by stringing the clips together in the order you specify them. 8787 InputClippings []*InputClipping `locationName:"inputClippings" type:"list"` 8788 8789 // Use Program (programNumber) to select a specific program from within a multi-program 8790 // transport stream. Note that Quad 4K is not currently supported. Default is 8791 // the first program within the transport stream. If the program you specify 8792 // doesn't exist, the transcoding service will use this default. 8793 ProgramNumber *int64 `locationName:"programNumber" min:"1" type:"integer"` 8794 8795 // Set PSI control (InputPsiControl) for transport stream inputs to specify 8796 // which data the demux process to scans. * Ignore PSI - Scan all PIDs for audio 8797 // and video. * Use PSI - Scan only PSI data. 8798 PsiControl *string `locationName:"psiControl" type:"string" enum:"InputPsiControl"` 8799 8800 // Timecode source under input settings (InputTimecodeSource) only affects the 8801 // behavior of features that apply to a single input at a time, such as input 8802 // clipping and synchronizing some captions formats. Use this setting to specify 8803 // whether the service counts frames by timecodes embedded in the video (EMBEDDED) 8804 // or by starting the first frame at zero (ZEROBASED). In both cases, the timecode 8805 // format is HH:MM:SS:FF or HH:MM:SS;FF, where FF is the frame number. Only 8806 // set this to EMBEDDED if your source video has embedded timecodes. 8807 TimecodeSource *string `locationName:"timecodeSource" type:"string" enum:"InputTimecodeSource"` 8808 8809 // Selector for video. 8810 VideoSelector *VideoSelector `locationName:"videoSelector" type:"structure"` 8811} 8812 8813// String returns the string representation 8814func (s InputTemplate) String() string { 8815 return awsutil.Prettify(s) 8816} 8817 8818// GoString returns the string representation 8819func (s InputTemplate) GoString() string { 8820 return s.String() 8821} 8822 8823// Validate inspects the fields of the type to determine if they are valid. 8824func (s *InputTemplate) Validate() error { 8825 invalidParams := request.ErrInvalidParams{Context: "InputTemplate"} 8826 if s.FilterStrength != nil && *s.FilterStrength < -5 { 8827 invalidParams.Add(request.NewErrParamMinValue("FilterStrength", -5)) 8828 } 8829 if s.ProgramNumber != nil && *s.ProgramNumber < 1 { 8830 invalidParams.Add(request.NewErrParamMinValue("ProgramNumber", 1)) 8831 } 8832 if s.AudioSelectorGroups != nil { 8833 for i, v := range s.AudioSelectorGroups { 8834 if v == nil { 8835 continue 8836 } 8837 if err := v.Validate(); err != nil { 8838 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AudioSelectorGroups", i), err.(request.ErrInvalidParams)) 8839 } 8840 } 8841 } 8842 if s.AudioSelectors != nil { 8843 for i, v := range s.AudioSelectors { 8844 if v == nil { 8845 continue 8846 } 8847 if err := v.Validate(); err != nil { 8848 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AudioSelectors", i), err.(request.ErrInvalidParams)) 8849 } 8850 } 8851 } 8852 if s.CaptionSelectors != nil { 8853 for i, v := range s.CaptionSelectors { 8854 if v == nil { 8855 continue 8856 } 8857 if err := v.Validate(); err != nil { 8858 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionSelectors", i), err.(request.ErrInvalidParams)) 8859 } 8860 } 8861 } 8862 if s.VideoSelector != nil { 8863 if err := s.VideoSelector.Validate(); err != nil { 8864 invalidParams.AddNested("VideoSelector", err.(request.ErrInvalidParams)) 8865 } 8866 } 8867 8868 if invalidParams.Len() > 0 { 8869 return invalidParams 8870 } 8871 return nil 8872} 8873 8874// SetAudioSelectorGroups sets the AudioSelectorGroups field's value. 8875func (s *InputTemplate) SetAudioSelectorGroups(v map[string]*AudioSelectorGroup) *InputTemplate { 8876 s.AudioSelectorGroups = v 8877 return s 8878} 8879 8880// SetAudioSelectors sets the AudioSelectors field's value. 8881func (s *InputTemplate) SetAudioSelectors(v map[string]*AudioSelector) *InputTemplate { 8882 s.AudioSelectors = v 8883 return s 8884} 8885 8886// SetCaptionSelectors sets the CaptionSelectors field's value. 8887func (s *InputTemplate) SetCaptionSelectors(v map[string]*CaptionSelector) *InputTemplate { 8888 s.CaptionSelectors = v 8889 return s 8890} 8891 8892// SetDeblockFilter sets the DeblockFilter field's value. 8893func (s *InputTemplate) SetDeblockFilter(v string) *InputTemplate { 8894 s.DeblockFilter = &v 8895 return s 8896} 8897 8898// SetDenoiseFilter sets the DenoiseFilter field's value. 8899func (s *InputTemplate) SetDenoiseFilter(v string) *InputTemplate { 8900 s.DenoiseFilter = &v 8901 return s 8902} 8903 8904// SetFilterEnable sets the FilterEnable field's value. 8905func (s *InputTemplate) SetFilterEnable(v string) *InputTemplate { 8906 s.FilterEnable = &v 8907 return s 8908} 8909 8910// SetFilterStrength sets the FilterStrength field's value. 8911func (s *InputTemplate) SetFilterStrength(v int64) *InputTemplate { 8912 s.FilterStrength = &v 8913 return s 8914} 8915 8916// SetInputClippings sets the InputClippings field's value. 8917func (s *InputTemplate) SetInputClippings(v []*InputClipping) *InputTemplate { 8918 s.InputClippings = v 8919 return s 8920} 8921 8922// SetProgramNumber sets the ProgramNumber field's value. 8923func (s *InputTemplate) SetProgramNumber(v int64) *InputTemplate { 8924 s.ProgramNumber = &v 8925 return s 8926} 8927 8928// SetPsiControl sets the PsiControl field's value. 8929func (s *InputTemplate) SetPsiControl(v string) *InputTemplate { 8930 s.PsiControl = &v 8931 return s 8932} 8933 8934// SetTimecodeSource sets the TimecodeSource field's value. 8935func (s *InputTemplate) SetTimecodeSource(v string) *InputTemplate { 8936 s.TimecodeSource = &v 8937 return s 8938} 8939 8940// SetVideoSelector sets the VideoSelector field's value. 8941func (s *InputTemplate) SetVideoSelector(v *VideoSelector) *InputTemplate { 8942 s.VideoSelector = v 8943 return s 8944} 8945 8946// Settings for Insertable Image 8947type InsertableImage struct { 8948 _ struct{} `type:"structure"` 8949 8950 // Use Duration (Duration) to set the time, in milliseconds, for the image to 8951 // remain on the output video. 8952 Duration *int64 `locationName:"duration" type:"integer"` 8953 8954 // Use Fade in (FadeIut) to set the length, in milliseconds, of the inserted 8955 // image fade in. If you don't specify a value for Fade in, the image will appear 8956 // abruptly at the Start time. 8957 FadeIn *int64 `locationName:"fadeIn" type:"integer"` 8958 8959 // Use Fade out (FadeOut) to set the length, in milliseconds, of the inserted 8960 // image fade out. If you don't specify a value for Fade out, the image will 8961 // disappear abruptly at the end of the inserted image duration. 8962 FadeOut *int64 `locationName:"fadeOut" type:"integer"` 8963 8964 // Specify the Height (Height) of the inserted image. Use a value that is less 8965 // than or equal to the video resolution height. Leave this setting blank to 8966 // use the native height of the image. 8967 Height *int64 `locationName:"height" type:"integer"` 8968 8969 // Use Image location (imageInserterInput) to specify the Amazon S3 location 8970 // of the image to be inserted into the output. Use a 32 bit BMP, PNG, or TGA 8971 // file that fits inside the video frame. 8972 // 8973 // ImageInserterInput is a required field 8974 ImageInserterInput *string `locationName:"imageInserterInput" min:"14" type:"string" required:"true"` 8975 8976 // Use Left (ImageX) to set the distance, in pixels, between the inserted image 8977 // and the left edge of the frame. Required for BMP, PNG and TGA input. 8978 // 8979 // ImageX is a required field 8980 ImageX *int64 `locationName:"imageX" type:"integer" required:"true"` 8981 8982 // Use Top (ImageY) to set the distance, in pixels, between the inserted image 8983 // and the top edge of the video frame. Required for BMP, PNG and TGA input. 8984 // 8985 // ImageY is a required field 8986 ImageY *int64 `locationName:"imageY" type:"integer" required:"true"` 8987 8988 // Use Layer (Layer) to specify how overlapping inserted images appear. Images 8989 // with higher values of layer appear on top of images with lower values of 8990 // layer. 8991 // 8992 // Layer is a required field 8993 Layer *int64 `locationName:"layer" type:"integer" required:"true"` 8994 8995 // Use Opacity (Opacity) to specify how much of the underlying video shows through 8996 // the inserted image. 0 is transparent and 100 is fully opaque. Default is 8997 // 50. 8998 // 8999 // Opacity is a required field 9000 Opacity *int64 `locationName:"opacity" type:"integer" required:"true"` 9001 9002 // Use Start time (StartTime) to specify the video timecode when the image is 9003 // inserted in the output. This must be in timecode (HH:MM:SS:FF or HH:MM:SS;FF) 9004 // format. 9005 StartTime *string `locationName:"startTime" type:"string"` 9006 9007 // Specify the Width (Width) of the inserted image. Use a value that is less 9008 // than or equal to the video resolution width. Leave this setting blank to 9009 // use the native width of the image. 9010 Width *int64 `locationName:"width" type:"integer"` 9011} 9012 9013// String returns the string representation 9014func (s InsertableImage) String() string { 9015 return awsutil.Prettify(s) 9016} 9017 9018// GoString returns the string representation 9019func (s InsertableImage) GoString() string { 9020 return s.String() 9021} 9022 9023// Validate inspects the fields of the type to determine if they are valid. 9024func (s *InsertableImage) Validate() error { 9025 invalidParams := request.ErrInvalidParams{Context: "InsertableImage"} 9026 if s.Duration != nil && *s.Duration < -2.147483648e+09 { 9027 invalidParams.Add(request.NewErrParamMinValue("Duration", -2.147483648e+09)) 9028 } 9029 if s.FadeIn != nil && *s.FadeIn < -2.147483648e+09 { 9030 invalidParams.Add(request.NewErrParamMinValue("FadeIn", -2.147483648e+09)) 9031 } 9032 if s.FadeOut != nil && *s.FadeOut < -2.147483648e+09 { 9033 invalidParams.Add(request.NewErrParamMinValue("FadeOut", -2.147483648e+09)) 9034 } 9035 if s.Height != nil && *s.Height < -2.147483648e+09 { 9036 invalidParams.Add(request.NewErrParamMinValue("Height", -2.147483648e+09)) 9037 } 9038 if s.ImageInserterInput == nil { 9039 invalidParams.Add(request.NewErrParamRequired("ImageInserterInput")) 9040 } 9041 if s.ImageInserterInput != nil && len(*s.ImageInserterInput) < 14 { 9042 invalidParams.Add(request.NewErrParamMinLen("ImageInserterInput", 14)) 9043 } 9044 if s.ImageX == nil { 9045 invalidParams.Add(request.NewErrParamRequired("ImageX")) 9046 } 9047 if s.ImageX != nil && *s.ImageX < -2.147483648e+09 { 9048 invalidParams.Add(request.NewErrParamMinValue("ImageX", -2.147483648e+09)) 9049 } 9050 if s.ImageY == nil { 9051 invalidParams.Add(request.NewErrParamRequired("ImageY")) 9052 } 9053 if s.ImageY != nil && *s.ImageY < -2.147483648e+09 { 9054 invalidParams.Add(request.NewErrParamMinValue("ImageY", -2.147483648e+09)) 9055 } 9056 if s.Layer == nil { 9057 invalidParams.Add(request.NewErrParamRequired("Layer")) 9058 } 9059 if s.Opacity == nil { 9060 invalidParams.Add(request.NewErrParamRequired("Opacity")) 9061 } 9062 if s.Width != nil && *s.Width < -2.147483648e+09 { 9063 invalidParams.Add(request.NewErrParamMinValue("Width", -2.147483648e+09)) 9064 } 9065 9066 if invalidParams.Len() > 0 { 9067 return invalidParams 9068 } 9069 return nil 9070} 9071 9072// SetDuration sets the Duration field's value. 9073func (s *InsertableImage) SetDuration(v int64) *InsertableImage { 9074 s.Duration = &v 9075 return s 9076} 9077 9078// SetFadeIn sets the FadeIn field's value. 9079func (s *InsertableImage) SetFadeIn(v int64) *InsertableImage { 9080 s.FadeIn = &v 9081 return s 9082} 9083 9084// SetFadeOut sets the FadeOut field's value. 9085func (s *InsertableImage) SetFadeOut(v int64) *InsertableImage { 9086 s.FadeOut = &v 9087 return s 9088} 9089 9090// SetHeight sets the Height field's value. 9091func (s *InsertableImage) SetHeight(v int64) *InsertableImage { 9092 s.Height = &v 9093 return s 9094} 9095 9096// SetImageInserterInput sets the ImageInserterInput field's value. 9097func (s *InsertableImage) SetImageInserterInput(v string) *InsertableImage { 9098 s.ImageInserterInput = &v 9099 return s 9100} 9101 9102// SetImageX sets the ImageX field's value. 9103func (s *InsertableImage) SetImageX(v int64) *InsertableImage { 9104 s.ImageX = &v 9105 return s 9106} 9107 9108// SetImageY sets the ImageY field's value. 9109func (s *InsertableImage) SetImageY(v int64) *InsertableImage { 9110 s.ImageY = &v 9111 return s 9112} 9113 9114// SetLayer sets the Layer field's value. 9115func (s *InsertableImage) SetLayer(v int64) *InsertableImage { 9116 s.Layer = &v 9117 return s 9118} 9119 9120// SetOpacity sets the Opacity field's value. 9121func (s *InsertableImage) SetOpacity(v int64) *InsertableImage { 9122 s.Opacity = &v 9123 return s 9124} 9125 9126// SetStartTime sets the StartTime field's value. 9127func (s *InsertableImage) SetStartTime(v string) *InsertableImage { 9128 s.StartTime = &v 9129 return s 9130} 9131 9132// SetWidth sets the Width field's value. 9133func (s *InsertableImage) SetWidth(v int64) *InsertableImage { 9134 s.Width = &v 9135 return s 9136} 9137 9138// Each job converts an input file into an output file or files. For more information, 9139// see the User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html 9140type Job struct { 9141 _ struct{} `type:"structure"` 9142 9143 // An identifier for this resource that is unique within all of AWS. 9144 Arn *string `locationName:"arn" type:"string"` 9145 9146 // The time, in Unix epoch format in seconds, when the job got created. 9147 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unixTimestamp"` 9148 9149 // Error code for the job 9150 ErrorCode *int64 `locationName:"errorCode" type:"integer"` 9151 9152 // Error message of Job 9153 ErrorMessage *string `locationName:"errorMessage" type:"string"` 9154 9155 // A portion of the job's ARN, unique within your AWS Elemental MediaConvert 9156 // resources 9157 Id *string `locationName:"id" type:"string"` 9158 9159 // The job template that the job is created from, if it is created from a job 9160 // template. 9161 JobTemplate *string `locationName:"jobTemplate" type:"string"` 9162 9163 // List of output group details 9164 OutputGroupDetails []*OutputGroupDetail `locationName:"outputGroupDetails" type:"list"` 9165 9166 // Optional. When you create a job, you can specify a queue to send it to. If 9167 // you don't specify, the job will go to the default queue. For more about queues, 9168 // see the User Guide topic at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html 9169 Queue *string `locationName:"queue" type:"string"` 9170 9171 // The IAM role you use for creating this job. For details about permissions, 9172 // see the User Guide topic at the User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/iam-role.html 9173 // 9174 // Role is a required field 9175 Role *string `locationName:"role" type:"string" required:"true"` 9176 9177 // JobSettings contains all the transcode settings for a job. 9178 // 9179 // Settings is a required field 9180 Settings *JobSettings `locationName:"settings" type:"structure" required:"true"` 9181 9182 // A job's status can be SUBMITTED, PROGRESSING, COMPLETE, CANCELED, or ERROR. 9183 Status *string `locationName:"status" type:"string" enum:"JobStatus"` 9184 9185 // Information about when jobs are submitted, started, and finished is specified 9186 // in Unix epoch format in seconds. 9187 Timing *Timing `locationName:"timing" type:"structure"` 9188 9189 // User-defined metadata that you want to associate with an MediaConvert job. 9190 // You specify metadata in key/value pairs. 9191 UserMetadata map[string]*string `locationName:"userMetadata" type:"map"` 9192} 9193 9194// String returns the string representation 9195func (s Job) String() string { 9196 return awsutil.Prettify(s) 9197} 9198 9199// GoString returns the string representation 9200func (s Job) GoString() string { 9201 return s.String() 9202} 9203 9204// SetArn sets the Arn field's value. 9205func (s *Job) SetArn(v string) *Job { 9206 s.Arn = &v 9207 return s 9208} 9209 9210// SetCreatedAt sets the CreatedAt field's value. 9211func (s *Job) SetCreatedAt(v time.Time) *Job { 9212 s.CreatedAt = &v 9213 return s 9214} 9215 9216// SetErrorCode sets the ErrorCode field's value. 9217func (s *Job) SetErrorCode(v int64) *Job { 9218 s.ErrorCode = &v 9219 return s 9220} 9221 9222// SetErrorMessage sets the ErrorMessage field's value. 9223func (s *Job) SetErrorMessage(v string) *Job { 9224 s.ErrorMessage = &v 9225 return s 9226} 9227 9228// SetId sets the Id field's value. 9229func (s *Job) SetId(v string) *Job { 9230 s.Id = &v 9231 return s 9232} 9233 9234// SetJobTemplate sets the JobTemplate field's value. 9235func (s *Job) SetJobTemplate(v string) *Job { 9236 s.JobTemplate = &v 9237 return s 9238} 9239 9240// SetOutputGroupDetails sets the OutputGroupDetails field's value. 9241func (s *Job) SetOutputGroupDetails(v []*OutputGroupDetail) *Job { 9242 s.OutputGroupDetails = v 9243 return s 9244} 9245 9246// SetQueue sets the Queue field's value. 9247func (s *Job) SetQueue(v string) *Job { 9248 s.Queue = &v 9249 return s 9250} 9251 9252// SetRole sets the Role field's value. 9253func (s *Job) SetRole(v string) *Job { 9254 s.Role = &v 9255 return s 9256} 9257 9258// SetSettings sets the Settings field's value. 9259func (s *Job) SetSettings(v *JobSettings) *Job { 9260 s.Settings = v 9261 return s 9262} 9263 9264// SetStatus sets the Status field's value. 9265func (s *Job) SetStatus(v string) *Job { 9266 s.Status = &v 9267 return s 9268} 9269 9270// SetTiming sets the Timing field's value. 9271func (s *Job) SetTiming(v *Timing) *Job { 9272 s.Timing = v 9273 return s 9274} 9275 9276// SetUserMetadata sets the UserMetadata field's value. 9277func (s *Job) SetUserMetadata(v map[string]*string) *Job { 9278 s.UserMetadata = v 9279 return s 9280} 9281 9282// JobSettings contains all the transcode settings for a job. 9283type JobSettings struct { 9284 _ struct{} `type:"structure"` 9285 9286 // When specified, this offset (in milliseconds) is added to the input Ad Avail 9287 // PTS time. 9288 AdAvailOffset *int64 `locationName:"adAvailOffset" type:"integer"` 9289 9290 // Settings for ad avail blanking. Video can be blanked or overlaid with an 9291 // image, and audio muted during SCTE-35 triggered ad avails. 9292 AvailBlanking *AvailBlanking `locationName:"availBlanking" type:"structure"` 9293 9294 // Use Inputs (inputs) to define source file used in the transcode job. There 9295 // can be multiple inputs add in a job. These inputs will be concantenated together 9296 // to create the output. 9297 // 9298 // Inputs is a required field 9299 Inputs []*Input `locationName:"inputs" type:"list" required:"true"` 9300 9301 // Settings for Nielsen Configuration 9302 NielsenConfiguration *NielsenConfiguration `locationName:"nielsenConfiguration" type:"structure"` 9303 9304 // (OutputGroups) contains one group of settings for each set of outputs that 9305 // share a common package type. All unpackaged files (MPEG-4, MPEG-2 TS, Quicktime, 9306 // MXF, and no container) are grouped in a single output group as well. Required 9307 // in (OutputGroups) is a group of settings that apply to the whole group. This 9308 // required object depends on the value you set for (Type) under (OutputGroups)>(OutputGroupSettings). 9309 // Type, settings object pairs are as follows. * FILE_GROUP_SETTINGS, FileGroupSettings 9310 // * HLS_GROUP_SETTINGS, HlsGroupSettings * DASH_ISO_GROUP_SETTINGS, DashIsoGroupSettings 9311 // * MS_SMOOTH_GROUP_SETTINGS, MsSmoothGroupSettings * CMAF_GROUP_SETTINGS, 9312 // CmafGroupSettings 9313 // 9314 // OutputGroups is a required field 9315 OutputGroups []*OutputGroup `locationName:"outputGroups" type:"list" required:"true"` 9316 9317 // Contains settings used to acquire and adjust timecode information from inputs. 9318 TimecodeConfig *TimecodeConfig `locationName:"timecodeConfig" type:"structure"` 9319 9320 // Enable Timed metadata insertion (TimedMetadataInsertion) to include ID3 tags 9321 // in your job. To include timed metadata, you must enable it here, enable it 9322 // in each output container, and specify tags and timecodes in ID3 insertion 9323 // (Id3Insertion) objects. 9324 TimedMetadataInsertion *TimedMetadataInsertion `locationName:"timedMetadataInsertion" type:"structure"` 9325} 9326 9327// String returns the string representation 9328func (s JobSettings) String() string { 9329 return awsutil.Prettify(s) 9330} 9331 9332// GoString returns the string representation 9333func (s JobSettings) GoString() string { 9334 return s.String() 9335} 9336 9337// Validate inspects the fields of the type to determine if they are valid. 9338func (s *JobSettings) Validate() error { 9339 invalidParams := request.ErrInvalidParams{Context: "JobSettings"} 9340 if s.AdAvailOffset != nil && *s.AdAvailOffset < -1000 { 9341 invalidParams.Add(request.NewErrParamMinValue("AdAvailOffset", -1000)) 9342 } 9343 if s.Inputs == nil { 9344 invalidParams.Add(request.NewErrParamRequired("Inputs")) 9345 } 9346 if s.OutputGroups == nil { 9347 invalidParams.Add(request.NewErrParamRequired("OutputGroups")) 9348 } 9349 if s.AvailBlanking != nil { 9350 if err := s.AvailBlanking.Validate(); err != nil { 9351 invalidParams.AddNested("AvailBlanking", err.(request.ErrInvalidParams)) 9352 } 9353 } 9354 if s.Inputs != nil { 9355 for i, v := range s.Inputs { 9356 if v == nil { 9357 continue 9358 } 9359 if err := v.Validate(); err != nil { 9360 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Inputs", i), err.(request.ErrInvalidParams)) 9361 } 9362 } 9363 } 9364 if s.OutputGroups != nil { 9365 for i, v := range s.OutputGroups { 9366 if v == nil { 9367 continue 9368 } 9369 if err := v.Validate(); err != nil { 9370 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputGroups", i), err.(request.ErrInvalidParams)) 9371 } 9372 } 9373 } 9374 if s.TimedMetadataInsertion != nil { 9375 if err := s.TimedMetadataInsertion.Validate(); err != nil { 9376 invalidParams.AddNested("TimedMetadataInsertion", err.(request.ErrInvalidParams)) 9377 } 9378 } 9379 9380 if invalidParams.Len() > 0 { 9381 return invalidParams 9382 } 9383 return nil 9384} 9385 9386// SetAdAvailOffset sets the AdAvailOffset field's value. 9387func (s *JobSettings) SetAdAvailOffset(v int64) *JobSettings { 9388 s.AdAvailOffset = &v 9389 return s 9390} 9391 9392// SetAvailBlanking sets the AvailBlanking field's value. 9393func (s *JobSettings) SetAvailBlanking(v *AvailBlanking) *JobSettings { 9394 s.AvailBlanking = v 9395 return s 9396} 9397 9398// SetInputs sets the Inputs field's value. 9399func (s *JobSettings) SetInputs(v []*Input) *JobSettings { 9400 s.Inputs = v 9401 return s 9402} 9403 9404// SetNielsenConfiguration sets the NielsenConfiguration field's value. 9405func (s *JobSettings) SetNielsenConfiguration(v *NielsenConfiguration) *JobSettings { 9406 s.NielsenConfiguration = v 9407 return s 9408} 9409 9410// SetOutputGroups sets the OutputGroups field's value. 9411func (s *JobSettings) SetOutputGroups(v []*OutputGroup) *JobSettings { 9412 s.OutputGroups = v 9413 return s 9414} 9415 9416// SetTimecodeConfig sets the TimecodeConfig field's value. 9417func (s *JobSettings) SetTimecodeConfig(v *TimecodeConfig) *JobSettings { 9418 s.TimecodeConfig = v 9419 return s 9420} 9421 9422// SetTimedMetadataInsertion sets the TimedMetadataInsertion field's value. 9423func (s *JobSettings) SetTimedMetadataInsertion(v *TimedMetadataInsertion) *JobSettings { 9424 s.TimedMetadataInsertion = v 9425 return s 9426} 9427 9428// A job template is a pre-made set of encoding instructions that you can use 9429// to quickly create a job. 9430type JobTemplate struct { 9431 _ struct{} `type:"structure"` 9432 9433 // An identifier for this resource that is unique within all of AWS. 9434 Arn *string `locationName:"arn" type:"string"` 9435 9436 // An optional category you create to organize your job templates. 9437 Category *string `locationName:"category" type:"string"` 9438 9439 // The timestamp in epoch seconds for Job template creation. 9440 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unixTimestamp"` 9441 9442 // An optional description you create for each job template. 9443 Description *string `locationName:"description" type:"string"` 9444 9445 // The timestamp in epoch seconds when the Job template was last updated. 9446 LastUpdated *time.Time `locationName:"lastUpdated" type:"timestamp" timestampFormat:"unixTimestamp"` 9447 9448 // A name you create for each job template. Each name must be unique within 9449 // your account. 9450 // 9451 // Name is a required field 9452 Name *string `locationName:"name" type:"string" required:"true"` 9453 9454 // Optional. The queue that jobs created from this template are assigned to. 9455 // If you don't specify this, jobs will go to the default queue. 9456 Queue *string `locationName:"queue" type:"string"` 9457 9458 // JobTemplateSettings contains all the transcode settings saved in the template 9459 // that will be applied to jobs created from it. 9460 // 9461 // Settings is a required field 9462 Settings *JobTemplateSettings `locationName:"settings" type:"structure" required:"true"` 9463 9464 // A job template can be of two types: system or custom. System or built-in 9465 // job templates can't be modified or deleted by the user. 9466 Type *string `locationName:"type" type:"string" enum:"Type"` 9467} 9468 9469// String returns the string representation 9470func (s JobTemplate) String() string { 9471 return awsutil.Prettify(s) 9472} 9473 9474// GoString returns the string representation 9475func (s JobTemplate) GoString() string { 9476 return s.String() 9477} 9478 9479// SetArn sets the Arn field's value. 9480func (s *JobTemplate) SetArn(v string) *JobTemplate { 9481 s.Arn = &v 9482 return s 9483} 9484 9485// SetCategory sets the Category field's value. 9486func (s *JobTemplate) SetCategory(v string) *JobTemplate { 9487 s.Category = &v 9488 return s 9489} 9490 9491// SetCreatedAt sets the CreatedAt field's value. 9492func (s *JobTemplate) SetCreatedAt(v time.Time) *JobTemplate { 9493 s.CreatedAt = &v 9494 return s 9495} 9496 9497// SetDescription sets the Description field's value. 9498func (s *JobTemplate) SetDescription(v string) *JobTemplate { 9499 s.Description = &v 9500 return s 9501} 9502 9503// SetLastUpdated sets the LastUpdated field's value. 9504func (s *JobTemplate) SetLastUpdated(v time.Time) *JobTemplate { 9505 s.LastUpdated = &v 9506 return s 9507} 9508 9509// SetName sets the Name field's value. 9510func (s *JobTemplate) SetName(v string) *JobTemplate { 9511 s.Name = &v 9512 return s 9513} 9514 9515// SetQueue sets the Queue field's value. 9516func (s *JobTemplate) SetQueue(v string) *JobTemplate { 9517 s.Queue = &v 9518 return s 9519} 9520 9521// SetSettings sets the Settings field's value. 9522func (s *JobTemplate) SetSettings(v *JobTemplateSettings) *JobTemplate { 9523 s.Settings = v 9524 return s 9525} 9526 9527// SetType sets the Type field's value. 9528func (s *JobTemplate) SetType(v string) *JobTemplate { 9529 s.Type = &v 9530 return s 9531} 9532 9533// JobTemplateSettings contains all the transcode settings saved in the template 9534// that will be applied to jobs created from it. 9535type JobTemplateSettings struct { 9536 _ struct{} `type:"structure"` 9537 9538 // When specified, this offset (in milliseconds) is added to the input Ad Avail 9539 // PTS time. 9540 AdAvailOffset *int64 `locationName:"adAvailOffset" type:"integer"` 9541 9542 // Settings for ad avail blanking. Video can be blanked or overlaid with an 9543 // image, and audio muted during SCTE-35 triggered ad avails. 9544 AvailBlanking *AvailBlanking `locationName:"availBlanking" type:"structure"` 9545 9546 // Use Inputs (inputs) to define the source file used in the transcode job. 9547 // There can only be one input in a job template. Using the API, you can include 9548 // multiple inputs when referencing a job template. 9549 Inputs []*InputTemplate `locationName:"inputs" type:"list"` 9550 9551 // Settings for Nielsen Configuration 9552 NielsenConfiguration *NielsenConfiguration `locationName:"nielsenConfiguration" type:"structure"` 9553 9554 // (OutputGroups) contains one group of settings for each set of outputs that 9555 // share a common package type. All unpackaged files (MPEG-4, MPEG-2 TS, Quicktime, 9556 // MXF, and no container) are grouped in a single output group as well. Required 9557 // in (OutputGroups) is a group of settings that apply to the whole group. This 9558 // required object depends on the value you set for (Type) under (OutputGroups)>(OutputGroupSettings). 9559 // Type, settings object pairs are as follows. * FILE_GROUP_SETTINGS, FileGroupSettings 9560 // * HLS_GROUP_SETTINGS, HlsGroupSettings * DASH_ISO_GROUP_SETTINGS, DashIsoGroupSettings 9561 // * MS_SMOOTH_GROUP_SETTINGS, MsSmoothGroupSettings * CMAF_GROUP_SETTINGS, 9562 // CmafGroupSettings 9563 // 9564 // OutputGroups is a required field 9565 OutputGroups []*OutputGroup `locationName:"outputGroups" type:"list" required:"true"` 9566 9567 // Contains settings used to acquire and adjust timecode information from inputs. 9568 TimecodeConfig *TimecodeConfig `locationName:"timecodeConfig" type:"structure"` 9569 9570 // Enable Timed metadata insertion (TimedMetadataInsertion) to include ID3 tags 9571 // in your job. To include timed metadata, you must enable it here, enable it 9572 // in each output container, and specify tags and timecodes in ID3 insertion 9573 // (Id3Insertion) objects. 9574 TimedMetadataInsertion *TimedMetadataInsertion `locationName:"timedMetadataInsertion" type:"structure"` 9575} 9576 9577// String returns the string representation 9578func (s JobTemplateSettings) String() string { 9579 return awsutil.Prettify(s) 9580} 9581 9582// GoString returns the string representation 9583func (s JobTemplateSettings) GoString() string { 9584 return s.String() 9585} 9586 9587// Validate inspects the fields of the type to determine if they are valid. 9588func (s *JobTemplateSettings) Validate() error { 9589 invalidParams := request.ErrInvalidParams{Context: "JobTemplateSettings"} 9590 if s.AdAvailOffset != nil && *s.AdAvailOffset < -1000 { 9591 invalidParams.Add(request.NewErrParamMinValue("AdAvailOffset", -1000)) 9592 } 9593 if s.OutputGroups == nil { 9594 invalidParams.Add(request.NewErrParamRequired("OutputGroups")) 9595 } 9596 if s.AvailBlanking != nil { 9597 if err := s.AvailBlanking.Validate(); err != nil { 9598 invalidParams.AddNested("AvailBlanking", err.(request.ErrInvalidParams)) 9599 } 9600 } 9601 if s.Inputs != nil { 9602 for i, v := range s.Inputs { 9603 if v == nil { 9604 continue 9605 } 9606 if err := v.Validate(); err != nil { 9607 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Inputs", i), err.(request.ErrInvalidParams)) 9608 } 9609 } 9610 } 9611 if s.OutputGroups != nil { 9612 for i, v := range s.OutputGroups { 9613 if v == nil { 9614 continue 9615 } 9616 if err := v.Validate(); err != nil { 9617 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputGroups", i), err.(request.ErrInvalidParams)) 9618 } 9619 } 9620 } 9621 if s.TimedMetadataInsertion != nil { 9622 if err := s.TimedMetadataInsertion.Validate(); err != nil { 9623 invalidParams.AddNested("TimedMetadataInsertion", err.(request.ErrInvalidParams)) 9624 } 9625 } 9626 9627 if invalidParams.Len() > 0 { 9628 return invalidParams 9629 } 9630 return nil 9631} 9632 9633// SetAdAvailOffset sets the AdAvailOffset field's value. 9634func (s *JobTemplateSettings) SetAdAvailOffset(v int64) *JobTemplateSettings { 9635 s.AdAvailOffset = &v 9636 return s 9637} 9638 9639// SetAvailBlanking sets the AvailBlanking field's value. 9640func (s *JobTemplateSettings) SetAvailBlanking(v *AvailBlanking) *JobTemplateSettings { 9641 s.AvailBlanking = v 9642 return s 9643} 9644 9645// SetInputs sets the Inputs field's value. 9646func (s *JobTemplateSettings) SetInputs(v []*InputTemplate) *JobTemplateSettings { 9647 s.Inputs = v 9648 return s 9649} 9650 9651// SetNielsenConfiguration sets the NielsenConfiguration field's value. 9652func (s *JobTemplateSettings) SetNielsenConfiguration(v *NielsenConfiguration) *JobTemplateSettings { 9653 s.NielsenConfiguration = v 9654 return s 9655} 9656 9657// SetOutputGroups sets the OutputGroups field's value. 9658func (s *JobTemplateSettings) SetOutputGroups(v []*OutputGroup) *JobTemplateSettings { 9659 s.OutputGroups = v 9660 return s 9661} 9662 9663// SetTimecodeConfig sets the TimecodeConfig field's value. 9664func (s *JobTemplateSettings) SetTimecodeConfig(v *TimecodeConfig) *JobTemplateSettings { 9665 s.TimecodeConfig = v 9666 return s 9667} 9668 9669// SetTimedMetadataInsertion sets the TimedMetadataInsertion field's value. 9670func (s *JobTemplateSettings) SetTimedMetadataInsertion(v *TimedMetadataInsertion) *JobTemplateSettings { 9671 s.TimedMetadataInsertion = v 9672 return s 9673} 9674 9675// You can send list job templates requests with an empty body. Optionally, 9676// you can filter the response by category by specifying it in your request 9677// body. You can also optionally specify the maximum number, up to twenty, of 9678// job templates to be returned. 9679type ListJobTemplatesInput struct { 9680 _ struct{} `type:"structure"` 9681 9682 // Optionally, specify a job template category to limit responses to only job 9683 // templates from that category. 9684 Category *string `location:"querystring" locationName:"category" type:"string"` 9685 9686 // Optional. When you request a list of job templates, you can choose to list 9687 // them alphabetically by NAME or chronologically by CREATION_DATE. If you don't 9688 // specify, the service will list them by name. 9689 ListBy *string `location:"querystring" locationName:"listBy" type:"string" enum:"JobTemplateListBy"` 9690 9691 // Optional. Number of job templates, up to twenty, that will be returned at 9692 // one time. 9693 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 9694 9695 // Use this string, provided with the response to a previous request, to request 9696 // the next batch of job templates. 9697 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 9698 9699 // When you request lists of resources, you can optionally specify whether they 9700 // are sorted in ASCENDING or DESCENDING order. Default varies by resource. 9701 Order *string `location:"querystring" locationName:"order" type:"string" enum:"Order"` 9702} 9703 9704// String returns the string representation 9705func (s ListJobTemplatesInput) String() string { 9706 return awsutil.Prettify(s) 9707} 9708 9709// GoString returns the string representation 9710func (s ListJobTemplatesInput) GoString() string { 9711 return s.String() 9712} 9713 9714// Validate inspects the fields of the type to determine if they are valid. 9715func (s *ListJobTemplatesInput) Validate() error { 9716 invalidParams := request.ErrInvalidParams{Context: "ListJobTemplatesInput"} 9717 if s.MaxResults != nil && *s.MaxResults < 1 { 9718 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 9719 } 9720 9721 if invalidParams.Len() > 0 { 9722 return invalidParams 9723 } 9724 return nil 9725} 9726 9727// SetCategory sets the Category field's value. 9728func (s *ListJobTemplatesInput) SetCategory(v string) *ListJobTemplatesInput { 9729 s.Category = &v 9730 return s 9731} 9732 9733// SetListBy sets the ListBy field's value. 9734func (s *ListJobTemplatesInput) SetListBy(v string) *ListJobTemplatesInput { 9735 s.ListBy = &v 9736 return s 9737} 9738 9739// SetMaxResults sets the MaxResults field's value. 9740func (s *ListJobTemplatesInput) SetMaxResults(v int64) *ListJobTemplatesInput { 9741 s.MaxResults = &v 9742 return s 9743} 9744 9745// SetNextToken sets the NextToken field's value. 9746func (s *ListJobTemplatesInput) SetNextToken(v string) *ListJobTemplatesInput { 9747 s.NextToken = &v 9748 return s 9749} 9750 9751// SetOrder sets the Order field's value. 9752func (s *ListJobTemplatesInput) SetOrder(v string) *ListJobTemplatesInput { 9753 s.Order = &v 9754 return s 9755} 9756 9757// Successful list job templates requests return a JSON array of job templates. 9758// If you do not specify how they are ordered, you will receive them in alphabetical 9759// order by name. 9760type ListJobTemplatesOutput struct { 9761 _ struct{} `type:"structure"` 9762 9763 // List of Job templates. 9764 JobTemplates []*JobTemplate `locationName:"jobTemplates" type:"list"` 9765 9766 // Use this string to request the next batch of job templates. 9767 NextToken *string `locationName:"nextToken" type:"string"` 9768} 9769 9770// String returns the string representation 9771func (s ListJobTemplatesOutput) String() string { 9772 return awsutil.Prettify(s) 9773} 9774 9775// GoString returns the string representation 9776func (s ListJobTemplatesOutput) GoString() string { 9777 return s.String() 9778} 9779 9780// SetJobTemplates sets the JobTemplates field's value. 9781func (s *ListJobTemplatesOutput) SetJobTemplates(v []*JobTemplate) *ListJobTemplatesOutput { 9782 s.JobTemplates = v 9783 return s 9784} 9785 9786// SetNextToken sets the NextToken field's value. 9787func (s *ListJobTemplatesOutput) SetNextToken(v string) *ListJobTemplatesOutput { 9788 s.NextToken = &v 9789 return s 9790} 9791 9792// You can send list jobs requests with an empty body. Optionally, you can filter 9793// the response by queue and/or job status by specifying them in your request 9794// body. You can also optionally specify the maximum number, up to twenty, of 9795// jobs to be returned. 9796type ListJobsInput struct { 9797 _ struct{} `type:"structure"` 9798 9799 // Optional. Number of jobs, up to twenty, that will be returned at one time. 9800 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 9801 9802 // Use this string, provided with the response to a previous request, to request 9803 // the next batch of jobs. 9804 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 9805 9806 // When you request lists of resources, you can optionally specify whether they 9807 // are sorted in ASCENDING or DESCENDING order. Default varies by resource. 9808 Order *string `location:"querystring" locationName:"order" type:"string" enum:"Order"` 9809 9810 // Provide a queue name to get back only jobs from that queue. 9811 Queue *string `location:"querystring" locationName:"queue" type:"string"` 9812 9813 // A job's status can be SUBMITTED, PROGRESSING, COMPLETE, CANCELED, or ERROR. 9814 Status *string `location:"querystring" locationName:"status" type:"string" enum:"JobStatus"` 9815} 9816 9817// String returns the string representation 9818func (s ListJobsInput) String() string { 9819 return awsutil.Prettify(s) 9820} 9821 9822// GoString returns the string representation 9823func (s ListJobsInput) GoString() string { 9824 return s.String() 9825} 9826 9827// Validate inspects the fields of the type to determine if they are valid. 9828func (s *ListJobsInput) Validate() error { 9829 invalidParams := request.ErrInvalidParams{Context: "ListJobsInput"} 9830 if s.MaxResults != nil && *s.MaxResults < 1 { 9831 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 9832 } 9833 9834 if invalidParams.Len() > 0 { 9835 return invalidParams 9836 } 9837 return nil 9838} 9839 9840// SetMaxResults sets the MaxResults field's value. 9841func (s *ListJobsInput) SetMaxResults(v int64) *ListJobsInput { 9842 s.MaxResults = &v 9843 return s 9844} 9845 9846// SetNextToken sets the NextToken field's value. 9847func (s *ListJobsInput) SetNextToken(v string) *ListJobsInput { 9848 s.NextToken = &v 9849 return s 9850} 9851 9852// SetOrder sets the Order field's value. 9853func (s *ListJobsInput) SetOrder(v string) *ListJobsInput { 9854 s.Order = &v 9855 return s 9856} 9857 9858// SetQueue sets the Queue field's value. 9859func (s *ListJobsInput) SetQueue(v string) *ListJobsInput { 9860 s.Queue = &v 9861 return s 9862} 9863 9864// SetStatus sets the Status field's value. 9865func (s *ListJobsInput) SetStatus(v string) *ListJobsInput { 9866 s.Status = &v 9867 return s 9868} 9869 9870// Successful list jobs requests return a JSON array of jobs. If you do not 9871// specify how they are ordered, you will receive the most recently created 9872// first. 9873type ListJobsOutput struct { 9874 _ struct{} `type:"structure"` 9875 9876 // List of jobs 9877 Jobs []*Job `locationName:"jobs" type:"list"` 9878 9879 // Use this string to request the next batch of jobs. 9880 NextToken *string `locationName:"nextToken" type:"string"` 9881} 9882 9883// String returns the string representation 9884func (s ListJobsOutput) String() string { 9885 return awsutil.Prettify(s) 9886} 9887 9888// GoString returns the string representation 9889func (s ListJobsOutput) GoString() string { 9890 return s.String() 9891} 9892 9893// SetJobs sets the Jobs field's value. 9894func (s *ListJobsOutput) SetJobs(v []*Job) *ListJobsOutput { 9895 s.Jobs = v 9896 return s 9897} 9898 9899// SetNextToken sets the NextToken field's value. 9900func (s *ListJobsOutput) SetNextToken(v string) *ListJobsOutput { 9901 s.NextToken = &v 9902 return s 9903} 9904 9905// You can send list presets requests with an empty body. Optionally, you can 9906// filter the response by category by specifying it in your request body. You 9907// can also optionally specify the maximum number, up to twenty, of queues to 9908// be returned. 9909type ListPresetsInput struct { 9910 _ struct{} `type:"structure"` 9911 9912 // Optionally, specify a preset category to limit responses to only presets 9913 // from that category. 9914 Category *string `location:"querystring" locationName:"category" type:"string"` 9915 9916 // Optional. When you request a list of presets, you can choose to list them 9917 // alphabetically by NAME or chronologically by CREATION_DATE. If you don't 9918 // specify, the service will list them by name. 9919 ListBy *string `location:"querystring" locationName:"listBy" type:"string" enum:"PresetListBy"` 9920 9921 // Optional. Number of presets, up to twenty, that will be returned at one time 9922 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 9923 9924 // Use this string, provided with the response to a previous request, to request 9925 // the next batch of presets. 9926 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 9927 9928 // When you request lists of resources, you can optionally specify whether they 9929 // are sorted in ASCENDING or DESCENDING order. Default varies by resource. 9930 Order *string `location:"querystring" locationName:"order" type:"string" enum:"Order"` 9931} 9932 9933// String returns the string representation 9934func (s ListPresetsInput) String() string { 9935 return awsutil.Prettify(s) 9936} 9937 9938// GoString returns the string representation 9939func (s ListPresetsInput) GoString() string { 9940 return s.String() 9941} 9942 9943// Validate inspects the fields of the type to determine if they are valid. 9944func (s *ListPresetsInput) Validate() error { 9945 invalidParams := request.ErrInvalidParams{Context: "ListPresetsInput"} 9946 if s.MaxResults != nil && *s.MaxResults < 1 { 9947 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 9948 } 9949 9950 if invalidParams.Len() > 0 { 9951 return invalidParams 9952 } 9953 return nil 9954} 9955 9956// SetCategory sets the Category field's value. 9957func (s *ListPresetsInput) SetCategory(v string) *ListPresetsInput { 9958 s.Category = &v 9959 return s 9960} 9961 9962// SetListBy sets the ListBy field's value. 9963func (s *ListPresetsInput) SetListBy(v string) *ListPresetsInput { 9964 s.ListBy = &v 9965 return s 9966} 9967 9968// SetMaxResults sets the MaxResults field's value. 9969func (s *ListPresetsInput) SetMaxResults(v int64) *ListPresetsInput { 9970 s.MaxResults = &v 9971 return s 9972} 9973 9974// SetNextToken sets the NextToken field's value. 9975func (s *ListPresetsInput) SetNextToken(v string) *ListPresetsInput { 9976 s.NextToken = &v 9977 return s 9978} 9979 9980// SetOrder sets the Order field's value. 9981func (s *ListPresetsInput) SetOrder(v string) *ListPresetsInput { 9982 s.Order = &v 9983 return s 9984} 9985 9986// Successful list presets requests return a JSON array of presets. If you do 9987// not specify how they are ordered, you will receive them alphabetically by 9988// name. 9989type ListPresetsOutput struct { 9990 _ struct{} `type:"structure"` 9991 9992 // Use this string to request the next batch of presets. 9993 NextToken *string `locationName:"nextToken" type:"string"` 9994 9995 // List of presets 9996 Presets []*Preset `locationName:"presets" type:"list"` 9997} 9998 9999// String returns the string representation 10000func (s ListPresetsOutput) String() string { 10001 return awsutil.Prettify(s) 10002} 10003 10004// GoString returns the string representation 10005func (s ListPresetsOutput) GoString() string { 10006 return s.String() 10007} 10008 10009// SetNextToken sets the NextToken field's value. 10010func (s *ListPresetsOutput) SetNextToken(v string) *ListPresetsOutput { 10011 s.NextToken = &v 10012 return s 10013} 10014 10015// SetPresets sets the Presets field's value. 10016func (s *ListPresetsOutput) SetPresets(v []*Preset) *ListPresetsOutput { 10017 s.Presets = v 10018 return s 10019} 10020 10021// You can send list queues requests with an empty body. You can optionally 10022// specify the maximum number, up to twenty, of queues to be returned. 10023type ListQueuesInput struct { 10024 _ struct{} `type:"structure"` 10025 10026 // Optional. When you request a list of queues, you can choose to list them 10027 // alphabetically by NAME or chronologically by CREATION_DATE. If you don't 10028 // specify, the service will list them by creation date. 10029 ListBy *string `location:"querystring" locationName:"listBy" type:"string" enum:"QueueListBy"` 10030 10031 // Optional. Number of queues, up to twenty, that will be returned at one time. 10032 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 10033 10034 // Use this string, provided with the response to a previous request, to request 10035 // the next batch of queues. 10036 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 10037 10038 // When you request lists of resources, you can optionally specify whether they 10039 // are sorted in ASCENDING or DESCENDING order. Default varies by resource. 10040 Order *string `location:"querystring" locationName:"order" type:"string" enum:"Order"` 10041} 10042 10043// String returns the string representation 10044func (s ListQueuesInput) String() string { 10045 return awsutil.Prettify(s) 10046} 10047 10048// GoString returns the string representation 10049func (s ListQueuesInput) GoString() string { 10050 return s.String() 10051} 10052 10053// Validate inspects the fields of the type to determine if they are valid. 10054func (s *ListQueuesInput) Validate() error { 10055 invalidParams := request.ErrInvalidParams{Context: "ListQueuesInput"} 10056 if s.MaxResults != nil && *s.MaxResults < 1 { 10057 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 10058 } 10059 10060 if invalidParams.Len() > 0 { 10061 return invalidParams 10062 } 10063 return nil 10064} 10065 10066// SetListBy sets the ListBy field's value. 10067func (s *ListQueuesInput) SetListBy(v string) *ListQueuesInput { 10068 s.ListBy = &v 10069 return s 10070} 10071 10072// SetMaxResults sets the MaxResults field's value. 10073func (s *ListQueuesInput) SetMaxResults(v int64) *ListQueuesInput { 10074 s.MaxResults = &v 10075 return s 10076} 10077 10078// SetNextToken sets the NextToken field's value. 10079func (s *ListQueuesInput) SetNextToken(v string) *ListQueuesInput { 10080 s.NextToken = &v 10081 return s 10082} 10083 10084// SetOrder sets the Order field's value. 10085func (s *ListQueuesInput) SetOrder(v string) *ListQueuesInput { 10086 s.Order = &v 10087 return s 10088} 10089 10090// Successful list queues return a JSON array of queues. If you do not specify 10091// how they are ordered, you will receive them alphabetically by name. 10092type ListQueuesOutput struct { 10093 _ struct{} `type:"structure"` 10094 10095 // Use this string to request the next batch of queues. 10096 NextToken *string `locationName:"nextToken" type:"string"` 10097 10098 // List of queues 10099 Queues []*Queue `locationName:"queues" type:"list"` 10100} 10101 10102// String returns the string representation 10103func (s ListQueuesOutput) String() string { 10104 return awsutil.Prettify(s) 10105} 10106 10107// GoString returns the string representation 10108func (s ListQueuesOutput) GoString() string { 10109 return s.String() 10110} 10111 10112// SetNextToken sets the NextToken field's value. 10113func (s *ListQueuesOutput) SetNextToken(v string) *ListQueuesOutput { 10114 s.NextToken = &v 10115 return s 10116} 10117 10118// SetQueues sets the Queues field's value. 10119func (s *ListQueuesOutput) SetQueues(v []*Queue) *ListQueuesOutput { 10120 s.Queues = v 10121 return s 10122} 10123 10124// List the tags for your AWS Elemental MediaConvert resource by sending a request 10125// with the Amazon Resource Name (ARN) of the resource. To get the ARN, send 10126// a GET request with the resource name. 10127type ListTagsForResourceInput struct { 10128 _ struct{} `type:"structure"` 10129 10130 // The Amazon Resource Name (ARN) of the resource that you want to list tags 10131 // for. To get the ARN, send a GET request with the resource name. 10132 // 10133 // Arn is a required field 10134 Arn *string `location:"uri" locationName:"arn" type:"string" required:"true"` 10135} 10136 10137// String returns the string representation 10138func (s ListTagsForResourceInput) String() string { 10139 return awsutil.Prettify(s) 10140} 10141 10142// GoString returns the string representation 10143func (s ListTagsForResourceInput) GoString() string { 10144 return s.String() 10145} 10146 10147// Validate inspects the fields of the type to determine if they are valid. 10148func (s *ListTagsForResourceInput) Validate() error { 10149 invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} 10150 if s.Arn == nil { 10151 invalidParams.Add(request.NewErrParamRequired("Arn")) 10152 } 10153 10154 if invalidParams.Len() > 0 { 10155 return invalidParams 10156 } 10157 return nil 10158} 10159 10160// SetArn sets the Arn field's value. 10161func (s *ListTagsForResourceInput) SetArn(v string) *ListTagsForResourceInput { 10162 s.Arn = &v 10163 return s 10164} 10165 10166// A successful request to list the tags for a resource returns a JSON map of 10167// tags. 10168type ListTagsForResourceOutput struct { 10169 _ struct{} `type:"structure"` 10170 10171 // The Amazon Resource Name (ARN) and tags for an AWS Elemental MediaConvert 10172 // resource. 10173 ResourceTags *ResourceTags `locationName:"resourceTags" type:"structure"` 10174} 10175 10176// String returns the string representation 10177func (s ListTagsForResourceOutput) String() string { 10178 return awsutil.Prettify(s) 10179} 10180 10181// GoString returns the string representation 10182func (s ListTagsForResourceOutput) GoString() string { 10183 return s.String() 10184} 10185 10186// SetResourceTags sets the ResourceTags field's value. 10187func (s *ListTagsForResourceOutput) SetResourceTags(v *ResourceTags) *ListTagsForResourceOutput { 10188 s.ResourceTags = v 10189 return s 10190} 10191 10192// Settings for M2TS Container. 10193type M2tsSettings struct { 10194 _ struct{} `type:"structure"` 10195 10196 // Selects between the DVB and ATSC buffer models for Dolby Digital audio. 10197 AudioBufferModel *string `locationName:"audioBufferModel" type:"string" enum:"M2tsAudioBufferModel"` 10198 10199 // The number of audio frames to insert for each PES packet. 10200 AudioFramesPerPes *int64 `locationName:"audioFramesPerPes" type:"integer"` 10201 10202 // Packet Identifier (PID) of the elementary audio stream(s) in the transport 10203 // stream. Multiple values are accepted, and can be entered in ranges and/or 10204 // by comma separation. 10205 AudioPids []*int64 `locationName:"audioPids" type:"list"` 10206 10207 // The output bitrate of the transport stream in bits per second. Setting to 10208 // 0 lets the muxer automatically determine the appropriate bitrate. Other common 10209 // values are 3750000, 7500000, and 15000000. 10210 Bitrate *int64 `locationName:"bitrate" type:"integer"` 10211 10212 // Controls what buffer model to use for accurate interleaving. If set to MULTIPLEX, 10213 // use multiplex buffer model. If set to NONE, this can lead to lower latency, 10214 // but low-memory devices may not be able to play back the stream without interruptions. 10215 BufferModel *string `locationName:"bufferModel" type:"string" enum:"M2tsBufferModel"` 10216 10217 // Inserts DVB Network Information Table (NIT) at the specified table repetition 10218 // interval. 10219 DvbNitSettings *DvbNitSettings `locationName:"dvbNitSettings" type:"structure"` 10220 10221 // Inserts DVB Service Description Table (NIT) at the specified table repetition 10222 // interval. 10223 DvbSdtSettings *DvbSdtSettings `locationName:"dvbSdtSettings" type:"structure"` 10224 10225 // Packet Identifier (PID) for input source DVB Subtitle data to this output. 10226 // Multiple values are accepted, and can be entered in ranges and/or by comma 10227 // separation. 10228 DvbSubPids []*int64 `locationName:"dvbSubPids" type:"list"` 10229 10230 // Inserts DVB Time and Date Table (TDT) at the specified table repetition interval. 10231 DvbTdtSettings *DvbTdtSettings `locationName:"dvbTdtSettings" type:"structure"` 10232 10233 // Packet Identifier (PID) for input source DVB Teletext data to this output. 10234 DvbTeletextPid *int64 `locationName:"dvbTeletextPid" min:"32" type:"integer"` 10235 10236 // When set to VIDEO_AND_FIXED_INTERVALS, audio EBP markers will be added to 10237 // partitions 3 and 4. The interval between these additional markers will be 10238 // fixed, and will be slightly shorter than the video EBP marker interval. When 10239 // set to VIDEO_INTERVAL, these additional markers will not be inserted. Only 10240 // applicable when EBP segmentation markers are is selected (segmentationMarkers 10241 // is EBP or EBP_LEGACY). 10242 EbpAudioInterval *string `locationName:"ebpAudioInterval" type:"string" enum:"M2tsEbpAudioInterval"` 10243 10244 // Selects which PIDs to place EBP markers on. They can either be placed only 10245 // on the video PID, or on both the video PID and all audio PIDs. Only applicable 10246 // when EBP segmentation markers are is selected (segmentationMarkers is EBP 10247 // or EBP_LEGACY). 10248 EbpPlacement *string `locationName:"ebpPlacement" type:"string" enum:"M2tsEbpPlacement"` 10249 10250 // Controls whether to include the ES Rate field in the PES header. 10251 EsRateInPes *string `locationName:"esRateInPes" type:"string" enum:"M2tsEsRateInPes"` 10252 10253 // The length in seconds of each fragment. Only used with EBP markers. 10254 FragmentTime *float64 `locationName:"fragmentTime" type:"double"` 10255 10256 // Maximum time in milliseconds between Program Clock References (PCRs) inserted 10257 // into the transport stream. 10258 MaxPcrInterval *int64 `locationName:"maxPcrInterval" type:"integer"` 10259 10260 // When set, enforces that Encoder Boundary Points do not come within the specified 10261 // time interval of each other by looking ahead at input video. If another EBP 10262 // is going to come in within the specified time interval, the current EBP is 10263 // not emitted, and the segment is "stretched" to the next marker. The lookahead 10264 // value does not add latency to the system. The Live Event must be configured 10265 // elsewhere to create sufficient latency to make the lookahead accurate. 10266 MinEbpInterval *int64 `locationName:"minEbpInterval" type:"integer"` 10267 10268 // If INSERT, Nielsen inaudible tones for media tracking will be detected in 10269 // the input audio and an equivalent ID3 tag will be inserted in the output. 10270 NielsenId3 *string `locationName:"nielsenId3" type:"string" enum:"M2tsNielsenId3"` 10271 10272 // Value in bits per second of extra null packets to insert into the transport 10273 // stream. This can be used if a downstream encryption system requires periodic 10274 // null packets. 10275 NullPacketBitrate *float64 `locationName:"nullPacketBitrate" type:"double"` 10276 10277 // The number of milliseconds between instances of this table in the output 10278 // transport stream. 10279 PatInterval *int64 `locationName:"patInterval" type:"integer"` 10280 10281 // When set to PCR_EVERY_PES_PACKET, a Program Clock Reference value is inserted 10282 // for every Packetized Elementary Stream (PES) header. This is effective only 10283 // when the PCR PID is the same as the video or audio elementary stream. 10284 PcrControl *string `locationName:"pcrControl" type:"string" enum:"M2tsPcrControl"` 10285 10286 // Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport 10287 // stream. When no value is given, the encoder will assign the same value as 10288 // the Video PID. 10289 PcrPid *int64 `locationName:"pcrPid" min:"32" type:"integer"` 10290 10291 // The number of milliseconds between instances of this table in the output 10292 // transport stream. 10293 PmtInterval *int64 `locationName:"pmtInterval" type:"integer"` 10294 10295 // Packet Identifier (PID) for the Program Map Table (PMT) in the transport 10296 // stream. 10297 PmtPid *int64 `locationName:"pmtPid" min:"32" type:"integer"` 10298 10299 // Packet Identifier (PID) of the private metadata stream in the transport stream. 10300 PrivateMetadataPid *int64 `locationName:"privateMetadataPid" min:"32" type:"integer"` 10301 10302 // The value of the program number field in the Program Map Table. 10303 ProgramNumber *int64 `locationName:"programNumber" type:"integer"` 10304 10305 // When set to CBR, inserts null packets into transport stream to fill specified 10306 // bitrate. When set to VBR, the bitrate setting acts as the maximum bitrate, 10307 // but the output will not be padded up to that bitrate. 10308 RateMode *string `locationName:"rateMode" type:"string" enum:"M2tsRateMode"` 10309 10310 // Packet Identifier (PID) of the SCTE-35 stream in the transport stream. 10311 Scte35Pid *int64 `locationName:"scte35Pid" min:"32" type:"integer"` 10312 10313 // Enables SCTE-35 passthrough (scte35Source) to pass any SCTE-35 signals from 10314 // input to output. 10315 Scte35Source *string `locationName:"scte35Source" type:"string" enum:"M2tsScte35Source"` 10316 10317 // Inserts segmentation markers at each segmentation_time period. rai_segstart 10318 // sets the Random Access Indicator bit in the adaptation field. rai_adapt sets 10319 // the RAI bit and adds the current timecode in the private data bytes. psi_segstart 10320 // inserts PAT and PMT tables at the start of segments. ebp adds Encoder Boundary 10321 // Point information to the adaptation field as per OpenCable specification 10322 // OC-SP-EBP-I01-130118. ebp_legacy adds Encoder Boundary Point information 10323 // to the adaptation field using a legacy proprietary format. 10324 SegmentationMarkers *string `locationName:"segmentationMarkers" type:"string" enum:"M2tsSegmentationMarkers"` 10325 10326 // The segmentation style parameter controls how segmentation markers are inserted 10327 // into the transport stream. With avails, it is possible that segments may 10328 // be truncated, which can influence where future segmentation markers are inserted. 10329 // When a segmentation style of "reset_cadence" is selected and a segment is 10330 // truncated due to an avail, we will reset the segmentation cadence. This means 10331 // the subsequent segment will have a duration of of $segmentation_time seconds. 10332 // When a segmentation style of "maintain_cadence" is selected and a segment 10333 // is truncated due to an avail, we will not reset the segmentation cadence. 10334 // This means the subsequent segment will likely be truncated as well. However, 10335 // all segments after that will have a duration of $segmentation_time seconds. 10336 // Note that EBP lookahead is a slight exception to this rule. 10337 SegmentationStyle *string `locationName:"segmentationStyle" type:"string" enum:"M2tsSegmentationStyle"` 10338 10339 // The length in seconds of each segment. Required unless markers is set to 10340 // _none_. 10341 SegmentationTime *float64 `locationName:"segmentationTime" type:"double"` 10342 10343 // Packet Identifier (PID) of the timed metadata stream in the transport stream. 10344 TimedMetadataPid *int64 `locationName:"timedMetadataPid" min:"32" type:"integer"` 10345 10346 // The value of the transport stream ID field in the Program Map Table. 10347 TransportStreamId *int64 `locationName:"transportStreamId" type:"integer"` 10348 10349 // Packet Identifier (PID) of the elementary video stream in the transport stream. 10350 VideoPid *int64 `locationName:"videoPid" min:"32" type:"integer"` 10351} 10352 10353// String returns the string representation 10354func (s M2tsSettings) String() string { 10355 return awsutil.Prettify(s) 10356} 10357 10358// GoString returns the string representation 10359func (s M2tsSettings) GoString() string { 10360 return s.String() 10361} 10362 10363// Validate inspects the fields of the type to determine if they are valid. 10364func (s *M2tsSettings) Validate() error { 10365 invalidParams := request.ErrInvalidParams{Context: "M2tsSettings"} 10366 if s.DvbTeletextPid != nil && *s.DvbTeletextPid < 32 { 10367 invalidParams.Add(request.NewErrParamMinValue("DvbTeletextPid", 32)) 10368 } 10369 if s.PcrPid != nil && *s.PcrPid < 32 { 10370 invalidParams.Add(request.NewErrParamMinValue("PcrPid", 32)) 10371 } 10372 if s.PmtPid != nil && *s.PmtPid < 32 { 10373 invalidParams.Add(request.NewErrParamMinValue("PmtPid", 32)) 10374 } 10375 if s.PrivateMetadataPid != nil && *s.PrivateMetadataPid < 32 { 10376 invalidParams.Add(request.NewErrParamMinValue("PrivateMetadataPid", 32)) 10377 } 10378 if s.Scte35Pid != nil && *s.Scte35Pid < 32 { 10379 invalidParams.Add(request.NewErrParamMinValue("Scte35Pid", 32)) 10380 } 10381 if s.TimedMetadataPid != nil && *s.TimedMetadataPid < 32 { 10382 invalidParams.Add(request.NewErrParamMinValue("TimedMetadataPid", 32)) 10383 } 10384 if s.VideoPid != nil && *s.VideoPid < 32 { 10385 invalidParams.Add(request.NewErrParamMinValue("VideoPid", 32)) 10386 } 10387 if s.DvbNitSettings != nil { 10388 if err := s.DvbNitSettings.Validate(); err != nil { 10389 invalidParams.AddNested("DvbNitSettings", err.(request.ErrInvalidParams)) 10390 } 10391 } 10392 if s.DvbSdtSettings != nil { 10393 if err := s.DvbSdtSettings.Validate(); err != nil { 10394 invalidParams.AddNested("DvbSdtSettings", err.(request.ErrInvalidParams)) 10395 } 10396 } 10397 if s.DvbTdtSettings != nil { 10398 if err := s.DvbTdtSettings.Validate(); err != nil { 10399 invalidParams.AddNested("DvbTdtSettings", err.(request.ErrInvalidParams)) 10400 } 10401 } 10402 10403 if invalidParams.Len() > 0 { 10404 return invalidParams 10405 } 10406 return nil 10407} 10408 10409// SetAudioBufferModel sets the AudioBufferModel field's value. 10410func (s *M2tsSettings) SetAudioBufferModel(v string) *M2tsSettings { 10411 s.AudioBufferModel = &v 10412 return s 10413} 10414 10415// SetAudioFramesPerPes sets the AudioFramesPerPes field's value. 10416func (s *M2tsSettings) SetAudioFramesPerPes(v int64) *M2tsSettings { 10417 s.AudioFramesPerPes = &v 10418 return s 10419} 10420 10421// SetAudioPids sets the AudioPids field's value. 10422func (s *M2tsSettings) SetAudioPids(v []*int64) *M2tsSettings { 10423 s.AudioPids = v 10424 return s 10425} 10426 10427// SetBitrate sets the Bitrate field's value. 10428func (s *M2tsSettings) SetBitrate(v int64) *M2tsSettings { 10429 s.Bitrate = &v 10430 return s 10431} 10432 10433// SetBufferModel sets the BufferModel field's value. 10434func (s *M2tsSettings) SetBufferModel(v string) *M2tsSettings { 10435 s.BufferModel = &v 10436 return s 10437} 10438 10439// SetDvbNitSettings sets the DvbNitSettings field's value. 10440func (s *M2tsSettings) SetDvbNitSettings(v *DvbNitSettings) *M2tsSettings { 10441 s.DvbNitSettings = v 10442 return s 10443} 10444 10445// SetDvbSdtSettings sets the DvbSdtSettings field's value. 10446func (s *M2tsSettings) SetDvbSdtSettings(v *DvbSdtSettings) *M2tsSettings { 10447 s.DvbSdtSettings = v 10448 return s 10449} 10450 10451// SetDvbSubPids sets the DvbSubPids field's value. 10452func (s *M2tsSettings) SetDvbSubPids(v []*int64) *M2tsSettings { 10453 s.DvbSubPids = v 10454 return s 10455} 10456 10457// SetDvbTdtSettings sets the DvbTdtSettings field's value. 10458func (s *M2tsSettings) SetDvbTdtSettings(v *DvbTdtSettings) *M2tsSettings { 10459 s.DvbTdtSettings = v 10460 return s 10461} 10462 10463// SetDvbTeletextPid sets the DvbTeletextPid field's value. 10464func (s *M2tsSettings) SetDvbTeletextPid(v int64) *M2tsSettings { 10465 s.DvbTeletextPid = &v 10466 return s 10467} 10468 10469// SetEbpAudioInterval sets the EbpAudioInterval field's value. 10470func (s *M2tsSettings) SetEbpAudioInterval(v string) *M2tsSettings { 10471 s.EbpAudioInterval = &v 10472 return s 10473} 10474 10475// SetEbpPlacement sets the EbpPlacement field's value. 10476func (s *M2tsSettings) SetEbpPlacement(v string) *M2tsSettings { 10477 s.EbpPlacement = &v 10478 return s 10479} 10480 10481// SetEsRateInPes sets the EsRateInPes field's value. 10482func (s *M2tsSettings) SetEsRateInPes(v string) *M2tsSettings { 10483 s.EsRateInPes = &v 10484 return s 10485} 10486 10487// SetFragmentTime sets the FragmentTime field's value. 10488func (s *M2tsSettings) SetFragmentTime(v float64) *M2tsSettings { 10489 s.FragmentTime = &v 10490 return s 10491} 10492 10493// SetMaxPcrInterval sets the MaxPcrInterval field's value. 10494func (s *M2tsSettings) SetMaxPcrInterval(v int64) *M2tsSettings { 10495 s.MaxPcrInterval = &v 10496 return s 10497} 10498 10499// SetMinEbpInterval sets the MinEbpInterval field's value. 10500func (s *M2tsSettings) SetMinEbpInterval(v int64) *M2tsSettings { 10501 s.MinEbpInterval = &v 10502 return s 10503} 10504 10505// SetNielsenId3 sets the NielsenId3 field's value. 10506func (s *M2tsSettings) SetNielsenId3(v string) *M2tsSettings { 10507 s.NielsenId3 = &v 10508 return s 10509} 10510 10511// SetNullPacketBitrate sets the NullPacketBitrate field's value. 10512func (s *M2tsSettings) SetNullPacketBitrate(v float64) *M2tsSettings { 10513 s.NullPacketBitrate = &v 10514 return s 10515} 10516 10517// SetPatInterval sets the PatInterval field's value. 10518func (s *M2tsSettings) SetPatInterval(v int64) *M2tsSettings { 10519 s.PatInterval = &v 10520 return s 10521} 10522 10523// SetPcrControl sets the PcrControl field's value. 10524func (s *M2tsSettings) SetPcrControl(v string) *M2tsSettings { 10525 s.PcrControl = &v 10526 return s 10527} 10528 10529// SetPcrPid sets the PcrPid field's value. 10530func (s *M2tsSettings) SetPcrPid(v int64) *M2tsSettings { 10531 s.PcrPid = &v 10532 return s 10533} 10534 10535// SetPmtInterval sets the PmtInterval field's value. 10536func (s *M2tsSettings) SetPmtInterval(v int64) *M2tsSettings { 10537 s.PmtInterval = &v 10538 return s 10539} 10540 10541// SetPmtPid sets the PmtPid field's value. 10542func (s *M2tsSettings) SetPmtPid(v int64) *M2tsSettings { 10543 s.PmtPid = &v 10544 return s 10545} 10546 10547// SetPrivateMetadataPid sets the PrivateMetadataPid field's value. 10548func (s *M2tsSettings) SetPrivateMetadataPid(v int64) *M2tsSettings { 10549 s.PrivateMetadataPid = &v 10550 return s 10551} 10552 10553// SetProgramNumber sets the ProgramNumber field's value. 10554func (s *M2tsSettings) SetProgramNumber(v int64) *M2tsSettings { 10555 s.ProgramNumber = &v 10556 return s 10557} 10558 10559// SetRateMode sets the RateMode field's value. 10560func (s *M2tsSettings) SetRateMode(v string) *M2tsSettings { 10561 s.RateMode = &v 10562 return s 10563} 10564 10565// SetScte35Pid sets the Scte35Pid field's value. 10566func (s *M2tsSettings) SetScte35Pid(v int64) *M2tsSettings { 10567 s.Scte35Pid = &v 10568 return s 10569} 10570 10571// SetScte35Source sets the Scte35Source field's value. 10572func (s *M2tsSettings) SetScte35Source(v string) *M2tsSettings { 10573 s.Scte35Source = &v 10574 return s 10575} 10576 10577// SetSegmentationMarkers sets the SegmentationMarkers field's value. 10578func (s *M2tsSettings) SetSegmentationMarkers(v string) *M2tsSettings { 10579 s.SegmentationMarkers = &v 10580 return s 10581} 10582 10583// SetSegmentationStyle sets the SegmentationStyle field's value. 10584func (s *M2tsSettings) SetSegmentationStyle(v string) *M2tsSettings { 10585 s.SegmentationStyle = &v 10586 return s 10587} 10588 10589// SetSegmentationTime sets the SegmentationTime field's value. 10590func (s *M2tsSettings) SetSegmentationTime(v float64) *M2tsSettings { 10591 s.SegmentationTime = &v 10592 return s 10593} 10594 10595// SetTimedMetadataPid sets the TimedMetadataPid field's value. 10596func (s *M2tsSettings) SetTimedMetadataPid(v int64) *M2tsSettings { 10597 s.TimedMetadataPid = &v 10598 return s 10599} 10600 10601// SetTransportStreamId sets the TransportStreamId field's value. 10602func (s *M2tsSettings) SetTransportStreamId(v int64) *M2tsSettings { 10603 s.TransportStreamId = &v 10604 return s 10605} 10606 10607// SetVideoPid sets the VideoPid field's value. 10608func (s *M2tsSettings) SetVideoPid(v int64) *M2tsSettings { 10609 s.VideoPid = &v 10610 return s 10611} 10612 10613// Settings for TS segments in HLS 10614type M3u8Settings struct { 10615 _ struct{} `type:"structure"` 10616 10617 // The number of audio frames to insert for each PES packet. 10618 AudioFramesPerPes *int64 `locationName:"audioFramesPerPes" type:"integer"` 10619 10620 // Packet Identifier (PID) of the elementary audio stream(s) in the transport 10621 // stream. Multiple values are accepted, and can be entered in ranges and/or 10622 // by comma separation. 10623 AudioPids []*int64 `locationName:"audioPids" type:"list"` 10624 10625 // If INSERT, Nielsen inaudible tones for media tracking will be detected in 10626 // the input audio and an equivalent ID3 tag will be inserted in the output. 10627 NielsenId3 *string `locationName:"nielsenId3" type:"string" enum:"M3u8NielsenId3"` 10628 10629 // The number of milliseconds between instances of this table in the output 10630 // transport stream. 10631 PatInterval *int64 `locationName:"patInterval" type:"integer"` 10632 10633 // When set to PCR_EVERY_PES_PACKET a Program Clock Reference value is inserted 10634 // for every Packetized Elementary Stream (PES) header. This parameter is effective 10635 // only when the PCR PID is the same as the video or audio elementary stream. 10636 PcrControl *string `locationName:"pcrControl" type:"string" enum:"M3u8PcrControl"` 10637 10638 // Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport 10639 // stream. When no value is given, the encoder will assign the same value as 10640 // the Video PID. 10641 PcrPid *int64 `locationName:"pcrPid" min:"32" type:"integer"` 10642 10643 // The number of milliseconds between instances of this table in the output 10644 // transport stream. 10645 PmtInterval *int64 `locationName:"pmtInterval" type:"integer"` 10646 10647 // Packet Identifier (PID) for the Program Map Table (PMT) in the transport 10648 // stream. 10649 PmtPid *int64 `locationName:"pmtPid" min:"32" type:"integer"` 10650 10651 // Packet Identifier (PID) of the private metadata stream in the transport stream. 10652 PrivateMetadataPid *int64 `locationName:"privateMetadataPid" min:"32" type:"integer"` 10653 10654 // The value of the program number field in the Program Map Table. 10655 ProgramNumber *int64 `locationName:"programNumber" type:"integer"` 10656 10657 // Packet Identifier (PID) of the SCTE-35 stream in the transport stream. 10658 Scte35Pid *int64 `locationName:"scte35Pid" min:"32" type:"integer"` 10659 10660 // Enables SCTE-35 passthrough (scte35Source) to pass any SCTE-35 signals from 10661 // input to output. 10662 Scte35Source *string `locationName:"scte35Source" type:"string" enum:"M3u8Scte35Source"` 10663 10664 // Applies only to HLS outputs. Use this setting to specify whether the service 10665 // inserts the ID3 timed metadata from the input in this output. 10666 TimedMetadata *string `locationName:"timedMetadata" type:"string" enum:"TimedMetadata"` 10667 10668 // Packet Identifier (PID) of the timed metadata stream in the transport stream. 10669 TimedMetadataPid *int64 `locationName:"timedMetadataPid" min:"32" type:"integer"` 10670 10671 // The value of the transport stream ID field in the Program Map Table. 10672 TransportStreamId *int64 `locationName:"transportStreamId" type:"integer"` 10673 10674 // Packet Identifier (PID) of the elementary video stream in the transport stream. 10675 VideoPid *int64 `locationName:"videoPid" min:"32" type:"integer"` 10676} 10677 10678// String returns the string representation 10679func (s M3u8Settings) String() string { 10680 return awsutil.Prettify(s) 10681} 10682 10683// GoString returns the string representation 10684func (s M3u8Settings) GoString() string { 10685 return s.String() 10686} 10687 10688// Validate inspects the fields of the type to determine if they are valid. 10689func (s *M3u8Settings) Validate() error { 10690 invalidParams := request.ErrInvalidParams{Context: "M3u8Settings"} 10691 if s.PcrPid != nil && *s.PcrPid < 32 { 10692 invalidParams.Add(request.NewErrParamMinValue("PcrPid", 32)) 10693 } 10694 if s.PmtPid != nil && *s.PmtPid < 32 { 10695 invalidParams.Add(request.NewErrParamMinValue("PmtPid", 32)) 10696 } 10697 if s.PrivateMetadataPid != nil && *s.PrivateMetadataPid < 32 { 10698 invalidParams.Add(request.NewErrParamMinValue("PrivateMetadataPid", 32)) 10699 } 10700 if s.Scte35Pid != nil && *s.Scte35Pid < 32 { 10701 invalidParams.Add(request.NewErrParamMinValue("Scte35Pid", 32)) 10702 } 10703 if s.TimedMetadataPid != nil && *s.TimedMetadataPid < 32 { 10704 invalidParams.Add(request.NewErrParamMinValue("TimedMetadataPid", 32)) 10705 } 10706 if s.VideoPid != nil && *s.VideoPid < 32 { 10707 invalidParams.Add(request.NewErrParamMinValue("VideoPid", 32)) 10708 } 10709 10710 if invalidParams.Len() > 0 { 10711 return invalidParams 10712 } 10713 return nil 10714} 10715 10716// SetAudioFramesPerPes sets the AudioFramesPerPes field's value. 10717func (s *M3u8Settings) SetAudioFramesPerPes(v int64) *M3u8Settings { 10718 s.AudioFramesPerPes = &v 10719 return s 10720} 10721 10722// SetAudioPids sets the AudioPids field's value. 10723func (s *M3u8Settings) SetAudioPids(v []*int64) *M3u8Settings { 10724 s.AudioPids = v 10725 return s 10726} 10727 10728// SetNielsenId3 sets the NielsenId3 field's value. 10729func (s *M3u8Settings) SetNielsenId3(v string) *M3u8Settings { 10730 s.NielsenId3 = &v 10731 return s 10732} 10733 10734// SetPatInterval sets the PatInterval field's value. 10735func (s *M3u8Settings) SetPatInterval(v int64) *M3u8Settings { 10736 s.PatInterval = &v 10737 return s 10738} 10739 10740// SetPcrControl sets the PcrControl field's value. 10741func (s *M3u8Settings) SetPcrControl(v string) *M3u8Settings { 10742 s.PcrControl = &v 10743 return s 10744} 10745 10746// SetPcrPid sets the PcrPid field's value. 10747func (s *M3u8Settings) SetPcrPid(v int64) *M3u8Settings { 10748 s.PcrPid = &v 10749 return s 10750} 10751 10752// SetPmtInterval sets the PmtInterval field's value. 10753func (s *M3u8Settings) SetPmtInterval(v int64) *M3u8Settings { 10754 s.PmtInterval = &v 10755 return s 10756} 10757 10758// SetPmtPid sets the PmtPid field's value. 10759func (s *M3u8Settings) SetPmtPid(v int64) *M3u8Settings { 10760 s.PmtPid = &v 10761 return s 10762} 10763 10764// SetPrivateMetadataPid sets the PrivateMetadataPid field's value. 10765func (s *M3u8Settings) SetPrivateMetadataPid(v int64) *M3u8Settings { 10766 s.PrivateMetadataPid = &v 10767 return s 10768} 10769 10770// SetProgramNumber sets the ProgramNumber field's value. 10771func (s *M3u8Settings) SetProgramNumber(v int64) *M3u8Settings { 10772 s.ProgramNumber = &v 10773 return s 10774} 10775 10776// SetScte35Pid sets the Scte35Pid field's value. 10777func (s *M3u8Settings) SetScte35Pid(v int64) *M3u8Settings { 10778 s.Scte35Pid = &v 10779 return s 10780} 10781 10782// SetScte35Source sets the Scte35Source field's value. 10783func (s *M3u8Settings) SetScte35Source(v string) *M3u8Settings { 10784 s.Scte35Source = &v 10785 return s 10786} 10787 10788// SetTimedMetadata sets the TimedMetadata field's value. 10789func (s *M3u8Settings) SetTimedMetadata(v string) *M3u8Settings { 10790 s.TimedMetadata = &v 10791 return s 10792} 10793 10794// SetTimedMetadataPid sets the TimedMetadataPid field's value. 10795func (s *M3u8Settings) SetTimedMetadataPid(v int64) *M3u8Settings { 10796 s.TimedMetadataPid = &v 10797 return s 10798} 10799 10800// SetTransportStreamId sets the TransportStreamId field's value. 10801func (s *M3u8Settings) SetTransportStreamId(v int64) *M3u8Settings { 10802 s.TransportStreamId = &v 10803 return s 10804} 10805 10806// SetVideoPid sets the VideoPid field's value. 10807func (s *M3u8Settings) SetVideoPid(v int64) *M3u8Settings { 10808 s.VideoPid = &v 10809 return s 10810} 10811 10812// Settings for MOV Container. 10813type MovSettings struct { 10814 _ struct{} `type:"structure"` 10815 10816 // When enabled, include 'clap' atom if appropriate for the video output settings. 10817 ClapAtom *string `locationName:"clapAtom" type:"string" enum:"MovClapAtom"` 10818 10819 // When enabled, file composition times will start at zero, composition times 10820 // in the 'ctts' (composition time to sample) box for B-frames will be negative, 10821 // and a 'cslg' (composition shift least greatest) box will be included per 10822 // 14496-1 amendment 1. This improves compatibility with Apple players and tools. 10823 CslgAtom *string `locationName:"cslgAtom" type:"string" enum:"MovCslgAtom"` 10824 10825 // When set to XDCAM, writes MPEG2 video streams into the QuickTime file using 10826 // XDCAM fourcc codes. This increases compatibility with Apple editors and players, 10827 // but may decrease compatibility with other players. Only applicable when the 10828 // video codec is MPEG2. 10829 Mpeg2FourCCControl *string `locationName:"mpeg2FourCCControl" type:"string" enum:"MovMpeg2FourCCControl"` 10830 10831 // If set to OMNEON, inserts Omneon-compatible padding 10832 PaddingControl *string `locationName:"paddingControl" type:"string" enum:"MovPaddingControl"` 10833 10834 // A value of 'external' creates separate media files and the wrapper file (.mov) 10835 // contains references to these media files. A value of 'self_contained' creates 10836 // only a wrapper (.mov) file and this file contains all of the media. 10837 Reference *string `locationName:"reference" type:"string" enum:"MovReference"` 10838} 10839 10840// String returns the string representation 10841func (s MovSettings) String() string { 10842 return awsutil.Prettify(s) 10843} 10844 10845// GoString returns the string representation 10846func (s MovSettings) GoString() string { 10847 return s.String() 10848} 10849 10850// SetClapAtom sets the ClapAtom field's value. 10851func (s *MovSettings) SetClapAtom(v string) *MovSettings { 10852 s.ClapAtom = &v 10853 return s 10854} 10855 10856// SetCslgAtom sets the CslgAtom field's value. 10857func (s *MovSettings) SetCslgAtom(v string) *MovSettings { 10858 s.CslgAtom = &v 10859 return s 10860} 10861 10862// SetMpeg2FourCCControl sets the Mpeg2FourCCControl field's value. 10863func (s *MovSettings) SetMpeg2FourCCControl(v string) *MovSettings { 10864 s.Mpeg2FourCCControl = &v 10865 return s 10866} 10867 10868// SetPaddingControl sets the PaddingControl field's value. 10869func (s *MovSettings) SetPaddingControl(v string) *MovSettings { 10870 s.PaddingControl = &v 10871 return s 10872} 10873 10874// SetReference sets the Reference field's value. 10875func (s *MovSettings) SetReference(v string) *MovSettings { 10876 s.Reference = &v 10877 return s 10878} 10879 10880// Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to 10881// the value MP2. 10882type Mp2Settings struct { 10883 _ struct{} `type:"structure"` 10884 10885 // Average bitrate in bits/second. 10886 Bitrate *int64 `locationName:"bitrate" min:"32000" type:"integer"` 10887 10888 // Set Channels to specify the number of channels in this output audio track. 10889 // Choosing Mono in the console will give you 1 output channel; choosing Stereo 10890 // will give you 2. In the API, valid values are 1 and 2. 10891 Channels *int64 `locationName:"channels" min:"1" type:"integer"` 10892 10893 // Sample rate in hz. 10894 SampleRate *int64 `locationName:"sampleRate" min:"32000" type:"integer"` 10895} 10896 10897// String returns the string representation 10898func (s Mp2Settings) String() string { 10899 return awsutil.Prettify(s) 10900} 10901 10902// GoString returns the string representation 10903func (s Mp2Settings) GoString() string { 10904 return s.String() 10905} 10906 10907// Validate inspects the fields of the type to determine if they are valid. 10908func (s *Mp2Settings) Validate() error { 10909 invalidParams := request.ErrInvalidParams{Context: "Mp2Settings"} 10910 if s.Bitrate != nil && *s.Bitrate < 32000 { 10911 invalidParams.Add(request.NewErrParamMinValue("Bitrate", 32000)) 10912 } 10913 if s.Channels != nil && *s.Channels < 1 { 10914 invalidParams.Add(request.NewErrParamMinValue("Channels", 1)) 10915 } 10916 if s.SampleRate != nil && *s.SampleRate < 32000 { 10917 invalidParams.Add(request.NewErrParamMinValue("SampleRate", 32000)) 10918 } 10919 10920 if invalidParams.Len() > 0 { 10921 return invalidParams 10922 } 10923 return nil 10924} 10925 10926// SetBitrate sets the Bitrate field's value. 10927func (s *Mp2Settings) SetBitrate(v int64) *Mp2Settings { 10928 s.Bitrate = &v 10929 return s 10930} 10931 10932// SetChannels sets the Channels field's value. 10933func (s *Mp2Settings) SetChannels(v int64) *Mp2Settings { 10934 s.Channels = &v 10935 return s 10936} 10937 10938// SetSampleRate sets the SampleRate field's value. 10939func (s *Mp2Settings) SetSampleRate(v int64) *Mp2Settings { 10940 s.SampleRate = &v 10941 return s 10942} 10943 10944// Settings for MP4 Container 10945type Mp4Settings struct { 10946 _ struct{} `type:"structure"` 10947 10948 // When enabled, file composition times will start at zero, composition times 10949 // in the 'ctts' (composition time to sample) box for B-frames will be negative, 10950 // and a 'cslg' (composition shift least greatest) box will be included per 10951 // 14496-1 amendment 1. This improves compatibility with Apple players and tools. 10952 CslgAtom *string `locationName:"cslgAtom" type:"string" enum:"Mp4CslgAtom"` 10953 10954 // Inserts a free-space box immediately after the moov box. 10955 FreeSpaceBox *string `locationName:"freeSpaceBox" type:"string" enum:"Mp4FreeSpaceBox"` 10956 10957 // If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning 10958 // of the archive as required for progressive downloading. Otherwise it is placed 10959 // normally at the end. 10960 MoovPlacement *string `locationName:"moovPlacement" type:"string" enum:"Mp4MoovPlacement"` 10961 10962 // Overrides the "Major Brand" field in the output file. Usually not necessary 10963 // to specify. 10964 Mp4MajorBrand *string `locationName:"mp4MajorBrand" type:"string"` 10965} 10966 10967// String returns the string representation 10968func (s Mp4Settings) String() string { 10969 return awsutil.Prettify(s) 10970} 10971 10972// GoString returns the string representation 10973func (s Mp4Settings) GoString() string { 10974 return s.String() 10975} 10976 10977// SetCslgAtom sets the CslgAtom field's value. 10978func (s *Mp4Settings) SetCslgAtom(v string) *Mp4Settings { 10979 s.CslgAtom = &v 10980 return s 10981} 10982 10983// SetFreeSpaceBox sets the FreeSpaceBox field's value. 10984func (s *Mp4Settings) SetFreeSpaceBox(v string) *Mp4Settings { 10985 s.FreeSpaceBox = &v 10986 return s 10987} 10988 10989// SetMoovPlacement sets the MoovPlacement field's value. 10990func (s *Mp4Settings) SetMoovPlacement(v string) *Mp4Settings { 10991 s.MoovPlacement = &v 10992 return s 10993} 10994 10995// SetMp4MajorBrand sets the Mp4MajorBrand field's value. 10996func (s *Mp4Settings) SetMp4MajorBrand(v string) *Mp4Settings { 10997 s.Mp4MajorBrand = &v 10998 return s 10999} 11000 11001// Required when you set (Codec) under (VideoDescription)>(CodecSettings) to 11002// the value MPEG2. 11003type Mpeg2Settings struct { 11004 _ struct{} `type:"structure"` 11005 11006 // Adaptive quantization. Allows intra-frame quantizers to vary to improve visual 11007 // quality. 11008 AdaptiveQuantization *string `locationName:"adaptiveQuantization" type:"string" enum:"Mpeg2AdaptiveQuantization"` 11009 11010 // Average bitrate in bits/second. Required for VBR and CBR. For MS Smooth outputs, 11011 // bitrates must be unique when rounded down to the nearest multiple of 1000. 11012 Bitrate *int64 `locationName:"bitrate" min:"1000" type:"integer"` 11013 11014 // Use Level (Mpeg2CodecLevel) to set the MPEG-2 level for the video output. 11015 CodecLevel *string `locationName:"codecLevel" type:"string" enum:"Mpeg2CodecLevel"` 11016 11017 // Use Profile (Mpeg2CodecProfile) to set the MPEG-2 profile for the video output. 11018 CodecProfile *string `locationName:"codecProfile" type:"string" enum:"Mpeg2CodecProfile"` 11019 11020 // Choose Adaptive to improve subjective video quality for high-motion content. 11021 // This will cause the service to use fewer B-frames (which infer information 11022 // based on other frames) for high-motion portions of the video and more B-frames 11023 // for low-motion portions. The maximum number of B-frames is limited by the 11024 // value you provide for the setting B frames between reference frames (numberBFramesBetweenReferenceFrames). 11025 DynamicSubGop *string `locationName:"dynamicSubGop" type:"string" enum:"Mpeg2DynamicSubGop"` 11026 11027 // If you are using the console, use the Framerate setting to specify the framerate 11028 // for this output. If you want to keep the same framerate as the input video, 11029 // choose Follow source. If you want to do framerate conversion, choose a framerate 11030 // from the dropdown list or choose Custom. The framerates shown in the dropdown 11031 // list are decimal approximations of fractions. If you choose Custom, specify 11032 // your framerate as a fraction. If you are creating your transcoding job sepecification 11033 // as a JSON file without the console, use FramerateControl to specify which 11034 // value the service uses for the framerate for this output. Choose INITIALIZE_FROM_SOURCE 11035 // if you want the service to use the framerate from the input. Choose SPECIFIED 11036 // if you want the service to use the framerate you specify in the settings 11037 // FramerateNumerator and FramerateDenominator. 11038 FramerateControl *string `locationName:"framerateControl" type:"string" enum:"Mpeg2FramerateControl"` 11039 11040 // When set to INTERPOLATE, produces smoother motion during framerate conversion. 11041 FramerateConversionAlgorithm *string `locationName:"framerateConversionAlgorithm" type:"string" enum:"Mpeg2FramerateConversionAlgorithm"` 11042 11043 // Framerate denominator. 11044 FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"` 11045 11046 // Framerate numerator - framerate is a fraction, e.g. 24000 / 1001 = 23.976 11047 // fps. 11048 FramerateNumerator *int64 `locationName:"framerateNumerator" min:"24" type:"integer"` 11049 11050 // Frequency of closed GOPs. In streaming applications, it is recommended that 11051 // this be set to 1 so a decoder joining mid-stream will receive an IDR frame 11052 // as quickly as possible. Setting this value to 0 will break output segmenting. 11053 GopClosedCadence *int64 `locationName:"gopClosedCadence" type:"integer"` 11054 11055 // GOP Length (keyframe interval) in frames or seconds. Must be greater than 11056 // zero. 11057 GopSize *float64 `locationName:"gopSize" type:"double"` 11058 11059 // Indicates if the GOP Size in MPEG2 is specified in frames or seconds. If 11060 // seconds the system will convert the GOP Size into a frame count at run time. 11061 GopSizeUnits *string `locationName:"gopSizeUnits" type:"string" enum:"Mpeg2GopSizeUnits"` 11062 11063 // Percentage of the buffer that should initially be filled (HRD buffer model). 11064 HrdBufferInitialFillPercentage *int64 `locationName:"hrdBufferInitialFillPercentage" type:"integer"` 11065 11066 // Size of buffer (HRD buffer model) in bits. For example, enter five megabits 11067 // as 5000000. 11068 HrdBufferSize *int64 `locationName:"hrdBufferSize" type:"integer"` 11069 11070 // Use Interlace mode (InterlaceMode) to choose the scan line type for the output. 11071 // * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce 11072 // interlaced output with the entire output having the same field polarity (top 11073 // or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default 11074 // Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, 11075 // behavior depends on the input scan type. - If the source is interlaced, the 11076 // output will be interlaced with the same polarity as the source (it will follow 11077 // the source). The output could therefore be a mix of "top field first" and 11078 // "bottom field first". - If the source is progressive, the output will be 11079 // interlaced with "top field first" or "bottom field first" polarity, depending 11080 // on which of the Follow options you chose. 11081 InterlaceMode *string `locationName:"interlaceMode" type:"string" enum:"Mpeg2InterlaceMode"` 11082 11083 // Use Intra DC precision (Mpeg2IntraDcPrecision) to set quantization precision 11084 // for intra-block DC coefficients. If you choose the value auto, the service 11085 // will automatically select the precision based on the per-frame compression 11086 // ratio. 11087 IntraDcPrecision *string `locationName:"intraDcPrecision" type:"string" enum:"Mpeg2IntraDcPrecision"` 11088 11089 // Maximum bitrate in bits/second. For example, enter five megabits per second 11090 // as 5000000. 11091 MaxBitrate *int64 `locationName:"maxBitrate" min:"1000" type:"integer"` 11092 11093 // Enforces separation between repeated (cadence) I-frames and I-frames inserted 11094 // by Scene Change Detection. If a scene change I-frame is within I-interval 11095 // frames of a cadence I-frame, the GOP is shrunk and/or stretched to the scene 11096 // change I-frame. GOP stretch requires enabling lookahead as well as setting 11097 // I-interval. The normal cadence resumes for the next GOP. This setting is 11098 // only used when Scene Change Detect is enabled. Note: Maximum GOP stretch 11099 // = GOP size + Min-I-interval - 1 11100 MinIInterval *int64 `locationName:"minIInterval" type:"integer"` 11101 11102 // Number of B-frames between reference frames. 11103 NumberBFramesBetweenReferenceFrames *int64 `locationName:"numberBFramesBetweenReferenceFrames" type:"integer"` 11104 11105 // Using the API, enable ParFollowSource if you want the service to use the 11106 // pixel aspect ratio from the input. Using the console, do this by choosing 11107 // Follow source for Pixel aspect ratio. 11108 ParControl *string `locationName:"parControl" type:"string" enum:"Mpeg2ParControl"` 11109 11110 // Pixel Aspect Ratio denominator. 11111 ParDenominator *int64 `locationName:"parDenominator" min:"1" type:"integer"` 11112 11113 // Pixel Aspect Ratio numerator. 11114 ParNumerator *int64 `locationName:"parNumerator" min:"1" type:"integer"` 11115 11116 // Use Quality tuning level (Mpeg2QualityTuningLevel) to specifiy whether to 11117 // use single-pass or multipass video encoding. 11118 QualityTuningLevel *string `locationName:"qualityTuningLevel" type:"string" enum:"Mpeg2QualityTuningLevel"` 11119 11120 // Use Rate control mode (Mpeg2RateControlMode) to specifiy whether the bitrate 11121 // is variable (vbr) or constant (cbr). 11122 RateControlMode *string `locationName:"rateControlMode" type:"string" enum:"Mpeg2RateControlMode"` 11123 11124 // Scene change detection (inserts I-frames on scene changes). 11125 SceneChangeDetect *string `locationName:"sceneChangeDetect" type:"string" enum:"Mpeg2SceneChangeDetect"` 11126 11127 // Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled 11128 // as 25fps, and audio is sped up correspondingly. 11129 SlowPal *string `locationName:"slowPal" type:"string" enum:"Mpeg2SlowPal"` 11130 11131 // Softness. Selects quantizer matrix, larger values reduce high-frequency content 11132 // in the encoded image. 11133 Softness *int64 `locationName:"softness" type:"integer"` 11134 11135 // Adjust quantization within each frame based on spatial variation of content 11136 // complexity. 11137 SpatialAdaptiveQuantization *string `locationName:"spatialAdaptiveQuantization" type:"string" enum:"Mpeg2SpatialAdaptiveQuantization"` 11138 11139 // Produces a Type D-10 compatible bitstream (SMPTE 356M-2001). 11140 Syntax *string `locationName:"syntax" type:"string" enum:"Mpeg2Syntax"` 11141 11142 // Only use Telecine (Mpeg2Telecine) when you set Framerate (Framerate) to 29.970. 11143 // Set Telecine (Mpeg2Telecine) to Hard (hard) to produce a 29.97i output from 11144 // a 23.976 input. Set it to Soft (soft) to produce 23.976 output and leave 11145 // converstion to the player. 11146 Telecine *string `locationName:"telecine" type:"string" enum:"Mpeg2Telecine"` 11147 11148 // Adjust quantization within each frame based on temporal variation of content 11149 // complexity. 11150 TemporalAdaptiveQuantization *string `locationName:"temporalAdaptiveQuantization" type:"string" enum:"Mpeg2TemporalAdaptiveQuantization"` 11151} 11152 11153// String returns the string representation 11154func (s Mpeg2Settings) String() string { 11155 return awsutil.Prettify(s) 11156} 11157 11158// GoString returns the string representation 11159func (s Mpeg2Settings) GoString() string { 11160 return s.String() 11161} 11162 11163// Validate inspects the fields of the type to determine if they are valid. 11164func (s *Mpeg2Settings) Validate() error { 11165 invalidParams := request.ErrInvalidParams{Context: "Mpeg2Settings"} 11166 if s.Bitrate != nil && *s.Bitrate < 1000 { 11167 invalidParams.Add(request.NewErrParamMinValue("Bitrate", 1000)) 11168 } 11169 if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 { 11170 invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1)) 11171 } 11172 if s.FramerateNumerator != nil && *s.FramerateNumerator < 24 { 11173 invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 24)) 11174 } 11175 if s.MaxBitrate != nil && *s.MaxBitrate < 1000 { 11176 invalidParams.Add(request.NewErrParamMinValue("MaxBitrate", 1000)) 11177 } 11178 if s.ParDenominator != nil && *s.ParDenominator < 1 { 11179 invalidParams.Add(request.NewErrParamMinValue("ParDenominator", 1)) 11180 } 11181 if s.ParNumerator != nil && *s.ParNumerator < 1 { 11182 invalidParams.Add(request.NewErrParamMinValue("ParNumerator", 1)) 11183 } 11184 11185 if invalidParams.Len() > 0 { 11186 return invalidParams 11187 } 11188 return nil 11189} 11190 11191// SetAdaptiveQuantization sets the AdaptiveQuantization field's value. 11192func (s *Mpeg2Settings) SetAdaptiveQuantization(v string) *Mpeg2Settings { 11193 s.AdaptiveQuantization = &v 11194 return s 11195} 11196 11197// SetBitrate sets the Bitrate field's value. 11198func (s *Mpeg2Settings) SetBitrate(v int64) *Mpeg2Settings { 11199 s.Bitrate = &v 11200 return s 11201} 11202 11203// SetCodecLevel sets the CodecLevel field's value. 11204func (s *Mpeg2Settings) SetCodecLevel(v string) *Mpeg2Settings { 11205 s.CodecLevel = &v 11206 return s 11207} 11208 11209// SetCodecProfile sets the CodecProfile field's value. 11210func (s *Mpeg2Settings) SetCodecProfile(v string) *Mpeg2Settings { 11211 s.CodecProfile = &v 11212 return s 11213} 11214 11215// SetDynamicSubGop sets the DynamicSubGop field's value. 11216func (s *Mpeg2Settings) SetDynamicSubGop(v string) *Mpeg2Settings { 11217 s.DynamicSubGop = &v 11218 return s 11219} 11220 11221// SetFramerateControl sets the FramerateControl field's value. 11222func (s *Mpeg2Settings) SetFramerateControl(v string) *Mpeg2Settings { 11223 s.FramerateControl = &v 11224 return s 11225} 11226 11227// SetFramerateConversionAlgorithm sets the FramerateConversionAlgorithm field's value. 11228func (s *Mpeg2Settings) SetFramerateConversionAlgorithm(v string) *Mpeg2Settings { 11229 s.FramerateConversionAlgorithm = &v 11230 return s 11231} 11232 11233// SetFramerateDenominator sets the FramerateDenominator field's value. 11234func (s *Mpeg2Settings) SetFramerateDenominator(v int64) *Mpeg2Settings { 11235 s.FramerateDenominator = &v 11236 return s 11237} 11238 11239// SetFramerateNumerator sets the FramerateNumerator field's value. 11240func (s *Mpeg2Settings) SetFramerateNumerator(v int64) *Mpeg2Settings { 11241 s.FramerateNumerator = &v 11242 return s 11243} 11244 11245// SetGopClosedCadence sets the GopClosedCadence field's value. 11246func (s *Mpeg2Settings) SetGopClosedCadence(v int64) *Mpeg2Settings { 11247 s.GopClosedCadence = &v 11248 return s 11249} 11250 11251// SetGopSize sets the GopSize field's value. 11252func (s *Mpeg2Settings) SetGopSize(v float64) *Mpeg2Settings { 11253 s.GopSize = &v 11254 return s 11255} 11256 11257// SetGopSizeUnits sets the GopSizeUnits field's value. 11258func (s *Mpeg2Settings) SetGopSizeUnits(v string) *Mpeg2Settings { 11259 s.GopSizeUnits = &v 11260 return s 11261} 11262 11263// SetHrdBufferInitialFillPercentage sets the HrdBufferInitialFillPercentage field's value. 11264func (s *Mpeg2Settings) SetHrdBufferInitialFillPercentage(v int64) *Mpeg2Settings { 11265 s.HrdBufferInitialFillPercentage = &v 11266 return s 11267} 11268 11269// SetHrdBufferSize sets the HrdBufferSize field's value. 11270func (s *Mpeg2Settings) SetHrdBufferSize(v int64) *Mpeg2Settings { 11271 s.HrdBufferSize = &v 11272 return s 11273} 11274 11275// SetInterlaceMode sets the InterlaceMode field's value. 11276func (s *Mpeg2Settings) SetInterlaceMode(v string) *Mpeg2Settings { 11277 s.InterlaceMode = &v 11278 return s 11279} 11280 11281// SetIntraDcPrecision sets the IntraDcPrecision field's value. 11282func (s *Mpeg2Settings) SetIntraDcPrecision(v string) *Mpeg2Settings { 11283 s.IntraDcPrecision = &v 11284 return s 11285} 11286 11287// SetMaxBitrate sets the MaxBitrate field's value. 11288func (s *Mpeg2Settings) SetMaxBitrate(v int64) *Mpeg2Settings { 11289 s.MaxBitrate = &v 11290 return s 11291} 11292 11293// SetMinIInterval sets the MinIInterval field's value. 11294func (s *Mpeg2Settings) SetMinIInterval(v int64) *Mpeg2Settings { 11295 s.MinIInterval = &v 11296 return s 11297} 11298 11299// SetNumberBFramesBetweenReferenceFrames sets the NumberBFramesBetweenReferenceFrames field's value. 11300func (s *Mpeg2Settings) SetNumberBFramesBetweenReferenceFrames(v int64) *Mpeg2Settings { 11301 s.NumberBFramesBetweenReferenceFrames = &v 11302 return s 11303} 11304 11305// SetParControl sets the ParControl field's value. 11306func (s *Mpeg2Settings) SetParControl(v string) *Mpeg2Settings { 11307 s.ParControl = &v 11308 return s 11309} 11310 11311// SetParDenominator sets the ParDenominator field's value. 11312func (s *Mpeg2Settings) SetParDenominator(v int64) *Mpeg2Settings { 11313 s.ParDenominator = &v 11314 return s 11315} 11316 11317// SetParNumerator sets the ParNumerator field's value. 11318func (s *Mpeg2Settings) SetParNumerator(v int64) *Mpeg2Settings { 11319 s.ParNumerator = &v 11320 return s 11321} 11322 11323// SetQualityTuningLevel sets the QualityTuningLevel field's value. 11324func (s *Mpeg2Settings) SetQualityTuningLevel(v string) *Mpeg2Settings { 11325 s.QualityTuningLevel = &v 11326 return s 11327} 11328 11329// SetRateControlMode sets the RateControlMode field's value. 11330func (s *Mpeg2Settings) SetRateControlMode(v string) *Mpeg2Settings { 11331 s.RateControlMode = &v 11332 return s 11333} 11334 11335// SetSceneChangeDetect sets the SceneChangeDetect field's value. 11336func (s *Mpeg2Settings) SetSceneChangeDetect(v string) *Mpeg2Settings { 11337 s.SceneChangeDetect = &v 11338 return s 11339} 11340 11341// SetSlowPal sets the SlowPal field's value. 11342func (s *Mpeg2Settings) SetSlowPal(v string) *Mpeg2Settings { 11343 s.SlowPal = &v 11344 return s 11345} 11346 11347// SetSoftness sets the Softness field's value. 11348func (s *Mpeg2Settings) SetSoftness(v int64) *Mpeg2Settings { 11349 s.Softness = &v 11350 return s 11351} 11352 11353// SetSpatialAdaptiveQuantization sets the SpatialAdaptiveQuantization field's value. 11354func (s *Mpeg2Settings) SetSpatialAdaptiveQuantization(v string) *Mpeg2Settings { 11355 s.SpatialAdaptiveQuantization = &v 11356 return s 11357} 11358 11359// SetSyntax sets the Syntax field's value. 11360func (s *Mpeg2Settings) SetSyntax(v string) *Mpeg2Settings { 11361 s.Syntax = &v 11362 return s 11363} 11364 11365// SetTelecine sets the Telecine field's value. 11366func (s *Mpeg2Settings) SetTelecine(v string) *Mpeg2Settings { 11367 s.Telecine = &v 11368 return s 11369} 11370 11371// SetTemporalAdaptiveQuantization sets the TemporalAdaptiveQuantization field's value. 11372func (s *Mpeg2Settings) SetTemporalAdaptiveQuantization(v string) *Mpeg2Settings { 11373 s.TemporalAdaptiveQuantization = &v 11374 return s 11375} 11376 11377// If you are using DRM, set DRM System (MsSmoothEncryptionSettings) to specify 11378// the value SpekeKeyProvider. 11379type MsSmoothEncryptionSettings struct { 11380 _ struct{} `type:"structure"` 11381 11382 // Settings for use with a SPEKE key provider 11383 // 11384 // SpekeKeyProvider is a required field 11385 SpekeKeyProvider *SpekeKeyProvider `locationName:"spekeKeyProvider" type:"structure" required:"true"` 11386} 11387 11388// String returns the string representation 11389func (s MsSmoothEncryptionSettings) String() string { 11390 return awsutil.Prettify(s) 11391} 11392 11393// GoString returns the string representation 11394func (s MsSmoothEncryptionSettings) GoString() string { 11395 return s.String() 11396} 11397 11398// Validate inspects the fields of the type to determine if they are valid. 11399func (s *MsSmoothEncryptionSettings) Validate() error { 11400 invalidParams := request.ErrInvalidParams{Context: "MsSmoothEncryptionSettings"} 11401 if s.SpekeKeyProvider == nil { 11402 invalidParams.Add(request.NewErrParamRequired("SpekeKeyProvider")) 11403 } 11404 if s.SpekeKeyProvider != nil { 11405 if err := s.SpekeKeyProvider.Validate(); err != nil { 11406 invalidParams.AddNested("SpekeKeyProvider", err.(request.ErrInvalidParams)) 11407 } 11408 } 11409 11410 if invalidParams.Len() > 0 { 11411 return invalidParams 11412 } 11413 return nil 11414} 11415 11416// SetSpekeKeyProvider sets the SpekeKeyProvider field's value. 11417func (s *MsSmoothEncryptionSettings) SetSpekeKeyProvider(v *SpekeKeyProvider) *MsSmoothEncryptionSettings { 11418 s.SpekeKeyProvider = v 11419 return s 11420} 11421 11422// Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to 11423// MS_SMOOTH_GROUP_SETTINGS. 11424type MsSmoothGroupSettings struct { 11425 _ struct{} `type:"structure"` 11426 11427 // COMBINE_DUPLICATE_STREAMS combines identical audio encoding settings across 11428 // a Microsoft Smooth output group into a single audio stream. 11429 AudioDeduplication *string `locationName:"audioDeduplication" type:"string" enum:"MsSmoothAudioDeduplication"` 11430 11431 // Use Destination (Destination) to specify the S3 output location and the output 11432 // filename base. Destination accepts format identifiers. If you do not specify 11433 // the base filename in the URI, the service will use the filename of the input 11434 // file. If your job has multiple inputs, the service uses the filename of the 11435 // first input file. 11436 Destination *string `locationName:"destination" type:"string"` 11437 11438 // If you are using DRM, set DRM System (MsSmoothEncryptionSettings) to specify 11439 // the value SpekeKeyProvider. 11440 Encryption *MsSmoothEncryptionSettings `locationName:"encryption" type:"structure"` 11441 11442 // Use Fragment length (FragmentLength) to specify the mp4 fragment sizes in 11443 // seconds. Fragment length must be compatible with GOP size and framerate. 11444 // 11445 // FragmentLength is a required field 11446 FragmentLength *int64 `locationName:"fragmentLength" min:"1" type:"integer" required:"true"` 11447 11448 // Use Manifest encoding (MsSmoothManifestEncoding) to specify the encoding 11449 // format for the server and client manifest. Valid options are utf8 and utf16. 11450 ManifestEncoding *string `locationName:"manifestEncoding" type:"string" enum:"MsSmoothManifestEncoding"` 11451} 11452 11453// String returns the string representation 11454func (s MsSmoothGroupSettings) String() string { 11455 return awsutil.Prettify(s) 11456} 11457 11458// GoString returns the string representation 11459func (s MsSmoothGroupSettings) GoString() string { 11460 return s.String() 11461} 11462 11463// Validate inspects the fields of the type to determine if they are valid. 11464func (s *MsSmoothGroupSettings) Validate() error { 11465 invalidParams := request.ErrInvalidParams{Context: "MsSmoothGroupSettings"} 11466 if s.FragmentLength == nil { 11467 invalidParams.Add(request.NewErrParamRequired("FragmentLength")) 11468 } 11469 if s.FragmentLength != nil && *s.FragmentLength < 1 { 11470 invalidParams.Add(request.NewErrParamMinValue("FragmentLength", 1)) 11471 } 11472 if s.Encryption != nil { 11473 if err := s.Encryption.Validate(); err != nil { 11474 invalidParams.AddNested("Encryption", err.(request.ErrInvalidParams)) 11475 } 11476 } 11477 11478 if invalidParams.Len() > 0 { 11479 return invalidParams 11480 } 11481 return nil 11482} 11483 11484// SetAudioDeduplication sets the AudioDeduplication field's value. 11485func (s *MsSmoothGroupSettings) SetAudioDeduplication(v string) *MsSmoothGroupSettings { 11486 s.AudioDeduplication = &v 11487 return s 11488} 11489 11490// SetDestination sets the Destination field's value. 11491func (s *MsSmoothGroupSettings) SetDestination(v string) *MsSmoothGroupSettings { 11492 s.Destination = &v 11493 return s 11494} 11495 11496// SetEncryption sets the Encryption field's value. 11497func (s *MsSmoothGroupSettings) SetEncryption(v *MsSmoothEncryptionSettings) *MsSmoothGroupSettings { 11498 s.Encryption = v 11499 return s 11500} 11501 11502// SetFragmentLength sets the FragmentLength field's value. 11503func (s *MsSmoothGroupSettings) SetFragmentLength(v int64) *MsSmoothGroupSettings { 11504 s.FragmentLength = &v 11505 return s 11506} 11507 11508// SetManifestEncoding sets the ManifestEncoding field's value. 11509func (s *MsSmoothGroupSettings) SetManifestEncoding(v string) *MsSmoothGroupSettings { 11510 s.ManifestEncoding = &v 11511 return s 11512} 11513 11514// Settings for Nielsen Configuration 11515type NielsenConfiguration struct { 11516 _ struct{} `type:"structure"` 11517 11518 // Use Nielsen Configuration (NielsenConfiguration) to set the Nielsen measurement 11519 // system breakout code. Supported values are 0, 3, 7, and 9. 11520 BreakoutCode *int64 `locationName:"breakoutCode" type:"integer"` 11521 11522 // Use Distributor ID (DistributorID) to specify the distributor ID that is 11523 // assigned to your organization by Neilsen. 11524 DistributorId *string `locationName:"distributorId" type:"string"` 11525} 11526 11527// String returns the string representation 11528func (s NielsenConfiguration) String() string { 11529 return awsutil.Prettify(s) 11530} 11531 11532// GoString returns the string representation 11533func (s NielsenConfiguration) GoString() string { 11534 return s.String() 11535} 11536 11537// SetBreakoutCode sets the BreakoutCode field's value. 11538func (s *NielsenConfiguration) SetBreakoutCode(v int64) *NielsenConfiguration { 11539 s.BreakoutCode = &v 11540 return s 11541} 11542 11543// SetDistributorId sets the DistributorId field's value. 11544func (s *NielsenConfiguration) SetDistributorId(v string) *NielsenConfiguration { 11545 s.DistributorId = &v 11546 return s 11547} 11548 11549// Enable the Noise reducer (NoiseReducer) feature to remove noise from your 11550// video output if necessary. Enable or disable this feature for each output 11551// individually. This setting is disabled by default. When you enable Noise 11552// reducer (NoiseReducer), you must also select a value for Noise reducer filter 11553// (NoiseReducerFilter). 11554type NoiseReducer struct { 11555 _ struct{} `type:"structure"` 11556 11557 // Use Noise reducer filter (NoiseReducerFilter) to select one of the following 11558 // spatial image filtering functions. To use this setting, you must also enable 11559 // Noise reducer (NoiseReducer). * Bilateral is an edge preserving noise reduction 11560 // filter. * Mean (softest), Gaussian, Lanczos, and Sharpen (sharpest) are convolution 11561 // filters. * Conserve is a min/max noise reduction filter. * Spatial is a frequency-domain 11562 // filter based on JND principles. 11563 // 11564 // Filter is a required field 11565 Filter *string `locationName:"filter" type:"string" required:"true" enum:"NoiseReducerFilter"` 11566 11567 // Settings for a noise reducer filter 11568 FilterSettings *NoiseReducerFilterSettings `locationName:"filterSettings" type:"structure"` 11569 11570 // Noise reducer filter settings for spatial filter. 11571 SpatialFilterSettings *NoiseReducerSpatialFilterSettings `locationName:"spatialFilterSettings" type:"structure"` 11572} 11573 11574// String returns the string representation 11575func (s NoiseReducer) String() string { 11576 return awsutil.Prettify(s) 11577} 11578 11579// GoString returns the string representation 11580func (s NoiseReducer) GoString() string { 11581 return s.String() 11582} 11583 11584// Validate inspects the fields of the type to determine if they are valid. 11585func (s *NoiseReducer) Validate() error { 11586 invalidParams := request.ErrInvalidParams{Context: "NoiseReducer"} 11587 if s.Filter == nil { 11588 invalidParams.Add(request.NewErrParamRequired("Filter")) 11589 } 11590 if s.SpatialFilterSettings != nil { 11591 if err := s.SpatialFilterSettings.Validate(); err != nil { 11592 invalidParams.AddNested("SpatialFilterSettings", err.(request.ErrInvalidParams)) 11593 } 11594 } 11595 11596 if invalidParams.Len() > 0 { 11597 return invalidParams 11598 } 11599 return nil 11600} 11601 11602// SetFilter sets the Filter field's value. 11603func (s *NoiseReducer) SetFilter(v string) *NoiseReducer { 11604 s.Filter = &v 11605 return s 11606} 11607 11608// SetFilterSettings sets the FilterSettings field's value. 11609func (s *NoiseReducer) SetFilterSettings(v *NoiseReducerFilterSettings) *NoiseReducer { 11610 s.FilterSettings = v 11611 return s 11612} 11613 11614// SetSpatialFilterSettings sets the SpatialFilterSettings field's value. 11615func (s *NoiseReducer) SetSpatialFilterSettings(v *NoiseReducerSpatialFilterSettings) *NoiseReducer { 11616 s.SpatialFilterSettings = v 11617 return s 11618} 11619 11620// Settings for a noise reducer filter 11621type NoiseReducerFilterSettings struct { 11622 _ struct{} `type:"structure"` 11623 11624 // Relative strength of noise reducing filter. Higher values produce stronger 11625 // filtering. 11626 Strength *int64 `locationName:"strength" type:"integer"` 11627} 11628 11629// String returns the string representation 11630func (s NoiseReducerFilterSettings) String() string { 11631 return awsutil.Prettify(s) 11632} 11633 11634// GoString returns the string representation 11635func (s NoiseReducerFilterSettings) GoString() string { 11636 return s.String() 11637} 11638 11639// SetStrength sets the Strength field's value. 11640func (s *NoiseReducerFilterSettings) SetStrength(v int64) *NoiseReducerFilterSettings { 11641 s.Strength = &v 11642 return s 11643} 11644 11645// Noise reducer filter settings for spatial filter. 11646type NoiseReducerSpatialFilterSettings struct { 11647 _ struct{} `type:"structure"` 11648 11649 // Specify strength of post noise reduction sharpening filter, with 0 disabling 11650 // the filter and 3 enabling it at maximum strength. 11651 PostFilterSharpenStrength *int64 `locationName:"postFilterSharpenStrength" type:"integer"` 11652 11653 // The speed of the filter, from -2 (lower speed) to 3 (higher speed), with 11654 // 0 being the nominal value. 11655 Speed *int64 `locationName:"speed" type:"integer"` 11656 11657 // Relative strength of noise reducing filter. Higher values produce stronger 11658 // filtering. 11659 Strength *int64 `locationName:"strength" type:"integer"` 11660} 11661 11662// String returns the string representation 11663func (s NoiseReducerSpatialFilterSettings) String() string { 11664 return awsutil.Prettify(s) 11665} 11666 11667// GoString returns the string representation 11668func (s NoiseReducerSpatialFilterSettings) GoString() string { 11669 return s.String() 11670} 11671 11672// Validate inspects the fields of the type to determine if they are valid. 11673func (s *NoiseReducerSpatialFilterSettings) Validate() error { 11674 invalidParams := request.ErrInvalidParams{Context: "NoiseReducerSpatialFilterSettings"} 11675 if s.Speed != nil && *s.Speed < -2 { 11676 invalidParams.Add(request.NewErrParamMinValue("Speed", -2)) 11677 } 11678 11679 if invalidParams.Len() > 0 { 11680 return invalidParams 11681 } 11682 return nil 11683} 11684 11685// SetPostFilterSharpenStrength sets the PostFilterSharpenStrength field's value. 11686func (s *NoiseReducerSpatialFilterSettings) SetPostFilterSharpenStrength(v int64) *NoiseReducerSpatialFilterSettings { 11687 s.PostFilterSharpenStrength = &v 11688 return s 11689} 11690 11691// SetSpeed sets the Speed field's value. 11692func (s *NoiseReducerSpatialFilterSettings) SetSpeed(v int64) *NoiseReducerSpatialFilterSettings { 11693 s.Speed = &v 11694 return s 11695} 11696 11697// SetStrength sets the Strength field's value. 11698func (s *NoiseReducerSpatialFilterSettings) SetStrength(v int64) *NoiseReducerSpatialFilterSettings { 11699 s.Strength = &v 11700 return s 11701} 11702 11703// An output object describes the settings for a single output file or stream 11704// in an output group. 11705type Output struct { 11706 _ struct{} `type:"structure"` 11707 11708 // (AudioDescriptions) contains groups of audio encoding settings organized 11709 // by audio codec. Include one instance of (AudioDescriptions) per output. (AudioDescriptions) 11710 // can contain multiple groups of encoding settings. 11711 AudioDescriptions []*AudioDescription `locationName:"audioDescriptions" type:"list"` 11712 11713 // (CaptionDescriptions) contains groups of captions settings. For each output 11714 // that has captions, include one instance of (CaptionDescriptions). (CaptionDescriptions) 11715 // can contain multiple groups of captions settings. 11716 CaptionDescriptions []*CaptionDescription `locationName:"captionDescriptions" type:"list"` 11717 11718 // Container specific settings. 11719 ContainerSettings *ContainerSettings `locationName:"containerSettings" type:"structure"` 11720 11721 // Use Extension (Extension) to specify the file extension for outputs in File 11722 // output groups. If you do not specify a value, the service will use default 11723 // extensions by container type as follows * MPEG-2 transport stream, m2ts * 11724 // Quicktime, mov * MXF container, mxf * MPEG-4 container, mp4 * No Container, 11725 // the service will use codec extensions (e.g. AAC, H265, H265, AC3) 11726 Extension *string `locationName:"extension" type:"string"` 11727 11728 // Use Name modifier (NameModifier) to have the service add a string to the 11729 // end of each output filename. You specify the base filename as part of your 11730 // destination URI. When you create multiple outputs in the same output group, 11731 // Name modifier (NameModifier) is required. Name modifier also accepts format 11732 // identifiers. For DASH ISO outputs, if you use the format identifiers $Number$ 11733 // or $Time$ in one output, you must use them in the same way in all outputs 11734 // of the output group. 11735 NameModifier *string `locationName:"nameModifier" min:"1" type:"string"` 11736 11737 // Specific settings for this type of output. 11738 OutputSettings *OutputSettings `locationName:"outputSettings" type:"structure"` 11739 11740 // Use Preset (Preset) to specifiy a preset for your transcoding settings. Provide 11741 // the system or custom preset name. You can specify either Preset (Preset) 11742 // or Container settings (ContainerSettings), but not both. 11743 Preset *string `locationName:"preset" type:"string"` 11744 11745 // (VideoDescription) contains a group of video encoding settings. The specific 11746 // video settings depend on the video codec you choose when you specify a value 11747 // for Video codec (codec). Include one instance of (VideoDescription) per output. 11748 VideoDescription *VideoDescription `locationName:"videoDescription" type:"structure"` 11749} 11750 11751// String returns the string representation 11752func (s Output) String() string { 11753 return awsutil.Prettify(s) 11754} 11755 11756// GoString returns the string representation 11757func (s Output) GoString() string { 11758 return s.String() 11759} 11760 11761// Validate inspects the fields of the type to determine if they are valid. 11762func (s *Output) Validate() error { 11763 invalidParams := request.ErrInvalidParams{Context: "Output"} 11764 if s.NameModifier != nil && len(*s.NameModifier) < 1 { 11765 invalidParams.Add(request.NewErrParamMinLen("NameModifier", 1)) 11766 } 11767 if s.AudioDescriptions != nil { 11768 for i, v := range s.AudioDescriptions { 11769 if v == nil { 11770 continue 11771 } 11772 if err := v.Validate(); err != nil { 11773 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AudioDescriptions", i), err.(request.ErrInvalidParams)) 11774 } 11775 } 11776 } 11777 if s.CaptionDescriptions != nil { 11778 for i, v := range s.CaptionDescriptions { 11779 if v == nil { 11780 continue 11781 } 11782 if err := v.Validate(); err != nil { 11783 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionDescriptions", i), err.(request.ErrInvalidParams)) 11784 } 11785 } 11786 } 11787 if s.ContainerSettings != nil { 11788 if err := s.ContainerSettings.Validate(); err != nil { 11789 invalidParams.AddNested("ContainerSettings", err.(request.ErrInvalidParams)) 11790 } 11791 } 11792 if s.VideoDescription != nil { 11793 if err := s.VideoDescription.Validate(); err != nil { 11794 invalidParams.AddNested("VideoDescription", err.(request.ErrInvalidParams)) 11795 } 11796 } 11797 11798 if invalidParams.Len() > 0 { 11799 return invalidParams 11800 } 11801 return nil 11802} 11803 11804// SetAudioDescriptions sets the AudioDescriptions field's value. 11805func (s *Output) SetAudioDescriptions(v []*AudioDescription) *Output { 11806 s.AudioDescriptions = v 11807 return s 11808} 11809 11810// SetCaptionDescriptions sets the CaptionDescriptions field's value. 11811func (s *Output) SetCaptionDescriptions(v []*CaptionDescription) *Output { 11812 s.CaptionDescriptions = v 11813 return s 11814} 11815 11816// SetContainerSettings sets the ContainerSettings field's value. 11817func (s *Output) SetContainerSettings(v *ContainerSettings) *Output { 11818 s.ContainerSettings = v 11819 return s 11820} 11821 11822// SetExtension sets the Extension field's value. 11823func (s *Output) SetExtension(v string) *Output { 11824 s.Extension = &v 11825 return s 11826} 11827 11828// SetNameModifier sets the NameModifier field's value. 11829func (s *Output) SetNameModifier(v string) *Output { 11830 s.NameModifier = &v 11831 return s 11832} 11833 11834// SetOutputSettings sets the OutputSettings field's value. 11835func (s *Output) SetOutputSettings(v *OutputSettings) *Output { 11836 s.OutputSettings = v 11837 return s 11838} 11839 11840// SetPreset sets the Preset field's value. 11841func (s *Output) SetPreset(v string) *Output { 11842 s.Preset = &v 11843 return s 11844} 11845 11846// SetVideoDescription sets the VideoDescription field's value. 11847func (s *Output) SetVideoDescription(v *VideoDescription) *Output { 11848 s.VideoDescription = v 11849 return s 11850} 11851 11852// OutputChannel mapping settings. 11853type OutputChannelMapping struct { 11854 _ struct{} `type:"structure"` 11855 11856 // List of input channels 11857 // 11858 // InputChannels is a required field 11859 InputChannels []*int64 `locationName:"inputChannels" type:"list" required:"true"` 11860} 11861 11862// String returns the string representation 11863func (s OutputChannelMapping) String() string { 11864 return awsutil.Prettify(s) 11865} 11866 11867// GoString returns the string representation 11868func (s OutputChannelMapping) GoString() string { 11869 return s.String() 11870} 11871 11872// Validate inspects the fields of the type to determine if they are valid. 11873func (s *OutputChannelMapping) Validate() error { 11874 invalidParams := request.ErrInvalidParams{Context: "OutputChannelMapping"} 11875 if s.InputChannels == nil { 11876 invalidParams.Add(request.NewErrParamRequired("InputChannels")) 11877 } 11878 11879 if invalidParams.Len() > 0 { 11880 return invalidParams 11881 } 11882 return nil 11883} 11884 11885// SetInputChannels sets the InputChannels field's value. 11886func (s *OutputChannelMapping) SetInputChannels(v []*int64) *OutputChannelMapping { 11887 s.InputChannels = v 11888 return s 11889} 11890 11891// Details regarding output 11892type OutputDetail struct { 11893 _ struct{} `type:"structure"` 11894 11895 // Duration in milliseconds 11896 DurationInMs *int64 `locationName:"durationInMs" type:"integer"` 11897 11898 // Contains details about the output's video stream 11899 VideoDetails *VideoDetail `locationName:"videoDetails" type:"structure"` 11900} 11901 11902// String returns the string representation 11903func (s OutputDetail) String() string { 11904 return awsutil.Prettify(s) 11905} 11906 11907// GoString returns the string representation 11908func (s OutputDetail) GoString() string { 11909 return s.String() 11910} 11911 11912// SetDurationInMs sets the DurationInMs field's value. 11913func (s *OutputDetail) SetDurationInMs(v int64) *OutputDetail { 11914 s.DurationInMs = &v 11915 return s 11916} 11917 11918// SetVideoDetails sets the VideoDetails field's value. 11919func (s *OutputDetail) SetVideoDetails(v *VideoDetail) *OutputDetail { 11920 s.VideoDetails = v 11921 return s 11922} 11923 11924// Group of outputs 11925type OutputGroup struct { 11926 _ struct{} `type:"structure"` 11927 11928 // Use Custom Group Name (CustomName) to specify a name for the output group. 11929 // This value is displayed on the console and can make your job settings JSON 11930 // more human-readable. It does not affect your outputs. Use up to twelve characters 11931 // that are either letters, numbers, spaces, or underscores. 11932 CustomName *string `locationName:"customName" type:"string"` 11933 11934 // Name of the output group 11935 Name *string `locationName:"name" type:"string"` 11936 11937 // Output Group settings, including type 11938 // 11939 // OutputGroupSettings is a required field 11940 OutputGroupSettings *OutputGroupSettings `locationName:"outputGroupSettings" type:"structure" required:"true"` 11941 11942 // This object holds groups of encoding settings, one group of settings per 11943 // output. 11944 // 11945 // Outputs is a required field 11946 Outputs []*Output `locationName:"outputs" type:"list" required:"true"` 11947} 11948 11949// String returns the string representation 11950func (s OutputGroup) String() string { 11951 return awsutil.Prettify(s) 11952} 11953 11954// GoString returns the string representation 11955func (s OutputGroup) GoString() string { 11956 return s.String() 11957} 11958 11959// Validate inspects the fields of the type to determine if they are valid. 11960func (s *OutputGroup) Validate() error { 11961 invalidParams := request.ErrInvalidParams{Context: "OutputGroup"} 11962 if s.OutputGroupSettings == nil { 11963 invalidParams.Add(request.NewErrParamRequired("OutputGroupSettings")) 11964 } 11965 if s.Outputs == nil { 11966 invalidParams.Add(request.NewErrParamRequired("Outputs")) 11967 } 11968 if s.OutputGroupSettings != nil { 11969 if err := s.OutputGroupSettings.Validate(); err != nil { 11970 invalidParams.AddNested("OutputGroupSettings", err.(request.ErrInvalidParams)) 11971 } 11972 } 11973 if s.Outputs != nil { 11974 for i, v := range s.Outputs { 11975 if v == nil { 11976 continue 11977 } 11978 if err := v.Validate(); err != nil { 11979 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Outputs", i), err.(request.ErrInvalidParams)) 11980 } 11981 } 11982 } 11983 11984 if invalidParams.Len() > 0 { 11985 return invalidParams 11986 } 11987 return nil 11988} 11989 11990// SetCustomName sets the CustomName field's value. 11991func (s *OutputGroup) SetCustomName(v string) *OutputGroup { 11992 s.CustomName = &v 11993 return s 11994} 11995 11996// SetName sets the Name field's value. 11997func (s *OutputGroup) SetName(v string) *OutputGroup { 11998 s.Name = &v 11999 return s 12000} 12001 12002// SetOutputGroupSettings sets the OutputGroupSettings field's value. 12003func (s *OutputGroup) SetOutputGroupSettings(v *OutputGroupSettings) *OutputGroup { 12004 s.OutputGroupSettings = v 12005 return s 12006} 12007 12008// SetOutputs sets the Outputs field's value. 12009func (s *OutputGroup) SetOutputs(v []*Output) *OutputGroup { 12010 s.Outputs = v 12011 return s 12012} 12013 12014// Contains details about the output groups specified in the job settings. 12015type OutputGroupDetail struct { 12016 _ struct{} `type:"structure"` 12017 12018 // Details about the output 12019 OutputDetails []*OutputDetail `locationName:"outputDetails" type:"list"` 12020} 12021 12022// String returns the string representation 12023func (s OutputGroupDetail) String() string { 12024 return awsutil.Prettify(s) 12025} 12026 12027// GoString returns the string representation 12028func (s OutputGroupDetail) GoString() string { 12029 return s.String() 12030} 12031 12032// SetOutputDetails sets the OutputDetails field's value. 12033func (s *OutputGroupDetail) SetOutputDetails(v []*OutputDetail) *OutputGroupDetail { 12034 s.OutputDetails = v 12035 return s 12036} 12037 12038// Output Group settings, including type 12039type OutputGroupSettings struct { 12040 _ struct{} `type:"structure"` 12041 12042 // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to 12043 // CMAF_GROUP_SETTINGS. Each output in a CMAF Output Group may only contain 12044 // a single video, audio, or caption output. 12045 CmafGroupSettings *CmafGroupSettings `locationName:"cmafGroupSettings" type:"structure"` 12046 12047 // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to 12048 // DASH_ISO_GROUP_SETTINGS. 12049 DashIsoGroupSettings *DashIsoGroupSettings `locationName:"dashIsoGroupSettings" type:"structure"` 12050 12051 // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to 12052 // FILE_GROUP_SETTINGS. 12053 FileGroupSettings *FileGroupSettings `locationName:"fileGroupSettings" type:"structure"` 12054 12055 // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to 12056 // HLS_GROUP_SETTINGS. 12057 HlsGroupSettings *HlsGroupSettings `locationName:"hlsGroupSettings" type:"structure"` 12058 12059 // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to 12060 // MS_SMOOTH_GROUP_SETTINGS. 12061 MsSmoothGroupSettings *MsSmoothGroupSettings `locationName:"msSmoothGroupSettings" type:"structure"` 12062 12063 // Type of output group (File group, Apple HLS, DASH ISO, Microsoft Smooth Streaming, 12064 // CMAF) 12065 // 12066 // Type is a required field 12067 Type *string `locationName:"type" type:"string" required:"true" enum:"OutputGroupType"` 12068} 12069 12070// String returns the string representation 12071func (s OutputGroupSettings) String() string { 12072 return awsutil.Prettify(s) 12073} 12074 12075// GoString returns the string representation 12076func (s OutputGroupSettings) GoString() string { 12077 return s.String() 12078} 12079 12080// Validate inspects the fields of the type to determine if they are valid. 12081func (s *OutputGroupSettings) Validate() error { 12082 invalidParams := request.ErrInvalidParams{Context: "OutputGroupSettings"} 12083 if s.Type == nil { 12084 invalidParams.Add(request.NewErrParamRequired("Type")) 12085 } 12086 if s.CmafGroupSettings != nil { 12087 if err := s.CmafGroupSettings.Validate(); err != nil { 12088 invalidParams.AddNested("CmafGroupSettings", err.(request.ErrInvalidParams)) 12089 } 12090 } 12091 if s.DashIsoGroupSettings != nil { 12092 if err := s.DashIsoGroupSettings.Validate(); err != nil { 12093 invalidParams.AddNested("DashIsoGroupSettings", err.(request.ErrInvalidParams)) 12094 } 12095 } 12096 if s.HlsGroupSettings != nil { 12097 if err := s.HlsGroupSettings.Validate(); err != nil { 12098 invalidParams.AddNested("HlsGroupSettings", err.(request.ErrInvalidParams)) 12099 } 12100 } 12101 if s.MsSmoothGroupSettings != nil { 12102 if err := s.MsSmoothGroupSettings.Validate(); err != nil { 12103 invalidParams.AddNested("MsSmoothGroupSettings", err.(request.ErrInvalidParams)) 12104 } 12105 } 12106 12107 if invalidParams.Len() > 0 { 12108 return invalidParams 12109 } 12110 return nil 12111} 12112 12113// SetCmafGroupSettings sets the CmafGroupSettings field's value. 12114func (s *OutputGroupSettings) SetCmafGroupSettings(v *CmafGroupSettings) *OutputGroupSettings { 12115 s.CmafGroupSettings = v 12116 return s 12117} 12118 12119// SetDashIsoGroupSettings sets the DashIsoGroupSettings field's value. 12120func (s *OutputGroupSettings) SetDashIsoGroupSettings(v *DashIsoGroupSettings) *OutputGroupSettings { 12121 s.DashIsoGroupSettings = v 12122 return s 12123} 12124 12125// SetFileGroupSettings sets the FileGroupSettings field's value. 12126func (s *OutputGroupSettings) SetFileGroupSettings(v *FileGroupSettings) *OutputGroupSettings { 12127 s.FileGroupSettings = v 12128 return s 12129} 12130 12131// SetHlsGroupSettings sets the HlsGroupSettings field's value. 12132func (s *OutputGroupSettings) SetHlsGroupSettings(v *HlsGroupSettings) *OutputGroupSettings { 12133 s.HlsGroupSettings = v 12134 return s 12135} 12136 12137// SetMsSmoothGroupSettings sets the MsSmoothGroupSettings field's value. 12138func (s *OutputGroupSettings) SetMsSmoothGroupSettings(v *MsSmoothGroupSettings) *OutputGroupSettings { 12139 s.MsSmoothGroupSettings = v 12140 return s 12141} 12142 12143// SetType sets the Type field's value. 12144func (s *OutputGroupSettings) SetType(v string) *OutputGroupSettings { 12145 s.Type = &v 12146 return s 12147} 12148 12149// Specific settings for this type of output. 12150type OutputSettings struct { 12151 _ struct{} `type:"structure"` 12152 12153 // Settings for HLS output groups 12154 HlsSettings *HlsSettings `locationName:"hlsSettings" type:"structure"` 12155} 12156 12157// String returns the string representation 12158func (s OutputSettings) String() string { 12159 return awsutil.Prettify(s) 12160} 12161 12162// GoString returns the string representation 12163func (s OutputSettings) GoString() string { 12164 return s.String() 12165} 12166 12167// SetHlsSettings sets the HlsSettings field's value. 12168func (s *OutputSettings) SetHlsSettings(v *HlsSettings) *OutputSettings { 12169 s.HlsSettings = v 12170 return s 12171} 12172 12173// A preset is a collection of preconfigured media conversion settings that 12174// you want MediaConvert to apply to the output during the conversion process. 12175type Preset struct { 12176 _ struct{} `type:"structure"` 12177 12178 // An identifier for this resource that is unique within all of AWS. 12179 Arn *string `locationName:"arn" type:"string"` 12180 12181 // An optional category you create to organize your presets. 12182 Category *string `locationName:"category" type:"string"` 12183 12184 // The timestamp in epoch seconds for preset creation. 12185 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unixTimestamp"` 12186 12187 // An optional description you create for each preset. 12188 Description *string `locationName:"description" type:"string"` 12189 12190 // The timestamp in epoch seconds when the preset was last updated. 12191 LastUpdated *time.Time `locationName:"lastUpdated" type:"timestamp" timestampFormat:"unixTimestamp"` 12192 12193 // A name you create for each preset. Each name must be unique within your account. 12194 // 12195 // Name is a required field 12196 Name *string `locationName:"name" type:"string" required:"true"` 12197 12198 // Settings for preset 12199 // 12200 // Settings is a required field 12201 Settings *PresetSettings `locationName:"settings" type:"structure" required:"true"` 12202 12203 // A preset can be of two types: system or custom. System or built-in preset 12204 // can't be modified or deleted by the user. 12205 Type *string `locationName:"type" type:"string" enum:"Type"` 12206} 12207 12208// String returns the string representation 12209func (s Preset) String() string { 12210 return awsutil.Prettify(s) 12211} 12212 12213// GoString returns the string representation 12214func (s Preset) GoString() string { 12215 return s.String() 12216} 12217 12218// SetArn sets the Arn field's value. 12219func (s *Preset) SetArn(v string) *Preset { 12220 s.Arn = &v 12221 return s 12222} 12223 12224// SetCategory sets the Category field's value. 12225func (s *Preset) SetCategory(v string) *Preset { 12226 s.Category = &v 12227 return s 12228} 12229 12230// SetCreatedAt sets the CreatedAt field's value. 12231func (s *Preset) SetCreatedAt(v time.Time) *Preset { 12232 s.CreatedAt = &v 12233 return s 12234} 12235 12236// SetDescription sets the Description field's value. 12237func (s *Preset) SetDescription(v string) *Preset { 12238 s.Description = &v 12239 return s 12240} 12241 12242// SetLastUpdated sets the LastUpdated field's value. 12243func (s *Preset) SetLastUpdated(v time.Time) *Preset { 12244 s.LastUpdated = &v 12245 return s 12246} 12247 12248// SetName sets the Name field's value. 12249func (s *Preset) SetName(v string) *Preset { 12250 s.Name = &v 12251 return s 12252} 12253 12254// SetSettings sets the Settings field's value. 12255func (s *Preset) SetSettings(v *PresetSettings) *Preset { 12256 s.Settings = v 12257 return s 12258} 12259 12260// SetType sets the Type field's value. 12261func (s *Preset) SetType(v string) *Preset { 12262 s.Type = &v 12263 return s 12264} 12265 12266// Settings for preset 12267type PresetSettings struct { 12268 _ struct{} `type:"structure"` 12269 12270 // (AudioDescriptions) contains groups of audio encoding settings organized 12271 // by audio codec. Include one instance of (AudioDescriptions) per output. (AudioDescriptions) 12272 // can contain multiple groups of encoding settings. 12273 AudioDescriptions []*AudioDescription `locationName:"audioDescriptions" type:"list"` 12274 12275 // Caption settings for this preset. There can be multiple caption settings 12276 // in a single output. 12277 CaptionDescriptions []*CaptionDescriptionPreset `locationName:"captionDescriptions" type:"list"` 12278 12279 // Container specific settings. 12280 ContainerSettings *ContainerSettings `locationName:"containerSettings" type:"structure"` 12281 12282 // (VideoDescription) contains a group of video encoding settings. The specific 12283 // video settings depend on the video codec you choose when you specify a value 12284 // for Video codec (codec). Include one instance of (VideoDescription) per output. 12285 VideoDescription *VideoDescription `locationName:"videoDescription" type:"structure"` 12286} 12287 12288// String returns the string representation 12289func (s PresetSettings) String() string { 12290 return awsutil.Prettify(s) 12291} 12292 12293// GoString returns the string representation 12294func (s PresetSettings) GoString() string { 12295 return s.String() 12296} 12297 12298// Validate inspects the fields of the type to determine if they are valid. 12299func (s *PresetSettings) Validate() error { 12300 invalidParams := request.ErrInvalidParams{Context: "PresetSettings"} 12301 if s.AudioDescriptions != nil { 12302 for i, v := range s.AudioDescriptions { 12303 if v == nil { 12304 continue 12305 } 12306 if err := v.Validate(); err != nil { 12307 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AudioDescriptions", i), err.(request.ErrInvalidParams)) 12308 } 12309 } 12310 } 12311 if s.CaptionDescriptions != nil { 12312 for i, v := range s.CaptionDescriptions { 12313 if v == nil { 12314 continue 12315 } 12316 if err := v.Validate(); err != nil { 12317 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionDescriptions", i), err.(request.ErrInvalidParams)) 12318 } 12319 } 12320 } 12321 if s.ContainerSettings != nil { 12322 if err := s.ContainerSettings.Validate(); err != nil { 12323 invalidParams.AddNested("ContainerSettings", err.(request.ErrInvalidParams)) 12324 } 12325 } 12326 if s.VideoDescription != nil { 12327 if err := s.VideoDescription.Validate(); err != nil { 12328 invalidParams.AddNested("VideoDescription", err.(request.ErrInvalidParams)) 12329 } 12330 } 12331 12332 if invalidParams.Len() > 0 { 12333 return invalidParams 12334 } 12335 return nil 12336} 12337 12338// SetAudioDescriptions sets the AudioDescriptions field's value. 12339func (s *PresetSettings) SetAudioDescriptions(v []*AudioDescription) *PresetSettings { 12340 s.AudioDescriptions = v 12341 return s 12342} 12343 12344// SetCaptionDescriptions sets the CaptionDescriptions field's value. 12345func (s *PresetSettings) SetCaptionDescriptions(v []*CaptionDescriptionPreset) *PresetSettings { 12346 s.CaptionDescriptions = v 12347 return s 12348} 12349 12350// SetContainerSettings sets the ContainerSettings field's value. 12351func (s *PresetSettings) SetContainerSettings(v *ContainerSettings) *PresetSettings { 12352 s.ContainerSettings = v 12353 return s 12354} 12355 12356// SetVideoDescription sets the VideoDescription field's value. 12357func (s *PresetSettings) SetVideoDescription(v *VideoDescription) *PresetSettings { 12358 s.VideoDescription = v 12359 return s 12360} 12361 12362// Required when you set (Codec) under (VideoDescription)>(CodecSettings) to 12363// the value PRORES. 12364type ProresSettings struct { 12365 _ struct{} `type:"structure"` 12366 12367 // Use Profile (ProResCodecProfile) to specifiy the type of Apple ProRes codec 12368 // to use for this output. 12369 CodecProfile *string `locationName:"codecProfile" type:"string" enum:"ProresCodecProfile"` 12370 12371 // If you are using the console, use the Framerate setting to specify the framerate 12372 // for this output. If you want to keep the same framerate as the input video, 12373 // choose Follow source. If you want to do framerate conversion, choose a framerate 12374 // from the dropdown list or choose Custom. The framerates shown in the dropdown 12375 // list are decimal approximations of fractions. If you choose Custom, specify 12376 // your framerate as a fraction. If you are creating your transcoding job sepecification 12377 // as a JSON file without the console, use FramerateControl to specify which 12378 // value the service uses for the framerate for this output. Choose INITIALIZE_FROM_SOURCE 12379 // if you want the service to use the framerate from the input. Choose SPECIFIED 12380 // if you want the service to use the framerate you specify in the settings 12381 // FramerateNumerator and FramerateDenominator. 12382 FramerateControl *string `locationName:"framerateControl" type:"string" enum:"ProresFramerateControl"` 12383 12384 // When set to INTERPOLATE, produces smoother motion during framerate conversion. 12385 FramerateConversionAlgorithm *string `locationName:"framerateConversionAlgorithm" type:"string" enum:"ProresFramerateConversionAlgorithm"` 12386 12387 // Framerate denominator. 12388 FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"` 12389 12390 // When you use the API for transcode jobs that use framerate conversion, specify 12391 // the framerate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use 12392 // FramerateNumerator to specify the numerator of this fraction. In this example, 12393 // use 24000 for the value of FramerateNumerator. 12394 FramerateNumerator *int64 `locationName:"framerateNumerator" min:"1" type:"integer"` 12395 12396 // Use Interlace mode (InterlaceMode) to choose the scan line type for the output. 12397 // * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce 12398 // interlaced output with the entire output having the same field polarity (top 12399 // or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default 12400 // Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, 12401 // behavior depends on the input scan type. - If the source is interlaced, the 12402 // output will be interlaced with the same polarity as the source (it will follow 12403 // the source). The output could therefore be a mix of "top field first" and 12404 // "bottom field first". - If the source is progressive, the output will be 12405 // interlaced with "top field first" or "bottom field first" polarity, depending 12406 // on which of the Follow options you chose. 12407 InterlaceMode *string `locationName:"interlaceMode" type:"string" enum:"ProresInterlaceMode"` 12408 12409 // Use (ProresParControl) to specify how the service determines the pixel aspect 12410 // ratio. Set to Follow source (INITIALIZE_FROM_SOURCE) to use the pixel aspect 12411 // ratio from the input. To specify a different pixel aspect ratio: Using the 12412 // console, choose it from the dropdown menu. Using the API, set ProresParControl 12413 // to (SPECIFIED) and provide for (ParNumerator) and (ParDenominator). 12414 ParControl *string `locationName:"parControl" type:"string" enum:"ProresParControl"` 12415 12416 // Pixel Aspect Ratio denominator. 12417 ParDenominator *int64 `locationName:"parDenominator" min:"1" type:"integer"` 12418 12419 // Pixel Aspect Ratio numerator. 12420 ParNumerator *int64 `locationName:"parNumerator" min:"1" type:"integer"` 12421 12422 // Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled 12423 // as 25fps, and audio is sped up correspondingly. 12424 SlowPal *string `locationName:"slowPal" type:"string" enum:"ProresSlowPal"` 12425 12426 // Only use Telecine (ProresTelecine) when you set Framerate (Framerate) to 12427 // 29.970. Set Telecine (ProresTelecine) to Hard (hard) to produce a 29.97i 12428 // output from a 23.976 input. Set it to Soft (soft) to produce 23.976 output 12429 // and leave converstion to the player. 12430 Telecine *string `locationName:"telecine" type:"string" enum:"ProresTelecine"` 12431} 12432 12433// String returns the string representation 12434func (s ProresSettings) String() string { 12435 return awsutil.Prettify(s) 12436} 12437 12438// GoString returns the string representation 12439func (s ProresSettings) GoString() string { 12440 return s.String() 12441} 12442 12443// Validate inspects the fields of the type to determine if they are valid. 12444func (s *ProresSettings) Validate() error { 12445 invalidParams := request.ErrInvalidParams{Context: "ProresSettings"} 12446 if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 { 12447 invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1)) 12448 } 12449 if s.FramerateNumerator != nil && *s.FramerateNumerator < 1 { 12450 invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 1)) 12451 } 12452 if s.ParDenominator != nil && *s.ParDenominator < 1 { 12453 invalidParams.Add(request.NewErrParamMinValue("ParDenominator", 1)) 12454 } 12455 if s.ParNumerator != nil && *s.ParNumerator < 1 { 12456 invalidParams.Add(request.NewErrParamMinValue("ParNumerator", 1)) 12457 } 12458 12459 if invalidParams.Len() > 0 { 12460 return invalidParams 12461 } 12462 return nil 12463} 12464 12465// SetCodecProfile sets the CodecProfile field's value. 12466func (s *ProresSettings) SetCodecProfile(v string) *ProresSettings { 12467 s.CodecProfile = &v 12468 return s 12469} 12470 12471// SetFramerateControl sets the FramerateControl field's value. 12472func (s *ProresSettings) SetFramerateControl(v string) *ProresSettings { 12473 s.FramerateControl = &v 12474 return s 12475} 12476 12477// SetFramerateConversionAlgorithm sets the FramerateConversionAlgorithm field's value. 12478func (s *ProresSettings) SetFramerateConversionAlgorithm(v string) *ProresSettings { 12479 s.FramerateConversionAlgorithm = &v 12480 return s 12481} 12482 12483// SetFramerateDenominator sets the FramerateDenominator field's value. 12484func (s *ProresSettings) SetFramerateDenominator(v int64) *ProresSettings { 12485 s.FramerateDenominator = &v 12486 return s 12487} 12488 12489// SetFramerateNumerator sets the FramerateNumerator field's value. 12490func (s *ProresSettings) SetFramerateNumerator(v int64) *ProresSettings { 12491 s.FramerateNumerator = &v 12492 return s 12493} 12494 12495// SetInterlaceMode sets the InterlaceMode field's value. 12496func (s *ProresSettings) SetInterlaceMode(v string) *ProresSettings { 12497 s.InterlaceMode = &v 12498 return s 12499} 12500 12501// SetParControl sets the ParControl field's value. 12502func (s *ProresSettings) SetParControl(v string) *ProresSettings { 12503 s.ParControl = &v 12504 return s 12505} 12506 12507// SetParDenominator sets the ParDenominator field's value. 12508func (s *ProresSettings) SetParDenominator(v int64) *ProresSettings { 12509 s.ParDenominator = &v 12510 return s 12511} 12512 12513// SetParNumerator sets the ParNumerator field's value. 12514func (s *ProresSettings) SetParNumerator(v int64) *ProresSettings { 12515 s.ParNumerator = &v 12516 return s 12517} 12518 12519// SetSlowPal sets the SlowPal field's value. 12520func (s *ProresSettings) SetSlowPal(v string) *ProresSettings { 12521 s.SlowPal = &v 12522 return s 12523} 12524 12525// SetTelecine sets the Telecine field's value. 12526func (s *ProresSettings) SetTelecine(v string) *ProresSettings { 12527 s.Telecine = &v 12528 return s 12529} 12530 12531// MediaConvert jobs are submitted to a queue. Unless specified otherwise jobs 12532// are submitted to a built-in default queue. User can create additional queues 12533// to separate the jobs of different categories or priority. 12534type Queue struct { 12535 _ struct{} `type:"structure"` 12536 12537 // An identifier for this resource that is unique within all of AWS. 12538 Arn *string `locationName:"arn" type:"string"` 12539 12540 // The timestamp in epoch seconds for queue creation. 12541 CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unixTimestamp"` 12542 12543 // An optional description you create for each queue. 12544 Description *string `locationName:"description" type:"string"` 12545 12546 // The timestamp in epoch seconds when the queue was last updated. 12547 LastUpdated *time.Time `locationName:"lastUpdated" type:"timestamp" timestampFormat:"unixTimestamp"` 12548 12549 // A name you create for each queue. Each name must be unique within your account. 12550 // 12551 // Name is a required field 12552 Name *string `locationName:"name" type:"string" required:"true"` 12553 12554 // Estimated number of jobs in PROGRESSING status. 12555 ProgressingJobsCount *int64 `locationName:"progressingJobsCount" type:"integer"` 12556 12557 // Queues can be ACTIVE or PAUSED. If you pause a queue, jobs in that queue 12558 // will not begin. Jobs running when a queue is paused continue to run until 12559 // they finish or error out. 12560 Status *string `locationName:"status" type:"string" enum:"QueueStatus"` 12561 12562 // Estimated number of jobs in SUBMITTED status. 12563 SubmittedJobsCount *int64 `locationName:"submittedJobsCount" type:"integer"` 12564 12565 // A queue can be of two types: system or custom. System or built-in queues 12566 // can't be modified or deleted by the user. 12567 Type *string `locationName:"type" type:"string" enum:"Type"` 12568} 12569 12570// String returns the string representation 12571func (s Queue) String() string { 12572 return awsutil.Prettify(s) 12573} 12574 12575// GoString returns the string representation 12576func (s Queue) GoString() string { 12577 return s.String() 12578} 12579 12580// SetArn sets the Arn field's value. 12581func (s *Queue) SetArn(v string) *Queue { 12582 s.Arn = &v 12583 return s 12584} 12585 12586// SetCreatedAt sets the CreatedAt field's value. 12587func (s *Queue) SetCreatedAt(v time.Time) *Queue { 12588 s.CreatedAt = &v 12589 return s 12590} 12591 12592// SetDescription sets the Description field's value. 12593func (s *Queue) SetDescription(v string) *Queue { 12594 s.Description = &v 12595 return s 12596} 12597 12598// SetLastUpdated sets the LastUpdated field's value. 12599func (s *Queue) SetLastUpdated(v time.Time) *Queue { 12600 s.LastUpdated = &v 12601 return s 12602} 12603 12604// SetName sets the Name field's value. 12605func (s *Queue) SetName(v string) *Queue { 12606 s.Name = &v 12607 return s 12608} 12609 12610// SetProgressingJobsCount sets the ProgressingJobsCount field's value. 12611func (s *Queue) SetProgressingJobsCount(v int64) *Queue { 12612 s.ProgressingJobsCount = &v 12613 return s 12614} 12615 12616// SetStatus sets the Status field's value. 12617func (s *Queue) SetStatus(v string) *Queue { 12618 s.Status = &v 12619 return s 12620} 12621 12622// SetSubmittedJobsCount sets the SubmittedJobsCount field's value. 12623func (s *Queue) SetSubmittedJobsCount(v int64) *Queue { 12624 s.SubmittedJobsCount = &v 12625 return s 12626} 12627 12628// SetType sets the Type field's value. 12629func (s *Queue) SetType(v string) *Queue { 12630 s.Type = &v 12631 return s 12632} 12633 12634// Use Rectangle to identify a specific area of the video frame. 12635type Rectangle struct { 12636 _ struct{} `type:"structure"` 12637 12638 // Height of rectangle in pixels. Specify only even numbers. 12639 // 12640 // Height is a required field 12641 Height *int64 `locationName:"height" min:"2" type:"integer" required:"true"` 12642 12643 // Width of rectangle in pixels. Specify only even numbers. 12644 // 12645 // Width is a required field 12646 Width *int64 `locationName:"width" min:"2" type:"integer" required:"true"` 12647 12648 // The distance, in pixels, between the rectangle and the left edge of the video 12649 // frame. Specify only even numbers. 12650 // 12651 // X is a required field 12652 X *int64 `locationName:"x" type:"integer" required:"true"` 12653 12654 // The distance, in pixels, between the rectangle and the top edge of the video 12655 // frame. Specify only even numbers. 12656 // 12657 // Y is a required field 12658 Y *int64 `locationName:"y" type:"integer" required:"true"` 12659} 12660 12661// String returns the string representation 12662func (s Rectangle) String() string { 12663 return awsutil.Prettify(s) 12664} 12665 12666// GoString returns the string representation 12667func (s Rectangle) GoString() string { 12668 return s.String() 12669} 12670 12671// Validate inspects the fields of the type to determine if they are valid. 12672func (s *Rectangle) Validate() error { 12673 invalidParams := request.ErrInvalidParams{Context: "Rectangle"} 12674 if s.Height == nil { 12675 invalidParams.Add(request.NewErrParamRequired("Height")) 12676 } 12677 if s.Height != nil && *s.Height < 2 { 12678 invalidParams.Add(request.NewErrParamMinValue("Height", 2)) 12679 } 12680 if s.Width == nil { 12681 invalidParams.Add(request.NewErrParamRequired("Width")) 12682 } 12683 if s.Width != nil && *s.Width < 2 { 12684 invalidParams.Add(request.NewErrParamMinValue("Width", 2)) 12685 } 12686 if s.X == nil { 12687 invalidParams.Add(request.NewErrParamRequired("X")) 12688 } 12689 if s.Y == nil { 12690 invalidParams.Add(request.NewErrParamRequired("Y")) 12691 } 12692 12693 if invalidParams.Len() > 0 { 12694 return invalidParams 12695 } 12696 return nil 12697} 12698 12699// SetHeight sets the Height field's value. 12700func (s *Rectangle) SetHeight(v int64) *Rectangle { 12701 s.Height = &v 12702 return s 12703} 12704 12705// SetWidth sets the Width field's value. 12706func (s *Rectangle) SetWidth(v int64) *Rectangle { 12707 s.Width = &v 12708 return s 12709} 12710 12711// SetX sets the X field's value. 12712func (s *Rectangle) SetX(v int64) *Rectangle { 12713 s.X = &v 12714 return s 12715} 12716 12717// SetY sets the Y field's value. 12718func (s *Rectangle) SetY(v int64) *Rectangle { 12719 s.Y = &v 12720 return s 12721} 12722 12723// Use Manual audio remixing (RemixSettings) to adjust audio levels for each 12724// audio channel in each output of your job. With audio remixing, you can output 12725// more or fewer audio channels than your input audio source provides. 12726type RemixSettings struct { 12727 _ struct{} `type:"structure"` 12728 12729 // Channel mapping (ChannelMapping) contains the group of fields that hold the 12730 // remixing value for each channel. Units are in dB. Acceptable values are within 12731 // the range from -60 (mute) through 6. A setting of 0 passes the input channel 12732 // unchanged to the output channel (no attenuation or amplification). 12733 // 12734 // ChannelMapping is a required field 12735 ChannelMapping *ChannelMapping `locationName:"channelMapping" type:"structure" required:"true"` 12736 12737 // Specify the number of audio channels from your input that you want to use 12738 // in your output. With remixing, you might combine or split the data in these 12739 // channels, so the number of channels in your final output might be different. 12740 // 12741 // ChannelsIn is a required field 12742 ChannelsIn *int64 `locationName:"channelsIn" min:"1" type:"integer" required:"true"` 12743 12744 // Specify the number of channels in this output after remixing. Valid values: 12745 // 1, 2, 4, 6, 8 12746 // 12747 // ChannelsOut is a required field 12748 ChannelsOut *int64 `locationName:"channelsOut" min:"1" type:"integer" required:"true"` 12749} 12750 12751// String returns the string representation 12752func (s RemixSettings) String() string { 12753 return awsutil.Prettify(s) 12754} 12755 12756// GoString returns the string representation 12757func (s RemixSettings) GoString() string { 12758 return s.String() 12759} 12760 12761// Validate inspects the fields of the type to determine if they are valid. 12762func (s *RemixSettings) Validate() error { 12763 invalidParams := request.ErrInvalidParams{Context: "RemixSettings"} 12764 if s.ChannelMapping == nil { 12765 invalidParams.Add(request.NewErrParamRequired("ChannelMapping")) 12766 } 12767 if s.ChannelsIn == nil { 12768 invalidParams.Add(request.NewErrParamRequired("ChannelsIn")) 12769 } 12770 if s.ChannelsIn != nil && *s.ChannelsIn < 1 { 12771 invalidParams.Add(request.NewErrParamMinValue("ChannelsIn", 1)) 12772 } 12773 if s.ChannelsOut == nil { 12774 invalidParams.Add(request.NewErrParamRequired("ChannelsOut")) 12775 } 12776 if s.ChannelsOut != nil && *s.ChannelsOut < 1 { 12777 invalidParams.Add(request.NewErrParamMinValue("ChannelsOut", 1)) 12778 } 12779 if s.ChannelMapping != nil { 12780 if err := s.ChannelMapping.Validate(); err != nil { 12781 invalidParams.AddNested("ChannelMapping", err.(request.ErrInvalidParams)) 12782 } 12783 } 12784 12785 if invalidParams.Len() > 0 { 12786 return invalidParams 12787 } 12788 return nil 12789} 12790 12791// SetChannelMapping sets the ChannelMapping field's value. 12792func (s *RemixSettings) SetChannelMapping(v *ChannelMapping) *RemixSettings { 12793 s.ChannelMapping = v 12794 return s 12795} 12796 12797// SetChannelsIn sets the ChannelsIn field's value. 12798func (s *RemixSettings) SetChannelsIn(v int64) *RemixSettings { 12799 s.ChannelsIn = &v 12800 return s 12801} 12802 12803// SetChannelsOut sets the ChannelsOut field's value. 12804func (s *RemixSettings) SetChannelsOut(v int64) *RemixSettings { 12805 s.ChannelsOut = &v 12806 return s 12807} 12808 12809// The Amazon Resource Name (ARN) and tags for an AWS Elemental MediaConvert 12810// resource. 12811type ResourceTags struct { 12812 _ struct{} `type:"structure"` 12813 12814 // The Amazon Resource Name (ARN) of the resource. 12815 Arn *string `locationName:"arn" type:"string"` 12816 12817 // The tags for the resource. 12818 Tags map[string]*string `locationName:"tags" type:"map"` 12819} 12820 12821// String returns the string representation 12822func (s ResourceTags) String() string { 12823 return awsutil.Prettify(s) 12824} 12825 12826// GoString returns the string representation 12827func (s ResourceTags) GoString() string { 12828 return s.String() 12829} 12830 12831// SetArn sets the Arn field's value. 12832func (s *ResourceTags) SetArn(v string) *ResourceTags { 12833 s.Arn = &v 12834 return s 12835} 12836 12837// SetTags sets the Tags field's value. 12838func (s *ResourceTags) SetTags(v map[string]*string) *ResourceTags { 12839 s.Tags = v 12840 return s 12841} 12842 12843// Settings for SCC caption output. 12844type SccDestinationSettings struct { 12845 _ struct{} `type:"structure"` 12846 12847 // Set Framerate (SccDestinationFramerate) to make sure that the captions and 12848 // the video are synchronized in the output. Specify a framerate that matches 12849 // the framerate of the associated video. If the video framerate is 29.97, choose 12850 // 29.97 dropframe (FRAMERATE_29_97_DROPFRAME) only if the video has video_insertion=true 12851 // and drop_frame_timecode=true; otherwise, choose 29.97 non-dropframe (FRAMERATE_29_97_NON_DROPFRAME). 12852 Framerate *string `locationName:"framerate" type:"string" enum:"SccDestinationFramerate"` 12853} 12854 12855// String returns the string representation 12856func (s SccDestinationSettings) String() string { 12857 return awsutil.Prettify(s) 12858} 12859 12860// GoString returns the string representation 12861func (s SccDestinationSettings) GoString() string { 12862 return s.String() 12863} 12864 12865// SetFramerate sets the Framerate field's value. 12866func (s *SccDestinationSettings) SetFramerate(v string) *SccDestinationSettings { 12867 s.Framerate = &v 12868 return s 12869} 12870 12871// Settings for use with a SPEKE key provider 12872type SpekeKeyProvider struct { 12873 _ struct{} `type:"structure"` 12874 12875 // The SPEKE-compliant server uses Resource ID (ResourceId) to identify content. 12876 // 12877 // ResourceId is a required field 12878 ResourceId *string `locationName:"resourceId" type:"string" required:"true"` 12879 12880 // Relates to SPEKE implementation. DRM system identifiers. DASH output groups 12881 // support a max of two system ids. Other group types support one system id. 12882 // 12883 // SystemIds is a required field 12884 SystemIds []*string `locationName:"systemIds" type:"list" required:"true"` 12885 12886 // Use URL (Url) to specify the SPEKE-compliant server that will provide keys 12887 // for content. 12888 // 12889 // Url is a required field 12890 Url *string `locationName:"url" type:"string" required:"true"` 12891} 12892 12893// String returns the string representation 12894func (s SpekeKeyProvider) String() string { 12895 return awsutil.Prettify(s) 12896} 12897 12898// GoString returns the string representation 12899func (s SpekeKeyProvider) GoString() string { 12900 return s.String() 12901} 12902 12903// Validate inspects the fields of the type to determine if they are valid. 12904func (s *SpekeKeyProvider) Validate() error { 12905 invalidParams := request.ErrInvalidParams{Context: "SpekeKeyProvider"} 12906 if s.ResourceId == nil { 12907 invalidParams.Add(request.NewErrParamRequired("ResourceId")) 12908 } 12909 if s.SystemIds == nil { 12910 invalidParams.Add(request.NewErrParamRequired("SystemIds")) 12911 } 12912 if s.Url == nil { 12913 invalidParams.Add(request.NewErrParamRequired("Url")) 12914 } 12915 12916 if invalidParams.Len() > 0 { 12917 return invalidParams 12918 } 12919 return nil 12920} 12921 12922// SetResourceId sets the ResourceId field's value. 12923func (s *SpekeKeyProvider) SetResourceId(v string) *SpekeKeyProvider { 12924 s.ResourceId = &v 12925 return s 12926} 12927 12928// SetSystemIds sets the SystemIds field's value. 12929func (s *SpekeKeyProvider) SetSystemIds(v []*string) *SpekeKeyProvider { 12930 s.SystemIds = v 12931 return s 12932} 12933 12934// SetUrl sets the Url field's value. 12935func (s *SpekeKeyProvider) SetUrl(v string) *SpekeKeyProvider { 12936 s.Url = &v 12937 return s 12938} 12939 12940// Settings for use with a SPEKE key provider. 12941type StaticKeyProvider struct { 12942 _ struct{} `type:"structure"` 12943 12944 // Relates to DRM implementation. Sets the value of the KEYFORMAT attribute. 12945 // Must be 'identity' or a reverse DNS string. May be omitted to indicate an 12946 // implicit value of 'identity'. 12947 KeyFormat *string `locationName:"keyFormat" type:"string"` 12948 12949 // Relates to DRM implementation. Either a single positive integer version value 12950 // or a slash delimited list of version values (1/2/3). 12951 KeyFormatVersions *string `locationName:"keyFormatVersions" type:"string"` 12952 12953 // Relates to DRM implementation. Use a 32-character hexidecimal string to specify 12954 // Key Value (StaticKeyValue). 12955 // 12956 // StaticKeyValue is a required field 12957 StaticKeyValue *string `locationName:"staticKeyValue" type:"string" required:"true"` 12958 12959 // Relates to DRM implementation. The location of the license server used for 12960 // protecting content. 12961 // 12962 // Url is a required field 12963 Url *string `locationName:"url" type:"string" required:"true"` 12964} 12965 12966// String returns the string representation 12967func (s StaticKeyProvider) String() string { 12968 return awsutil.Prettify(s) 12969} 12970 12971// GoString returns the string representation 12972func (s StaticKeyProvider) GoString() string { 12973 return s.String() 12974} 12975 12976// Validate inspects the fields of the type to determine if they are valid. 12977func (s *StaticKeyProvider) Validate() error { 12978 invalidParams := request.ErrInvalidParams{Context: "StaticKeyProvider"} 12979 if s.StaticKeyValue == nil { 12980 invalidParams.Add(request.NewErrParamRequired("StaticKeyValue")) 12981 } 12982 if s.Url == nil { 12983 invalidParams.Add(request.NewErrParamRequired("Url")) 12984 } 12985 12986 if invalidParams.Len() > 0 { 12987 return invalidParams 12988 } 12989 return nil 12990} 12991 12992// SetKeyFormat sets the KeyFormat field's value. 12993func (s *StaticKeyProvider) SetKeyFormat(v string) *StaticKeyProvider { 12994 s.KeyFormat = &v 12995 return s 12996} 12997 12998// SetKeyFormatVersions sets the KeyFormatVersions field's value. 12999func (s *StaticKeyProvider) SetKeyFormatVersions(v string) *StaticKeyProvider { 13000 s.KeyFormatVersions = &v 13001 return s 13002} 13003 13004// SetStaticKeyValue sets the StaticKeyValue field's value. 13005func (s *StaticKeyProvider) SetStaticKeyValue(v string) *StaticKeyProvider { 13006 s.StaticKeyValue = &v 13007 return s 13008} 13009 13010// SetUrl sets the Url field's value. 13011func (s *StaticKeyProvider) SetUrl(v string) *StaticKeyProvider { 13012 s.Url = &v 13013 return s 13014} 13015 13016// To tag a queue, preset, or job template, send a request with the tags and 13017// the Amazon Resource Name (ARN) of the resource that you want to tag. 13018type TagResourceInput struct { 13019 _ struct{} `type:"structure"` 13020 13021 // The Amazon Resource Name (ARN) of the resource that you want to tag. To get 13022 // the ARN, send a GET request with the resource name. 13023 // 13024 // Arn is a required field 13025 Arn *string `locationName:"arn" type:"string" required:"true"` 13026 13027 // The tags that you want to add to the resource. You can tag resources with 13028 // a key-value pair or with only a key. 13029 // 13030 // Tags is a required field 13031 Tags map[string]*string `locationName:"tags" type:"map" required:"true"` 13032} 13033 13034// String returns the string representation 13035func (s TagResourceInput) String() string { 13036 return awsutil.Prettify(s) 13037} 13038 13039// GoString returns the string representation 13040func (s TagResourceInput) GoString() string { 13041 return s.String() 13042} 13043 13044// Validate inspects the fields of the type to determine if they are valid. 13045func (s *TagResourceInput) Validate() error { 13046 invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} 13047 if s.Arn == nil { 13048 invalidParams.Add(request.NewErrParamRequired("Arn")) 13049 } 13050 if s.Tags == nil { 13051 invalidParams.Add(request.NewErrParamRequired("Tags")) 13052 } 13053 13054 if invalidParams.Len() > 0 { 13055 return invalidParams 13056 } 13057 return nil 13058} 13059 13060// SetArn sets the Arn field's value. 13061func (s *TagResourceInput) SetArn(v string) *TagResourceInput { 13062 s.Arn = &v 13063 return s 13064} 13065 13066// SetTags sets the Tags field's value. 13067func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { 13068 s.Tags = v 13069 return s 13070} 13071 13072// Successful tag resource requests return an OK message. 13073type TagResourceOutput struct { 13074 _ struct{} `type:"structure"` 13075} 13076 13077// String returns the string representation 13078func (s TagResourceOutput) String() string { 13079 return awsutil.Prettify(s) 13080} 13081 13082// GoString returns the string representation 13083func (s TagResourceOutput) GoString() string { 13084 return s.String() 13085} 13086 13087// Settings for Teletext caption output 13088type TeletextDestinationSettings struct { 13089 _ struct{} `type:"structure"` 13090 13091 // Set pageNumber to the Teletext page number for the destination captions for 13092 // this output. This value must be a three-digit hexadecimal string; strings 13093 // ending in -FF are invalid. If you are passing through the entire set of Teletext 13094 // data, do not use this field. 13095 PageNumber *string `locationName:"pageNumber" min:"3" type:"string"` 13096} 13097 13098// String returns the string representation 13099func (s TeletextDestinationSettings) String() string { 13100 return awsutil.Prettify(s) 13101} 13102 13103// GoString returns the string representation 13104func (s TeletextDestinationSettings) GoString() string { 13105 return s.String() 13106} 13107 13108// Validate inspects the fields of the type to determine if they are valid. 13109func (s *TeletextDestinationSettings) Validate() error { 13110 invalidParams := request.ErrInvalidParams{Context: "TeletextDestinationSettings"} 13111 if s.PageNumber != nil && len(*s.PageNumber) < 3 { 13112 invalidParams.Add(request.NewErrParamMinLen("PageNumber", 3)) 13113 } 13114 13115 if invalidParams.Len() > 0 { 13116 return invalidParams 13117 } 13118 return nil 13119} 13120 13121// SetPageNumber sets the PageNumber field's value. 13122func (s *TeletextDestinationSettings) SetPageNumber(v string) *TeletextDestinationSettings { 13123 s.PageNumber = &v 13124 return s 13125} 13126 13127// Settings specific to Teletext caption sources, including Page number. 13128type TeletextSourceSettings struct { 13129 _ struct{} `type:"structure"` 13130 13131 // Use Page Number (PageNumber) to specify the three-digit hexadecimal page 13132 // number that will be used for Teletext captions. Do not use this setting if 13133 // you are passing through teletext from the input source to output. 13134 PageNumber *string `locationName:"pageNumber" min:"3" type:"string"` 13135} 13136 13137// String returns the string representation 13138func (s TeletextSourceSettings) String() string { 13139 return awsutil.Prettify(s) 13140} 13141 13142// GoString returns the string representation 13143func (s TeletextSourceSettings) GoString() string { 13144 return s.String() 13145} 13146 13147// Validate inspects the fields of the type to determine if they are valid. 13148func (s *TeletextSourceSettings) Validate() error { 13149 invalidParams := request.ErrInvalidParams{Context: "TeletextSourceSettings"} 13150 if s.PageNumber != nil && len(*s.PageNumber) < 3 { 13151 invalidParams.Add(request.NewErrParamMinLen("PageNumber", 3)) 13152 } 13153 13154 if invalidParams.Len() > 0 { 13155 return invalidParams 13156 } 13157 return nil 13158} 13159 13160// SetPageNumber sets the PageNumber field's value. 13161func (s *TeletextSourceSettings) SetPageNumber(v string) *TeletextSourceSettings { 13162 s.PageNumber = &v 13163 return s 13164} 13165 13166// Timecode burn-in (TimecodeBurnIn)--Burns the output timecode and specified 13167// prefix into the output. 13168type TimecodeBurnin struct { 13169 _ struct{} `type:"structure"` 13170 13171 // Use Font Size (FontSize) to set the font size of any burned-in timecode. 13172 // Valid values are 10, 16, 32, 48. 13173 FontSize *int64 `locationName:"fontSize" min:"10" type:"integer"` 13174 13175 // Use Position (Position) under under Timecode burn-in (TimecodeBurnIn) to 13176 // specify the location the burned-in timecode on output video. 13177 Position *string `locationName:"position" type:"string" enum:"TimecodeBurninPosition"` 13178 13179 // Use Prefix (Prefix) to place ASCII characters before any burned-in timecode. 13180 // For example, a prefix of "EZ-" will result in the timecode "EZ-00:00:00:00". 13181 // Provide either the characters themselves or the ASCII code equivalents. The 13182 // supported range of characters is 0x20 through 0x7e. This includes letters, 13183 // numbers, and all special characters represented on a standard English keyboard. 13184 Prefix *string `locationName:"prefix" type:"string"` 13185} 13186 13187// String returns the string representation 13188func (s TimecodeBurnin) String() string { 13189 return awsutil.Prettify(s) 13190} 13191 13192// GoString returns the string representation 13193func (s TimecodeBurnin) GoString() string { 13194 return s.String() 13195} 13196 13197// Validate inspects the fields of the type to determine if they are valid. 13198func (s *TimecodeBurnin) Validate() error { 13199 invalidParams := request.ErrInvalidParams{Context: "TimecodeBurnin"} 13200 if s.FontSize != nil && *s.FontSize < 10 { 13201 invalidParams.Add(request.NewErrParamMinValue("FontSize", 10)) 13202 } 13203 13204 if invalidParams.Len() > 0 { 13205 return invalidParams 13206 } 13207 return nil 13208} 13209 13210// SetFontSize sets the FontSize field's value. 13211func (s *TimecodeBurnin) SetFontSize(v int64) *TimecodeBurnin { 13212 s.FontSize = &v 13213 return s 13214} 13215 13216// SetPosition sets the Position field's value. 13217func (s *TimecodeBurnin) SetPosition(v string) *TimecodeBurnin { 13218 s.Position = &v 13219 return s 13220} 13221 13222// SetPrefix sets the Prefix field's value. 13223func (s *TimecodeBurnin) SetPrefix(v string) *TimecodeBurnin { 13224 s.Prefix = &v 13225 return s 13226} 13227 13228// These settings control how the service handles timecodes throughout the job. 13229// These settings don't affect input clipping. 13230type TimecodeConfig struct { 13231 _ struct{} `type:"structure"` 13232 13233 // If you use an editing platform that relies on an anchor timecode, use Anchor 13234 // Timecode (Anchor) to specify a timecode that will match the input video frame 13235 // to the output video frame. Use 24-hour format with frame number, (HH:MM:SS:FF) 13236 // or (HH:MM:SS;FF). This setting ignores framerate conversion. System behavior 13237 // for Anchor Timecode varies depending on your setting for Source (TimecodeSource). 13238 // * If Source (TimecodeSource) is set to Specified Start (SPECIFIEDSTART), 13239 // the first input frame is the specified value in Start Timecode (Start). Anchor 13240 // Timecode (Anchor) and Start Timecode (Start) are used calculate output timecode. 13241 // * If Source (TimecodeSource) is set to Start at 0 (ZEROBASED) the first frame 13242 // is 00:00:00:00. * If Source (TimecodeSource) is set to Embedded (EMBEDDED), 13243 // the first frame is the timecode value on the first input frame of the input. 13244 Anchor *string `locationName:"anchor" type:"string"` 13245 13246 // Use Source (TimecodeSource) to set how timecodes are handled within this 13247 // job. To make sure that your video, audio, captions, and markers are synchronized 13248 // and that time-based features, such as image inserter, work correctly, choose 13249 // the Timecode source option that matches your assets. All timecodes are in 13250 // a 24-hour format with frame number (HH:MM:SS:FF). * Embedded (EMBEDDED) - 13251 // Use the timecode that is in the input video. If no embedded timecode is in 13252 // the source, the service will use Start at 0 (ZEROBASED) instead. * Start 13253 // at 0 (ZEROBASED) - Set the timecode of the initial frame to 00:00:00:00. 13254 // * Specified Start (SPECIFIEDSTART) - Set the timecode of the initial frame 13255 // to a value other than zero. You use Start timecode (Start) to provide this 13256 // value. 13257 Source *string `locationName:"source" type:"string" enum:"TimecodeSource"` 13258 13259 // Only use when you set Source (TimecodeSource) to Specified start (SPECIFIEDSTART). 13260 // Use Start timecode (Start) to specify the timecode for the initial frame. 13261 // Use 24-hour format with frame number, (HH:MM:SS:FF) or (HH:MM:SS;FF). 13262 Start *string `locationName:"start" type:"string"` 13263 13264 // Only applies to outputs that support program-date-time stamp. Use Timestamp 13265 // offset (TimestampOffset) to overwrite the timecode date without affecting 13266 // the time and frame number. Provide the new date as a string in the format 13267 // "yyyy-mm-dd". To use Time stamp offset, you must also enable Insert program-date-time 13268 // (InsertProgramDateTime) in the output settings. For example, if the date 13269 // part of your timecodes is 2002-1-25 and you want to change it to one year 13270 // later, set Timestamp offset (TimestampOffset) to 2003-1-25. 13271 TimestampOffset *string `locationName:"timestampOffset" type:"string"` 13272} 13273 13274// String returns the string representation 13275func (s TimecodeConfig) String() string { 13276 return awsutil.Prettify(s) 13277} 13278 13279// GoString returns the string representation 13280func (s TimecodeConfig) GoString() string { 13281 return s.String() 13282} 13283 13284// SetAnchor sets the Anchor field's value. 13285func (s *TimecodeConfig) SetAnchor(v string) *TimecodeConfig { 13286 s.Anchor = &v 13287 return s 13288} 13289 13290// SetSource sets the Source field's value. 13291func (s *TimecodeConfig) SetSource(v string) *TimecodeConfig { 13292 s.Source = &v 13293 return s 13294} 13295 13296// SetStart sets the Start field's value. 13297func (s *TimecodeConfig) SetStart(v string) *TimecodeConfig { 13298 s.Start = &v 13299 return s 13300} 13301 13302// SetTimestampOffset sets the TimestampOffset field's value. 13303func (s *TimecodeConfig) SetTimestampOffset(v string) *TimecodeConfig { 13304 s.TimestampOffset = &v 13305 return s 13306} 13307 13308// Enable Timed metadata insertion (TimedMetadataInsertion) to include ID3 tags 13309// in your job. To include timed metadata, you must enable it here, enable it 13310// in each output container, and specify tags and timecodes in ID3 insertion 13311// (Id3Insertion) objects. 13312type TimedMetadataInsertion struct { 13313 _ struct{} `type:"structure"` 13314 13315 // Id3Insertions contains the array of Id3Insertion instances. 13316 // 13317 // Id3Insertions is a required field 13318 Id3Insertions []*Id3Insertion `locationName:"id3Insertions" type:"list" required:"true"` 13319} 13320 13321// String returns the string representation 13322func (s TimedMetadataInsertion) String() string { 13323 return awsutil.Prettify(s) 13324} 13325 13326// GoString returns the string representation 13327func (s TimedMetadataInsertion) GoString() string { 13328 return s.String() 13329} 13330 13331// Validate inspects the fields of the type to determine if they are valid. 13332func (s *TimedMetadataInsertion) Validate() error { 13333 invalidParams := request.ErrInvalidParams{Context: "TimedMetadataInsertion"} 13334 if s.Id3Insertions == nil { 13335 invalidParams.Add(request.NewErrParamRequired("Id3Insertions")) 13336 } 13337 if s.Id3Insertions != nil { 13338 for i, v := range s.Id3Insertions { 13339 if v == nil { 13340 continue 13341 } 13342 if err := v.Validate(); err != nil { 13343 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Id3Insertions", i), err.(request.ErrInvalidParams)) 13344 } 13345 } 13346 } 13347 13348 if invalidParams.Len() > 0 { 13349 return invalidParams 13350 } 13351 return nil 13352} 13353 13354// SetId3Insertions sets the Id3Insertions field's value. 13355func (s *TimedMetadataInsertion) SetId3Insertions(v []*Id3Insertion) *TimedMetadataInsertion { 13356 s.Id3Insertions = v 13357 return s 13358} 13359 13360// Information about when jobs are submitted, started, and finished is specified 13361// in Unix epoch format in seconds. 13362type Timing struct { 13363 _ struct{} `type:"structure"` 13364 13365 // The time, in Unix epoch format, that the transcoding job finished 13366 FinishTime *time.Time `locationName:"finishTime" type:"timestamp" timestampFormat:"unixTimestamp"` 13367 13368 // The time, in Unix epoch format, that transcoding for the job began. 13369 StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"unixTimestamp"` 13370 13371 // The time, in Unix epoch format, that you submitted the job. 13372 SubmitTime *time.Time `locationName:"submitTime" type:"timestamp" timestampFormat:"unixTimestamp"` 13373} 13374 13375// String returns the string representation 13376func (s Timing) String() string { 13377 return awsutil.Prettify(s) 13378} 13379 13380// GoString returns the string representation 13381func (s Timing) GoString() string { 13382 return s.String() 13383} 13384 13385// SetFinishTime sets the FinishTime field's value. 13386func (s *Timing) SetFinishTime(v time.Time) *Timing { 13387 s.FinishTime = &v 13388 return s 13389} 13390 13391// SetStartTime sets the StartTime field's value. 13392func (s *Timing) SetStartTime(v time.Time) *Timing { 13393 s.StartTime = &v 13394 return s 13395} 13396 13397// SetSubmitTime sets the SubmitTime field's value. 13398func (s *Timing) SetSubmitTime(v time.Time) *Timing { 13399 s.SubmitTime = &v 13400 return s 13401} 13402 13403// Settings specific to TTML caption outputs, including Pass style information 13404// (TtmlStylePassthrough). 13405type TtmlDestinationSettings struct { 13406 _ struct{} `type:"structure"` 13407 13408 // Pass through style and position information from a TTML-like input source 13409 // (TTML, SMPTE-TT, CFF-TT) to the CFF-TT output or TTML output. 13410 StylePassthrough *string `locationName:"stylePassthrough" type:"string" enum:"TtmlStylePassthrough"` 13411} 13412 13413// String returns the string representation 13414func (s TtmlDestinationSettings) String() string { 13415 return awsutil.Prettify(s) 13416} 13417 13418// GoString returns the string representation 13419func (s TtmlDestinationSettings) GoString() string { 13420 return s.String() 13421} 13422 13423// SetStylePassthrough sets the StylePassthrough field's value. 13424func (s *TtmlDestinationSettings) SetStylePassthrough(v string) *TtmlDestinationSettings { 13425 s.StylePassthrough = &v 13426 return s 13427} 13428 13429// To remove tags from a resource, send a request with the Amazon Resource Name 13430// (ARN) of the resource and the keys of the tags that you want to remove. 13431type UntagResourceInput struct { 13432 _ struct{} `type:"structure"` 13433 13434 // The Amazon Resource Name (ARN) of the resource that you want to remove tags 13435 // from. To get the ARN, send a GET request with the resource name. 13436 Arn *string `locationName:"arn" type:"string"` 13437 13438 // The keys of the tags that you want to remove from the resource. 13439 TagKeys []*string `locationName:"tagKeys" type:"list"` 13440} 13441 13442// String returns the string representation 13443func (s UntagResourceInput) String() string { 13444 return awsutil.Prettify(s) 13445} 13446 13447// GoString returns the string representation 13448func (s UntagResourceInput) GoString() string { 13449 return s.String() 13450} 13451 13452// SetArn sets the Arn field's value. 13453func (s *UntagResourceInput) SetArn(v string) *UntagResourceInput { 13454 s.Arn = &v 13455 return s 13456} 13457 13458// SetTagKeys sets the TagKeys field's value. 13459func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { 13460 s.TagKeys = v 13461 return s 13462} 13463 13464// A successful request to remove a tag from a resource returns an OK message. 13465type UntagResourceOutput struct { 13466 _ struct{} `type:"structure"` 13467} 13468 13469// String returns the string representation 13470func (s UntagResourceOutput) String() string { 13471 return awsutil.Prettify(s) 13472} 13473 13474// GoString returns the string representation 13475func (s UntagResourceOutput) GoString() string { 13476 return s.String() 13477} 13478 13479// Modify a job template by sending a request with the job template name and 13480// any of the following that you wish to change: description, category, and 13481// queue. 13482type UpdateJobTemplateInput struct { 13483 _ struct{} `type:"structure"` 13484 13485 // The new category for the job template, if you are changing it. 13486 Category *string `locationName:"category" type:"string"` 13487 13488 // The new description for the job template, if you are changing it. 13489 Description *string `locationName:"description" type:"string"` 13490 13491 // The name of the job template you are modifying 13492 // 13493 // Name is a required field 13494 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 13495 13496 // The new queue for the job template, if you are changing it. 13497 Queue *string `locationName:"queue" type:"string"` 13498 13499 // JobTemplateSettings contains all the transcode settings saved in the template 13500 // that will be applied to jobs created from it. 13501 Settings *JobTemplateSettings `locationName:"settings" type:"structure"` 13502} 13503 13504// String returns the string representation 13505func (s UpdateJobTemplateInput) String() string { 13506 return awsutil.Prettify(s) 13507} 13508 13509// GoString returns the string representation 13510func (s UpdateJobTemplateInput) GoString() string { 13511 return s.String() 13512} 13513 13514// Validate inspects the fields of the type to determine if they are valid. 13515func (s *UpdateJobTemplateInput) Validate() error { 13516 invalidParams := request.ErrInvalidParams{Context: "UpdateJobTemplateInput"} 13517 if s.Name == nil { 13518 invalidParams.Add(request.NewErrParamRequired("Name")) 13519 } 13520 if s.Settings != nil { 13521 if err := s.Settings.Validate(); err != nil { 13522 invalidParams.AddNested("Settings", err.(request.ErrInvalidParams)) 13523 } 13524 } 13525 13526 if invalidParams.Len() > 0 { 13527 return invalidParams 13528 } 13529 return nil 13530} 13531 13532// SetCategory sets the Category field's value. 13533func (s *UpdateJobTemplateInput) SetCategory(v string) *UpdateJobTemplateInput { 13534 s.Category = &v 13535 return s 13536} 13537 13538// SetDescription sets the Description field's value. 13539func (s *UpdateJobTemplateInput) SetDescription(v string) *UpdateJobTemplateInput { 13540 s.Description = &v 13541 return s 13542} 13543 13544// SetName sets the Name field's value. 13545func (s *UpdateJobTemplateInput) SetName(v string) *UpdateJobTemplateInput { 13546 s.Name = &v 13547 return s 13548} 13549 13550// SetQueue sets the Queue field's value. 13551func (s *UpdateJobTemplateInput) SetQueue(v string) *UpdateJobTemplateInput { 13552 s.Queue = &v 13553 return s 13554} 13555 13556// SetSettings sets the Settings field's value. 13557func (s *UpdateJobTemplateInput) SetSettings(v *JobTemplateSettings) *UpdateJobTemplateInput { 13558 s.Settings = v 13559 return s 13560} 13561 13562// Successful update job template requests will return the new job template 13563// JSON. 13564type UpdateJobTemplateOutput struct { 13565 _ struct{} `type:"structure"` 13566 13567 // A job template is a pre-made set of encoding instructions that you can use 13568 // to quickly create a job. 13569 JobTemplate *JobTemplate `locationName:"jobTemplate" type:"structure"` 13570} 13571 13572// String returns the string representation 13573func (s UpdateJobTemplateOutput) String() string { 13574 return awsutil.Prettify(s) 13575} 13576 13577// GoString returns the string representation 13578func (s UpdateJobTemplateOutput) GoString() string { 13579 return s.String() 13580} 13581 13582// SetJobTemplate sets the JobTemplate field's value. 13583func (s *UpdateJobTemplateOutput) SetJobTemplate(v *JobTemplate) *UpdateJobTemplateOutput { 13584 s.JobTemplate = v 13585 return s 13586} 13587 13588// Modify a preset by sending a request with the preset name and any of the 13589// following that you wish to change: description, category, and transcoding 13590// settings. 13591type UpdatePresetInput struct { 13592 _ struct{} `type:"structure"` 13593 13594 // The new category for the preset, if you are changing it. 13595 Category *string `locationName:"category" type:"string"` 13596 13597 // The new description for the preset, if you are changing it. 13598 Description *string `locationName:"description" type:"string"` 13599 13600 // The name of the preset you are modifying. 13601 // 13602 // Name is a required field 13603 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 13604 13605 // Settings for preset 13606 Settings *PresetSettings `locationName:"settings" type:"structure"` 13607} 13608 13609// String returns the string representation 13610func (s UpdatePresetInput) String() string { 13611 return awsutil.Prettify(s) 13612} 13613 13614// GoString returns the string representation 13615func (s UpdatePresetInput) GoString() string { 13616 return s.String() 13617} 13618 13619// Validate inspects the fields of the type to determine if they are valid. 13620func (s *UpdatePresetInput) Validate() error { 13621 invalidParams := request.ErrInvalidParams{Context: "UpdatePresetInput"} 13622 if s.Name == nil { 13623 invalidParams.Add(request.NewErrParamRequired("Name")) 13624 } 13625 if s.Settings != nil { 13626 if err := s.Settings.Validate(); err != nil { 13627 invalidParams.AddNested("Settings", err.(request.ErrInvalidParams)) 13628 } 13629 } 13630 13631 if invalidParams.Len() > 0 { 13632 return invalidParams 13633 } 13634 return nil 13635} 13636 13637// SetCategory sets the Category field's value. 13638func (s *UpdatePresetInput) SetCategory(v string) *UpdatePresetInput { 13639 s.Category = &v 13640 return s 13641} 13642 13643// SetDescription sets the Description field's value. 13644func (s *UpdatePresetInput) SetDescription(v string) *UpdatePresetInput { 13645 s.Description = &v 13646 return s 13647} 13648 13649// SetName sets the Name field's value. 13650func (s *UpdatePresetInput) SetName(v string) *UpdatePresetInput { 13651 s.Name = &v 13652 return s 13653} 13654 13655// SetSettings sets the Settings field's value. 13656func (s *UpdatePresetInput) SetSettings(v *PresetSettings) *UpdatePresetInput { 13657 s.Settings = v 13658 return s 13659} 13660 13661// Successful update preset requests will return the new preset JSON. 13662type UpdatePresetOutput struct { 13663 _ struct{} `type:"structure"` 13664 13665 // A preset is a collection of preconfigured media conversion settings that 13666 // you want MediaConvert to apply to the output during the conversion process. 13667 Preset *Preset `locationName:"preset" type:"structure"` 13668} 13669 13670// String returns the string representation 13671func (s UpdatePresetOutput) String() string { 13672 return awsutil.Prettify(s) 13673} 13674 13675// GoString returns the string representation 13676func (s UpdatePresetOutput) GoString() string { 13677 return s.String() 13678} 13679 13680// SetPreset sets the Preset field's value. 13681func (s *UpdatePresetOutput) SetPreset(v *Preset) *UpdatePresetOutput { 13682 s.Preset = v 13683 return s 13684} 13685 13686// Modify a queue by sending a request with the queue name and any of the following 13687// that you wish to change - description, status. You pause or activate a queue 13688// by changing its status between ACTIVE and PAUSED. 13689type UpdateQueueInput struct { 13690 _ struct{} `type:"structure"` 13691 13692 // The new description for the queue, if you are changing it. 13693 Description *string `locationName:"description" type:"string"` 13694 13695 // The name of the queue you are modifying. 13696 // 13697 // Name is a required field 13698 Name *string `location:"uri" locationName:"name" type:"string" required:"true"` 13699 13700 // Queues can be ACTIVE or PAUSED. If you pause a queue, jobs in that queue 13701 // will not begin. Jobs running when a queue is paused continue to run until 13702 // they finish or error out. 13703 Status *string `locationName:"status" type:"string" enum:"QueueStatus"` 13704} 13705 13706// String returns the string representation 13707func (s UpdateQueueInput) String() string { 13708 return awsutil.Prettify(s) 13709} 13710 13711// GoString returns the string representation 13712func (s UpdateQueueInput) GoString() string { 13713 return s.String() 13714} 13715 13716// Validate inspects the fields of the type to determine if they are valid. 13717func (s *UpdateQueueInput) Validate() error { 13718 invalidParams := request.ErrInvalidParams{Context: "UpdateQueueInput"} 13719 if s.Name == nil { 13720 invalidParams.Add(request.NewErrParamRequired("Name")) 13721 } 13722 13723 if invalidParams.Len() > 0 { 13724 return invalidParams 13725 } 13726 return nil 13727} 13728 13729// SetDescription sets the Description field's value. 13730func (s *UpdateQueueInput) SetDescription(v string) *UpdateQueueInput { 13731 s.Description = &v 13732 return s 13733} 13734 13735// SetName sets the Name field's value. 13736func (s *UpdateQueueInput) SetName(v string) *UpdateQueueInput { 13737 s.Name = &v 13738 return s 13739} 13740 13741// SetStatus sets the Status field's value. 13742func (s *UpdateQueueInput) SetStatus(v string) *UpdateQueueInput { 13743 s.Status = &v 13744 return s 13745} 13746 13747// Successful update queue requests will return the new queue JSON. 13748type UpdateQueueOutput struct { 13749 _ struct{} `type:"structure"` 13750 13751 // MediaConvert jobs are submitted to a queue. Unless specified otherwise jobs 13752 // are submitted to a built-in default queue. User can create additional queues 13753 // to separate the jobs of different categories or priority. 13754 Queue *Queue `locationName:"queue" type:"structure"` 13755} 13756 13757// String returns the string representation 13758func (s UpdateQueueOutput) String() string { 13759 return awsutil.Prettify(s) 13760} 13761 13762// GoString returns the string representation 13763func (s UpdateQueueOutput) GoString() string { 13764 return s.String() 13765} 13766 13767// SetQueue sets the Queue field's value. 13768func (s *UpdateQueueOutput) SetQueue(v *Queue) *UpdateQueueOutput { 13769 s.Queue = v 13770 return s 13771} 13772 13773// Video codec settings, (CodecSettings) under (VideoDescription), contains 13774// the group of settings related to video encoding. The settings in this group 13775// vary depending on the value you choose for Video codec (Codec). For each 13776// codec enum you choose, define the corresponding settings object. The following 13777// lists the codec enum, settings object pairs. * H_264, H264Settings * H_265, 13778// H265Settings * MPEG2, Mpeg2Settings * PRORES, ProresSettings * FRAME_CAPTURE, 13779// FrameCaptureSettings 13780type VideoCodecSettings struct { 13781 _ struct{} `type:"structure"` 13782 13783 // Type of video codec 13784 // 13785 // Codec is a required field 13786 Codec *string `locationName:"codec" type:"string" required:"true" enum:"VideoCodec"` 13787 13788 // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to 13789 // the value FRAME_CAPTURE. 13790 FrameCaptureSettings *FrameCaptureSettings `locationName:"frameCaptureSettings" type:"structure"` 13791 13792 // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to 13793 // the value H_264. 13794 H264Settings *H264Settings `locationName:"h264Settings" type:"structure"` 13795 13796 // Settings for H265 codec 13797 H265Settings *H265Settings `locationName:"h265Settings" type:"structure"` 13798 13799 // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to 13800 // the value MPEG2. 13801 Mpeg2Settings *Mpeg2Settings `locationName:"mpeg2Settings" type:"structure"` 13802 13803 // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to 13804 // the value PRORES. 13805 ProresSettings *ProresSettings `locationName:"proresSettings" type:"structure"` 13806} 13807 13808// String returns the string representation 13809func (s VideoCodecSettings) String() string { 13810 return awsutil.Prettify(s) 13811} 13812 13813// GoString returns the string representation 13814func (s VideoCodecSettings) GoString() string { 13815 return s.String() 13816} 13817 13818// Validate inspects the fields of the type to determine if they are valid. 13819func (s *VideoCodecSettings) Validate() error { 13820 invalidParams := request.ErrInvalidParams{Context: "VideoCodecSettings"} 13821 if s.Codec == nil { 13822 invalidParams.Add(request.NewErrParamRequired("Codec")) 13823 } 13824 if s.FrameCaptureSettings != nil { 13825 if err := s.FrameCaptureSettings.Validate(); err != nil { 13826 invalidParams.AddNested("FrameCaptureSettings", err.(request.ErrInvalidParams)) 13827 } 13828 } 13829 if s.H264Settings != nil { 13830 if err := s.H264Settings.Validate(); err != nil { 13831 invalidParams.AddNested("H264Settings", err.(request.ErrInvalidParams)) 13832 } 13833 } 13834 if s.H265Settings != nil { 13835 if err := s.H265Settings.Validate(); err != nil { 13836 invalidParams.AddNested("H265Settings", err.(request.ErrInvalidParams)) 13837 } 13838 } 13839 if s.Mpeg2Settings != nil { 13840 if err := s.Mpeg2Settings.Validate(); err != nil { 13841 invalidParams.AddNested("Mpeg2Settings", err.(request.ErrInvalidParams)) 13842 } 13843 } 13844 if s.ProresSettings != nil { 13845 if err := s.ProresSettings.Validate(); err != nil { 13846 invalidParams.AddNested("ProresSettings", err.(request.ErrInvalidParams)) 13847 } 13848 } 13849 13850 if invalidParams.Len() > 0 { 13851 return invalidParams 13852 } 13853 return nil 13854} 13855 13856// SetCodec sets the Codec field's value. 13857func (s *VideoCodecSettings) SetCodec(v string) *VideoCodecSettings { 13858 s.Codec = &v 13859 return s 13860} 13861 13862// SetFrameCaptureSettings sets the FrameCaptureSettings field's value. 13863func (s *VideoCodecSettings) SetFrameCaptureSettings(v *FrameCaptureSettings) *VideoCodecSettings { 13864 s.FrameCaptureSettings = v 13865 return s 13866} 13867 13868// SetH264Settings sets the H264Settings field's value. 13869func (s *VideoCodecSettings) SetH264Settings(v *H264Settings) *VideoCodecSettings { 13870 s.H264Settings = v 13871 return s 13872} 13873 13874// SetH265Settings sets the H265Settings field's value. 13875func (s *VideoCodecSettings) SetH265Settings(v *H265Settings) *VideoCodecSettings { 13876 s.H265Settings = v 13877 return s 13878} 13879 13880// SetMpeg2Settings sets the Mpeg2Settings field's value. 13881func (s *VideoCodecSettings) SetMpeg2Settings(v *Mpeg2Settings) *VideoCodecSettings { 13882 s.Mpeg2Settings = v 13883 return s 13884} 13885 13886// SetProresSettings sets the ProresSettings field's value. 13887func (s *VideoCodecSettings) SetProresSettings(v *ProresSettings) *VideoCodecSettings { 13888 s.ProresSettings = v 13889 return s 13890} 13891 13892// Settings for video outputs 13893type VideoDescription struct { 13894 _ struct{} `type:"structure"` 13895 13896 // This setting only applies to H.264 and MPEG2 outputs. Use Insert AFD signaling 13897 // (AfdSignaling) to specify whether the service includes AFD values in the 13898 // output video data and what those values are. * Choose None to remove all 13899 // AFD values from this output. * Choose Fixed to ignore input AFD values and 13900 // instead encode the value specified in the job. * Choose Auto to calculate 13901 // output AFD values based on the input AFD scaler data. 13902 AfdSignaling *string `locationName:"afdSignaling" type:"string" enum:"AfdSignaling"` 13903 13904 // Enable Anti-alias (AntiAlias) to enhance sharp edges in video output when 13905 // your input resolution is much larger than your output resolution. Default 13906 // is enabled. 13907 AntiAlias *string `locationName:"antiAlias" type:"string" enum:"AntiAlias"` 13908 13909 // Video codec settings, (CodecSettings) under (VideoDescription), contains 13910 // the group of settings related to video encoding. The settings in this group 13911 // vary depending on the value you choose for Video codec (Codec). For each 13912 // codec enum you choose, define the corresponding settings object. The following 13913 // lists the codec enum, settings object pairs. * H_264, H264Settings * H_265, 13914 // H265Settings * MPEG2, Mpeg2Settings * PRORES, ProresSettings * FRAME_CAPTURE, 13915 // FrameCaptureSettings 13916 // 13917 // CodecSettings is a required field 13918 CodecSettings *VideoCodecSettings `locationName:"codecSettings" type:"structure" required:"true"` 13919 13920 // Enable Insert color metadata (ColorMetadata) to include color metadata in 13921 // this output. This setting is enabled by default. 13922 ColorMetadata *string `locationName:"colorMetadata" type:"string" enum:"ColorMetadata"` 13923 13924 // Applies only if your input aspect ratio is different from your output aspect 13925 // ratio. Use Input cropping rectangle (Crop) to specify the video area the 13926 // service will include in the output. This will crop the input source, causing 13927 // video pixels to be removed on encode. Do not use this setting if you have 13928 // enabled Stretch to output (stretchToOutput) in your output settings. 13929 Crop *Rectangle `locationName:"crop" type:"structure"` 13930 13931 // Applies only to 29.97 fps outputs. When this feature is enabled, the service 13932 // will use drop-frame timecode on outputs. If it is not possible to use drop-frame 13933 // timecode, the system will fall back to non-drop-frame. This setting is enabled 13934 // by default when Timecode insertion (TimecodeInsertion) is enabled. 13935 DropFrameTimecode *string `locationName:"dropFrameTimecode" type:"string" enum:"DropFrameTimecode"` 13936 13937 // Applies only if you set AFD Signaling(AfdSignaling) to Fixed (FIXED). Use 13938 // Fixed (FixedAfd) to specify a four-bit AFD value which the service will write 13939 // on all frames of this video output. 13940 FixedAfd *int64 `locationName:"fixedAfd" type:"integer"` 13941 13942 // Use the Height (Height) setting to define the video resolution height for 13943 // this output. Specify in pixels. If you don't provide a value here, the service 13944 // will use the input height. 13945 Height *int64 `locationName:"height" min:"32" type:"integer"` 13946 13947 // Use Position (Position) to point to a rectangle object to define your position. 13948 // This setting overrides any other aspect ratio. 13949 Position *Rectangle `locationName:"position" type:"structure"` 13950 13951 // Use Respond to AFD (RespondToAfd) to specify how the service changes the 13952 // video itself in response to AFD values in the input. * Choose Respond to 13953 // clip the input video frame according to the AFD value, input display aspect 13954 // ratio, and output display aspect ratio. * Choose Passthrough to include the 13955 // input AFD values. Do not choose this when AfdSignaling is set to (NONE). 13956 // A preferred implementation of this workflow is to set RespondToAfd to (NONE) 13957 // and set AfdSignaling to (AUTO). * Choose None to remove all input AFD values 13958 // from this output. 13959 RespondToAfd *string `locationName:"respondToAfd" type:"string" enum:"RespondToAfd"` 13960 13961 // Applies only if your input aspect ratio is different from your output aspect 13962 // ratio. Enable Stretch to output (StretchToOutput) to have the service stretch 13963 // your video image to fit. Leave this setting disabled to allow the service 13964 // to letterbox your video instead. This setting overrides any positioning value 13965 // you specify elsewhere in the job. 13966 ScalingBehavior *string `locationName:"scalingBehavior" type:"string" enum:"ScalingBehavior"` 13967 13968 // Use Sharpness (Sharpness)setting to specify the strength of anti-aliasing. 13969 // This setting changes the width of the anti-alias filter kernel used for scaling. 13970 // Sharpness only applies if your output resolution is different from your input 13971 // resolution, and if you set Anti-alias (AntiAlias) to ENABLED. 0 is the softest 13972 // setting, 100 the sharpest, and 50 recommended for most content. 13973 Sharpness *int64 `locationName:"sharpness" type:"integer"` 13974 13975 // Applies only to H.264, H.265, MPEG2, and ProRes outputs. Only enable Timecode 13976 // insertion when the input framerate is identical to the output framerate. 13977 // To include timecodes in this output, set Timecode insertion (VideoTimecodeInsertion) 13978 // to PIC_TIMING_SEI. To leave them out, set it to DISABLED. Default is DISABLED. 13979 // When the service inserts timecodes in an output, by default, it uses any 13980 // embedded timecodes from the input. If none are present, the service will 13981 // set the timecode for the first output frame to zero. To change this default 13982 // behavior, adjust the settings under Timecode configuration (TimecodeConfig). 13983 // In the console, these settings are located under Job > Job settings > Timecode 13984 // configuration. Note - Timecode source under input settings (InputTimecodeSource) 13985 // does not affect the timecodes that are inserted in the output. Source under 13986 // Job settings > Timecode configuration (TimecodeSource) does. 13987 TimecodeInsertion *string `locationName:"timecodeInsertion" type:"string" enum:"VideoTimecodeInsertion"` 13988 13989 // Find additional transcoding features under Preprocessors (VideoPreprocessors). 13990 // Enable the features at each output individually. These features are disabled 13991 // by default. 13992 VideoPreprocessors *VideoPreprocessor `locationName:"videoPreprocessors" type:"structure"` 13993 13994 // Use Width (Width) to define the video resolution width, in pixels, for this 13995 // output. If you don't provide a value here, the service will use the input 13996 // width. 13997 Width *int64 `locationName:"width" min:"32" type:"integer"` 13998} 13999 14000// String returns the string representation 14001func (s VideoDescription) String() string { 14002 return awsutil.Prettify(s) 14003} 14004 14005// GoString returns the string representation 14006func (s VideoDescription) GoString() string { 14007 return s.String() 14008} 14009 14010// Validate inspects the fields of the type to determine if they are valid. 14011func (s *VideoDescription) Validate() error { 14012 invalidParams := request.ErrInvalidParams{Context: "VideoDescription"} 14013 if s.CodecSettings == nil { 14014 invalidParams.Add(request.NewErrParamRequired("CodecSettings")) 14015 } 14016 if s.Height != nil && *s.Height < 32 { 14017 invalidParams.Add(request.NewErrParamMinValue("Height", 32)) 14018 } 14019 if s.Width != nil && *s.Width < 32 { 14020 invalidParams.Add(request.NewErrParamMinValue("Width", 32)) 14021 } 14022 if s.CodecSettings != nil { 14023 if err := s.CodecSettings.Validate(); err != nil { 14024 invalidParams.AddNested("CodecSettings", err.(request.ErrInvalidParams)) 14025 } 14026 } 14027 if s.Crop != nil { 14028 if err := s.Crop.Validate(); err != nil { 14029 invalidParams.AddNested("Crop", err.(request.ErrInvalidParams)) 14030 } 14031 } 14032 if s.Position != nil { 14033 if err := s.Position.Validate(); err != nil { 14034 invalidParams.AddNested("Position", err.(request.ErrInvalidParams)) 14035 } 14036 } 14037 if s.VideoPreprocessors != nil { 14038 if err := s.VideoPreprocessors.Validate(); err != nil { 14039 invalidParams.AddNested("VideoPreprocessors", err.(request.ErrInvalidParams)) 14040 } 14041 } 14042 14043 if invalidParams.Len() > 0 { 14044 return invalidParams 14045 } 14046 return nil 14047} 14048 14049// SetAfdSignaling sets the AfdSignaling field's value. 14050func (s *VideoDescription) SetAfdSignaling(v string) *VideoDescription { 14051 s.AfdSignaling = &v 14052 return s 14053} 14054 14055// SetAntiAlias sets the AntiAlias field's value. 14056func (s *VideoDescription) SetAntiAlias(v string) *VideoDescription { 14057 s.AntiAlias = &v 14058 return s 14059} 14060 14061// SetCodecSettings sets the CodecSettings field's value. 14062func (s *VideoDescription) SetCodecSettings(v *VideoCodecSettings) *VideoDescription { 14063 s.CodecSettings = v 14064 return s 14065} 14066 14067// SetColorMetadata sets the ColorMetadata field's value. 14068func (s *VideoDescription) SetColorMetadata(v string) *VideoDescription { 14069 s.ColorMetadata = &v 14070 return s 14071} 14072 14073// SetCrop sets the Crop field's value. 14074func (s *VideoDescription) SetCrop(v *Rectangle) *VideoDescription { 14075 s.Crop = v 14076 return s 14077} 14078 14079// SetDropFrameTimecode sets the DropFrameTimecode field's value. 14080func (s *VideoDescription) SetDropFrameTimecode(v string) *VideoDescription { 14081 s.DropFrameTimecode = &v 14082 return s 14083} 14084 14085// SetFixedAfd sets the FixedAfd field's value. 14086func (s *VideoDescription) SetFixedAfd(v int64) *VideoDescription { 14087 s.FixedAfd = &v 14088 return s 14089} 14090 14091// SetHeight sets the Height field's value. 14092func (s *VideoDescription) SetHeight(v int64) *VideoDescription { 14093 s.Height = &v 14094 return s 14095} 14096 14097// SetPosition sets the Position field's value. 14098func (s *VideoDescription) SetPosition(v *Rectangle) *VideoDescription { 14099 s.Position = v 14100 return s 14101} 14102 14103// SetRespondToAfd sets the RespondToAfd field's value. 14104func (s *VideoDescription) SetRespondToAfd(v string) *VideoDescription { 14105 s.RespondToAfd = &v 14106 return s 14107} 14108 14109// SetScalingBehavior sets the ScalingBehavior field's value. 14110func (s *VideoDescription) SetScalingBehavior(v string) *VideoDescription { 14111 s.ScalingBehavior = &v 14112 return s 14113} 14114 14115// SetSharpness sets the Sharpness field's value. 14116func (s *VideoDescription) SetSharpness(v int64) *VideoDescription { 14117 s.Sharpness = &v 14118 return s 14119} 14120 14121// SetTimecodeInsertion sets the TimecodeInsertion field's value. 14122func (s *VideoDescription) SetTimecodeInsertion(v string) *VideoDescription { 14123 s.TimecodeInsertion = &v 14124 return s 14125} 14126 14127// SetVideoPreprocessors sets the VideoPreprocessors field's value. 14128func (s *VideoDescription) SetVideoPreprocessors(v *VideoPreprocessor) *VideoDescription { 14129 s.VideoPreprocessors = v 14130 return s 14131} 14132 14133// SetWidth sets the Width field's value. 14134func (s *VideoDescription) SetWidth(v int64) *VideoDescription { 14135 s.Width = &v 14136 return s 14137} 14138 14139// Contains details about the output's video stream 14140type VideoDetail struct { 14141 _ struct{} `type:"structure"` 14142 14143 // Height in pixels for the output 14144 HeightInPx *int64 `locationName:"heightInPx" type:"integer"` 14145 14146 // Width in pixels for the output 14147 WidthInPx *int64 `locationName:"widthInPx" type:"integer"` 14148} 14149 14150// String returns the string representation 14151func (s VideoDetail) String() string { 14152 return awsutil.Prettify(s) 14153} 14154 14155// GoString returns the string representation 14156func (s VideoDetail) GoString() string { 14157 return s.String() 14158} 14159 14160// SetHeightInPx sets the HeightInPx field's value. 14161func (s *VideoDetail) SetHeightInPx(v int64) *VideoDetail { 14162 s.HeightInPx = &v 14163 return s 14164} 14165 14166// SetWidthInPx sets the WidthInPx field's value. 14167func (s *VideoDetail) SetWidthInPx(v int64) *VideoDetail { 14168 s.WidthInPx = &v 14169 return s 14170} 14171 14172// Find additional transcoding features under Preprocessors (VideoPreprocessors). 14173// Enable the features at each output individually. These features are disabled 14174// by default. 14175type VideoPreprocessor struct { 14176 _ struct{} `type:"structure"` 14177 14178 // Enable the Color corrector (ColorCorrector) feature if necessary. Enable 14179 // or disable this feature for each output individually. This setting is disabled 14180 // by default. 14181 ColorCorrector *ColorCorrector `locationName:"colorCorrector" type:"structure"` 14182 14183 // Use Deinterlacer (Deinterlacer) to produce smoother motion and a clearer 14184 // picture. 14185 Deinterlacer *Deinterlacer `locationName:"deinterlacer" type:"structure"` 14186 14187 // Enable the Image inserter (ImageInserter) feature to include a graphic overlay 14188 // on your video. Enable or disable this feature for each output individually. 14189 // This setting is disabled by default. 14190 ImageInserter *ImageInserter `locationName:"imageInserter" type:"structure"` 14191 14192 // Enable the Noise reducer (NoiseReducer) feature to remove noise from your 14193 // video output if necessary. Enable or disable this feature for each output 14194 // individually. This setting is disabled by default. 14195 NoiseReducer *NoiseReducer `locationName:"noiseReducer" type:"structure"` 14196 14197 // Timecode burn-in (TimecodeBurnIn)--Burns the output timecode and specified 14198 // prefix into the output. 14199 TimecodeBurnin *TimecodeBurnin `locationName:"timecodeBurnin" type:"structure"` 14200} 14201 14202// String returns the string representation 14203func (s VideoPreprocessor) String() string { 14204 return awsutil.Prettify(s) 14205} 14206 14207// GoString returns the string representation 14208func (s VideoPreprocessor) GoString() string { 14209 return s.String() 14210} 14211 14212// Validate inspects the fields of the type to determine if they are valid. 14213func (s *VideoPreprocessor) Validate() error { 14214 invalidParams := request.ErrInvalidParams{Context: "VideoPreprocessor"} 14215 if s.ColorCorrector != nil { 14216 if err := s.ColorCorrector.Validate(); err != nil { 14217 invalidParams.AddNested("ColorCorrector", err.(request.ErrInvalidParams)) 14218 } 14219 } 14220 if s.ImageInserter != nil { 14221 if err := s.ImageInserter.Validate(); err != nil { 14222 invalidParams.AddNested("ImageInserter", err.(request.ErrInvalidParams)) 14223 } 14224 } 14225 if s.NoiseReducer != nil { 14226 if err := s.NoiseReducer.Validate(); err != nil { 14227 invalidParams.AddNested("NoiseReducer", err.(request.ErrInvalidParams)) 14228 } 14229 } 14230 if s.TimecodeBurnin != nil { 14231 if err := s.TimecodeBurnin.Validate(); err != nil { 14232 invalidParams.AddNested("TimecodeBurnin", err.(request.ErrInvalidParams)) 14233 } 14234 } 14235 14236 if invalidParams.Len() > 0 { 14237 return invalidParams 14238 } 14239 return nil 14240} 14241 14242// SetColorCorrector sets the ColorCorrector field's value. 14243func (s *VideoPreprocessor) SetColorCorrector(v *ColorCorrector) *VideoPreprocessor { 14244 s.ColorCorrector = v 14245 return s 14246} 14247 14248// SetDeinterlacer sets the Deinterlacer field's value. 14249func (s *VideoPreprocessor) SetDeinterlacer(v *Deinterlacer) *VideoPreprocessor { 14250 s.Deinterlacer = v 14251 return s 14252} 14253 14254// SetImageInserter sets the ImageInserter field's value. 14255func (s *VideoPreprocessor) SetImageInserter(v *ImageInserter) *VideoPreprocessor { 14256 s.ImageInserter = v 14257 return s 14258} 14259 14260// SetNoiseReducer sets the NoiseReducer field's value. 14261func (s *VideoPreprocessor) SetNoiseReducer(v *NoiseReducer) *VideoPreprocessor { 14262 s.NoiseReducer = v 14263 return s 14264} 14265 14266// SetTimecodeBurnin sets the TimecodeBurnin field's value. 14267func (s *VideoPreprocessor) SetTimecodeBurnin(v *TimecodeBurnin) *VideoPreprocessor { 14268 s.TimecodeBurnin = v 14269 return s 14270} 14271 14272// Selector for video. 14273type VideoSelector struct { 14274 _ struct{} `type:"structure"` 14275 14276 // If your input video has accurate color space metadata, or if you don't know 14277 // about color space, leave this set to the default value FOLLOW. The service 14278 // will automatically detect your input color space. If your input video has 14279 // metadata indicating the wrong color space, or if your input video is missing 14280 // color space metadata that should be there, specify the accurate color space 14281 // here. If you choose HDR10, you can also correct inaccurate color space coefficients, 14282 // using the HDR master display information controls. You must also set Color 14283 // space usage (ColorSpaceUsage) to FORCE for the service to use these values. 14284 ColorSpace *string `locationName:"colorSpace" type:"string" enum:"ColorSpace"` 14285 14286 // There are two sources for color metadata, the input file and the job configuration 14287 // (in the Color space and HDR master display informaiton settings). The Color 14288 // space usage setting controls which takes precedence. FORCE: The system will 14289 // use color metadata supplied by user, if any. If the user does not supply 14290 // color metadata, the system will use data from the source. FALLBACK: The system 14291 // will use color metadata from the source. If source has no color metadata, 14292 // the system will use user-supplied color metadata values if available. 14293 ColorSpaceUsage *string `locationName:"colorSpaceUsage" type:"string" enum:"ColorSpaceUsage"` 14294 14295 // Use the HDR master display (Hdr10Metadata) settings to correct HDR metadata 14296 // or to provide missing metadata. These values vary depending on the input 14297 // video and must be provided by a color grader. Range is 0 to 50,000, each 14298 // increment represents 0.00002 in CIE1931 color coordinate. Note that these 14299 // settings are not color correction. Note that if you are creating HDR outputs 14300 // inside of an HLS CMAF package, to comply with the Apple specification, you 14301 // must use the HVC1 for H.265 setting. 14302 Hdr10Metadata *Hdr10Metadata `locationName:"hdr10Metadata" type:"structure"` 14303 14304 // Use PID (Pid) to select specific video data from an input file. Specify this 14305 // value as an integer; the system automatically converts it to the hexidecimal 14306 // value. For example, 257 selects PID 0x101. A PID, or packet identifier, is 14307 // an identifier for a set of data in an MPEG-2 transport stream container. 14308 Pid *int64 `locationName:"pid" min:"1" type:"integer"` 14309 14310 // Selects a specific program from within a multi-program transport stream. 14311 // Note that Quad 4K is not currently supported. 14312 ProgramNumber *int64 `locationName:"programNumber" type:"integer"` 14313} 14314 14315// String returns the string representation 14316func (s VideoSelector) String() string { 14317 return awsutil.Prettify(s) 14318} 14319 14320// GoString returns the string representation 14321func (s VideoSelector) GoString() string { 14322 return s.String() 14323} 14324 14325// Validate inspects the fields of the type to determine if they are valid. 14326func (s *VideoSelector) Validate() error { 14327 invalidParams := request.ErrInvalidParams{Context: "VideoSelector"} 14328 if s.Pid != nil && *s.Pid < 1 { 14329 invalidParams.Add(request.NewErrParamMinValue("Pid", 1)) 14330 } 14331 if s.ProgramNumber != nil && *s.ProgramNumber < -2.147483648e+09 { 14332 invalidParams.Add(request.NewErrParamMinValue("ProgramNumber", -2.147483648e+09)) 14333 } 14334 if s.Hdr10Metadata != nil { 14335 if err := s.Hdr10Metadata.Validate(); err != nil { 14336 invalidParams.AddNested("Hdr10Metadata", err.(request.ErrInvalidParams)) 14337 } 14338 } 14339 14340 if invalidParams.Len() > 0 { 14341 return invalidParams 14342 } 14343 return nil 14344} 14345 14346// SetColorSpace sets the ColorSpace field's value. 14347func (s *VideoSelector) SetColorSpace(v string) *VideoSelector { 14348 s.ColorSpace = &v 14349 return s 14350} 14351 14352// SetColorSpaceUsage sets the ColorSpaceUsage field's value. 14353func (s *VideoSelector) SetColorSpaceUsage(v string) *VideoSelector { 14354 s.ColorSpaceUsage = &v 14355 return s 14356} 14357 14358// SetHdr10Metadata sets the Hdr10Metadata field's value. 14359func (s *VideoSelector) SetHdr10Metadata(v *Hdr10Metadata) *VideoSelector { 14360 s.Hdr10Metadata = v 14361 return s 14362} 14363 14364// SetPid sets the Pid field's value. 14365func (s *VideoSelector) SetPid(v int64) *VideoSelector { 14366 s.Pid = &v 14367 return s 14368} 14369 14370// SetProgramNumber sets the ProgramNumber field's value. 14371func (s *VideoSelector) SetProgramNumber(v int64) *VideoSelector { 14372 s.ProgramNumber = &v 14373 return s 14374} 14375 14376// Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to 14377// the value WAV. 14378type WavSettings struct { 14379 _ struct{} `type:"structure"` 14380 14381 // Specify Bit depth (BitDepth), in bits per sample, to choose the encoding 14382 // quality for this audio track. 14383 BitDepth *int64 `locationName:"bitDepth" min:"16" type:"integer"` 14384 14385 // Set Channels to specify the number of channels in this output audio track. 14386 // With WAV, valid values 1, 2, 4, and 8. In the console, these values are Mono, 14387 // Stereo, 4-Channel, and 8-Channel, respectively. 14388 Channels *int64 `locationName:"channels" min:"1" type:"integer"` 14389 14390 // The service defaults to using RIFF for WAV outputs. If your output audio 14391 // is likely to exceed 4 GB in file size, or if you otherwise need the extended 14392 // support of the RF64 format, set your output WAV file format to RF64. 14393 Format *string `locationName:"format" type:"string" enum:"WavFormat"` 14394 14395 // Sample rate in Hz. 14396 SampleRate *int64 `locationName:"sampleRate" min:"8000" type:"integer"` 14397} 14398 14399// String returns the string representation 14400func (s WavSettings) String() string { 14401 return awsutil.Prettify(s) 14402} 14403 14404// GoString returns the string representation 14405func (s WavSettings) GoString() string { 14406 return s.String() 14407} 14408 14409// Validate inspects the fields of the type to determine if they are valid. 14410func (s *WavSettings) Validate() error { 14411 invalidParams := request.ErrInvalidParams{Context: "WavSettings"} 14412 if s.BitDepth != nil && *s.BitDepth < 16 { 14413 invalidParams.Add(request.NewErrParamMinValue("BitDepth", 16)) 14414 } 14415 if s.Channels != nil && *s.Channels < 1 { 14416 invalidParams.Add(request.NewErrParamMinValue("Channels", 1)) 14417 } 14418 if s.SampleRate != nil && *s.SampleRate < 8000 { 14419 invalidParams.Add(request.NewErrParamMinValue("SampleRate", 8000)) 14420 } 14421 14422 if invalidParams.Len() > 0 { 14423 return invalidParams 14424 } 14425 return nil 14426} 14427 14428// SetBitDepth sets the BitDepth field's value. 14429func (s *WavSettings) SetBitDepth(v int64) *WavSettings { 14430 s.BitDepth = &v 14431 return s 14432} 14433 14434// SetChannels sets the Channels field's value. 14435func (s *WavSettings) SetChannels(v int64) *WavSettings { 14436 s.Channels = &v 14437 return s 14438} 14439 14440// SetFormat sets the Format field's value. 14441func (s *WavSettings) SetFormat(v string) *WavSettings { 14442 s.Format = &v 14443 return s 14444} 14445 14446// SetSampleRate sets the SampleRate field's value. 14447func (s *WavSettings) SetSampleRate(v int64) *WavSettings { 14448 s.SampleRate = &v 14449 return s 14450} 14451 14452// Choose BROADCASTER_MIXED_AD when the input contains pre-mixed main audio 14453// + audio description (AD) as a stereo pair. The value for AudioType will be 14454// set to 3, which signals to downstream systems that this stream contains "broadcaster 14455// mixed AD". Note that the input received by the encoder must contain pre-mixed 14456// audio; the encoder does not perform the mixing. When you choose BROADCASTER_MIXED_AD, 14457// the encoder ignores any values you provide in AudioType and FollowInputAudioType. 14458// Choose NORMAL when the input does not contain pre-mixed audio + audio description 14459// (AD). In this case, the encoder will use any values you provide for AudioType 14460// and FollowInputAudioType. 14461const ( 14462 // AacAudioDescriptionBroadcasterMixBroadcasterMixedAd is a AacAudioDescriptionBroadcasterMix enum value 14463 AacAudioDescriptionBroadcasterMixBroadcasterMixedAd = "BROADCASTER_MIXED_AD" 14464 14465 // AacAudioDescriptionBroadcasterMixNormal is a AacAudioDescriptionBroadcasterMix enum value 14466 AacAudioDescriptionBroadcasterMixNormal = "NORMAL" 14467) 14468 14469// AAC Profile. 14470const ( 14471 // AacCodecProfileLc is a AacCodecProfile enum value 14472 AacCodecProfileLc = "LC" 14473 14474 // AacCodecProfileHev1 is a AacCodecProfile enum value 14475 AacCodecProfileHev1 = "HEV1" 14476 14477 // AacCodecProfileHev2 is a AacCodecProfile enum value 14478 AacCodecProfileHev2 = "HEV2" 14479) 14480 14481// Mono (Audio Description), Mono, Stereo, or 5.1 channel layout. Valid values 14482// depend on rate control mode and profile. "1.0 - Audio Description (Receiver 14483// Mix)" setting receives a stereo description plus control track and emits 14484// a mono AAC encode of the description track, with control data emitted in 14485// the PES header as per ETSI TS 101 154 Annex E. 14486const ( 14487 // AacCodingModeAdReceiverMix is a AacCodingMode enum value 14488 AacCodingModeAdReceiverMix = "AD_RECEIVER_MIX" 14489 14490 // AacCodingModeCodingMode10 is a AacCodingMode enum value 14491 AacCodingModeCodingMode10 = "CODING_MODE_1_0" 14492 14493 // AacCodingModeCodingMode11 is a AacCodingMode enum value 14494 AacCodingModeCodingMode11 = "CODING_MODE_1_1" 14495 14496 // AacCodingModeCodingMode20 is a AacCodingMode enum value 14497 AacCodingModeCodingMode20 = "CODING_MODE_2_0" 14498 14499 // AacCodingModeCodingMode51 is a AacCodingMode enum value 14500 AacCodingModeCodingMode51 = "CODING_MODE_5_1" 14501) 14502 14503// Rate Control Mode. 14504const ( 14505 // AacRateControlModeCbr is a AacRateControlMode enum value 14506 AacRateControlModeCbr = "CBR" 14507 14508 // AacRateControlModeVbr is a AacRateControlMode enum value 14509 AacRateControlModeVbr = "VBR" 14510) 14511 14512// Enables LATM/LOAS AAC output. Note that if you use LATM/LOAS AAC in an output, 14513// you must choose "No container" for the output container. 14514const ( 14515 // AacRawFormatLatmLoas is a AacRawFormat enum value 14516 AacRawFormatLatmLoas = "LATM_LOAS" 14517 14518 // AacRawFormatNone is a AacRawFormat enum value 14519 AacRawFormatNone = "NONE" 14520) 14521 14522// Use MPEG-2 AAC instead of MPEG-4 AAC audio for raw or MPEG-2 Transport Stream 14523// containers. 14524const ( 14525 // AacSpecificationMpeg2 is a AacSpecification enum value 14526 AacSpecificationMpeg2 = "MPEG2" 14527 14528 // AacSpecificationMpeg4 is a AacSpecification enum value 14529 AacSpecificationMpeg4 = "MPEG4" 14530) 14531 14532// VBR Quality Level - Only used if rate_control_mode is VBR. 14533const ( 14534 // AacVbrQualityLow is a AacVbrQuality enum value 14535 AacVbrQualityLow = "LOW" 14536 14537 // AacVbrQualityMediumLow is a AacVbrQuality enum value 14538 AacVbrQualityMediumLow = "MEDIUM_LOW" 14539 14540 // AacVbrQualityMediumHigh is a AacVbrQuality enum value 14541 AacVbrQualityMediumHigh = "MEDIUM_HIGH" 14542 14543 // AacVbrQualityHigh is a AacVbrQuality enum value 14544 AacVbrQualityHigh = "HIGH" 14545) 14546 14547// Specifies the "Bitstream Mode" (bsmod) for the emitted AC-3 stream. See ATSC 14548// A/52-2012 for background on these values. 14549const ( 14550 // Ac3BitstreamModeCompleteMain is a Ac3BitstreamMode enum value 14551 Ac3BitstreamModeCompleteMain = "COMPLETE_MAIN" 14552 14553 // Ac3BitstreamModeCommentary is a Ac3BitstreamMode enum value 14554 Ac3BitstreamModeCommentary = "COMMENTARY" 14555 14556 // Ac3BitstreamModeDialogue is a Ac3BitstreamMode enum value 14557 Ac3BitstreamModeDialogue = "DIALOGUE" 14558 14559 // Ac3BitstreamModeEmergency is a Ac3BitstreamMode enum value 14560 Ac3BitstreamModeEmergency = "EMERGENCY" 14561 14562 // Ac3BitstreamModeHearingImpaired is a Ac3BitstreamMode enum value 14563 Ac3BitstreamModeHearingImpaired = "HEARING_IMPAIRED" 14564 14565 // Ac3BitstreamModeMusicAndEffects is a Ac3BitstreamMode enum value 14566 Ac3BitstreamModeMusicAndEffects = "MUSIC_AND_EFFECTS" 14567 14568 // Ac3BitstreamModeVisuallyImpaired is a Ac3BitstreamMode enum value 14569 Ac3BitstreamModeVisuallyImpaired = "VISUALLY_IMPAIRED" 14570 14571 // Ac3BitstreamModeVoiceOver is a Ac3BitstreamMode enum value 14572 Ac3BitstreamModeVoiceOver = "VOICE_OVER" 14573) 14574 14575// Dolby Digital coding mode. Determines number of channels. 14576const ( 14577 // Ac3CodingModeCodingMode10 is a Ac3CodingMode enum value 14578 Ac3CodingModeCodingMode10 = "CODING_MODE_1_0" 14579 14580 // Ac3CodingModeCodingMode11 is a Ac3CodingMode enum value 14581 Ac3CodingModeCodingMode11 = "CODING_MODE_1_1" 14582 14583 // Ac3CodingModeCodingMode20 is a Ac3CodingMode enum value 14584 Ac3CodingModeCodingMode20 = "CODING_MODE_2_0" 14585 14586 // Ac3CodingModeCodingMode32Lfe is a Ac3CodingMode enum value 14587 Ac3CodingModeCodingMode32Lfe = "CODING_MODE_3_2_LFE" 14588) 14589 14590// If set to FILM_STANDARD, adds dynamic range compression signaling to the 14591// output bitstream as defined in the Dolby Digital specification. 14592const ( 14593 // Ac3DynamicRangeCompressionProfileFilmStandard is a Ac3DynamicRangeCompressionProfile enum value 14594 Ac3DynamicRangeCompressionProfileFilmStandard = "FILM_STANDARD" 14595 14596 // Ac3DynamicRangeCompressionProfileNone is a Ac3DynamicRangeCompressionProfile enum value 14597 Ac3DynamicRangeCompressionProfileNone = "NONE" 14598) 14599 14600// Applies a 120Hz lowpass filter to the LFE channel prior to encoding. Only 14601// valid with 3_2_LFE coding mode. 14602const ( 14603 // Ac3LfeFilterEnabled is a Ac3LfeFilter enum value 14604 Ac3LfeFilterEnabled = "ENABLED" 14605 14606 // Ac3LfeFilterDisabled is a Ac3LfeFilter enum value 14607 Ac3LfeFilterDisabled = "DISABLED" 14608) 14609 14610// When set to FOLLOW_INPUT, encoder metadata will be sourced from the DD, DD+, 14611// or DolbyE decoder that supplied this audio data. If audio was not supplied 14612// from one of these streams, then the static metadata settings will be used. 14613const ( 14614 // Ac3MetadataControlFollowInput is a Ac3MetadataControl enum value 14615 Ac3MetadataControlFollowInput = "FOLLOW_INPUT" 14616 14617 // Ac3MetadataControlUseConfigured is a Ac3MetadataControl enum value 14618 Ac3MetadataControlUseConfigured = "USE_CONFIGURED" 14619) 14620 14621// This setting only applies to H.264 and MPEG2 outputs. Use Insert AFD signaling 14622// (AfdSignaling) to specify whether the service includes AFD values in the 14623// output video data and what those values are. * Choose None to remove all 14624// AFD values from this output. * Choose Fixed to ignore input AFD values and 14625// instead encode the value specified in the job. * Choose Auto to calculate 14626// output AFD values based on the input AFD scaler data. 14627const ( 14628 // AfdSignalingNone is a AfdSignaling enum value 14629 AfdSignalingNone = "NONE" 14630 14631 // AfdSignalingAuto is a AfdSignaling enum value 14632 AfdSignalingAuto = "AUTO" 14633 14634 // AfdSignalingFixed is a AfdSignaling enum value 14635 AfdSignalingFixed = "FIXED" 14636) 14637 14638// Enable Anti-alias (AntiAlias) to enhance sharp edges in video output when 14639// your input resolution is much larger than your output resolution. Default 14640// is enabled. 14641const ( 14642 // AntiAliasDisabled is a AntiAlias enum value 14643 AntiAliasDisabled = "DISABLED" 14644 14645 // AntiAliasEnabled is a AntiAlias enum value 14646 AntiAliasEnabled = "ENABLED" 14647) 14648 14649// Type of Audio codec. 14650const ( 14651 // AudioCodecAac is a AudioCodec enum value 14652 AudioCodecAac = "AAC" 14653 14654 // AudioCodecMp2 is a AudioCodec enum value 14655 AudioCodecMp2 = "MP2" 14656 14657 // AudioCodecWav is a AudioCodec enum value 14658 AudioCodecWav = "WAV" 14659 14660 // AudioCodecAiff is a AudioCodec enum value 14661 AudioCodecAiff = "AIFF" 14662 14663 // AudioCodecAc3 is a AudioCodec enum value 14664 AudioCodecAc3 = "AC3" 14665 14666 // AudioCodecEac3 is a AudioCodec enum value 14667 AudioCodecEac3 = "EAC3" 14668 14669 // AudioCodecPassthrough is a AudioCodec enum value 14670 AudioCodecPassthrough = "PASSTHROUGH" 14671) 14672 14673// Enable this setting on one audio selector to set it as the default for the 14674// job. The service uses this default for outputs where it can't find the specified 14675// input audio. If you don't set a default, those outputs have no audio. 14676const ( 14677 // AudioDefaultSelectionDefault is a AudioDefaultSelection enum value 14678 AudioDefaultSelectionDefault = "DEFAULT" 14679 14680 // AudioDefaultSelectionNotDefault is a AudioDefaultSelection enum value 14681 AudioDefaultSelectionNotDefault = "NOT_DEFAULT" 14682) 14683 14684// Choosing FOLLOW_INPUT will cause the ISO 639 language code of the output 14685// to follow the ISO 639 language code of the input. The language specified 14686// for languageCode' will be used when USE_CONFIGURED is selected or when FOLLOW_INPUT 14687// is selected but there is no ISO 639 language code specified by the input. 14688const ( 14689 // AudioLanguageCodeControlFollowInput is a AudioLanguageCodeControl enum value 14690 AudioLanguageCodeControlFollowInput = "FOLLOW_INPUT" 14691 14692 // AudioLanguageCodeControlUseConfigured is a AudioLanguageCodeControl enum value 14693 AudioLanguageCodeControlUseConfigured = "USE_CONFIGURED" 14694) 14695 14696// Audio normalization algorithm to use. 1770-1 conforms to the CALM Act specification, 14697// 1770-2 conforms to the EBU R-128 specification. 14698const ( 14699 // AudioNormalizationAlgorithmItuBs17701 is a AudioNormalizationAlgorithm enum value 14700 AudioNormalizationAlgorithmItuBs17701 = "ITU_BS_1770_1" 14701 14702 // AudioNormalizationAlgorithmItuBs17702 is a AudioNormalizationAlgorithm enum value 14703 AudioNormalizationAlgorithmItuBs17702 = "ITU_BS_1770_2" 14704) 14705 14706// When enabled the output audio is corrected using the chosen algorithm. If 14707// disabled, the audio will be measured but not adjusted. 14708const ( 14709 // AudioNormalizationAlgorithmControlCorrectAudio is a AudioNormalizationAlgorithmControl enum value 14710 AudioNormalizationAlgorithmControlCorrectAudio = "CORRECT_AUDIO" 14711 14712 // AudioNormalizationAlgorithmControlMeasureOnly is a AudioNormalizationAlgorithmControl enum value 14713 AudioNormalizationAlgorithmControlMeasureOnly = "MEASURE_ONLY" 14714) 14715 14716// If set to LOG, log each output's audio track loudness to a CSV file. 14717const ( 14718 // AudioNormalizationLoudnessLoggingLog is a AudioNormalizationLoudnessLogging enum value 14719 AudioNormalizationLoudnessLoggingLog = "LOG" 14720 14721 // AudioNormalizationLoudnessLoggingDontLog is a AudioNormalizationLoudnessLogging enum value 14722 AudioNormalizationLoudnessLoggingDontLog = "DONT_LOG" 14723) 14724 14725// If set to TRUE_PEAK, calculate and log the TruePeak for each output's audio 14726// track loudness. 14727const ( 14728 // AudioNormalizationPeakCalculationTruePeak is a AudioNormalizationPeakCalculation enum value 14729 AudioNormalizationPeakCalculationTruePeak = "TRUE_PEAK" 14730 14731 // AudioNormalizationPeakCalculationNone is a AudioNormalizationPeakCalculation enum value 14732 AudioNormalizationPeakCalculationNone = "NONE" 14733) 14734 14735// Specifies the type of the audio selector. 14736const ( 14737 // AudioSelectorTypePid is a AudioSelectorType enum value 14738 AudioSelectorTypePid = "PID" 14739 14740 // AudioSelectorTypeTrack is a AudioSelectorType enum value 14741 AudioSelectorTypeTrack = "TRACK" 14742 14743 // AudioSelectorTypeLanguageCode is a AudioSelectorType enum value 14744 AudioSelectorTypeLanguageCode = "LANGUAGE_CODE" 14745) 14746 14747// When set to FOLLOW_INPUT, if the input contains an ISO 639 audio_type, then 14748// that value is passed through to the output. If the input contains no ISO 14749// 639 audio_type, the value in Audio Type is included in the output. Otherwise 14750// the value in Audio Type is included in the output. Note that this field and 14751// audioType are both ignored if audioDescriptionBroadcasterMix is set to BROADCASTER_MIXED_AD. 14752const ( 14753 // AudioTypeControlFollowInput is a AudioTypeControl enum value 14754 AudioTypeControlFollowInput = "FOLLOW_INPUT" 14755 14756 // AudioTypeControlUseConfigured is a AudioTypeControl enum value 14757 AudioTypeControlUseConfigured = "USE_CONFIGURED" 14758) 14759 14760// If no explicit x_position or y_position is provided, setting alignment to 14761// centered will place the captions at the bottom center of the output. Similarly, 14762// setting a left alignment will align captions to the bottom left of the output. 14763// If x and y positions are given in conjunction with the alignment parameter, 14764// the font will be justified (either left or centered) relative to those coordinates. 14765// This option is not valid for source captions that are STL, 608/embedded or 14766// teletext. These source settings are already pre-defined by the caption stream. 14767// All burn-in and DVB-Sub font settings must match. 14768const ( 14769 // BurninSubtitleAlignmentCentered is a BurninSubtitleAlignment enum value 14770 BurninSubtitleAlignmentCentered = "CENTERED" 14771 14772 // BurninSubtitleAlignmentLeft is a BurninSubtitleAlignment enum value 14773 BurninSubtitleAlignmentLeft = "LEFT" 14774) 14775 14776// Specifies the color of the rectangle behind the captions.All burn-in and 14777// DVB-Sub font settings must match. 14778const ( 14779 // BurninSubtitleBackgroundColorNone is a BurninSubtitleBackgroundColor enum value 14780 BurninSubtitleBackgroundColorNone = "NONE" 14781 14782 // BurninSubtitleBackgroundColorBlack is a BurninSubtitleBackgroundColor enum value 14783 BurninSubtitleBackgroundColorBlack = "BLACK" 14784 14785 // BurninSubtitleBackgroundColorWhite is a BurninSubtitleBackgroundColor enum value 14786 BurninSubtitleBackgroundColorWhite = "WHITE" 14787) 14788 14789// Specifies the color of the burned-in captions. This option is not valid for 14790// source captions that are STL, 608/embedded or teletext. These source settings 14791// are already pre-defined by the caption stream. All burn-in and DVB-Sub font 14792// settings must match. 14793const ( 14794 // BurninSubtitleFontColorWhite is a BurninSubtitleFontColor enum value 14795 BurninSubtitleFontColorWhite = "WHITE" 14796 14797 // BurninSubtitleFontColorBlack is a BurninSubtitleFontColor enum value 14798 BurninSubtitleFontColorBlack = "BLACK" 14799 14800 // BurninSubtitleFontColorYellow is a BurninSubtitleFontColor enum value 14801 BurninSubtitleFontColorYellow = "YELLOW" 14802 14803 // BurninSubtitleFontColorRed is a BurninSubtitleFontColor enum value 14804 BurninSubtitleFontColorRed = "RED" 14805 14806 // BurninSubtitleFontColorGreen is a BurninSubtitleFontColor enum value 14807 BurninSubtitleFontColorGreen = "GREEN" 14808 14809 // BurninSubtitleFontColorBlue is a BurninSubtitleFontColor enum value 14810 BurninSubtitleFontColorBlue = "BLUE" 14811) 14812 14813// Specifies font outline color. This option is not valid for source captions 14814// that are either 608/embedded or teletext. These source settings are already 14815// pre-defined by the caption stream. All burn-in and DVB-Sub font settings 14816// must match. 14817const ( 14818 // BurninSubtitleOutlineColorBlack is a BurninSubtitleOutlineColor enum value 14819 BurninSubtitleOutlineColorBlack = "BLACK" 14820 14821 // BurninSubtitleOutlineColorWhite is a BurninSubtitleOutlineColor enum value 14822 BurninSubtitleOutlineColorWhite = "WHITE" 14823 14824 // BurninSubtitleOutlineColorYellow is a BurninSubtitleOutlineColor enum value 14825 BurninSubtitleOutlineColorYellow = "YELLOW" 14826 14827 // BurninSubtitleOutlineColorRed is a BurninSubtitleOutlineColor enum value 14828 BurninSubtitleOutlineColorRed = "RED" 14829 14830 // BurninSubtitleOutlineColorGreen is a BurninSubtitleOutlineColor enum value 14831 BurninSubtitleOutlineColorGreen = "GREEN" 14832 14833 // BurninSubtitleOutlineColorBlue is a BurninSubtitleOutlineColor enum value 14834 BurninSubtitleOutlineColorBlue = "BLUE" 14835) 14836 14837// Specifies the color of the shadow cast by the captions.All burn-in and DVB-Sub 14838// font settings must match. 14839const ( 14840 // BurninSubtitleShadowColorNone is a BurninSubtitleShadowColor enum value 14841 BurninSubtitleShadowColorNone = "NONE" 14842 14843 // BurninSubtitleShadowColorBlack is a BurninSubtitleShadowColor enum value 14844 BurninSubtitleShadowColorBlack = "BLACK" 14845 14846 // BurninSubtitleShadowColorWhite is a BurninSubtitleShadowColor enum value 14847 BurninSubtitleShadowColorWhite = "WHITE" 14848) 14849 14850// Only applies to jobs with input captions in Teletext or STL formats. Specify 14851// whether the spacing between letters in your captions is set by the captions 14852// grid or varies depending on letter width. Choose fixed grid to conform to 14853// the spacing specified in the captions file more accurately. Choose proportional 14854// to make the text easier to read if the captions are closed caption. 14855const ( 14856 // BurninSubtitleTeletextSpacingFixedGrid is a BurninSubtitleTeletextSpacing enum value 14857 BurninSubtitleTeletextSpacingFixedGrid = "FIXED_GRID" 14858 14859 // BurninSubtitleTeletextSpacingProportional is a BurninSubtitleTeletextSpacing enum value 14860 BurninSubtitleTeletextSpacingProportional = "PROPORTIONAL" 14861) 14862 14863// Type of Caption output, including Burn-In, Embedded, SCC, SRT, TTML, WebVTT, 14864// DVB-Sub, Teletext. 14865const ( 14866 // CaptionDestinationTypeBurnIn is a CaptionDestinationType enum value 14867 CaptionDestinationTypeBurnIn = "BURN_IN" 14868 14869 // CaptionDestinationTypeDvbSub is a CaptionDestinationType enum value 14870 CaptionDestinationTypeDvbSub = "DVB_SUB" 14871 14872 // CaptionDestinationTypeEmbedded is a CaptionDestinationType enum value 14873 CaptionDestinationTypeEmbedded = "EMBEDDED" 14874 14875 // CaptionDestinationTypeScc is a CaptionDestinationType enum value 14876 CaptionDestinationTypeScc = "SCC" 14877 14878 // CaptionDestinationTypeSrt is a CaptionDestinationType enum value 14879 CaptionDestinationTypeSrt = "SRT" 14880 14881 // CaptionDestinationTypeTeletext is a CaptionDestinationType enum value 14882 CaptionDestinationTypeTeletext = "TELETEXT" 14883 14884 // CaptionDestinationTypeTtml is a CaptionDestinationType enum value 14885 CaptionDestinationTypeTtml = "TTML" 14886 14887 // CaptionDestinationTypeWebvtt is a CaptionDestinationType enum value 14888 CaptionDestinationTypeWebvtt = "WEBVTT" 14889) 14890 14891// Use Source (SourceType) to identify the format of your input captions. The 14892// service cannot auto-detect caption format. 14893const ( 14894 // CaptionSourceTypeAncillary is a CaptionSourceType enum value 14895 CaptionSourceTypeAncillary = "ANCILLARY" 14896 14897 // CaptionSourceTypeDvbSub is a CaptionSourceType enum value 14898 CaptionSourceTypeDvbSub = "DVB_SUB" 14899 14900 // CaptionSourceTypeEmbedded is a CaptionSourceType enum value 14901 CaptionSourceTypeEmbedded = "EMBEDDED" 14902 14903 // CaptionSourceTypeScc is a CaptionSourceType enum value 14904 CaptionSourceTypeScc = "SCC" 14905 14906 // CaptionSourceTypeTtml is a CaptionSourceType enum value 14907 CaptionSourceTypeTtml = "TTML" 14908 14909 // CaptionSourceTypeStl is a CaptionSourceType enum value 14910 CaptionSourceTypeStl = "STL" 14911 14912 // CaptionSourceTypeSrt is a CaptionSourceType enum value 14913 CaptionSourceTypeSrt = "SRT" 14914 14915 // CaptionSourceTypeTeletext is a CaptionSourceType enum value 14916 CaptionSourceTypeTeletext = "TELETEXT" 14917 14918 // CaptionSourceTypeNullSource is a CaptionSourceType enum value 14919 CaptionSourceTypeNullSource = "NULL_SOURCE" 14920) 14921 14922// When set to ENABLED, sets #EXT-X-ALLOW-CACHE:no tag, which prevents client 14923// from saving media segments for later replay. 14924const ( 14925 // CmafClientCacheDisabled is a CmafClientCache enum value 14926 CmafClientCacheDisabled = "DISABLED" 14927 14928 // CmafClientCacheEnabled is a CmafClientCache enum value 14929 CmafClientCacheEnabled = "ENABLED" 14930) 14931 14932// Specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist 14933// generation. 14934const ( 14935 // CmafCodecSpecificationRfc6381 is a CmafCodecSpecification enum value 14936 CmafCodecSpecificationRfc6381 = "RFC_6381" 14937 14938 // CmafCodecSpecificationRfc4281 is a CmafCodecSpecification enum value 14939 CmafCodecSpecificationRfc4281 = "RFC_4281" 14940) 14941 14942// Encrypts the segments with the given encryption scheme. Leave blank to disable. 14943// Selecting 'Disabled' in the web interface also disables encryption. 14944const ( 14945 // CmafEncryptionTypeSampleAes is a CmafEncryptionType enum value 14946 CmafEncryptionTypeSampleAes = "SAMPLE_AES" 14947) 14948 14949// The Initialization Vector is a 128-bit number used in conjunction with the 14950// key for encrypting blocks. If set to INCLUDE, Initialization Vector is listed 14951// in the manifest. Otherwise Initialization Vector is not in the manifest. 14952const ( 14953 // CmafInitializationVectorInManifestInclude is a CmafInitializationVectorInManifest enum value 14954 CmafInitializationVectorInManifestInclude = "INCLUDE" 14955 14956 // CmafInitializationVectorInManifestExclude is a CmafInitializationVectorInManifest enum value 14957 CmafInitializationVectorInManifestExclude = "EXCLUDE" 14958) 14959 14960// Indicates which type of key provider is used for encryption. 14961const ( 14962 // CmafKeyProviderTypeStaticKey is a CmafKeyProviderType enum value 14963 CmafKeyProviderTypeStaticKey = "STATIC_KEY" 14964) 14965 14966// When set to GZIP, compresses HLS playlist. 14967const ( 14968 // CmafManifestCompressionGzip is a CmafManifestCompression enum value 14969 CmafManifestCompressionGzip = "GZIP" 14970 14971 // CmafManifestCompressionNone is a CmafManifestCompression enum value 14972 CmafManifestCompressionNone = "NONE" 14973) 14974 14975// Indicates whether the output manifest should use floating point values for 14976// segment duration. 14977const ( 14978 // CmafManifestDurationFormatFloatingPoint is a CmafManifestDurationFormat enum value 14979 CmafManifestDurationFormatFloatingPoint = "FLOATING_POINT" 14980 14981 // CmafManifestDurationFormatInteger is a CmafManifestDurationFormat enum value 14982 CmafManifestDurationFormatInteger = "INTEGER" 14983) 14984 14985// When set to SINGLE_FILE, a single output file is generated, which is internally 14986// segmented using the Fragment Length and Segment Length. When set to SEGMENTED_FILES, 14987// separate segment files will be created. 14988const ( 14989 // CmafSegmentControlSingleFile is a CmafSegmentControl enum value 14990 CmafSegmentControlSingleFile = "SINGLE_FILE" 14991 14992 // CmafSegmentControlSegmentedFiles is a CmafSegmentControl enum value 14993 CmafSegmentControlSegmentedFiles = "SEGMENTED_FILES" 14994) 14995 14996// Include or exclude RESOLUTION attribute for video in EXT-X-STREAM-INF tag 14997// of variant manifest. 14998const ( 14999 // CmafStreamInfResolutionInclude is a CmafStreamInfResolution enum value 15000 CmafStreamInfResolutionInclude = "INCLUDE" 15001 15002 // CmafStreamInfResolutionExclude is a CmafStreamInfResolution enum value 15003 CmafStreamInfResolutionExclude = "EXCLUDE" 15004) 15005 15006// When set to ENABLED, a DASH MPD manifest will be generated for this output. 15007const ( 15008 // CmafWriteDASHManifestDisabled is a CmafWriteDASHManifest enum value 15009 CmafWriteDASHManifestDisabled = "DISABLED" 15010 15011 // CmafWriteDASHManifestEnabled is a CmafWriteDASHManifest enum value 15012 CmafWriteDASHManifestEnabled = "ENABLED" 15013) 15014 15015// When set to ENABLED, an Apple HLS manifest will be generated for this output. 15016const ( 15017 // CmafWriteHLSManifestDisabled is a CmafWriteHLSManifest enum value 15018 CmafWriteHLSManifestDisabled = "DISABLED" 15019 15020 // CmafWriteHLSManifestEnabled is a CmafWriteHLSManifest enum value 15021 CmafWriteHLSManifestEnabled = "ENABLED" 15022) 15023 15024// Enable Insert color metadata (ColorMetadata) to include color metadata in 15025// this output. This setting is enabled by default. 15026const ( 15027 // ColorMetadataIgnore is a ColorMetadata enum value 15028 ColorMetadataIgnore = "IGNORE" 15029 15030 // ColorMetadataInsert is a ColorMetadata enum value 15031 ColorMetadataInsert = "INSERT" 15032) 15033 15034// If your input video has accurate color space metadata, or if you don't know 15035// about color space, leave this set to the default value FOLLOW. The service 15036// will automatically detect your input color space. If your input video has 15037// metadata indicating the wrong color space, or if your input video is missing 15038// color space metadata that should be there, specify the accurate color space 15039// here. If you choose HDR10, you can also correct inaccurate color space coefficients, 15040// using the HDR master display information controls. You must also set Color 15041// space usage (ColorSpaceUsage) to FORCE for the service to use these values. 15042const ( 15043 // ColorSpaceFollow is a ColorSpace enum value 15044 ColorSpaceFollow = "FOLLOW" 15045 15046 // ColorSpaceRec601 is a ColorSpace enum value 15047 ColorSpaceRec601 = "REC_601" 15048 15049 // ColorSpaceRec709 is a ColorSpace enum value 15050 ColorSpaceRec709 = "REC_709" 15051 15052 // ColorSpaceHdr10 is a ColorSpace enum value 15053 ColorSpaceHdr10 = "HDR10" 15054 15055 // ColorSpaceHlg2020 is a ColorSpace enum value 15056 ColorSpaceHlg2020 = "HLG_2020" 15057) 15058 15059// Determines if colorspace conversion will be performed. If set to _None_, 15060// no conversion will be performed. If _Force 601_ or _Force 709_ are selected, 15061// conversion will be performed for inputs with differing colorspaces. An input's 15062// colorspace can be specified explicitly in the "Video Selector":#inputs-video_selector 15063// if necessary. 15064const ( 15065 // ColorSpaceConversionNone is a ColorSpaceConversion enum value 15066 ColorSpaceConversionNone = "NONE" 15067 15068 // ColorSpaceConversionForce601 is a ColorSpaceConversion enum value 15069 ColorSpaceConversionForce601 = "FORCE_601" 15070 15071 // ColorSpaceConversionForce709 is a ColorSpaceConversion enum value 15072 ColorSpaceConversionForce709 = "FORCE_709" 15073 15074 // ColorSpaceConversionForceHdr10 is a ColorSpaceConversion enum value 15075 ColorSpaceConversionForceHdr10 = "FORCE_HDR10" 15076 15077 // ColorSpaceConversionForceHlg2020 is a ColorSpaceConversion enum value 15078 ColorSpaceConversionForceHlg2020 = "FORCE_HLG_2020" 15079) 15080 15081// There are two sources for color metadata, the input file and the job configuration 15082// (in the Color space and HDR master display informaiton settings). The Color 15083// space usage setting controls which takes precedence. FORCE: The system will 15084// use color metadata supplied by user, if any. If the user does not supply 15085// color metadata, the system will use data from the source. FALLBACK: The system 15086// will use color metadata from the source. If source has no color metadata, 15087// the system will use user-supplied color metadata values if available. 15088const ( 15089 // ColorSpaceUsageForce is a ColorSpaceUsage enum value 15090 ColorSpaceUsageForce = "FORCE" 15091 15092 // ColorSpaceUsageFallback is a ColorSpaceUsage enum value 15093 ColorSpaceUsageFallback = "FALLBACK" 15094) 15095 15096// Container for this output. Some containers require a container settings object. 15097// If not specified, the default object will be created. 15098const ( 15099 // ContainerTypeF4v is a ContainerType enum value 15100 ContainerTypeF4v = "F4V" 15101 15102 // ContainerTypeIsmv is a ContainerType enum value 15103 ContainerTypeIsmv = "ISMV" 15104 15105 // ContainerTypeM2ts is a ContainerType enum value 15106 ContainerTypeM2ts = "M2TS" 15107 15108 // ContainerTypeM3u8 is a ContainerType enum value 15109 ContainerTypeM3u8 = "M3U8" 15110 15111 // ContainerTypeCmfc is a ContainerType enum value 15112 ContainerTypeCmfc = "CMFC" 15113 15114 // ContainerTypeMov is a ContainerType enum value 15115 ContainerTypeMov = "MOV" 15116 15117 // ContainerTypeMp4 is a ContainerType enum value 15118 ContainerTypeMp4 = "MP4" 15119 15120 // ContainerTypeMpd is a ContainerType enum value 15121 ContainerTypeMpd = "MPD" 15122 15123 // ContainerTypeMxf is a ContainerType enum value 15124 ContainerTypeMxf = "MXF" 15125 15126 // ContainerTypeRaw is a ContainerType enum value 15127 ContainerTypeRaw = "RAW" 15128) 15129 15130// Supports HbbTV specification as indicated 15131const ( 15132 // DashIsoHbbtvComplianceHbbtv15 is a DashIsoHbbtvCompliance enum value 15133 DashIsoHbbtvComplianceHbbtv15 = "HBBTV_1_5" 15134 15135 // DashIsoHbbtvComplianceNone is a DashIsoHbbtvCompliance enum value 15136 DashIsoHbbtvComplianceNone = "NONE" 15137) 15138 15139// When set to SINGLE_FILE, a single output file is generated, which is internally 15140// segmented using the Fragment Length and Segment Length. When set to SEGMENTED_FILES, 15141// separate segment files will be created. 15142const ( 15143 // DashIsoSegmentControlSingleFile is a DashIsoSegmentControl enum value 15144 DashIsoSegmentControlSingleFile = "SINGLE_FILE" 15145 15146 // DashIsoSegmentControlSegmentedFiles is a DashIsoSegmentControl enum value 15147 DashIsoSegmentControlSegmentedFiles = "SEGMENTED_FILES" 15148) 15149 15150// Only applies when you set Deinterlacer (DeinterlaceMode) to Deinterlace (DEINTERLACE) 15151// or Adaptive (ADAPTIVE). Motion adaptive interpolate (INTERPOLATE) produces 15152// sharper pictures, while blend (BLEND) produces smoother motion. Use (INTERPOLATE_TICKER) 15153// OR (BLEND_TICKER) if your source file includes a ticker, such as a scrolling 15154// headline at the bottom of the frame. 15155const ( 15156 // DeinterlaceAlgorithmInterpolate is a DeinterlaceAlgorithm enum value 15157 DeinterlaceAlgorithmInterpolate = "INTERPOLATE" 15158 15159 // DeinterlaceAlgorithmInterpolateTicker is a DeinterlaceAlgorithm enum value 15160 DeinterlaceAlgorithmInterpolateTicker = "INTERPOLATE_TICKER" 15161 15162 // DeinterlaceAlgorithmBlend is a DeinterlaceAlgorithm enum value 15163 DeinterlaceAlgorithmBlend = "BLEND" 15164 15165 // DeinterlaceAlgorithmBlendTicker is a DeinterlaceAlgorithm enum value 15166 DeinterlaceAlgorithmBlendTicker = "BLEND_TICKER" 15167) 15168 15169// - When set to NORMAL (default), the deinterlacer does not convert frames 15170// that are tagged in metadata as progressive. It will only convert those that 15171// are tagged as some other type. - When set to FORCE_ALL_FRAMES, the deinterlacer 15172// converts every frame to progressive - even those that are already tagged 15173// as progressive. Turn Force mode on only if there is a good chance that the 15174// metadata has tagged frames as progressive when they are not progressive. 15175// Do not turn on otherwise; processing frames that are already progressive 15176// into progressive will probably result in lower quality video. 15177const ( 15178 // DeinterlacerControlForceAllFrames is a DeinterlacerControl enum value 15179 DeinterlacerControlForceAllFrames = "FORCE_ALL_FRAMES" 15180 15181 // DeinterlacerControlNormal is a DeinterlacerControl enum value 15182 DeinterlacerControlNormal = "NORMAL" 15183) 15184 15185// Use Deinterlacer (DeinterlaceMode) to choose how the service will do deinterlacing. 15186// Default is Deinterlace. - Deinterlace converts interlaced to progressive. 15187// - Inverse telecine converts Hard Telecine 29.97i to progressive 23.976p. 15188// - Adaptive auto-detects and converts to progressive. 15189const ( 15190 // DeinterlacerModeDeinterlace is a DeinterlacerMode enum value 15191 DeinterlacerModeDeinterlace = "DEINTERLACE" 15192 15193 // DeinterlacerModeInverseTelecine is a DeinterlacerMode enum value 15194 DeinterlacerModeInverseTelecine = "INVERSE_TELECINE" 15195 15196 // DeinterlacerModeAdaptive is a DeinterlacerMode enum value 15197 DeinterlacerModeAdaptive = "ADAPTIVE" 15198) 15199 15200// Applies only to 29.97 fps outputs. When this feature is enabled, the service 15201// will use drop-frame timecode on outputs. If it is not possible to use drop-frame 15202// timecode, the system will fall back to non-drop-frame. This setting is enabled 15203// by default when Timecode insertion (TimecodeInsertion) is enabled. 15204const ( 15205 // DropFrameTimecodeDisabled is a DropFrameTimecode enum value 15206 DropFrameTimecodeDisabled = "DISABLED" 15207 15208 // DropFrameTimecodeEnabled is a DropFrameTimecode enum value 15209 DropFrameTimecodeEnabled = "ENABLED" 15210) 15211 15212// If no explicit x_position or y_position is provided, setting alignment to 15213// centered will place the captions at the bottom center of the output. Similarly, 15214// setting a left alignment will align captions to the bottom left of the output. 15215// If x and y positions are given in conjunction with the alignment parameter, 15216// the font will be justified (either left or centered) relative to those coordinates. 15217// This option is not valid for source captions that are STL, 608/embedded or 15218// teletext. These source settings are already pre-defined by the caption stream. 15219// All burn-in and DVB-Sub font settings must match. 15220const ( 15221 // DvbSubtitleAlignmentCentered is a DvbSubtitleAlignment enum value 15222 DvbSubtitleAlignmentCentered = "CENTERED" 15223 15224 // DvbSubtitleAlignmentLeft is a DvbSubtitleAlignment enum value 15225 DvbSubtitleAlignmentLeft = "LEFT" 15226) 15227 15228// Specifies the color of the rectangle behind the captions.All burn-in and 15229// DVB-Sub font settings must match. 15230const ( 15231 // DvbSubtitleBackgroundColorNone is a DvbSubtitleBackgroundColor enum value 15232 DvbSubtitleBackgroundColorNone = "NONE" 15233 15234 // DvbSubtitleBackgroundColorBlack is a DvbSubtitleBackgroundColor enum value 15235 DvbSubtitleBackgroundColorBlack = "BLACK" 15236 15237 // DvbSubtitleBackgroundColorWhite is a DvbSubtitleBackgroundColor enum value 15238 DvbSubtitleBackgroundColorWhite = "WHITE" 15239) 15240 15241// Specifies the color of the burned-in captions. This option is not valid for 15242// source captions that are STL, 608/embedded or teletext. These source settings 15243// are already pre-defined by the caption stream. All burn-in and DVB-Sub font 15244// settings must match. 15245const ( 15246 // DvbSubtitleFontColorWhite is a DvbSubtitleFontColor enum value 15247 DvbSubtitleFontColorWhite = "WHITE" 15248 15249 // DvbSubtitleFontColorBlack is a DvbSubtitleFontColor enum value 15250 DvbSubtitleFontColorBlack = "BLACK" 15251 15252 // DvbSubtitleFontColorYellow is a DvbSubtitleFontColor enum value 15253 DvbSubtitleFontColorYellow = "YELLOW" 15254 15255 // DvbSubtitleFontColorRed is a DvbSubtitleFontColor enum value 15256 DvbSubtitleFontColorRed = "RED" 15257 15258 // DvbSubtitleFontColorGreen is a DvbSubtitleFontColor enum value 15259 DvbSubtitleFontColorGreen = "GREEN" 15260 15261 // DvbSubtitleFontColorBlue is a DvbSubtitleFontColor enum value 15262 DvbSubtitleFontColorBlue = "BLUE" 15263) 15264 15265// Specifies font outline color. This option is not valid for source captions 15266// that are either 608/embedded or teletext. These source settings are already 15267// pre-defined by the caption stream. All burn-in and DVB-Sub font settings 15268// must match. 15269const ( 15270 // DvbSubtitleOutlineColorBlack is a DvbSubtitleOutlineColor enum value 15271 DvbSubtitleOutlineColorBlack = "BLACK" 15272 15273 // DvbSubtitleOutlineColorWhite is a DvbSubtitleOutlineColor enum value 15274 DvbSubtitleOutlineColorWhite = "WHITE" 15275 15276 // DvbSubtitleOutlineColorYellow is a DvbSubtitleOutlineColor enum value 15277 DvbSubtitleOutlineColorYellow = "YELLOW" 15278 15279 // DvbSubtitleOutlineColorRed is a DvbSubtitleOutlineColor enum value 15280 DvbSubtitleOutlineColorRed = "RED" 15281 15282 // DvbSubtitleOutlineColorGreen is a DvbSubtitleOutlineColor enum value 15283 DvbSubtitleOutlineColorGreen = "GREEN" 15284 15285 // DvbSubtitleOutlineColorBlue is a DvbSubtitleOutlineColor enum value 15286 DvbSubtitleOutlineColorBlue = "BLUE" 15287) 15288 15289// Specifies the color of the shadow cast by the captions.All burn-in and DVB-Sub 15290// font settings must match. 15291const ( 15292 // DvbSubtitleShadowColorNone is a DvbSubtitleShadowColor enum value 15293 DvbSubtitleShadowColorNone = "NONE" 15294 15295 // DvbSubtitleShadowColorBlack is a DvbSubtitleShadowColor enum value 15296 DvbSubtitleShadowColorBlack = "BLACK" 15297 15298 // DvbSubtitleShadowColorWhite is a DvbSubtitleShadowColor enum value 15299 DvbSubtitleShadowColorWhite = "WHITE" 15300) 15301 15302// Only applies to jobs with input captions in Teletext or STL formats. Specify 15303// whether the spacing between letters in your captions is set by the captions 15304// grid or varies depending on letter width. Choose fixed grid to conform to 15305// the spacing specified in the captions file more accurately. Choose proportional 15306// to make the text easier to read if the captions are closed caption. 15307const ( 15308 // DvbSubtitleTeletextSpacingFixedGrid is a DvbSubtitleTeletextSpacing enum value 15309 DvbSubtitleTeletextSpacingFixedGrid = "FIXED_GRID" 15310 15311 // DvbSubtitleTeletextSpacingProportional is a DvbSubtitleTeletextSpacing enum value 15312 DvbSubtitleTeletextSpacingProportional = "PROPORTIONAL" 15313) 15314 15315// If set to ATTENUATE_3_DB, applies a 3 dB attenuation to the surround channels. 15316// Only used for 3/2 coding mode. 15317const ( 15318 // Eac3AttenuationControlAttenuate3Db is a Eac3AttenuationControl enum value 15319 Eac3AttenuationControlAttenuate3Db = "ATTENUATE_3_DB" 15320 15321 // Eac3AttenuationControlNone is a Eac3AttenuationControl enum value 15322 Eac3AttenuationControlNone = "NONE" 15323) 15324 15325// Specifies the "Bitstream Mode" (bsmod) for the emitted E-AC-3 stream. See 15326// ATSC A/52-2012 (Annex E) for background on these values. 15327const ( 15328 // Eac3BitstreamModeCompleteMain is a Eac3BitstreamMode enum value 15329 Eac3BitstreamModeCompleteMain = "COMPLETE_MAIN" 15330 15331 // Eac3BitstreamModeCommentary is a Eac3BitstreamMode enum value 15332 Eac3BitstreamModeCommentary = "COMMENTARY" 15333 15334 // Eac3BitstreamModeEmergency is a Eac3BitstreamMode enum value 15335 Eac3BitstreamModeEmergency = "EMERGENCY" 15336 15337 // Eac3BitstreamModeHearingImpaired is a Eac3BitstreamMode enum value 15338 Eac3BitstreamModeHearingImpaired = "HEARING_IMPAIRED" 15339 15340 // Eac3BitstreamModeVisuallyImpaired is a Eac3BitstreamMode enum value 15341 Eac3BitstreamModeVisuallyImpaired = "VISUALLY_IMPAIRED" 15342) 15343 15344// Dolby Digital Plus coding mode. Determines number of channels. 15345const ( 15346 // Eac3CodingModeCodingMode10 is a Eac3CodingMode enum value 15347 Eac3CodingModeCodingMode10 = "CODING_MODE_1_0" 15348 15349 // Eac3CodingModeCodingMode20 is a Eac3CodingMode enum value 15350 Eac3CodingModeCodingMode20 = "CODING_MODE_2_0" 15351 15352 // Eac3CodingModeCodingMode32 is a Eac3CodingMode enum value 15353 Eac3CodingModeCodingMode32 = "CODING_MODE_3_2" 15354) 15355 15356// Activates a DC highpass filter for all input channels. 15357const ( 15358 // Eac3DcFilterEnabled is a Eac3DcFilter enum value 15359 Eac3DcFilterEnabled = "ENABLED" 15360 15361 // Eac3DcFilterDisabled is a Eac3DcFilter enum value 15362 Eac3DcFilterDisabled = "DISABLED" 15363) 15364 15365// Enables Dynamic Range Compression that restricts the absolute peak level 15366// for a signal. 15367const ( 15368 // Eac3DynamicRangeCompressionLineNone is a Eac3DynamicRangeCompressionLine enum value 15369 Eac3DynamicRangeCompressionLineNone = "NONE" 15370 15371 // Eac3DynamicRangeCompressionLineFilmStandard is a Eac3DynamicRangeCompressionLine enum value 15372 Eac3DynamicRangeCompressionLineFilmStandard = "FILM_STANDARD" 15373 15374 // Eac3DynamicRangeCompressionLineFilmLight is a Eac3DynamicRangeCompressionLine enum value 15375 Eac3DynamicRangeCompressionLineFilmLight = "FILM_LIGHT" 15376 15377 // Eac3DynamicRangeCompressionLineMusicStandard is a Eac3DynamicRangeCompressionLine enum value 15378 Eac3DynamicRangeCompressionLineMusicStandard = "MUSIC_STANDARD" 15379 15380 // Eac3DynamicRangeCompressionLineMusicLight is a Eac3DynamicRangeCompressionLine enum value 15381 Eac3DynamicRangeCompressionLineMusicLight = "MUSIC_LIGHT" 15382 15383 // Eac3DynamicRangeCompressionLineSpeech is a Eac3DynamicRangeCompressionLine enum value 15384 Eac3DynamicRangeCompressionLineSpeech = "SPEECH" 15385) 15386 15387// Enables Heavy Dynamic Range Compression, ensures that the instantaneous signal 15388// peaks do not exceed specified levels. 15389const ( 15390 // Eac3DynamicRangeCompressionRfNone is a Eac3DynamicRangeCompressionRf enum value 15391 Eac3DynamicRangeCompressionRfNone = "NONE" 15392 15393 // Eac3DynamicRangeCompressionRfFilmStandard is a Eac3DynamicRangeCompressionRf enum value 15394 Eac3DynamicRangeCompressionRfFilmStandard = "FILM_STANDARD" 15395 15396 // Eac3DynamicRangeCompressionRfFilmLight is a Eac3DynamicRangeCompressionRf enum value 15397 Eac3DynamicRangeCompressionRfFilmLight = "FILM_LIGHT" 15398 15399 // Eac3DynamicRangeCompressionRfMusicStandard is a Eac3DynamicRangeCompressionRf enum value 15400 Eac3DynamicRangeCompressionRfMusicStandard = "MUSIC_STANDARD" 15401 15402 // Eac3DynamicRangeCompressionRfMusicLight is a Eac3DynamicRangeCompressionRf enum value 15403 Eac3DynamicRangeCompressionRfMusicLight = "MUSIC_LIGHT" 15404 15405 // Eac3DynamicRangeCompressionRfSpeech is a Eac3DynamicRangeCompressionRf enum value 15406 Eac3DynamicRangeCompressionRfSpeech = "SPEECH" 15407) 15408 15409// When encoding 3/2 audio, controls whether the LFE channel is enabled 15410const ( 15411 // Eac3LfeControlLfe is a Eac3LfeControl enum value 15412 Eac3LfeControlLfe = "LFE" 15413 15414 // Eac3LfeControlNoLfe is a Eac3LfeControl enum value 15415 Eac3LfeControlNoLfe = "NO_LFE" 15416) 15417 15418// Applies a 120Hz lowpass filter to the LFE channel prior to encoding. Only 15419// valid with 3_2_LFE coding mode. 15420const ( 15421 // Eac3LfeFilterEnabled is a Eac3LfeFilter enum value 15422 Eac3LfeFilterEnabled = "ENABLED" 15423 15424 // Eac3LfeFilterDisabled is a Eac3LfeFilter enum value 15425 Eac3LfeFilterDisabled = "DISABLED" 15426) 15427 15428// When set to FOLLOW_INPUT, encoder metadata will be sourced from the DD, DD+, 15429// or DolbyE decoder that supplied this audio data. If audio was not supplied 15430// from one of these streams, then the static metadata settings will be used. 15431const ( 15432 // Eac3MetadataControlFollowInput is a Eac3MetadataControl enum value 15433 Eac3MetadataControlFollowInput = "FOLLOW_INPUT" 15434 15435 // Eac3MetadataControlUseConfigured is a Eac3MetadataControl enum value 15436 Eac3MetadataControlUseConfigured = "USE_CONFIGURED" 15437) 15438 15439// When set to WHEN_POSSIBLE, input DD+ audio will be passed through if it is 15440// present on the input. this detection is dynamic over the life of the transcode. 15441// Inputs that alternate between DD+ and non-DD+ content will have a consistent 15442// DD+ output as the system alternates between passthrough and encoding. 15443const ( 15444 // Eac3PassthroughControlWhenPossible is a Eac3PassthroughControl enum value 15445 Eac3PassthroughControlWhenPossible = "WHEN_POSSIBLE" 15446 15447 // Eac3PassthroughControlNoPassthrough is a Eac3PassthroughControl enum value 15448 Eac3PassthroughControlNoPassthrough = "NO_PASSTHROUGH" 15449) 15450 15451// Controls the amount of phase-shift applied to the surround channels. Only 15452// used for 3/2 coding mode. 15453const ( 15454 // Eac3PhaseControlShift90Degrees is a Eac3PhaseControl enum value 15455 Eac3PhaseControlShift90Degrees = "SHIFT_90_DEGREES" 15456 15457 // Eac3PhaseControlNoShift is a Eac3PhaseControl enum value 15458 Eac3PhaseControlNoShift = "NO_SHIFT" 15459) 15460 15461// Stereo downmix preference. Only used for 3/2 coding mode. 15462const ( 15463 // Eac3StereoDownmixNotIndicated is a Eac3StereoDownmix enum value 15464 Eac3StereoDownmixNotIndicated = "NOT_INDICATED" 15465 15466 // Eac3StereoDownmixLoRo is a Eac3StereoDownmix enum value 15467 Eac3StereoDownmixLoRo = "LO_RO" 15468 15469 // Eac3StereoDownmixLtRt is a Eac3StereoDownmix enum value 15470 Eac3StereoDownmixLtRt = "LT_RT" 15471 15472 // Eac3StereoDownmixDpl2 is a Eac3StereoDownmix enum value 15473 Eac3StereoDownmixDpl2 = "DPL2" 15474) 15475 15476// When encoding 3/2 audio, sets whether an extra center back surround channel 15477// is matrix encoded into the left and right surround channels. 15478const ( 15479 // Eac3SurroundExModeNotIndicated is a Eac3SurroundExMode enum value 15480 Eac3SurroundExModeNotIndicated = "NOT_INDICATED" 15481 15482 // Eac3SurroundExModeEnabled is a Eac3SurroundExMode enum value 15483 Eac3SurroundExModeEnabled = "ENABLED" 15484 15485 // Eac3SurroundExModeDisabled is a Eac3SurroundExMode enum value 15486 Eac3SurroundExModeDisabled = "DISABLED" 15487) 15488 15489// When encoding 2/0 audio, sets whether Dolby Surround is matrix encoded into 15490// the two channels. 15491const ( 15492 // Eac3SurroundModeNotIndicated is a Eac3SurroundMode enum value 15493 Eac3SurroundModeNotIndicated = "NOT_INDICATED" 15494 15495 // Eac3SurroundModeEnabled is a Eac3SurroundMode enum value 15496 Eac3SurroundModeEnabled = "ENABLED" 15497 15498 // Eac3SurroundModeDisabled is a Eac3SurroundMode enum value 15499 Eac3SurroundModeDisabled = "DISABLED" 15500) 15501 15502// When set to UPCONVERT, 608 data is both passed through via the "608 compatibility 15503// bytes" fields of the 708 wrapper as well as translated into 708. 708 data 15504// present in the source content will be discarded. 15505const ( 15506 // EmbeddedConvert608To708Upconvert is a EmbeddedConvert608To708 enum value 15507 EmbeddedConvert608To708Upconvert = "UPCONVERT" 15508 15509 // EmbeddedConvert608To708Disabled is a EmbeddedConvert608To708 enum value 15510 EmbeddedConvert608To708Disabled = "DISABLED" 15511) 15512 15513// If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning 15514// of the archive as required for progressive downloading. Otherwise it is placed 15515// normally at the end. 15516const ( 15517 // F4vMoovPlacementProgressiveDownload is a F4vMoovPlacement enum value 15518 F4vMoovPlacementProgressiveDownload = "PROGRESSIVE_DOWNLOAD" 15519 15520 // F4vMoovPlacementNormal is a F4vMoovPlacement enum value 15521 F4vMoovPlacementNormal = "NORMAL" 15522) 15523 15524// If set to UPCONVERT, 608 caption data is both passed through via the "608 15525// compatibility bytes" fields of the 708 wrapper as well as translated into 15526// 708. 708 data present in the source content will be discarded. 15527const ( 15528 // FileSourceConvert608To708Upconvert is a FileSourceConvert608To708 enum value 15529 FileSourceConvert608To708Upconvert = "UPCONVERT" 15530 15531 // FileSourceConvert608To708Disabled is a FileSourceConvert608To708 enum value 15532 FileSourceConvert608To708Disabled = "DISABLED" 15533) 15534 15535// Adaptive quantization. Allows intra-frame quantizers to vary to improve visual 15536// quality. 15537const ( 15538 // H264AdaptiveQuantizationOff is a H264AdaptiveQuantization enum value 15539 H264AdaptiveQuantizationOff = "OFF" 15540 15541 // H264AdaptiveQuantizationLow is a H264AdaptiveQuantization enum value 15542 H264AdaptiveQuantizationLow = "LOW" 15543 15544 // H264AdaptiveQuantizationMedium is a H264AdaptiveQuantization enum value 15545 H264AdaptiveQuantizationMedium = "MEDIUM" 15546 15547 // H264AdaptiveQuantizationHigh is a H264AdaptiveQuantization enum value 15548 H264AdaptiveQuantizationHigh = "HIGH" 15549 15550 // H264AdaptiveQuantizationHigher is a H264AdaptiveQuantization enum value 15551 H264AdaptiveQuantizationHigher = "HIGHER" 15552 15553 // H264AdaptiveQuantizationMax is a H264AdaptiveQuantization enum value 15554 H264AdaptiveQuantizationMax = "MAX" 15555) 15556 15557// H.264 Level. 15558const ( 15559 // H264CodecLevelAuto is a H264CodecLevel enum value 15560 H264CodecLevelAuto = "AUTO" 15561 15562 // H264CodecLevelLevel1 is a H264CodecLevel enum value 15563 H264CodecLevelLevel1 = "LEVEL_1" 15564 15565 // H264CodecLevelLevel11 is a H264CodecLevel enum value 15566 H264CodecLevelLevel11 = "LEVEL_1_1" 15567 15568 // H264CodecLevelLevel12 is a H264CodecLevel enum value 15569 H264CodecLevelLevel12 = "LEVEL_1_2" 15570 15571 // H264CodecLevelLevel13 is a H264CodecLevel enum value 15572 H264CodecLevelLevel13 = "LEVEL_1_3" 15573 15574 // H264CodecLevelLevel2 is a H264CodecLevel enum value 15575 H264CodecLevelLevel2 = "LEVEL_2" 15576 15577 // H264CodecLevelLevel21 is a H264CodecLevel enum value 15578 H264CodecLevelLevel21 = "LEVEL_2_1" 15579 15580 // H264CodecLevelLevel22 is a H264CodecLevel enum value 15581 H264CodecLevelLevel22 = "LEVEL_2_2" 15582 15583 // H264CodecLevelLevel3 is a H264CodecLevel enum value 15584 H264CodecLevelLevel3 = "LEVEL_3" 15585 15586 // H264CodecLevelLevel31 is a H264CodecLevel enum value 15587 H264CodecLevelLevel31 = "LEVEL_3_1" 15588 15589 // H264CodecLevelLevel32 is a H264CodecLevel enum value 15590 H264CodecLevelLevel32 = "LEVEL_3_2" 15591 15592 // H264CodecLevelLevel4 is a H264CodecLevel enum value 15593 H264CodecLevelLevel4 = "LEVEL_4" 15594 15595 // H264CodecLevelLevel41 is a H264CodecLevel enum value 15596 H264CodecLevelLevel41 = "LEVEL_4_1" 15597 15598 // H264CodecLevelLevel42 is a H264CodecLevel enum value 15599 H264CodecLevelLevel42 = "LEVEL_4_2" 15600 15601 // H264CodecLevelLevel5 is a H264CodecLevel enum value 15602 H264CodecLevelLevel5 = "LEVEL_5" 15603 15604 // H264CodecLevelLevel51 is a H264CodecLevel enum value 15605 H264CodecLevelLevel51 = "LEVEL_5_1" 15606 15607 // H264CodecLevelLevel52 is a H264CodecLevel enum value 15608 H264CodecLevelLevel52 = "LEVEL_5_2" 15609) 15610 15611// H.264 Profile. High 4:2:2 and 10-bit profiles are only available with the 15612// AVC-I License. 15613const ( 15614 // H264CodecProfileBaseline is a H264CodecProfile enum value 15615 H264CodecProfileBaseline = "BASELINE" 15616 15617 // H264CodecProfileHigh is a H264CodecProfile enum value 15618 H264CodecProfileHigh = "HIGH" 15619 15620 // H264CodecProfileHigh10bit is a H264CodecProfile enum value 15621 H264CodecProfileHigh10bit = "HIGH_10BIT" 15622 15623 // H264CodecProfileHigh422 is a H264CodecProfile enum value 15624 H264CodecProfileHigh422 = "HIGH_422" 15625 15626 // H264CodecProfileHigh42210bit is a H264CodecProfile enum value 15627 H264CodecProfileHigh42210bit = "HIGH_422_10BIT" 15628 15629 // H264CodecProfileMain is a H264CodecProfile enum value 15630 H264CodecProfileMain = "MAIN" 15631) 15632 15633// Choose Adaptive to improve subjective video quality for high-motion content. 15634// This will cause the service to use fewer B-frames (which infer information 15635// based on other frames) for high-motion portions of the video and more B-frames 15636// for low-motion portions. The maximum number of B-frames is limited by the 15637// value you provide for the setting B frames between reference frames (numberBFramesBetweenReferenceFrames). 15638const ( 15639 // H264DynamicSubGopAdaptive is a H264DynamicSubGop enum value 15640 H264DynamicSubGopAdaptive = "ADAPTIVE" 15641 15642 // H264DynamicSubGopStatic is a H264DynamicSubGop enum value 15643 H264DynamicSubGopStatic = "STATIC" 15644) 15645 15646// Entropy encoding mode. Use CABAC (must be in Main or High profile) or CAVLC. 15647const ( 15648 // H264EntropyEncodingCabac is a H264EntropyEncoding enum value 15649 H264EntropyEncodingCabac = "CABAC" 15650 15651 // H264EntropyEncodingCavlc is a H264EntropyEncoding enum value 15652 H264EntropyEncodingCavlc = "CAVLC" 15653) 15654 15655// Choosing FORCE_FIELD disables PAFF encoding for interlaced outputs. 15656const ( 15657 // H264FieldEncodingPaff is a H264FieldEncoding enum value 15658 H264FieldEncodingPaff = "PAFF" 15659 15660 // H264FieldEncodingForceField is a H264FieldEncoding enum value 15661 H264FieldEncodingForceField = "FORCE_FIELD" 15662) 15663 15664// Adjust quantization within each frame to reduce flicker or 'pop' on I-frames. 15665const ( 15666 // H264FlickerAdaptiveQuantizationDisabled is a H264FlickerAdaptiveQuantization enum value 15667 H264FlickerAdaptiveQuantizationDisabled = "DISABLED" 15668 15669 // H264FlickerAdaptiveQuantizationEnabled is a H264FlickerAdaptiveQuantization enum value 15670 H264FlickerAdaptiveQuantizationEnabled = "ENABLED" 15671) 15672 15673// If you are using the console, use the Framerate setting to specify the framerate 15674// for this output. If you want to keep the same framerate as the input video, 15675// choose Follow source. If you want to do framerate conversion, choose a framerate 15676// from the dropdown list or choose Custom. The framerates shown in the dropdown 15677// list are decimal approximations of fractions. If you choose Custom, specify 15678// your framerate as a fraction. If you are creating your transcoding job specification 15679// as a JSON file without the console, use FramerateControl to specify which 15680// value the service uses for the framerate for this output. Choose INITIALIZE_FROM_SOURCE 15681// if you want the service to use the framerate from the input. Choose SPECIFIED 15682// if you want the service to use the framerate you specify in the settings 15683// FramerateNumerator and FramerateDenominator. 15684const ( 15685 // H264FramerateControlInitializeFromSource is a H264FramerateControl enum value 15686 H264FramerateControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" 15687 15688 // H264FramerateControlSpecified is a H264FramerateControl enum value 15689 H264FramerateControlSpecified = "SPECIFIED" 15690) 15691 15692// When set to INTERPOLATE, produces smoother motion during framerate conversion. 15693const ( 15694 // H264FramerateConversionAlgorithmDuplicateDrop is a H264FramerateConversionAlgorithm enum value 15695 H264FramerateConversionAlgorithmDuplicateDrop = "DUPLICATE_DROP" 15696 15697 // H264FramerateConversionAlgorithmInterpolate is a H264FramerateConversionAlgorithm enum value 15698 H264FramerateConversionAlgorithmInterpolate = "INTERPOLATE" 15699) 15700 15701// If enable, use reference B frames for GOP structures that have B frames > 15702// 1. 15703const ( 15704 // H264GopBReferenceDisabled is a H264GopBReference enum value 15705 H264GopBReferenceDisabled = "DISABLED" 15706 15707 // H264GopBReferenceEnabled is a H264GopBReference enum value 15708 H264GopBReferenceEnabled = "ENABLED" 15709) 15710 15711// Indicates if the GOP Size in H264 is specified in frames or seconds. If seconds 15712// the system will convert the GOP Size into a frame count at run time. 15713const ( 15714 // H264GopSizeUnitsFrames is a H264GopSizeUnits enum value 15715 H264GopSizeUnitsFrames = "FRAMES" 15716 15717 // H264GopSizeUnitsSeconds is a H264GopSizeUnits enum value 15718 H264GopSizeUnitsSeconds = "SECONDS" 15719) 15720 15721// Use Interlace mode (InterlaceMode) to choose the scan line type for the output. 15722// * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce 15723// interlaced output with the entire output having the same field polarity (top 15724// or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default 15725// Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, 15726// behavior depends on the input scan type, as follows. - If the source is interlaced, 15727// the output will be interlaced with the same polarity as the source (it will 15728// follow the source). The output could therefore be a mix of "top field first" 15729// and "bottom field first". - If the source is progressive, the output will 15730// be interlaced with "top field first" or "bottom field first" polarity, depending 15731// on which of the Follow options you chose. 15732const ( 15733 // H264InterlaceModeProgressive is a H264InterlaceMode enum value 15734 H264InterlaceModeProgressive = "PROGRESSIVE" 15735 15736 // H264InterlaceModeTopField is a H264InterlaceMode enum value 15737 H264InterlaceModeTopField = "TOP_FIELD" 15738 15739 // H264InterlaceModeBottomField is a H264InterlaceMode enum value 15740 H264InterlaceModeBottomField = "BOTTOM_FIELD" 15741 15742 // H264InterlaceModeFollowTopField is a H264InterlaceMode enum value 15743 H264InterlaceModeFollowTopField = "FOLLOW_TOP_FIELD" 15744 15745 // H264InterlaceModeFollowBottomField is a H264InterlaceMode enum value 15746 H264InterlaceModeFollowBottomField = "FOLLOW_BOTTOM_FIELD" 15747) 15748 15749// Using the API, enable ParFollowSource if you want the service to use the 15750// pixel aspect ratio from the input. Using the console, do this by choosing 15751// Follow source for Pixel aspect ratio. 15752const ( 15753 // H264ParControlInitializeFromSource is a H264ParControl enum value 15754 H264ParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" 15755 15756 // H264ParControlSpecified is a H264ParControl enum value 15757 H264ParControlSpecified = "SPECIFIED" 15758) 15759 15760// Use Quality tuning level (H264QualityTuningLevel) to specifiy whether to 15761// use fast single-pass, high-quality singlepass, or high-quality multipass 15762// video encoding. 15763const ( 15764 // H264QualityTuningLevelSinglePass is a H264QualityTuningLevel enum value 15765 H264QualityTuningLevelSinglePass = "SINGLE_PASS" 15766 15767 // H264QualityTuningLevelSinglePassHq is a H264QualityTuningLevel enum value 15768 H264QualityTuningLevelSinglePassHq = "SINGLE_PASS_HQ" 15769 15770 // H264QualityTuningLevelMultiPassHq is a H264QualityTuningLevel enum value 15771 H264QualityTuningLevelMultiPassHq = "MULTI_PASS_HQ" 15772) 15773 15774// Use this setting to specify whether this output has a variable bitrate (VBR), 15775// constant bitrate (CBR) or quality-defined variable bitrate (QVBR). 15776const ( 15777 // H264RateControlModeVbr is a H264RateControlMode enum value 15778 H264RateControlModeVbr = "VBR" 15779 15780 // H264RateControlModeCbr is a H264RateControlMode enum value 15781 H264RateControlModeCbr = "CBR" 15782 15783 // H264RateControlModeQvbr is a H264RateControlMode enum value 15784 H264RateControlModeQvbr = "QVBR" 15785) 15786 15787// Places a PPS header on each encoded picture, even if repeated. 15788const ( 15789 // H264RepeatPpsDisabled is a H264RepeatPps enum value 15790 H264RepeatPpsDisabled = "DISABLED" 15791 15792 // H264RepeatPpsEnabled is a H264RepeatPps enum value 15793 H264RepeatPpsEnabled = "ENABLED" 15794) 15795 15796// Scene change detection (inserts I-frames on scene changes). 15797const ( 15798 // H264SceneChangeDetectDisabled is a H264SceneChangeDetect enum value 15799 H264SceneChangeDetectDisabled = "DISABLED" 15800 15801 // H264SceneChangeDetectEnabled is a H264SceneChangeDetect enum value 15802 H264SceneChangeDetectEnabled = "ENABLED" 15803) 15804 15805// Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled 15806// as 25fps, and audio is sped up correspondingly. 15807const ( 15808 // H264SlowPalDisabled is a H264SlowPal enum value 15809 H264SlowPalDisabled = "DISABLED" 15810 15811 // H264SlowPalEnabled is a H264SlowPal enum value 15812 H264SlowPalEnabled = "ENABLED" 15813) 15814 15815// Adjust quantization within each frame based on spatial variation of content 15816// complexity. 15817const ( 15818 // H264SpatialAdaptiveQuantizationDisabled is a H264SpatialAdaptiveQuantization enum value 15819 H264SpatialAdaptiveQuantizationDisabled = "DISABLED" 15820 15821 // H264SpatialAdaptiveQuantizationEnabled is a H264SpatialAdaptiveQuantization enum value 15822 H264SpatialAdaptiveQuantizationEnabled = "ENABLED" 15823) 15824 15825// Produces a bitstream compliant with SMPTE RP-2027. 15826const ( 15827 // H264SyntaxDefault is a H264Syntax enum value 15828 H264SyntaxDefault = "DEFAULT" 15829 15830 // H264SyntaxRp2027 is a H264Syntax enum value 15831 H264SyntaxRp2027 = "RP2027" 15832) 15833 15834// This field applies only if the Streams > Advanced > Framerate (framerate) 15835// field is set to 29.970. This field works with the Streams > Advanced > Preprocessors 15836// > Deinterlacer field (deinterlace_mode) and the Streams > Advanced > Interlaced 15837// Mode field (interlace_mode) to identify the scan type for the output: Progressive, 15838// Interlaced, Hard Telecine or Soft Telecine. - Hard: produces 29.97i output 15839// from 23.976 input. - Soft: produces 23.976; the player converts this output 15840// to 29.97i. 15841const ( 15842 // H264TelecineNone is a H264Telecine enum value 15843 H264TelecineNone = "NONE" 15844 15845 // H264TelecineSoft is a H264Telecine enum value 15846 H264TelecineSoft = "SOFT" 15847 15848 // H264TelecineHard is a H264Telecine enum value 15849 H264TelecineHard = "HARD" 15850) 15851 15852// Adjust quantization within each frame based on temporal variation of content 15853// complexity. 15854const ( 15855 // H264TemporalAdaptiveQuantizationDisabled is a H264TemporalAdaptiveQuantization enum value 15856 H264TemporalAdaptiveQuantizationDisabled = "DISABLED" 15857 15858 // H264TemporalAdaptiveQuantizationEnabled is a H264TemporalAdaptiveQuantization enum value 15859 H264TemporalAdaptiveQuantizationEnabled = "ENABLED" 15860) 15861 15862// Inserts timecode for each frame as 4 bytes of an unregistered SEI message. 15863const ( 15864 // H264UnregisteredSeiTimecodeDisabled is a H264UnregisteredSeiTimecode enum value 15865 H264UnregisteredSeiTimecodeDisabled = "DISABLED" 15866 15867 // H264UnregisteredSeiTimecodeEnabled is a H264UnregisteredSeiTimecode enum value 15868 H264UnregisteredSeiTimecodeEnabled = "ENABLED" 15869) 15870 15871// Adaptive quantization. Allows intra-frame quantizers to vary to improve visual 15872// quality. 15873const ( 15874 // H265AdaptiveQuantizationOff is a H265AdaptiveQuantization enum value 15875 H265AdaptiveQuantizationOff = "OFF" 15876 15877 // H265AdaptiveQuantizationLow is a H265AdaptiveQuantization enum value 15878 H265AdaptiveQuantizationLow = "LOW" 15879 15880 // H265AdaptiveQuantizationMedium is a H265AdaptiveQuantization enum value 15881 H265AdaptiveQuantizationMedium = "MEDIUM" 15882 15883 // H265AdaptiveQuantizationHigh is a H265AdaptiveQuantization enum value 15884 H265AdaptiveQuantizationHigh = "HIGH" 15885 15886 // H265AdaptiveQuantizationHigher is a H265AdaptiveQuantization enum value 15887 H265AdaptiveQuantizationHigher = "HIGHER" 15888 15889 // H265AdaptiveQuantizationMax is a H265AdaptiveQuantization enum value 15890 H265AdaptiveQuantizationMax = "MAX" 15891) 15892 15893// Enables Alternate Transfer Function SEI message for outputs using Hybrid 15894// Log Gamma (HLG) Electro-Optical Transfer Function (EOTF). 15895const ( 15896 // H265AlternateTransferFunctionSeiDisabled is a H265AlternateTransferFunctionSei enum value 15897 H265AlternateTransferFunctionSeiDisabled = "DISABLED" 15898 15899 // H265AlternateTransferFunctionSeiEnabled is a H265AlternateTransferFunctionSei enum value 15900 H265AlternateTransferFunctionSeiEnabled = "ENABLED" 15901) 15902 15903// H.265 Level. 15904const ( 15905 // H265CodecLevelAuto is a H265CodecLevel enum value 15906 H265CodecLevelAuto = "AUTO" 15907 15908 // H265CodecLevelLevel1 is a H265CodecLevel enum value 15909 H265CodecLevelLevel1 = "LEVEL_1" 15910 15911 // H265CodecLevelLevel2 is a H265CodecLevel enum value 15912 H265CodecLevelLevel2 = "LEVEL_2" 15913 15914 // H265CodecLevelLevel21 is a H265CodecLevel enum value 15915 H265CodecLevelLevel21 = "LEVEL_2_1" 15916 15917 // H265CodecLevelLevel3 is a H265CodecLevel enum value 15918 H265CodecLevelLevel3 = "LEVEL_3" 15919 15920 // H265CodecLevelLevel31 is a H265CodecLevel enum value 15921 H265CodecLevelLevel31 = "LEVEL_3_1" 15922 15923 // H265CodecLevelLevel4 is a H265CodecLevel enum value 15924 H265CodecLevelLevel4 = "LEVEL_4" 15925 15926 // H265CodecLevelLevel41 is a H265CodecLevel enum value 15927 H265CodecLevelLevel41 = "LEVEL_4_1" 15928 15929 // H265CodecLevelLevel5 is a H265CodecLevel enum value 15930 H265CodecLevelLevel5 = "LEVEL_5" 15931 15932 // H265CodecLevelLevel51 is a H265CodecLevel enum value 15933 H265CodecLevelLevel51 = "LEVEL_5_1" 15934 15935 // H265CodecLevelLevel52 is a H265CodecLevel enum value 15936 H265CodecLevelLevel52 = "LEVEL_5_2" 15937 15938 // H265CodecLevelLevel6 is a H265CodecLevel enum value 15939 H265CodecLevelLevel6 = "LEVEL_6" 15940 15941 // H265CodecLevelLevel61 is a H265CodecLevel enum value 15942 H265CodecLevelLevel61 = "LEVEL_6_1" 15943 15944 // H265CodecLevelLevel62 is a H265CodecLevel enum value 15945 H265CodecLevelLevel62 = "LEVEL_6_2" 15946) 15947 15948// Represents the Profile and Tier, per the HEVC (H.265) specification. Selections 15949// are grouped as [Profile] / [Tier], so "Main/High" represents Main Profile 15950// with High Tier. 4:2:2 profiles are only available with the HEVC 4:2:2 License. 15951const ( 15952 // H265CodecProfileMainMain is a H265CodecProfile enum value 15953 H265CodecProfileMainMain = "MAIN_MAIN" 15954 15955 // H265CodecProfileMainHigh is a H265CodecProfile enum value 15956 H265CodecProfileMainHigh = "MAIN_HIGH" 15957 15958 // H265CodecProfileMain10Main is a H265CodecProfile enum value 15959 H265CodecProfileMain10Main = "MAIN10_MAIN" 15960 15961 // H265CodecProfileMain10High is a H265CodecProfile enum value 15962 H265CodecProfileMain10High = "MAIN10_HIGH" 15963 15964 // H265CodecProfileMain4228bitMain is a H265CodecProfile enum value 15965 H265CodecProfileMain4228bitMain = "MAIN_422_8BIT_MAIN" 15966 15967 // H265CodecProfileMain4228bitHigh is a H265CodecProfile enum value 15968 H265CodecProfileMain4228bitHigh = "MAIN_422_8BIT_HIGH" 15969 15970 // H265CodecProfileMain42210bitMain is a H265CodecProfile enum value 15971 H265CodecProfileMain42210bitMain = "MAIN_422_10BIT_MAIN" 15972 15973 // H265CodecProfileMain42210bitHigh is a H265CodecProfile enum value 15974 H265CodecProfileMain42210bitHigh = "MAIN_422_10BIT_HIGH" 15975) 15976 15977// Choose Adaptive to improve subjective video quality for high-motion content. 15978// This will cause the service to use fewer B-frames (which infer information 15979// based on other frames) for high-motion portions of the video and more B-frames 15980// for low-motion portions. The maximum number of B-frames is limited by the 15981// value you provide for the setting B frames between reference frames (numberBFramesBetweenReferenceFrames). 15982const ( 15983 // H265DynamicSubGopAdaptive is a H265DynamicSubGop enum value 15984 H265DynamicSubGopAdaptive = "ADAPTIVE" 15985 15986 // H265DynamicSubGopStatic is a H265DynamicSubGop enum value 15987 H265DynamicSubGopStatic = "STATIC" 15988) 15989 15990// Adjust quantization within each frame to reduce flicker or 'pop' on I-frames. 15991const ( 15992 // H265FlickerAdaptiveQuantizationDisabled is a H265FlickerAdaptiveQuantization enum value 15993 H265FlickerAdaptiveQuantizationDisabled = "DISABLED" 15994 15995 // H265FlickerAdaptiveQuantizationEnabled is a H265FlickerAdaptiveQuantization enum value 15996 H265FlickerAdaptiveQuantizationEnabled = "ENABLED" 15997) 15998 15999// If you are using the console, use the Framerate setting to specify the framerate 16000// for this output. If you want to keep the same framerate as the input video, 16001// choose Follow source. If you want to do framerate conversion, choose a framerate 16002// from the dropdown list or choose Custom. The framerates shown in the dropdown 16003// list are decimal approximations of fractions. If you choose Custom, specify 16004// your framerate as a fraction. If you are creating your transcoding job sepecification 16005// as a JSON file without the console, use FramerateControl to specify which 16006// value the service uses for the framerate for this output. Choose INITIALIZE_FROM_SOURCE 16007// if you want the service to use the framerate from the input. Choose SPECIFIED 16008// if you want the service to use the framerate you specify in the settings 16009// FramerateNumerator and FramerateDenominator. 16010const ( 16011 // H265FramerateControlInitializeFromSource is a H265FramerateControl enum value 16012 H265FramerateControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" 16013 16014 // H265FramerateControlSpecified is a H265FramerateControl enum value 16015 H265FramerateControlSpecified = "SPECIFIED" 16016) 16017 16018// When set to INTERPOLATE, produces smoother motion during framerate conversion. 16019const ( 16020 // H265FramerateConversionAlgorithmDuplicateDrop is a H265FramerateConversionAlgorithm enum value 16021 H265FramerateConversionAlgorithmDuplicateDrop = "DUPLICATE_DROP" 16022 16023 // H265FramerateConversionAlgorithmInterpolate is a H265FramerateConversionAlgorithm enum value 16024 H265FramerateConversionAlgorithmInterpolate = "INTERPOLATE" 16025) 16026 16027// If enable, use reference B frames for GOP structures that have B frames > 16028// 1. 16029const ( 16030 // H265GopBReferenceDisabled is a H265GopBReference enum value 16031 H265GopBReferenceDisabled = "DISABLED" 16032 16033 // H265GopBReferenceEnabled is a H265GopBReference enum value 16034 H265GopBReferenceEnabled = "ENABLED" 16035) 16036 16037// Indicates if the GOP Size in H265 is specified in frames or seconds. If seconds 16038// the system will convert the GOP Size into a frame count at run time. 16039const ( 16040 // H265GopSizeUnitsFrames is a H265GopSizeUnits enum value 16041 H265GopSizeUnitsFrames = "FRAMES" 16042 16043 // H265GopSizeUnitsSeconds is a H265GopSizeUnits enum value 16044 H265GopSizeUnitsSeconds = "SECONDS" 16045) 16046 16047// Use Interlace mode (InterlaceMode) to choose the scan line type for the output. 16048// * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce 16049// interlaced output with the entire output having the same field polarity (top 16050// or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default 16051// Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, 16052// behavior depends on the input scan type. - If the source is interlaced, the 16053// output will be interlaced with the same polarity as the source (it will follow 16054// the source). The output could therefore be a mix of "top field first" and 16055// "bottom field first". - If the source is progressive, the output will be 16056// interlaced with "top field first" or "bottom field first" polarity, depending 16057// on which of the Follow options you chose. 16058const ( 16059 // H265InterlaceModeProgressive is a H265InterlaceMode enum value 16060 H265InterlaceModeProgressive = "PROGRESSIVE" 16061 16062 // H265InterlaceModeTopField is a H265InterlaceMode enum value 16063 H265InterlaceModeTopField = "TOP_FIELD" 16064 16065 // H265InterlaceModeBottomField is a H265InterlaceMode enum value 16066 H265InterlaceModeBottomField = "BOTTOM_FIELD" 16067 16068 // H265InterlaceModeFollowTopField is a H265InterlaceMode enum value 16069 H265InterlaceModeFollowTopField = "FOLLOW_TOP_FIELD" 16070 16071 // H265InterlaceModeFollowBottomField is a H265InterlaceMode enum value 16072 H265InterlaceModeFollowBottomField = "FOLLOW_BOTTOM_FIELD" 16073) 16074 16075// Using the API, enable ParFollowSource if you want the service to use the 16076// pixel aspect ratio from the input. Using the console, do this by choosing 16077// Follow source for Pixel aspect ratio. 16078const ( 16079 // H265ParControlInitializeFromSource is a H265ParControl enum value 16080 H265ParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" 16081 16082 // H265ParControlSpecified is a H265ParControl enum value 16083 H265ParControlSpecified = "SPECIFIED" 16084) 16085 16086// Use Quality tuning level (H265QualityTuningLevel) to specifiy whether to 16087// use fast single-pass, high-quality singlepass, or high-quality multipass 16088// video encoding. 16089const ( 16090 // H265QualityTuningLevelSinglePass is a H265QualityTuningLevel enum value 16091 H265QualityTuningLevelSinglePass = "SINGLE_PASS" 16092 16093 // H265QualityTuningLevelSinglePassHq is a H265QualityTuningLevel enum value 16094 H265QualityTuningLevelSinglePassHq = "SINGLE_PASS_HQ" 16095 16096 // H265QualityTuningLevelMultiPassHq is a H265QualityTuningLevel enum value 16097 H265QualityTuningLevelMultiPassHq = "MULTI_PASS_HQ" 16098) 16099 16100// Use this setting to specify whether this output has a variable bitrate (VBR), 16101// constant bitrate (CBR) or quality-defined variable bitrate (QVBR). 16102const ( 16103 // H265RateControlModeVbr is a H265RateControlMode enum value 16104 H265RateControlModeVbr = "VBR" 16105 16106 // H265RateControlModeCbr is a H265RateControlMode enum value 16107 H265RateControlModeCbr = "CBR" 16108 16109 // H265RateControlModeQvbr is a H265RateControlMode enum value 16110 H265RateControlModeQvbr = "QVBR" 16111) 16112 16113// Specify Sample Adaptive Offset (SAO) filter strength. Adaptive mode dynamically 16114// selects best strength based on content 16115const ( 16116 // H265SampleAdaptiveOffsetFilterModeDefault is a H265SampleAdaptiveOffsetFilterMode enum value 16117 H265SampleAdaptiveOffsetFilterModeDefault = "DEFAULT" 16118 16119 // H265SampleAdaptiveOffsetFilterModeAdaptive is a H265SampleAdaptiveOffsetFilterMode enum value 16120 H265SampleAdaptiveOffsetFilterModeAdaptive = "ADAPTIVE" 16121 16122 // H265SampleAdaptiveOffsetFilterModeOff is a H265SampleAdaptiveOffsetFilterMode enum value 16123 H265SampleAdaptiveOffsetFilterModeOff = "OFF" 16124) 16125 16126// Scene change detection (inserts I-frames on scene changes). 16127const ( 16128 // H265SceneChangeDetectDisabled is a H265SceneChangeDetect enum value 16129 H265SceneChangeDetectDisabled = "DISABLED" 16130 16131 // H265SceneChangeDetectEnabled is a H265SceneChangeDetect enum value 16132 H265SceneChangeDetectEnabled = "ENABLED" 16133) 16134 16135// Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled 16136// as 25fps, and audio is sped up correspondingly. 16137const ( 16138 // H265SlowPalDisabled is a H265SlowPal enum value 16139 H265SlowPalDisabled = "DISABLED" 16140 16141 // H265SlowPalEnabled is a H265SlowPal enum value 16142 H265SlowPalEnabled = "ENABLED" 16143) 16144 16145// Adjust quantization within each frame based on spatial variation of content 16146// complexity. 16147const ( 16148 // H265SpatialAdaptiveQuantizationDisabled is a H265SpatialAdaptiveQuantization enum value 16149 H265SpatialAdaptiveQuantizationDisabled = "DISABLED" 16150 16151 // H265SpatialAdaptiveQuantizationEnabled is a H265SpatialAdaptiveQuantization enum value 16152 H265SpatialAdaptiveQuantizationEnabled = "ENABLED" 16153) 16154 16155// This field applies only if the Streams > Advanced > Framerate (framerate) 16156// field is set to 29.970. This field works with the Streams > Advanced > Preprocessors 16157// > Deinterlacer field (deinterlace_mode) and the Streams > Advanced > Interlaced 16158// Mode field (interlace_mode) to identify the scan type for the output: Progressive, 16159// Interlaced, Hard Telecine or Soft Telecine. - Hard: produces 29.97i output 16160// from 23.976 input. - Soft: produces 23.976; the player converts this output 16161// to 29.97i. 16162const ( 16163 // H265TelecineNone is a H265Telecine enum value 16164 H265TelecineNone = "NONE" 16165 16166 // H265TelecineSoft is a H265Telecine enum value 16167 H265TelecineSoft = "SOFT" 16168 16169 // H265TelecineHard is a H265Telecine enum value 16170 H265TelecineHard = "HARD" 16171) 16172 16173// Adjust quantization within each frame based on temporal variation of content 16174// complexity. 16175const ( 16176 // H265TemporalAdaptiveQuantizationDisabled is a H265TemporalAdaptiveQuantization enum value 16177 H265TemporalAdaptiveQuantizationDisabled = "DISABLED" 16178 16179 // H265TemporalAdaptiveQuantizationEnabled is a H265TemporalAdaptiveQuantization enum value 16180 H265TemporalAdaptiveQuantizationEnabled = "ENABLED" 16181) 16182 16183// Enables temporal layer identifiers in the encoded bitstream. Up to 3 layers 16184// are supported depending on GOP structure: I- and P-frames form one layer, 16185// reference B-frames can form a second layer and non-reference b-frames can 16186// form a third layer. Decoders can optionally decode only the lower temporal 16187// layers to generate a lower frame rate output. For example, given a bitstream 16188// with temporal IDs and with b-frames = 1 (i.e. IbPbPb display order), a decoder 16189// could decode all the frames for full frame rate output or only the I and 16190// P frames (lowest temporal layer) for a half frame rate output. 16191const ( 16192 // H265TemporalIdsDisabled is a H265TemporalIds enum value 16193 H265TemporalIdsDisabled = "DISABLED" 16194 16195 // H265TemporalIdsEnabled is a H265TemporalIds enum value 16196 H265TemporalIdsEnabled = "ENABLED" 16197) 16198 16199// Enable use of tiles, allowing horizontal as well as vertical subdivision 16200// of the encoded pictures. 16201const ( 16202 // H265TilesDisabled is a H265Tiles enum value 16203 H265TilesDisabled = "DISABLED" 16204 16205 // H265TilesEnabled is a H265Tiles enum value 16206 H265TilesEnabled = "ENABLED" 16207) 16208 16209// Inserts timecode for each frame as 4 bytes of an unregistered SEI message. 16210const ( 16211 // H265UnregisteredSeiTimecodeDisabled is a H265UnregisteredSeiTimecode enum value 16212 H265UnregisteredSeiTimecodeDisabled = "DISABLED" 16213 16214 // H265UnregisteredSeiTimecodeEnabled is a H265UnregisteredSeiTimecode enum value 16215 H265UnregisteredSeiTimecodeEnabled = "ENABLED" 16216) 16217 16218// If HVC1, output that is H.265 will be marked as HVC1 and adhere to the ISO-IECJTC1-SC29_N13798_Text_ISOIEC_FDIS_14496-15_3rd_E 16219// spec which states that parameter set NAL units will be stored in the sample 16220// headers but not in the samples directly. If HEV1, then H.265 will be marked 16221// as HEV1 and parameter set NAL units will be written into the samples. 16222const ( 16223 // H265WriteMp4PackagingTypeHvc1 is a H265WriteMp4PackagingType enum value 16224 H265WriteMp4PackagingTypeHvc1 = "HVC1" 16225 16226 // H265WriteMp4PackagingTypeHev1 is a H265WriteMp4PackagingType enum value 16227 H265WriteMp4PackagingTypeHev1 = "HEV1" 16228) 16229 16230const ( 16231 // HlsAdMarkersElemental is a HlsAdMarkers enum value 16232 HlsAdMarkersElemental = "ELEMENTAL" 16233 16234 // HlsAdMarkersElementalScte35 is a HlsAdMarkers enum value 16235 HlsAdMarkersElementalScte35 = "ELEMENTAL_SCTE35" 16236) 16237 16238// Four types of audio-only tracks are supported: Audio-Only Variant Stream 16239// The client can play back this audio-only stream instead of video in low-bandwidth 16240// scenarios. Represented as an EXT-X-STREAM-INF in the HLS manifest. Alternate 16241// Audio, Auto Select, Default Alternate rendition that the client should try 16242// to play back by default. Represented as an EXT-X-MEDIA in the HLS manifest 16243// with DEFAULT=YES, AUTOSELECT=YES Alternate Audio, Auto Select, Not Default 16244// Alternate rendition that the client may try to play back by default. Represented 16245// as an EXT-X-MEDIA in the HLS manifest with DEFAULT=NO, AUTOSELECT=YES Alternate 16246// Audio, not Auto Select Alternate rendition that the client will not try to 16247// play back by default. Represented as an EXT-X-MEDIA in the HLS manifest with 16248// DEFAULT=NO, AUTOSELECT=NO 16249const ( 16250 // HlsAudioTrackTypeAlternateAudioAutoSelectDefault is a HlsAudioTrackType enum value 16251 HlsAudioTrackTypeAlternateAudioAutoSelectDefault = "ALTERNATE_AUDIO_AUTO_SELECT_DEFAULT" 16252 16253 // HlsAudioTrackTypeAlternateAudioAutoSelect is a HlsAudioTrackType enum value 16254 HlsAudioTrackTypeAlternateAudioAutoSelect = "ALTERNATE_AUDIO_AUTO_SELECT" 16255 16256 // HlsAudioTrackTypeAlternateAudioNotAutoSelect is a HlsAudioTrackType enum value 16257 HlsAudioTrackTypeAlternateAudioNotAutoSelect = "ALTERNATE_AUDIO_NOT_AUTO_SELECT" 16258 16259 // HlsAudioTrackTypeAudioOnlyVariantStream is a HlsAudioTrackType enum value 16260 HlsAudioTrackTypeAudioOnlyVariantStream = "AUDIO_ONLY_VARIANT_STREAM" 16261) 16262 16263// Applies only to 608 Embedded output captions. Insert: Include CLOSED-CAPTIONS 16264// lines in the manifest. Specify at least one language in the CC1 Language 16265// Code field. One CLOSED-CAPTION line is added for each Language Code you specify. 16266// Make sure to specify the languages in the order in which they appear in the 16267// original source (if the source is embedded format) or the order of the caption 16268// selectors (if the source is other than embedded). Otherwise, languages in 16269// the manifest will not match up properly with the output captions. None: Include 16270// CLOSED-CAPTIONS=NONE line in the manifest. Omit: Omit any CLOSED-CAPTIONS 16271// line from the manifest. 16272const ( 16273 // HlsCaptionLanguageSettingInsert is a HlsCaptionLanguageSetting enum value 16274 HlsCaptionLanguageSettingInsert = "INSERT" 16275 16276 // HlsCaptionLanguageSettingOmit is a HlsCaptionLanguageSetting enum value 16277 HlsCaptionLanguageSettingOmit = "OMIT" 16278 16279 // HlsCaptionLanguageSettingNone is a HlsCaptionLanguageSetting enum value 16280 HlsCaptionLanguageSettingNone = "NONE" 16281) 16282 16283// When set to ENABLED, sets #EXT-X-ALLOW-CACHE:no tag, which prevents client 16284// from saving media segments for later replay. 16285const ( 16286 // HlsClientCacheDisabled is a HlsClientCache enum value 16287 HlsClientCacheDisabled = "DISABLED" 16288 16289 // HlsClientCacheEnabled is a HlsClientCache enum value 16290 HlsClientCacheEnabled = "ENABLED" 16291) 16292 16293// Specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist 16294// generation. 16295const ( 16296 // HlsCodecSpecificationRfc6381 is a HlsCodecSpecification enum value 16297 HlsCodecSpecificationRfc6381 = "RFC_6381" 16298 16299 // HlsCodecSpecificationRfc4281 is a HlsCodecSpecification enum value 16300 HlsCodecSpecificationRfc4281 = "RFC_4281" 16301) 16302 16303// Indicates whether segments should be placed in subdirectories. 16304const ( 16305 // HlsDirectoryStructureSingleDirectory is a HlsDirectoryStructure enum value 16306 HlsDirectoryStructureSingleDirectory = "SINGLE_DIRECTORY" 16307 16308 // HlsDirectoryStructureSubdirectoryPerStream is a HlsDirectoryStructure enum value 16309 HlsDirectoryStructureSubdirectoryPerStream = "SUBDIRECTORY_PER_STREAM" 16310) 16311 16312// Encrypts the segments with the given encryption scheme. Leave blank to disable. 16313// Selecting 'Disabled' in the web interface also disables encryption. 16314const ( 16315 // HlsEncryptionTypeAes128 is a HlsEncryptionType enum value 16316 HlsEncryptionTypeAes128 = "AES128" 16317 16318 // HlsEncryptionTypeSampleAes is a HlsEncryptionType enum value 16319 HlsEncryptionTypeSampleAes = "SAMPLE_AES" 16320) 16321 16322// When set to INCLUDE, writes I-Frame Only Manifest in addition to the HLS 16323// manifest 16324const ( 16325 // HlsIFrameOnlyManifestInclude is a HlsIFrameOnlyManifest enum value 16326 HlsIFrameOnlyManifestInclude = "INCLUDE" 16327 16328 // HlsIFrameOnlyManifestExclude is a HlsIFrameOnlyManifest enum value 16329 HlsIFrameOnlyManifestExclude = "EXCLUDE" 16330) 16331 16332// The Initialization Vector is a 128-bit number used in conjunction with the 16333// key for encrypting blocks. If set to INCLUDE, Initialization Vector is listed 16334// in the manifest. Otherwise Initialization Vector is not in the manifest. 16335const ( 16336 // HlsInitializationVectorInManifestInclude is a HlsInitializationVectorInManifest enum value 16337 HlsInitializationVectorInManifestInclude = "INCLUDE" 16338 16339 // HlsInitializationVectorInManifestExclude is a HlsInitializationVectorInManifest enum value 16340 HlsInitializationVectorInManifestExclude = "EXCLUDE" 16341) 16342 16343// Indicates which type of key provider is used for encryption. 16344const ( 16345 // HlsKeyProviderTypeSpeke is a HlsKeyProviderType enum value 16346 HlsKeyProviderTypeSpeke = "SPEKE" 16347 16348 // HlsKeyProviderTypeStaticKey is a HlsKeyProviderType enum value 16349 HlsKeyProviderTypeStaticKey = "STATIC_KEY" 16350) 16351 16352// When set to GZIP, compresses HLS playlist. 16353const ( 16354 // HlsManifestCompressionGzip is a HlsManifestCompression enum value 16355 HlsManifestCompressionGzip = "GZIP" 16356 16357 // HlsManifestCompressionNone is a HlsManifestCompression enum value 16358 HlsManifestCompressionNone = "NONE" 16359) 16360 16361// Indicates whether the output manifest should use floating point values for 16362// segment duration. 16363const ( 16364 // HlsManifestDurationFormatFloatingPoint is a HlsManifestDurationFormat enum value 16365 HlsManifestDurationFormatFloatingPoint = "FLOATING_POINT" 16366 16367 // HlsManifestDurationFormatInteger is a HlsManifestDurationFormat enum value 16368 HlsManifestDurationFormatInteger = "INTEGER" 16369) 16370 16371// Indicates whether the .m3u8 manifest file should be generated for this HLS 16372// output group. 16373const ( 16374 // HlsOutputSelectionManifestsAndSegments is a HlsOutputSelection enum value 16375 HlsOutputSelectionManifestsAndSegments = "MANIFESTS_AND_SEGMENTS" 16376 16377 // HlsOutputSelectionSegmentsOnly is a HlsOutputSelection enum value 16378 HlsOutputSelectionSegmentsOnly = "SEGMENTS_ONLY" 16379) 16380 16381// Includes or excludes EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files. 16382// The value is calculated as follows: either the program date and time are 16383// initialized using the input timecode source, or the time is initialized using 16384// the input timecode source and the date is initialized using the timestamp_offset. 16385const ( 16386 // HlsProgramDateTimeInclude is a HlsProgramDateTime enum value 16387 HlsProgramDateTimeInclude = "INCLUDE" 16388 16389 // HlsProgramDateTimeExclude is a HlsProgramDateTime enum value 16390 HlsProgramDateTimeExclude = "EXCLUDE" 16391) 16392 16393// When set to SINGLE_FILE, emits program as a single media resource (.ts) file, 16394// uses #EXT-X-BYTERANGE tags to index segment for playback. 16395const ( 16396 // HlsSegmentControlSingleFile is a HlsSegmentControl enum value 16397 HlsSegmentControlSingleFile = "SINGLE_FILE" 16398 16399 // HlsSegmentControlSegmentedFiles is a HlsSegmentControl enum value 16400 HlsSegmentControlSegmentedFiles = "SEGMENTED_FILES" 16401) 16402 16403// Include or exclude RESOLUTION attribute for video in EXT-X-STREAM-INF tag 16404// of variant manifest. 16405const ( 16406 // HlsStreamInfResolutionInclude is a HlsStreamInfResolution enum value 16407 HlsStreamInfResolutionInclude = "INCLUDE" 16408 16409 // HlsStreamInfResolutionExclude is a HlsStreamInfResolution enum value 16410 HlsStreamInfResolutionExclude = "EXCLUDE" 16411) 16412 16413// Indicates ID3 frame that has the timecode. 16414const ( 16415 // HlsTimedMetadataId3FrameNone is a HlsTimedMetadataId3Frame enum value 16416 HlsTimedMetadataId3FrameNone = "NONE" 16417 16418 // HlsTimedMetadataId3FramePriv is a HlsTimedMetadataId3Frame enum value 16419 HlsTimedMetadataId3FramePriv = "PRIV" 16420 16421 // HlsTimedMetadataId3FrameTdrl is a HlsTimedMetadataId3Frame enum value 16422 HlsTimedMetadataId3FrameTdrl = "TDRL" 16423) 16424 16425// Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. 16426// Default is disabled. Only manaully controllable for MPEG2 and uncompressed 16427// video inputs. 16428const ( 16429 // InputDeblockFilterEnabled is a InputDeblockFilter enum value 16430 InputDeblockFilterEnabled = "ENABLED" 16431 16432 // InputDeblockFilterDisabled is a InputDeblockFilter enum value 16433 InputDeblockFilterDisabled = "DISABLED" 16434) 16435 16436// Enable Denoise (InputDenoiseFilter) to filter noise from the input. Default 16437// is disabled. Only applicable to MPEG2, H.264, H.265, and uncompressed video 16438// inputs. 16439const ( 16440 // InputDenoiseFilterEnabled is a InputDenoiseFilter enum value 16441 InputDenoiseFilterEnabled = "ENABLED" 16442 16443 // InputDenoiseFilterDisabled is a InputDenoiseFilter enum value 16444 InputDenoiseFilterDisabled = "DISABLED" 16445) 16446 16447// Use Filter enable (InputFilterEnable) to specify how the transcoding service 16448// applies the denoise and deblock filters. You must also enable the filters 16449// separately, with Denoise (InputDenoiseFilter) and Deblock (InputDeblockFilter). 16450// * Auto - The transcoding service determines whether to apply filtering, depending 16451// on input type and quality. * Disable - The input is not filtered. This is 16452// true even if you use the API to enable them in (InputDeblockFilter) and (InputDeblockFilter). 16453// * Force - The in put is filtered regardless of input type. 16454const ( 16455 // InputFilterEnableAuto is a InputFilterEnable enum value 16456 InputFilterEnableAuto = "AUTO" 16457 16458 // InputFilterEnableDisable is a InputFilterEnable enum value 16459 InputFilterEnableDisable = "DISABLE" 16460 16461 // InputFilterEnableForce is a InputFilterEnable enum value 16462 InputFilterEnableForce = "FORCE" 16463) 16464 16465// Set PSI control (InputPsiControl) for transport stream inputs to specify 16466// which data the demux process to scans. * Ignore PSI - Scan all PIDs for audio 16467// and video. * Use PSI - Scan only PSI data. 16468const ( 16469 // InputPsiControlIgnorePsi is a InputPsiControl enum value 16470 InputPsiControlIgnorePsi = "IGNORE_PSI" 16471 16472 // InputPsiControlUsePsi is a InputPsiControl enum value 16473 InputPsiControlUsePsi = "USE_PSI" 16474) 16475 16476// Timecode source under input settings (InputTimecodeSource) only affects the 16477// behavior of features that apply to a single input at a time, such as input 16478// clipping and synchronizing some captions formats. Use this setting to specify 16479// whether the service counts frames by timecodes embedded in the video (EMBEDDED) 16480// or by starting the first frame at zero (ZEROBASED). In both cases, the timecode 16481// format is HH:MM:SS:FF or HH:MM:SS;FF, where FF is the frame number. Only 16482// set this to EMBEDDED if your source video has embedded timecodes. 16483const ( 16484 // InputTimecodeSourceEmbedded is a InputTimecodeSource enum value 16485 InputTimecodeSourceEmbedded = "EMBEDDED" 16486 16487 // InputTimecodeSourceZerobased is a InputTimecodeSource enum value 16488 InputTimecodeSourceZerobased = "ZEROBASED" 16489 16490 // InputTimecodeSourceSpecifiedstart is a InputTimecodeSource enum value 16491 InputTimecodeSourceSpecifiedstart = "SPECIFIEDSTART" 16492) 16493 16494// A job's status can be SUBMITTED, PROGRESSING, COMPLETE, CANCELED, or ERROR. 16495const ( 16496 // JobStatusSubmitted is a JobStatus enum value 16497 JobStatusSubmitted = "SUBMITTED" 16498 16499 // JobStatusProgressing is a JobStatus enum value 16500 JobStatusProgressing = "PROGRESSING" 16501 16502 // JobStatusComplete is a JobStatus enum value 16503 JobStatusComplete = "COMPLETE" 16504 16505 // JobStatusCanceled is a JobStatus enum value 16506 JobStatusCanceled = "CANCELED" 16507 16508 // JobStatusError is a JobStatus enum value 16509 JobStatusError = "ERROR" 16510) 16511 16512// Optional. When you request a list of job templates, you can choose to list 16513// them alphabetically by NAME or chronologically by CREATION_DATE. If you don't 16514// specify, the service will list them by name. 16515const ( 16516 // JobTemplateListByName is a JobTemplateListBy enum value 16517 JobTemplateListByName = "NAME" 16518 16519 // JobTemplateListByCreationDate is a JobTemplateListBy enum value 16520 JobTemplateListByCreationDate = "CREATION_DATE" 16521 16522 // JobTemplateListBySystem is a JobTemplateListBy enum value 16523 JobTemplateListBySystem = "SYSTEM" 16524) 16525 16526// Specify the language, using the ISO 639-2 three-letter code listed at https://www.loc.gov/standards/iso639-2/php/code_list.php. 16527const ( 16528 // LanguageCodeEng is a LanguageCode enum value 16529 LanguageCodeEng = "ENG" 16530 16531 // LanguageCodeSpa is a LanguageCode enum value 16532 LanguageCodeSpa = "SPA" 16533 16534 // LanguageCodeFra is a LanguageCode enum value 16535 LanguageCodeFra = "FRA" 16536 16537 // LanguageCodeDeu is a LanguageCode enum value 16538 LanguageCodeDeu = "DEU" 16539 16540 // LanguageCodeGer is a LanguageCode enum value 16541 LanguageCodeGer = "GER" 16542 16543 // LanguageCodeZho is a LanguageCode enum value 16544 LanguageCodeZho = "ZHO" 16545 16546 // LanguageCodeAra is a LanguageCode enum value 16547 LanguageCodeAra = "ARA" 16548 16549 // LanguageCodeHin is a LanguageCode enum value 16550 LanguageCodeHin = "HIN" 16551 16552 // LanguageCodeJpn is a LanguageCode enum value 16553 LanguageCodeJpn = "JPN" 16554 16555 // LanguageCodeRus is a LanguageCode enum value 16556 LanguageCodeRus = "RUS" 16557 16558 // LanguageCodePor is a LanguageCode enum value 16559 LanguageCodePor = "POR" 16560 16561 // LanguageCodeIta is a LanguageCode enum value 16562 LanguageCodeIta = "ITA" 16563 16564 // LanguageCodeUrd is a LanguageCode enum value 16565 LanguageCodeUrd = "URD" 16566 16567 // LanguageCodeVie is a LanguageCode enum value 16568 LanguageCodeVie = "VIE" 16569 16570 // LanguageCodeKor is a LanguageCode enum value 16571 LanguageCodeKor = "KOR" 16572 16573 // LanguageCodePan is a LanguageCode enum value 16574 LanguageCodePan = "PAN" 16575 16576 // LanguageCodeAbk is a LanguageCode enum value 16577 LanguageCodeAbk = "ABK" 16578 16579 // LanguageCodeAar is a LanguageCode enum value 16580 LanguageCodeAar = "AAR" 16581 16582 // LanguageCodeAfr is a LanguageCode enum value 16583 LanguageCodeAfr = "AFR" 16584 16585 // LanguageCodeAka is a LanguageCode enum value 16586 LanguageCodeAka = "AKA" 16587 16588 // LanguageCodeSqi is a LanguageCode enum value 16589 LanguageCodeSqi = "SQI" 16590 16591 // LanguageCodeAmh is a LanguageCode enum value 16592 LanguageCodeAmh = "AMH" 16593 16594 // LanguageCodeArg is a LanguageCode enum value 16595 LanguageCodeArg = "ARG" 16596 16597 // LanguageCodeHye is a LanguageCode enum value 16598 LanguageCodeHye = "HYE" 16599 16600 // LanguageCodeAsm is a LanguageCode enum value 16601 LanguageCodeAsm = "ASM" 16602 16603 // LanguageCodeAva is a LanguageCode enum value 16604 LanguageCodeAva = "AVA" 16605 16606 // LanguageCodeAve is a LanguageCode enum value 16607 LanguageCodeAve = "AVE" 16608 16609 // LanguageCodeAym is a LanguageCode enum value 16610 LanguageCodeAym = "AYM" 16611 16612 // LanguageCodeAze is a LanguageCode enum value 16613 LanguageCodeAze = "AZE" 16614 16615 // LanguageCodeBam is a LanguageCode enum value 16616 LanguageCodeBam = "BAM" 16617 16618 // LanguageCodeBak is a LanguageCode enum value 16619 LanguageCodeBak = "BAK" 16620 16621 // LanguageCodeEus is a LanguageCode enum value 16622 LanguageCodeEus = "EUS" 16623 16624 // LanguageCodeBel is a LanguageCode enum value 16625 LanguageCodeBel = "BEL" 16626 16627 // LanguageCodeBen is a LanguageCode enum value 16628 LanguageCodeBen = "BEN" 16629 16630 // LanguageCodeBih is a LanguageCode enum value 16631 LanguageCodeBih = "BIH" 16632 16633 // LanguageCodeBis is a LanguageCode enum value 16634 LanguageCodeBis = "BIS" 16635 16636 // LanguageCodeBos is a LanguageCode enum value 16637 LanguageCodeBos = "BOS" 16638 16639 // LanguageCodeBre is a LanguageCode enum value 16640 LanguageCodeBre = "BRE" 16641 16642 // LanguageCodeBul is a LanguageCode enum value 16643 LanguageCodeBul = "BUL" 16644 16645 // LanguageCodeMya is a LanguageCode enum value 16646 LanguageCodeMya = "MYA" 16647 16648 // LanguageCodeCat is a LanguageCode enum value 16649 LanguageCodeCat = "CAT" 16650 16651 // LanguageCodeKhm is a LanguageCode enum value 16652 LanguageCodeKhm = "KHM" 16653 16654 // LanguageCodeCha is a LanguageCode enum value 16655 LanguageCodeCha = "CHA" 16656 16657 // LanguageCodeChe is a LanguageCode enum value 16658 LanguageCodeChe = "CHE" 16659 16660 // LanguageCodeNya is a LanguageCode enum value 16661 LanguageCodeNya = "NYA" 16662 16663 // LanguageCodeChu is a LanguageCode enum value 16664 LanguageCodeChu = "CHU" 16665 16666 // LanguageCodeChv is a LanguageCode enum value 16667 LanguageCodeChv = "CHV" 16668 16669 // LanguageCodeCor is a LanguageCode enum value 16670 LanguageCodeCor = "COR" 16671 16672 // LanguageCodeCos is a LanguageCode enum value 16673 LanguageCodeCos = "COS" 16674 16675 // LanguageCodeCre is a LanguageCode enum value 16676 LanguageCodeCre = "CRE" 16677 16678 // LanguageCodeHrv is a LanguageCode enum value 16679 LanguageCodeHrv = "HRV" 16680 16681 // LanguageCodeCes is a LanguageCode enum value 16682 LanguageCodeCes = "CES" 16683 16684 // LanguageCodeDan is a LanguageCode enum value 16685 LanguageCodeDan = "DAN" 16686 16687 // LanguageCodeDiv is a LanguageCode enum value 16688 LanguageCodeDiv = "DIV" 16689 16690 // LanguageCodeNld is a LanguageCode enum value 16691 LanguageCodeNld = "NLD" 16692 16693 // LanguageCodeDzo is a LanguageCode enum value 16694 LanguageCodeDzo = "DZO" 16695 16696 // LanguageCodeEnm is a LanguageCode enum value 16697 LanguageCodeEnm = "ENM" 16698 16699 // LanguageCodeEpo is a LanguageCode enum value 16700 LanguageCodeEpo = "EPO" 16701 16702 // LanguageCodeEst is a LanguageCode enum value 16703 LanguageCodeEst = "EST" 16704 16705 // LanguageCodeEwe is a LanguageCode enum value 16706 LanguageCodeEwe = "EWE" 16707 16708 // LanguageCodeFao is a LanguageCode enum value 16709 LanguageCodeFao = "FAO" 16710 16711 // LanguageCodeFij is a LanguageCode enum value 16712 LanguageCodeFij = "FIJ" 16713 16714 // LanguageCodeFin is a LanguageCode enum value 16715 LanguageCodeFin = "FIN" 16716 16717 // LanguageCodeFrm is a LanguageCode enum value 16718 LanguageCodeFrm = "FRM" 16719 16720 // LanguageCodeFul is a LanguageCode enum value 16721 LanguageCodeFul = "FUL" 16722 16723 // LanguageCodeGla is a LanguageCode enum value 16724 LanguageCodeGla = "GLA" 16725 16726 // LanguageCodeGlg is a LanguageCode enum value 16727 LanguageCodeGlg = "GLG" 16728 16729 // LanguageCodeLug is a LanguageCode enum value 16730 LanguageCodeLug = "LUG" 16731 16732 // LanguageCodeKat is a LanguageCode enum value 16733 LanguageCodeKat = "KAT" 16734 16735 // LanguageCodeEll is a LanguageCode enum value 16736 LanguageCodeEll = "ELL" 16737 16738 // LanguageCodeGrn is a LanguageCode enum value 16739 LanguageCodeGrn = "GRN" 16740 16741 // LanguageCodeGuj is a LanguageCode enum value 16742 LanguageCodeGuj = "GUJ" 16743 16744 // LanguageCodeHat is a LanguageCode enum value 16745 LanguageCodeHat = "HAT" 16746 16747 // LanguageCodeHau is a LanguageCode enum value 16748 LanguageCodeHau = "HAU" 16749 16750 // LanguageCodeHeb is a LanguageCode enum value 16751 LanguageCodeHeb = "HEB" 16752 16753 // LanguageCodeHer is a LanguageCode enum value 16754 LanguageCodeHer = "HER" 16755 16756 // LanguageCodeHmo is a LanguageCode enum value 16757 LanguageCodeHmo = "HMO" 16758 16759 // LanguageCodeHun is a LanguageCode enum value 16760 LanguageCodeHun = "HUN" 16761 16762 // LanguageCodeIsl is a LanguageCode enum value 16763 LanguageCodeIsl = "ISL" 16764 16765 // LanguageCodeIdo is a LanguageCode enum value 16766 LanguageCodeIdo = "IDO" 16767 16768 // LanguageCodeIbo is a LanguageCode enum value 16769 LanguageCodeIbo = "IBO" 16770 16771 // LanguageCodeInd is a LanguageCode enum value 16772 LanguageCodeInd = "IND" 16773 16774 // LanguageCodeIna is a LanguageCode enum value 16775 LanguageCodeIna = "INA" 16776 16777 // LanguageCodeIle is a LanguageCode enum value 16778 LanguageCodeIle = "ILE" 16779 16780 // LanguageCodeIku is a LanguageCode enum value 16781 LanguageCodeIku = "IKU" 16782 16783 // LanguageCodeIpk is a LanguageCode enum value 16784 LanguageCodeIpk = "IPK" 16785 16786 // LanguageCodeGle is a LanguageCode enum value 16787 LanguageCodeGle = "GLE" 16788 16789 // LanguageCodeJav is a LanguageCode enum value 16790 LanguageCodeJav = "JAV" 16791 16792 // LanguageCodeKal is a LanguageCode enum value 16793 LanguageCodeKal = "KAL" 16794 16795 // LanguageCodeKan is a LanguageCode enum value 16796 LanguageCodeKan = "KAN" 16797 16798 // LanguageCodeKau is a LanguageCode enum value 16799 LanguageCodeKau = "KAU" 16800 16801 // LanguageCodeKas is a LanguageCode enum value 16802 LanguageCodeKas = "KAS" 16803 16804 // LanguageCodeKaz is a LanguageCode enum value 16805 LanguageCodeKaz = "KAZ" 16806 16807 // LanguageCodeKik is a LanguageCode enum value 16808 LanguageCodeKik = "KIK" 16809 16810 // LanguageCodeKin is a LanguageCode enum value 16811 LanguageCodeKin = "KIN" 16812 16813 // LanguageCodeKir is a LanguageCode enum value 16814 LanguageCodeKir = "KIR" 16815 16816 // LanguageCodeKom is a LanguageCode enum value 16817 LanguageCodeKom = "KOM" 16818 16819 // LanguageCodeKon is a LanguageCode enum value 16820 LanguageCodeKon = "KON" 16821 16822 // LanguageCodeKua is a LanguageCode enum value 16823 LanguageCodeKua = "KUA" 16824 16825 // LanguageCodeKur is a LanguageCode enum value 16826 LanguageCodeKur = "KUR" 16827 16828 // LanguageCodeLao is a LanguageCode enum value 16829 LanguageCodeLao = "LAO" 16830 16831 // LanguageCodeLat is a LanguageCode enum value 16832 LanguageCodeLat = "LAT" 16833 16834 // LanguageCodeLav is a LanguageCode enum value 16835 LanguageCodeLav = "LAV" 16836 16837 // LanguageCodeLim is a LanguageCode enum value 16838 LanguageCodeLim = "LIM" 16839 16840 // LanguageCodeLin is a LanguageCode enum value 16841 LanguageCodeLin = "LIN" 16842 16843 // LanguageCodeLit is a LanguageCode enum value 16844 LanguageCodeLit = "LIT" 16845 16846 // LanguageCodeLub is a LanguageCode enum value 16847 LanguageCodeLub = "LUB" 16848 16849 // LanguageCodeLtz is a LanguageCode enum value 16850 LanguageCodeLtz = "LTZ" 16851 16852 // LanguageCodeMkd is a LanguageCode enum value 16853 LanguageCodeMkd = "MKD" 16854 16855 // LanguageCodeMlg is a LanguageCode enum value 16856 LanguageCodeMlg = "MLG" 16857 16858 // LanguageCodeMsa is a LanguageCode enum value 16859 LanguageCodeMsa = "MSA" 16860 16861 // LanguageCodeMal is a LanguageCode enum value 16862 LanguageCodeMal = "MAL" 16863 16864 // LanguageCodeMlt is a LanguageCode enum value 16865 LanguageCodeMlt = "MLT" 16866 16867 // LanguageCodeGlv is a LanguageCode enum value 16868 LanguageCodeGlv = "GLV" 16869 16870 // LanguageCodeMri is a LanguageCode enum value 16871 LanguageCodeMri = "MRI" 16872 16873 // LanguageCodeMar is a LanguageCode enum value 16874 LanguageCodeMar = "MAR" 16875 16876 // LanguageCodeMah is a LanguageCode enum value 16877 LanguageCodeMah = "MAH" 16878 16879 // LanguageCodeMon is a LanguageCode enum value 16880 LanguageCodeMon = "MON" 16881 16882 // LanguageCodeNau is a LanguageCode enum value 16883 LanguageCodeNau = "NAU" 16884 16885 // LanguageCodeNav is a LanguageCode enum value 16886 LanguageCodeNav = "NAV" 16887 16888 // LanguageCodeNde is a LanguageCode enum value 16889 LanguageCodeNde = "NDE" 16890 16891 // LanguageCodeNbl is a LanguageCode enum value 16892 LanguageCodeNbl = "NBL" 16893 16894 // LanguageCodeNdo is a LanguageCode enum value 16895 LanguageCodeNdo = "NDO" 16896 16897 // LanguageCodeNep is a LanguageCode enum value 16898 LanguageCodeNep = "NEP" 16899 16900 // LanguageCodeSme is a LanguageCode enum value 16901 LanguageCodeSme = "SME" 16902 16903 // LanguageCodeNor is a LanguageCode enum value 16904 LanguageCodeNor = "NOR" 16905 16906 // LanguageCodeNob is a LanguageCode enum value 16907 LanguageCodeNob = "NOB" 16908 16909 // LanguageCodeNno is a LanguageCode enum value 16910 LanguageCodeNno = "NNO" 16911 16912 // LanguageCodeOci is a LanguageCode enum value 16913 LanguageCodeOci = "OCI" 16914 16915 // LanguageCodeOji is a LanguageCode enum value 16916 LanguageCodeOji = "OJI" 16917 16918 // LanguageCodeOri is a LanguageCode enum value 16919 LanguageCodeOri = "ORI" 16920 16921 // LanguageCodeOrm is a LanguageCode enum value 16922 LanguageCodeOrm = "ORM" 16923 16924 // LanguageCodeOss is a LanguageCode enum value 16925 LanguageCodeOss = "OSS" 16926 16927 // LanguageCodePli is a LanguageCode enum value 16928 LanguageCodePli = "PLI" 16929 16930 // LanguageCodeFas is a LanguageCode enum value 16931 LanguageCodeFas = "FAS" 16932 16933 // LanguageCodePol is a LanguageCode enum value 16934 LanguageCodePol = "POL" 16935 16936 // LanguageCodePus is a LanguageCode enum value 16937 LanguageCodePus = "PUS" 16938 16939 // LanguageCodeQue is a LanguageCode enum value 16940 LanguageCodeQue = "QUE" 16941 16942 // LanguageCodeQaa is a LanguageCode enum value 16943 LanguageCodeQaa = "QAA" 16944 16945 // LanguageCodeRon is a LanguageCode enum value 16946 LanguageCodeRon = "RON" 16947 16948 // LanguageCodeRoh is a LanguageCode enum value 16949 LanguageCodeRoh = "ROH" 16950 16951 // LanguageCodeRun is a LanguageCode enum value 16952 LanguageCodeRun = "RUN" 16953 16954 // LanguageCodeSmo is a LanguageCode enum value 16955 LanguageCodeSmo = "SMO" 16956 16957 // LanguageCodeSag is a LanguageCode enum value 16958 LanguageCodeSag = "SAG" 16959 16960 // LanguageCodeSan is a LanguageCode enum value 16961 LanguageCodeSan = "SAN" 16962 16963 // LanguageCodeSrd is a LanguageCode enum value 16964 LanguageCodeSrd = "SRD" 16965 16966 // LanguageCodeSrb is a LanguageCode enum value 16967 LanguageCodeSrb = "SRB" 16968 16969 // LanguageCodeSna is a LanguageCode enum value 16970 LanguageCodeSna = "SNA" 16971 16972 // LanguageCodeIii is a LanguageCode enum value 16973 LanguageCodeIii = "III" 16974 16975 // LanguageCodeSnd is a LanguageCode enum value 16976 LanguageCodeSnd = "SND" 16977 16978 // LanguageCodeSin is a LanguageCode enum value 16979 LanguageCodeSin = "SIN" 16980 16981 // LanguageCodeSlk is a LanguageCode enum value 16982 LanguageCodeSlk = "SLK" 16983 16984 // LanguageCodeSlv is a LanguageCode enum value 16985 LanguageCodeSlv = "SLV" 16986 16987 // LanguageCodeSom is a LanguageCode enum value 16988 LanguageCodeSom = "SOM" 16989 16990 // LanguageCodeSot is a LanguageCode enum value 16991 LanguageCodeSot = "SOT" 16992 16993 // LanguageCodeSun is a LanguageCode enum value 16994 LanguageCodeSun = "SUN" 16995 16996 // LanguageCodeSwa is a LanguageCode enum value 16997 LanguageCodeSwa = "SWA" 16998 16999 // LanguageCodeSsw is a LanguageCode enum value 17000 LanguageCodeSsw = "SSW" 17001 17002 // LanguageCodeSwe is a LanguageCode enum value 17003 LanguageCodeSwe = "SWE" 17004 17005 // LanguageCodeTgl is a LanguageCode enum value 17006 LanguageCodeTgl = "TGL" 17007 17008 // LanguageCodeTah is a LanguageCode enum value 17009 LanguageCodeTah = "TAH" 17010 17011 // LanguageCodeTgk is a LanguageCode enum value 17012 LanguageCodeTgk = "TGK" 17013 17014 // LanguageCodeTam is a LanguageCode enum value 17015 LanguageCodeTam = "TAM" 17016 17017 // LanguageCodeTat is a LanguageCode enum value 17018 LanguageCodeTat = "TAT" 17019 17020 // LanguageCodeTel is a LanguageCode enum value 17021 LanguageCodeTel = "TEL" 17022 17023 // LanguageCodeTha is a LanguageCode enum value 17024 LanguageCodeTha = "THA" 17025 17026 // LanguageCodeBod is a LanguageCode enum value 17027 LanguageCodeBod = "BOD" 17028 17029 // LanguageCodeTir is a LanguageCode enum value 17030 LanguageCodeTir = "TIR" 17031 17032 // LanguageCodeTon is a LanguageCode enum value 17033 LanguageCodeTon = "TON" 17034 17035 // LanguageCodeTso is a LanguageCode enum value 17036 LanguageCodeTso = "TSO" 17037 17038 // LanguageCodeTsn is a LanguageCode enum value 17039 LanguageCodeTsn = "TSN" 17040 17041 // LanguageCodeTur is a LanguageCode enum value 17042 LanguageCodeTur = "TUR" 17043 17044 // LanguageCodeTuk is a LanguageCode enum value 17045 LanguageCodeTuk = "TUK" 17046 17047 // LanguageCodeTwi is a LanguageCode enum value 17048 LanguageCodeTwi = "TWI" 17049 17050 // LanguageCodeUig is a LanguageCode enum value 17051 LanguageCodeUig = "UIG" 17052 17053 // LanguageCodeUkr is a LanguageCode enum value 17054 LanguageCodeUkr = "UKR" 17055 17056 // LanguageCodeUzb is a LanguageCode enum value 17057 LanguageCodeUzb = "UZB" 17058 17059 // LanguageCodeVen is a LanguageCode enum value 17060 LanguageCodeVen = "VEN" 17061 17062 // LanguageCodeVol is a LanguageCode enum value 17063 LanguageCodeVol = "VOL" 17064 17065 // LanguageCodeWln is a LanguageCode enum value 17066 LanguageCodeWln = "WLN" 17067 17068 // LanguageCodeCym is a LanguageCode enum value 17069 LanguageCodeCym = "CYM" 17070 17071 // LanguageCodeFry is a LanguageCode enum value 17072 LanguageCodeFry = "FRY" 17073 17074 // LanguageCodeWol is a LanguageCode enum value 17075 LanguageCodeWol = "WOL" 17076 17077 // LanguageCodeXho is a LanguageCode enum value 17078 LanguageCodeXho = "XHO" 17079 17080 // LanguageCodeYid is a LanguageCode enum value 17081 LanguageCodeYid = "YID" 17082 17083 // LanguageCodeYor is a LanguageCode enum value 17084 LanguageCodeYor = "YOR" 17085 17086 // LanguageCodeZha is a LanguageCode enum value 17087 LanguageCodeZha = "ZHA" 17088 17089 // LanguageCodeZul is a LanguageCode enum value 17090 LanguageCodeZul = "ZUL" 17091 17092 // LanguageCodeOrj is a LanguageCode enum value 17093 LanguageCodeOrj = "ORJ" 17094 17095 // LanguageCodeQpc is a LanguageCode enum value 17096 LanguageCodeQpc = "QPC" 17097 17098 // LanguageCodeTng is a LanguageCode enum value 17099 LanguageCodeTng = "TNG" 17100) 17101 17102// Selects between the DVB and ATSC buffer models for Dolby Digital audio. 17103const ( 17104 // M2tsAudioBufferModelDvb is a M2tsAudioBufferModel enum value 17105 M2tsAudioBufferModelDvb = "DVB" 17106 17107 // M2tsAudioBufferModelAtsc is a M2tsAudioBufferModel enum value 17108 M2tsAudioBufferModelAtsc = "ATSC" 17109) 17110 17111// Controls what buffer model to use for accurate interleaving. If set to MULTIPLEX, 17112// use multiplex buffer model. If set to NONE, this can lead to lower latency, 17113// but low-memory devices may not be able to play back the stream without interruptions. 17114const ( 17115 // M2tsBufferModelMultiplex is a M2tsBufferModel enum value 17116 M2tsBufferModelMultiplex = "MULTIPLEX" 17117 17118 // M2tsBufferModelNone is a M2tsBufferModel enum value 17119 M2tsBufferModelNone = "NONE" 17120) 17121 17122// When set to VIDEO_AND_FIXED_INTERVALS, audio EBP markers will be added to 17123// partitions 3 and 4. The interval between these additional markers will be 17124// fixed, and will be slightly shorter than the video EBP marker interval. When 17125// set to VIDEO_INTERVAL, these additional markers will not be inserted. Only 17126// applicable when EBP segmentation markers are is selected (segmentationMarkers 17127// is EBP or EBP_LEGACY). 17128const ( 17129 // M2tsEbpAudioIntervalVideoAndFixedIntervals is a M2tsEbpAudioInterval enum value 17130 M2tsEbpAudioIntervalVideoAndFixedIntervals = "VIDEO_AND_FIXED_INTERVALS" 17131 17132 // M2tsEbpAudioIntervalVideoInterval is a M2tsEbpAudioInterval enum value 17133 M2tsEbpAudioIntervalVideoInterval = "VIDEO_INTERVAL" 17134) 17135 17136// Selects which PIDs to place EBP markers on. They can either be placed only 17137// on the video PID, or on both the video PID and all audio PIDs. Only applicable 17138// when EBP segmentation markers are is selected (segmentationMarkers is EBP 17139// or EBP_LEGACY). 17140const ( 17141 // M2tsEbpPlacementVideoAndAudioPids is a M2tsEbpPlacement enum value 17142 M2tsEbpPlacementVideoAndAudioPids = "VIDEO_AND_AUDIO_PIDS" 17143 17144 // M2tsEbpPlacementVideoPid is a M2tsEbpPlacement enum value 17145 M2tsEbpPlacementVideoPid = "VIDEO_PID" 17146) 17147 17148// Controls whether to include the ES Rate field in the PES header. 17149const ( 17150 // M2tsEsRateInPesInclude is a M2tsEsRateInPes enum value 17151 M2tsEsRateInPesInclude = "INCLUDE" 17152 17153 // M2tsEsRateInPesExclude is a M2tsEsRateInPes enum value 17154 M2tsEsRateInPesExclude = "EXCLUDE" 17155) 17156 17157// If INSERT, Nielsen inaudible tones for media tracking will be detected in 17158// the input audio and an equivalent ID3 tag will be inserted in the output. 17159const ( 17160 // M2tsNielsenId3Insert is a M2tsNielsenId3 enum value 17161 M2tsNielsenId3Insert = "INSERT" 17162 17163 // M2tsNielsenId3None is a M2tsNielsenId3 enum value 17164 M2tsNielsenId3None = "NONE" 17165) 17166 17167// When set to PCR_EVERY_PES_PACKET, a Program Clock Reference value is inserted 17168// for every Packetized Elementary Stream (PES) header. This is effective only 17169// when the PCR PID is the same as the video or audio elementary stream. 17170const ( 17171 // M2tsPcrControlPcrEveryPesPacket is a M2tsPcrControl enum value 17172 M2tsPcrControlPcrEveryPesPacket = "PCR_EVERY_PES_PACKET" 17173 17174 // M2tsPcrControlConfiguredPcrPeriod is a M2tsPcrControl enum value 17175 M2tsPcrControlConfiguredPcrPeriod = "CONFIGURED_PCR_PERIOD" 17176) 17177 17178// When set to CBR, inserts null packets into transport stream to fill specified 17179// bitrate. When set to VBR, the bitrate setting acts as the maximum bitrate, 17180// but the output will not be padded up to that bitrate. 17181const ( 17182 // M2tsRateModeVbr is a M2tsRateMode enum value 17183 M2tsRateModeVbr = "VBR" 17184 17185 // M2tsRateModeCbr is a M2tsRateMode enum value 17186 M2tsRateModeCbr = "CBR" 17187) 17188 17189// Enables SCTE-35 passthrough (scte35Source) to pass any SCTE-35 signals from 17190// input to output. 17191const ( 17192 // M2tsScte35SourcePassthrough is a M2tsScte35Source enum value 17193 M2tsScte35SourcePassthrough = "PASSTHROUGH" 17194 17195 // M2tsScte35SourceNone is a M2tsScte35Source enum value 17196 M2tsScte35SourceNone = "NONE" 17197) 17198 17199// Inserts segmentation markers at each segmentation_time period. rai_segstart 17200// sets the Random Access Indicator bit in the adaptation field. rai_adapt sets 17201// the RAI bit and adds the current timecode in the private data bytes. psi_segstart 17202// inserts PAT and PMT tables at the start of segments. ebp adds Encoder Boundary 17203// Point information to the adaptation field as per OpenCable specification 17204// OC-SP-EBP-I01-130118. ebp_legacy adds Encoder Boundary Point information 17205// to the adaptation field using a legacy proprietary format. 17206const ( 17207 // M2tsSegmentationMarkersNone is a M2tsSegmentationMarkers enum value 17208 M2tsSegmentationMarkersNone = "NONE" 17209 17210 // M2tsSegmentationMarkersRaiSegstart is a M2tsSegmentationMarkers enum value 17211 M2tsSegmentationMarkersRaiSegstart = "RAI_SEGSTART" 17212 17213 // M2tsSegmentationMarkersRaiAdapt is a M2tsSegmentationMarkers enum value 17214 M2tsSegmentationMarkersRaiAdapt = "RAI_ADAPT" 17215 17216 // M2tsSegmentationMarkersPsiSegstart is a M2tsSegmentationMarkers enum value 17217 M2tsSegmentationMarkersPsiSegstart = "PSI_SEGSTART" 17218 17219 // M2tsSegmentationMarkersEbp is a M2tsSegmentationMarkers enum value 17220 M2tsSegmentationMarkersEbp = "EBP" 17221 17222 // M2tsSegmentationMarkersEbpLegacy is a M2tsSegmentationMarkers enum value 17223 M2tsSegmentationMarkersEbpLegacy = "EBP_LEGACY" 17224) 17225 17226// The segmentation style parameter controls how segmentation markers are inserted 17227// into the transport stream. With avails, it is possible that segments may 17228// be truncated, which can influence where future segmentation markers are inserted. 17229// When a segmentation style of "reset_cadence" is selected and a segment is 17230// truncated due to an avail, we will reset the segmentation cadence. This means 17231// the subsequent segment will have a duration of of $segmentation_time seconds. 17232// When a segmentation style of "maintain_cadence" is selected and a segment 17233// is truncated due to an avail, we will not reset the segmentation cadence. 17234// This means the subsequent segment will likely be truncated as well. However, 17235// all segments after that will have a duration of $segmentation_time seconds. 17236// Note that EBP lookahead is a slight exception to this rule. 17237const ( 17238 // M2tsSegmentationStyleMaintainCadence is a M2tsSegmentationStyle enum value 17239 M2tsSegmentationStyleMaintainCadence = "MAINTAIN_CADENCE" 17240 17241 // M2tsSegmentationStyleResetCadence is a M2tsSegmentationStyle enum value 17242 M2tsSegmentationStyleResetCadence = "RESET_CADENCE" 17243) 17244 17245// If INSERT, Nielsen inaudible tones for media tracking will be detected in 17246// the input audio and an equivalent ID3 tag will be inserted in the output. 17247const ( 17248 // M3u8NielsenId3Insert is a M3u8NielsenId3 enum value 17249 M3u8NielsenId3Insert = "INSERT" 17250 17251 // M3u8NielsenId3None is a M3u8NielsenId3 enum value 17252 M3u8NielsenId3None = "NONE" 17253) 17254 17255// When set to PCR_EVERY_PES_PACKET a Program Clock Reference value is inserted 17256// for every Packetized Elementary Stream (PES) header. This parameter is effective 17257// only when the PCR PID is the same as the video or audio elementary stream. 17258const ( 17259 // M3u8PcrControlPcrEveryPesPacket is a M3u8PcrControl enum value 17260 M3u8PcrControlPcrEveryPesPacket = "PCR_EVERY_PES_PACKET" 17261 17262 // M3u8PcrControlConfiguredPcrPeriod is a M3u8PcrControl enum value 17263 M3u8PcrControlConfiguredPcrPeriod = "CONFIGURED_PCR_PERIOD" 17264) 17265 17266// Enables SCTE-35 passthrough (scte35Source) to pass any SCTE-35 signals from 17267// input to output. 17268const ( 17269 // M3u8Scte35SourcePassthrough is a M3u8Scte35Source enum value 17270 M3u8Scte35SourcePassthrough = "PASSTHROUGH" 17271 17272 // M3u8Scte35SourceNone is a M3u8Scte35Source enum value 17273 M3u8Scte35SourceNone = "NONE" 17274) 17275 17276// When enabled, include 'clap' atom if appropriate for the video output settings. 17277const ( 17278 // MovClapAtomInclude is a MovClapAtom enum value 17279 MovClapAtomInclude = "INCLUDE" 17280 17281 // MovClapAtomExclude is a MovClapAtom enum value 17282 MovClapAtomExclude = "EXCLUDE" 17283) 17284 17285// When enabled, file composition times will start at zero, composition times 17286// in the 'ctts' (composition time to sample) box for B-frames will be negative, 17287// and a 'cslg' (composition shift least greatest) box will be included per 17288// 14496-1 amendment 1. This improves compatibility with Apple players and tools. 17289const ( 17290 // MovCslgAtomInclude is a MovCslgAtom enum value 17291 MovCslgAtomInclude = "INCLUDE" 17292 17293 // MovCslgAtomExclude is a MovCslgAtom enum value 17294 MovCslgAtomExclude = "EXCLUDE" 17295) 17296 17297// When set to XDCAM, writes MPEG2 video streams into the QuickTime file using 17298// XDCAM fourcc codes. This increases compatibility with Apple editors and players, 17299// but may decrease compatibility with other players. Only applicable when the 17300// video codec is MPEG2. 17301const ( 17302 // MovMpeg2FourCCControlXdcam is a MovMpeg2FourCCControl enum value 17303 MovMpeg2FourCCControlXdcam = "XDCAM" 17304 17305 // MovMpeg2FourCCControlMpeg is a MovMpeg2FourCCControl enum value 17306 MovMpeg2FourCCControlMpeg = "MPEG" 17307) 17308 17309// If set to OMNEON, inserts Omneon-compatible padding 17310const ( 17311 // MovPaddingControlOmneon is a MovPaddingControl enum value 17312 MovPaddingControlOmneon = "OMNEON" 17313 17314 // MovPaddingControlNone is a MovPaddingControl enum value 17315 MovPaddingControlNone = "NONE" 17316) 17317 17318// A value of 'external' creates separate media files and the wrapper file (.mov) 17319// contains references to these media files. A value of 'self_contained' creates 17320// only a wrapper (.mov) file and this file contains all of the media. 17321const ( 17322 // MovReferenceSelfContained is a MovReference enum value 17323 MovReferenceSelfContained = "SELF_CONTAINED" 17324 17325 // MovReferenceExternal is a MovReference enum value 17326 MovReferenceExternal = "EXTERNAL" 17327) 17328 17329// When enabled, file composition times will start at zero, composition times 17330// in the 'ctts' (composition time to sample) box for B-frames will be negative, 17331// and a 'cslg' (composition shift least greatest) box will be included per 17332// 14496-1 amendment 1. This improves compatibility with Apple players and tools. 17333const ( 17334 // Mp4CslgAtomInclude is a Mp4CslgAtom enum value 17335 Mp4CslgAtomInclude = "INCLUDE" 17336 17337 // Mp4CslgAtomExclude is a Mp4CslgAtom enum value 17338 Mp4CslgAtomExclude = "EXCLUDE" 17339) 17340 17341// Inserts a free-space box immediately after the moov box. 17342const ( 17343 // Mp4FreeSpaceBoxInclude is a Mp4FreeSpaceBox enum value 17344 Mp4FreeSpaceBoxInclude = "INCLUDE" 17345 17346 // Mp4FreeSpaceBoxExclude is a Mp4FreeSpaceBox enum value 17347 Mp4FreeSpaceBoxExclude = "EXCLUDE" 17348) 17349 17350// If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning 17351// of the archive as required for progressive downloading. Otherwise it is placed 17352// normally at the end. 17353const ( 17354 // Mp4MoovPlacementProgressiveDownload is a Mp4MoovPlacement enum value 17355 Mp4MoovPlacementProgressiveDownload = "PROGRESSIVE_DOWNLOAD" 17356 17357 // Mp4MoovPlacementNormal is a Mp4MoovPlacement enum value 17358 Mp4MoovPlacementNormal = "NORMAL" 17359) 17360 17361// Adaptive quantization. Allows intra-frame quantizers to vary to improve visual 17362// quality. 17363const ( 17364 // Mpeg2AdaptiveQuantizationOff is a Mpeg2AdaptiveQuantization enum value 17365 Mpeg2AdaptiveQuantizationOff = "OFF" 17366 17367 // Mpeg2AdaptiveQuantizationLow is a Mpeg2AdaptiveQuantization enum value 17368 Mpeg2AdaptiveQuantizationLow = "LOW" 17369 17370 // Mpeg2AdaptiveQuantizationMedium is a Mpeg2AdaptiveQuantization enum value 17371 Mpeg2AdaptiveQuantizationMedium = "MEDIUM" 17372 17373 // Mpeg2AdaptiveQuantizationHigh is a Mpeg2AdaptiveQuantization enum value 17374 Mpeg2AdaptiveQuantizationHigh = "HIGH" 17375) 17376 17377// Use Level (Mpeg2CodecLevel) to set the MPEG-2 level for the video output. 17378const ( 17379 // Mpeg2CodecLevelAuto is a Mpeg2CodecLevel enum value 17380 Mpeg2CodecLevelAuto = "AUTO" 17381 17382 // Mpeg2CodecLevelLow is a Mpeg2CodecLevel enum value 17383 Mpeg2CodecLevelLow = "LOW" 17384 17385 // Mpeg2CodecLevelMain is a Mpeg2CodecLevel enum value 17386 Mpeg2CodecLevelMain = "MAIN" 17387 17388 // Mpeg2CodecLevelHigh1440 is a Mpeg2CodecLevel enum value 17389 Mpeg2CodecLevelHigh1440 = "HIGH1440" 17390 17391 // Mpeg2CodecLevelHigh is a Mpeg2CodecLevel enum value 17392 Mpeg2CodecLevelHigh = "HIGH" 17393) 17394 17395// Use Profile (Mpeg2CodecProfile) to set the MPEG-2 profile for the video output. 17396const ( 17397 // Mpeg2CodecProfileMain is a Mpeg2CodecProfile enum value 17398 Mpeg2CodecProfileMain = "MAIN" 17399 17400 // Mpeg2CodecProfileProfile422 is a Mpeg2CodecProfile enum value 17401 Mpeg2CodecProfileProfile422 = "PROFILE_422" 17402) 17403 17404// Choose Adaptive to improve subjective video quality for high-motion content. 17405// This will cause the service to use fewer B-frames (which infer information 17406// based on other frames) for high-motion portions of the video and more B-frames 17407// for low-motion portions. The maximum number of B-frames is limited by the 17408// value you provide for the setting B frames between reference frames (numberBFramesBetweenReferenceFrames). 17409const ( 17410 // Mpeg2DynamicSubGopAdaptive is a Mpeg2DynamicSubGop enum value 17411 Mpeg2DynamicSubGopAdaptive = "ADAPTIVE" 17412 17413 // Mpeg2DynamicSubGopStatic is a Mpeg2DynamicSubGop enum value 17414 Mpeg2DynamicSubGopStatic = "STATIC" 17415) 17416 17417// If you are using the console, use the Framerate setting to specify the framerate 17418// for this output. If you want to keep the same framerate as the input video, 17419// choose Follow source. If you want to do framerate conversion, choose a framerate 17420// from the dropdown list or choose Custom. The framerates shown in the dropdown 17421// list are decimal approximations of fractions. If you choose Custom, specify 17422// your framerate as a fraction. If you are creating your transcoding job sepecification 17423// as a JSON file without the console, use FramerateControl to specify which 17424// value the service uses for the framerate for this output. Choose INITIALIZE_FROM_SOURCE 17425// if you want the service to use the framerate from the input. Choose SPECIFIED 17426// if you want the service to use the framerate you specify in the settings 17427// FramerateNumerator and FramerateDenominator. 17428const ( 17429 // Mpeg2FramerateControlInitializeFromSource is a Mpeg2FramerateControl enum value 17430 Mpeg2FramerateControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" 17431 17432 // Mpeg2FramerateControlSpecified is a Mpeg2FramerateControl enum value 17433 Mpeg2FramerateControlSpecified = "SPECIFIED" 17434) 17435 17436// When set to INTERPOLATE, produces smoother motion during framerate conversion. 17437const ( 17438 // Mpeg2FramerateConversionAlgorithmDuplicateDrop is a Mpeg2FramerateConversionAlgorithm enum value 17439 Mpeg2FramerateConversionAlgorithmDuplicateDrop = "DUPLICATE_DROP" 17440 17441 // Mpeg2FramerateConversionAlgorithmInterpolate is a Mpeg2FramerateConversionAlgorithm enum value 17442 Mpeg2FramerateConversionAlgorithmInterpolate = "INTERPOLATE" 17443) 17444 17445// Indicates if the GOP Size in MPEG2 is specified in frames or seconds. If 17446// seconds the system will convert the GOP Size into a frame count at run time. 17447const ( 17448 // Mpeg2GopSizeUnitsFrames is a Mpeg2GopSizeUnits enum value 17449 Mpeg2GopSizeUnitsFrames = "FRAMES" 17450 17451 // Mpeg2GopSizeUnitsSeconds is a Mpeg2GopSizeUnits enum value 17452 Mpeg2GopSizeUnitsSeconds = "SECONDS" 17453) 17454 17455// Use Interlace mode (InterlaceMode) to choose the scan line type for the output. 17456// * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce 17457// interlaced output with the entire output having the same field polarity (top 17458// or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default 17459// Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, 17460// behavior depends on the input scan type. - If the source is interlaced, the 17461// output will be interlaced with the same polarity as the source (it will follow 17462// the source). The output could therefore be a mix of "top field first" and 17463// "bottom field first". - If the source is progressive, the output will be 17464// interlaced with "top field first" or "bottom field first" polarity, depending 17465// on which of the Follow options you chose. 17466const ( 17467 // Mpeg2InterlaceModeProgressive is a Mpeg2InterlaceMode enum value 17468 Mpeg2InterlaceModeProgressive = "PROGRESSIVE" 17469 17470 // Mpeg2InterlaceModeTopField is a Mpeg2InterlaceMode enum value 17471 Mpeg2InterlaceModeTopField = "TOP_FIELD" 17472 17473 // Mpeg2InterlaceModeBottomField is a Mpeg2InterlaceMode enum value 17474 Mpeg2InterlaceModeBottomField = "BOTTOM_FIELD" 17475 17476 // Mpeg2InterlaceModeFollowTopField is a Mpeg2InterlaceMode enum value 17477 Mpeg2InterlaceModeFollowTopField = "FOLLOW_TOP_FIELD" 17478 17479 // Mpeg2InterlaceModeFollowBottomField is a Mpeg2InterlaceMode enum value 17480 Mpeg2InterlaceModeFollowBottomField = "FOLLOW_BOTTOM_FIELD" 17481) 17482 17483// Use Intra DC precision (Mpeg2IntraDcPrecision) to set quantization precision 17484// for intra-block DC coefficients. If you choose the value auto, the service 17485// will automatically select the precision based on the per-frame compression 17486// ratio. 17487const ( 17488 // Mpeg2IntraDcPrecisionAuto is a Mpeg2IntraDcPrecision enum value 17489 Mpeg2IntraDcPrecisionAuto = "AUTO" 17490 17491 // Mpeg2IntraDcPrecisionIntraDcPrecision8 is a Mpeg2IntraDcPrecision enum value 17492 Mpeg2IntraDcPrecisionIntraDcPrecision8 = "INTRA_DC_PRECISION_8" 17493 17494 // Mpeg2IntraDcPrecisionIntraDcPrecision9 is a Mpeg2IntraDcPrecision enum value 17495 Mpeg2IntraDcPrecisionIntraDcPrecision9 = "INTRA_DC_PRECISION_9" 17496 17497 // Mpeg2IntraDcPrecisionIntraDcPrecision10 is a Mpeg2IntraDcPrecision enum value 17498 Mpeg2IntraDcPrecisionIntraDcPrecision10 = "INTRA_DC_PRECISION_10" 17499 17500 // Mpeg2IntraDcPrecisionIntraDcPrecision11 is a Mpeg2IntraDcPrecision enum value 17501 Mpeg2IntraDcPrecisionIntraDcPrecision11 = "INTRA_DC_PRECISION_11" 17502) 17503 17504// Using the API, enable ParFollowSource if you want the service to use the 17505// pixel aspect ratio from the input. Using the console, do this by choosing 17506// Follow source for Pixel aspect ratio. 17507const ( 17508 // Mpeg2ParControlInitializeFromSource is a Mpeg2ParControl enum value 17509 Mpeg2ParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" 17510 17511 // Mpeg2ParControlSpecified is a Mpeg2ParControl enum value 17512 Mpeg2ParControlSpecified = "SPECIFIED" 17513) 17514 17515// Use Quality tuning level (Mpeg2QualityTuningLevel) to specifiy whether to 17516// use single-pass or multipass video encoding. 17517const ( 17518 // Mpeg2QualityTuningLevelSinglePass is a Mpeg2QualityTuningLevel enum value 17519 Mpeg2QualityTuningLevelSinglePass = "SINGLE_PASS" 17520 17521 // Mpeg2QualityTuningLevelMultiPass is a Mpeg2QualityTuningLevel enum value 17522 Mpeg2QualityTuningLevelMultiPass = "MULTI_PASS" 17523) 17524 17525// Use Rate control mode (Mpeg2RateControlMode) to specifiy whether the bitrate 17526// is variable (vbr) or constant (cbr). 17527const ( 17528 // Mpeg2RateControlModeVbr is a Mpeg2RateControlMode enum value 17529 Mpeg2RateControlModeVbr = "VBR" 17530 17531 // Mpeg2RateControlModeCbr is a Mpeg2RateControlMode enum value 17532 Mpeg2RateControlModeCbr = "CBR" 17533) 17534 17535// Scene change detection (inserts I-frames on scene changes). 17536const ( 17537 // Mpeg2SceneChangeDetectDisabled is a Mpeg2SceneChangeDetect enum value 17538 Mpeg2SceneChangeDetectDisabled = "DISABLED" 17539 17540 // Mpeg2SceneChangeDetectEnabled is a Mpeg2SceneChangeDetect enum value 17541 Mpeg2SceneChangeDetectEnabled = "ENABLED" 17542) 17543 17544// Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled 17545// as 25fps, and audio is sped up correspondingly. 17546const ( 17547 // Mpeg2SlowPalDisabled is a Mpeg2SlowPal enum value 17548 Mpeg2SlowPalDisabled = "DISABLED" 17549 17550 // Mpeg2SlowPalEnabled is a Mpeg2SlowPal enum value 17551 Mpeg2SlowPalEnabled = "ENABLED" 17552) 17553 17554// Adjust quantization within each frame based on spatial variation of content 17555// complexity. 17556const ( 17557 // Mpeg2SpatialAdaptiveQuantizationDisabled is a Mpeg2SpatialAdaptiveQuantization enum value 17558 Mpeg2SpatialAdaptiveQuantizationDisabled = "DISABLED" 17559 17560 // Mpeg2SpatialAdaptiveQuantizationEnabled is a Mpeg2SpatialAdaptiveQuantization enum value 17561 Mpeg2SpatialAdaptiveQuantizationEnabled = "ENABLED" 17562) 17563 17564// Produces a Type D-10 compatible bitstream (SMPTE 356M-2001). 17565const ( 17566 // Mpeg2SyntaxDefault is a Mpeg2Syntax enum value 17567 Mpeg2SyntaxDefault = "DEFAULT" 17568 17569 // Mpeg2SyntaxD10 is a Mpeg2Syntax enum value 17570 Mpeg2SyntaxD10 = "D_10" 17571) 17572 17573// Only use Telecine (Mpeg2Telecine) when you set Framerate (Framerate) to 29.970. 17574// Set Telecine (Mpeg2Telecine) to Hard (hard) to produce a 29.97i output from 17575// a 23.976 input. Set it to Soft (soft) to produce 23.976 output and leave 17576// converstion to the player. 17577const ( 17578 // Mpeg2TelecineNone is a Mpeg2Telecine enum value 17579 Mpeg2TelecineNone = "NONE" 17580 17581 // Mpeg2TelecineSoft is a Mpeg2Telecine enum value 17582 Mpeg2TelecineSoft = "SOFT" 17583 17584 // Mpeg2TelecineHard is a Mpeg2Telecine enum value 17585 Mpeg2TelecineHard = "HARD" 17586) 17587 17588// Adjust quantization within each frame based on temporal variation of content 17589// complexity. 17590const ( 17591 // Mpeg2TemporalAdaptiveQuantizationDisabled is a Mpeg2TemporalAdaptiveQuantization enum value 17592 Mpeg2TemporalAdaptiveQuantizationDisabled = "DISABLED" 17593 17594 // Mpeg2TemporalAdaptiveQuantizationEnabled is a Mpeg2TemporalAdaptiveQuantization enum value 17595 Mpeg2TemporalAdaptiveQuantizationEnabled = "ENABLED" 17596) 17597 17598// COMBINE_DUPLICATE_STREAMS combines identical audio encoding settings across 17599// a Microsoft Smooth output group into a single audio stream. 17600const ( 17601 // MsSmoothAudioDeduplicationCombineDuplicateStreams is a MsSmoothAudioDeduplication enum value 17602 MsSmoothAudioDeduplicationCombineDuplicateStreams = "COMBINE_DUPLICATE_STREAMS" 17603 17604 // MsSmoothAudioDeduplicationNone is a MsSmoothAudioDeduplication enum value 17605 MsSmoothAudioDeduplicationNone = "NONE" 17606) 17607 17608// Use Manifest encoding (MsSmoothManifestEncoding) to specify the encoding 17609// format for the server and client manifest. Valid options are utf8 and utf16. 17610const ( 17611 // MsSmoothManifestEncodingUtf8 is a MsSmoothManifestEncoding enum value 17612 MsSmoothManifestEncodingUtf8 = "UTF8" 17613 17614 // MsSmoothManifestEncodingUtf16 is a MsSmoothManifestEncoding enum value 17615 MsSmoothManifestEncodingUtf16 = "UTF16" 17616) 17617 17618// Use Noise reducer filter (NoiseReducerFilter) to select one of the following 17619// spatial image filtering functions. To use this setting, you must also enable 17620// Noise reducer (NoiseReducer). * Bilateral is an edge preserving noise reduction 17621// filter. * Mean (softest), Gaussian, Lanczos, and Sharpen (sharpest) are convolution 17622// filters. * Conserve is a min/max noise reduction filter. * Spatial is a frequency-domain 17623// filter based on JND principles. 17624const ( 17625 // NoiseReducerFilterBilateral is a NoiseReducerFilter enum value 17626 NoiseReducerFilterBilateral = "BILATERAL" 17627 17628 // NoiseReducerFilterMean is a NoiseReducerFilter enum value 17629 NoiseReducerFilterMean = "MEAN" 17630 17631 // NoiseReducerFilterGaussian is a NoiseReducerFilter enum value 17632 NoiseReducerFilterGaussian = "GAUSSIAN" 17633 17634 // NoiseReducerFilterLanczos is a NoiseReducerFilter enum value 17635 NoiseReducerFilterLanczos = "LANCZOS" 17636 17637 // NoiseReducerFilterSharpen is a NoiseReducerFilter enum value 17638 NoiseReducerFilterSharpen = "SHARPEN" 17639 17640 // NoiseReducerFilterConserve is a NoiseReducerFilter enum value 17641 NoiseReducerFilterConserve = "CONSERVE" 17642 17643 // NoiseReducerFilterSpatial is a NoiseReducerFilter enum value 17644 NoiseReducerFilterSpatial = "SPATIAL" 17645) 17646 17647// When you request lists of resources, you can optionally specify whether they 17648// are sorted in ASCENDING or DESCENDING order. Default varies by resource. 17649const ( 17650 // OrderAscending is a Order enum value 17651 OrderAscending = "ASCENDING" 17652 17653 // OrderDescending is a Order enum value 17654 OrderDescending = "DESCENDING" 17655) 17656 17657// Type of output group (File group, Apple HLS, DASH ISO, Microsoft Smooth Streaming, 17658// CMAF) 17659const ( 17660 // OutputGroupTypeHlsGroupSettings is a OutputGroupType enum value 17661 OutputGroupTypeHlsGroupSettings = "HLS_GROUP_SETTINGS" 17662 17663 // OutputGroupTypeDashIsoGroupSettings is a OutputGroupType enum value 17664 OutputGroupTypeDashIsoGroupSettings = "DASH_ISO_GROUP_SETTINGS" 17665 17666 // OutputGroupTypeFileGroupSettings is a OutputGroupType enum value 17667 OutputGroupTypeFileGroupSettings = "FILE_GROUP_SETTINGS" 17668 17669 // OutputGroupTypeMsSmoothGroupSettings is a OutputGroupType enum value 17670 OutputGroupTypeMsSmoothGroupSettings = "MS_SMOOTH_GROUP_SETTINGS" 17671 17672 // OutputGroupTypeCmafGroupSettings is a OutputGroupType enum value 17673 OutputGroupTypeCmafGroupSettings = "CMAF_GROUP_SETTINGS" 17674) 17675 17676// Selects method of inserting SDT information into output stream. "Follow input 17677// SDT" copies SDT information from input stream to output stream. "Follow input 17678// SDT if present" copies SDT information from input stream to output stream 17679// if SDT information is present in the input, otherwise it will fall back on 17680// the user-defined values. Enter "SDT Manually" means user will enter the SDT 17681// information. "No SDT" means output stream will not contain SDT information. 17682const ( 17683 // OutputSdtSdtFollow is a OutputSdt enum value 17684 OutputSdtSdtFollow = "SDT_FOLLOW" 17685 17686 // OutputSdtSdtFollowIfPresent is a OutputSdt enum value 17687 OutputSdtSdtFollowIfPresent = "SDT_FOLLOW_IF_PRESENT" 17688 17689 // OutputSdtSdtManual is a OutputSdt enum value 17690 OutputSdtSdtManual = "SDT_MANUAL" 17691 17692 // OutputSdtSdtNone is a OutputSdt enum value 17693 OutputSdtSdtNone = "SDT_NONE" 17694) 17695 17696// Optional. When you request a list of presets, you can choose to list them 17697// alphabetically by NAME or chronologically by CREATION_DATE. If you don't 17698// specify, the service will list them by name. 17699const ( 17700 // PresetListByName is a PresetListBy enum value 17701 PresetListByName = "NAME" 17702 17703 // PresetListByCreationDate is a PresetListBy enum value 17704 PresetListByCreationDate = "CREATION_DATE" 17705 17706 // PresetListBySystem is a PresetListBy enum value 17707 PresetListBySystem = "SYSTEM" 17708) 17709 17710// Use Profile (ProResCodecProfile) to specifiy the type of Apple ProRes codec 17711// to use for this output. 17712const ( 17713 // ProresCodecProfileAppleProres422 is a ProresCodecProfile enum value 17714 ProresCodecProfileAppleProres422 = "APPLE_PRORES_422" 17715 17716 // ProresCodecProfileAppleProres422Hq is a ProresCodecProfile enum value 17717 ProresCodecProfileAppleProres422Hq = "APPLE_PRORES_422_HQ" 17718 17719 // ProresCodecProfileAppleProres422Lt is a ProresCodecProfile enum value 17720 ProresCodecProfileAppleProres422Lt = "APPLE_PRORES_422_LT" 17721 17722 // ProresCodecProfileAppleProres422Proxy is a ProresCodecProfile enum value 17723 ProresCodecProfileAppleProres422Proxy = "APPLE_PRORES_422_PROXY" 17724) 17725 17726// If you are using the console, use the Framerate setting to specify the framerate 17727// for this output. If you want to keep the same framerate as the input video, 17728// choose Follow source. If you want to do framerate conversion, choose a framerate 17729// from the dropdown list or choose Custom. The framerates shown in the dropdown 17730// list are decimal approximations of fractions. If you choose Custom, specify 17731// your framerate as a fraction. If you are creating your transcoding job sepecification 17732// as a JSON file without the console, use FramerateControl to specify which 17733// value the service uses for the framerate for this output. Choose INITIALIZE_FROM_SOURCE 17734// if you want the service to use the framerate from the input. Choose SPECIFIED 17735// if you want the service to use the framerate you specify in the settings 17736// FramerateNumerator and FramerateDenominator. 17737const ( 17738 // ProresFramerateControlInitializeFromSource is a ProresFramerateControl enum value 17739 ProresFramerateControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" 17740 17741 // ProresFramerateControlSpecified is a ProresFramerateControl enum value 17742 ProresFramerateControlSpecified = "SPECIFIED" 17743) 17744 17745// When set to INTERPOLATE, produces smoother motion during framerate conversion. 17746const ( 17747 // ProresFramerateConversionAlgorithmDuplicateDrop is a ProresFramerateConversionAlgorithm enum value 17748 ProresFramerateConversionAlgorithmDuplicateDrop = "DUPLICATE_DROP" 17749 17750 // ProresFramerateConversionAlgorithmInterpolate is a ProresFramerateConversionAlgorithm enum value 17751 ProresFramerateConversionAlgorithmInterpolate = "INTERPOLATE" 17752) 17753 17754// Use Interlace mode (InterlaceMode) to choose the scan line type for the output. 17755// * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce 17756// interlaced output with the entire output having the same field polarity (top 17757// or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default 17758// Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, 17759// behavior depends on the input scan type. - If the source is interlaced, the 17760// output will be interlaced with the same polarity as the source (it will follow 17761// the source). The output could therefore be a mix of "top field first" and 17762// "bottom field first". - If the source is progressive, the output will be 17763// interlaced with "top field first" or "bottom field first" polarity, depending 17764// on which of the Follow options you chose. 17765const ( 17766 // ProresInterlaceModeProgressive is a ProresInterlaceMode enum value 17767 ProresInterlaceModeProgressive = "PROGRESSIVE" 17768 17769 // ProresInterlaceModeTopField is a ProresInterlaceMode enum value 17770 ProresInterlaceModeTopField = "TOP_FIELD" 17771 17772 // ProresInterlaceModeBottomField is a ProresInterlaceMode enum value 17773 ProresInterlaceModeBottomField = "BOTTOM_FIELD" 17774 17775 // ProresInterlaceModeFollowTopField is a ProresInterlaceMode enum value 17776 ProresInterlaceModeFollowTopField = "FOLLOW_TOP_FIELD" 17777 17778 // ProresInterlaceModeFollowBottomField is a ProresInterlaceMode enum value 17779 ProresInterlaceModeFollowBottomField = "FOLLOW_BOTTOM_FIELD" 17780) 17781 17782// Use (ProresParControl) to specify how the service determines the pixel aspect 17783// ratio. Set to Follow source (INITIALIZE_FROM_SOURCE) to use the pixel aspect 17784// ratio from the input. To specify a different pixel aspect ratio: Using the 17785// console, choose it from the dropdown menu. Using the API, set ProresParControl 17786// to (SPECIFIED) and provide for (ParNumerator) and (ParDenominator). 17787const ( 17788 // ProresParControlInitializeFromSource is a ProresParControl enum value 17789 ProresParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" 17790 17791 // ProresParControlSpecified is a ProresParControl enum value 17792 ProresParControlSpecified = "SPECIFIED" 17793) 17794 17795// Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled 17796// as 25fps, and audio is sped up correspondingly. 17797const ( 17798 // ProresSlowPalDisabled is a ProresSlowPal enum value 17799 ProresSlowPalDisabled = "DISABLED" 17800 17801 // ProresSlowPalEnabled is a ProresSlowPal enum value 17802 ProresSlowPalEnabled = "ENABLED" 17803) 17804 17805// Only use Telecine (ProresTelecine) when you set Framerate (Framerate) to 17806// 29.970. Set Telecine (ProresTelecine) to Hard (hard) to produce a 29.97i 17807// output from a 23.976 input. Set it to Soft (soft) to produce 23.976 output 17808// and leave converstion to the player. 17809const ( 17810 // ProresTelecineNone is a ProresTelecine enum value 17811 ProresTelecineNone = "NONE" 17812 17813 // ProresTelecineHard is a ProresTelecine enum value 17814 ProresTelecineHard = "HARD" 17815) 17816 17817// Optional. When you request a list of queues, you can choose to list them 17818// alphabetically by NAME or chronologically by CREATION_DATE. If you don't 17819// specify, the service will list them by creation date. 17820const ( 17821 // QueueListByName is a QueueListBy enum value 17822 QueueListByName = "NAME" 17823 17824 // QueueListByCreationDate is a QueueListBy enum value 17825 QueueListByCreationDate = "CREATION_DATE" 17826) 17827 17828// Queues can be ACTIVE or PAUSED. If you pause a queue, jobs in that queue 17829// will not begin. Jobs running when a queue is paused continue to run until 17830// they finish or error out. 17831const ( 17832 // QueueStatusActive is a QueueStatus enum value 17833 QueueStatusActive = "ACTIVE" 17834 17835 // QueueStatusPaused is a QueueStatus enum value 17836 QueueStatusPaused = "PAUSED" 17837) 17838 17839// Use Respond to AFD (RespondToAfd) to specify how the service changes the 17840// video itself in response to AFD values in the input. * Choose Respond to 17841// clip the input video frame according to the AFD value, input display aspect 17842// ratio, and output display aspect ratio. * Choose Passthrough to include the 17843// input AFD values. Do not choose this when AfdSignaling is set to (NONE). 17844// A preferred implementation of this workflow is to set RespondToAfd to (NONE) 17845// and set AfdSignaling to (AUTO). * Choose None to remove all input AFD values 17846// from this output. 17847const ( 17848 // RespondToAfdNone is a RespondToAfd enum value 17849 RespondToAfdNone = "NONE" 17850 17851 // RespondToAfdRespond is a RespondToAfd enum value 17852 RespondToAfdRespond = "RESPOND" 17853 17854 // RespondToAfdPassthrough is a RespondToAfd enum value 17855 RespondToAfdPassthrough = "PASSTHROUGH" 17856) 17857 17858// Applies only if your input aspect ratio is different from your output aspect 17859// ratio. Enable Stretch to output (StretchToOutput) to have the service stretch 17860// your video image to fit. Leave this setting disabled to allow the service 17861// to letterbox your video instead. This setting overrides any positioning value 17862// you specify elsewhere in the job. 17863const ( 17864 // ScalingBehaviorDefault is a ScalingBehavior enum value 17865 ScalingBehaviorDefault = "DEFAULT" 17866 17867 // ScalingBehaviorStretchToOutput is a ScalingBehavior enum value 17868 ScalingBehaviorStretchToOutput = "STRETCH_TO_OUTPUT" 17869) 17870 17871// Set Framerate (SccDestinationFramerate) to make sure that the captions and 17872// the video are synchronized in the output. Specify a framerate that matches 17873// the framerate of the associated video. If the video framerate is 29.97, choose 17874// 29.97 dropframe (FRAMERATE_29_97_DROPFRAME) only if the video has video_insertion=true 17875// and drop_frame_timecode=true; otherwise, choose 29.97 non-dropframe (FRAMERATE_29_97_NON_DROPFRAME). 17876const ( 17877 // SccDestinationFramerateFramerate2397 is a SccDestinationFramerate enum value 17878 SccDestinationFramerateFramerate2397 = "FRAMERATE_23_97" 17879 17880 // SccDestinationFramerateFramerate24 is a SccDestinationFramerate enum value 17881 SccDestinationFramerateFramerate24 = "FRAMERATE_24" 17882 17883 // SccDestinationFramerateFramerate2997Dropframe is a SccDestinationFramerate enum value 17884 SccDestinationFramerateFramerate2997Dropframe = "FRAMERATE_29_97_DROPFRAME" 17885 17886 // SccDestinationFramerateFramerate2997NonDropframe is a SccDestinationFramerate enum value 17887 SccDestinationFramerateFramerate2997NonDropframe = "FRAMERATE_29_97_NON_DROPFRAME" 17888) 17889 17890// Use Position (Position) under under Timecode burn-in (TimecodeBurnIn) to 17891// specify the location the burned-in timecode on output video. 17892const ( 17893 // TimecodeBurninPositionTopCenter is a TimecodeBurninPosition enum value 17894 TimecodeBurninPositionTopCenter = "TOP_CENTER" 17895 17896 // TimecodeBurninPositionTopLeft is a TimecodeBurninPosition enum value 17897 TimecodeBurninPositionTopLeft = "TOP_LEFT" 17898 17899 // TimecodeBurninPositionTopRight is a TimecodeBurninPosition enum value 17900 TimecodeBurninPositionTopRight = "TOP_RIGHT" 17901 17902 // TimecodeBurninPositionMiddleLeft is a TimecodeBurninPosition enum value 17903 TimecodeBurninPositionMiddleLeft = "MIDDLE_LEFT" 17904 17905 // TimecodeBurninPositionMiddleCenter is a TimecodeBurninPosition enum value 17906 TimecodeBurninPositionMiddleCenter = "MIDDLE_CENTER" 17907 17908 // TimecodeBurninPositionMiddleRight is a TimecodeBurninPosition enum value 17909 TimecodeBurninPositionMiddleRight = "MIDDLE_RIGHT" 17910 17911 // TimecodeBurninPositionBottomLeft is a TimecodeBurninPosition enum value 17912 TimecodeBurninPositionBottomLeft = "BOTTOM_LEFT" 17913 17914 // TimecodeBurninPositionBottomCenter is a TimecodeBurninPosition enum value 17915 TimecodeBurninPositionBottomCenter = "BOTTOM_CENTER" 17916 17917 // TimecodeBurninPositionBottomRight is a TimecodeBurninPosition enum value 17918 TimecodeBurninPositionBottomRight = "BOTTOM_RIGHT" 17919) 17920 17921// Use Source (TimecodeSource) to set how timecodes are handled within this 17922// job. To make sure that your video, audio, captions, and markers are synchronized 17923// and that time-based features, such as image inserter, work correctly, choose 17924// the Timecode source option that matches your assets. All timecodes are in 17925// a 24-hour format with frame number (HH:MM:SS:FF). * Embedded (EMBEDDED) - 17926// Use the timecode that is in the input video. If no embedded timecode is in 17927// the source, the service will use Start at 0 (ZEROBASED) instead. * Start 17928// at 0 (ZEROBASED) - Set the timecode of the initial frame to 00:00:00:00. 17929// * Specified Start (SPECIFIEDSTART) - Set the timecode of the initial frame 17930// to a value other than zero. You use Start timecode (Start) to provide this 17931// value. 17932const ( 17933 // TimecodeSourceEmbedded is a TimecodeSource enum value 17934 TimecodeSourceEmbedded = "EMBEDDED" 17935 17936 // TimecodeSourceZerobased is a TimecodeSource enum value 17937 TimecodeSourceZerobased = "ZEROBASED" 17938 17939 // TimecodeSourceSpecifiedstart is a TimecodeSource enum value 17940 TimecodeSourceSpecifiedstart = "SPECIFIEDSTART" 17941) 17942 17943// Applies only to HLS outputs. Use this setting to specify whether the service 17944// inserts the ID3 timed metadata from the input in this output. 17945const ( 17946 // TimedMetadataPassthrough is a TimedMetadata enum value 17947 TimedMetadataPassthrough = "PASSTHROUGH" 17948 17949 // TimedMetadataNone is a TimedMetadata enum value 17950 TimedMetadataNone = "NONE" 17951) 17952 17953// Pass through style and position information from a TTML-like input source 17954// (TTML, SMPTE-TT, CFF-TT) to the CFF-TT output or TTML output. 17955const ( 17956 // TtmlStylePassthroughEnabled is a TtmlStylePassthrough enum value 17957 TtmlStylePassthroughEnabled = "ENABLED" 17958 17959 // TtmlStylePassthroughDisabled is a TtmlStylePassthrough enum value 17960 TtmlStylePassthroughDisabled = "DISABLED" 17961) 17962 17963const ( 17964 // TypeSystem is a Type enum value 17965 TypeSystem = "SYSTEM" 17966 17967 // TypeCustom is a Type enum value 17968 TypeCustom = "CUSTOM" 17969) 17970 17971// Type of video codec 17972const ( 17973 // VideoCodecFrameCapture is a VideoCodec enum value 17974 VideoCodecFrameCapture = "FRAME_CAPTURE" 17975 17976 // VideoCodecH264 is a VideoCodec enum value 17977 VideoCodecH264 = "H_264" 17978 17979 // VideoCodecH265 is a VideoCodec enum value 17980 VideoCodecH265 = "H_265" 17981 17982 // VideoCodecMpeg2 is a VideoCodec enum value 17983 VideoCodecMpeg2 = "MPEG2" 17984 17985 // VideoCodecProres is a VideoCodec enum value 17986 VideoCodecProres = "PRORES" 17987) 17988 17989// Applies only to H.264, H.265, MPEG2, and ProRes outputs. Only enable Timecode 17990// insertion when the input framerate is identical to the output framerate. 17991// To include timecodes in this output, set Timecode insertion (VideoTimecodeInsertion) 17992// to PIC_TIMING_SEI. To leave them out, set it to DISABLED. Default is DISABLED. 17993// When the service inserts timecodes in an output, by default, it uses any 17994// embedded timecodes from the input. If none are present, the service will 17995// set the timecode for the first output frame to zero. To change this default 17996// behavior, adjust the settings under Timecode configuration (TimecodeConfig). 17997// In the console, these settings are located under Job > Job settings > Timecode 17998// configuration. Note - Timecode source under input settings (InputTimecodeSource) 17999// does not affect the timecodes that are inserted in the output. Source under 18000// Job settings > Timecode configuration (TimecodeSource) does. 18001const ( 18002 // VideoTimecodeInsertionDisabled is a VideoTimecodeInsertion enum value 18003 VideoTimecodeInsertionDisabled = "DISABLED" 18004 18005 // VideoTimecodeInsertionPicTimingSei is a VideoTimecodeInsertion enum value 18006 VideoTimecodeInsertionPicTimingSei = "PIC_TIMING_SEI" 18007) 18008 18009// The service defaults to using RIFF for WAV outputs. If your output audio 18010// is likely to exceed 4 GB in file size, or if you otherwise need the extended 18011// support of the RF64 format, set your output WAV file format to RF64. 18012const ( 18013 // WavFormatRiff is a WavFormat enum value 18014 WavFormatRiff = "RIFF" 18015 18016 // WavFormatRf64 is a WavFormat enum value 18017 WavFormatRf64 = "RF64" 18018) 18019