// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. package mediaconvert import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/restjson" ) const opAssociateCertificate = "AssociateCertificate" // AssociateCertificateRequest generates a "aws/request.Request" representing the // client's request for the AssociateCertificate operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See AssociateCertificate for more information on using the AssociateCertificate // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the AssociateCertificateRequest method. // req, resp := client.AssociateCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/AssociateCertificate func (c *MediaConvert) AssociateCertificateRequest(input *AssociateCertificateInput) (req *request.Request, output *AssociateCertificateOutput) { op := &request.Operation{ Name: opAssociateCertificate, HTTPMethod: "POST", HTTPPath: "/2017-08-29/certificates", } if input == nil { input = &AssociateCertificateInput{} } output = &AssociateCertificateOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // AssociateCertificate API operation for AWS Elemental MediaConvert. // // Associates an AWS Certificate Manager (ACM) Amazon Resource Name (ARN) with // AWS Elemental MediaConvert. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation AssociateCertificate for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/AssociateCertificate func (c *MediaConvert) AssociateCertificate(input *AssociateCertificateInput) (*AssociateCertificateOutput, error) { req, out := c.AssociateCertificateRequest(input) return out, req.Send() } // AssociateCertificateWithContext is the same as AssociateCertificate with the addition of // the ability to pass a context and additional request options. // // See AssociateCertificate for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) AssociateCertificateWithContext(ctx aws.Context, input *AssociateCertificateInput, opts ...request.Option) (*AssociateCertificateOutput, error) { req, out := c.AssociateCertificateRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCancelJob = "CancelJob" // CancelJobRequest generates a "aws/request.Request" representing the // client's request for the CancelJob operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CancelJob for more information on using the CancelJob // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the CancelJobRequest method. // req, resp := client.CancelJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CancelJob func (c *MediaConvert) CancelJobRequest(input *CancelJobInput) (req *request.Request, output *CancelJobOutput) { op := &request.Operation{ Name: opCancelJob, HTTPMethod: "DELETE", HTTPPath: "/2017-08-29/jobs/{id}", } if input == nil { input = &CancelJobInput{} } output = &CancelJobOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // CancelJob API operation for AWS Elemental MediaConvert. // // Permanently cancel a job. Once you have canceled a job, you can't start it // again. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation CancelJob for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CancelJob func (c *MediaConvert) CancelJob(input *CancelJobInput) (*CancelJobOutput, error) { req, out := c.CancelJobRequest(input) return out, req.Send() } // CancelJobWithContext is the same as CancelJob with the addition of // the ability to pass a context and additional request options. // // See CancelJob for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) CancelJobWithContext(ctx aws.Context, input *CancelJobInput, opts ...request.Option) (*CancelJobOutput, error) { req, out := c.CancelJobRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateJob = "CreateJob" // CreateJobRequest generates a "aws/request.Request" representing the // client's request for the CreateJob operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateJob for more information on using the CreateJob // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the CreateJobRequest method. // req, resp := client.CreateJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreateJob func (c *MediaConvert) CreateJobRequest(input *CreateJobInput) (req *request.Request, output *CreateJobOutput) { op := &request.Operation{ Name: opCreateJob, HTTPMethod: "POST", HTTPPath: "/2017-08-29/jobs", } if input == nil { input = &CreateJobInput{} } output = &CreateJobOutput{} req = c.newRequest(op, input, output) return } // CreateJob API operation for AWS Elemental MediaConvert. // // Create a new transcoding job. For information about jobs and job settings, // see the User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation CreateJob for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreateJob func (c *MediaConvert) CreateJob(input *CreateJobInput) (*CreateJobOutput, error) { req, out := c.CreateJobRequest(input) return out, req.Send() } // CreateJobWithContext is the same as CreateJob with the addition of // the ability to pass a context and additional request options. // // See CreateJob for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) CreateJobWithContext(ctx aws.Context, input *CreateJobInput, opts ...request.Option) (*CreateJobOutput, error) { req, out := c.CreateJobRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateJobTemplate = "CreateJobTemplate" // CreateJobTemplateRequest generates a "aws/request.Request" representing the // client's request for the CreateJobTemplate operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateJobTemplate for more information on using the CreateJobTemplate // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the CreateJobTemplateRequest method. // req, resp := client.CreateJobTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreateJobTemplate func (c *MediaConvert) CreateJobTemplateRequest(input *CreateJobTemplateInput) (req *request.Request, output *CreateJobTemplateOutput) { op := &request.Operation{ Name: opCreateJobTemplate, HTTPMethod: "POST", HTTPPath: "/2017-08-29/jobTemplates", } if input == nil { input = &CreateJobTemplateInput{} } output = &CreateJobTemplateOutput{} req = c.newRequest(op, input, output) return } // CreateJobTemplate API operation for AWS Elemental MediaConvert. // // Create a new job template. For information about job templates see the User // Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation CreateJobTemplate for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreateJobTemplate func (c *MediaConvert) CreateJobTemplate(input *CreateJobTemplateInput) (*CreateJobTemplateOutput, error) { req, out := c.CreateJobTemplateRequest(input) return out, req.Send() } // CreateJobTemplateWithContext is the same as CreateJobTemplate with the addition of // the ability to pass a context and additional request options. // // See CreateJobTemplate for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) CreateJobTemplateWithContext(ctx aws.Context, input *CreateJobTemplateInput, opts ...request.Option) (*CreateJobTemplateOutput, error) { req, out := c.CreateJobTemplateRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreatePreset = "CreatePreset" // CreatePresetRequest generates a "aws/request.Request" representing the // client's request for the CreatePreset operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreatePreset for more information on using the CreatePreset // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the CreatePresetRequest method. // req, resp := client.CreatePresetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreatePreset func (c *MediaConvert) CreatePresetRequest(input *CreatePresetInput) (req *request.Request, output *CreatePresetOutput) { op := &request.Operation{ Name: opCreatePreset, HTTPMethod: "POST", HTTPPath: "/2017-08-29/presets", } if input == nil { input = &CreatePresetInput{} } output = &CreatePresetOutput{} req = c.newRequest(op, input, output) return } // CreatePreset API operation for AWS Elemental MediaConvert. // // Create a new preset. For information about job templates see the User Guide // at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation CreatePreset for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreatePreset func (c *MediaConvert) CreatePreset(input *CreatePresetInput) (*CreatePresetOutput, error) { req, out := c.CreatePresetRequest(input) return out, req.Send() } // CreatePresetWithContext is the same as CreatePreset with the addition of // the ability to pass a context and additional request options. // // See CreatePreset for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) CreatePresetWithContext(ctx aws.Context, input *CreatePresetInput, opts ...request.Option) (*CreatePresetOutput, error) { req, out := c.CreatePresetRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateQueue = "CreateQueue" // CreateQueueRequest generates a "aws/request.Request" representing the // client's request for the CreateQueue operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateQueue for more information on using the CreateQueue // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the CreateQueueRequest method. // req, resp := client.CreateQueueRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreateQueue func (c *MediaConvert) CreateQueueRequest(input *CreateQueueInput) (req *request.Request, output *CreateQueueOutput) { op := &request.Operation{ Name: opCreateQueue, HTTPMethod: "POST", HTTPPath: "/2017-08-29/queues", } if input == nil { input = &CreateQueueInput{} } output = &CreateQueueOutput{} req = c.newRequest(op, input, output) return } // CreateQueue API operation for AWS Elemental MediaConvert. // // Create a new transcoding queue. For information about queues, see Working // With Queues in the User Guide at https://docs.aws.amazon.com/mediaconvert/latest/ug/working-with-queues.html // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation CreateQueue for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/CreateQueue func (c *MediaConvert) CreateQueue(input *CreateQueueInput) (*CreateQueueOutput, error) { req, out := c.CreateQueueRequest(input) return out, req.Send() } // CreateQueueWithContext is the same as CreateQueue with the addition of // the ability to pass a context and additional request options. // // See CreateQueue for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) CreateQueueWithContext(ctx aws.Context, input *CreateQueueInput, opts ...request.Option) (*CreateQueueOutput, error) { req, out := c.CreateQueueRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteJobTemplate = "DeleteJobTemplate" // DeleteJobTemplateRequest generates a "aws/request.Request" representing the // client's request for the DeleteJobTemplate operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteJobTemplate for more information on using the DeleteJobTemplate // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteJobTemplateRequest method. // req, resp := client.DeleteJobTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DeleteJobTemplate func (c *MediaConvert) DeleteJobTemplateRequest(input *DeleteJobTemplateInput) (req *request.Request, output *DeleteJobTemplateOutput) { op := &request.Operation{ Name: opDeleteJobTemplate, HTTPMethod: "DELETE", HTTPPath: "/2017-08-29/jobTemplates/{name}", } if input == nil { input = &DeleteJobTemplateInput{} } output = &DeleteJobTemplateOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteJobTemplate API operation for AWS Elemental MediaConvert. // // Permanently delete a job template you have created. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation DeleteJobTemplate for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DeleteJobTemplate func (c *MediaConvert) DeleteJobTemplate(input *DeleteJobTemplateInput) (*DeleteJobTemplateOutput, error) { req, out := c.DeleteJobTemplateRequest(input) return out, req.Send() } // DeleteJobTemplateWithContext is the same as DeleteJobTemplate with the addition of // the ability to pass a context and additional request options. // // See DeleteJobTemplate for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) DeleteJobTemplateWithContext(ctx aws.Context, input *DeleteJobTemplateInput, opts ...request.Option) (*DeleteJobTemplateOutput, error) { req, out := c.DeleteJobTemplateRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeletePreset = "DeletePreset" // DeletePresetRequest generates a "aws/request.Request" representing the // client's request for the DeletePreset operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeletePreset for more information on using the DeletePreset // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeletePresetRequest method. // req, resp := client.DeletePresetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DeletePreset func (c *MediaConvert) DeletePresetRequest(input *DeletePresetInput) (req *request.Request, output *DeletePresetOutput) { op := &request.Operation{ Name: opDeletePreset, HTTPMethod: "DELETE", HTTPPath: "/2017-08-29/presets/{name}", } if input == nil { input = &DeletePresetInput{} } output = &DeletePresetOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeletePreset API operation for AWS Elemental MediaConvert. // // Permanently delete a preset you have created. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation DeletePreset for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DeletePreset func (c *MediaConvert) DeletePreset(input *DeletePresetInput) (*DeletePresetOutput, error) { req, out := c.DeletePresetRequest(input) return out, req.Send() } // DeletePresetWithContext is the same as DeletePreset with the addition of // the ability to pass a context and additional request options. // // See DeletePreset for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) DeletePresetWithContext(ctx aws.Context, input *DeletePresetInput, opts ...request.Option) (*DeletePresetOutput, error) { req, out := c.DeletePresetRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteQueue = "DeleteQueue" // DeleteQueueRequest generates a "aws/request.Request" representing the // client's request for the DeleteQueue operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteQueue for more information on using the DeleteQueue // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteQueueRequest method. // req, resp := client.DeleteQueueRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DeleteQueue func (c *MediaConvert) DeleteQueueRequest(input *DeleteQueueInput) (req *request.Request, output *DeleteQueueOutput) { op := &request.Operation{ Name: opDeleteQueue, HTTPMethod: "DELETE", HTTPPath: "/2017-08-29/queues/{name}", } if input == nil { input = &DeleteQueueInput{} } output = &DeleteQueueOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteQueue API operation for AWS Elemental MediaConvert. // // Permanently delete a queue you have created. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation DeleteQueue for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DeleteQueue func (c *MediaConvert) DeleteQueue(input *DeleteQueueInput) (*DeleteQueueOutput, error) { req, out := c.DeleteQueueRequest(input) return out, req.Send() } // DeleteQueueWithContext is the same as DeleteQueue with the addition of // the ability to pass a context and additional request options. // // See DeleteQueue for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) DeleteQueueWithContext(ctx aws.Context, input *DeleteQueueInput, opts ...request.Option) (*DeleteQueueOutput, error) { req, out := c.DeleteQueueRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribeEndpoints = "DescribeEndpoints" // DescribeEndpointsRequest generates a "aws/request.Request" representing the // client's request for the DescribeEndpoints operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeEndpoints for more information on using the DescribeEndpoints // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DescribeEndpointsRequest method. // req, resp := client.DescribeEndpointsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DescribeEndpoints func (c *MediaConvert) DescribeEndpointsRequest(input *DescribeEndpointsInput) (req *request.Request, output *DescribeEndpointsOutput) { op := &request.Operation{ Name: opDescribeEndpoints, HTTPMethod: "POST", HTTPPath: "/2017-08-29/endpoints", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &DescribeEndpointsInput{} } output = &DescribeEndpointsOutput{} req = c.newRequest(op, input, output) return } // DescribeEndpoints API operation for AWS Elemental MediaConvert. // // Send an request with an empty body to the regional API endpoint to get your // account API endpoint. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation DescribeEndpoints for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DescribeEndpoints func (c *MediaConvert) DescribeEndpoints(input *DescribeEndpointsInput) (*DescribeEndpointsOutput, error) { req, out := c.DescribeEndpointsRequest(input) return out, req.Send() } // DescribeEndpointsWithContext is the same as DescribeEndpoints with the addition of // the ability to pass a context and additional request options. // // See DescribeEndpoints for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) DescribeEndpointsWithContext(ctx aws.Context, input *DescribeEndpointsInput, opts ...request.Option) (*DescribeEndpointsOutput, error) { req, out := c.DescribeEndpointsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // DescribeEndpointsPages iterates over the pages of a DescribeEndpoints operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeEndpoints method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a DescribeEndpoints operation. // pageNum := 0 // err := client.DescribeEndpointsPages(params, // func(page *DescribeEndpointsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *MediaConvert) DescribeEndpointsPages(input *DescribeEndpointsInput, fn func(*DescribeEndpointsOutput, bool) bool) error { return c.DescribeEndpointsPagesWithContext(aws.BackgroundContext(), input, fn) } // DescribeEndpointsPagesWithContext same as DescribeEndpointsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) DescribeEndpointsPagesWithContext(ctx aws.Context, input *DescribeEndpointsInput, fn func(*DescribeEndpointsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *DescribeEndpointsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.DescribeEndpointsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } cont := true for p.Next() && cont { cont = fn(p.Page().(*DescribeEndpointsOutput), !p.HasNextPage()) } return p.Err() } const opDisassociateCertificate = "DisassociateCertificate" // DisassociateCertificateRequest generates a "aws/request.Request" representing the // client's request for the DisassociateCertificate operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DisassociateCertificate for more information on using the DisassociateCertificate // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DisassociateCertificateRequest method. // req, resp := client.DisassociateCertificateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DisassociateCertificate func (c *MediaConvert) DisassociateCertificateRequest(input *DisassociateCertificateInput) (req *request.Request, output *DisassociateCertificateOutput) { op := &request.Operation{ Name: opDisassociateCertificate, HTTPMethod: "DELETE", HTTPPath: "/2017-08-29/certificates/{arn}", } if input == nil { input = &DisassociateCertificateInput{} } output = &DisassociateCertificateOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DisassociateCertificate API operation for AWS Elemental MediaConvert. // // Removes an association between the Amazon Resource Name (ARN) of an AWS Certificate // Manager (ACM) certificate and an AWS Elemental MediaConvert resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation DisassociateCertificate for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/DisassociateCertificate func (c *MediaConvert) DisassociateCertificate(input *DisassociateCertificateInput) (*DisassociateCertificateOutput, error) { req, out := c.DisassociateCertificateRequest(input) return out, req.Send() } // DisassociateCertificateWithContext is the same as DisassociateCertificate with the addition of // the ability to pass a context and additional request options. // // See DisassociateCertificate for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) DisassociateCertificateWithContext(ctx aws.Context, input *DisassociateCertificateInput, opts ...request.Option) (*DisassociateCertificateOutput, error) { req, out := c.DisassociateCertificateRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetJob = "GetJob" // GetJobRequest generates a "aws/request.Request" representing the // client's request for the GetJob operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetJob for more information on using the GetJob // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetJobRequest method. // req, resp := client.GetJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetJob func (c *MediaConvert) GetJobRequest(input *GetJobInput) (req *request.Request, output *GetJobOutput) { op := &request.Operation{ Name: opGetJob, HTTPMethod: "GET", HTTPPath: "/2017-08-29/jobs/{id}", } if input == nil { input = &GetJobInput{} } output = &GetJobOutput{} req = c.newRequest(op, input, output) return } // GetJob API operation for AWS Elemental MediaConvert. // // Retrieve the JSON for a specific completed transcoding job. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation GetJob for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetJob func (c *MediaConvert) GetJob(input *GetJobInput) (*GetJobOutput, error) { req, out := c.GetJobRequest(input) return out, req.Send() } // GetJobWithContext is the same as GetJob with the addition of // the ability to pass a context and additional request options. // // See GetJob for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) GetJobWithContext(ctx aws.Context, input *GetJobInput, opts ...request.Option) (*GetJobOutput, error) { req, out := c.GetJobRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetJobTemplate = "GetJobTemplate" // GetJobTemplateRequest generates a "aws/request.Request" representing the // client's request for the GetJobTemplate operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetJobTemplate for more information on using the GetJobTemplate // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetJobTemplateRequest method. // req, resp := client.GetJobTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetJobTemplate func (c *MediaConvert) GetJobTemplateRequest(input *GetJobTemplateInput) (req *request.Request, output *GetJobTemplateOutput) { op := &request.Operation{ Name: opGetJobTemplate, HTTPMethod: "GET", HTTPPath: "/2017-08-29/jobTemplates/{name}", } if input == nil { input = &GetJobTemplateInput{} } output = &GetJobTemplateOutput{} req = c.newRequest(op, input, output) return } // GetJobTemplate API operation for AWS Elemental MediaConvert. // // Retrieve the JSON for a specific job template. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation GetJobTemplate for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetJobTemplate func (c *MediaConvert) GetJobTemplate(input *GetJobTemplateInput) (*GetJobTemplateOutput, error) { req, out := c.GetJobTemplateRequest(input) return out, req.Send() } // GetJobTemplateWithContext is the same as GetJobTemplate with the addition of // the ability to pass a context and additional request options. // // See GetJobTemplate for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) GetJobTemplateWithContext(ctx aws.Context, input *GetJobTemplateInput, opts ...request.Option) (*GetJobTemplateOutput, error) { req, out := c.GetJobTemplateRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetPreset = "GetPreset" // GetPresetRequest generates a "aws/request.Request" representing the // client's request for the GetPreset operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetPreset for more information on using the GetPreset // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetPresetRequest method. // req, resp := client.GetPresetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetPreset func (c *MediaConvert) GetPresetRequest(input *GetPresetInput) (req *request.Request, output *GetPresetOutput) { op := &request.Operation{ Name: opGetPreset, HTTPMethod: "GET", HTTPPath: "/2017-08-29/presets/{name}", } if input == nil { input = &GetPresetInput{} } output = &GetPresetOutput{} req = c.newRequest(op, input, output) return } // GetPreset API operation for AWS Elemental MediaConvert. // // Retrieve the JSON for a specific preset. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation GetPreset for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetPreset func (c *MediaConvert) GetPreset(input *GetPresetInput) (*GetPresetOutput, error) { req, out := c.GetPresetRequest(input) return out, req.Send() } // GetPresetWithContext is the same as GetPreset with the addition of // the ability to pass a context and additional request options. // // See GetPreset for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) GetPresetWithContext(ctx aws.Context, input *GetPresetInput, opts ...request.Option) (*GetPresetOutput, error) { req, out := c.GetPresetRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetQueue = "GetQueue" // GetQueueRequest generates a "aws/request.Request" representing the // client's request for the GetQueue operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetQueue for more information on using the GetQueue // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetQueueRequest method. // req, resp := client.GetQueueRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetQueue func (c *MediaConvert) GetQueueRequest(input *GetQueueInput) (req *request.Request, output *GetQueueOutput) { op := &request.Operation{ Name: opGetQueue, HTTPMethod: "GET", HTTPPath: "/2017-08-29/queues/{name}", } if input == nil { input = &GetQueueInput{} } output = &GetQueueOutput{} req = c.newRequest(op, input, output) return } // GetQueue API operation for AWS Elemental MediaConvert. // // Retrieve the JSON for a specific queue. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation GetQueue for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/GetQueue func (c *MediaConvert) GetQueue(input *GetQueueInput) (*GetQueueOutput, error) { req, out := c.GetQueueRequest(input) return out, req.Send() } // GetQueueWithContext is the same as GetQueue with the addition of // the ability to pass a context and additional request options. // // See GetQueue for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) GetQueueWithContext(ctx aws.Context, input *GetQueueInput, opts ...request.Option) (*GetQueueOutput, error) { req, out := c.GetQueueRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opListJobTemplates = "ListJobTemplates" // ListJobTemplatesRequest generates a "aws/request.Request" representing the // client's request for the ListJobTemplates operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListJobTemplates for more information on using the ListJobTemplates // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListJobTemplatesRequest method. // req, resp := client.ListJobTemplatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListJobTemplates func (c *MediaConvert) ListJobTemplatesRequest(input *ListJobTemplatesInput) (req *request.Request, output *ListJobTemplatesOutput) { op := &request.Operation{ Name: opListJobTemplates, HTTPMethod: "GET", HTTPPath: "/2017-08-29/jobTemplates", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListJobTemplatesInput{} } output = &ListJobTemplatesOutput{} req = c.newRequest(op, input, output) return } // ListJobTemplates API operation for AWS Elemental MediaConvert. // // Retrieve a JSON array of up to twenty of your job templates. This will return // the templates themselves, not just a list of them. To retrieve the next twenty // templates, use the nextToken string returned with the array // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation ListJobTemplates for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListJobTemplates func (c *MediaConvert) ListJobTemplates(input *ListJobTemplatesInput) (*ListJobTemplatesOutput, error) { req, out := c.ListJobTemplatesRequest(input) return out, req.Send() } // ListJobTemplatesWithContext is the same as ListJobTemplates with the addition of // the ability to pass a context and additional request options. // // See ListJobTemplates for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) ListJobTemplatesWithContext(ctx aws.Context, input *ListJobTemplatesInput, opts ...request.Option) (*ListJobTemplatesOutput, error) { req, out := c.ListJobTemplatesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListJobTemplatesPages iterates over the pages of a ListJobTemplates operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListJobTemplates method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListJobTemplates operation. // pageNum := 0 // err := client.ListJobTemplatesPages(params, // func(page *ListJobTemplatesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *MediaConvert) ListJobTemplatesPages(input *ListJobTemplatesInput, fn func(*ListJobTemplatesOutput, bool) bool) error { return c.ListJobTemplatesPagesWithContext(aws.BackgroundContext(), input, fn) } // ListJobTemplatesPagesWithContext same as ListJobTemplatesPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) ListJobTemplatesPagesWithContext(ctx aws.Context, input *ListJobTemplatesInput, fn func(*ListJobTemplatesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListJobTemplatesInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListJobTemplatesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } cont := true for p.Next() && cont { cont = fn(p.Page().(*ListJobTemplatesOutput), !p.HasNextPage()) } return p.Err() } const opListJobs = "ListJobs" // ListJobsRequest generates a "aws/request.Request" representing the // client's request for the ListJobs operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListJobs for more information on using the ListJobs // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListJobsRequest method. // req, resp := client.ListJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListJobs func (c *MediaConvert) ListJobsRequest(input *ListJobsInput) (req *request.Request, output *ListJobsOutput) { op := &request.Operation{ Name: opListJobs, HTTPMethod: "GET", HTTPPath: "/2017-08-29/jobs", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListJobsInput{} } output = &ListJobsOutput{} req = c.newRequest(op, input, output) return } // ListJobs API operation for AWS Elemental MediaConvert. // // Retrieve a JSON array of up to twenty of your most recently created jobs. // This array includes in-process, completed, and errored jobs. This will return // the jobs themselves, not just a list of the jobs. To retrieve the twenty // next most recent jobs, use the nextToken string returned with the array. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation ListJobs for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListJobs func (c *MediaConvert) ListJobs(input *ListJobsInput) (*ListJobsOutput, error) { req, out := c.ListJobsRequest(input) return out, req.Send() } // ListJobsWithContext is the same as ListJobs with the addition of // the ability to pass a context and additional request options. // // See ListJobs for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) ListJobsWithContext(ctx aws.Context, input *ListJobsInput, opts ...request.Option) (*ListJobsOutput, error) { req, out := c.ListJobsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListJobsPages iterates over the pages of a ListJobs operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListJobs method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListJobs operation. // pageNum := 0 // err := client.ListJobsPages(params, // func(page *ListJobsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *MediaConvert) ListJobsPages(input *ListJobsInput, fn func(*ListJobsOutput, bool) bool) error { return c.ListJobsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListJobsPagesWithContext same as ListJobsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) ListJobsPagesWithContext(ctx aws.Context, input *ListJobsInput, fn func(*ListJobsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListJobsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListJobsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } cont := true for p.Next() && cont { cont = fn(p.Page().(*ListJobsOutput), !p.HasNextPage()) } return p.Err() } const opListPresets = "ListPresets" // ListPresetsRequest generates a "aws/request.Request" representing the // client's request for the ListPresets operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListPresets for more information on using the ListPresets // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListPresetsRequest method. // req, resp := client.ListPresetsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListPresets func (c *MediaConvert) ListPresetsRequest(input *ListPresetsInput) (req *request.Request, output *ListPresetsOutput) { op := &request.Operation{ Name: opListPresets, HTTPMethod: "GET", HTTPPath: "/2017-08-29/presets", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListPresetsInput{} } output = &ListPresetsOutput{} req = c.newRequest(op, input, output) return } // ListPresets API operation for AWS Elemental MediaConvert. // // Retrieve a JSON array of up to twenty of your presets. This will return the // presets themselves, not just a list of them. To retrieve the next twenty // presets, use the nextToken string returned with the array. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation ListPresets for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListPresets func (c *MediaConvert) ListPresets(input *ListPresetsInput) (*ListPresetsOutput, error) { req, out := c.ListPresetsRequest(input) return out, req.Send() } // ListPresetsWithContext is the same as ListPresets with the addition of // the ability to pass a context and additional request options. // // See ListPresets for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) ListPresetsWithContext(ctx aws.Context, input *ListPresetsInput, opts ...request.Option) (*ListPresetsOutput, error) { req, out := c.ListPresetsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListPresetsPages iterates over the pages of a ListPresets operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListPresets method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListPresets operation. // pageNum := 0 // err := client.ListPresetsPages(params, // func(page *ListPresetsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *MediaConvert) ListPresetsPages(input *ListPresetsInput, fn func(*ListPresetsOutput, bool) bool) error { return c.ListPresetsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListPresetsPagesWithContext same as ListPresetsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) ListPresetsPagesWithContext(ctx aws.Context, input *ListPresetsInput, fn func(*ListPresetsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListPresetsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListPresetsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } cont := true for p.Next() && cont { cont = fn(p.Page().(*ListPresetsOutput), !p.HasNextPage()) } return p.Err() } const opListQueues = "ListQueues" // ListQueuesRequest generates a "aws/request.Request" representing the // client's request for the ListQueues operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListQueues for more information on using the ListQueues // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListQueuesRequest method. // req, resp := client.ListQueuesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListQueues func (c *MediaConvert) ListQueuesRequest(input *ListQueuesInput) (req *request.Request, output *ListQueuesOutput) { op := &request.Operation{ Name: opListQueues, HTTPMethod: "GET", HTTPPath: "/2017-08-29/queues", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListQueuesInput{} } output = &ListQueuesOutput{} req = c.newRequest(op, input, output) return } // ListQueues API operation for AWS Elemental MediaConvert. // // Retrieve a JSON array of up to twenty of your queues. This will return the // queues themselves, not just a list of them. To retrieve the next twenty queues, // use the nextToken string returned with the array. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation ListQueues for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListQueues func (c *MediaConvert) ListQueues(input *ListQueuesInput) (*ListQueuesOutput, error) { req, out := c.ListQueuesRequest(input) return out, req.Send() } // ListQueuesWithContext is the same as ListQueues with the addition of // the ability to pass a context and additional request options. // // See ListQueues for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) ListQueuesWithContext(ctx aws.Context, input *ListQueuesInput, opts ...request.Option) (*ListQueuesOutput, error) { req, out := c.ListQueuesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListQueuesPages iterates over the pages of a ListQueues operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListQueues method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListQueues operation. // pageNum := 0 // err := client.ListQueuesPages(params, // func(page *ListQueuesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *MediaConvert) ListQueuesPages(input *ListQueuesInput, fn func(*ListQueuesOutput, bool) bool) error { return c.ListQueuesPagesWithContext(aws.BackgroundContext(), input, fn) } // ListQueuesPagesWithContext same as ListQueuesPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) ListQueuesPagesWithContext(ctx aws.Context, input *ListQueuesInput, fn func(*ListQueuesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListQueuesInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListQueuesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } cont := true for p.Next() && cont { cont = fn(p.Page().(*ListQueuesOutput), !p.HasNextPage()) } return p.Err() } const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListTagsForResource for more information on using the ListTagsForResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListTagsForResourceRequest method. // req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListTagsForResource func (c *MediaConvert) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { op := &request.Operation{ Name: opListTagsForResource, HTTPMethod: "GET", HTTPPath: "/2017-08-29/tags/{arn}", } if input == nil { input = &ListTagsForResourceInput{} } output = &ListTagsForResourceOutput{} req = c.newRequest(op, input, output) return } // ListTagsForResource API operation for AWS Elemental MediaConvert. // // Retrieve the tags for a MediaConvert resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation ListTagsForResource for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/ListTagsForResource func (c *MediaConvert) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) return out, req.Send() } // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of // the ability to pass a context and additional request options. // // See ListTagsForResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the // client's request for the TagResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See TagResource for more information on using the TagResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the TagResourceRequest method. // req, resp := client.TagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/TagResource func (c *MediaConvert) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { op := &request.Operation{ Name: opTagResource, HTTPMethod: "POST", HTTPPath: "/2017-08-29/tags", } if input == nil { input = &TagResourceInput{} } output = &TagResourceOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // TagResource API operation for AWS Elemental MediaConvert. // // Add tags to a MediaConvert queue, preset, or job template. For information // about tagging, see the User Guide at https://docs.aws.amazon.com/mediaconvert/latest/ug/tagging-resources.html // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation TagResource for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/TagResource func (c *MediaConvert) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { req, out := c.TagResourceRequest(input) return out, req.Send() } // TagResourceWithContext is the same as TagResource with the addition of // the ability to pass a context and additional request options. // // See TagResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { req, out := c.TagResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUntagResource = "UntagResource" // UntagResourceRequest generates a "aws/request.Request" representing the // client's request for the UntagResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UntagResource for more information on using the UntagResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the UntagResourceRequest method. // req, resp := client.UntagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UntagResource func (c *MediaConvert) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { op := &request.Operation{ Name: opUntagResource, HTTPMethod: "PUT", HTTPPath: "/2017-08-29/tags/{arn}", } if input == nil { input = &UntagResourceInput{} } output = &UntagResourceOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UntagResource API operation for AWS Elemental MediaConvert. // // Remove tags from a MediaConvert queue, preset, or job template. For information // about tagging, see the User Guide at https://docs.aws.amazon.com/mediaconvert/latest/ug/tagging-resources.html // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation UntagResource for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UntagResource func (c *MediaConvert) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { req, out := c.UntagResourceRequest(input) return out, req.Send() } // UntagResourceWithContext is the same as UntagResource with the addition of // the ability to pass a context and additional request options. // // See UntagResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { req, out := c.UntagResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateJobTemplate = "UpdateJobTemplate" // UpdateJobTemplateRequest generates a "aws/request.Request" representing the // client's request for the UpdateJobTemplate operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateJobTemplate for more information on using the UpdateJobTemplate // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the UpdateJobTemplateRequest method. // req, resp := client.UpdateJobTemplateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UpdateJobTemplate func (c *MediaConvert) UpdateJobTemplateRequest(input *UpdateJobTemplateInput) (req *request.Request, output *UpdateJobTemplateOutput) { op := &request.Operation{ Name: opUpdateJobTemplate, HTTPMethod: "PUT", HTTPPath: "/2017-08-29/jobTemplates/{name}", } if input == nil { input = &UpdateJobTemplateInput{} } output = &UpdateJobTemplateOutput{} req = c.newRequest(op, input, output) return } // UpdateJobTemplate API operation for AWS Elemental MediaConvert. // // Modify one of your existing job templates. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation UpdateJobTemplate for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UpdateJobTemplate func (c *MediaConvert) UpdateJobTemplate(input *UpdateJobTemplateInput) (*UpdateJobTemplateOutput, error) { req, out := c.UpdateJobTemplateRequest(input) return out, req.Send() } // UpdateJobTemplateWithContext is the same as UpdateJobTemplate with the addition of // the ability to pass a context and additional request options. // // See UpdateJobTemplate for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) UpdateJobTemplateWithContext(ctx aws.Context, input *UpdateJobTemplateInput, opts ...request.Option) (*UpdateJobTemplateOutput, error) { req, out := c.UpdateJobTemplateRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdatePreset = "UpdatePreset" // UpdatePresetRequest generates a "aws/request.Request" representing the // client's request for the UpdatePreset operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdatePreset for more information on using the UpdatePreset // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the UpdatePresetRequest method. // req, resp := client.UpdatePresetRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UpdatePreset func (c *MediaConvert) UpdatePresetRequest(input *UpdatePresetInput) (req *request.Request, output *UpdatePresetOutput) { op := &request.Operation{ Name: opUpdatePreset, HTTPMethod: "PUT", HTTPPath: "/2017-08-29/presets/{name}", } if input == nil { input = &UpdatePresetInput{} } output = &UpdatePresetOutput{} req = c.newRequest(op, input, output) return } // UpdatePreset API operation for AWS Elemental MediaConvert. // // Modify one of your existing presets. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation UpdatePreset for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UpdatePreset func (c *MediaConvert) UpdatePreset(input *UpdatePresetInput) (*UpdatePresetOutput, error) { req, out := c.UpdatePresetRequest(input) return out, req.Send() } // UpdatePresetWithContext is the same as UpdatePreset with the addition of // the ability to pass a context and additional request options. // // See UpdatePreset for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) UpdatePresetWithContext(ctx aws.Context, input *UpdatePresetInput, opts ...request.Option) (*UpdatePresetOutput, error) { req, out := c.UpdatePresetRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateQueue = "UpdateQueue" // UpdateQueueRequest generates a "aws/request.Request" representing the // client's request for the UpdateQueue operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateQueue for more information on using the UpdateQueue // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the UpdateQueueRequest method. // req, resp := client.UpdateQueueRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UpdateQueue func (c *MediaConvert) UpdateQueueRequest(input *UpdateQueueInput) (req *request.Request, output *UpdateQueueOutput) { op := &request.Operation{ Name: opUpdateQueue, HTTPMethod: "PUT", HTTPPath: "/2017-08-29/queues/{name}", } if input == nil { input = &UpdateQueueInput{} } output = &UpdateQueueOutput{} req = c.newRequest(op, input, output) return } // UpdateQueue API operation for AWS Elemental MediaConvert. // // Modify one of your existing queues. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Elemental MediaConvert's // API operation UpdateQueue for usage and error information. // // Returned Error Codes: // * ErrCodeBadRequestException "BadRequestException" // // * ErrCodeInternalServerErrorException "InternalServerErrorException" // // * ErrCodeForbiddenException "ForbiddenException" // // * ErrCodeNotFoundException "NotFoundException" // // * ErrCodeTooManyRequestsException "TooManyRequestsException" // // * ErrCodeConflictException "ConflictException" // // See also, https://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/UpdateQueue func (c *MediaConvert) UpdateQueue(input *UpdateQueueInput) (*UpdateQueueOutput, error) { req, out := c.UpdateQueueRequest(input) return out, req.Send() } // UpdateQueueWithContext is the same as UpdateQueue with the addition of // the ability to pass a context and additional request options. // // See UpdateQueue for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *MediaConvert) UpdateQueueWithContext(ctx aws.Context, input *UpdateQueueInput, opts ...request.Option) (*UpdateQueueOutput, error) { req, out := c.UpdateQueueRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to // the value AAC. The service accepts one of two mutually exclusive groups of // AAC settings--VBR and CBR. To select one of these modes, set the value of // Bitrate control mode (rateControlMode) to "VBR" or "CBR". In VBR mode, you // control the audio quality with the setting VBR quality (vbrQuality). In CBR // mode, you use the setting Bitrate (bitrate). Defaults and valid values depend // on the rate control mode. type AacSettings struct { _ struct{} `type:"structure"` // Choose BROADCASTER_MIXED_AD when the input contains pre-mixed main audio // + audio description (AD) as a stereo pair. The value for AudioType will be // set to 3, which signals to downstream systems that this stream contains "broadcaster // mixed AD". Note that the input received by the encoder must contain pre-mixed // audio; the encoder does not perform the mixing. When you choose BROADCASTER_MIXED_AD, // the encoder ignores any values you provide in AudioType and FollowInputAudioType. // Choose NORMAL when the input does not contain pre-mixed audio + audio description // (AD). In this case, the encoder will use any values you provide for AudioType // and FollowInputAudioType. AudioDescriptionBroadcasterMix *string `locationName:"audioDescriptionBroadcasterMix" type:"string" enum:"AacAudioDescriptionBroadcasterMix"` // Average bitrate in bits/second. The set of valid values for this setting // is: 6000, 8000, 10000, 12000, 14000, 16000, 20000, 24000, 28000, 32000, 40000, // 48000, 56000, 64000, 80000, 96000, 112000, 128000, 160000, 192000, 224000, // 256000, 288000, 320000, 384000, 448000, 512000, 576000, 640000, 768000, 896000, // 1024000. The value you set is also constrained by the values you choose for // Profile (codecProfile), Bitrate control mode (codingMode), and Sample rate // (sampleRate). Default values depend on Bitrate control mode and Profile. Bitrate *int64 `locationName:"bitrate" min:"6000" type:"integer"` // AAC Profile. CodecProfile *string `locationName:"codecProfile" type:"string" enum:"AacCodecProfile"` // Mono (Audio Description), Mono, Stereo, or 5.1 channel layout. Valid values // depend on rate control mode and profile. "1.0 - Audio Description (Receiver // Mix)" setting receives a stereo description plus control track and emits // a mono AAC encode of the description track, with control data emitted in // the PES header as per ETSI TS 101 154 Annex E. CodingMode *string `locationName:"codingMode" type:"string" enum:"AacCodingMode"` // Rate Control Mode. RateControlMode *string `locationName:"rateControlMode" type:"string" enum:"AacRateControlMode"` // Enables LATM/LOAS AAC output. Note that if you use LATM/LOAS AAC in an output, // you must choose "No container" for the output container. RawFormat *string `locationName:"rawFormat" type:"string" enum:"AacRawFormat"` // Sample rate in Hz. Valid values depend on rate control mode and profile. SampleRate *int64 `locationName:"sampleRate" min:"8000" type:"integer"` // Use MPEG-2 AAC instead of MPEG-4 AAC audio for raw or MPEG-2 Transport Stream // containers. Specification *string `locationName:"specification" type:"string" enum:"AacSpecification"` // VBR Quality Level - Only used if rate_control_mode is VBR. VbrQuality *string `locationName:"vbrQuality" type:"string" enum:"AacVbrQuality"` } // String returns the string representation func (s AacSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AacSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AacSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AacSettings"} if s.Bitrate != nil && *s.Bitrate < 6000 { invalidParams.Add(request.NewErrParamMinValue("Bitrate", 6000)) } if s.SampleRate != nil && *s.SampleRate < 8000 { invalidParams.Add(request.NewErrParamMinValue("SampleRate", 8000)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAudioDescriptionBroadcasterMix sets the AudioDescriptionBroadcasterMix field's value. func (s *AacSettings) SetAudioDescriptionBroadcasterMix(v string) *AacSettings { s.AudioDescriptionBroadcasterMix = &v return s } // SetBitrate sets the Bitrate field's value. func (s *AacSettings) SetBitrate(v int64) *AacSettings { s.Bitrate = &v return s } // SetCodecProfile sets the CodecProfile field's value. func (s *AacSettings) SetCodecProfile(v string) *AacSettings { s.CodecProfile = &v return s } // SetCodingMode sets the CodingMode field's value. func (s *AacSettings) SetCodingMode(v string) *AacSettings { s.CodingMode = &v return s } // SetRateControlMode sets the RateControlMode field's value. func (s *AacSettings) SetRateControlMode(v string) *AacSettings { s.RateControlMode = &v return s } // SetRawFormat sets the RawFormat field's value. func (s *AacSettings) SetRawFormat(v string) *AacSettings { s.RawFormat = &v return s } // SetSampleRate sets the SampleRate field's value. func (s *AacSettings) SetSampleRate(v int64) *AacSettings { s.SampleRate = &v return s } // SetSpecification sets the Specification field's value. func (s *AacSettings) SetSpecification(v string) *AacSettings { s.Specification = &v return s } // SetVbrQuality sets the VbrQuality field's value. func (s *AacSettings) SetVbrQuality(v string) *AacSettings { s.VbrQuality = &v return s } // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to // the value AC3. type Ac3Settings struct { _ struct{} `type:"structure"` // Average bitrate in bits/second. Valid bitrates depend on the coding mode. Bitrate *int64 `locationName:"bitrate" min:"64000" type:"integer"` // Specifies the "Bitstream Mode" (bsmod) for the emitted AC-3 stream. See ATSC // A/52-2012 for background on these values. BitstreamMode *string `locationName:"bitstreamMode" type:"string" enum:"Ac3BitstreamMode"` // Dolby Digital coding mode. Determines number of channels. CodingMode *string `locationName:"codingMode" type:"string" enum:"Ac3CodingMode"` // Sets the dialnorm for the output. If blank and input audio is Dolby Digital, // dialnorm will be passed through. Dialnorm *int64 `locationName:"dialnorm" min:"1" type:"integer"` // If set to FILM_STANDARD, adds dynamic range compression signaling to the // output bitstream as defined in the Dolby Digital specification. DynamicRangeCompressionProfile *string `locationName:"dynamicRangeCompressionProfile" type:"string" enum:"Ac3DynamicRangeCompressionProfile"` // Applies a 120Hz lowpass filter to the LFE channel prior to encoding. Only // valid with 3_2_LFE coding mode. LfeFilter *string `locationName:"lfeFilter" type:"string" enum:"Ac3LfeFilter"` // When set to FOLLOW_INPUT, encoder metadata will be sourced from the DD, DD+, // or DolbyE decoder that supplied this audio data. If audio was not supplied // from one of these streams, then the static metadata settings will be used. MetadataControl *string `locationName:"metadataControl" type:"string" enum:"Ac3MetadataControl"` // Sample rate in hz. Sample rate is always 48000. SampleRate *int64 `locationName:"sampleRate" min:"48000" type:"integer"` } // String returns the string representation func (s Ac3Settings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Ac3Settings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Ac3Settings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Ac3Settings"} if s.Bitrate != nil && *s.Bitrate < 64000 { invalidParams.Add(request.NewErrParamMinValue("Bitrate", 64000)) } if s.Dialnorm != nil && *s.Dialnorm < 1 { invalidParams.Add(request.NewErrParamMinValue("Dialnorm", 1)) } if s.SampleRate != nil && *s.SampleRate < 48000 { invalidParams.Add(request.NewErrParamMinValue("SampleRate", 48000)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBitrate sets the Bitrate field's value. func (s *Ac3Settings) SetBitrate(v int64) *Ac3Settings { s.Bitrate = &v return s } // SetBitstreamMode sets the BitstreamMode field's value. func (s *Ac3Settings) SetBitstreamMode(v string) *Ac3Settings { s.BitstreamMode = &v return s } // SetCodingMode sets the CodingMode field's value. func (s *Ac3Settings) SetCodingMode(v string) *Ac3Settings { s.CodingMode = &v return s } // SetDialnorm sets the Dialnorm field's value. func (s *Ac3Settings) SetDialnorm(v int64) *Ac3Settings { s.Dialnorm = &v return s } // SetDynamicRangeCompressionProfile sets the DynamicRangeCompressionProfile field's value. func (s *Ac3Settings) SetDynamicRangeCompressionProfile(v string) *Ac3Settings { s.DynamicRangeCompressionProfile = &v return s } // SetLfeFilter sets the LfeFilter field's value. func (s *Ac3Settings) SetLfeFilter(v string) *Ac3Settings { s.LfeFilter = &v return s } // SetMetadataControl sets the MetadataControl field's value. func (s *Ac3Settings) SetMetadataControl(v string) *Ac3Settings { s.MetadataControl = &v return s } // SetSampleRate sets the SampleRate field's value. func (s *Ac3Settings) SetSampleRate(v int64) *Ac3Settings { s.SampleRate = &v return s } // Acceleration settings for job execution. type AccelerationSettings struct { _ struct{} `type:"structure"` // Acceleration configuration for the job. // // Mode is a required field Mode *string `locationName:"mode" type:"string" required:"true" enum:"AccelerationMode"` } // String returns the string representation func (s AccelerationSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AccelerationSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AccelerationSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AccelerationSettings"} if s.Mode == nil { invalidParams.Add(request.NewErrParamRequired("Mode")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetMode sets the Mode field's value. func (s *AccelerationSettings) SetMode(v string) *AccelerationSettings { s.Mode = &v return s } // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to // the value AIFF. type AiffSettings struct { _ struct{} `type:"structure"` // Specify Bit depth (BitDepth), in bits per sample, to choose the encoding // quality for this audio track. BitDepth *int64 `locationName:"bitDepth" min:"16" type:"integer"` // Set Channels to specify the number of channels in this output audio track. // Choosing Mono in the console will give you 1 output channel; choosing Stereo // will give you 2. In the API, valid values are 1 and 2. Channels *int64 `locationName:"channels" min:"1" type:"integer"` // Sample rate in hz. SampleRate *int64 `locationName:"sampleRate" min:"8000" type:"integer"` } // String returns the string representation func (s AiffSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AiffSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AiffSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AiffSettings"} if s.BitDepth != nil && *s.BitDepth < 16 { invalidParams.Add(request.NewErrParamMinValue("BitDepth", 16)) } if s.Channels != nil && *s.Channels < 1 { invalidParams.Add(request.NewErrParamMinValue("Channels", 1)) } if s.SampleRate != nil && *s.SampleRate < 8000 { invalidParams.Add(request.NewErrParamMinValue("SampleRate", 8000)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBitDepth sets the BitDepth field's value. func (s *AiffSettings) SetBitDepth(v int64) *AiffSettings { s.BitDepth = &v return s } // SetChannels sets the Channels field's value. func (s *AiffSettings) SetChannels(v int64) *AiffSettings { s.Channels = &v return s } // SetSampleRate sets the SampleRate field's value. func (s *AiffSettings) SetSampleRate(v int64) *AiffSettings { s.SampleRate = &v return s } // Settings for ancillary captions source. type AncillarySourceSettings struct { _ struct{} `type:"structure"` // Specifies the 608 channel number in the ancillary data track from which to // extract captions. Unused for passthrough. SourceAncillaryChannelNumber *int64 `locationName:"sourceAncillaryChannelNumber" min:"1" type:"integer"` } // String returns the string representation func (s AncillarySourceSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AncillarySourceSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AncillarySourceSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AncillarySourceSettings"} if s.SourceAncillaryChannelNumber != nil && *s.SourceAncillaryChannelNumber < 1 { invalidParams.Add(request.NewErrParamMinValue("SourceAncillaryChannelNumber", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetSourceAncillaryChannelNumber sets the SourceAncillaryChannelNumber field's value. func (s *AncillarySourceSettings) SetSourceAncillaryChannelNumber(v int64) *AncillarySourceSettings { s.SourceAncillaryChannelNumber = &v return s } // Associates the Amazon Resource Name (ARN) of an AWS Certificate Manager (ACM) // certificate with an AWS Elemental MediaConvert resource. type AssociateCertificateInput struct { _ struct{} `type:"structure"` // The ARN of the ACM certificate that you want to associate with your MediaConvert // resource. // // Arn is a required field Arn *string `locationName:"arn" type:"string" required:"true"` } // String returns the string representation func (s AssociateCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssociateCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssociateCertificateInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetArn sets the Arn field's value. func (s *AssociateCertificateInput) SetArn(v string) *AssociateCertificateInput { s.Arn = &v return s } // Successful association of Certificate Manager Amazon Resource Name (ARN) // with Mediaconvert returns an OK message. type AssociateCertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AssociateCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateCertificateOutput) GoString() string { return s.String() } // Audio codec settings (CodecSettings) under (AudioDescriptions) contains the // group of settings related to audio encoding. The settings in this group vary // depending on the value you choose for Audio codec (Codec). For each codec // enum you choose, define the corresponding settings object. The following // lists the codec enum, settings object pairs. * AAC, AacSettings * MP2, Mp2Settings // * WAV, WavSettings * AIFF, AiffSettings * AC3, Ac3Settings * EAC3, Eac3Settings type AudioCodecSettings struct { _ struct{} `type:"structure"` // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to // the value AAC. The service accepts one of two mutually exclusive groups of // AAC settings--VBR and CBR. To select one of these modes, set the value of // Bitrate control mode (rateControlMode) to "VBR" or "CBR". In VBR mode, you // control the audio quality with the setting VBR quality (vbrQuality). In CBR // mode, you use the setting Bitrate (bitrate). Defaults and valid values depend // on the rate control mode. AacSettings *AacSettings `locationName:"aacSettings" type:"structure"` // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to // the value AC3. Ac3Settings *Ac3Settings `locationName:"ac3Settings" type:"structure"` // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to // the value AIFF. AiffSettings *AiffSettings `locationName:"aiffSettings" type:"structure"` // Type of Audio codec. Codec *string `locationName:"codec" type:"string" enum:"AudioCodec"` // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to // the value EAC3. Eac3Settings *Eac3Settings `locationName:"eac3Settings" type:"structure"` // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to // the value MP2. Mp2Settings *Mp2Settings `locationName:"mp2Settings" type:"structure"` // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to // the value WAV. WavSettings *WavSettings `locationName:"wavSettings" type:"structure"` } // String returns the string representation func (s AudioCodecSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AudioCodecSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AudioCodecSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AudioCodecSettings"} if s.AacSettings != nil { if err := s.AacSettings.Validate(); err != nil { invalidParams.AddNested("AacSettings", err.(request.ErrInvalidParams)) } } if s.Ac3Settings != nil { if err := s.Ac3Settings.Validate(); err != nil { invalidParams.AddNested("Ac3Settings", err.(request.ErrInvalidParams)) } } if s.AiffSettings != nil { if err := s.AiffSettings.Validate(); err != nil { invalidParams.AddNested("AiffSettings", err.(request.ErrInvalidParams)) } } if s.Eac3Settings != nil { if err := s.Eac3Settings.Validate(); err != nil { invalidParams.AddNested("Eac3Settings", err.(request.ErrInvalidParams)) } } if s.Mp2Settings != nil { if err := s.Mp2Settings.Validate(); err != nil { invalidParams.AddNested("Mp2Settings", err.(request.ErrInvalidParams)) } } if s.WavSettings != nil { if err := s.WavSettings.Validate(); err != nil { invalidParams.AddNested("WavSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAacSettings sets the AacSettings field's value. func (s *AudioCodecSettings) SetAacSettings(v *AacSettings) *AudioCodecSettings { s.AacSettings = v return s } // SetAc3Settings sets the Ac3Settings field's value. func (s *AudioCodecSettings) SetAc3Settings(v *Ac3Settings) *AudioCodecSettings { s.Ac3Settings = v return s } // SetAiffSettings sets the AiffSettings field's value. func (s *AudioCodecSettings) SetAiffSettings(v *AiffSettings) *AudioCodecSettings { s.AiffSettings = v return s } // SetCodec sets the Codec field's value. func (s *AudioCodecSettings) SetCodec(v string) *AudioCodecSettings { s.Codec = &v return s } // SetEac3Settings sets the Eac3Settings field's value. func (s *AudioCodecSettings) SetEac3Settings(v *Eac3Settings) *AudioCodecSettings { s.Eac3Settings = v return s } // SetMp2Settings sets the Mp2Settings field's value. func (s *AudioCodecSettings) SetMp2Settings(v *Mp2Settings) *AudioCodecSettings { s.Mp2Settings = v return s } // SetWavSettings sets the WavSettings field's value. func (s *AudioCodecSettings) SetWavSettings(v *WavSettings) *AudioCodecSettings { s.WavSettings = v return s } // Description of audio output type AudioDescription struct { _ struct{} `type:"structure"` // Advanced audio normalization settings. AudioNormalizationSettings *AudioNormalizationSettings `locationName:"audioNormalizationSettings" type:"structure"` // Specifies which audio data to use from each input. In the simplest case, // specify an "Audio Selector":#inputs-audio_selector by name based on its order // within each input. For example if you specify "Audio Selector 3", then the // third audio selector will be used from each input. If an input does not have // an "Audio Selector 3", then the audio selector marked as "default" in that // input will be used. If there is no audio selector marked as "default", silence // will be inserted for the duration of that input. Alternatively, an "Audio // Selector Group":#inputs-audio_selector_group name may be specified, with // similar default/silence behavior. If no audio_source_name is specified, then // "Audio Selector 1" will be chosen automatically. AudioSourceName *string `locationName:"audioSourceName" type:"string"` // Applies only if Follow Input Audio Type is unchecked (false). A number between // 0 and 255. The following are defined in ISO-IEC 13818-1: 0 = Undefined, 1 // = Clean Effects, 2 = Hearing Impaired, 3 = Visually Impaired Commentary, // 4-255 = Reserved. AudioType *int64 `locationName:"audioType" type:"integer"` // When set to FOLLOW_INPUT, if the input contains an ISO 639 audio_type, then // that value is passed through to the output. If the input contains no ISO // 639 audio_type, the value in Audio Type is included in the output. Otherwise // the value in Audio Type is included in the output. Note that this field and // audioType are both ignored if audioDescriptionBroadcasterMix is set to BROADCASTER_MIXED_AD. AudioTypeControl *string `locationName:"audioTypeControl" type:"string" enum:"AudioTypeControl"` // Audio codec settings (CodecSettings) under (AudioDescriptions) contains the // group of settings related to audio encoding. The settings in this group vary // depending on the value you choose for Audio codec (Codec). For each codec // enum you choose, define the corresponding settings object. The following // lists the codec enum, settings object pairs. * AAC, AacSettings * MP2, Mp2Settings // * WAV, WavSettings * AIFF, AiffSettings * AC3, Ac3Settings * EAC3, Eac3Settings CodecSettings *AudioCodecSettings `locationName:"codecSettings" type:"structure"` // Specify the language for this audio output track, using the ISO 639-2 or // ISO 639-3 three-letter language code. The language specified will be used // when 'Follow Input Language Code' is not selected or when 'Follow Input Language // Code' is selected but there is no ISO 639 language code specified by the // input. CustomLanguageCode *string `locationName:"customLanguageCode" min:"3" type:"string"` // Indicates the language of the audio output track. The ISO 639 language specified // in the 'Language Code' drop down will be used when 'Follow Input Language // Code' is not selected or when 'Follow Input Language Code' is selected but // there is no ISO 639 language code specified by the input. LanguageCode *string `locationName:"languageCode" type:"string" enum:"LanguageCode"` // Choosing FOLLOW_INPUT will cause the ISO 639 language code of the output // to follow the ISO 639 language code of the input. The language specified // for languageCode' will be used when USE_CONFIGURED is selected or when FOLLOW_INPUT // is selected but there is no ISO 639 language code specified by the input. LanguageCodeControl *string `locationName:"languageCodeControl" type:"string" enum:"AudioLanguageCodeControl"` // Advanced audio remixing settings. RemixSettings *RemixSettings `locationName:"remixSettings" type:"structure"` // Used for MS Smooth and Apple HLS outputs. Indicates the name displayed by // the player (eg. English, or Director Commentary). Alphanumeric characters, // spaces, and underscore are legal. StreamName *string `locationName:"streamName" type:"string"` } // String returns the string representation func (s AudioDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AudioDescription) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AudioDescription) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AudioDescription"} if s.CustomLanguageCode != nil && len(*s.CustomLanguageCode) < 3 { invalidParams.Add(request.NewErrParamMinLen("CustomLanguageCode", 3)) } if s.AudioNormalizationSettings != nil { if err := s.AudioNormalizationSettings.Validate(); err != nil { invalidParams.AddNested("AudioNormalizationSettings", err.(request.ErrInvalidParams)) } } if s.CodecSettings != nil { if err := s.CodecSettings.Validate(); err != nil { invalidParams.AddNested("CodecSettings", err.(request.ErrInvalidParams)) } } if s.RemixSettings != nil { if err := s.RemixSettings.Validate(); err != nil { invalidParams.AddNested("RemixSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAudioNormalizationSettings sets the AudioNormalizationSettings field's value. func (s *AudioDescription) SetAudioNormalizationSettings(v *AudioNormalizationSettings) *AudioDescription { s.AudioNormalizationSettings = v return s } // SetAudioSourceName sets the AudioSourceName field's value. func (s *AudioDescription) SetAudioSourceName(v string) *AudioDescription { s.AudioSourceName = &v return s } // SetAudioType sets the AudioType field's value. func (s *AudioDescription) SetAudioType(v int64) *AudioDescription { s.AudioType = &v return s } // SetAudioTypeControl sets the AudioTypeControl field's value. func (s *AudioDescription) SetAudioTypeControl(v string) *AudioDescription { s.AudioTypeControl = &v return s } // SetCodecSettings sets the CodecSettings field's value. func (s *AudioDescription) SetCodecSettings(v *AudioCodecSettings) *AudioDescription { s.CodecSettings = v return s } // SetCustomLanguageCode sets the CustomLanguageCode field's value. func (s *AudioDescription) SetCustomLanguageCode(v string) *AudioDescription { s.CustomLanguageCode = &v return s } // SetLanguageCode sets the LanguageCode field's value. func (s *AudioDescription) SetLanguageCode(v string) *AudioDescription { s.LanguageCode = &v return s } // SetLanguageCodeControl sets the LanguageCodeControl field's value. func (s *AudioDescription) SetLanguageCodeControl(v string) *AudioDescription { s.LanguageCodeControl = &v return s } // SetRemixSettings sets the RemixSettings field's value. func (s *AudioDescription) SetRemixSettings(v *RemixSettings) *AudioDescription { s.RemixSettings = v return s } // SetStreamName sets the StreamName field's value. func (s *AudioDescription) SetStreamName(v string) *AudioDescription { s.StreamName = &v return s } // Advanced audio normalization settings. type AudioNormalizationSettings struct { _ struct{} `type:"structure"` // Audio normalization algorithm to use. 1770-1 conforms to the CALM Act specification, // 1770-2 conforms to the EBU R-128 specification. Algorithm *string `locationName:"algorithm" type:"string" enum:"AudioNormalizationAlgorithm"` // When enabled the output audio is corrected using the chosen algorithm. If // disabled, the audio will be measured but not adjusted. AlgorithmControl *string `locationName:"algorithmControl" type:"string" enum:"AudioNormalizationAlgorithmControl"` // Content measuring above this level will be corrected to the target level. // Content measuring below this level will not be corrected. Gating only applies // when not using real_time_correction. CorrectionGateLevel *int64 `locationName:"correctionGateLevel" type:"integer"` // If set to LOG, log each output's audio track loudness to a CSV file. LoudnessLogging *string `locationName:"loudnessLogging" type:"string" enum:"AudioNormalizationLoudnessLogging"` // If set to TRUE_PEAK, calculate and log the TruePeak for each output's audio // track loudness. PeakCalculation *string `locationName:"peakCalculation" type:"string" enum:"AudioNormalizationPeakCalculation"` // Target LKFS(loudness) to adjust volume to. If no value is entered, a default // value will be used according to the chosen algorithm. The CALM Act (1770-1) // recommends a target of -24 LKFS. The EBU R-128 specification (1770-2) recommends // a target of -23 LKFS. TargetLkfs *float64 `locationName:"targetLkfs" type:"double"` } // String returns the string representation func (s AudioNormalizationSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AudioNormalizationSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AudioNormalizationSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AudioNormalizationSettings"} if s.CorrectionGateLevel != nil && *s.CorrectionGateLevel < -70 { invalidParams.Add(request.NewErrParamMinValue("CorrectionGateLevel", -70)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAlgorithm sets the Algorithm field's value. func (s *AudioNormalizationSettings) SetAlgorithm(v string) *AudioNormalizationSettings { s.Algorithm = &v return s } // SetAlgorithmControl sets the AlgorithmControl field's value. func (s *AudioNormalizationSettings) SetAlgorithmControl(v string) *AudioNormalizationSettings { s.AlgorithmControl = &v return s } // SetCorrectionGateLevel sets the CorrectionGateLevel field's value. func (s *AudioNormalizationSettings) SetCorrectionGateLevel(v int64) *AudioNormalizationSettings { s.CorrectionGateLevel = &v return s } // SetLoudnessLogging sets the LoudnessLogging field's value. func (s *AudioNormalizationSettings) SetLoudnessLogging(v string) *AudioNormalizationSettings { s.LoudnessLogging = &v return s } // SetPeakCalculation sets the PeakCalculation field's value. func (s *AudioNormalizationSettings) SetPeakCalculation(v string) *AudioNormalizationSettings { s.PeakCalculation = &v return s } // SetTargetLkfs sets the TargetLkfs field's value. func (s *AudioNormalizationSettings) SetTargetLkfs(v float64) *AudioNormalizationSettings { s.TargetLkfs = &v return s } // Selector for Audio type AudioSelector struct { _ struct{} `type:"structure"` // Selects a specific language code from within an audio source, using the ISO // 639-2 or ISO 639-3 three-letter language code CustomLanguageCode *string `locationName:"customLanguageCode" min:"3" type:"string"` // Enable this setting on one audio selector to set it as the default for the // job. The service uses this default for outputs where it can't find the specified // input audio. If you don't set a default, those outputs have no audio. DefaultSelection *string `locationName:"defaultSelection" type:"string" enum:"AudioDefaultSelection"` // Specifies audio data from an external file source. ExternalAudioFileInput *string `locationName:"externalAudioFileInput" type:"string"` // Selects a specific language code from within an audio source. LanguageCode *string `locationName:"languageCode" type:"string" enum:"LanguageCode"` // Specifies a time delta in milliseconds to offset the audio from the input // video. Offset *int64 `locationName:"offset" type:"integer"` // Selects a specific PID from within an audio source (e.g. 257 selects PID // 0x101). Pids []*int64 `locationName:"pids" type:"list"` // Use this setting for input streams that contain Dolby E, to have the service // extract specific program data from the track. To select multiple programs, // create multiple selectors with the same Track and different Program numbers. // In the console, this setting is visible when you set Selector type to Track. // Choose the program number from the dropdown list. If you are sending a JSON // file, provide the program ID, which is part of the audio metadata. If your // input file has incorrect metadata, you can choose All channels instead of // a program number to have the service ignore the program IDs and include all // the programs in the track. ProgramSelection *int64 `locationName:"programSelection" type:"integer"` // Use these settings to reorder the audio channels of one input to match those // of another input. This allows you to combine the two files into a single // output, one after the other. RemixSettings *RemixSettings `locationName:"remixSettings" type:"structure"` // Specifies the type of the audio selector. SelectorType *string `locationName:"selectorType" type:"string" enum:"AudioSelectorType"` // Identify a track from the input audio to include in this selector by entering // the track index number. To include several tracks in a single audio selector, // specify multiple tracks as follows. Using the console, enter a comma-separated // list. For examle, type "1,2,3" to include tracks 1 through 3. Specifying // directly in your JSON job file, provide the track numbers in an array. For // example, "tracks": [1,2,3]. Tracks []*int64 `locationName:"tracks" type:"list"` } // String returns the string representation func (s AudioSelector) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AudioSelector) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AudioSelector) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AudioSelector"} if s.CustomLanguageCode != nil && len(*s.CustomLanguageCode) < 3 { invalidParams.Add(request.NewErrParamMinLen("CustomLanguageCode", 3)) } if s.Offset != nil && *s.Offset < -2.147483648e+09 { invalidParams.Add(request.NewErrParamMinValue("Offset", -2.147483648e+09)) } if s.RemixSettings != nil { if err := s.RemixSettings.Validate(); err != nil { invalidParams.AddNested("RemixSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCustomLanguageCode sets the CustomLanguageCode field's value. func (s *AudioSelector) SetCustomLanguageCode(v string) *AudioSelector { s.CustomLanguageCode = &v return s } // SetDefaultSelection sets the DefaultSelection field's value. func (s *AudioSelector) SetDefaultSelection(v string) *AudioSelector { s.DefaultSelection = &v return s } // SetExternalAudioFileInput sets the ExternalAudioFileInput field's value. func (s *AudioSelector) SetExternalAudioFileInput(v string) *AudioSelector { s.ExternalAudioFileInput = &v return s } // SetLanguageCode sets the LanguageCode field's value. func (s *AudioSelector) SetLanguageCode(v string) *AudioSelector { s.LanguageCode = &v return s } // SetOffset sets the Offset field's value. func (s *AudioSelector) SetOffset(v int64) *AudioSelector { s.Offset = &v return s } // SetPids sets the Pids field's value. func (s *AudioSelector) SetPids(v []*int64) *AudioSelector { s.Pids = v return s } // SetProgramSelection sets the ProgramSelection field's value. func (s *AudioSelector) SetProgramSelection(v int64) *AudioSelector { s.ProgramSelection = &v return s } // SetRemixSettings sets the RemixSettings field's value. func (s *AudioSelector) SetRemixSettings(v *RemixSettings) *AudioSelector { s.RemixSettings = v return s } // SetSelectorType sets the SelectorType field's value. func (s *AudioSelector) SetSelectorType(v string) *AudioSelector { s.SelectorType = &v return s } // SetTracks sets the Tracks field's value. func (s *AudioSelector) SetTracks(v []*int64) *AudioSelector { s.Tracks = v return s } // Group of Audio Selectors type AudioSelectorGroup struct { _ struct{} `type:"structure"` // Name of an Audio Selector within the same input to include in the group. // Audio selector names are standardized, based on their order within the input // (e.g., "Audio Selector 1"). The audio selector name parameter can be repeated // to add any number of audio selectors to the group. AudioSelectorNames []*string `locationName:"audioSelectorNames" type:"list"` } // String returns the string representation func (s AudioSelectorGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AudioSelectorGroup) GoString() string { return s.String() } // SetAudioSelectorNames sets the AudioSelectorNames field's value. func (s *AudioSelectorGroup) SetAudioSelectorNames(v []*string) *AudioSelectorGroup { s.AudioSelectorNames = v return s } // Settings for Avail Blanking type AvailBlanking struct { _ struct{} `type:"structure"` // Blanking image to be used. Leave empty for solid black. Only bmp and png // images are supported. AvailBlankingImage *string `locationName:"availBlankingImage" min:"14" type:"string"` } // String returns the string representation func (s AvailBlanking) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AvailBlanking) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AvailBlanking) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AvailBlanking"} if s.AvailBlankingImage != nil && len(*s.AvailBlankingImage) < 14 { invalidParams.Add(request.NewErrParamMinLen("AvailBlankingImage", 14)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAvailBlankingImage sets the AvailBlankingImage field's value. func (s *AvailBlanking) SetAvailBlankingImage(v string) *AvailBlanking { s.AvailBlankingImage = &v return s } // Burn-In Destination Settings. type BurninDestinationSettings struct { _ struct{} `type:"structure"` // If no explicit x_position or y_position is provided, setting alignment to // centered will place the captions at the bottom center of the output. Similarly, // setting a left alignment will align captions to the bottom left of the output. // If x and y positions are given in conjunction with the alignment parameter, // the font will be justified (either left or centered) relative to those coordinates. // This option is not valid for source captions that are STL, 608/embedded or // teletext. These source settings are already pre-defined by the caption stream. // All burn-in and DVB-Sub font settings must match. Alignment *string `locationName:"alignment" type:"string" enum:"BurninSubtitleAlignment"` // Specifies the color of the rectangle behind the captions.All burn-in and // DVB-Sub font settings must match. BackgroundColor *string `locationName:"backgroundColor" type:"string" enum:"BurninSubtitleBackgroundColor"` // Specifies the opacity of the background rectangle. 255 is opaque; 0 is transparent. // Leaving this parameter blank is equivalent to setting it to 0 (transparent). // All burn-in and DVB-Sub font settings must match. BackgroundOpacity *int64 `locationName:"backgroundOpacity" type:"integer"` // Specifies the color of the burned-in captions. This option is not valid for // source captions that are STL, 608/embedded or teletext. These source settings // are already pre-defined by the caption stream. All burn-in and DVB-Sub font // settings must match. FontColor *string `locationName:"fontColor" type:"string" enum:"BurninSubtitleFontColor"` // Specifies the opacity of the burned-in captions. 255 is opaque; 0 is transparent.All // burn-in and DVB-Sub font settings must match. FontOpacity *int64 `locationName:"fontOpacity" type:"integer"` // Font resolution in DPI (dots per inch); default is 96 dpi.All burn-in and // DVB-Sub font settings must match. FontResolution *int64 `locationName:"fontResolution" min:"96" type:"integer"` // Provide the font script, using an ISO 15924 script code, if the LanguageCode // is not sufficient for determining the script type. Where LanguageCode or // CustomLanguageCode is sufficient, use "AUTOMATIC" or leave unset. This is // used to help determine the appropriate font for rendering burn-in captions. FontScript *string `locationName:"fontScript" type:"string" enum:"FontScript"` // A positive integer indicates the exact font size in points. Set to 0 for // automatic font size selection. All burn-in and DVB-Sub font settings must // match. FontSize *int64 `locationName:"fontSize" type:"integer"` // Specifies font outline color. This option is not valid for source captions // that are either 608/embedded or teletext. These source settings are already // pre-defined by the caption stream. All burn-in and DVB-Sub font settings // must match. OutlineColor *string `locationName:"outlineColor" type:"string" enum:"BurninSubtitleOutlineColor"` // Specifies font outline size in pixels. This option is not valid for source // captions that are either 608/embedded or teletext. These source settings // are already pre-defined by the caption stream. All burn-in and DVB-Sub font // settings must match. OutlineSize *int64 `locationName:"outlineSize" type:"integer"` // Specifies the color of the shadow cast by the captions.All burn-in and DVB-Sub // font settings must match. ShadowColor *string `locationName:"shadowColor" type:"string" enum:"BurninSubtitleShadowColor"` // Specifies the opacity of the shadow. 255 is opaque; 0 is transparent. Leaving // this parameter blank is equivalent to setting it to 0 (transparent). All // burn-in and DVB-Sub font settings must match. ShadowOpacity *int64 `locationName:"shadowOpacity" type:"integer"` // Specifies the horizontal offset of the shadow relative to the captions in // pixels. A value of -2 would result in a shadow offset 2 pixels to the left. // All burn-in and DVB-Sub font settings must match. ShadowXOffset *int64 `locationName:"shadowXOffset" type:"integer"` // Specifies the vertical offset of the shadow relative to the captions in pixels. // A value of -2 would result in a shadow offset 2 pixels above the text. All // burn-in and DVB-Sub font settings must match. ShadowYOffset *int64 `locationName:"shadowYOffset" type:"integer"` // Only applies to jobs with input captions in Teletext or STL formats. Specify // whether the spacing between letters in your captions is set by the captions // grid or varies depending on letter width. Choose fixed grid to conform to // the spacing specified in the captions file more accurately. Choose proportional // to make the text easier to read if the captions are closed caption. TeletextSpacing *string `locationName:"teletextSpacing" type:"string" enum:"BurninSubtitleTeletextSpacing"` // Specifies the horizontal position of the caption relative to the left side // of the output in pixels. A value of 10 would result in the captions starting // 10 pixels from the left of the output. If no explicit x_position is provided, // the horizontal caption position will be determined by the alignment parameter. // This option is not valid for source captions that are STL, 608/embedded or // teletext. These source settings are already pre-defined by the caption stream. // All burn-in and DVB-Sub font settings must match. XPosition *int64 `locationName:"xPosition" type:"integer"` // Specifies the vertical position of the caption relative to the top of the // output in pixels. A value of 10 would result in the captions starting 10 // pixels from the top of the output. If no explicit y_position is provided, // the caption will be positioned towards the bottom of the output. This option // is not valid for source captions that are STL, 608/embedded or teletext. // These source settings are already pre-defined by the caption stream. All // burn-in and DVB-Sub font settings must match. YPosition *int64 `locationName:"yPosition" type:"integer"` } // String returns the string representation func (s BurninDestinationSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s BurninDestinationSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *BurninDestinationSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "BurninDestinationSettings"} if s.FontResolution != nil && *s.FontResolution < 96 { invalidParams.Add(request.NewErrParamMinValue("FontResolution", 96)) } if s.ShadowXOffset != nil && *s.ShadowXOffset < -2.147483648e+09 { invalidParams.Add(request.NewErrParamMinValue("ShadowXOffset", -2.147483648e+09)) } if s.ShadowYOffset != nil && *s.ShadowYOffset < -2.147483648e+09 { invalidParams.Add(request.NewErrParamMinValue("ShadowYOffset", -2.147483648e+09)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAlignment sets the Alignment field's value. func (s *BurninDestinationSettings) SetAlignment(v string) *BurninDestinationSettings { s.Alignment = &v return s } // SetBackgroundColor sets the BackgroundColor field's value. func (s *BurninDestinationSettings) SetBackgroundColor(v string) *BurninDestinationSettings { s.BackgroundColor = &v return s } // SetBackgroundOpacity sets the BackgroundOpacity field's value. func (s *BurninDestinationSettings) SetBackgroundOpacity(v int64) *BurninDestinationSettings { s.BackgroundOpacity = &v return s } // SetFontColor sets the FontColor field's value. func (s *BurninDestinationSettings) SetFontColor(v string) *BurninDestinationSettings { s.FontColor = &v return s } // SetFontOpacity sets the FontOpacity field's value. func (s *BurninDestinationSettings) SetFontOpacity(v int64) *BurninDestinationSettings { s.FontOpacity = &v return s } // SetFontResolution sets the FontResolution field's value. func (s *BurninDestinationSettings) SetFontResolution(v int64) *BurninDestinationSettings { s.FontResolution = &v return s } // SetFontScript sets the FontScript field's value. func (s *BurninDestinationSettings) SetFontScript(v string) *BurninDestinationSettings { s.FontScript = &v return s } // SetFontSize sets the FontSize field's value. func (s *BurninDestinationSettings) SetFontSize(v int64) *BurninDestinationSettings { s.FontSize = &v return s } // SetOutlineColor sets the OutlineColor field's value. func (s *BurninDestinationSettings) SetOutlineColor(v string) *BurninDestinationSettings { s.OutlineColor = &v return s } // SetOutlineSize sets the OutlineSize field's value. func (s *BurninDestinationSettings) SetOutlineSize(v int64) *BurninDestinationSettings { s.OutlineSize = &v return s } // SetShadowColor sets the ShadowColor field's value. func (s *BurninDestinationSettings) SetShadowColor(v string) *BurninDestinationSettings { s.ShadowColor = &v return s } // SetShadowOpacity sets the ShadowOpacity field's value. func (s *BurninDestinationSettings) SetShadowOpacity(v int64) *BurninDestinationSettings { s.ShadowOpacity = &v return s } // SetShadowXOffset sets the ShadowXOffset field's value. func (s *BurninDestinationSettings) SetShadowXOffset(v int64) *BurninDestinationSettings { s.ShadowXOffset = &v return s } // SetShadowYOffset sets the ShadowYOffset field's value. func (s *BurninDestinationSettings) SetShadowYOffset(v int64) *BurninDestinationSettings { s.ShadowYOffset = &v return s } // SetTeletextSpacing sets the TeletextSpacing field's value. func (s *BurninDestinationSettings) SetTeletextSpacing(v string) *BurninDestinationSettings { s.TeletextSpacing = &v return s } // SetXPosition sets the XPosition field's value. func (s *BurninDestinationSettings) SetXPosition(v int64) *BurninDestinationSettings { s.XPosition = &v return s } // SetYPosition sets the YPosition field's value. func (s *BurninDestinationSettings) SetYPosition(v int64) *BurninDestinationSettings { s.YPosition = &v return s } // Cancel a job by sending a request with the job ID type CancelJobInput struct { _ struct{} `type:"structure"` // The Job ID of the job to be cancelled. // // Id is a required field Id *string `location:"uri" locationName:"id" type:"string" required:"true"` } // String returns the string representation func (s CancelJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelJobInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetId sets the Id field's value. func (s *CancelJobInput) SetId(v string) *CancelJobInput { s.Id = &v return s } // A cancel job request will receive a response with an empty body. type CancelJobOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CancelJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CancelJobOutput) GoString() string { return s.String() } // Description of Caption output type CaptionDescription struct { _ struct{} `type:"structure"` // Specifies which "Caption Selector":#inputs-caption_selector to use from each // input when generating captions. The name should be of the format "Caption // Selector ", which denotes that the Nth Caption Selector will be used from // each input. CaptionSelectorName *string `locationName:"captionSelectorName" min:"1" type:"string"` // Indicates the language of the caption output track, using the ISO 639-2 or // ISO 639-3 three-letter language code. For most captions output formats, the // encoder puts this language information in the output captions metadata. If // your output captions format is DVB-Sub or Burn in, the encoder uses this // language information to choose the font language for rendering the captions // text. CustomLanguageCode *string `locationName:"customLanguageCode" min:"3" type:"string"` // Specific settings required by destination type. Note that burnin_destination_settings // are not available if the source of the caption data is Embedded or Teletext. DestinationSettings *CaptionDestinationSettings `locationName:"destinationSettings" type:"structure"` // Specify the language of this captions output track. For most captions output // formats, the encoder puts this language information in the output captions // metadata. If your output captions format is DVB-Sub or Burn in, the encoder // uses this language information to choose the font language for rendering // the captions text. LanguageCode *string `locationName:"languageCode" type:"string" enum:"LanguageCode"` // Human readable information to indicate captions available for players (eg. // English, or Spanish). Alphanumeric characters, spaces, and underscore are // legal. LanguageDescription *string `locationName:"languageDescription" type:"string"` } // String returns the string representation func (s CaptionDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CaptionDescription) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CaptionDescription) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CaptionDescription"} if s.CaptionSelectorName != nil && len(*s.CaptionSelectorName) < 1 { invalidParams.Add(request.NewErrParamMinLen("CaptionSelectorName", 1)) } if s.CustomLanguageCode != nil && len(*s.CustomLanguageCode) < 3 { invalidParams.Add(request.NewErrParamMinLen("CustomLanguageCode", 3)) } if s.DestinationSettings != nil { if err := s.DestinationSettings.Validate(); err != nil { invalidParams.AddNested("DestinationSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCaptionSelectorName sets the CaptionSelectorName field's value. func (s *CaptionDescription) SetCaptionSelectorName(v string) *CaptionDescription { s.CaptionSelectorName = &v return s } // SetCustomLanguageCode sets the CustomLanguageCode field's value. func (s *CaptionDescription) SetCustomLanguageCode(v string) *CaptionDescription { s.CustomLanguageCode = &v return s } // SetDestinationSettings sets the DestinationSettings field's value. func (s *CaptionDescription) SetDestinationSettings(v *CaptionDestinationSettings) *CaptionDescription { s.DestinationSettings = v return s } // SetLanguageCode sets the LanguageCode field's value. func (s *CaptionDescription) SetLanguageCode(v string) *CaptionDescription { s.LanguageCode = &v return s } // SetLanguageDescription sets the LanguageDescription field's value. func (s *CaptionDescription) SetLanguageDescription(v string) *CaptionDescription { s.LanguageDescription = &v return s } // Caption Description for preset type CaptionDescriptionPreset struct { _ struct{} `type:"structure"` // Indicates the language of the caption output track, using the ISO 639-2 or // ISO 639-3 three-letter language code. For most captions output formats, the // encoder puts this language information in the output captions metadata. If // your output captions format is DVB-Sub or Burn in, the encoder uses this // language information to choose the font language for rendering the captions // text. CustomLanguageCode *string `locationName:"customLanguageCode" min:"3" type:"string"` // Specific settings required by destination type. Note that burnin_destination_settings // are not available if the source of the caption data is Embedded or Teletext. DestinationSettings *CaptionDestinationSettings `locationName:"destinationSettings" type:"structure"` // Specify the language of this captions output track. For most captions output // formats, the encoder puts this language information in the output captions // metadata. If your output captions format is DVB-Sub or Burn in, the encoder // uses this language information to choose the font language for rendering // the captions text. LanguageCode *string `locationName:"languageCode" type:"string" enum:"LanguageCode"` // Human readable information to indicate captions available for players (eg. // English, or Spanish). Alphanumeric characters, spaces, and underscore are // legal. LanguageDescription *string `locationName:"languageDescription" type:"string"` } // String returns the string representation func (s CaptionDescriptionPreset) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CaptionDescriptionPreset) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CaptionDescriptionPreset) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CaptionDescriptionPreset"} if s.CustomLanguageCode != nil && len(*s.CustomLanguageCode) < 3 { invalidParams.Add(request.NewErrParamMinLen("CustomLanguageCode", 3)) } if s.DestinationSettings != nil { if err := s.DestinationSettings.Validate(); err != nil { invalidParams.AddNested("DestinationSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCustomLanguageCode sets the CustomLanguageCode field's value. func (s *CaptionDescriptionPreset) SetCustomLanguageCode(v string) *CaptionDescriptionPreset { s.CustomLanguageCode = &v return s } // SetDestinationSettings sets the DestinationSettings field's value. func (s *CaptionDescriptionPreset) SetDestinationSettings(v *CaptionDestinationSettings) *CaptionDescriptionPreset { s.DestinationSettings = v return s } // SetLanguageCode sets the LanguageCode field's value. func (s *CaptionDescriptionPreset) SetLanguageCode(v string) *CaptionDescriptionPreset { s.LanguageCode = &v return s } // SetLanguageDescription sets the LanguageDescription field's value. func (s *CaptionDescriptionPreset) SetLanguageDescription(v string) *CaptionDescriptionPreset { s.LanguageDescription = &v return s } // Specific settings required by destination type. Note that burnin_destination_settings // are not available if the source of the caption data is Embedded or Teletext. type CaptionDestinationSettings struct { _ struct{} `type:"structure"` // Burn-In Destination Settings. BurninDestinationSettings *BurninDestinationSettings `locationName:"burninDestinationSettings" type:"structure"` // Specify the format for this set of captions on this output. The default format // is embedded without SCTE-20. Other options are embedded with SCTE-20, burn-in, // DVB-sub, SCC, SRT, teletext, TTML, and web-VTT. If you are using SCTE-20, // choose SCTE-20 plus embedded (SCTE20_PLUS_EMBEDDED) to create an output that // complies with the SCTE-43 spec. To create a non-compliant output where the // embedded captions come first, choose Embedded plus SCTE-20 (EMBEDDED_PLUS_SCTE20). DestinationType *string `locationName:"destinationType" type:"string" enum:"CaptionDestinationType"` // DVB-Sub Destination Settings DvbSubDestinationSettings *DvbSubDestinationSettings `locationName:"dvbSubDestinationSettings" type:"structure"` // Settings specific to embedded/ancillary caption outputs, including 608/708 // Channel destination number. EmbeddedDestinationSettings *EmbeddedDestinationSettings `locationName:"embeddedDestinationSettings" type:"structure"` // Settings for SCC caption output. SccDestinationSettings *SccDestinationSettings `locationName:"sccDestinationSettings" type:"structure"` // Settings for Teletext caption output TeletextDestinationSettings *TeletextDestinationSettings `locationName:"teletextDestinationSettings" type:"structure"` // Settings specific to TTML caption outputs, including Pass style information // (TtmlStylePassthrough). TtmlDestinationSettings *TtmlDestinationSettings `locationName:"ttmlDestinationSettings" type:"structure"` } // String returns the string representation func (s CaptionDestinationSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CaptionDestinationSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CaptionDestinationSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CaptionDestinationSettings"} if s.BurninDestinationSettings != nil { if err := s.BurninDestinationSettings.Validate(); err != nil { invalidParams.AddNested("BurninDestinationSettings", err.(request.ErrInvalidParams)) } } if s.DvbSubDestinationSettings != nil { if err := s.DvbSubDestinationSettings.Validate(); err != nil { invalidParams.AddNested("DvbSubDestinationSettings", err.(request.ErrInvalidParams)) } } if s.EmbeddedDestinationSettings != nil { if err := s.EmbeddedDestinationSettings.Validate(); err != nil { invalidParams.AddNested("EmbeddedDestinationSettings", err.(request.ErrInvalidParams)) } } if s.TeletextDestinationSettings != nil { if err := s.TeletextDestinationSettings.Validate(); err != nil { invalidParams.AddNested("TeletextDestinationSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBurninDestinationSettings sets the BurninDestinationSettings field's value. func (s *CaptionDestinationSettings) SetBurninDestinationSettings(v *BurninDestinationSettings) *CaptionDestinationSettings { s.BurninDestinationSettings = v return s } // SetDestinationType sets the DestinationType field's value. func (s *CaptionDestinationSettings) SetDestinationType(v string) *CaptionDestinationSettings { s.DestinationType = &v return s } // SetDvbSubDestinationSettings sets the DvbSubDestinationSettings field's value. func (s *CaptionDestinationSettings) SetDvbSubDestinationSettings(v *DvbSubDestinationSettings) *CaptionDestinationSettings { s.DvbSubDestinationSettings = v return s } // SetEmbeddedDestinationSettings sets the EmbeddedDestinationSettings field's value. func (s *CaptionDestinationSettings) SetEmbeddedDestinationSettings(v *EmbeddedDestinationSettings) *CaptionDestinationSettings { s.EmbeddedDestinationSettings = v return s } // SetSccDestinationSettings sets the SccDestinationSettings field's value. func (s *CaptionDestinationSettings) SetSccDestinationSettings(v *SccDestinationSettings) *CaptionDestinationSettings { s.SccDestinationSettings = v return s } // SetTeletextDestinationSettings sets the TeletextDestinationSettings field's value. func (s *CaptionDestinationSettings) SetTeletextDestinationSettings(v *TeletextDestinationSettings) *CaptionDestinationSettings { s.TeletextDestinationSettings = v return s } // SetTtmlDestinationSettings sets the TtmlDestinationSettings field's value. func (s *CaptionDestinationSettings) SetTtmlDestinationSettings(v *TtmlDestinationSettings) *CaptionDestinationSettings { s.TtmlDestinationSettings = v return s } // Set up captions in your outputs by first selecting them from your input here. type CaptionSelector struct { _ struct{} `type:"structure"` // The specific language to extract from source, using the ISO 639-2 or ISO // 639-3 three-letter language code. If input is SCTE-27, complete this field // and/or PID to select the caption language to extract. If input is DVB-Sub // and output is Burn-in or SMPTE-TT, complete this field and/or PID to select // the caption language to extract. If input is DVB-Sub that is being passed // through, omit this field (and PID field); there is no way to extract a specific // language with pass-through captions. CustomLanguageCode *string `locationName:"customLanguageCode" min:"3" type:"string"` // The specific language to extract from source. If input is SCTE-27, complete // this field and/or PID to select the caption language to extract. If input // is DVB-Sub and output is Burn-in or SMPTE-TT, complete this field and/or // PID to select the caption language to extract. If input is DVB-Sub that is // being passed through, omit this field (and PID field); there is no way to // extract a specific language with pass-through captions. LanguageCode *string `locationName:"languageCode" type:"string" enum:"LanguageCode"` // Source settings (SourceSettings) contains the group of settings for captions // in the input. SourceSettings *CaptionSourceSettings `locationName:"sourceSettings" type:"structure"` } // String returns the string representation func (s CaptionSelector) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CaptionSelector) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CaptionSelector) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CaptionSelector"} if s.CustomLanguageCode != nil && len(*s.CustomLanguageCode) < 3 { invalidParams.Add(request.NewErrParamMinLen("CustomLanguageCode", 3)) } if s.SourceSettings != nil { if err := s.SourceSettings.Validate(); err != nil { invalidParams.AddNested("SourceSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCustomLanguageCode sets the CustomLanguageCode field's value. func (s *CaptionSelector) SetCustomLanguageCode(v string) *CaptionSelector { s.CustomLanguageCode = &v return s } // SetLanguageCode sets the LanguageCode field's value. func (s *CaptionSelector) SetLanguageCode(v string) *CaptionSelector { s.LanguageCode = &v return s } // SetSourceSettings sets the SourceSettings field's value. func (s *CaptionSelector) SetSourceSettings(v *CaptionSourceSettings) *CaptionSelector { s.SourceSettings = v return s } // Source settings (SourceSettings) contains the group of settings for captions // in the input. type CaptionSourceSettings struct { _ struct{} `type:"structure"` // Settings for ancillary captions source. AncillarySourceSettings *AncillarySourceSettings `locationName:"ancillarySourceSettings" type:"structure"` // DVB Sub Source Settings DvbSubSourceSettings *DvbSubSourceSettings `locationName:"dvbSubSourceSettings" type:"structure"` // Settings for embedded captions Source EmbeddedSourceSettings *EmbeddedSourceSettings `locationName:"embeddedSourceSettings" type:"structure"` // Settings for File-based Captions in Source FileSourceSettings *FileSourceSettings `locationName:"fileSourceSettings" type:"structure"` // Use Source (SourceType) to identify the format of your input captions. The // service cannot auto-detect caption format. SourceType *string `locationName:"sourceType" type:"string" enum:"CaptionSourceType"` // Settings specific to Teletext caption sources, including Page number. TeletextSourceSettings *TeletextSourceSettings `locationName:"teletextSourceSettings" type:"structure"` // Settings specific to caption sources that are specfied by track number. Sources // include IMSC in IMF. TrackSourceSettings *TrackSourceSettings `locationName:"trackSourceSettings" type:"structure"` } // String returns the string representation func (s CaptionSourceSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CaptionSourceSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CaptionSourceSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CaptionSourceSettings"} if s.AncillarySourceSettings != nil { if err := s.AncillarySourceSettings.Validate(); err != nil { invalidParams.AddNested("AncillarySourceSettings", err.(request.ErrInvalidParams)) } } if s.DvbSubSourceSettings != nil { if err := s.DvbSubSourceSettings.Validate(); err != nil { invalidParams.AddNested("DvbSubSourceSettings", err.(request.ErrInvalidParams)) } } if s.EmbeddedSourceSettings != nil { if err := s.EmbeddedSourceSettings.Validate(); err != nil { invalidParams.AddNested("EmbeddedSourceSettings", err.(request.ErrInvalidParams)) } } if s.FileSourceSettings != nil { if err := s.FileSourceSettings.Validate(); err != nil { invalidParams.AddNested("FileSourceSettings", err.(request.ErrInvalidParams)) } } if s.TeletextSourceSettings != nil { if err := s.TeletextSourceSettings.Validate(); err != nil { invalidParams.AddNested("TeletextSourceSettings", err.(request.ErrInvalidParams)) } } if s.TrackSourceSettings != nil { if err := s.TrackSourceSettings.Validate(); err != nil { invalidParams.AddNested("TrackSourceSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAncillarySourceSettings sets the AncillarySourceSettings field's value. func (s *CaptionSourceSettings) SetAncillarySourceSettings(v *AncillarySourceSettings) *CaptionSourceSettings { s.AncillarySourceSettings = v return s } // SetDvbSubSourceSettings sets the DvbSubSourceSettings field's value. func (s *CaptionSourceSettings) SetDvbSubSourceSettings(v *DvbSubSourceSettings) *CaptionSourceSettings { s.DvbSubSourceSettings = v return s } // SetEmbeddedSourceSettings sets the EmbeddedSourceSettings field's value. func (s *CaptionSourceSettings) SetEmbeddedSourceSettings(v *EmbeddedSourceSettings) *CaptionSourceSettings { s.EmbeddedSourceSettings = v return s } // SetFileSourceSettings sets the FileSourceSettings field's value. func (s *CaptionSourceSettings) SetFileSourceSettings(v *FileSourceSettings) *CaptionSourceSettings { s.FileSourceSettings = v return s } // SetSourceType sets the SourceType field's value. func (s *CaptionSourceSettings) SetSourceType(v string) *CaptionSourceSettings { s.SourceType = &v return s } // SetTeletextSourceSettings sets the TeletextSourceSettings field's value. func (s *CaptionSourceSettings) SetTeletextSourceSettings(v *TeletextSourceSettings) *CaptionSourceSettings { s.TeletextSourceSettings = v return s } // SetTrackSourceSettings sets the TrackSourceSettings field's value. func (s *CaptionSourceSettings) SetTrackSourceSettings(v *TrackSourceSettings) *CaptionSourceSettings { s.TrackSourceSettings = v return s } // Channel mapping (ChannelMapping) contains the group of fields that hold the // remixing value for each channel. Units are in dB. Acceptable values are within // the range from -60 (mute) through 6. A setting of 0 passes the input channel // unchanged to the output channel (no attenuation or amplification). type ChannelMapping struct { _ struct{} `type:"structure"` // List of output channels OutputChannels []*OutputChannelMapping `locationName:"outputChannels" type:"list"` } // String returns the string representation func (s ChannelMapping) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ChannelMapping) GoString() string { return s.String() } // SetOutputChannels sets the OutputChannels field's value. func (s *ChannelMapping) SetOutputChannels(v []*OutputChannelMapping) *ChannelMapping { s.OutputChannels = v return s } // Settings for CMAF encryption type CmafEncryptionSettings struct { _ struct{} `type:"structure"` // This is a 128-bit, 16-byte hex value represented by a 32-character text string. // If this parameter is not set then the Initialization Vector will follow the // segment number by default. ConstantInitializationVector *string `locationName:"constantInitializationVector" min:"32" type:"string"` // Encrypts the segments with the given encryption scheme. Leave blank to disable. // Selecting 'Disabled' in the web interface also disables encryption. EncryptionMethod *string `locationName:"encryptionMethod" type:"string" enum:"CmafEncryptionType"` // The Initialization Vector is a 128-bit number used in conjunction with the // key for encrypting blocks. If set to INCLUDE, Initialization Vector is listed // in the manifest. Otherwise Initialization Vector is not in the manifest. InitializationVectorInManifest *string `locationName:"initializationVectorInManifest" type:"string" enum:"CmafInitializationVectorInManifest"` // Use these settings to set up encryption with a static key provider. StaticKeyProvider *StaticKeyProvider `locationName:"staticKeyProvider" type:"structure"` // Indicates which type of key provider is used for encryption. Type *string `locationName:"type" type:"string" enum:"CmafKeyProviderType"` } // String returns the string representation func (s CmafEncryptionSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CmafEncryptionSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CmafEncryptionSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CmafEncryptionSettings"} if s.ConstantInitializationVector != nil && len(*s.ConstantInitializationVector) < 32 { invalidParams.Add(request.NewErrParamMinLen("ConstantInitializationVector", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetConstantInitializationVector sets the ConstantInitializationVector field's value. func (s *CmafEncryptionSettings) SetConstantInitializationVector(v string) *CmafEncryptionSettings { s.ConstantInitializationVector = &v return s } // SetEncryptionMethod sets the EncryptionMethod field's value. func (s *CmafEncryptionSettings) SetEncryptionMethod(v string) *CmafEncryptionSettings { s.EncryptionMethod = &v return s } // SetInitializationVectorInManifest sets the InitializationVectorInManifest field's value. func (s *CmafEncryptionSettings) SetInitializationVectorInManifest(v string) *CmafEncryptionSettings { s.InitializationVectorInManifest = &v return s } // SetStaticKeyProvider sets the StaticKeyProvider field's value. func (s *CmafEncryptionSettings) SetStaticKeyProvider(v *StaticKeyProvider) *CmafEncryptionSettings { s.StaticKeyProvider = v return s } // SetType sets the Type field's value. func (s *CmafEncryptionSettings) SetType(v string) *CmafEncryptionSettings { s.Type = &v return s } // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to // CMAF_GROUP_SETTINGS. Each output in a CMAF Output Group may only contain // a single video, audio, or caption output. type CmafGroupSettings struct { _ struct{} `type:"structure"` // A partial URI prefix that will be put in the manifest file at the top level // BaseURL element. Can be used if streams are delivered from a different URL // than the manifest file. BaseUrl *string `locationName:"baseUrl" type:"string"` // When set to ENABLED, sets #EXT-X-ALLOW-CACHE:no tag, which prevents client // from saving media segments for later replay. ClientCache *string `locationName:"clientCache" type:"string" enum:"CmafClientCache"` // Specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist // generation. CodecSpecification *string `locationName:"codecSpecification" type:"string" enum:"CmafCodecSpecification"` // Use Destination (Destination) to specify the S3 output location and the output // filename base. Destination accepts format identifiers. If you do not specify // the base filename in the URI, the service will use the filename of the input // file. If your job has multiple inputs, the service uses the filename of the // first input file. Destination *string `locationName:"destination" type:"string"` // DRM settings. Encryption *CmafEncryptionSettings `locationName:"encryption" type:"structure"` // Length of fragments to generate (in seconds). Fragment length must be compatible // with GOP size and Framerate. Note that fragments will end on the next keyframe // after this number of seconds, so actual fragment length may be longer. When // Emit Single File is checked, the fragmentation is internal to a single output // file and it does not cause the creation of many output files as in other // output types. FragmentLength *int64 `locationName:"fragmentLength" min:"1" type:"integer"` // When set to GZIP, compresses HLS playlist. ManifestCompression *string `locationName:"manifestCompression" type:"string" enum:"CmafManifestCompression"` // Indicates whether the output manifest should use floating point values for // segment duration. ManifestDurationFormat *string `locationName:"manifestDurationFormat" type:"string" enum:"CmafManifestDurationFormat"` // Minimum time of initially buffered media that is needed to ensure smooth // playout. MinBufferTime *int64 `locationName:"minBufferTime" type:"integer"` // Keep this setting at the default value of 0, unless you are troubleshooting // a problem with how devices play back the end of your video asset. If you // know that player devices are hanging on the final segment of your video because // the length of your final segment is too short, use this setting to specify // a minimum final segment length, in seconds. Choose a value that is greater // than or equal to 1 and less than your segment length. When you specify a // value for this setting, the encoder will combine any final segment that is // shorter than the length that you specify with the previous segment. For example, // your segment length is 3 seconds and your final segment is .5 seconds without // a minimum final segment length; when you set the minimum final segment length // to 1, your final segment is 3.5 seconds. MinFinalSegmentLength *float64 `locationName:"minFinalSegmentLength" type:"double"` // When set to SINGLE_FILE, a single output file is generated, which is internally // segmented using the Fragment Length and Segment Length. When set to SEGMENTED_FILES, // separate segment files will be created. SegmentControl *string `locationName:"segmentControl" type:"string" enum:"CmafSegmentControl"` // Use this setting to specify the length, in seconds, of each individual CMAF // segment. This value applies to the whole package; that is, to every output // in the output group. Note that segments end on the first keyframe after this // number of seconds, so the actual segment length might be slightly longer. // If you set Segment control (CmafSegmentControl) to single file, the service // puts the content of each output in a single file that has metadata that marks // these segments. If you set it to segmented files, the service creates multiple // files for each output, each with the content of one segment. SegmentLength *int64 `locationName:"segmentLength" min:"1" type:"integer"` // Include or exclude RESOLUTION attribute for video in EXT-X-STREAM-INF tag // of variant manifest. StreamInfResolution *string `locationName:"streamInfResolution" type:"string" enum:"CmafStreamInfResolution"` // When set to ENABLED, a DASH MPD manifest will be generated for this output. WriteDashManifest *string `locationName:"writeDashManifest" type:"string" enum:"CmafWriteDASHManifest"` // When set to ENABLED, an Apple HLS manifest will be generated for this output. WriteHlsManifest *string `locationName:"writeHlsManifest" type:"string" enum:"CmafWriteHLSManifest"` } // String returns the string representation func (s CmafGroupSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CmafGroupSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CmafGroupSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CmafGroupSettings"} if s.FragmentLength != nil && *s.FragmentLength < 1 { invalidParams.Add(request.NewErrParamMinValue("FragmentLength", 1)) } if s.SegmentLength != nil && *s.SegmentLength < 1 { invalidParams.Add(request.NewErrParamMinValue("SegmentLength", 1)) } if s.Encryption != nil { if err := s.Encryption.Validate(); err != nil { invalidParams.AddNested("Encryption", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBaseUrl sets the BaseUrl field's value. func (s *CmafGroupSettings) SetBaseUrl(v string) *CmafGroupSettings { s.BaseUrl = &v return s } // SetClientCache sets the ClientCache field's value. func (s *CmafGroupSettings) SetClientCache(v string) *CmafGroupSettings { s.ClientCache = &v return s } // SetCodecSpecification sets the CodecSpecification field's value. func (s *CmafGroupSettings) SetCodecSpecification(v string) *CmafGroupSettings { s.CodecSpecification = &v return s } // SetDestination sets the Destination field's value. func (s *CmafGroupSettings) SetDestination(v string) *CmafGroupSettings { s.Destination = &v return s } // SetEncryption sets the Encryption field's value. func (s *CmafGroupSettings) SetEncryption(v *CmafEncryptionSettings) *CmafGroupSettings { s.Encryption = v return s } // SetFragmentLength sets the FragmentLength field's value. func (s *CmafGroupSettings) SetFragmentLength(v int64) *CmafGroupSettings { s.FragmentLength = &v return s } // SetManifestCompression sets the ManifestCompression field's value. func (s *CmafGroupSettings) SetManifestCompression(v string) *CmafGroupSettings { s.ManifestCompression = &v return s } // SetManifestDurationFormat sets the ManifestDurationFormat field's value. func (s *CmafGroupSettings) SetManifestDurationFormat(v string) *CmafGroupSettings { s.ManifestDurationFormat = &v return s } // SetMinBufferTime sets the MinBufferTime field's value. func (s *CmafGroupSettings) SetMinBufferTime(v int64) *CmafGroupSettings { s.MinBufferTime = &v return s } // SetMinFinalSegmentLength sets the MinFinalSegmentLength field's value. func (s *CmafGroupSettings) SetMinFinalSegmentLength(v float64) *CmafGroupSettings { s.MinFinalSegmentLength = &v return s } // SetSegmentControl sets the SegmentControl field's value. func (s *CmafGroupSettings) SetSegmentControl(v string) *CmafGroupSettings { s.SegmentControl = &v return s } // SetSegmentLength sets the SegmentLength field's value. func (s *CmafGroupSettings) SetSegmentLength(v int64) *CmafGroupSettings { s.SegmentLength = &v return s } // SetStreamInfResolution sets the StreamInfResolution field's value. func (s *CmafGroupSettings) SetStreamInfResolution(v string) *CmafGroupSettings { s.StreamInfResolution = &v return s } // SetWriteDashManifest sets the WriteDashManifest field's value. func (s *CmafGroupSettings) SetWriteDashManifest(v string) *CmafGroupSettings { s.WriteDashManifest = &v return s } // SetWriteHlsManifest sets the WriteHlsManifest field's value. func (s *CmafGroupSettings) SetWriteHlsManifest(v string) *CmafGroupSettings { s.WriteHlsManifest = &v return s } // Settings for color correction. type ColorCorrector struct { _ struct{} `type:"structure"` // Brightness level. Brightness *int64 `locationName:"brightness" min:"1" type:"integer"` // Determines if colorspace conversion will be performed. If set to _None_, // no conversion will be performed. If _Force 601_ or _Force 709_ are selected, // conversion will be performed for inputs with differing colorspaces. An input's // colorspace can be specified explicitly in the "Video Selector":#inputs-video_selector // if necessary. ColorSpaceConversion *string `locationName:"colorSpaceConversion" type:"string" enum:"ColorSpaceConversion"` // Contrast level. Contrast *int64 `locationName:"contrast" min:"1" type:"integer"` // Use the HDR master display (Hdr10Metadata) settings to correct HDR metadata // or to provide missing metadata. Note that these settings are not color correction. Hdr10Metadata *Hdr10Metadata `locationName:"hdr10Metadata" type:"structure"` // Hue in degrees. Hue *int64 `locationName:"hue" type:"integer"` // Saturation level. Saturation *int64 `locationName:"saturation" min:"1" type:"integer"` } // String returns the string representation func (s ColorCorrector) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ColorCorrector) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ColorCorrector) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ColorCorrector"} if s.Brightness != nil && *s.Brightness < 1 { invalidParams.Add(request.NewErrParamMinValue("Brightness", 1)) } if s.Contrast != nil && *s.Contrast < 1 { invalidParams.Add(request.NewErrParamMinValue("Contrast", 1)) } if s.Hue != nil && *s.Hue < -180 { invalidParams.Add(request.NewErrParamMinValue("Hue", -180)) } if s.Saturation != nil && *s.Saturation < 1 { invalidParams.Add(request.NewErrParamMinValue("Saturation", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBrightness sets the Brightness field's value. func (s *ColorCorrector) SetBrightness(v int64) *ColorCorrector { s.Brightness = &v return s } // SetColorSpaceConversion sets the ColorSpaceConversion field's value. func (s *ColorCorrector) SetColorSpaceConversion(v string) *ColorCorrector { s.ColorSpaceConversion = &v return s } // SetContrast sets the Contrast field's value. func (s *ColorCorrector) SetContrast(v int64) *ColorCorrector { s.Contrast = &v return s } // SetHdr10Metadata sets the Hdr10Metadata field's value. func (s *ColorCorrector) SetHdr10Metadata(v *Hdr10Metadata) *ColorCorrector { s.Hdr10Metadata = v return s } // SetHue sets the Hue field's value. func (s *ColorCorrector) SetHue(v int64) *ColorCorrector { s.Hue = &v return s } // SetSaturation sets the Saturation field's value. func (s *ColorCorrector) SetSaturation(v int64) *ColorCorrector { s.Saturation = &v return s } // Container specific settings. type ContainerSettings struct { _ struct{} `type:"structure"` // Container for this output. Some containers require a container settings object. // If not specified, the default object will be created. Container *string `locationName:"container" type:"string" enum:"ContainerType"` // Settings for F4v container F4vSettings *F4vSettings `locationName:"f4vSettings" type:"structure"` // MPEG-2 TS container settings. These apply to outputs in a File output group // when the output's container (ContainerType) is MPEG-2 Transport Stream (M2TS). // In these assets, data is organized by the program map table (PMT). Each transport // stream program contains subsets of data, including audio, video, and metadata. // Each of these subsets of data has a numerical label called a packet identifier // (PID). Each transport stream program corresponds to one MediaConvert output. // The PMT lists the types of data in a program along with their PID. Downstream // systems and players use the program map table to look up the PID for each // type of data it accesses and then uses the PIDs to locate specific data within // the asset. M2tsSettings *M2tsSettings `locationName:"m2tsSettings" type:"structure"` // Settings for TS segments in HLS M3u8Settings *M3u8Settings `locationName:"m3u8Settings" type:"structure"` // Settings for MOV Container. MovSettings *MovSettings `locationName:"movSettings" type:"structure"` // Settings for MP4 Container Mp4Settings *Mp4Settings `locationName:"mp4Settings" type:"structure"` } // String returns the string representation func (s ContainerSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ContainerSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ContainerSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ContainerSettings"} if s.M2tsSettings != nil { if err := s.M2tsSettings.Validate(); err != nil { invalidParams.AddNested("M2tsSettings", err.(request.ErrInvalidParams)) } } if s.M3u8Settings != nil { if err := s.M3u8Settings.Validate(); err != nil { invalidParams.AddNested("M3u8Settings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetContainer sets the Container field's value. func (s *ContainerSettings) SetContainer(v string) *ContainerSettings { s.Container = &v return s } // SetF4vSettings sets the F4vSettings field's value. func (s *ContainerSettings) SetF4vSettings(v *F4vSettings) *ContainerSettings { s.F4vSettings = v return s } // SetM2tsSettings sets the M2tsSettings field's value. func (s *ContainerSettings) SetM2tsSettings(v *M2tsSettings) *ContainerSettings { s.M2tsSettings = v return s } // SetM3u8Settings sets the M3u8Settings field's value. func (s *ContainerSettings) SetM3u8Settings(v *M3u8Settings) *ContainerSettings { s.M3u8Settings = v return s } // SetMovSettings sets the MovSettings field's value. func (s *ContainerSettings) SetMovSettings(v *MovSettings) *ContainerSettings { s.MovSettings = v return s } // SetMp4Settings sets the Mp4Settings field's value. func (s *ContainerSettings) SetMp4Settings(v *Mp4Settings) *ContainerSettings { s.Mp4Settings = v return s } // Send your create job request with your job settings and IAM role. Optionally, // include user metadata and the ARN for the queue. type CreateJobInput struct { _ struct{} `type:"structure"` // This is a beta feature. If you are interested in using this feature, please // contact AWS customer support. AccelerationSettings *AccelerationSettings `locationName:"accelerationSettings" type:"structure"` // Optional. Choose a tag type that AWS Billing and Cost Management will use // to sort your AWS Elemental MediaConvert costs on any billing report that // you set up. Any transcoding outputs that don't have an associated tag will // appear in your billing report unsorted. If you don't choose a valid value // for this field, your job outputs will appear on the billing report unsorted. BillingTagsSource *string `locationName:"billingTagsSource" type:"string" enum:"BillingTagsSource"` // Idempotency token for CreateJob operation. ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` // When you create a job, you can either specify a job template or specify the // transcoding settings individually JobTemplate *string `locationName:"jobTemplate" type:"string"` // Optional. When you create a job, you can specify a queue to send it to. If // you don't specify, the job will go to the default queue. For more about queues, // see the User Guide topic at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html. Queue *string `locationName:"queue" type:"string"` // Required. The IAM role you use for creating this job. For details about permissions, // see the User Guide topic at the User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/iam-role.html. // // Role is a required field Role *string `locationName:"role" type:"string" required:"true"` // JobSettings contains all the transcode settings for a job. // // Settings is a required field Settings *JobSettings `locationName:"settings" type:"structure" required:"true"` // Specify how often MediaConvert sends STATUS_UPDATE events to Amazon CloudWatch // Events. Set the interval, in seconds, between status updates. MediaConvert // sends an update at this interval from the time the service begins processing // your job to the time it completes the transcode or encounters an error. StatusUpdateIntervalInSecs *int64 `locationName:"statusUpdateIntervalInSecs" min:"10" type:"long"` // User-defined metadata that you want to associate with an MediaConvert job. // You specify metadata in key/value pairs. UserMetadata map[string]*string `locationName:"userMetadata" type:"map"` } // String returns the string representation func (s CreateJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateJobInput"} if s.Role == nil { invalidParams.Add(request.NewErrParamRequired("Role")) } if s.Settings == nil { invalidParams.Add(request.NewErrParamRequired("Settings")) } if s.StatusUpdateIntervalInSecs != nil && *s.StatusUpdateIntervalInSecs < 10 { invalidParams.Add(request.NewErrParamMinValue("StatusUpdateIntervalInSecs", 10)) } if s.AccelerationSettings != nil { if err := s.AccelerationSettings.Validate(); err != nil { invalidParams.AddNested("AccelerationSettings", err.(request.ErrInvalidParams)) } } if s.Settings != nil { if err := s.Settings.Validate(); err != nil { invalidParams.AddNested("Settings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccelerationSettings sets the AccelerationSettings field's value. func (s *CreateJobInput) SetAccelerationSettings(v *AccelerationSettings) *CreateJobInput { s.AccelerationSettings = v return s } // SetBillingTagsSource sets the BillingTagsSource field's value. func (s *CreateJobInput) SetBillingTagsSource(v string) *CreateJobInput { s.BillingTagsSource = &v return s } // SetClientRequestToken sets the ClientRequestToken field's value. func (s *CreateJobInput) SetClientRequestToken(v string) *CreateJobInput { s.ClientRequestToken = &v return s } // SetJobTemplate sets the JobTemplate field's value. func (s *CreateJobInput) SetJobTemplate(v string) *CreateJobInput { s.JobTemplate = &v return s } // SetQueue sets the Queue field's value. func (s *CreateJobInput) SetQueue(v string) *CreateJobInput { s.Queue = &v return s } // SetRole sets the Role field's value. func (s *CreateJobInput) SetRole(v string) *CreateJobInput { s.Role = &v return s } // SetSettings sets the Settings field's value. func (s *CreateJobInput) SetSettings(v *JobSettings) *CreateJobInput { s.Settings = v return s } // SetStatusUpdateIntervalInSecs sets the StatusUpdateIntervalInSecs field's value. func (s *CreateJobInput) SetStatusUpdateIntervalInSecs(v int64) *CreateJobInput { s.StatusUpdateIntervalInSecs = &v return s } // SetUserMetadata sets the UserMetadata field's value. func (s *CreateJobInput) SetUserMetadata(v map[string]*string) *CreateJobInput { s.UserMetadata = v return s } // Successful create job requests will return the job JSON. type CreateJobOutput struct { _ struct{} `type:"structure"` // Each job converts an input file into an output file or files. For more information, // see the User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html Job *Job `locationName:"job" type:"structure"` } // String returns the string representation func (s CreateJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateJobOutput) GoString() string { return s.String() } // SetJob sets the Job field's value. func (s *CreateJobOutput) SetJob(v *Job) *CreateJobOutput { s.Job = v return s } // Send your create job template request with the name of the template and the // JSON for the template. The template JSON should include everything in a valid // job, except for input location and filename, IAM role, and user metadata. type CreateJobTemplateInput struct { _ struct{} `type:"structure"` // This is a beta feature. If you are interested in using this feature please // contact AWS customer support. AccelerationSettings *AccelerationSettings `locationName:"accelerationSettings" type:"structure"` // Optional. A category for the job template you are creating Category *string `locationName:"category" type:"string"` // Optional. A description of the job template you are creating. Description *string `locationName:"description" type:"string"` // The name of the job template you are creating. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // Optional. The queue that jobs created from this template are assigned to. // If you don't specify this, jobs will go to the default queue. Queue *string `locationName:"queue" type:"string"` // JobTemplateSettings contains all the transcode settings saved in the template // that will be applied to jobs created from it. // // Settings is a required field Settings *JobTemplateSettings `locationName:"settings" type:"structure" required:"true"` // Specify how often MediaConvert sends STATUS_UPDATE events to Amazon CloudWatch // Events. Set the interval, in seconds, between status updates. MediaConvert // sends an update at this interval from the time the service begins processing // your job to the time it completes the transcode or encounters an error. StatusUpdateIntervalInSecs *int64 `locationName:"statusUpdateIntervalInSecs" min:"10" type:"long"` // The tags that you want to add to the resource. You can tag resources with // a key-value pair or with only a key. Tags map[string]*string `locationName:"tags" type:"map"` } // String returns the string representation func (s CreateJobTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateJobTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateJobTemplateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateJobTemplateInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Settings == nil { invalidParams.Add(request.NewErrParamRequired("Settings")) } if s.StatusUpdateIntervalInSecs != nil && *s.StatusUpdateIntervalInSecs < 10 { invalidParams.Add(request.NewErrParamMinValue("StatusUpdateIntervalInSecs", 10)) } if s.AccelerationSettings != nil { if err := s.AccelerationSettings.Validate(); err != nil { invalidParams.AddNested("AccelerationSettings", err.(request.ErrInvalidParams)) } } if s.Settings != nil { if err := s.Settings.Validate(); err != nil { invalidParams.AddNested("Settings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccelerationSettings sets the AccelerationSettings field's value. func (s *CreateJobTemplateInput) SetAccelerationSettings(v *AccelerationSettings) *CreateJobTemplateInput { s.AccelerationSettings = v return s } // SetCategory sets the Category field's value. func (s *CreateJobTemplateInput) SetCategory(v string) *CreateJobTemplateInput { s.Category = &v return s } // SetDescription sets the Description field's value. func (s *CreateJobTemplateInput) SetDescription(v string) *CreateJobTemplateInput { s.Description = &v return s } // SetName sets the Name field's value. func (s *CreateJobTemplateInput) SetName(v string) *CreateJobTemplateInput { s.Name = &v return s } // SetQueue sets the Queue field's value. func (s *CreateJobTemplateInput) SetQueue(v string) *CreateJobTemplateInput { s.Queue = &v return s } // SetSettings sets the Settings field's value. func (s *CreateJobTemplateInput) SetSettings(v *JobTemplateSettings) *CreateJobTemplateInput { s.Settings = v return s } // SetStatusUpdateIntervalInSecs sets the StatusUpdateIntervalInSecs field's value. func (s *CreateJobTemplateInput) SetStatusUpdateIntervalInSecs(v int64) *CreateJobTemplateInput { s.StatusUpdateIntervalInSecs = &v return s } // SetTags sets the Tags field's value. func (s *CreateJobTemplateInput) SetTags(v map[string]*string) *CreateJobTemplateInput { s.Tags = v return s } // Successful create job template requests will return the template JSON. type CreateJobTemplateOutput struct { _ struct{} `type:"structure"` // A job template is a pre-made set of encoding instructions that you can use // to quickly create a job. JobTemplate *JobTemplate `locationName:"jobTemplate" type:"structure"` } // String returns the string representation func (s CreateJobTemplateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateJobTemplateOutput) GoString() string { return s.String() } // SetJobTemplate sets the JobTemplate field's value. func (s *CreateJobTemplateOutput) SetJobTemplate(v *JobTemplate) *CreateJobTemplateOutput { s.JobTemplate = v return s } // Send your create preset request with the name of the preset and the JSON // for the output settings specified by the preset. type CreatePresetInput struct { _ struct{} `type:"structure"` // Optional. A category for the preset you are creating. Category *string `locationName:"category" type:"string"` // Optional. A description of the preset you are creating. Description *string `locationName:"description" type:"string"` // The name of the preset you are creating. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // Settings for preset // // Settings is a required field Settings *PresetSettings `locationName:"settings" type:"structure" required:"true"` // The tags that you want to add to the resource. You can tag resources with // a key-value pair or with only a key. Tags map[string]*string `locationName:"tags" type:"map"` } // String returns the string representation func (s CreatePresetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePresetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreatePresetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreatePresetInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Settings == nil { invalidParams.Add(request.NewErrParamRequired("Settings")) } if s.Settings != nil { if err := s.Settings.Validate(); err != nil { invalidParams.AddNested("Settings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCategory sets the Category field's value. func (s *CreatePresetInput) SetCategory(v string) *CreatePresetInput { s.Category = &v return s } // SetDescription sets the Description field's value. func (s *CreatePresetInput) SetDescription(v string) *CreatePresetInput { s.Description = &v return s } // SetName sets the Name field's value. func (s *CreatePresetInput) SetName(v string) *CreatePresetInput { s.Name = &v return s } // SetSettings sets the Settings field's value. func (s *CreatePresetInput) SetSettings(v *PresetSettings) *CreatePresetInput { s.Settings = v return s } // SetTags sets the Tags field's value. func (s *CreatePresetInput) SetTags(v map[string]*string) *CreatePresetInput { s.Tags = v return s } // Successful create preset requests will return the preset JSON. type CreatePresetOutput struct { _ struct{} `type:"structure"` // A preset is a collection of preconfigured media conversion settings that // you want MediaConvert to apply to the output during the conversion process. Preset *Preset `locationName:"preset" type:"structure"` } // String returns the string representation func (s CreatePresetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreatePresetOutput) GoString() string { return s.String() } // SetPreset sets the Preset field's value. func (s *CreatePresetOutput) SetPreset(v *Preset) *CreatePresetOutput { s.Preset = v return s } // Create an on-demand queue by sending a CreateQueue request with the name // of the queue. Create a reserved queue by sending a CreateQueue request with // the pricing plan set to RESERVED and with values specified for the settings // under reservationPlanSettings. When you create a reserved queue, you enter // into a 12-month commitment to purchase the RTS that you specify. You can't // cancel this commitment. type CreateQueueInput struct { _ struct{} `type:"structure"` // Optional. A description of the queue that you are creating. Description *string `locationName:"description" type:"string"` // The name of the queue that you are creating. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // Specifies whether the pricing plan for the queue is on-demand or reserved. // For on-demand, you pay per minute, billed in increments of .01 minute. For // reserved, you pay for the transcoding capacity of the entire queue, regardless // of how much or how little you use it. Reserved pricing requires a 12-month // commitment. When you use the API to create a queue, the default is on-demand. PricingPlan *string `locationName:"pricingPlan" type:"string" enum:"PricingPlan"` // Details about the pricing plan for your reserved queue. Required for reserved // queues and not applicable to on-demand queues. ReservationPlanSettings *ReservationPlanSettings `locationName:"reservationPlanSettings" type:"structure"` // The tags that you want to add to the resource. You can tag resources with // a key-value pair or with only a key. Tags map[string]*string `locationName:"tags" type:"map"` } // String returns the string representation func (s CreateQueueInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateQueueInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateQueueInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateQueueInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.ReservationPlanSettings != nil { if err := s.ReservationPlanSettings.Validate(); err != nil { invalidParams.AddNested("ReservationPlanSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDescription sets the Description field's value. func (s *CreateQueueInput) SetDescription(v string) *CreateQueueInput { s.Description = &v return s } // SetName sets the Name field's value. func (s *CreateQueueInput) SetName(v string) *CreateQueueInput { s.Name = &v return s } // SetPricingPlan sets the PricingPlan field's value. func (s *CreateQueueInput) SetPricingPlan(v string) *CreateQueueInput { s.PricingPlan = &v return s } // SetReservationPlanSettings sets the ReservationPlanSettings field's value. func (s *CreateQueueInput) SetReservationPlanSettings(v *ReservationPlanSettings) *CreateQueueInput { s.ReservationPlanSettings = v return s } // SetTags sets the Tags field's value. func (s *CreateQueueInput) SetTags(v map[string]*string) *CreateQueueInput { s.Tags = v return s } // Successful create queue requests return the name of the queue that you just // created and information about it. type CreateQueueOutput struct { _ struct{} `type:"structure"` // You can use queues to manage the resources that are available to your AWS // account for running multiple transcoding jobs at the same time. If you don't // specify a queue, the service sends all jobs through the default queue. For // more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/working-with-queues.html. Queue *Queue `locationName:"queue" type:"structure"` } // String returns the string representation func (s CreateQueueOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateQueueOutput) GoString() string { return s.String() } // SetQueue sets the Queue field's value. func (s *CreateQueueOutput) SetQueue(v *Queue) *CreateQueueOutput { s.Queue = v return s } // Specifies DRM settings for DASH outputs. type DashIsoEncryptionSettings struct { _ struct{} `type:"structure"` // Settings for use with a SPEKE key provider SpekeKeyProvider *SpekeKeyProvider `locationName:"spekeKeyProvider" type:"structure"` } // String returns the string representation func (s DashIsoEncryptionSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DashIsoEncryptionSettings) GoString() string { return s.String() } // SetSpekeKeyProvider sets the SpekeKeyProvider field's value. func (s *DashIsoEncryptionSettings) SetSpekeKeyProvider(v *SpekeKeyProvider) *DashIsoEncryptionSettings { s.SpekeKeyProvider = v return s } // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to // DASH_ISO_GROUP_SETTINGS. type DashIsoGroupSettings struct { _ struct{} `type:"structure"` // A partial URI prefix that will be put in the manifest (.mpd) file at the // top level BaseURL element. Can be used if streams are delivered from a different // URL than the manifest file. BaseUrl *string `locationName:"baseUrl" type:"string"` // Use Destination (Destination) to specify the S3 output location and the output // filename base. Destination accepts format identifiers. If you do not specify // the base filename in the URI, the service will use the filename of the input // file. If your job has multiple inputs, the service uses the filename of the // first input file. Destination *string `locationName:"destination" type:"string"` // DRM settings. Encryption *DashIsoEncryptionSettings `locationName:"encryption" type:"structure"` // Length of fragments to generate (in seconds). Fragment length must be compatible // with GOP size and Framerate. Note that fragments will end on the next keyframe // after this number of seconds, so actual fragment length may be longer. When // Emit Single File is checked, the fragmentation is internal to a single output // file and it does not cause the creation of many output files as in other // output types. FragmentLength *int64 `locationName:"fragmentLength" min:"1" type:"integer"` // Supports HbbTV specification as indicated HbbtvCompliance *string `locationName:"hbbtvCompliance" type:"string" enum:"DashIsoHbbtvCompliance"` // Minimum time of initially buffered media that is needed to ensure smooth // playout. MinBufferTime *int64 `locationName:"minBufferTime" type:"integer"` // When set to SINGLE_FILE, a single output file is generated, which is internally // segmented using the Fragment Length and Segment Length. When set to SEGMENTED_FILES, // separate segment files will be created. SegmentControl *string `locationName:"segmentControl" type:"string" enum:"DashIsoSegmentControl"` // Length of mpd segments to create (in seconds). Note that segments will end // on the next keyframe after this number of seconds, so actual segment length // may be longer. When Emit Single File is checked, the segmentation is internal // to a single output file and it does not cause the creation of many output // files as in other output types. SegmentLength *int64 `locationName:"segmentLength" min:"1" type:"integer"` // When you enable Precise segment duration in manifests (writeSegmentTimelineInRepresentation), // your DASH manifest shows precise segment durations. The segment duration // information appears inside the SegmentTimeline element, inside SegmentTemplate // at the Representation level. When this feature isn't enabled, the segment // durations in your DASH manifest are approximate. The segment duration information // appears in the duration attribute of the SegmentTemplate element. WriteSegmentTimelineInRepresentation *string `locationName:"writeSegmentTimelineInRepresentation" type:"string" enum:"DashIsoWriteSegmentTimelineInRepresentation"` } // String returns the string representation func (s DashIsoGroupSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DashIsoGroupSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DashIsoGroupSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DashIsoGroupSettings"} if s.FragmentLength != nil && *s.FragmentLength < 1 { invalidParams.Add(request.NewErrParamMinValue("FragmentLength", 1)) } if s.SegmentLength != nil && *s.SegmentLength < 1 { invalidParams.Add(request.NewErrParamMinValue("SegmentLength", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBaseUrl sets the BaseUrl field's value. func (s *DashIsoGroupSettings) SetBaseUrl(v string) *DashIsoGroupSettings { s.BaseUrl = &v return s } // SetDestination sets the Destination field's value. func (s *DashIsoGroupSettings) SetDestination(v string) *DashIsoGroupSettings { s.Destination = &v return s } // SetEncryption sets the Encryption field's value. func (s *DashIsoGroupSettings) SetEncryption(v *DashIsoEncryptionSettings) *DashIsoGroupSettings { s.Encryption = v return s } // SetFragmentLength sets the FragmentLength field's value. func (s *DashIsoGroupSettings) SetFragmentLength(v int64) *DashIsoGroupSettings { s.FragmentLength = &v return s } // SetHbbtvCompliance sets the HbbtvCompliance field's value. func (s *DashIsoGroupSettings) SetHbbtvCompliance(v string) *DashIsoGroupSettings { s.HbbtvCompliance = &v return s } // SetMinBufferTime sets the MinBufferTime field's value. func (s *DashIsoGroupSettings) SetMinBufferTime(v int64) *DashIsoGroupSettings { s.MinBufferTime = &v return s } // SetSegmentControl sets the SegmentControl field's value. func (s *DashIsoGroupSettings) SetSegmentControl(v string) *DashIsoGroupSettings { s.SegmentControl = &v return s } // SetSegmentLength sets the SegmentLength field's value. func (s *DashIsoGroupSettings) SetSegmentLength(v int64) *DashIsoGroupSettings { s.SegmentLength = &v return s } // SetWriteSegmentTimelineInRepresentation sets the WriteSegmentTimelineInRepresentation field's value. func (s *DashIsoGroupSettings) SetWriteSegmentTimelineInRepresentation(v string) *DashIsoGroupSettings { s.WriteSegmentTimelineInRepresentation = &v return s } // Settings for deinterlacer type Deinterlacer struct { _ struct{} `type:"structure"` // Only applies when you set Deinterlacer (DeinterlaceMode) to Deinterlace (DEINTERLACE) // or Adaptive (ADAPTIVE). Motion adaptive interpolate (INTERPOLATE) produces // sharper pictures, while blend (BLEND) produces smoother motion. Use (INTERPOLATE_TICKER) // OR (BLEND_TICKER) if your source file includes a ticker, such as a scrolling // headline at the bottom of the frame. Algorithm *string `locationName:"algorithm" type:"string" enum:"DeinterlaceAlgorithm"` // - When set to NORMAL (default), the deinterlacer does not convert frames // that are tagged in metadata as progressive. It will only convert those that // are tagged as some other type. - When set to FORCE_ALL_FRAMES, the deinterlacer // converts every frame to progressive - even those that are already tagged // as progressive. Turn Force mode on only if there is a good chance that the // metadata has tagged frames as progressive when they are not progressive. // Do not turn on otherwise; processing frames that are already progressive // into progressive will probably result in lower quality video. Control *string `locationName:"control" type:"string" enum:"DeinterlacerControl"` // Use Deinterlacer (DeinterlaceMode) to choose how the service will do deinterlacing. // Default is Deinterlace. - Deinterlace converts interlaced to progressive. // - Inverse telecine converts Hard Telecine 29.97i to progressive 23.976p. // - Adaptive auto-detects and converts to progressive. Mode *string `locationName:"mode" type:"string" enum:"DeinterlacerMode"` } // String returns the string representation func (s Deinterlacer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Deinterlacer) GoString() string { return s.String() } // SetAlgorithm sets the Algorithm field's value. func (s *Deinterlacer) SetAlgorithm(v string) *Deinterlacer { s.Algorithm = &v return s } // SetControl sets the Control field's value. func (s *Deinterlacer) SetControl(v string) *Deinterlacer { s.Control = &v return s } // SetMode sets the Mode field's value. func (s *Deinterlacer) SetMode(v string) *Deinterlacer { s.Mode = &v return s } // Delete a job template by sending a request with the job template name type DeleteJobTemplateInput struct { _ struct{} `type:"structure"` // The name of the job template to be deleted. // // Name is a required field Name *string `location:"uri" locationName:"name" type:"string" required:"true"` } // String returns the string representation func (s DeleteJobTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteJobTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteJobTemplateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteJobTemplateInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetName sets the Name field's value. func (s *DeleteJobTemplateInput) SetName(v string) *DeleteJobTemplateInput { s.Name = &v return s } // Delete job template requests will return an OK message or error message with // an empty body. type DeleteJobTemplateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteJobTemplateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteJobTemplateOutput) GoString() string { return s.String() } // Delete a preset by sending a request with the preset name type DeletePresetInput struct { _ struct{} `type:"structure"` // The name of the preset to be deleted. // // Name is a required field Name *string `location:"uri" locationName:"name" type:"string" required:"true"` } // String returns the string representation func (s DeletePresetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePresetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeletePresetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeletePresetInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetName sets the Name field's value. func (s *DeletePresetInput) SetName(v string) *DeletePresetInput { s.Name = &v return s } // Delete preset requests will return an OK message or error message with an // empty body. type DeletePresetOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeletePresetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeletePresetOutput) GoString() string { return s.String() } // Delete a queue by sending a request with the queue name. You can't delete // a queue with an active pricing plan or one that has unprocessed jobs in it. type DeleteQueueInput struct { _ struct{} `type:"structure"` // The name of the queue that you want to delete. // // Name is a required field Name *string `location:"uri" locationName:"name" type:"string" required:"true"` } // String returns the string representation func (s DeleteQueueInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteQueueInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteQueueInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteQueueInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetName sets the Name field's value. func (s *DeleteQueueInput) SetName(v string) *DeleteQueueInput { s.Name = &v return s } // Delete queue requests return an OK message or error message with an empty // body. type DeleteQueueOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteQueueOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteQueueOutput) GoString() string { return s.String() } // Send an request with an empty body to the regional API endpoint to get your // account API endpoint. type DescribeEndpointsInput struct { _ struct{} `type:"structure"` // Optional. Max number of endpoints, up to twenty, that will be returned at // one time. MaxResults *int64 `locationName:"maxResults" type:"integer"` // Optional field, defaults to DEFAULT. Specify DEFAULT for this operation to // return your endpoints if any exist, or to create an endpoint for you and // return it if one doesn't already exist. Specify GET_ONLY to return your endpoints // if any exist, or an empty list if none exist. Mode *string `locationName:"mode" type:"string" enum:"DescribeEndpointsMode"` // Use this string, provided with the response to a previous request, to request // the next batch of endpoints. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeEndpointsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEndpointsInput) GoString() string { return s.String() } // SetMaxResults sets the MaxResults field's value. func (s *DescribeEndpointsInput) SetMaxResults(v int64) *DescribeEndpointsInput { s.MaxResults = &v return s } // SetMode sets the Mode field's value. func (s *DescribeEndpointsInput) SetMode(v string) *DescribeEndpointsInput { s.Mode = &v return s } // SetNextToken sets the NextToken field's value. func (s *DescribeEndpointsInput) SetNextToken(v string) *DescribeEndpointsInput { s.NextToken = &v return s } // Successful describe endpoints requests will return your account API endpoint. type DescribeEndpointsOutput struct { _ struct{} `type:"structure"` // List of endpoints Endpoints []*Endpoint `locationName:"endpoints" type:"list"` // Use this string to request the next batch of endpoints. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s DescribeEndpointsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeEndpointsOutput) GoString() string { return s.String() } // SetEndpoints sets the Endpoints field's value. func (s *DescribeEndpointsOutput) SetEndpoints(v []*Endpoint) *DescribeEndpointsOutput { s.Endpoints = v return s } // SetNextToken sets the NextToken field's value. func (s *DescribeEndpointsOutput) SetNextToken(v string) *DescribeEndpointsOutput { s.NextToken = &v return s } // Removes an association between the Amazon Resource Name (ARN) of an AWS Certificate // Manager (ACM) certificate and an AWS Elemental MediaConvert resource. type DisassociateCertificateInput struct { _ struct{} `type:"structure"` // The ARN of the ACM certificate that you want to disassociate from your MediaConvert // resource. // // Arn is a required field Arn *string `locationName:"arn" type:"string" required:"true"` } // String returns the string representation func (s DisassociateCertificateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateCertificateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisassociateCertificateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisassociateCertificateInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetArn sets the Arn field's value. func (s *DisassociateCertificateInput) SetArn(v string) *DisassociateCertificateInput { s.Arn = &v return s } // Successful disassociation of Certificate Manager Amazon Resource Name (ARN) // with Mediaconvert returns an OK message. type DisassociateCertificateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisassociateCertificateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateCertificateOutput) GoString() string { return s.String() } // Inserts DVB Network Information Table (NIT) at the specified table repetition // interval. type DvbNitSettings struct { _ struct{} `type:"structure"` // The numeric value placed in the Network Information Table (NIT). NetworkId *int64 `locationName:"networkId" type:"integer"` // The network name text placed in the network_name_descriptor inside the Network // Information Table. Maximum length is 256 characters. NetworkName *string `locationName:"networkName" min:"1" type:"string"` // The number of milliseconds between instances of this table in the output // transport stream. NitInterval *int64 `locationName:"nitInterval" min:"25" type:"integer"` } // String returns the string representation func (s DvbNitSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DvbNitSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DvbNitSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DvbNitSettings"} if s.NetworkName != nil && len(*s.NetworkName) < 1 { invalidParams.Add(request.NewErrParamMinLen("NetworkName", 1)) } if s.NitInterval != nil && *s.NitInterval < 25 { invalidParams.Add(request.NewErrParamMinValue("NitInterval", 25)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetNetworkId sets the NetworkId field's value. func (s *DvbNitSettings) SetNetworkId(v int64) *DvbNitSettings { s.NetworkId = &v return s } // SetNetworkName sets the NetworkName field's value. func (s *DvbNitSettings) SetNetworkName(v string) *DvbNitSettings { s.NetworkName = &v return s } // SetNitInterval sets the NitInterval field's value. func (s *DvbNitSettings) SetNitInterval(v int64) *DvbNitSettings { s.NitInterval = &v return s } // Inserts DVB Service Description Table (NIT) at the specified table repetition // interval. type DvbSdtSettings struct { _ struct{} `type:"structure"` // Selects method of inserting SDT information into output stream. "Follow input // SDT" copies SDT information from input stream to output stream. "Follow input // SDT if present" copies SDT information from input stream to output stream // if SDT information is present in the input, otherwise it will fall back on // the user-defined values. Enter "SDT Manually" means user will enter the SDT // information. "No SDT" means output stream will not contain SDT information. OutputSdt *string `locationName:"outputSdt" type:"string" enum:"OutputSdt"` // The number of milliseconds between instances of this table in the output // transport stream. SdtInterval *int64 `locationName:"sdtInterval" min:"25" type:"integer"` // The service name placed in the service_descriptor in the Service Description // Table. Maximum length is 256 characters. ServiceName *string `locationName:"serviceName" min:"1" type:"string"` // The service provider name placed in the service_descriptor in the Service // Description Table. Maximum length is 256 characters. ServiceProviderName *string `locationName:"serviceProviderName" min:"1" type:"string"` } // String returns the string representation func (s DvbSdtSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DvbSdtSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DvbSdtSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DvbSdtSettings"} if s.SdtInterval != nil && *s.SdtInterval < 25 { invalidParams.Add(request.NewErrParamMinValue("SdtInterval", 25)) } if s.ServiceName != nil && len(*s.ServiceName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ServiceName", 1)) } if s.ServiceProviderName != nil && len(*s.ServiceProviderName) < 1 { invalidParams.Add(request.NewErrParamMinLen("ServiceProviderName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetOutputSdt sets the OutputSdt field's value. func (s *DvbSdtSettings) SetOutputSdt(v string) *DvbSdtSettings { s.OutputSdt = &v return s } // SetSdtInterval sets the SdtInterval field's value. func (s *DvbSdtSettings) SetSdtInterval(v int64) *DvbSdtSettings { s.SdtInterval = &v return s } // SetServiceName sets the ServiceName field's value. func (s *DvbSdtSettings) SetServiceName(v string) *DvbSdtSettings { s.ServiceName = &v return s } // SetServiceProviderName sets the ServiceProviderName field's value. func (s *DvbSdtSettings) SetServiceProviderName(v string) *DvbSdtSettings { s.ServiceProviderName = &v return s } // DVB-Sub Destination Settings type DvbSubDestinationSettings struct { _ struct{} `type:"structure"` // If no explicit x_position or y_position is provided, setting alignment to // centered will place the captions at the bottom center of the output. Similarly, // setting a left alignment will align captions to the bottom left of the output. // If x and y positions are given in conjunction with the alignment parameter, // the font will be justified (either left or centered) relative to those coordinates. // This option is not valid for source captions that are STL, 608/embedded or // teletext. These source settings are already pre-defined by the caption stream. // All burn-in and DVB-Sub font settings must match. Alignment *string `locationName:"alignment" type:"string" enum:"DvbSubtitleAlignment"` // Specifies the color of the rectangle behind the captions.All burn-in and // DVB-Sub font settings must match. BackgroundColor *string `locationName:"backgroundColor" type:"string" enum:"DvbSubtitleBackgroundColor"` // Specifies the opacity of the background rectangle. 255 is opaque; 0 is transparent. // Leaving this parameter blank is equivalent to setting it to 0 (transparent). // All burn-in and DVB-Sub font settings must match. BackgroundOpacity *int64 `locationName:"backgroundOpacity" type:"integer"` // Specifies the color of the burned-in captions. This option is not valid for // source captions that are STL, 608/embedded or teletext. These source settings // are already pre-defined by the caption stream. All burn-in and DVB-Sub font // settings must match. FontColor *string `locationName:"fontColor" type:"string" enum:"DvbSubtitleFontColor"` // Specifies the opacity of the burned-in captions. 255 is opaque; 0 is transparent.All // burn-in and DVB-Sub font settings must match. FontOpacity *int64 `locationName:"fontOpacity" type:"integer"` // Font resolution in DPI (dots per inch); default is 96 dpi.All burn-in and // DVB-Sub font settings must match. FontResolution *int64 `locationName:"fontResolution" min:"96" type:"integer"` // Provide the font script, using an ISO 15924 script code, if the LanguageCode // is not sufficient for determining the script type. Where LanguageCode or // CustomLanguageCode is sufficient, use "AUTOMATIC" or leave unset. This is // used to help determine the appropriate font for rendering DVB-Sub captions. FontScript *string `locationName:"fontScript" type:"string" enum:"FontScript"` // A positive integer indicates the exact font size in points. Set to 0 for // automatic font size selection. All burn-in and DVB-Sub font settings must // match. FontSize *int64 `locationName:"fontSize" type:"integer"` // Specifies font outline color. This option is not valid for source captions // that are either 608/embedded or teletext. These source settings are already // pre-defined by the caption stream. All burn-in and DVB-Sub font settings // must match. OutlineColor *string `locationName:"outlineColor" type:"string" enum:"DvbSubtitleOutlineColor"` // Specifies font outline size in pixels. This option is not valid for source // captions that are either 608/embedded or teletext. These source settings // are already pre-defined by the caption stream. All burn-in and DVB-Sub font // settings must match. OutlineSize *int64 `locationName:"outlineSize" type:"integer"` // Specifies the color of the shadow cast by the captions.All burn-in and DVB-Sub // font settings must match. ShadowColor *string `locationName:"shadowColor" type:"string" enum:"DvbSubtitleShadowColor"` // Specifies the opacity of the shadow. 255 is opaque; 0 is transparent. Leaving // this parameter blank is equivalent to setting it to 0 (transparent). All // burn-in and DVB-Sub font settings must match. ShadowOpacity *int64 `locationName:"shadowOpacity" type:"integer"` // Specifies the horizontal offset of the shadow relative to the captions in // pixels. A value of -2 would result in a shadow offset 2 pixels to the left. // All burn-in and DVB-Sub font settings must match. ShadowXOffset *int64 `locationName:"shadowXOffset" type:"integer"` // Specifies the vertical offset of the shadow relative to the captions in pixels. // A value of -2 would result in a shadow offset 2 pixels above the text. All // burn-in and DVB-Sub font settings must match. ShadowYOffset *int64 `locationName:"shadowYOffset" type:"integer"` // Only applies to jobs with input captions in Teletext or STL formats. Specify // whether the spacing between letters in your captions is set by the captions // grid or varies depending on letter width. Choose fixed grid to conform to // the spacing specified in the captions file more accurately. Choose proportional // to make the text easier to read if the captions are closed caption. TeletextSpacing *string `locationName:"teletextSpacing" type:"string" enum:"DvbSubtitleTeletextSpacing"` // Specifies the horizontal position of the caption relative to the left side // of the output in pixels. A value of 10 would result in the captions starting // 10 pixels from the left of the output. If no explicit x_position is provided, // the horizontal caption position will be determined by the alignment parameter. // This option is not valid for source captions that are STL, 608/embedded or // teletext. These source settings are already pre-defined by the caption stream. // All burn-in and DVB-Sub font settings must match. XPosition *int64 `locationName:"xPosition" type:"integer"` // Specifies the vertical position of the caption relative to the top of the // output in pixels. A value of 10 would result in the captions starting 10 // pixels from the top of the output. If no explicit y_position is provided, // the caption will be positioned towards the bottom of the output. This option // is not valid for source captions that are STL, 608/embedded or teletext. // These source settings are already pre-defined by the caption stream. All // burn-in and DVB-Sub font settings must match. YPosition *int64 `locationName:"yPosition" type:"integer"` } // String returns the string representation func (s DvbSubDestinationSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DvbSubDestinationSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DvbSubDestinationSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DvbSubDestinationSettings"} if s.FontResolution != nil && *s.FontResolution < 96 { invalidParams.Add(request.NewErrParamMinValue("FontResolution", 96)) } if s.ShadowXOffset != nil && *s.ShadowXOffset < -2.147483648e+09 { invalidParams.Add(request.NewErrParamMinValue("ShadowXOffset", -2.147483648e+09)) } if s.ShadowYOffset != nil && *s.ShadowYOffset < -2.147483648e+09 { invalidParams.Add(request.NewErrParamMinValue("ShadowYOffset", -2.147483648e+09)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAlignment sets the Alignment field's value. func (s *DvbSubDestinationSettings) SetAlignment(v string) *DvbSubDestinationSettings { s.Alignment = &v return s } // SetBackgroundColor sets the BackgroundColor field's value. func (s *DvbSubDestinationSettings) SetBackgroundColor(v string) *DvbSubDestinationSettings { s.BackgroundColor = &v return s } // SetBackgroundOpacity sets the BackgroundOpacity field's value. func (s *DvbSubDestinationSettings) SetBackgroundOpacity(v int64) *DvbSubDestinationSettings { s.BackgroundOpacity = &v return s } // SetFontColor sets the FontColor field's value. func (s *DvbSubDestinationSettings) SetFontColor(v string) *DvbSubDestinationSettings { s.FontColor = &v return s } // SetFontOpacity sets the FontOpacity field's value. func (s *DvbSubDestinationSettings) SetFontOpacity(v int64) *DvbSubDestinationSettings { s.FontOpacity = &v return s } // SetFontResolution sets the FontResolution field's value. func (s *DvbSubDestinationSettings) SetFontResolution(v int64) *DvbSubDestinationSettings { s.FontResolution = &v return s } // SetFontScript sets the FontScript field's value. func (s *DvbSubDestinationSettings) SetFontScript(v string) *DvbSubDestinationSettings { s.FontScript = &v return s } // SetFontSize sets the FontSize field's value. func (s *DvbSubDestinationSettings) SetFontSize(v int64) *DvbSubDestinationSettings { s.FontSize = &v return s } // SetOutlineColor sets the OutlineColor field's value. func (s *DvbSubDestinationSettings) SetOutlineColor(v string) *DvbSubDestinationSettings { s.OutlineColor = &v return s } // SetOutlineSize sets the OutlineSize field's value. func (s *DvbSubDestinationSettings) SetOutlineSize(v int64) *DvbSubDestinationSettings { s.OutlineSize = &v return s } // SetShadowColor sets the ShadowColor field's value. func (s *DvbSubDestinationSettings) SetShadowColor(v string) *DvbSubDestinationSettings { s.ShadowColor = &v return s } // SetShadowOpacity sets the ShadowOpacity field's value. func (s *DvbSubDestinationSettings) SetShadowOpacity(v int64) *DvbSubDestinationSettings { s.ShadowOpacity = &v return s } // SetShadowXOffset sets the ShadowXOffset field's value. func (s *DvbSubDestinationSettings) SetShadowXOffset(v int64) *DvbSubDestinationSettings { s.ShadowXOffset = &v return s } // SetShadowYOffset sets the ShadowYOffset field's value. func (s *DvbSubDestinationSettings) SetShadowYOffset(v int64) *DvbSubDestinationSettings { s.ShadowYOffset = &v return s } // SetTeletextSpacing sets the TeletextSpacing field's value. func (s *DvbSubDestinationSettings) SetTeletextSpacing(v string) *DvbSubDestinationSettings { s.TeletextSpacing = &v return s } // SetXPosition sets the XPosition field's value. func (s *DvbSubDestinationSettings) SetXPosition(v int64) *DvbSubDestinationSettings { s.XPosition = &v return s } // SetYPosition sets the YPosition field's value. func (s *DvbSubDestinationSettings) SetYPosition(v int64) *DvbSubDestinationSettings { s.YPosition = &v return s } // DVB Sub Source Settings type DvbSubSourceSettings struct { _ struct{} `type:"structure"` // When using DVB-Sub with Burn-In or SMPTE-TT, use this PID for the source // content. Unused for DVB-Sub passthrough. All DVB-Sub content is passed through, // regardless of selectors. Pid *int64 `locationName:"pid" min:"1" type:"integer"` } // String returns the string representation func (s DvbSubSourceSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DvbSubSourceSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DvbSubSourceSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DvbSubSourceSettings"} if s.Pid != nil && *s.Pid < 1 { invalidParams.Add(request.NewErrParamMinValue("Pid", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetPid sets the Pid field's value. func (s *DvbSubSourceSettings) SetPid(v int64) *DvbSubSourceSettings { s.Pid = &v return s } // Inserts DVB Time and Date Table (TDT) at the specified table repetition interval. type DvbTdtSettings struct { _ struct{} `type:"structure"` // The number of milliseconds between instances of this table in the output // transport stream. TdtInterval *int64 `locationName:"tdtInterval" min:"1000" type:"integer"` } // String returns the string representation func (s DvbTdtSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DvbTdtSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DvbTdtSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DvbTdtSettings"} if s.TdtInterval != nil && *s.TdtInterval < 1000 { invalidParams.Add(request.NewErrParamMinValue("TdtInterval", 1000)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetTdtInterval sets the TdtInterval field's value. func (s *DvbTdtSettings) SetTdtInterval(v int64) *DvbTdtSettings { s.TdtInterval = &v return s } // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to // the value EAC3. type Eac3Settings struct { _ struct{} `type:"structure"` // If set to ATTENUATE_3_DB, applies a 3 dB attenuation to the surround channels. // Only used for 3/2 coding mode. AttenuationControl *string `locationName:"attenuationControl" type:"string" enum:"Eac3AttenuationControl"` // Average bitrate in bits/second. Valid bitrates depend on the coding mode. Bitrate *int64 `locationName:"bitrate" min:"64000" type:"integer"` // Specifies the "Bitstream Mode" (bsmod) for the emitted E-AC-3 stream. See // ATSC A/52-2012 (Annex E) for background on these values. BitstreamMode *string `locationName:"bitstreamMode" type:"string" enum:"Eac3BitstreamMode"` // Dolby Digital Plus coding mode. Determines number of channels. CodingMode *string `locationName:"codingMode" type:"string" enum:"Eac3CodingMode"` // Activates a DC highpass filter for all input channels. DcFilter *string `locationName:"dcFilter" type:"string" enum:"Eac3DcFilter"` // Sets the dialnorm for the output. If blank and input audio is Dolby Digital // Plus, dialnorm will be passed through. Dialnorm *int64 `locationName:"dialnorm" min:"1" type:"integer"` // Enables Dynamic Range Compression that restricts the absolute peak level // for a signal. DynamicRangeCompressionLine *string `locationName:"dynamicRangeCompressionLine" type:"string" enum:"Eac3DynamicRangeCompressionLine"` // Enables Heavy Dynamic Range Compression, ensures that the instantaneous signal // peaks do not exceed specified levels. DynamicRangeCompressionRf *string `locationName:"dynamicRangeCompressionRf" type:"string" enum:"Eac3DynamicRangeCompressionRf"` // When encoding 3/2 audio, controls whether the LFE channel is enabled LfeControl *string `locationName:"lfeControl" type:"string" enum:"Eac3LfeControl"` // Applies a 120Hz lowpass filter to the LFE channel prior to encoding. Only // valid with 3_2_LFE coding mode. LfeFilter *string `locationName:"lfeFilter" type:"string" enum:"Eac3LfeFilter"` // Left only/Right only center mix level. Only used for 3/2 coding mode.Valid // values: 3.0, 1.5, 0.0, -1.5 -3.0 -4.5 -6.0 -60 LoRoCenterMixLevel *float64 `locationName:"loRoCenterMixLevel" type:"double"` // Left only/Right only surround mix level. Only used for 3/2 coding mode.Valid // values: -1.5 -3.0 -4.5 -6.0 -60 LoRoSurroundMixLevel *float64 `locationName:"loRoSurroundMixLevel" type:"double"` // Left total/Right total center mix level. Only used for 3/2 coding mode.Valid // values: 3.0, 1.5, 0.0, -1.5 -3.0 -4.5 -6.0 -60 LtRtCenterMixLevel *float64 `locationName:"ltRtCenterMixLevel" type:"double"` // Left total/Right total surround mix level. Only used for 3/2 coding mode.Valid // values: -1.5 -3.0 -4.5 -6.0 -60 LtRtSurroundMixLevel *float64 `locationName:"ltRtSurroundMixLevel" type:"double"` // When set to FOLLOW_INPUT, encoder metadata will be sourced from the DD, DD+, // or DolbyE decoder that supplied this audio data. If audio was not supplied // from one of these streams, then the static metadata settings will be used. MetadataControl *string `locationName:"metadataControl" type:"string" enum:"Eac3MetadataControl"` // When set to WHEN_POSSIBLE, input DD+ audio will be passed through if it is // present on the input. this detection is dynamic over the life of the transcode. // Inputs that alternate between DD+ and non-DD+ content will have a consistent // DD+ output as the system alternates between passthrough and encoding. PassthroughControl *string `locationName:"passthroughControl" type:"string" enum:"Eac3PassthroughControl"` // Controls the amount of phase-shift applied to the surround channels. Only // used for 3/2 coding mode. PhaseControl *string `locationName:"phaseControl" type:"string" enum:"Eac3PhaseControl"` // Sample rate in hz. Sample rate is always 48000. SampleRate *int64 `locationName:"sampleRate" min:"48000" type:"integer"` // Stereo downmix preference. Only used for 3/2 coding mode. StereoDownmix *string `locationName:"stereoDownmix" type:"string" enum:"Eac3StereoDownmix"` // When encoding 3/2 audio, sets whether an extra center back surround channel // is matrix encoded into the left and right surround channels. SurroundExMode *string `locationName:"surroundExMode" type:"string" enum:"Eac3SurroundExMode"` // When encoding 2/0 audio, sets whether Dolby Surround is matrix encoded into // the two channels. SurroundMode *string `locationName:"surroundMode" type:"string" enum:"Eac3SurroundMode"` } // String returns the string representation func (s Eac3Settings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Eac3Settings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Eac3Settings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Eac3Settings"} if s.Bitrate != nil && *s.Bitrate < 64000 { invalidParams.Add(request.NewErrParamMinValue("Bitrate", 64000)) } if s.Dialnorm != nil && *s.Dialnorm < 1 { invalidParams.Add(request.NewErrParamMinValue("Dialnorm", 1)) } if s.SampleRate != nil && *s.SampleRate < 48000 { invalidParams.Add(request.NewErrParamMinValue("SampleRate", 48000)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAttenuationControl sets the AttenuationControl field's value. func (s *Eac3Settings) SetAttenuationControl(v string) *Eac3Settings { s.AttenuationControl = &v return s } // SetBitrate sets the Bitrate field's value. func (s *Eac3Settings) SetBitrate(v int64) *Eac3Settings { s.Bitrate = &v return s } // SetBitstreamMode sets the BitstreamMode field's value. func (s *Eac3Settings) SetBitstreamMode(v string) *Eac3Settings { s.BitstreamMode = &v return s } // SetCodingMode sets the CodingMode field's value. func (s *Eac3Settings) SetCodingMode(v string) *Eac3Settings { s.CodingMode = &v return s } // SetDcFilter sets the DcFilter field's value. func (s *Eac3Settings) SetDcFilter(v string) *Eac3Settings { s.DcFilter = &v return s } // SetDialnorm sets the Dialnorm field's value. func (s *Eac3Settings) SetDialnorm(v int64) *Eac3Settings { s.Dialnorm = &v return s } // SetDynamicRangeCompressionLine sets the DynamicRangeCompressionLine field's value. func (s *Eac3Settings) SetDynamicRangeCompressionLine(v string) *Eac3Settings { s.DynamicRangeCompressionLine = &v return s } // SetDynamicRangeCompressionRf sets the DynamicRangeCompressionRf field's value. func (s *Eac3Settings) SetDynamicRangeCompressionRf(v string) *Eac3Settings { s.DynamicRangeCompressionRf = &v return s } // SetLfeControl sets the LfeControl field's value. func (s *Eac3Settings) SetLfeControl(v string) *Eac3Settings { s.LfeControl = &v return s } // SetLfeFilter sets the LfeFilter field's value. func (s *Eac3Settings) SetLfeFilter(v string) *Eac3Settings { s.LfeFilter = &v return s } // SetLoRoCenterMixLevel sets the LoRoCenterMixLevel field's value. func (s *Eac3Settings) SetLoRoCenterMixLevel(v float64) *Eac3Settings { s.LoRoCenterMixLevel = &v return s } // SetLoRoSurroundMixLevel sets the LoRoSurroundMixLevel field's value. func (s *Eac3Settings) SetLoRoSurroundMixLevel(v float64) *Eac3Settings { s.LoRoSurroundMixLevel = &v return s } // SetLtRtCenterMixLevel sets the LtRtCenterMixLevel field's value. func (s *Eac3Settings) SetLtRtCenterMixLevel(v float64) *Eac3Settings { s.LtRtCenterMixLevel = &v return s } // SetLtRtSurroundMixLevel sets the LtRtSurroundMixLevel field's value. func (s *Eac3Settings) SetLtRtSurroundMixLevel(v float64) *Eac3Settings { s.LtRtSurroundMixLevel = &v return s } // SetMetadataControl sets the MetadataControl field's value. func (s *Eac3Settings) SetMetadataControl(v string) *Eac3Settings { s.MetadataControl = &v return s } // SetPassthroughControl sets the PassthroughControl field's value. func (s *Eac3Settings) SetPassthroughControl(v string) *Eac3Settings { s.PassthroughControl = &v return s } // SetPhaseControl sets the PhaseControl field's value. func (s *Eac3Settings) SetPhaseControl(v string) *Eac3Settings { s.PhaseControl = &v return s } // SetSampleRate sets the SampleRate field's value. func (s *Eac3Settings) SetSampleRate(v int64) *Eac3Settings { s.SampleRate = &v return s } // SetStereoDownmix sets the StereoDownmix field's value. func (s *Eac3Settings) SetStereoDownmix(v string) *Eac3Settings { s.StereoDownmix = &v return s } // SetSurroundExMode sets the SurroundExMode field's value. func (s *Eac3Settings) SetSurroundExMode(v string) *Eac3Settings { s.SurroundExMode = &v return s } // SetSurroundMode sets the SurroundMode field's value. func (s *Eac3Settings) SetSurroundMode(v string) *Eac3Settings { s.SurroundMode = &v return s } // Settings specific to embedded/ancillary caption outputs, including 608/708 // Channel destination number. type EmbeddedDestinationSettings struct { _ struct{} `type:"structure"` // Ignore this setting unless your input captions are SCC format and your output // container is MXF. With this combination of input captions format and output // container, you can optionally use this setting to replace the input channel // number with the track number that you specify. Specify a different number // for each output captions track. If you don't specify an output track number, // the system uses the input channel number for the output channel number. This // setting applies to each output individually. You can optionally combine two // captions channels in your output. The two output channel numbers can be one // of the following pairs: 1,3; 2,4; 1,4; or 2,3. Destination608ChannelNumber *int64 `locationName:"destination608ChannelNumber" min:"1" type:"integer"` } // String returns the string representation func (s EmbeddedDestinationSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EmbeddedDestinationSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EmbeddedDestinationSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EmbeddedDestinationSettings"} if s.Destination608ChannelNumber != nil && *s.Destination608ChannelNumber < 1 { invalidParams.Add(request.NewErrParamMinValue("Destination608ChannelNumber", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDestination608ChannelNumber sets the Destination608ChannelNumber field's value. func (s *EmbeddedDestinationSettings) SetDestination608ChannelNumber(v int64) *EmbeddedDestinationSettings { s.Destination608ChannelNumber = &v return s } // Settings for embedded captions Source type EmbeddedSourceSettings struct { _ struct{} `type:"structure"` // When set to UPCONVERT, 608 data is both passed through via the "608 compatibility // bytes" fields of the 708 wrapper as well as translated into 708. 708 data // present in the source content will be discarded. Convert608To708 *string `locationName:"convert608To708" type:"string" enum:"EmbeddedConvert608To708"` // Specifies the 608/708 channel number within the video track from which to // extract captions. Unused for passthrough. Source608ChannelNumber *int64 `locationName:"source608ChannelNumber" min:"1" type:"integer"` // Specifies the video track index used for extracting captions. The system // only supports one input video track, so this should always be set to '1'. Source608TrackNumber *int64 `locationName:"source608TrackNumber" min:"1" type:"integer"` } // String returns the string representation func (s EmbeddedSourceSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EmbeddedSourceSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EmbeddedSourceSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EmbeddedSourceSettings"} if s.Source608ChannelNumber != nil && *s.Source608ChannelNumber < 1 { invalidParams.Add(request.NewErrParamMinValue("Source608ChannelNumber", 1)) } if s.Source608TrackNumber != nil && *s.Source608TrackNumber < 1 { invalidParams.Add(request.NewErrParamMinValue("Source608TrackNumber", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetConvert608To708 sets the Convert608To708 field's value. func (s *EmbeddedSourceSettings) SetConvert608To708(v string) *EmbeddedSourceSettings { s.Convert608To708 = &v return s } // SetSource608ChannelNumber sets the Source608ChannelNumber field's value. func (s *EmbeddedSourceSettings) SetSource608ChannelNumber(v int64) *EmbeddedSourceSettings { s.Source608ChannelNumber = &v return s } // SetSource608TrackNumber sets the Source608TrackNumber field's value. func (s *EmbeddedSourceSettings) SetSource608TrackNumber(v int64) *EmbeddedSourceSettings { s.Source608TrackNumber = &v return s } // Describes an account-specific API endpoint. type Endpoint struct { _ struct{} `type:"structure"` // URL of endpoint Url *string `locationName:"url" type:"string"` } // String returns the string representation func (s Endpoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Endpoint) GoString() string { return s.String() } // SetUrl sets the Url field's value. func (s *Endpoint) SetUrl(v string) *Endpoint { s.Url = &v return s } // ESAM ManifestConfirmConditionNotification defined by OC-SP-ESAM-API-I03-131025. type EsamManifestConfirmConditionNotification struct { _ struct{} `type:"structure"` // Provide your ESAM ManifestConfirmConditionNotification XML document inside // your JSON job settings. Form the XML document as per OC-SP-ESAM-API-I03-131025. // The transcoder will use the Manifest Conditioning instructions in the message // that you supply. MccXml *string `locationName:"mccXml" type:"string"` } // String returns the string representation func (s EsamManifestConfirmConditionNotification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EsamManifestConfirmConditionNotification) GoString() string { return s.String() } // SetMccXml sets the MccXml field's value. func (s *EsamManifestConfirmConditionNotification) SetMccXml(v string) *EsamManifestConfirmConditionNotification { s.MccXml = &v return s } // Settings for Event Signaling And Messaging (ESAM). If you don't do ad insertion, // you can ignore these settings. type EsamSettings struct { _ struct{} `type:"structure"` // Specifies an ESAM ManifestConfirmConditionNotification XML as per OC-SP-ESAM-API-I03-131025. // The transcoder uses the manifest conditioning instructions that you provide // in the setting MCC XML (mccXml). ManifestConfirmConditionNotification *EsamManifestConfirmConditionNotification `locationName:"manifestConfirmConditionNotification" type:"structure"` // Specifies the stream distance, in milliseconds, between the SCTE 35 messages // that the transcoder places and the splice points that they refer to. If the // time between the start of the asset and the SCTE-35 message is less than // this value, then the transcoder places the SCTE-35 marker at the beginning // of the stream. ResponseSignalPreroll *int64 `locationName:"responseSignalPreroll" type:"integer"` // Specifies an ESAM SignalProcessingNotification XML as per OC-SP-ESAM-API-I03-131025. // The transcoder uses the signal processing instructions that you provide in // the setting SCC XML (sccXml). SignalProcessingNotification *EsamSignalProcessingNotification `locationName:"signalProcessingNotification" type:"structure"` } // String returns the string representation func (s EsamSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EsamSettings) GoString() string { return s.String() } // SetManifestConfirmConditionNotification sets the ManifestConfirmConditionNotification field's value. func (s *EsamSettings) SetManifestConfirmConditionNotification(v *EsamManifestConfirmConditionNotification) *EsamSettings { s.ManifestConfirmConditionNotification = v return s } // SetResponseSignalPreroll sets the ResponseSignalPreroll field's value. func (s *EsamSettings) SetResponseSignalPreroll(v int64) *EsamSettings { s.ResponseSignalPreroll = &v return s } // SetSignalProcessingNotification sets the SignalProcessingNotification field's value. func (s *EsamSettings) SetSignalProcessingNotification(v *EsamSignalProcessingNotification) *EsamSettings { s.SignalProcessingNotification = v return s } // ESAM SignalProcessingNotification data defined by OC-SP-ESAM-API-I03-131025. type EsamSignalProcessingNotification struct { _ struct{} `type:"structure"` // Provide your ESAM SignalProcessingNotification XML document inside your JSON // job settings. Form the XML document as per OC-SP-ESAM-API-I03-131025. The // transcoder will use the signal processing instructions in the message that // you supply. Provide your ESAM SignalProcessingNotification XML document inside // your JSON job settings. If you want the service to place SCTE-35 markers // at the insertion points you specify in the XML document, you must also enable // SCTE-35 ESAM (scte35Esam). Note that you can either specify an ESAM XML document // or enable SCTE-35 passthrough. You can't do both. SccXml *string `locationName:"sccXml" type:"string"` } // String returns the string representation func (s EsamSignalProcessingNotification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s EsamSignalProcessingNotification) GoString() string { return s.String() } // SetSccXml sets the SccXml field's value. func (s *EsamSignalProcessingNotification) SetSccXml(v string) *EsamSignalProcessingNotification { s.SccXml = &v return s } // Settings for F4v container type F4vSettings struct { _ struct{} `type:"structure"` // If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning // of the archive as required for progressive downloading. Otherwise it is placed // normally at the end. MoovPlacement *string `locationName:"moovPlacement" type:"string" enum:"F4vMoovPlacement"` } // String returns the string representation func (s F4vSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s F4vSettings) GoString() string { return s.String() } // SetMoovPlacement sets the MoovPlacement field's value. func (s *F4vSettings) SetMoovPlacement(v string) *F4vSettings { s.MoovPlacement = &v return s } // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to // FILE_GROUP_SETTINGS. type FileGroupSettings struct { _ struct{} `type:"structure"` // Use Destination (Destination) to specify the S3 output location and the output // filename base. Destination accepts format identifiers. If you do not specify // the base filename in the URI, the service will use the filename of the input // file. If your job has multiple inputs, the service uses the filename of the // first input file. Destination *string `locationName:"destination" type:"string"` } // String returns the string representation func (s FileGroupSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FileGroupSettings) GoString() string { return s.String() } // SetDestination sets the Destination field's value. func (s *FileGroupSettings) SetDestination(v string) *FileGroupSettings { s.Destination = &v return s } // Settings for File-based Captions in Source type FileSourceSettings struct { _ struct{} `type:"structure"` // If set to UPCONVERT, 608 caption data is both passed through via the "608 // compatibility bytes" fields of the 708 wrapper as well as translated into // 708. 708 data present in the source content will be discarded. Convert608To708 *string `locationName:"convert608To708" type:"string" enum:"FileSourceConvert608To708"` // External caption file used for loading captions. Accepted file extensions // are 'scc', 'ttml', 'dfxp', 'stl', 'srt', and 'smi'. SourceFile *string `locationName:"sourceFile" min:"14" type:"string"` // Specifies a time delta in seconds to offset the captions from the source // file. TimeDelta *int64 `locationName:"timeDelta" type:"integer"` } // String returns the string representation func (s FileSourceSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FileSourceSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *FileSourceSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "FileSourceSettings"} if s.SourceFile != nil && len(*s.SourceFile) < 14 { invalidParams.Add(request.NewErrParamMinLen("SourceFile", 14)) } if s.TimeDelta != nil && *s.TimeDelta < -2.147483648e+09 { invalidParams.Add(request.NewErrParamMinValue("TimeDelta", -2.147483648e+09)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetConvert608To708 sets the Convert608To708 field's value. func (s *FileSourceSettings) SetConvert608To708(v string) *FileSourceSettings { s.Convert608To708 = &v return s } // SetSourceFile sets the SourceFile field's value. func (s *FileSourceSettings) SetSourceFile(v string) *FileSourceSettings { s.SourceFile = &v return s } // SetTimeDelta sets the TimeDelta field's value. func (s *FileSourceSettings) SetTimeDelta(v int64) *FileSourceSettings { s.TimeDelta = &v return s } // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to // the value FRAME_CAPTURE. type FrameCaptureSettings struct { _ struct{} `type:"structure"` // Frame capture will encode the first frame of the output stream, then one // frame every framerateDenominator/framerateNumerator seconds. For example, // settings of framerateNumerator = 1 and framerateDenominator = 3 (a rate of // 1/3 frame per second) will capture the first frame, then 1 frame every 3s. // Files will be named as filename.n.jpg where n is the 0-based sequence number // of each Capture. FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"` // Frame capture will encode the first frame of the output stream, then one // frame every framerateDenominator/framerateNumerator seconds. For example, // settings of framerateNumerator = 1 and framerateDenominator = 3 (a rate of // 1/3 frame per second) will capture the first frame, then 1 frame every 3s. // Files will be named as filename.NNNNNNN.jpg where N is the 0-based frame // sequence number zero padded to 7 decimal places. FramerateNumerator *int64 `locationName:"framerateNumerator" min:"1" type:"integer"` // Maximum number of captures (encoded jpg output files). MaxCaptures *int64 `locationName:"maxCaptures" min:"1" type:"integer"` // JPEG Quality - a higher value equals higher quality. Quality *int64 `locationName:"quality" min:"1" type:"integer"` } // String returns the string representation func (s FrameCaptureSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FrameCaptureSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *FrameCaptureSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "FrameCaptureSettings"} if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 { invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1)) } if s.FramerateNumerator != nil && *s.FramerateNumerator < 1 { invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 1)) } if s.MaxCaptures != nil && *s.MaxCaptures < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxCaptures", 1)) } if s.Quality != nil && *s.Quality < 1 { invalidParams.Add(request.NewErrParamMinValue("Quality", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetFramerateDenominator sets the FramerateDenominator field's value. func (s *FrameCaptureSettings) SetFramerateDenominator(v int64) *FrameCaptureSettings { s.FramerateDenominator = &v return s } // SetFramerateNumerator sets the FramerateNumerator field's value. func (s *FrameCaptureSettings) SetFramerateNumerator(v int64) *FrameCaptureSettings { s.FramerateNumerator = &v return s } // SetMaxCaptures sets the MaxCaptures field's value. func (s *FrameCaptureSettings) SetMaxCaptures(v int64) *FrameCaptureSettings { s.MaxCaptures = &v return s } // SetQuality sets the Quality field's value. func (s *FrameCaptureSettings) SetQuality(v int64) *FrameCaptureSettings { s.Quality = &v return s } // Query a job by sending a request with the job ID. type GetJobInput struct { _ struct{} `type:"structure"` // the job ID of the job. // // Id is a required field Id *string `location:"uri" locationName:"id" type:"string" required:"true"` } // String returns the string representation func (s GetJobInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetJobInput"} if s.Id == nil { invalidParams.Add(request.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetId sets the Id field's value. func (s *GetJobInput) SetId(v string) *GetJobInput { s.Id = &v return s } // Successful get job requests will return an OK message and the job JSON. type GetJobOutput struct { _ struct{} `type:"structure"` // Each job converts an input file into an output file or files. For more information, // see the User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html Job *Job `locationName:"job" type:"structure"` } // String returns the string representation func (s GetJobOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetJobOutput) GoString() string { return s.String() } // SetJob sets the Job field's value. func (s *GetJobOutput) SetJob(v *Job) *GetJobOutput { s.Job = v return s } // Query a job template by sending a request with the job template name. type GetJobTemplateInput struct { _ struct{} `type:"structure"` // The name of the job template. // // Name is a required field Name *string `location:"uri" locationName:"name" type:"string" required:"true"` } // String returns the string representation func (s GetJobTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetJobTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetJobTemplateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetJobTemplateInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetName sets the Name field's value. func (s *GetJobTemplateInput) SetName(v string) *GetJobTemplateInput { s.Name = &v return s } // Successful get job template requests will return an OK message and the job // template JSON. type GetJobTemplateOutput struct { _ struct{} `type:"structure"` // A job template is a pre-made set of encoding instructions that you can use // to quickly create a job. JobTemplate *JobTemplate `locationName:"jobTemplate" type:"structure"` } // String returns the string representation func (s GetJobTemplateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetJobTemplateOutput) GoString() string { return s.String() } // SetJobTemplate sets the JobTemplate field's value. func (s *GetJobTemplateOutput) SetJobTemplate(v *JobTemplate) *GetJobTemplateOutput { s.JobTemplate = v return s } // Query a preset by sending a request with the preset name. type GetPresetInput struct { _ struct{} `type:"structure"` // The name of the preset. // // Name is a required field Name *string `location:"uri" locationName:"name" type:"string" required:"true"` } // String returns the string representation func (s GetPresetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPresetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetPresetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetPresetInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetName sets the Name field's value. func (s *GetPresetInput) SetName(v string) *GetPresetInput { s.Name = &v return s } // Successful get preset requests will return an OK message and the preset JSON. type GetPresetOutput struct { _ struct{} `type:"structure"` // A preset is a collection of preconfigured media conversion settings that // you want MediaConvert to apply to the output during the conversion process. Preset *Preset `locationName:"preset" type:"structure"` } // String returns the string representation func (s GetPresetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetPresetOutput) GoString() string { return s.String() } // SetPreset sets the Preset field's value. func (s *GetPresetOutput) SetPreset(v *Preset) *GetPresetOutput { s.Preset = v return s } // Get information about a queue by sending a request with the queue name. type GetQueueInput struct { _ struct{} `type:"structure"` // The name of the queue that you want information about. // // Name is a required field Name *string `location:"uri" locationName:"name" type:"string" required:"true"` } // String returns the string representation func (s GetQueueInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetQueueInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetQueueInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetQueueInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetName sets the Name field's value. func (s *GetQueueInput) SetName(v string) *GetQueueInput { s.Name = &v return s } // Successful get queue requests return an OK message and information about // the queue in JSON. type GetQueueOutput struct { _ struct{} `type:"structure"` // You can use queues to manage the resources that are available to your AWS // account for running multiple transcoding jobs at the same time. If you don't // specify a queue, the service sends all jobs through the default queue. For // more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/working-with-queues.html. Queue *Queue `locationName:"queue" type:"structure"` } // String returns the string representation func (s GetQueueOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s GetQueueOutput) GoString() string { return s.String() } // SetQueue sets the Queue field's value. func (s *GetQueueOutput) SetQueue(v *Queue) *GetQueueOutput { s.Queue = v return s } // Settings for quality-defined variable bitrate encoding with the H.264 codec. // Required when you set Rate control mode to QVBR. Not valid when you set Rate // control mode to a value other than QVBR, or when you don't define Rate control // mode. type H264QvbrSettings struct { _ struct{} `type:"structure"` // Use this setting only when Rate control mode is QVBR and Quality tuning level // is Multi-pass HQ. For Max average bitrate values suited to the complexity // of your input video, the service limits the average bitrate of the video // part of this output to the value you choose. That is, the total size of the // video element is less than or equal to the value you set multiplied by the // number of seconds of encoded output. MaxAverageBitrate *int64 `locationName:"maxAverageBitrate" min:"1000" type:"integer"` // Required when you use QVBR rate control mode. That is, when you specify qvbrSettings // within h264Settings. Specify the target quality level for this output, from // 1 to 10. Use higher numbers for greater quality. Level 10 results in nearly // lossless compression. The quality level for most broadcast-quality transcodes // is between 6 and 9. QvbrQualityLevel *int64 `locationName:"qvbrQualityLevel" min:"1" type:"integer"` } // String returns the string representation func (s H264QvbrSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s H264QvbrSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *H264QvbrSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "H264QvbrSettings"} if s.MaxAverageBitrate != nil && *s.MaxAverageBitrate < 1000 { invalidParams.Add(request.NewErrParamMinValue("MaxAverageBitrate", 1000)) } if s.QvbrQualityLevel != nil && *s.QvbrQualityLevel < 1 { invalidParams.Add(request.NewErrParamMinValue("QvbrQualityLevel", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetMaxAverageBitrate sets the MaxAverageBitrate field's value. func (s *H264QvbrSettings) SetMaxAverageBitrate(v int64) *H264QvbrSettings { s.MaxAverageBitrate = &v return s } // SetQvbrQualityLevel sets the QvbrQualityLevel field's value. func (s *H264QvbrSettings) SetQvbrQualityLevel(v int64) *H264QvbrSettings { s.QvbrQualityLevel = &v return s } // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to // the value H_264. type H264Settings struct { _ struct{} `type:"structure"` // Adaptive quantization. Allows intra-frame quantizers to vary to improve visual // quality. AdaptiveQuantization *string `locationName:"adaptiveQuantization" type:"string" enum:"H264AdaptiveQuantization"` // Average bitrate in bits/second. Required for VBR and CBR. For MS Smooth outputs, // bitrates must be unique when rounded down to the nearest multiple of 1000. Bitrate *int64 `locationName:"bitrate" min:"1000" type:"integer"` // Specify an H.264 level that is consistent with your output video settings. // If you aren't sure what level to specify, choose Auto (AUTO). CodecLevel *string `locationName:"codecLevel" type:"string" enum:"H264CodecLevel"` // H.264 Profile. High 4:2:2 and 10-bit profiles are only available with the // AVC-I License. CodecProfile *string `locationName:"codecProfile" type:"string" enum:"H264CodecProfile"` // Choose Adaptive to improve subjective video quality for high-motion content. // This will cause the service to use fewer B-frames (which infer information // based on other frames) for high-motion portions of the video and more B-frames // for low-motion portions. The maximum number of B-frames is limited by the // value you provide for the setting B frames between reference frames (numberBFramesBetweenReferenceFrames). DynamicSubGop *string `locationName:"dynamicSubGop" type:"string" enum:"H264DynamicSubGop"` // Entropy encoding mode. Use CABAC (must be in Main or High profile) or CAVLC. EntropyEncoding *string `locationName:"entropyEncoding" type:"string" enum:"H264EntropyEncoding"` // Choosing FORCE_FIELD disables PAFF encoding for interlaced outputs. FieldEncoding *string `locationName:"fieldEncoding" type:"string" enum:"H264FieldEncoding"` // Adjust quantization within each frame to reduce flicker or 'pop' on I-frames. FlickerAdaptiveQuantization *string `locationName:"flickerAdaptiveQuantization" type:"string" enum:"H264FlickerAdaptiveQuantization"` // If you are using the console, use the Framerate setting to specify the frame // rate for this output. If you want to keep the same frame rate as the input // video, choose Follow source. If you want to do frame rate conversion, choose // a frame rate from the dropdown list or choose Custom. The framerates shown // in the dropdown list are decimal approximations of fractions. If you choose // Custom, specify your frame rate as a fraction. If you are creating your transcoding // job specification as a JSON file without the console, use FramerateControl // to specify which value the service uses for the frame rate for this output. // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate // from the input. Choose SPECIFIED if you want the service to use the frame // rate you specify in the settings FramerateNumerator and FramerateDenominator. FramerateControl *string `locationName:"framerateControl" type:"string" enum:"H264FramerateControl"` // When set to INTERPOLATE, produces smoother motion during frame rate conversion. FramerateConversionAlgorithm *string `locationName:"framerateConversionAlgorithm" type:"string" enum:"H264FramerateConversionAlgorithm"` // When you use the API for transcode jobs that use frame rate conversion, specify // the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use // FramerateDenominator to specify the denominator of this fraction. In this // example, use 1001 for the value of FramerateDenominator. When you use the // console for transcode jobs that use frame rate conversion, provide the value // as a decimal number for Framerate. In this example, specify 23.976. FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"` // Frame rate numerator - frame rate is a fraction, e.g. 24000 / 1001 = 23.976 // fps. FramerateNumerator *int64 `locationName:"framerateNumerator" min:"1" type:"integer"` // If enable, use reference B frames for GOP structures that have B frames > // 1. GopBReference *string `locationName:"gopBReference" type:"string" enum:"H264GopBReference"` // Frequency of closed GOPs. In streaming applications, it is recommended that // this be set to 1 so a decoder joining mid-stream will receive an IDR frame // as quickly as possible. Setting this value to 0 will break output segmenting. GopClosedCadence *int64 `locationName:"gopClosedCadence" type:"integer"` // GOP Length (keyframe interval) in frames or seconds. Must be greater than // zero. GopSize *float64 `locationName:"gopSize" type:"double"` // Indicates if the GOP Size in H264 is specified in frames or seconds. If seconds // the system will convert the GOP Size into a frame count at run time. GopSizeUnits *string `locationName:"gopSizeUnits" type:"string" enum:"H264GopSizeUnits"` // Percentage of the buffer that should initially be filled (HRD buffer model). HrdBufferInitialFillPercentage *int64 `locationName:"hrdBufferInitialFillPercentage" type:"integer"` // Size of buffer (HRD buffer model) in bits. For example, enter five megabits // as 5000000. HrdBufferSize *int64 `locationName:"hrdBufferSize" type:"integer"` // Use Interlace mode (InterlaceMode) to choose the scan line type for the output. // * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce // interlaced output with the entire output having the same field polarity (top // or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default // Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, // behavior depends on the input scan type, as follows. - If the source is interlaced, // the output will be interlaced with the same polarity as the source (it will // follow the source). The output could therefore be a mix of "top field first" // and "bottom field first". - If the source is progressive, the output will // be interlaced with "top field first" or "bottom field first" polarity, depending // on which of the Follow options you chose. InterlaceMode *string `locationName:"interlaceMode" type:"string" enum:"H264InterlaceMode"` // Maximum bitrate in bits/second. For example, enter five megabits per second // as 5000000. Required when Rate control mode is QVBR. MaxBitrate *int64 `locationName:"maxBitrate" min:"1000" type:"integer"` // Enforces separation between repeated (cadence) I-frames and I-frames inserted // by Scene Change Detection. If a scene change I-frame is within I-interval // frames of a cadence I-frame, the GOP is shrunk and/or stretched to the scene // change I-frame. GOP stretch requires enabling lookahead as well as setting // I-interval. The normal cadence resumes for the next GOP. This setting is // only used when Scene Change Detect is enabled. Note: Maximum GOP stretch // = GOP size + Min-I-interval - 1 MinIInterval *int64 `locationName:"minIInterval" type:"integer"` // Number of B-frames between reference frames. NumberBFramesBetweenReferenceFrames *int64 `locationName:"numberBFramesBetweenReferenceFrames" type:"integer"` // Number of reference frames to use. The encoder may use more than requested // if using B-frames and/or interlaced encoding. NumberReferenceFrames *int64 `locationName:"numberReferenceFrames" min:"1" type:"integer"` // Using the API, enable ParFollowSource if you want the service to use the // pixel aspect ratio from the input. Using the console, do this by choosing // Follow source for Pixel aspect ratio. ParControl *string `locationName:"parControl" type:"string" enum:"H264ParControl"` // Pixel Aspect Ratio denominator. ParDenominator *int64 `locationName:"parDenominator" min:"1" type:"integer"` // Pixel Aspect Ratio numerator. ParNumerator *int64 `locationName:"parNumerator" min:"1" type:"integer"` // Use Quality tuning level (H264QualityTuningLevel) to specifiy whether to // use fast single-pass, high-quality singlepass, or high-quality multipass // video encoding. QualityTuningLevel *string `locationName:"qualityTuningLevel" type:"string" enum:"H264QualityTuningLevel"` // Settings for quality-defined variable bitrate encoding with the H.264 codec. // Required when you set Rate control mode to QVBR. Not valid when you set Rate // control mode to a value other than QVBR, or when you don't define Rate control // mode. QvbrSettings *H264QvbrSettings `locationName:"qvbrSettings" type:"structure"` // Use this setting to specify whether this output has a variable bitrate (VBR), // constant bitrate (CBR) or quality-defined variable bitrate (QVBR). RateControlMode *string `locationName:"rateControlMode" type:"string" enum:"H264RateControlMode"` // Places a PPS header on each encoded picture, even if repeated. RepeatPps *string `locationName:"repeatPps" type:"string" enum:"H264RepeatPps"` // Scene change detection (inserts I-frames on scene changes). SceneChangeDetect *string `locationName:"sceneChangeDetect" type:"string" enum:"H264SceneChangeDetect"` // Number of slices per picture. Must be less than or equal to the number of // macroblock rows for progressive pictures, and less than or equal to half // the number of macroblock rows for interlaced pictures. Slices *int64 `locationName:"slices" min:"1" type:"integer"` // Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled // as 25fps, and audio is sped up correspondingly. SlowPal *string `locationName:"slowPal" type:"string" enum:"H264SlowPal"` // Softness. Selects quantizer matrix, larger values reduce high-frequency content // in the encoded image. Softness *int64 `locationName:"softness" type:"integer"` // Adjust quantization within each frame based on spatial variation of content // complexity. SpatialAdaptiveQuantization *string `locationName:"spatialAdaptiveQuantization" type:"string" enum:"H264SpatialAdaptiveQuantization"` // Produces a bitstream compliant with SMPTE RP-2027. Syntax *string `locationName:"syntax" type:"string" enum:"H264Syntax"` // This field applies only if the Streams > Advanced > Framerate (framerate) // field is set to 29.970. This field works with the Streams > Advanced > Preprocessors // > Deinterlacer field (deinterlace_mode) and the Streams > Advanced > Interlaced // Mode field (interlace_mode) to identify the scan type for the output: Progressive, // Interlaced, Hard Telecine or Soft Telecine. - Hard: produces 29.97i output // from 23.976 input. - Soft: produces 23.976; the player converts this output // to 29.97i. Telecine *string `locationName:"telecine" type:"string" enum:"H264Telecine"` // Adjust quantization within each frame based on temporal variation of content // complexity. TemporalAdaptiveQuantization *string `locationName:"temporalAdaptiveQuantization" type:"string" enum:"H264TemporalAdaptiveQuantization"` // Inserts timecode for each frame as 4 bytes of an unregistered SEI message. UnregisteredSeiTimecode *string `locationName:"unregisteredSeiTimecode" type:"string" enum:"H264UnregisteredSeiTimecode"` } // String returns the string representation func (s H264Settings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s H264Settings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *H264Settings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "H264Settings"} if s.Bitrate != nil && *s.Bitrate < 1000 { invalidParams.Add(request.NewErrParamMinValue("Bitrate", 1000)) } if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 { invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1)) } if s.FramerateNumerator != nil && *s.FramerateNumerator < 1 { invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 1)) } if s.MaxBitrate != nil && *s.MaxBitrate < 1000 { invalidParams.Add(request.NewErrParamMinValue("MaxBitrate", 1000)) } if s.NumberReferenceFrames != nil && *s.NumberReferenceFrames < 1 { invalidParams.Add(request.NewErrParamMinValue("NumberReferenceFrames", 1)) } if s.ParDenominator != nil && *s.ParDenominator < 1 { invalidParams.Add(request.NewErrParamMinValue("ParDenominator", 1)) } if s.ParNumerator != nil && *s.ParNumerator < 1 { invalidParams.Add(request.NewErrParamMinValue("ParNumerator", 1)) } if s.Slices != nil && *s.Slices < 1 { invalidParams.Add(request.NewErrParamMinValue("Slices", 1)) } if s.QvbrSettings != nil { if err := s.QvbrSettings.Validate(); err != nil { invalidParams.AddNested("QvbrSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAdaptiveQuantization sets the AdaptiveQuantization field's value. func (s *H264Settings) SetAdaptiveQuantization(v string) *H264Settings { s.AdaptiveQuantization = &v return s } // SetBitrate sets the Bitrate field's value. func (s *H264Settings) SetBitrate(v int64) *H264Settings { s.Bitrate = &v return s } // SetCodecLevel sets the CodecLevel field's value. func (s *H264Settings) SetCodecLevel(v string) *H264Settings { s.CodecLevel = &v return s } // SetCodecProfile sets the CodecProfile field's value. func (s *H264Settings) SetCodecProfile(v string) *H264Settings { s.CodecProfile = &v return s } // SetDynamicSubGop sets the DynamicSubGop field's value. func (s *H264Settings) SetDynamicSubGop(v string) *H264Settings { s.DynamicSubGop = &v return s } // SetEntropyEncoding sets the EntropyEncoding field's value. func (s *H264Settings) SetEntropyEncoding(v string) *H264Settings { s.EntropyEncoding = &v return s } // SetFieldEncoding sets the FieldEncoding field's value. func (s *H264Settings) SetFieldEncoding(v string) *H264Settings { s.FieldEncoding = &v return s } // SetFlickerAdaptiveQuantization sets the FlickerAdaptiveQuantization field's value. func (s *H264Settings) SetFlickerAdaptiveQuantization(v string) *H264Settings { s.FlickerAdaptiveQuantization = &v return s } // SetFramerateControl sets the FramerateControl field's value. func (s *H264Settings) SetFramerateControl(v string) *H264Settings { s.FramerateControl = &v return s } // SetFramerateConversionAlgorithm sets the FramerateConversionAlgorithm field's value. func (s *H264Settings) SetFramerateConversionAlgorithm(v string) *H264Settings { s.FramerateConversionAlgorithm = &v return s } // SetFramerateDenominator sets the FramerateDenominator field's value. func (s *H264Settings) SetFramerateDenominator(v int64) *H264Settings { s.FramerateDenominator = &v return s } // SetFramerateNumerator sets the FramerateNumerator field's value. func (s *H264Settings) SetFramerateNumerator(v int64) *H264Settings { s.FramerateNumerator = &v return s } // SetGopBReference sets the GopBReference field's value. func (s *H264Settings) SetGopBReference(v string) *H264Settings { s.GopBReference = &v return s } // SetGopClosedCadence sets the GopClosedCadence field's value. func (s *H264Settings) SetGopClosedCadence(v int64) *H264Settings { s.GopClosedCadence = &v return s } // SetGopSize sets the GopSize field's value. func (s *H264Settings) SetGopSize(v float64) *H264Settings { s.GopSize = &v return s } // SetGopSizeUnits sets the GopSizeUnits field's value. func (s *H264Settings) SetGopSizeUnits(v string) *H264Settings { s.GopSizeUnits = &v return s } // SetHrdBufferInitialFillPercentage sets the HrdBufferInitialFillPercentage field's value. func (s *H264Settings) SetHrdBufferInitialFillPercentage(v int64) *H264Settings { s.HrdBufferInitialFillPercentage = &v return s } // SetHrdBufferSize sets the HrdBufferSize field's value. func (s *H264Settings) SetHrdBufferSize(v int64) *H264Settings { s.HrdBufferSize = &v return s } // SetInterlaceMode sets the InterlaceMode field's value. func (s *H264Settings) SetInterlaceMode(v string) *H264Settings { s.InterlaceMode = &v return s } // SetMaxBitrate sets the MaxBitrate field's value. func (s *H264Settings) SetMaxBitrate(v int64) *H264Settings { s.MaxBitrate = &v return s } // SetMinIInterval sets the MinIInterval field's value. func (s *H264Settings) SetMinIInterval(v int64) *H264Settings { s.MinIInterval = &v return s } // SetNumberBFramesBetweenReferenceFrames sets the NumberBFramesBetweenReferenceFrames field's value. func (s *H264Settings) SetNumberBFramesBetweenReferenceFrames(v int64) *H264Settings { s.NumberBFramesBetweenReferenceFrames = &v return s } // SetNumberReferenceFrames sets the NumberReferenceFrames field's value. func (s *H264Settings) SetNumberReferenceFrames(v int64) *H264Settings { s.NumberReferenceFrames = &v return s } // SetParControl sets the ParControl field's value. func (s *H264Settings) SetParControl(v string) *H264Settings { s.ParControl = &v return s } // SetParDenominator sets the ParDenominator field's value. func (s *H264Settings) SetParDenominator(v int64) *H264Settings { s.ParDenominator = &v return s } // SetParNumerator sets the ParNumerator field's value. func (s *H264Settings) SetParNumerator(v int64) *H264Settings { s.ParNumerator = &v return s } // SetQualityTuningLevel sets the QualityTuningLevel field's value. func (s *H264Settings) SetQualityTuningLevel(v string) *H264Settings { s.QualityTuningLevel = &v return s } // SetQvbrSettings sets the QvbrSettings field's value. func (s *H264Settings) SetQvbrSettings(v *H264QvbrSettings) *H264Settings { s.QvbrSettings = v return s } // SetRateControlMode sets the RateControlMode field's value. func (s *H264Settings) SetRateControlMode(v string) *H264Settings { s.RateControlMode = &v return s } // SetRepeatPps sets the RepeatPps field's value. func (s *H264Settings) SetRepeatPps(v string) *H264Settings { s.RepeatPps = &v return s } // SetSceneChangeDetect sets the SceneChangeDetect field's value. func (s *H264Settings) SetSceneChangeDetect(v string) *H264Settings { s.SceneChangeDetect = &v return s } // SetSlices sets the Slices field's value. func (s *H264Settings) SetSlices(v int64) *H264Settings { s.Slices = &v return s } // SetSlowPal sets the SlowPal field's value. func (s *H264Settings) SetSlowPal(v string) *H264Settings { s.SlowPal = &v return s } // SetSoftness sets the Softness field's value. func (s *H264Settings) SetSoftness(v int64) *H264Settings { s.Softness = &v return s } // SetSpatialAdaptiveQuantization sets the SpatialAdaptiveQuantization field's value. func (s *H264Settings) SetSpatialAdaptiveQuantization(v string) *H264Settings { s.SpatialAdaptiveQuantization = &v return s } // SetSyntax sets the Syntax field's value. func (s *H264Settings) SetSyntax(v string) *H264Settings { s.Syntax = &v return s } // SetTelecine sets the Telecine field's value. func (s *H264Settings) SetTelecine(v string) *H264Settings { s.Telecine = &v return s } // SetTemporalAdaptiveQuantization sets the TemporalAdaptiveQuantization field's value. func (s *H264Settings) SetTemporalAdaptiveQuantization(v string) *H264Settings { s.TemporalAdaptiveQuantization = &v return s } // SetUnregisteredSeiTimecode sets the UnregisteredSeiTimecode field's value. func (s *H264Settings) SetUnregisteredSeiTimecode(v string) *H264Settings { s.UnregisteredSeiTimecode = &v return s } // Settings for quality-defined variable bitrate encoding with the H.265 codec. // Required when you set Rate control mode to QVBR. Not valid when you set Rate // control mode to a value other than QVBR, or when you don't define Rate control // mode. type H265QvbrSettings struct { _ struct{} `type:"structure"` // Use this setting only when Rate control mode is QVBR and Quality tuning level // is Multi-pass HQ. For Max average bitrate values suited to the complexity // of your input video, the service limits the average bitrate of the video // part of this output to the value you choose. That is, the total size of the // video element is less than or equal to the value you set multiplied by the // number of seconds of encoded output. MaxAverageBitrate *int64 `locationName:"maxAverageBitrate" min:"1000" type:"integer"` // Required when you use QVBR rate control mode. That is, when you specify qvbrSettings // within h265Settings. Specify the target quality level for this output, from // 1 to 10. Use higher numbers for greater quality. Level 10 results in nearly // lossless compression. The quality level for most broadcast-quality transcodes // is between 6 and 9. QvbrQualityLevel *int64 `locationName:"qvbrQualityLevel" min:"1" type:"integer"` } // String returns the string representation func (s H265QvbrSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s H265QvbrSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *H265QvbrSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "H265QvbrSettings"} if s.MaxAverageBitrate != nil && *s.MaxAverageBitrate < 1000 { invalidParams.Add(request.NewErrParamMinValue("MaxAverageBitrate", 1000)) } if s.QvbrQualityLevel != nil && *s.QvbrQualityLevel < 1 { invalidParams.Add(request.NewErrParamMinValue("QvbrQualityLevel", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetMaxAverageBitrate sets the MaxAverageBitrate field's value. func (s *H265QvbrSettings) SetMaxAverageBitrate(v int64) *H265QvbrSettings { s.MaxAverageBitrate = &v return s } // SetQvbrQualityLevel sets the QvbrQualityLevel field's value. func (s *H265QvbrSettings) SetQvbrQualityLevel(v int64) *H265QvbrSettings { s.QvbrQualityLevel = &v return s } // Settings for H265 codec type H265Settings struct { _ struct{} `type:"structure"` // Adaptive quantization. Allows intra-frame quantizers to vary to improve visual // quality. AdaptiveQuantization *string `locationName:"adaptiveQuantization" type:"string" enum:"H265AdaptiveQuantization"` // Enables Alternate Transfer Function SEI message for outputs using Hybrid // Log Gamma (HLG) Electro-Optical Transfer Function (EOTF). AlternateTransferFunctionSei *string `locationName:"alternateTransferFunctionSei" type:"string" enum:"H265AlternateTransferFunctionSei"` // Average bitrate in bits/second. Required for VBR and CBR. For MS Smooth outputs, // bitrates must be unique when rounded down to the nearest multiple of 1000. Bitrate *int64 `locationName:"bitrate" min:"1000" type:"integer"` // H.265 Level. CodecLevel *string `locationName:"codecLevel" type:"string" enum:"H265CodecLevel"` // Represents the Profile and Tier, per the HEVC (H.265) specification. Selections // are grouped as [Profile] / [Tier], so "Main/High" represents Main Profile // with High Tier. 4:2:2 profiles are only available with the HEVC 4:2:2 License. CodecProfile *string `locationName:"codecProfile" type:"string" enum:"H265CodecProfile"` // Choose Adaptive to improve subjective video quality for high-motion content. // This will cause the service to use fewer B-frames (which infer information // based on other frames) for high-motion portions of the video and more B-frames // for low-motion portions. The maximum number of B-frames is limited by the // value you provide for the setting B frames between reference frames (numberBFramesBetweenReferenceFrames). DynamicSubGop *string `locationName:"dynamicSubGop" type:"string" enum:"H265DynamicSubGop"` // Adjust quantization within each frame to reduce flicker or 'pop' on I-frames. FlickerAdaptiveQuantization *string `locationName:"flickerAdaptiveQuantization" type:"string" enum:"H265FlickerAdaptiveQuantization"` // If you are using the console, use the Framerate setting to specify the frame // rate for this output. If you want to keep the same frame rate as the input // video, choose Follow source. If you want to do frame rate conversion, choose // a frame rate from the dropdown list or choose Custom. The framerates shown // in the dropdown list are decimal approximations of fractions. If you choose // Custom, specify your frame rate as a fraction. If you are creating your transcoding // job sepecification as a JSON file without the console, use FramerateControl // to specify which value the service uses for the frame rate for this output. // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate // from the input. Choose SPECIFIED if you want the service to use the frame // rate you specify in the settings FramerateNumerator and FramerateDenominator. FramerateControl *string `locationName:"framerateControl" type:"string" enum:"H265FramerateControl"` // When set to INTERPOLATE, produces smoother motion during frame rate conversion. FramerateConversionAlgorithm *string `locationName:"framerateConversionAlgorithm" type:"string" enum:"H265FramerateConversionAlgorithm"` // Frame rate denominator. FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"` // Frame rate numerator - frame rate is a fraction, e.g. 24000 / 1001 = 23.976 // fps. FramerateNumerator *int64 `locationName:"framerateNumerator" min:"1" type:"integer"` // If enable, use reference B frames for GOP structures that have B frames > // 1. GopBReference *string `locationName:"gopBReference" type:"string" enum:"H265GopBReference"` // Frequency of closed GOPs. In streaming applications, it is recommended that // this be set to 1 so a decoder joining mid-stream will receive an IDR frame // as quickly as possible. Setting this value to 0 will break output segmenting. GopClosedCadence *int64 `locationName:"gopClosedCadence" type:"integer"` // GOP Length (keyframe interval) in frames or seconds. Must be greater than // zero. GopSize *float64 `locationName:"gopSize" type:"double"` // Indicates if the GOP Size in H265 is specified in frames or seconds. If seconds // the system will convert the GOP Size into a frame count at run time. GopSizeUnits *string `locationName:"gopSizeUnits" type:"string" enum:"H265GopSizeUnits"` // Percentage of the buffer that should initially be filled (HRD buffer model). HrdBufferInitialFillPercentage *int64 `locationName:"hrdBufferInitialFillPercentage" type:"integer"` // Size of buffer (HRD buffer model) in bits. For example, enter five megabits // as 5000000. HrdBufferSize *int64 `locationName:"hrdBufferSize" type:"integer"` // Use Interlace mode (InterlaceMode) to choose the scan line type for the output. // * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce // interlaced output with the entire output having the same field polarity (top // or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default // Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, // behavior depends on the input scan type. - If the source is interlaced, the // output will be interlaced with the same polarity as the source (it will follow // the source). The output could therefore be a mix of "top field first" and // "bottom field first". - If the source is progressive, the output will be // interlaced with "top field first" or "bottom field first" polarity, depending // on which of the Follow options you chose. InterlaceMode *string `locationName:"interlaceMode" type:"string" enum:"H265InterlaceMode"` // Maximum bitrate in bits/second. For example, enter five megabits per second // as 5000000. Required when Rate control mode is QVBR. MaxBitrate *int64 `locationName:"maxBitrate" min:"1000" type:"integer"` // Enforces separation between repeated (cadence) I-frames and I-frames inserted // by Scene Change Detection. If a scene change I-frame is within I-interval // frames of a cadence I-frame, the GOP is shrunk and/or stretched to the scene // change I-frame. GOP stretch requires enabling lookahead as well as setting // I-interval. The normal cadence resumes for the next GOP. This setting is // only used when Scene Change Detect is enabled. Note: Maximum GOP stretch // = GOP size + Min-I-interval - 1 MinIInterval *int64 `locationName:"minIInterval" type:"integer"` // Number of B-frames between reference frames. NumberBFramesBetweenReferenceFrames *int64 `locationName:"numberBFramesBetweenReferenceFrames" type:"integer"` // Number of reference frames to use. The encoder may use more than requested // if using B-frames and/or interlaced encoding. NumberReferenceFrames *int64 `locationName:"numberReferenceFrames" min:"1" type:"integer"` // Using the API, enable ParFollowSource if you want the service to use the // pixel aspect ratio from the input. Using the console, do this by choosing // Follow source for Pixel aspect ratio. ParControl *string `locationName:"parControl" type:"string" enum:"H265ParControl"` // Pixel Aspect Ratio denominator. ParDenominator *int64 `locationName:"parDenominator" min:"1" type:"integer"` // Pixel Aspect Ratio numerator. ParNumerator *int64 `locationName:"parNumerator" min:"1" type:"integer"` // Use Quality tuning level (H265QualityTuningLevel) to specifiy whether to // use fast single-pass, high-quality singlepass, or high-quality multipass // video encoding. QualityTuningLevel *string `locationName:"qualityTuningLevel" type:"string" enum:"H265QualityTuningLevel"` // Settings for quality-defined variable bitrate encoding with the H.265 codec. // Required when you set Rate control mode to QVBR. Not valid when you set Rate // control mode to a value other than QVBR, or when you don't define Rate control // mode. QvbrSettings *H265QvbrSettings `locationName:"qvbrSettings" type:"structure"` // Use this setting to specify whether this output has a variable bitrate (VBR), // constant bitrate (CBR) or quality-defined variable bitrate (QVBR). RateControlMode *string `locationName:"rateControlMode" type:"string" enum:"H265RateControlMode"` // Specify Sample Adaptive Offset (SAO) filter strength. Adaptive mode dynamically // selects best strength based on content SampleAdaptiveOffsetFilterMode *string `locationName:"sampleAdaptiveOffsetFilterMode" type:"string" enum:"H265SampleAdaptiveOffsetFilterMode"` // Scene change detection (inserts I-frames on scene changes). SceneChangeDetect *string `locationName:"sceneChangeDetect" type:"string" enum:"H265SceneChangeDetect"` // Number of slices per picture. Must be less than or equal to the number of // macroblock rows for progressive pictures, and less than or equal to half // the number of macroblock rows for interlaced pictures. Slices *int64 `locationName:"slices" min:"1" type:"integer"` // Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled // as 25fps, and audio is sped up correspondingly. SlowPal *string `locationName:"slowPal" type:"string" enum:"H265SlowPal"` // Adjust quantization within each frame based on spatial variation of content // complexity. SpatialAdaptiveQuantization *string `locationName:"spatialAdaptiveQuantization" type:"string" enum:"H265SpatialAdaptiveQuantization"` // This field applies only if the Streams > Advanced > Framerate (framerate) // field is set to 29.970. This field works with the Streams > Advanced > Preprocessors // > Deinterlacer field (deinterlace_mode) and the Streams > Advanced > Interlaced // Mode field (interlace_mode) to identify the scan type for the output: Progressive, // Interlaced, Hard Telecine or Soft Telecine. - Hard: produces 29.97i output // from 23.976 input. - Soft: produces 23.976; the player converts this output // to 29.97i. Telecine *string `locationName:"telecine" type:"string" enum:"H265Telecine"` // Adjust quantization within each frame based on temporal variation of content // complexity. TemporalAdaptiveQuantization *string `locationName:"temporalAdaptiveQuantization" type:"string" enum:"H265TemporalAdaptiveQuantization"` // Enables temporal layer identifiers in the encoded bitstream. Up to 3 layers // are supported depending on GOP structure: I- and P-frames form one layer, // reference B-frames can form a second layer and non-reference b-frames can // form a third layer. Decoders can optionally decode only the lower temporal // layers to generate a lower frame rate output. For example, given a bitstream // with temporal IDs and with b-frames = 1 (i.e. IbPbPb display order), a decoder // could decode all the frames for full frame rate output or only the I and // P frames (lowest temporal layer) for a half frame rate output. TemporalIds *string `locationName:"temporalIds" type:"string" enum:"H265TemporalIds"` // Enable use of tiles, allowing horizontal as well as vertical subdivision // of the encoded pictures. Tiles *string `locationName:"tiles" type:"string" enum:"H265Tiles"` // Inserts timecode for each frame as 4 bytes of an unregistered SEI message. UnregisteredSeiTimecode *string `locationName:"unregisteredSeiTimecode" type:"string" enum:"H265UnregisteredSeiTimecode"` // Use this setting only for outputs encoded with H.265 that are in CMAF or // DASH output groups. If you include writeMp4PackagingType in your JSON job // specification for other outputs, your video might not work properly with // downstream systems and video players. If the location of parameter set NAL // units don't matter in your workflow, ignore this setting. The service defaults // to marking your output as HEV1. Choose HVC1 to mark your output as HVC1. // This makes your output compliant with this specification: ISO IECJTC1 SC29 // N13798 Text ISO/IEC FDIS 14496-15 3rd Edition. For these outputs, the service // stores parameter set NAL units in the sample headers but not in the samples // directly. Keep the default HEV1 to mark your output as HEV1. For these outputs, // the service writes parameter set NAL units directly into the samples. WriteMp4PackagingType *string `locationName:"writeMp4PackagingType" type:"string" enum:"H265WriteMp4PackagingType"` } // String returns the string representation func (s H265Settings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s H265Settings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *H265Settings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "H265Settings"} if s.Bitrate != nil && *s.Bitrate < 1000 { invalidParams.Add(request.NewErrParamMinValue("Bitrate", 1000)) } if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 { invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1)) } if s.FramerateNumerator != nil && *s.FramerateNumerator < 1 { invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 1)) } if s.MaxBitrate != nil && *s.MaxBitrate < 1000 { invalidParams.Add(request.NewErrParamMinValue("MaxBitrate", 1000)) } if s.NumberReferenceFrames != nil && *s.NumberReferenceFrames < 1 { invalidParams.Add(request.NewErrParamMinValue("NumberReferenceFrames", 1)) } if s.ParDenominator != nil && *s.ParDenominator < 1 { invalidParams.Add(request.NewErrParamMinValue("ParDenominator", 1)) } if s.ParNumerator != nil && *s.ParNumerator < 1 { invalidParams.Add(request.NewErrParamMinValue("ParNumerator", 1)) } if s.Slices != nil && *s.Slices < 1 { invalidParams.Add(request.NewErrParamMinValue("Slices", 1)) } if s.QvbrSettings != nil { if err := s.QvbrSettings.Validate(); err != nil { invalidParams.AddNested("QvbrSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAdaptiveQuantization sets the AdaptiveQuantization field's value. func (s *H265Settings) SetAdaptiveQuantization(v string) *H265Settings { s.AdaptiveQuantization = &v return s } // SetAlternateTransferFunctionSei sets the AlternateTransferFunctionSei field's value. func (s *H265Settings) SetAlternateTransferFunctionSei(v string) *H265Settings { s.AlternateTransferFunctionSei = &v return s } // SetBitrate sets the Bitrate field's value. func (s *H265Settings) SetBitrate(v int64) *H265Settings { s.Bitrate = &v return s } // SetCodecLevel sets the CodecLevel field's value. func (s *H265Settings) SetCodecLevel(v string) *H265Settings { s.CodecLevel = &v return s } // SetCodecProfile sets the CodecProfile field's value. func (s *H265Settings) SetCodecProfile(v string) *H265Settings { s.CodecProfile = &v return s } // SetDynamicSubGop sets the DynamicSubGop field's value. func (s *H265Settings) SetDynamicSubGop(v string) *H265Settings { s.DynamicSubGop = &v return s } // SetFlickerAdaptiveQuantization sets the FlickerAdaptiveQuantization field's value. func (s *H265Settings) SetFlickerAdaptiveQuantization(v string) *H265Settings { s.FlickerAdaptiveQuantization = &v return s } // SetFramerateControl sets the FramerateControl field's value. func (s *H265Settings) SetFramerateControl(v string) *H265Settings { s.FramerateControl = &v return s } // SetFramerateConversionAlgorithm sets the FramerateConversionAlgorithm field's value. func (s *H265Settings) SetFramerateConversionAlgorithm(v string) *H265Settings { s.FramerateConversionAlgorithm = &v return s } // SetFramerateDenominator sets the FramerateDenominator field's value. func (s *H265Settings) SetFramerateDenominator(v int64) *H265Settings { s.FramerateDenominator = &v return s } // SetFramerateNumerator sets the FramerateNumerator field's value. func (s *H265Settings) SetFramerateNumerator(v int64) *H265Settings { s.FramerateNumerator = &v return s } // SetGopBReference sets the GopBReference field's value. func (s *H265Settings) SetGopBReference(v string) *H265Settings { s.GopBReference = &v return s } // SetGopClosedCadence sets the GopClosedCadence field's value. func (s *H265Settings) SetGopClosedCadence(v int64) *H265Settings { s.GopClosedCadence = &v return s } // SetGopSize sets the GopSize field's value. func (s *H265Settings) SetGopSize(v float64) *H265Settings { s.GopSize = &v return s } // SetGopSizeUnits sets the GopSizeUnits field's value. func (s *H265Settings) SetGopSizeUnits(v string) *H265Settings { s.GopSizeUnits = &v return s } // SetHrdBufferInitialFillPercentage sets the HrdBufferInitialFillPercentage field's value. func (s *H265Settings) SetHrdBufferInitialFillPercentage(v int64) *H265Settings { s.HrdBufferInitialFillPercentage = &v return s } // SetHrdBufferSize sets the HrdBufferSize field's value. func (s *H265Settings) SetHrdBufferSize(v int64) *H265Settings { s.HrdBufferSize = &v return s } // SetInterlaceMode sets the InterlaceMode field's value. func (s *H265Settings) SetInterlaceMode(v string) *H265Settings { s.InterlaceMode = &v return s } // SetMaxBitrate sets the MaxBitrate field's value. func (s *H265Settings) SetMaxBitrate(v int64) *H265Settings { s.MaxBitrate = &v return s } // SetMinIInterval sets the MinIInterval field's value. func (s *H265Settings) SetMinIInterval(v int64) *H265Settings { s.MinIInterval = &v return s } // SetNumberBFramesBetweenReferenceFrames sets the NumberBFramesBetweenReferenceFrames field's value. func (s *H265Settings) SetNumberBFramesBetweenReferenceFrames(v int64) *H265Settings { s.NumberBFramesBetweenReferenceFrames = &v return s } // SetNumberReferenceFrames sets the NumberReferenceFrames field's value. func (s *H265Settings) SetNumberReferenceFrames(v int64) *H265Settings { s.NumberReferenceFrames = &v return s } // SetParControl sets the ParControl field's value. func (s *H265Settings) SetParControl(v string) *H265Settings { s.ParControl = &v return s } // SetParDenominator sets the ParDenominator field's value. func (s *H265Settings) SetParDenominator(v int64) *H265Settings { s.ParDenominator = &v return s } // SetParNumerator sets the ParNumerator field's value. func (s *H265Settings) SetParNumerator(v int64) *H265Settings { s.ParNumerator = &v return s } // SetQualityTuningLevel sets the QualityTuningLevel field's value. func (s *H265Settings) SetQualityTuningLevel(v string) *H265Settings { s.QualityTuningLevel = &v return s } // SetQvbrSettings sets the QvbrSettings field's value. func (s *H265Settings) SetQvbrSettings(v *H265QvbrSettings) *H265Settings { s.QvbrSettings = v return s } // SetRateControlMode sets the RateControlMode field's value. func (s *H265Settings) SetRateControlMode(v string) *H265Settings { s.RateControlMode = &v return s } // SetSampleAdaptiveOffsetFilterMode sets the SampleAdaptiveOffsetFilterMode field's value. func (s *H265Settings) SetSampleAdaptiveOffsetFilterMode(v string) *H265Settings { s.SampleAdaptiveOffsetFilterMode = &v return s } // SetSceneChangeDetect sets the SceneChangeDetect field's value. func (s *H265Settings) SetSceneChangeDetect(v string) *H265Settings { s.SceneChangeDetect = &v return s } // SetSlices sets the Slices field's value. func (s *H265Settings) SetSlices(v int64) *H265Settings { s.Slices = &v return s } // SetSlowPal sets the SlowPal field's value. func (s *H265Settings) SetSlowPal(v string) *H265Settings { s.SlowPal = &v return s } // SetSpatialAdaptiveQuantization sets the SpatialAdaptiveQuantization field's value. func (s *H265Settings) SetSpatialAdaptiveQuantization(v string) *H265Settings { s.SpatialAdaptiveQuantization = &v return s } // SetTelecine sets the Telecine field's value. func (s *H265Settings) SetTelecine(v string) *H265Settings { s.Telecine = &v return s } // SetTemporalAdaptiveQuantization sets the TemporalAdaptiveQuantization field's value. func (s *H265Settings) SetTemporalAdaptiveQuantization(v string) *H265Settings { s.TemporalAdaptiveQuantization = &v return s } // SetTemporalIds sets the TemporalIds field's value. func (s *H265Settings) SetTemporalIds(v string) *H265Settings { s.TemporalIds = &v return s } // SetTiles sets the Tiles field's value. func (s *H265Settings) SetTiles(v string) *H265Settings { s.Tiles = &v return s } // SetUnregisteredSeiTimecode sets the UnregisteredSeiTimecode field's value. func (s *H265Settings) SetUnregisteredSeiTimecode(v string) *H265Settings { s.UnregisteredSeiTimecode = &v return s } // SetWriteMp4PackagingType sets the WriteMp4PackagingType field's value. func (s *H265Settings) SetWriteMp4PackagingType(v string) *H265Settings { s.WriteMp4PackagingType = &v return s } // Use the "HDR master display information" (Hdr10Metadata) settings to correct // HDR metadata or to provide missing metadata. These values vary depending // on the input video and must be provided by a color grader. Range is 0 to // 50,000; each increment represents 0.00002 in CIE1931 color coordinate. Note // that these settings are not color correction. Note that if you are creating // HDR outputs inside of an HLS CMAF package, to comply with the Apple specification, // you must use the following settings. Set "MP4 packaging type" (writeMp4PackagingType) // to HVC1 (HVC1). Set "Profile" (H265Settings > codecProfile) to Main10/High // (MAIN10_HIGH). Set "Level" (H265Settings > codecLevel) to 5 (LEVEL_5). type Hdr10Metadata struct { _ struct{} `type:"structure"` // HDR Master Display Information must be provided by a color grader, using // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 // in CIE1931 color coordinate. Note that this setting is not for color correction. BluePrimaryX *int64 `locationName:"bluePrimaryX" type:"integer"` // HDR Master Display Information must be provided by a color grader, using // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 // in CIE1931 color coordinate. Note that this setting is not for color correction. BluePrimaryY *int64 `locationName:"bluePrimaryY" type:"integer"` // HDR Master Display Information must be provided by a color grader, using // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 // in CIE1931 color coordinate. Note that this setting is not for color correction. GreenPrimaryX *int64 `locationName:"greenPrimaryX" type:"integer"` // HDR Master Display Information must be provided by a color grader, using // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 // in CIE1931 color coordinate. Note that this setting is not for color correction. GreenPrimaryY *int64 `locationName:"greenPrimaryY" type:"integer"` // Maximum light level among all samples in the coded video sequence, in units // of candelas per square meter. MaxContentLightLevel *int64 `locationName:"maxContentLightLevel" type:"integer"` // Maximum average light level of any frame in the coded video sequence, in // units of candelas per square meter. MaxFrameAverageLightLevel *int64 `locationName:"maxFrameAverageLightLevel" type:"integer"` // Nominal maximum mastering display luminance in units of of 0.0001 candelas // per square meter. MaxLuminance *int64 `locationName:"maxLuminance" type:"integer"` // Nominal minimum mastering display luminance in units of of 0.0001 candelas // per square meter MinLuminance *int64 `locationName:"minLuminance" type:"integer"` // HDR Master Display Information must be provided by a color grader, using // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 // in CIE1931 color coordinate. Note that this setting is not for color correction. RedPrimaryX *int64 `locationName:"redPrimaryX" type:"integer"` // HDR Master Display Information must be provided by a color grader, using // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 // in CIE1931 color coordinate. Note that this setting is not for color correction. RedPrimaryY *int64 `locationName:"redPrimaryY" type:"integer"` // HDR Master Display Information must be provided by a color grader, using // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 // in CIE1931 color coordinate. Note that this setting is not for color correction. WhitePointX *int64 `locationName:"whitePointX" type:"integer"` // HDR Master Display Information must be provided by a color grader, using // color grading tools. Range is 0 to 50,000, each increment represents 0.00002 // in CIE1931 color coordinate. Note that this setting is not for color correction. WhitePointY *int64 `locationName:"whitePointY" type:"integer"` } // String returns the string representation func (s Hdr10Metadata) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Hdr10Metadata) GoString() string { return s.String() } // SetBluePrimaryX sets the BluePrimaryX field's value. func (s *Hdr10Metadata) SetBluePrimaryX(v int64) *Hdr10Metadata { s.BluePrimaryX = &v return s } // SetBluePrimaryY sets the BluePrimaryY field's value. func (s *Hdr10Metadata) SetBluePrimaryY(v int64) *Hdr10Metadata { s.BluePrimaryY = &v return s } // SetGreenPrimaryX sets the GreenPrimaryX field's value. func (s *Hdr10Metadata) SetGreenPrimaryX(v int64) *Hdr10Metadata { s.GreenPrimaryX = &v return s } // SetGreenPrimaryY sets the GreenPrimaryY field's value. func (s *Hdr10Metadata) SetGreenPrimaryY(v int64) *Hdr10Metadata { s.GreenPrimaryY = &v return s } // SetMaxContentLightLevel sets the MaxContentLightLevel field's value. func (s *Hdr10Metadata) SetMaxContentLightLevel(v int64) *Hdr10Metadata { s.MaxContentLightLevel = &v return s } // SetMaxFrameAverageLightLevel sets the MaxFrameAverageLightLevel field's value. func (s *Hdr10Metadata) SetMaxFrameAverageLightLevel(v int64) *Hdr10Metadata { s.MaxFrameAverageLightLevel = &v return s } // SetMaxLuminance sets the MaxLuminance field's value. func (s *Hdr10Metadata) SetMaxLuminance(v int64) *Hdr10Metadata { s.MaxLuminance = &v return s } // SetMinLuminance sets the MinLuminance field's value. func (s *Hdr10Metadata) SetMinLuminance(v int64) *Hdr10Metadata { s.MinLuminance = &v return s } // SetRedPrimaryX sets the RedPrimaryX field's value. func (s *Hdr10Metadata) SetRedPrimaryX(v int64) *Hdr10Metadata { s.RedPrimaryX = &v return s } // SetRedPrimaryY sets the RedPrimaryY field's value. func (s *Hdr10Metadata) SetRedPrimaryY(v int64) *Hdr10Metadata { s.RedPrimaryY = &v return s } // SetWhitePointX sets the WhitePointX field's value. func (s *Hdr10Metadata) SetWhitePointX(v int64) *Hdr10Metadata { s.WhitePointX = &v return s } // SetWhitePointY sets the WhitePointY field's value. func (s *Hdr10Metadata) SetWhitePointY(v int64) *Hdr10Metadata { s.WhitePointY = &v return s } // Caption Language Mapping type HlsCaptionLanguageMapping struct { _ struct{} `type:"structure"` // Caption channel. CaptionChannel *int64 `locationName:"captionChannel" type:"integer"` // Specify the language for this caption channel, using the ISO 639-2 or ISO // 639-3 three-letter language code CustomLanguageCode *string `locationName:"customLanguageCode" min:"3" type:"string"` // Specify the language, using the ISO 639-2 three-letter code listed at https://www.loc.gov/standards/iso639-2/php/code_list.php. LanguageCode *string `locationName:"languageCode" type:"string" enum:"LanguageCode"` // Caption language description. LanguageDescription *string `locationName:"languageDescription" type:"string"` } // String returns the string representation func (s HlsCaptionLanguageMapping) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HlsCaptionLanguageMapping) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *HlsCaptionLanguageMapping) Validate() error { invalidParams := request.ErrInvalidParams{Context: "HlsCaptionLanguageMapping"} if s.CaptionChannel != nil && *s.CaptionChannel < -2.147483648e+09 { invalidParams.Add(request.NewErrParamMinValue("CaptionChannel", -2.147483648e+09)) } if s.CustomLanguageCode != nil && len(*s.CustomLanguageCode) < 3 { invalidParams.Add(request.NewErrParamMinLen("CustomLanguageCode", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCaptionChannel sets the CaptionChannel field's value. func (s *HlsCaptionLanguageMapping) SetCaptionChannel(v int64) *HlsCaptionLanguageMapping { s.CaptionChannel = &v return s } // SetCustomLanguageCode sets the CustomLanguageCode field's value. func (s *HlsCaptionLanguageMapping) SetCustomLanguageCode(v string) *HlsCaptionLanguageMapping { s.CustomLanguageCode = &v return s } // SetLanguageCode sets the LanguageCode field's value. func (s *HlsCaptionLanguageMapping) SetLanguageCode(v string) *HlsCaptionLanguageMapping { s.LanguageCode = &v return s } // SetLanguageDescription sets the LanguageDescription field's value. func (s *HlsCaptionLanguageMapping) SetLanguageDescription(v string) *HlsCaptionLanguageMapping { s.LanguageDescription = &v return s } // Settings for HLS encryption type HlsEncryptionSettings struct { _ struct{} `type:"structure"` // This is a 128-bit, 16-byte hex value represented by a 32-character text string. // If this parameter is not set then the Initialization Vector will follow the // segment number by default. ConstantInitializationVector *string `locationName:"constantInitializationVector" min:"32" type:"string"` // Encrypts the segments with the given encryption scheme. Leave blank to disable. // Selecting 'Disabled' in the web interface also disables encryption. EncryptionMethod *string `locationName:"encryptionMethod" type:"string" enum:"HlsEncryptionType"` // The Initialization Vector is a 128-bit number used in conjunction with the // key for encrypting blocks. If set to INCLUDE, Initialization Vector is listed // in the manifest. Otherwise Initialization Vector is not in the manifest. InitializationVectorInManifest *string `locationName:"initializationVectorInManifest" type:"string" enum:"HlsInitializationVectorInManifest"` // Enable this setting to insert the EXT-X-SESSION-KEY element into the master // playlist. This allows for offline Apple HLS FairPlay content protection. OfflineEncrypted *string `locationName:"offlineEncrypted" type:"string" enum:"HlsOfflineEncrypted"` // Settings for use with a SPEKE key provider SpekeKeyProvider *SpekeKeyProvider `locationName:"spekeKeyProvider" type:"structure"` // Use these settings to set up encryption with a static key provider. StaticKeyProvider *StaticKeyProvider `locationName:"staticKeyProvider" type:"structure"` // Indicates which type of key provider is used for encryption. Type *string `locationName:"type" type:"string" enum:"HlsKeyProviderType"` } // String returns the string representation func (s HlsEncryptionSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HlsEncryptionSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *HlsEncryptionSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "HlsEncryptionSettings"} if s.ConstantInitializationVector != nil && len(*s.ConstantInitializationVector) < 32 { invalidParams.Add(request.NewErrParamMinLen("ConstantInitializationVector", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetConstantInitializationVector sets the ConstantInitializationVector field's value. func (s *HlsEncryptionSettings) SetConstantInitializationVector(v string) *HlsEncryptionSettings { s.ConstantInitializationVector = &v return s } // SetEncryptionMethod sets the EncryptionMethod field's value. func (s *HlsEncryptionSettings) SetEncryptionMethod(v string) *HlsEncryptionSettings { s.EncryptionMethod = &v return s } // SetInitializationVectorInManifest sets the InitializationVectorInManifest field's value. func (s *HlsEncryptionSettings) SetInitializationVectorInManifest(v string) *HlsEncryptionSettings { s.InitializationVectorInManifest = &v return s } // SetOfflineEncrypted sets the OfflineEncrypted field's value. func (s *HlsEncryptionSettings) SetOfflineEncrypted(v string) *HlsEncryptionSettings { s.OfflineEncrypted = &v return s } // SetSpekeKeyProvider sets the SpekeKeyProvider field's value. func (s *HlsEncryptionSettings) SetSpekeKeyProvider(v *SpekeKeyProvider) *HlsEncryptionSettings { s.SpekeKeyProvider = v return s } // SetStaticKeyProvider sets the StaticKeyProvider field's value. func (s *HlsEncryptionSettings) SetStaticKeyProvider(v *StaticKeyProvider) *HlsEncryptionSettings { s.StaticKeyProvider = v return s } // SetType sets the Type field's value. func (s *HlsEncryptionSettings) SetType(v string) *HlsEncryptionSettings { s.Type = &v return s } // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to // HLS_GROUP_SETTINGS. type HlsGroupSettings struct { _ struct{} `type:"structure"` // Choose one or more ad marker types to pass SCTE35 signals through to this // group of Apple HLS outputs. AdMarkers []*string `locationName:"adMarkers" type:"list"` // A partial URI prefix that will be prepended to each output in the media .m3u8 // file. Can be used if base manifest is delivered from a different URL than // the main .m3u8 file. BaseUrl *string `locationName:"baseUrl" type:"string"` // Language to be used on Caption outputs CaptionLanguageMappings []*HlsCaptionLanguageMapping `locationName:"captionLanguageMappings" type:"list"` // Applies only to 608 Embedded output captions. Insert: Include CLOSED-CAPTIONS // lines in the manifest. Specify at least one language in the CC1 Language // Code field. One CLOSED-CAPTION line is added for each Language Code you specify. // Make sure to specify the languages in the order in which they appear in the // original source (if the source is embedded format) or the order of the caption // selectors (if the source is other than embedded). Otherwise, languages in // the manifest will not match up properly with the output captions. None: Include // CLOSED-CAPTIONS=NONE line in the manifest. Omit: Omit any CLOSED-CAPTIONS // line from the manifest. CaptionLanguageSetting *string `locationName:"captionLanguageSetting" type:"string" enum:"HlsCaptionLanguageSetting"` // When set to ENABLED, sets #EXT-X-ALLOW-CACHE:no tag, which prevents client // from saving media segments for later replay. ClientCache *string `locationName:"clientCache" type:"string" enum:"HlsClientCache"` // Specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist // generation. CodecSpecification *string `locationName:"codecSpecification" type:"string" enum:"HlsCodecSpecification"` // Use Destination (Destination) to specify the S3 output location and the output // filename base. Destination accepts format identifiers. If you do not specify // the base filename in the URI, the service will use the filename of the input // file. If your job has multiple inputs, the service uses the filename of the // first input file. Destination *string `locationName:"destination" type:"string"` // Indicates whether segments should be placed in subdirectories. DirectoryStructure *string `locationName:"directoryStructure" type:"string" enum:"HlsDirectoryStructure"` // DRM settings. Encryption *HlsEncryptionSettings `locationName:"encryption" type:"structure"` // When set to GZIP, compresses HLS playlist. ManifestCompression *string `locationName:"manifestCompression" type:"string" enum:"HlsManifestCompression"` // Indicates whether the output manifest should use floating point values for // segment duration. ManifestDurationFormat *string `locationName:"manifestDurationFormat" type:"string" enum:"HlsManifestDurationFormat"` // Keep this setting at the default value of 0, unless you are troubleshooting // a problem with how devices play back the end of your video asset. If you // know that player devices are hanging on the final segment of your video because // the length of your final segment is too short, use this setting to specify // a minimum final segment length, in seconds. Choose a value that is greater // than or equal to 1 and less than your segment length. When you specify a // value for this setting, the encoder will combine any final segment that is // shorter than the length that you specify with the previous segment. For example, // your segment length is 3 seconds and your final segment is .5 seconds without // a minimum final segment length; when you set the minimum final segment length // to 1, your final segment is 3.5 seconds. MinFinalSegmentLength *float64 `locationName:"minFinalSegmentLength" type:"double"` // When set, Minimum Segment Size is enforced by looking ahead and back within // the specified range for a nearby avail and extending the segment size if // needed. MinSegmentLength *int64 `locationName:"minSegmentLength" type:"integer"` // Indicates whether the .m3u8 manifest file should be generated for this HLS // output group. OutputSelection *string `locationName:"outputSelection" type:"string" enum:"HlsOutputSelection"` // Includes or excludes EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files. // The value is calculated as follows: either the program date and time are // initialized using the input timecode source, or the time is initialized using // the input timecode source and the date is initialized using the timestamp_offset. ProgramDateTime *string `locationName:"programDateTime" type:"string" enum:"HlsProgramDateTime"` // Period of insertion of EXT-X-PROGRAM-DATE-TIME entry, in seconds. ProgramDateTimePeriod *int64 `locationName:"programDateTimePeriod" type:"integer"` // When set to SINGLE_FILE, emits program as a single media resource (.ts) file, // uses #EXT-X-BYTERANGE tags to index segment for playback. SegmentControl *string `locationName:"segmentControl" type:"string" enum:"HlsSegmentControl"` // Length of MPEG-2 Transport Stream segments to create (in seconds). Note that // segments will end on the next keyframe after this number of seconds, so actual // segment length may be longer. SegmentLength *int64 `locationName:"segmentLength" min:"1" type:"integer"` // Number of segments to write to a subdirectory before starting a new one. // directoryStructure must be SINGLE_DIRECTORY for this setting to have an effect. SegmentsPerSubdirectory *int64 `locationName:"segmentsPerSubdirectory" min:"1" type:"integer"` // Include or exclude RESOLUTION attribute for video in EXT-X-STREAM-INF tag // of variant manifest. StreamInfResolution *string `locationName:"streamInfResolution" type:"string" enum:"HlsStreamInfResolution"` // Indicates ID3 frame that has the timecode. TimedMetadataId3Frame *string `locationName:"timedMetadataId3Frame" type:"string" enum:"HlsTimedMetadataId3Frame"` // Timed Metadata interval in seconds. TimedMetadataId3Period *int64 `locationName:"timedMetadataId3Period" type:"integer"` // Provides an extra millisecond delta offset to fine tune the timestamps. TimestampDeltaMilliseconds *int64 `locationName:"timestampDeltaMilliseconds" type:"integer"` } // String returns the string representation func (s HlsGroupSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HlsGroupSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *HlsGroupSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "HlsGroupSettings"} if s.SegmentLength != nil && *s.SegmentLength < 1 { invalidParams.Add(request.NewErrParamMinValue("SegmentLength", 1)) } if s.SegmentsPerSubdirectory != nil && *s.SegmentsPerSubdirectory < 1 { invalidParams.Add(request.NewErrParamMinValue("SegmentsPerSubdirectory", 1)) } if s.TimedMetadataId3Period != nil && *s.TimedMetadataId3Period < -2.147483648e+09 { invalidParams.Add(request.NewErrParamMinValue("TimedMetadataId3Period", -2.147483648e+09)) } if s.TimestampDeltaMilliseconds != nil && *s.TimestampDeltaMilliseconds < -2.147483648e+09 { invalidParams.Add(request.NewErrParamMinValue("TimestampDeltaMilliseconds", -2.147483648e+09)) } if s.CaptionLanguageMappings != nil { for i, v := range s.CaptionLanguageMappings { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionLanguageMappings", i), err.(request.ErrInvalidParams)) } } } if s.Encryption != nil { if err := s.Encryption.Validate(); err != nil { invalidParams.AddNested("Encryption", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAdMarkers sets the AdMarkers field's value. func (s *HlsGroupSettings) SetAdMarkers(v []*string) *HlsGroupSettings { s.AdMarkers = v return s } // SetBaseUrl sets the BaseUrl field's value. func (s *HlsGroupSettings) SetBaseUrl(v string) *HlsGroupSettings { s.BaseUrl = &v return s } // SetCaptionLanguageMappings sets the CaptionLanguageMappings field's value. func (s *HlsGroupSettings) SetCaptionLanguageMappings(v []*HlsCaptionLanguageMapping) *HlsGroupSettings { s.CaptionLanguageMappings = v return s } // SetCaptionLanguageSetting sets the CaptionLanguageSetting field's value. func (s *HlsGroupSettings) SetCaptionLanguageSetting(v string) *HlsGroupSettings { s.CaptionLanguageSetting = &v return s } // SetClientCache sets the ClientCache field's value. func (s *HlsGroupSettings) SetClientCache(v string) *HlsGroupSettings { s.ClientCache = &v return s } // SetCodecSpecification sets the CodecSpecification field's value. func (s *HlsGroupSettings) SetCodecSpecification(v string) *HlsGroupSettings { s.CodecSpecification = &v return s } // SetDestination sets the Destination field's value. func (s *HlsGroupSettings) SetDestination(v string) *HlsGroupSettings { s.Destination = &v return s } // SetDirectoryStructure sets the DirectoryStructure field's value. func (s *HlsGroupSettings) SetDirectoryStructure(v string) *HlsGroupSettings { s.DirectoryStructure = &v return s } // SetEncryption sets the Encryption field's value. func (s *HlsGroupSettings) SetEncryption(v *HlsEncryptionSettings) *HlsGroupSettings { s.Encryption = v return s } // SetManifestCompression sets the ManifestCompression field's value. func (s *HlsGroupSettings) SetManifestCompression(v string) *HlsGroupSettings { s.ManifestCompression = &v return s } // SetManifestDurationFormat sets the ManifestDurationFormat field's value. func (s *HlsGroupSettings) SetManifestDurationFormat(v string) *HlsGroupSettings { s.ManifestDurationFormat = &v return s } // SetMinFinalSegmentLength sets the MinFinalSegmentLength field's value. func (s *HlsGroupSettings) SetMinFinalSegmentLength(v float64) *HlsGroupSettings { s.MinFinalSegmentLength = &v return s } // SetMinSegmentLength sets the MinSegmentLength field's value. func (s *HlsGroupSettings) SetMinSegmentLength(v int64) *HlsGroupSettings { s.MinSegmentLength = &v return s } // SetOutputSelection sets the OutputSelection field's value. func (s *HlsGroupSettings) SetOutputSelection(v string) *HlsGroupSettings { s.OutputSelection = &v return s } // SetProgramDateTime sets the ProgramDateTime field's value. func (s *HlsGroupSettings) SetProgramDateTime(v string) *HlsGroupSettings { s.ProgramDateTime = &v return s } // SetProgramDateTimePeriod sets the ProgramDateTimePeriod field's value. func (s *HlsGroupSettings) SetProgramDateTimePeriod(v int64) *HlsGroupSettings { s.ProgramDateTimePeriod = &v return s } // SetSegmentControl sets the SegmentControl field's value. func (s *HlsGroupSettings) SetSegmentControl(v string) *HlsGroupSettings { s.SegmentControl = &v return s } // SetSegmentLength sets the SegmentLength field's value. func (s *HlsGroupSettings) SetSegmentLength(v int64) *HlsGroupSettings { s.SegmentLength = &v return s } // SetSegmentsPerSubdirectory sets the SegmentsPerSubdirectory field's value. func (s *HlsGroupSettings) SetSegmentsPerSubdirectory(v int64) *HlsGroupSettings { s.SegmentsPerSubdirectory = &v return s } // SetStreamInfResolution sets the StreamInfResolution field's value. func (s *HlsGroupSettings) SetStreamInfResolution(v string) *HlsGroupSettings { s.StreamInfResolution = &v return s } // SetTimedMetadataId3Frame sets the TimedMetadataId3Frame field's value. func (s *HlsGroupSettings) SetTimedMetadataId3Frame(v string) *HlsGroupSettings { s.TimedMetadataId3Frame = &v return s } // SetTimedMetadataId3Period sets the TimedMetadataId3Period field's value. func (s *HlsGroupSettings) SetTimedMetadataId3Period(v int64) *HlsGroupSettings { s.TimedMetadataId3Period = &v return s } // SetTimestampDeltaMilliseconds sets the TimestampDeltaMilliseconds field's value. func (s *HlsGroupSettings) SetTimestampDeltaMilliseconds(v int64) *HlsGroupSettings { s.TimestampDeltaMilliseconds = &v return s } // Settings for HLS output groups type HlsSettings struct { _ struct{} `type:"structure"` // Specifies the group to which the audio Rendition belongs. AudioGroupId *string `locationName:"audioGroupId" type:"string"` // List all the audio groups that are used with the video output stream. Input // all the audio GROUP-IDs that are associated to the video, separate by ','. AudioRenditionSets *string `locationName:"audioRenditionSets" type:"string"` // Four types of audio-only tracks are supported: Audio-Only Variant Stream // The client can play back this audio-only stream instead of video in low-bandwidth // scenarios. Represented as an EXT-X-STREAM-INF in the HLS manifest. Alternate // Audio, Auto Select, Default Alternate rendition that the client should try // to play back by default. Represented as an EXT-X-MEDIA in the HLS manifest // with DEFAULT=YES, AUTOSELECT=YES Alternate Audio, Auto Select, Not Default // Alternate rendition that the client may try to play back by default. Represented // as an EXT-X-MEDIA in the HLS manifest with DEFAULT=NO, AUTOSELECT=YES Alternate // Audio, not Auto Select Alternate rendition that the client will not try to // play back by default. Represented as an EXT-X-MEDIA in the HLS manifest with // DEFAULT=NO, AUTOSELECT=NO AudioTrackType *string `locationName:"audioTrackType" type:"string" enum:"HlsAudioTrackType"` // When set to INCLUDE, writes I-Frame Only Manifest in addition to the HLS // manifest IFrameOnlyManifest *string `locationName:"iFrameOnlyManifest" type:"string" enum:"HlsIFrameOnlyManifest"` // String concatenated to end of segment filenames. Accepts "Format Identifiers":#format_identifier_parameters. SegmentModifier *string `locationName:"segmentModifier" type:"string"` } // String returns the string representation func (s HlsSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s HlsSettings) GoString() string { return s.String() } // SetAudioGroupId sets the AudioGroupId field's value. func (s *HlsSettings) SetAudioGroupId(v string) *HlsSettings { s.AudioGroupId = &v return s } // SetAudioRenditionSets sets the AudioRenditionSets field's value. func (s *HlsSettings) SetAudioRenditionSets(v string) *HlsSettings { s.AudioRenditionSets = &v return s } // SetAudioTrackType sets the AudioTrackType field's value. func (s *HlsSettings) SetAudioTrackType(v string) *HlsSettings { s.AudioTrackType = &v return s } // SetIFrameOnlyManifest sets the IFrameOnlyManifest field's value. func (s *HlsSettings) SetIFrameOnlyManifest(v string) *HlsSettings { s.IFrameOnlyManifest = &v return s } // SetSegmentModifier sets the SegmentModifier field's value. func (s *HlsSettings) SetSegmentModifier(v string) *HlsSettings { s.SegmentModifier = &v return s } // To insert ID3 tags in your output, specify two values. Use ID3 tag (Id3) // to specify the base 64 encoded string and use Timecode (TimeCode) to specify // the time when the tag should be inserted. To insert multiple ID3 tags in // your output, create multiple instances of ID3 insertion (Id3Insertion). type Id3Insertion struct { _ struct{} `type:"structure"` // Use ID3 tag (Id3) to provide a tag value in base64-encode format. Id3 *string `locationName:"id3" type:"string"` // Provide a Timecode (TimeCode) in HH:MM:SS:FF or HH:MM:SS;FF format. Timecode *string `locationName:"timecode" type:"string"` } // String returns the string representation func (s Id3Insertion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Id3Insertion) GoString() string { return s.String() } // SetId3 sets the Id3 field's value. func (s *Id3Insertion) SetId3(v string) *Id3Insertion { s.Id3 = &v return s } // SetTimecode sets the Timecode field's value. func (s *Id3Insertion) SetTimecode(v string) *Id3Insertion { s.Timecode = &v return s } // Enable the image inserter feature to include a graphic overlay on your video. // Enable or disable this feature for each input or output individually. This // setting is disabled by default. type ImageInserter struct { _ struct{} `type:"structure"` // Specify the images that you want to overlay on your video. The images must // be PNG or TGA files. InsertableImages []*InsertableImage `locationName:"insertableImages" type:"list"` } // String returns the string representation func (s ImageInserter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ImageInserter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ImageInserter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ImageInserter"} if s.InsertableImages != nil { for i, v := range s.InsertableImages { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InsertableImages", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetInsertableImages sets the InsertableImages field's value. func (s *ImageInserter) SetInsertableImages(v []*InsertableImage) *ImageInserter { s.InsertableImages = v return s } // Specifies media input type Input struct { _ struct{} `type:"structure"` // Specifies set of audio selectors within an input to combine. An input may // have multiple audio selector groups. See "Audio Selector Group":#inputs-audio_selector_group // for more information. AudioSelectorGroups map[string]*AudioSelectorGroup `locationName:"audioSelectorGroups" type:"map"` // Use Audio selectors (AudioSelectors) to specify a track or set of tracks // from the input that you will use in your outputs. You can use mutiple Audio // selectors per input. AudioSelectors map[string]*AudioSelector `locationName:"audioSelectors" type:"map"` // Use Captions selectors (CaptionSelectors) to specify the captions data from // the input that you will use in your outputs. You can use mutiple captions // selectors per input. CaptionSelectors map[string]*CaptionSelector `locationName:"captionSelectors" type:"map"` // Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. // Default is disabled. Only manaully controllable for MPEG2 and uncompressed // video inputs. DeblockFilter *string `locationName:"deblockFilter" type:"string" enum:"InputDeblockFilter"` // Settings for decrypting any input files that are encrypted. DecryptionSettings *InputDecryptionSettings `locationName:"decryptionSettings" type:"structure"` // Enable Denoise (InputDenoiseFilter) to filter noise from the input. Default // is disabled. Only applicable to MPEG2, H.264, H.265, and uncompressed video // inputs. DenoiseFilter *string `locationName:"denoiseFilter" type:"string" enum:"InputDenoiseFilter"` // Specify the source file for your transcoding job. You can use multiple inputs // in a single job. The service concatenates these inputs, in the order that // you specify them in the job, to create the outputs. If your input format // is IMF, specify your input by providing the path to your CPL. For example, // "s3://bucket/vf/cpl.xml". If the CPL is in an incomplete IMP, make sure to // use *Supplemental IMPs* (SupplementalImps) to specify any supplemental IMPs // that contain assets referenced by the CPL. FileInput *string `locationName:"fileInput" type:"string"` // Use Filter enable (InputFilterEnable) to specify how the transcoding service // applies the denoise and deblock filters. You must also enable the filters // separately, with Denoise (InputDenoiseFilter) and Deblock (InputDeblockFilter). // * Auto - The transcoding service determines whether to apply filtering, depending // on input type and quality. * Disable - The input is not filtered. This is // true even if you use the API to enable them in (InputDeblockFilter) and (InputDeblockFilter). // * Force - The in put is filtered regardless of input type. FilterEnable *string `locationName:"filterEnable" type:"string" enum:"InputFilterEnable"` // Use Filter strength (FilterStrength) to adjust the magnitude the input filter // settings (Deblock and Denoise). The range is -5 to 5. Default is 0. FilterStrength *int64 `locationName:"filterStrength" type:"integer"` // Enable the image inserter feature to include a graphic overlay on your video. // Enable or disable this feature for each input individually. This setting // is disabled by default. ImageInserter *ImageInserter `locationName:"imageInserter" type:"structure"` // (InputClippings) contains sets of start and end times that together specify // a portion of the input to be used in the outputs. If you provide only a start // time, the clip will be the entire input from that point to the end. If you // provide only an end time, it will be the entire input up to that point. When // you specify more than one input clip, the transcoding service creates the // job outputs by stringing the clips together in the order you specify them. InputClippings []*InputClipping `locationName:"inputClippings" type:"list"` // Use Program (programNumber) to select a specific program from within a multi-program // transport stream. Note that Quad 4K is not currently supported. Default is // the first program within the transport stream. If the program you specify // doesn't exist, the transcoding service will use this default. ProgramNumber *int64 `locationName:"programNumber" min:"1" type:"integer"` // Set PSI control (InputPsiControl) for transport stream inputs to specify // which data the demux process to scans. * Ignore PSI - Scan all PIDs for audio // and video. * Use PSI - Scan only PSI data. PsiControl *string `locationName:"psiControl" type:"string" enum:"InputPsiControl"` // Provide a list of any necessary supplemental IMPs. You need supplemental // IMPs if the CPL that you're using for your input is in an incomplete IMP. // Specify either the supplemental IMP directories with a trailing slash or // the ASSETMAP.xml files. For example ["s3://bucket/ov/", "s3://bucket/vf2/ASSETMAP.xml"]. // You don't need to specify the IMP that contains your input CPL, because the // service automatically detects it. SupplementalImps []*string `locationName:"supplementalImps" type:"list"` // Timecode source under input settings (InputTimecodeSource) only affects the // behavior of features that apply to a single input at a time, such as input // clipping and synchronizing some captions formats. Use this setting to specify // whether the service counts frames by timecodes embedded in the video (EMBEDDED) // or by starting the first frame at zero (ZEROBASED). In both cases, the timecode // format is HH:MM:SS:FF or HH:MM:SS;FF, where FF is the frame number. Only // set this to EMBEDDED if your source video has embedded timecodes. TimecodeSource *string `locationName:"timecodeSource" type:"string" enum:"InputTimecodeSource"` // Selector for video. VideoSelector *VideoSelector `locationName:"videoSelector" type:"structure"` } // String returns the string representation func (s Input) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Input) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Input) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Input"} if s.FilterStrength != nil && *s.FilterStrength < -5 { invalidParams.Add(request.NewErrParamMinValue("FilterStrength", -5)) } if s.ProgramNumber != nil && *s.ProgramNumber < 1 { invalidParams.Add(request.NewErrParamMinValue("ProgramNumber", 1)) } if s.AudioSelectors != nil { for i, v := range s.AudioSelectors { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AudioSelectors", i), err.(request.ErrInvalidParams)) } } } if s.CaptionSelectors != nil { for i, v := range s.CaptionSelectors { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionSelectors", i), err.(request.ErrInvalidParams)) } } } if s.DecryptionSettings != nil { if err := s.DecryptionSettings.Validate(); err != nil { invalidParams.AddNested("DecryptionSettings", err.(request.ErrInvalidParams)) } } if s.ImageInserter != nil { if err := s.ImageInserter.Validate(); err != nil { invalidParams.AddNested("ImageInserter", err.(request.ErrInvalidParams)) } } if s.VideoSelector != nil { if err := s.VideoSelector.Validate(); err != nil { invalidParams.AddNested("VideoSelector", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAudioSelectorGroups sets the AudioSelectorGroups field's value. func (s *Input) SetAudioSelectorGroups(v map[string]*AudioSelectorGroup) *Input { s.AudioSelectorGroups = v return s } // SetAudioSelectors sets the AudioSelectors field's value. func (s *Input) SetAudioSelectors(v map[string]*AudioSelector) *Input { s.AudioSelectors = v return s } // SetCaptionSelectors sets the CaptionSelectors field's value. func (s *Input) SetCaptionSelectors(v map[string]*CaptionSelector) *Input { s.CaptionSelectors = v return s } // SetDeblockFilter sets the DeblockFilter field's value. func (s *Input) SetDeblockFilter(v string) *Input { s.DeblockFilter = &v return s } // SetDecryptionSettings sets the DecryptionSettings field's value. func (s *Input) SetDecryptionSettings(v *InputDecryptionSettings) *Input { s.DecryptionSettings = v return s } // SetDenoiseFilter sets the DenoiseFilter field's value. func (s *Input) SetDenoiseFilter(v string) *Input { s.DenoiseFilter = &v return s } // SetFileInput sets the FileInput field's value. func (s *Input) SetFileInput(v string) *Input { s.FileInput = &v return s } // SetFilterEnable sets the FilterEnable field's value. func (s *Input) SetFilterEnable(v string) *Input { s.FilterEnable = &v return s } // SetFilterStrength sets the FilterStrength field's value. func (s *Input) SetFilterStrength(v int64) *Input { s.FilterStrength = &v return s } // SetImageInserter sets the ImageInserter field's value. func (s *Input) SetImageInserter(v *ImageInserter) *Input { s.ImageInserter = v return s } // SetInputClippings sets the InputClippings field's value. func (s *Input) SetInputClippings(v []*InputClipping) *Input { s.InputClippings = v return s } // SetProgramNumber sets the ProgramNumber field's value. func (s *Input) SetProgramNumber(v int64) *Input { s.ProgramNumber = &v return s } // SetPsiControl sets the PsiControl field's value. func (s *Input) SetPsiControl(v string) *Input { s.PsiControl = &v return s } // SetSupplementalImps sets the SupplementalImps field's value. func (s *Input) SetSupplementalImps(v []*string) *Input { s.SupplementalImps = v return s } // SetTimecodeSource sets the TimecodeSource field's value. func (s *Input) SetTimecodeSource(v string) *Input { s.TimecodeSource = &v return s } // SetVideoSelector sets the VideoSelector field's value. func (s *Input) SetVideoSelector(v *VideoSelector) *Input { s.VideoSelector = v return s } // To transcode only portions of your input (clips), include one Input clipping // (one instance of InputClipping in the JSON job file) for each input clip. // All input clips you specify will be included in every output of the job. type InputClipping struct { _ struct{} `type:"structure"` // Set End timecode (EndTimecode) to the end of the portion of the input you // are clipping. The frame corresponding to the End timecode value is included // in the clip. Start timecode or End timecode may be left blank, but not both. // Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the hour, MM is the // minute, SS is the second, and FF is the frame number. When choosing this // value, take into account your setting for timecode source under input settings // (InputTimecodeSource). For example, if you have embedded timecodes that start // at 01:00:00:00 and you want your clip to end six minutes into the video, // use 01:06:00:00. EndTimecode *string `locationName:"endTimecode" type:"string"` // Set Start timecode (StartTimecode) to the beginning of the portion of the // input you are clipping. The frame corresponding to the Start timecode value // is included in the clip. Start timecode or End timecode may be left blank, // but not both. Use the format HH:MM:SS:FF or HH:MM:SS;FF, where HH is the // hour, MM is the minute, SS is the second, and FF is the frame number. When // choosing this value, take into account your setting for Input timecode source. // For example, if you have embedded timecodes that start at 01:00:00:00 and // you want your clip to begin five minutes into the video, use 01:05:00:00. StartTimecode *string `locationName:"startTimecode" type:"string"` } // String returns the string representation func (s InputClipping) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InputClipping) GoString() string { return s.String() } // SetEndTimecode sets the EndTimecode field's value. func (s *InputClipping) SetEndTimecode(v string) *InputClipping { s.EndTimecode = &v return s } // SetStartTimecode sets the StartTimecode field's value. func (s *InputClipping) SetStartTimecode(v string) *InputClipping { s.StartTimecode = &v return s } // Specify the decryption settings used to decrypt encrypted input type InputDecryptionSettings struct { _ struct{} `type:"structure"` // This specifies how the encrypted file needs to be decrypted. DecryptionMode *string `locationName:"decryptionMode" type:"string" enum:"DecryptionMode"` // Decryption key either 128 or 192 or 256 bits encrypted with KMS EncryptedDecryptionKey *string `locationName:"encryptedDecryptionKey" min:"24" type:"string"` // Initialization Vector 96 bits (CTR/GCM mode only) or 128 bits. InitializationVector *string `locationName:"initializationVector" min:"16" type:"string"` // The AWS region in which decryption key was encrypted with KMS KmsKeyRegion *string `locationName:"kmsKeyRegion" min:"9" type:"string"` } // String returns the string representation func (s InputDecryptionSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InputDecryptionSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InputDecryptionSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InputDecryptionSettings"} if s.EncryptedDecryptionKey != nil && len(*s.EncryptedDecryptionKey) < 24 { invalidParams.Add(request.NewErrParamMinLen("EncryptedDecryptionKey", 24)) } if s.InitializationVector != nil && len(*s.InitializationVector) < 16 { invalidParams.Add(request.NewErrParamMinLen("InitializationVector", 16)) } if s.KmsKeyRegion != nil && len(*s.KmsKeyRegion) < 9 { invalidParams.Add(request.NewErrParamMinLen("KmsKeyRegion", 9)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDecryptionMode sets the DecryptionMode field's value. func (s *InputDecryptionSettings) SetDecryptionMode(v string) *InputDecryptionSettings { s.DecryptionMode = &v return s } // SetEncryptedDecryptionKey sets the EncryptedDecryptionKey field's value. func (s *InputDecryptionSettings) SetEncryptedDecryptionKey(v string) *InputDecryptionSettings { s.EncryptedDecryptionKey = &v return s } // SetInitializationVector sets the InitializationVector field's value. func (s *InputDecryptionSettings) SetInitializationVector(v string) *InputDecryptionSettings { s.InitializationVector = &v return s } // SetKmsKeyRegion sets the KmsKeyRegion field's value. func (s *InputDecryptionSettings) SetKmsKeyRegion(v string) *InputDecryptionSettings { s.KmsKeyRegion = &v return s } // Specified video input in a template. type InputTemplate struct { _ struct{} `type:"structure"` // Specifies set of audio selectors within an input to combine. An input may // have multiple audio selector groups. See "Audio Selector Group":#inputs-audio_selector_group // for more information. AudioSelectorGroups map[string]*AudioSelectorGroup `locationName:"audioSelectorGroups" type:"map"` // Use Audio selectors (AudioSelectors) to specify a track or set of tracks // from the input that you will use in your outputs. You can use mutiple Audio // selectors per input. AudioSelectors map[string]*AudioSelector `locationName:"audioSelectors" type:"map"` // Use Captions selectors (CaptionSelectors) to specify the captions data from // the input that you will use in your outputs. You can use mutiple captions // selectors per input. CaptionSelectors map[string]*CaptionSelector `locationName:"captionSelectors" type:"map"` // Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. // Default is disabled. Only manaully controllable for MPEG2 and uncompressed // video inputs. DeblockFilter *string `locationName:"deblockFilter" type:"string" enum:"InputDeblockFilter"` // Enable Denoise (InputDenoiseFilter) to filter noise from the input. Default // is disabled. Only applicable to MPEG2, H.264, H.265, and uncompressed video // inputs. DenoiseFilter *string `locationName:"denoiseFilter" type:"string" enum:"InputDenoiseFilter"` // Use Filter enable (InputFilterEnable) to specify how the transcoding service // applies the denoise and deblock filters. You must also enable the filters // separately, with Denoise (InputDenoiseFilter) and Deblock (InputDeblockFilter). // * Auto - The transcoding service determines whether to apply filtering, depending // on input type and quality. * Disable - The input is not filtered. This is // true even if you use the API to enable them in (InputDeblockFilter) and (InputDeblockFilter). // * Force - The in put is filtered regardless of input type. FilterEnable *string `locationName:"filterEnable" type:"string" enum:"InputFilterEnable"` // Use Filter strength (FilterStrength) to adjust the magnitude the input filter // settings (Deblock and Denoise). The range is -5 to 5. Default is 0. FilterStrength *int64 `locationName:"filterStrength" type:"integer"` // Enable the image inserter feature to include a graphic overlay on your video. // Enable or disable this feature for each input individually. This setting // is disabled by default. ImageInserter *ImageInserter `locationName:"imageInserter" type:"structure"` // (InputClippings) contains sets of start and end times that together specify // a portion of the input to be used in the outputs. If you provide only a start // time, the clip will be the entire input from that point to the end. If you // provide only an end time, it will be the entire input up to that point. When // you specify more than one input clip, the transcoding service creates the // job outputs by stringing the clips together in the order you specify them. InputClippings []*InputClipping `locationName:"inputClippings" type:"list"` // Use Program (programNumber) to select a specific program from within a multi-program // transport stream. Note that Quad 4K is not currently supported. Default is // the first program within the transport stream. If the program you specify // doesn't exist, the transcoding service will use this default. ProgramNumber *int64 `locationName:"programNumber" min:"1" type:"integer"` // Set PSI control (InputPsiControl) for transport stream inputs to specify // which data the demux process to scans. * Ignore PSI - Scan all PIDs for audio // and video. * Use PSI - Scan only PSI data. PsiControl *string `locationName:"psiControl" type:"string" enum:"InputPsiControl"` // Timecode source under input settings (InputTimecodeSource) only affects the // behavior of features that apply to a single input at a time, such as input // clipping and synchronizing some captions formats. Use this setting to specify // whether the service counts frames by timecodes embedded in the video (EMBEDDED) // or by starting the first frame at zero (ZEROBASED). In both cases, the timecode // format is HH:MM:SS:FF or HH:MM:SS;FF, where FF is the frame number. Only // set this to EMBEDDED if your source video has embedded timecodes. TimecodeSource *string `locationName:"timecodeSource" type:"string" enum:"InputTimecodeSource"` // Selector for video. VideoSelector *VideoSelector `locationName:"videoSelector" type:"structure"` } // String returns the string representation func (s InputTemplate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InputTemplate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InputTemplate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InputTemplate"} if s.FilterStrength != nil && *s.FilterStrength < -5 { invalidParams.Add(request.NewErrParamMinValue("FilterStrength", -5)) } if s.ProgramNumber != nil && *s.ProgramNumber < 1 { invalidParams.Add(request.NewErrParamMinValue("ProgramNumber", 1)) } if s.AudioSelectors != nil { for i, v := range s.AudioSelectors { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AudioSelectors", i), err.(request.ErrInvalidParams)) } } } if s.CaptionSelectors != nil { for i, v := range s.CaptionSelectors { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionSelectors", i), err.(request.ErrInvalidParams)) } } } if s.ImageInserter != nil { if err := s.ImageInserter.Validate(); err != nil { invalidParams.AddNested("ImageInserter", err.(request.ErrInvalidParams)) } } if s.VideoSelector != nil { if err := s.VideoSelector.Validate(); err != nil { invalidParams.AddNested("VideoSelector", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAudioSelectorGroups sets the AudioSelectorGroups field's value. func (s *InputTemplate) SetAudioSelectorGroups(v map[string]*AudioSelectorGroup) *InputTemplate { s.AudioSelectorGroups = v return s } // SetAudioSelectors sets the AudioSelectors field's value. func (s *InputTemplate) SetAudioSelectors(v map[string]*AudioSelector) *InputTemplate { s.AudioSelectors = v return s } // SetCaptionSelectors sets the CaptionSelectors field's value. func (s *InputTemplate) SetCaptionSelectors(v map[string]*CaptionSelector) *InputTemplate { s.CaptionSelectors = v return s } // SetDeblockFilter sets the DeblockFilter field's value. func (s *InputTemplate) SetDeblockFilter(v string) *InputTemplate { s.DeblockFilter = &v return s } // SetDenoiseFilter sets the DenoiseFilter field's value. func (s *InputTemplate) SetDenoiseFilter(v string) *InputTemplate { s.DenoiseFilter = &v return s } // SetFilterEnable sets the FilterEnable field's value. func (s *InputTemplate) SetFilterEnable(v string) *InputTemplate { s.FilterEnable = &v return s } // SetFilterStrength sets the FilterStrength field's value. func (s *InputTemplate) SetFilterStrength(v int64) *InputTemplate { s.FilterStrength = &v return s } // SetImageInserter sets the ImageInserter field's value. func (s *InputTemplate) SetImageInserter(v *ImageInserter) *InputTemplate { s.ImageInserter = v return s } // SetInputClippings sets the InputClippings field's value. func (s *InputTemplate) SetInputClippings(v []*InputClipping) *InputTemplate { s.InputClippings = v return s } // SetProgramNumber sets the ProgramNumber field's value. func (s *InputTemplate) SetProgramNumber(v int64) *InputTemplate { s.ProgramNumber = &v return s } // SetPsiControl sets the PsiControl field's value. func (s *InputTemplate) SetPsiControl(v string) *InputTemplate { s.PsiControl = &v return s } // SetTimecodeSource sets the TimecodeSource field's value. func (s *InputTemplate) SetTimecodeSource(v string) *InputTemplate { s.TimecodeSource = &v return s } // SetVideoSelector sets the VideoSelector field's value. func (s *InputTemplate) SetVideoSelector(v *VideoSelector) *InputTemplate { s.VideoSelector = v return s } // Settings that specify how your still graphic overlay appears. type InsertableImage struct { _ struct{} `type:"structure"` // Specify the time, in milliseconds, for the image to remain on the output // video. This duration includes fade-in time but not fade-out time. Duration *int64 `locationName:"duration" type:"integer"` // Specify the length of time, in milliseconds, between the Start time that // you specify for the image insertion and the time that the image appears at // full opacity. Full opacity is the level that you specify for the opacity // setting. If you don't specify a value for Fade-in, the image will appear // abruptly at the overlay start time. FadeIn *int64 `locationName:"fadeIn" type:"integer"` // Specify the length of time, in milliseconds, between the end of the time // that you have specified for the image overlay Duration and when the overlaid // image has faded to total transparency. If you don't specify a value for Fade-out, // the image will disappear abruptly at the end of the inserted image duration. FadeOut *int64 `locationName:"fadeOut" type:"integer"` // Specify the height of the inserted image in pixels. If you specify a value // that's larger than the video resolution height, the service will crop your // overlaid image to fit. To use the native height of the image, keep this setting // blank. Height *int64 `locationName:"height" type:"integer"` // Specify the Amazon S3 location of the image that you want to overlay on the // video. Use a PNG or TGA file. ImageInserterInput *string `locationName:"imageInserterInput" min:"14" type:"string"` // Specify the distance, in pixels, between the inserted image and the left // edge of the video frame. Required for any image overlay that you specify. ImageX *int64 `locationName:"imageX" type:"integer"` // Specify the distance, in pixels, between the overlaid image and the top edge // of the video frame. Required for any image overlay that you specify. ImageY *int64 `locationName:"imageY" type:"integer"` // Specify how overlapping inserted images appear. Images with higher values // for Layer appear on top of images with lower values for Layer. Layer *int64 `locationName:"layer" type:"integer"` // Use Opacity (Opacity) to specify how much of the underlying video shows through // the inserted image. 0 is transparent and 100 is fully opaque. Default is // 50. Opacity *int64 `locationName:"opacity" type:"integer"` // Specify the timecode of the frame that you want the overlay to first appear // on. This must be in timecode (HH:MM:SS:FF or HH:MM:SS;FF) format. Remember // to take into account your timecode source settings. StartTime *string `locationName:"startTime" type:"string"` // Specify the width of the inserted image in pixels. If you specify a value // that's larger than the video resolution width, the service will crop your // overlaid image to fit. To use the native width of the image, keep this setting // blank. Width *int64 `locationName:"width" type:"integer"` } // String returns the string representation func (s InsertableImage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s InsertableImage) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *InsertableImage) Validate() error { invalidParams := request.ErrInvalidParams{Context: "InsertableImage"} if s.ImageInserterInput != nil && len(*s.ImageInserterInput) < 14 { invalidParams.Add(request.NewErrParamMinLen("ImageInserterInput", 14)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDuration sets the Duration field's value. func (s *InsertableImage) SetDuration(v int64) *InsertableImage { s.Duration = &v return s } // SetFadeIn sets the FadeIn field's value. func (s *InsertableImage) SetFadeIn(v int64) *InsertableImage { s.FadeIn = &v return s } // SetFadeOut sets the FadeOut field's value. func (s *InsertableImage) SetFadeOut(v int64) *InsertableImage { s.FadeOut = &v return s } // SetHeight sets the Height field's value. func (s *InsertableImage) SetHeight(v int64) *InsertableImage { s.Height = &v return s } // SetImageInserterInput sets the ImageInserterInput field's value. func (s *InsertableImage) SetImageInserterInput(v string) *InsertableImage { s.ImageInserterInput = &v return s } // SetImageX sets the ImageX field's value. func (s *InsertableImage) SetImageX(v int64) *InsertableImage { s.ImageX = &v return s } // SetImageY sets the ImageY field's value. func (s *InsertableImage) SetImageY(v int64) *InsertableImage { s.ImageY = &v return s } // SetLayer sets the Layer field's value. func (s *InsertableImage) SetLayer(v int64) *InsertableImage { s.Layer = &v return s } // SetOpacity sets the Opacity field's value. func (s *InsertableImage) SetOpacity(v int64) *InsertableImage { s.Opacity = &v return s } // SetStartTime sets the StartTime field's value. func (s *InsertableImage) SetStartTime(v string) *InsertableImage { s.StartTime = &v return s } // SetWidth sets the Width field's value. func (s *InsertableImage) SetWidth(v int64) *InsertableImage { s.Width = &v return s } // Each job converts an input file into an output file or files. For more information, // see the User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html type Job struct { _ struct{} `type:"structure"` // Acceleration settings for job execution. AccelerationSettings *AccelerationSettings `locationName:"accelerationSettings" type:"structure"` // An identifier for this resource that is unique within all of AWS. Arn *string `locationName:"arn" type:"string"` // Optional. Choose a tag type that AWS Billing and Cost Management will use // to sort your AWS Elemental MediaConvert costs on any billing report that // you set up. Any transcoding outputs that don't have an associated tag will // appear in your billing report unsorted. If you don't choose a valid value // for this field, your job outputs will appear on the billing report unsorted. BillingTagsSource *string `locationName:"billingTagsSource" type:"string" enum:"BillingTagsSource"` // The time, in Unix epoch format in seconds, when the job got created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unixTimestamp"` // Error code for the job ErrorCode *int64 `locationName:"errorCode" type:"integer"` // Error message of Job ErrorMessage *string `locationName:"errorMessage" type:"string"` // A portion of the job's ARN, unique within your AWS Elemental MediaConvert // resources Id *string `locationName:"id" type:"string"` // The job template that the job is created from, if it is created from a job // template. JobTemplate *string `locationName:"jobTemplate" type:"string"` // List of output group details OutputGroupDetails []*OutputGroupDetail `locationName:"outputGroupDetails" type:"list"` // Optional. When you create a job, you can specify a queue to send it to. If // you don't specify, the job will go to the default queue. For more about queues, // see the User Guide topic at http://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html Queue *string `locationName:"queue" type:"string"` // The IAM role you use for creating this job. For details about permissions, // see the User Guide topic at the User Guide at http://docs.aws.amazon.com/mediaconvert/latest/ug/iam-role.html // // Role is a required field Role *string `locationName:"role" type:"string" required:"true"` // JobSettings contains all the transcode settings for a job. // // Settings is a required field Settings *JobSettings `locationName:"settings" type:"structure" required:"true"` // A job's status can be SUBMITTED, PROGRESSING, COMPLETE, CANCELED, or ERROR. Status *string `locationName:"status" type:"string" enum:"JobStatus"` // Specify how often MediaConvert sends STATUS_UPDATE events to Amazon CloudWatch // Events. Set the interval, in seconds, between status updates. MediaConvert // sends an update at this interval from the time the service begins processing // your job to the time it completes the transcode or encounters an error. StatusUpdateIntervalInSecs *int64 `locationName:"statusUpdateIntervalInSecs" min:"10" type:"long"` // Information about when jobs are submitted, started, and finished is specified // in Unix epoch format in seconds. Timing *Timing `locationName:"timing" type:"structure"` // User-defined metadata that you want to associate with an MediaConvert job. // You specify metadata in key/value pairs. UserMetadata map[string]*string `locationName:"userMetadata" type:"map"` } // String returns the string representation func (s Job) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Job) GoString() string { return s.String() } // SetAccelerationSettings sets the AccelerationSettings field's value. func (s *Job) SetAccelerationSettings(v *AccelerationSettings) *Job { s.AccelerationSettings = v return s } // SetArn sets the Arn field's value. func (s *Job) SetArn(v string) *Job { s.Arn = &v return s } // SetBillingTagsSource sets the BillingTagsSource field's value. func (s *Job) SetBillingTagsSource(v string) *Job { s.BillingTagsSource = &v return s } // SetCreatedAt sets the CreatedAt field's value. func (s *Job) SetCreatedAt(v time.Time) *Job { s.CreatedAt = &v return s } // SetErrorCode sets the ErrorCode field's value. func (s *Job) SetErrorCode(v int64) *Job { s.ErrorCode = &v return s } // SetErrorMessage sets the ErrorMessage field's value. func (s *Job) SetErrorMessage(v string) *Job { s.ErrorMessage = &v return s } // SetId sets the Id field's value. func (s *Job) SetId(v string) *Job { s.Id = &v return s } // SetJobTemplate sets the JobTemplate field's value. func (s *Job) SetJobTemplate(v string) *Job { s.JobTemplate = &v return s } // SetOutputGroupDetails sets the OutputGroupDetails field's value. func (s *Job) SetOutputGroupDetails(v []*OutputGroupDetail) *Job { s.OutputGroupDetails = v return s } // SetQueue sets the Queue field's value. func (s *Job) SetQueue(v string) *Job { s.Queue = &v return s } // SetRole sets the Role field's value. func (s *Job) SetRole(v string) *Job { s.Role = &v return s } // SetSettings sets the Settings field's value. func (s *Job) SetSettings(v *JobSettings) *Job { s.Settings = v return s } // SetStatus sets the Status field's value. func (s *Job) SetStatus(v string) *Job { s.Status = &v return s } // SetStatusUpdateIntervalInSecs sets the StatusUpdateIntervalInSecs field's value. func (s *Job) SetStatusUpdateIntervalInSecs(v int64) *Job { s.StatusUpdateIntervalInSecs = &v return s } // SetTiming sets the Timing field's value. func (s *Job) SetTiming(v *Timing) *Job { s.Timing = v return s } // SetUserMetadata sets the UserMetadata field's value. func (s *Job) SetUserMetadata(v map[string]*string) *Job { s.UserMetadata = v return s } // JobSettings contains all the transcode settings for a job. type JobSettings struct { _ struct{} `type:"structure"` // When specified, this offset (in milliseconds) is added to the input Ad Avail // PTS time. AdAvailOffset *int64 `locationName:"adAvailOffset" type:"integer"` // Settings for ad avail blanking. Video can be blanked or overlaid with an // image, and audio muted during SCTE-35 triggered ad avails. AvailBlanking *AvailBlanking `locationName:"availBlanking" type:"structure"` // Settings for Event Signaling And Messaging (ESAM). Esam *EsamSettings `locationName:"esam" type:"structure"` // Use Inputs (inputs) to define source file used in the transcode job. There // can be multiple inputs add in a job. These inputs will be concantenated together // to create the output. Inputs []*Input `locationName:"inputs" type:"list"` // Overlay motion graphics on top of your video. The motion graphics that you // specify here appear on all outputs in all output groups. MotionImageInserter *MotionImageInserter `locationName:"motionImageInserter" type:"structure"` // Settings for Nielsen Configuration NielsenConfiguration *NielsenConfiguration `locationName:"nielsenConfiguration" type:"structure"` // (OutputGroups) contains one group of settings for each set of outputs that // share a common package type. All unpackaged files (MPEG-4, MPEG-2 TS, Quicktime, // MXF, and no container) are grouped in a single output group as well. Required // in (OutputGroups) is a group of settings that apply to the whole group. This // required object depends on the value you set for (Type) under (OutputGroups)>(OutputGroupSettings). // Type, settings object pairs are as follows. * FILE_GROUP_SETTINGS, FileGroupSettings // * HLS_GROUP_SETTINGS, HlsGroupSettings * DASH_ISO_GROUP_SETTINGS, DashIsoGroupSettings // * MS_SMOOTH_GROUP_SETTINGS, MsSmoothGroupSettings * CMAF_GROUP_SETTINGS, // CmafGroupSettings OutputGroups []*OutputGroup `locationName:"outputGroups" type:"list"` // Contains settings used to acquire and adjust timecode information from inputs. TimecodeConfig *TimecodeConfig `locationName:"timecodeConfig" type:"structure"` // Enable Timed metadata insertion (TimedMetadataInsertion) to include ID3 tags // in your job. To include timed metadata, you must enable it here, enable it // in each output container, and specify tags and timecodes in ID3 insertion // (Id3Insertion) objects. TimedMetadataInsertion *TimedMetadataInsertion `locationName:"timedMetadataInsertion" type:"structure"` } // String returns the string representation func (s JobSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *JobSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "JobSettings"} if s.AdAvailOffset != nil && *s.AdAvailOffset < -1000 { invalidParams.Add(request.NewErrParamMinValue("AdAvailOffset", -1000)) } if s.AvailBlanking != nil { if err := s.AvailBlanking.Validate(); err != nil { invalidParams.AddNested("AvailBlanking", err.(request.ErrInvalidParams)) } } if s.Inputs != nil { for i, v := range s.Inputs { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Inputs", i), err.(request.ErrInvalidParams)) } } } if s.MotionImageInserter != nil { if err := s.MotionImageInserter.Validate(); err != nil { invalidParams.AddNested("MotionImageInserter", err.(request.ErrInvalidParams)) } } if s.OutputGroups != nil { for i, v := range s.OutputGroups { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputGroups", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAdAvailOffset sets the AdAvailOffset field's value. func (s *JobSettings) SetAdAvailOffset(v int64) *JobSettings { s.AdAvailOffset = &v return s } // SetAvailBlanking sets the AvailBlanking field's value. func (s *JobSettings) SetAvailBlanking(v *AvailBlanking) *JobSettings { s.AvailBlanking = v return s } // SetEsam sets the Esam field's value. func (s *JobSettings) SetEsam(v *EsamSettings) *JobSettings { s.Esam = v return s } // SetInputs sets the Inputs field's value. func (s *JobSettings) SetInputs(v []*Input) *JobSettings { s.Inputs = v return s } // SetMotionImageInserter sets the MotionImageInserter field's value. func (s *JobSettings) SetMotionImageInserter(v *MotionImageInserter) *JobSettings { s.MotionImageInserter = v return s } // SetNielsenConfiguration sets the NielsenConfiguration field's value. func (s *JobSettings) SetNielsenConfiguration(v *NielsenConfiguration) *JobSettings { s.NielsenConfiguration = v return s } // SetOutputGroups sets the OutputGroups field's value. func (s *JobSettings) SetOutputGroups(v []*OutputGroup) *JobSettings { s.OutputGroups = v return s } // SetTimecodeConfig sets the TimecodeConfig field's value. func (s *JobSettings) SetTimecodeConfig(v *TimecodeConfig) *JobSettings { s.TimecodeConfig = v return s } // SetTimedMetadataInsertion sets the TimedMetadataInsertion field's value. func (s *JobSettings) SetTimedMetadataInsertion(v *TimedMetadataInsertion) *JobSettings { s.TimedMetadataInsertion = v return s } // A job template is a pre-made set of encoding instructions that you can use // to quickly create a job. type JobTemplate struct { _ struct{} `type:"structure"` // Acceleration settings for job execution. AccelerationSettings *AccelerationSettings `locationName:"accelerationSettings" type:"structure"` // An identifier for this resource that is unique within all of AWS. Arn *string `locationName:"arn" type:"string"` // An optional category you create to organize your job templates. Category *string `locationName:"category" type:"string"` // The timestamp in epoch seconds for Job template creation. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unixTimestamp"` // An optional description you create for each job template. Description *string `locationName:"description" type:"string"` // The timestamp in epoch seconds when the Job template was last updated. LastUpdated *time.Time `locationName:"lastUpdated" type:"timestamp" timestampFormat:"unixTimestamp"` // A name you create for each job template. Each name must be unique within // your account. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // Optional. The queue that jobs created from this template are assigned to. // If you don't specify this, jobs will go to the default queue. Queue *string `locationName:"queue" type:"string"` // JobTemplateSettings contains all the transcode settings saved in the template // that will be applied to jobs created from it. // // Settings is a required field Settings *JobTemplateSettings `locationName:"settings" type:"structure" required:"true"` // Specify how often MediaConvert sends STATUS_UPDATE events to Amazon CloudWatch // Events. Set the interval, in seconds, between status updates. MediaConvert // sends an update at this interval from the time the service begins processing // your job to the time it completes the transcode or encounters an error. StatusUpdateIntervalInSecs *int64 `locationName:"statusUpdateIntervalInSecs" min:"10" type:"long"` // A job template can be of two types: system or custom. System or built-in // job templates can't be modified or deleted by the user. Type *string `locationName:"type" type:"string" enum:"Type"` } // String returns the string representation func (s JobTemplate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobTemplate) GoString() string { return s.String() } // SetAccelerationSettings sets the AccelerationSettings field's value. func (s *JobTemplate) SetAccelerationSettings(v *AccelerationSettings) *JobTemplate { s.AccelerationSettings = v return s } // SetArn sets the Arn field's value. func (s *JobTemplate) SetArn(v string) *JobTemplate { s.Arn = &v return s } // SetCategory sets the Category field's value. func (s *JobTemplate) SetCategory(v string) *JobTemplate { s.Category = &v return s } // SetCreatedAt sets the CreatedAt field's value. func (s *JobTemplate) SetCreatedAt(v time.Time) *JobTemplate { s.CreatedAt = &v return s } // SetDescription sets the Description field's value. func (s *JobTemplate) SetDescription(v string) *JobTemplate { s.Description = &v return s } // SetLastUpdated sets the LastUpdated field's value. func (s *JobTemplate) SetLastUpdated(v time.Time) *JobTemplate { s.LastUpdated = &v return s } // SetName sets the Name field's value. func (s *JobTemplate) SetName(v string) *JobTemplate { s.Name = &v return s } // SetQueue sets the Queue field's value. func (s *JobTemplate) SetQueue(v string) *JobTemplate { s.Queue = &v return s } // SetSettings sets the Settings field's value. func (s *JobTemplate) SetSettings(v *JobTemplateSettings) *JobTemplate { s.Settings = v return s } // SetStatusUpdateIntervalInSecs sets the StatusUpdateIntervalInSecs field's value. func (s *JobTemplate) SetStatusUpdateIntervalInSecs(v int64) *JobTemplate { s.StatusUpdateIntervalInSecs = &v return s } // SetType sets the Type field's value. func (s *JobTemplate) SetType(v string) *JobTemplate { s.Type = &v return s } // JobTemplateSettings contains all the transcode settings saved in the template // that will be applied to jobs created from it. type JobTemplateSettings struct { _ struct{} `type:"structure"` // When specified, this offset (in milliseconds) is added to the input Ad Avail // PTS time. AdAvailOffset *int64 `locationName:"adAvailOffset" type:"integer"` // Settings for ad avail blanking. Video can be blanked or overlaid with an // image, and audio muted during SCTE-35 triggered ad avails. AvailBlanking *AvailBlanking `locationName:"availBlanking" type:"structure"` // Settings for Event Signaling And Messaging (ESAM). Esam *EsamSettings `locationName:"esam" type:"structure"` // Use Inputs (inputs) to define the source file used in the transcode job. // There can only be one input in a job template. Using the API, you can include // multiple inputs when referencing a job template. Inputs []*InputTemplate `locationName:"inputs" type:"list"` // Overlay motion graphics on top of your video. The motion graphics that you // specify here appear on all outputs in all output groups. MotionImageInserter *MotionImageInserter `locationName:"motionImageInserter" type:"structure"` // Settings for Nielsen Configuration NielsenConfiguration *NielsenConfiguration `locationName:"nielsenConfiguration" type:"structure"` // (OutputGroups) contains one group of settings for each set of outputs that // share a common package type. All unpackaged files (MPEG-4, MPEG-2 TS, Quicktime, // MXF, and no container) are grouped in a single output group as well. Required // in (OutputGroups) is a group of settings that apply to the whole group. This // required object depends on the value you set for (Type) under (OutputGroups)>(OutputGroupSettings). // Type, settings object pairs are as follows. * FILE_GROUP_SETTINGS, FileGroupSettings // * HLS_GROUP_SETTINGS, HlsGroupSettings * DASH_ISO_GROUP_SETTINGS, DashIsoGroupSettings // * MS_SMOOTH_GROUP_SETTINGS, MsSmoothGroupSettings * CMAF_GROUP_SETTINGS, // CmafGroupSettings OutputGroups []*OutputGroup `locationName:"outputGroups" type:"list"` // Contains settings used to acquire and adjust timecode information from inputs. TimecodeConfig *TimecodeConfig `locationName:"timecodeConfig" type:"structure"` // Enable Timed metadata insertion (TimedMetadataInsertion) to include ID3 tags // in your job. To include timed metadata, you must enable it here, enable it // in each output container, and specify tags and timecodes in ID3 insertion // (Id3Insertion) objects. TimedMetadataInsertion *TimedMetadataInsertion `locationName:"timedMetadataInsertion" type:"structure"` } // String returns the string representation func (s JobTemplateSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s JobTemplateSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *JobTemplateSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "JobTemplateSettings"} if s.AdAvailOffset != nil && *s.AdAvailOffset < -1000 { invalidParams.Add(request.NewErrParamMinValue("AdAvailOffset", -1000)) } if s.AvailBlanking != nil { if err := s.AvailBlanking.Validate(); err != nil { invalidParams.AddNested("AvailBlanking", err.(request.ErrInvalidParams)) } } if s.Inputs != nil { for i, v := range s.Inputs { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Inputs", i), err.(request.ErrInvalidParams)) } } } if s.MotionImageInserter != nil { if err := s.MotionImageInserter.Validate(); err != nil { invalidParams.AddNested("MotionImageInserter", err.(request.ErrInvalidParams)) } } if s.OutputGroups != nil { for i, v := range s.OutputGroups { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputGroups", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAdAvailOffset sets the AdAvailOffset field's value. func (s *JobTemplateSettings) SetAdAvailOffset(v int64) *JobTemplateSettings { s.AdAvailOffset = &v return s } // SetAvailBlanking sets the AvailBlanking field's value. func (s *JobTemplateSettings) SetAvailBlanking(v *AvailBlanking) *JobTemplateSettings { s.AvailBlanking = v return s } // SetEsam sets the Esam field's value. func (s *JobTemplateSettings) SetEsam(v *EsamSettings) *JobTemplateSettings { s.Esam = v return s } // SetInputs sets the Inputs field's value. func (s *JobTemplateSettings) SetInputs(v []*InputTemplate) *JobTemplateSettings { s.Inputs = v return s } // SetMotionImageInserter sets the MotionImageInserter field's value. func (s *JobTemplateSettings) SetMotionImageInserter(v *MotionImageInserter) *JobTemplateSettings { s.MotionImageInserter = v return s } // SetNielsenConfiguration sets the NielsenConfiguration field's value. func (s *JobTemplateSettings) SetNielsenConfiguration(v *NielsenConfiguration) *JobTemplateSettings { s.NielsenConfiguration = v return s } // SetOutputGroups sets the OutputGroups field's value. func (s *JobTemplateSettings) SetOutputGroups(v []*OutputGroup) *JobTemplateSettings { s.OutputGroups = v return s } // SetTimecodeConfig sets the TimecodeConfig field's value. func (s *JobTemplateSettings) SetTimecodeConfig(v *TimecodeConfig) *JobTemplateSettings { s.TimecodeConfig = v return s } // SetTimedMetadataInsertion sets the TimedMetadataInsertion field's value. func (s *JobTemplateSettings) SetTimedMetadataInsertion(v *TimedMetadataInsertion) *JobTemplateSettings { s.TimedMetadataInsertion = v return s } // You can send list job templates requests with an empty body. Optionally, // you can filter the response by category by specifying it in your request // body. You can also optionally specify the maximum number, up to twenty, of // job templates to be returned. type ListJobTemplatesInput struct { _ struct{} `type:"structure"` // Optionally, specify a job template category to limit responses to only job // templates from that category. Category *string `location:"querystring" locationName:"category" type:"string"` // Optional. When you request a list of job templates, you can choose to list // them alphabetically by NAME or chronologically by CREATION_DATE. If you don't // specify, the service will list them by name. ListBy *string `location:"querystring" locationName:"listBy" type:"string" enum:"JobTemplateListBy"` // Optional. Number of job templates, up to twenty, that will be returned at // one time. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // Use this string, provided with the response to a previous request, to request // the next batch of job templates. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` // When you request lists of resources, you can optionally specify whether they // are sorted in ASCENDING or DESCENDING order. Default varies by resource. Order *string `location:"querystring" locationName:"order" type:"string" enum:"Order"` } // String returns the string representation func (s ListJobTemplatesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListJobTemplatesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListJobTemplatesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListJobTemplatesInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCategory sets the Category field's value. func (s *ListJobTemplatesInput) SetCategory(v string) *ListJobTemplatesInput { s.Category = &v return s } // SetListBy sets the ListBy field's value. func (s *ListJobTemplatesInput) SetListBy(v string) *ListJobTemplatesInput { s.ListBy = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListJobTemplatesInput) SetMaxResults(v int64) *ListJobTemplatesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListJobTemplatesInput) SetNextToken(v string) *ListJobTemplatesInput { s.NextToken = &v return s } // SetOrder sets the Order field's value. func (s *ListJobTemplatesInput) SetOrder(v string) *ListJobTemplatesInput { s.Order = &v return s } // Successful list job templates requests return a JSON array of job templates. // If you don't specify how they are ordered, you will receive them in alphabetical // order by name. type ListJobTemplatesOutput struct { _ struct{} `type:"structure"` // List of Job templates. JobTemplates []*JobTemplate `locationName:"jobTemplates" type:"list"` // Use this string to request the next batch of job templates. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListJobTemplatesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListJobTemplatesOutput) GoString() string { return s.String() } // SetJobTemplates sets the JobTemplates field's value. func (s *ListJobTemplatesOutput) SetJobTemplates(v []*JobTemplate) *ListJobTemplatesOutput { s.JobTemplates = v return s } // SetNextToken sets the NextToken field's value. func (s *ListJobTemplatesOutput) SetNextToken(v string) *ListJobTemplatesOutput { s.NextToken = &v return s } // You can send list jobs requests with an empty body. Optionally, you can filter // the response by queue and/or job status by specifying them in your request // body. You can also optionally specify the maximum number, up to twenty, of // jobs to be returned. type ListJobsInput struct { _ struct{} `type:"structure"` // Optional. Number of jobs, up to twenty, that will be returned at one time. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // Use this string, provided with the response to a previous request, to request // the next batch of jobs. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` // When you request lists of resources, you can optionally specify whether they // are sorted in ASCENDING or DESCENDING order. Default varies by resource. Order *string `location:"querystring" locationName:"order" type:"string" enum:"Order"` // Provide a queue name to get back only jobs from that queue. Queue *string `location:"querystring" locationName:"queue" type:"string"` // A job's status can be SUBMITTED, PROGRESSING, COMPLETE, CANCELED, or ERROR. Status *string `location:"querystring" locationName:"status" type:"string" enum:"JobStatus"` } // String returns the string representation func (s ListJobsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListJobsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListJobsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListJobsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetMaxResults sets the MaxResults field's value. func (s *ListJobsInput) SetMaxResults(v int64) *ListJobsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListJobsInput) SetNextToken(v string) *ListJobsInput { s.NextToken = &v return s } // SetOrder sets the Order field's value. func (s *ListJobsInput) SetOrder(v string) *ListJobsInput { s.Order = &v return s } // SetQueue sets the Queue field's value. func (s *ListJobsInput) SetQueue(v string) *ListJobsInput { s.Queue = &v return s } // SetStatus sets the Status field's value. func (s *ListJobsInput) SetStatus(v string) *ListJobsInput { s.Status = &v return s } // Successful list jobs requests return a JSON array of jobs. If you don't specify // how they are ordered, you will receive the most recently created first. type ListJobsOutput struct { _ struct{} `type:"structure"` // List of jobs Jobs []*Job `locationName:"jobs" type:"list"` // Use this string to request the next batch of jobs. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation func (s ListJobsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListJobsOutput) GoString() string { return s.String() } // SetJobs sets the Jobs field's value. func (s *ListJobsOutput) SetJobs(v []*Job) *ListJobsOutput { s.Jobs = v return s } // SetNextToken sets the NextToken field's value. func (s *ListJobsOutput) SetNextToken(v string) *ListJobsOutput { s.NextToken = &v return s } // You can send list presets requests with an empty body. Optionally, you can // filter the response by category by specifying it in your request body. You // can also optionally specify the maximum number, up to twenty, of queues to // be returned. type ListPresetsInput struct { _ struct{} `type:"structure"` // Optionally, specify a preset category to limit responses to only presets // from that category. Category *string `location:"querystring" locationName:"category" type:"string"` // Optional. When you request a list of presets, you can choose to list them // alphabetically by NAME or chronologically by CREATION_DATE. If you don't // specify, the service will list them by name. ListBy *string `location:"querystring" locationName:"listBy" type:"string" enum:"PresetListBy"` // Optional. Number of presets, up to twenty, that will be returned at one time MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // Use this string, provided with the response to a previous request, to request // the next batch of presets. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` // When you request lists of resources, you can optionally specify whether they // are sorted in ASCENDING or DESCENDING order. Default varies by resource. Order *string `location:"querystring" locationName:"order" type:"string" enum:"Order"` } // String returns the string representation func (s ListPresetsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPresetsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListPresetsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListPresetsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCategory sets the Category field's value. func (s *ListPresetsInput) SetCategory(v string) *ListPresetsInput { s.Category = &v return s } // SetListBy sets the ListBy field's value. func (s *ListPresetsInput) SetListBy(v string) *ListPresetsInput { s.ListBy = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListPresetsInput) SetMaxResults(v int64) *ListPresetsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListPresetsInput) SetNextToken(v string) *ListPresetsInput { s.NextToken = &v return s } // SetOrder sets the Order field's value. func (s *ListPresetsInput) SetOrder(v string) *ListPresetsInput { s.Order = &v return s } // Successful list presets requests return a JSON array of presets. If you don't // specify how they are ordered, you will receive them alphabetically by name. type ListPresetsOutput struct { _ struct{} `type:"structure"` // Use this string to request the next batch of presets. NextToken *string `locationName:"nextToken" type:"string"` // List of presets Presets []*Preset `locationName:"presets" type:"list"` } // String returns the string representation func (s ListPresetsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListPresetsOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *ListPresetsOutput) SetNextToken(v string) *ListPresetsOutput { s.NextToken = &v return s } // SetPresets sets the Presets field's value. func (s *ListPresetsOutput) SetPresets(v []*Preset) *ListPresetsOutput { s.Presets = v return s } // You can send list queues requests with an empty body. You can optionally // specify the maximum number, up to twenty, of queues to be returned. type ListQueuesInput struct { _ struct{} `type:"structure"` // Optional. When you request a list of queues, you can choose to list them // alphabetically by NAME or chronologically by CREATION_DATE. If you don't // specify, the service will list them by creation date. ListBy *string `location:"querystring" locationName:"listBy" type:"string" enum:"QueueListBy"` // Optional. Number of queues, up to twenty, that will be returned at one time. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // Use this string, provided with the response to a previous request, to request // the next batch of queues. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` // When you request lists of resources, you can optionally specify whether they // are sorted in ASCENDING or DESCENDING order. Default varies by resource. Order *string `location:"querystring" locationName:"order" type:"string" enum:"Order"` } // String returns the string representation func (s ListQueuesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListQueuesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListQueuesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListQueuesInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetListBy sets the ListBy field's value. func (s *ListQueuesInput) SetListBy(v string) *ListQueuesInput { s.ListBy = &v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListQueuesInput) SetMaxResults(v int64) *ListQueuesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListQueuesInput) SetNextToken(v string) *ListQueuesInput { s.NextToken = &v return s } // SetOrder sets the Order field's value. func (s *ListQueuesInput) SetOrder(v string) *ListQueuesInput { s.Order = &v return s } // Successful list queues requests return a JSON array of queues. If you don't // specify how they are ordered, you will receive them alphabetically by name. type ListQueuesOutput struct { _ struct{} `type:"structure"` // Use this string to request the next batch of queues. NextToken *string `locationName:"nextToken" type:"string"` // List of queues. Queues []*Queue `locationName:"queues" type:"list"` } // String returns the string representation func (s ListQueuesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListQueuesOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *ListQueuesOutput) SetNextToken(v string) *ListQueuesOutput { s.NextToken = &v return s } // SetQueues sets the Queues field's value. func (s *ListQueuesOutput) SetQueues(v []*Queue) *ListQueuesOutput { s.Queues = v return s } // List the tags for your AWS Elemental MediaConvert resource by sending a request // with the Amazon Resource Name (ARN) of the resource. To get the ARN, send // a GET request with the resource name. type ListTagsForResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource that you want to list tags // for. To get the ARN, send a GET request with the resource name. // // Arn is a required field Arn *string `location:"uri" locationName:"arn" type:"string" required:"true"` } // String returns the string representation func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 1 { invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetArn sets the Arn field's value. func (s *ListTagsForResourceInput) SetArn(v string) *ListTagsForResourceInput { s.Arn = &v return s } // A successful request to list the tags for a resource returns a JSON map of // tags. type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) and tags for an AWS Elemental MediaConvert // resource. ResourceTags *ResourceTags `locationName:"resourceTags" type:"structure"` } // String returns the string representation func (s ListTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ListTagsForResourceOutput) GoString() string { return s.String() } // SetResourceTags sets the ResourceTags field's value. func (s *ListTagsForResourceOutput) SetResourceTags(v *ResourceTags) *ListTagsForResourceOutput { s.ResourceTags = v return s } // Settings for SCTE-35 signals from ESAM. Include this in your job settings // to put SCTE-35 markers in your HLS and transport stream outputs at the insertion // points that you specify in an ESAM XML document. Provide the document in // the setting SCC XML (sccXml). type M2tsScte35Esam struct { _ struct{} `type:"structure"` // Packet Identifier (PID) of the SCTE-35 stream in the transport stream generated // by ESAM. Scte35EsamPid *int64 `locationName:"scte35EsamPid" min:"32" type:"integer"` } // String returns the string representation func (s M2tsScte35Esam) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s M2tsScte35Esam) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *M2tsScte35Esam) Validate() error { invalidParams := request.ErrInvalidParams{Context: "M2tsScte35Esam"} if s.Scte35EsamPid != nil && *s.Scte35EsamPid < 32 { invalidParams.Add(request.NewErrParamMinValue("Scte35EsamPid", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetScte35EsamPid sets the Scte35EsamPid field's value. func (s *M2tsScte35Esam) SetScte35EsamPid(v int64) *M2tsScte35Esam { s.Scte35EsamPid = &v return s } // MPEG-2 TS container settings. These apply to outputs in a File output group // when the output's container (ContainerType) is MPEG-2 Transport Stream (M2TS). // In these assets, data is organized by the program map table (PMT). Each transport // stream program contains subsets of data, including audio, video, and metadata. // Each of these subsets of data has a numerical label called a packet identifier // (PID). Each transport stream program corresponds to one MediaConvert output. // The PMT lists the types of data in a program along with their PID. Downstream // systems and players use the program map table to look up the PID for each // type of data it accesses and then uses the PIDs to locate specific data within // the asset. type M2tsSettings struct { _ struct{} `type:"structure"` // Selects between the DVB and ATSC buffer models for Dolby Digital audio. AudioBufferModel *string `locationName:"audioBufferModel" type:"string" enum:"M2tsAudioBufferModel"` // The number of audio frames to insert for each PES packet. AudioFramesPerPes *int64 `locationName:"audioFramesPerPes" type:"integer"` // Specify the packet identifiers (PIDs) for any elementary audio streams you // include in this output. Specify multiple PIDs as a JSON array. Default is // the range 482-492. AudioPids []*int64 `locationName:"audioPids" type:"list"` // Specify the output bitrate of the transport stream in bits per second. Setting // to 0 lets the muxer automatically determine the appropriate bitrate. Other // common values are 3750000, 7500000, and 15000000. Bitrate *int64 `locationName:"bitrate" type:"integer"` // Controls what buffer model to use for accurate interleaving. If set to MULTIPLEX, // use multiplex buffer model. If set to NONE, this can lead to lower latency, // but low-memory devices may not be able to play back the stream without interruptions. BufferModel *string `locationName:"bufferModel" type:"string" enum:"M2tsBufferModel"` // Inserts DVB Network Information Table (NIT) at the specified table repetition // interval. DvbNitSettings *DvbNitSettings `locationName:"dvbNitSettings" type:"structure"` // Inserts DVB Service Description Table (NIT) at the specified table repetition // interval. DvbSdtSettings *DvbSdtSettings `locationName:"dvbSdtSettings" type:"structure"` // Specify the packet identifiers (PIDs) for DVB subtitle data included in this // output. Specify multiple PIDs as a JSON array. Default is the range 460-479. DvbSubPids []*int64 `locationName:"dvbSubPids" type:"list"` // Inserts DVB Time and Date Table (TDT) at the specified table repetition interval. DvbTdtSettings *DvbTdtSettings `locationName:"dvbTdtSettings" type:"structure"` // Specify the packet identifier (PID) for DVB teletext data you include in // this output. Default is 499. DvbTeletextPid *int64 `locationName:"dvbTeletextPid" min:"32" type:"integer"` // When set to VIDEO_AND_FIXED_INTERVALS, audio EBP markers will be added to // partitions 3 and 4. The interval between these additional markers will be // fixed, and will be slightly shorter than the video EBP marker interval. When // set to VIDEO_INTERVAL, these additional markers will not be inserted. Only // applicable when EBP segmentation markers are is selected (segmentationMarkers // is EBP or EBP_LEGACY). EbpAudioInterval *string `locationName:"ebpAudioInterval" type:"string" enum:"M2tsEbpAudioInterval"` // Selects which PIDs to place EBP markers on. They can either be placed only // on the video PID, or on both the video PID and all audio PIDs. Only applicable // when EBP segmentation markers are is selected (segmentationMarkers is EBP // or EBP_LEGACY). EbpPlacement *string `locationName:"ebpPlacement" type:"string" enum:"M2tsEbpPlacement"` // Controls whether to include the ES Rate field in the PES header. EsRateInPes *string `locationName:"esRateInPes" type:"string" enum:"M2tsEsRateInPes"` // Keep the default value (DEFAULT) unless you know that your audio EBP markers // are incorrectly appearing before your video EBP markers. To correct this // problem, set this value to Force (FORCE). ForceTsVideoEbpOrder *string `locationName:"forceTsVideoEbpOrder" type:"string" enum:"M2tsForceTsVideoEbpOrder"` // The length, in seconds, of each fragment. Only used with EBP markers. FragmentTime *float64 `locationName:"fragmentTime" type:"double"` // Specify the maximum time, in milliseconds, between Program Clock References // (PCRs) inserted into the transport stream. MaxPcrInterval *int64 `locationName:"maxPcrInterval" type:"integer"` // When set, enforces that Encoder Boundary Points do not come within the specified // time interval of each other by looking ahead at input video. If another EBP // is going to come in within the specified time interval, the current EBP is // not emitted, and the segment is "stretched" to the next marker. The lookahead // value does not add latency to the system. The Live Event must be configured // elsewhere to create sufficient latency to make the lookahead accurate. MinEbpInterval *int64 `locationName:"minEbpInterval" type:"integer"` // If INSERT, Nielsen inaudible tones for media tracking will be detected in // the input audio and an equivalent ID3 tag will be inserted in the output. NielsenId3 *string `locationName:"nielsenId3" type:"string" enum:"M2tsNielsenId3"` // Value in bits per second of extra null packets to insert into the transport // stream. This can be used if a downstream encryption system requires periodic // null packets. NullPacketBitrate *float64 `locationName:"nullPacketBitrate" type:"double"` // The number of milliseconds between instances of this table in the output // transport stream. PatInterval *int64 `locationName:"patInterval" type:"integer"` // When set to PCR_EVERY_PES_PACKET, a Program Clock Reference value is inserted // for every Packetized Elementary Stream (PES) header. This is effective only // when the PCR PID is the same as the video or audio elementary stream. PcrControl *string `locationName:"pcrControl" type:"string" enum:"M2tsPcrControl"` // Specify the packet identifier (PID) for the program clock reference (PCR) // in this output. If you do not specify a value, the service will use the value // for Video PID (VideoPid). PcrPid *int64 `locationName:"pcrPid" min:"32" type:"integer"` // Specify the number of milliseconds between instances of the program map table // (PMT) in the output transport stream. PmtInterval *int64 `locationName:"pmtInterval" type:"integer"` // Specify the packet identifier (PID) for the program map table (PMT) itself. // Default is 480. PmtPid *int64 `locationName:"pmtPid" min:"32" type:"integer"` // Specify the packet identifier (PID) of the private metadata stream. Default // is 503. PrivateMetadataPid *int64 `locationName:"privateMetadataPid" min:"32" type:"integer"` // Use Program number (programNumber) to specify the program number used in // the program map table (PMT) for this output. Default is 1. Program numbers // and program map tables are parts of MPEG-2 transport stream containers, used // for organizing data. ProgramNumber *int64 `locationName:"programNumber" type:"integer"` // When set to CBR, inserts null packets into transport stream to fill specified // bitrate. When set to VBR, the bitrate setting acts as the maximum bitrate, // but the output will not be padded up to that bitrate. RateMode *string `locationName:"rateMode" type:"string" enum:"M2tsRateMode"` // Include this in your job settings to put SCTE-35 markers in your HLS and // transport stream outputs at the insertion points that you specify in an ESAM // XML document. Provide the document in the setting SCC XML (sccXml). Scte35Esam *M2tsScte35Esam `locationName:"scte35Esam" type:"structure"` // Specify the packet identifier (PID) of the SCTE-35 stream in the transport // stream. Scte35Pid *int64 `locationName:"scte35Pid" min:"32" type:"integer"` // Enables SCTE-35 passthrough (scte35Source) to pass any SCTE-35 signals from // input to output. Scte35Source *string `locationName:"scte35Source" type:"string" enum:"M2tsScte35Source"` // Inserts segmentation markers at each segmentation_time period. rai_segstart // sets the Random Access Indicator bit in the adaptation field. rai_adapt sets // the RAI bit and adds the current timecode in the private data bytes. psi_segstart // inserts PAT and PMT tables at the start of segments. ebp adds Encoder Boundary // Point information to the adaptation field as per OpenCable specification // OC-SP-EBP-I01-130118. ebp_legacy adds Encoder Boundary Point information // to the adaptation field using a legacy proprietary format. SegmentationMarkers *string `locationName:"segmentationMarkers" type:"string" enum:"M2tsSegmentationMarkers"` // The segmentation style parameter controls how segmentation markers are inserted // into the transport stream. With avails, it is possible that segments may // be truncated, which can influence where future segmentation markers are inserted. // When a segmentation style of "reset_cadence" is selected and a segment is // truncated due to an avail, we will reset the segmentation cadence. This means // the subsequent segment will have a duration of of $segmentation_time seconds. // When a segmentation style of "maintain_cadence" is selected and a segment // is truncated due to an avail, we will not reset the segmentation cadence. // This means the subsequent segment will likely be truncated as well. However, // all segments after that will have a duration of $segmentation_time seconds. // Note that EBP lookahead is a slight exception to this rule. SegmentationStyle *string `locationName:"segmentationStyle" type:"string" enum:"M2tsSegmentationStyle"` // Specify the length, in seconds, of each segment. Required unless markers // is set to _none_. SegmentationTime *float64 `locationName:"segmentationTime" type:"double"` // Specify the packet identifier (PID) for timed metadata in this output. Default // is 502. TimedMetadataPid *int64 `locationName:"timedMetadataPid" min:"32" type:"integer"` // Specify the ID for the transport stream itself in the program map table for // this output. Transport stream IDs and program map tables are parts of MPEG-2 // transport stream containers, used for organizing data. TransportStreamId *int64 `locationName:"transportStreamId" type:"integer"` // Specify the packet identifier (PID) of the elementary video stream in the // transport stream. VideoPid *int64 `locationName:"videoPid" min:"32" type:"integer"` } // String returns the string representation func (s M2tsSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s M2tsSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *M2tsSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "M2tsSettings"} if s.DvbTeletextPid != nil && *s.DvbTeletextPid < 32 { invalidParams.Add(request.NewErrParamMinValue("DvbTeletextPid", 32)) } if s.PcrPid != nil && *s.PcrPid < 32 { invalidParams.Add(request.NewErrParamMinValue("PcrPid", 32)) } if s.PmtPid != nil && *s.PmtPid < 32 { invalidParams.Add(request.NewErrParamMinValue("PmtPid", 32)) } if s.PrivateMetadataPid != nil && *s.PrivateMetadataPid < 32 { invalidParams.Add(request.NewErrParamMinValue("PrivateMetadataPid", 32)) } if s.Scte35Pid != nil && *s.Scte35Pid < 32 { invalidParams.Add(request.NewErrParamMinValue("Scte35Pid", 32)) } if s.TimedMetadataPid != nil && *s.TimedMetadataPid < 32 { invalidParams.Add(request.NewErrParamMinValue("TimedMetadataPid", 32)) } if s.VideoPid != nil && *s.VideoPid < 32 { invalidParams.Add(request.NewErrParamMinValue("VideoPid", 32)) } if s.DvbNitSettings != nil { if err := s.DvbNitSettings.Validate(); err != nil { invalidParams.AddNested("DvbNitSettings", err.(request.ErrInvalidParams)) } } if s.DvbSdtSettings != nil { if err := s.DvbSdtSettings.Validate(); err != nil { invalidParams.AddNested("DvbSdtSettings", err.(request.ErrInvalidParams)) } } if s.DvbTdtSettings != nil { if err := s.DvbTdtSettings.Validate(); err != nil { invalidParams.AddNested("DvbTdtSettings", err.(request.ErrInvalidParams)) } } if s.Scte35Esam != nil { if err := s.Scte35Esam.Validate(); err != nil { invalidParams.AddNested("Scte35Esam", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAudioBufferModel sets the AudioBufferModel field's value. func (s *M2tsSettings) SetAudioBufferModel(v string) *M2tsSettings { s.AudioBufferModel = &v return s } // SetAudioFramesPerPes sets the AudioFramesPerPes field's value. func (s *M2tsSettings) SetAudioFramesPerPes(v int64) *M2tsSettings { s.AudioFramesPerPes = &v return s } // SetAudioPids sets the AudioPids field's value. func (s *M2tsSettings) SetAudioPids(v []*int64) *M2tsSettings { s.AudioPids = v return s } // SetBitrate sets the Bitrate field's value. func (s *M2tsSettings) SetBitrate(v int64) *M2tsSettings { s.Bitrate = &v return s } // SetBufferModel sets the BufferModel field's value. func (s *M2tsSettings) SetBufferModel(v string) *M2tsSettings { s.BufferModel = &v return s } // SetDvbNitSettings sets the DvbNitSettings field's value. func (s *M2tsSettings) SetDvbNitSettings(v *DvbNitSettings) *M2tsSettings { s.DvbNitSettings = v return s } // SetDvbSdtSettings sets the DvbSdtSettings field's value. func (s *M2tsSettings) SetDvbSdtSettings(v *DvbSdtSettings) *M2tsSettings { s.DvbSdtSettings = v return s } // SetDvbSubPids sets the DvbSubPids field's value. func (s *M2tsSettings) SetDvbSubPids(v []*int64) *M2tsSettings { s.DvbSubPids = v return s } // SetDvbTdtSettings sets the DvbTdtSettings field's value. func (s *M2tsSettings) SetDvbTdtSettings(v *DvbTdtSettings) *M2tsSettings { s.DvbTdtSettings = v return s } // SetDvbTeletextPid sets the DvbTeletextPid field's value. func (s *M2tsSettings) SetDvbTeletextPid(v int64) *M2tsSettings { s.DvbTeletextPid = &v return s } // SetEbpAudioInterval sets the EbpAudioInterval field's value. func (s *M2tsSettings) SetEbpAudioInterval(v string) *M2tsSettings { s.EbpAudioInterval = &v return s } // SetEbpPlacement sets the EbpPlacement field's value. func (s *M2tsSettings) SetEbpPlacement(v string) *M2tsSettings { s.EbpPlacement = &v return s } // SetEsRateInPes sets the EsRateInPes field's value. func (s *M2tsSettings) SetEsRateInPes(v string) *M2tsSettings { s.EsRateInPes = &v return s } // SetForceTsVideoEbpOrder sets the ForceTsVideoEbpOrder field's value. func (s *M2tsSettings) SetForceTsVideoEbpOrder(v string) *M2tsSettings { s.ForceTsVideoEbpOrder = &v return s } // SetFragmentTime sets the FragmentTime field's value. func (s *M2tsSettings) SetFragmentTime(v float64) *M2tsSettings { s.FragmentTime = &v return s } // SetMaxPcrInterval sets the MaxPcrInterval field's value. func (s *M2tsSettings) SetMaxPcrInterval(v int64) *M2tsSettings { s.MaxPcrInterval = &v return s } // SetMinEbpInterval sets the MinEbpInterval field's value. func (s *M2tsSettings) SetMinEbpInterval(v int64) *M2tsSettings { s.MinEbpInterval = &v return s } // SetNielsenId3 sets the NielsenId3 field's value. func (s *M2tsSettings) SetNielsenId3(v string) *M2tsSettings { s.NielsenId3 = &v return s } // SetNullPacketBitrate sets the NullPacketBitrate field's value. func (s *M2tsSettings) SetNullPacketBitrate(v float64) *M2tsSettings { s.NullPacketBitrate = &v return s } // SetPatInterval sets the PatInterval field's value. func (s *M2tsSettings) SetPatInterval(v int64) *M2tsSettings { s.PatInterval = &v return s } // SetPcrControl sets the PcrControl field's value. func (s *M2tsSettings) SetPcrControl(v string) *M2tsSettings { s.PcrControl = &v return s } // SetPcrPid sets the PcrPid field's value. func (s *M2tsSettings) SetPcrPid(v int64) *M2tsSettings { s.PcrPid = &v return s } // SetPmtInterval sets the PmtInterval field's value. func (s *M2tsSettings) SetPmtInterval(v int64) *M2tsSettings { s.PmtInterval = &v return s } // SetPmtPid sets the PmtPid field's value. func (s *M2tsSettings) SetPmtPid(v int64) *M2tsSettings { s.PmtPid = &v return s } // SetPrivateMetadataPid sets the PrivateMetadataPid field's value. func (s *M2tsSettings) SetPrivateMetadataPid(v int64) *M2tsSettings { s.PrivateMetadataPid = &v return s } // SetProgramNumber sets the ProgramNumber field's value. func (s *M2tsSettings) SetProgramNumber(v int64) *M2tsSettings { s.ProgramNumber = &v return s } // SetRateMode sets the RateMode field's value. func (s *M2tsSettings) SetRateMode(v string) *M2tsSettings { s.RateMode = &v return s } // SetScte35Esam sets the Scte35Esam field's value. func (s *M2tsSettings) SetScte35Esam(v *M2tsScte35Esam) *M2tsSettings { s.Scte35Esam = v return s } // SetScte35Pid sets the Scte35Pid field's value. func (s *M2tsSettings) SetScte35Pid(v int64) *M2tsSettings { s.Scte35Pid = &v return s } // SetScte35Source sets the Scte35Source field's value. func (s *M2tsSettings) SetScte35Source(v string) *M2tsSettings { s.Scte35Source = &v return s } // SetSegmentationMarkers sets the SegmentationMarkers field's value. func (s *M2tsSettings) SetSegmentationMarkers(v string) *M2tsSettings { s.SegmentationMarkers = &v return s } // SetSegmentationStyle sets the SegmentationStyle field's value. func (s *M2tsSettings) SetSegmentationStyle(v string) *M2tsSettings { s.SegmentationStyle = &v return s } // SetSegmentationTime sets the SegmentationTime field's value. func (s *M2tsSettings) SetSegmentationTime(v float64) *M2tsSettings { s.SegmentationTime = &v return s } // SetTimedMetadataPid sets the TimedMetadataPid field's value. func (s *M2tsSettings) SetTimedMetadataPid(v int64) *M2tsSettings { s.TimedMetadataPid = &v return s } // SetTransportStreamId sets the TransportStreamId field's value. func (s *M2tsSettings) SetTransportStreamId(v int64) *M2tsSettings { s.TransportStreamId = &v return s } // SetVideoPid sets the VideoPid field's value. func (s *M2tsSettings) SetVideoPid(v int64) *M2tsSettings { s.VideoPid = &v return s } // Settings for TS segments in HLS type M3u8Settings struct { _ struct{} `type:"structure"` // The number of audio frames to insert for each PES packet. AudioFramesPerPes *int64 `locationName:"audioFramesPerPes" type:"integer"` // Packet Identifier (PID) of the elementary audio stream(s) in the transport // stream. Multiple values are accepted, and can be entered in ranges and/or // by comma separation. AudioPids []*int64 `locationName:"audioPids" type:"list"` // If INSERT, Nielsen inaudible tones for media tracking will be detected in // the input audio and an equivalent ID3 tag will be inserted in the output. NielsenId3 *string `locationName:"nielsenId3" type:"string" enum:"M3u8NielsenId3"` // The number of milliseconds between instances of this table in the output // transport stream. PatInterval *int64 `locationName:"patInterval" type:"integer"` // When set to PCR_EVERY_PES_PACKET a Program Clock Reference value is inserted // for every Packetized Elementary Stream (PES) header. This parameter is effective // only when the PCR PID is the same as the video or audio elementary stream. PcrControl *string `locationName:"pcrControl" type:"string" enum:"M3u8PcrControl"` // Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport // stream. When no value is given, the encoder will assign the same value as // the Video PID. PcrPid *int64 `locationName:"pcrPid" min:"32" type:"integer"` // The number of milliseconds between instances of this table in the output // transport stream. PmtInterval *int64 `locationName:"pmtInterval" type:"integer"` // Packet Identifier (PID) for the Program Map Table (PMT) in the transport // stream. PmtPid *int64 `locationName:"pmtPid" min:"32" type:"integer"` // Packet Identifier (PID) of the private metadata stream in the transport stream. PrivateMetadataPid *int64 `locationName:"privateMetadataPid" min:"32" type:"integer"` // The value of the program number field in the Program Map Table. ProgramNumber *int64 `locationName:"programNumber" type:"integer"` // Packet Identifier (PID) of the SCTE-35 stream in the transport stream. Scte35Pid *int64 `locationName:"scte35Pid" min:"32" type:"integer"` // Enables SCTE-35 passthrough (scte35Source) to pass any SCTE-35 signals from // input to output. Scte35Source *string `locationName:"scte35Source" type:"string" enum:"M3u8Scte35Source"` // Applies only to HLS outputs. Use this setting to specify whether the service // inserts the ID3 timed metadata from the input in this output. TimedMetadata *string `locationName:"timedMetadata" type:"string" enum:"TimedMetadata"` // Packet Identifier (PID) of the timed metadata stream in the transport stream. TimedMetadataPid *int64 `locationName:"timedMetadataPid" min:"32" type:"integer"` // The value of the transport stream ID field in the Program Map Table. TransportStreamId *int64 `locationName:"transportStreamId" type:"integer"` // Packet Identifier (PID) of the elementary video stream in the transport stream. VideoPid *int64 `locationName:"videoPid" min:"32" type:"integer"` } // String returns the string representation func (s M3u8Settings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s M3u8Settings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *M3u8Settings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "M3u8Settings"} if s.PcrPid != nil && *s.PcrPid < 32 { invalidParams.Add(request.NewErrParamMinValue("PcrPid", 32)) } if s.PmtPid != nil && *s.PmtPid < 32 { invalidParams.Add(request.NewErrParamMinValue("PmtPid", 32)) } if s.PrivateMetadataPid != nil && *s.PrivateMetadataPid < 32 { invalidParams.Add(request.NewErrParamMinValue("PrivateMetadataPid", 32)) } if s.Scte35Pid != nil && *s.Scte35Pid < 32 { invalidParams.Add(request.NewErrParamMinValue("Scte35Pid", 32)) } if s.TimedMetadataPid != nil && *s.TimedMetadataPid < 32 { invalidParams.Add(request.NewErrParamMinValue("TimedMetadataPid", 32)) } if s.VideoPid != nil && *s.VideoPid < 32 { invalidParams.Add(request.NewErrParamMinValue("VideoPid", 32)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAudioFramesPerPes sets the AudioFramesPerPes field's value. func (s *M3u8Settings) SetAudioFramesPerPes(v int64) *M3u8Settings { s.AudioFramesPerPes = &v return s } // SetAudioPids sets the AudioPids field's value. func (s *M3u8Settings) SetAudioPids(v []*int64) *M3u8Settings { s.AudioPids = v return s } // SetNielsenId3 sets the NielsenId3 field's value. func (s *M3u8Settings) SetNielsenId3(v string) *M3u8Settings { s.NielsenId3 = &v return s } // SetPatInterval sets the PatInterval field's value. func (s *M3u8Settings) SetPatInterval(v int64) *M3u8Settings { s.PatInterval = &v return s } // SetPcrControl sets the PcrControl field's value. func (s *M3u8Settings) SetPcrControl(v string) *M3u8Settings { s.PcrControl = &v return s } // SetPcrPid sets the PcrPid field's value. func (s *M3u8Settings) SetPcrPid(v int64) *M3u8Settings { s.PcrPid = &v return s } // SetPmtInterval sets the PmtInterval field's value. func (s *M3u8Settings) SetPmtInterval(v int64) *M3u8Settings { s.PmtInterval = &v return s } // SetPmtPid sets the PmtPid field's value. func (s *M3u8Settings) SetPmtPid(v int64) *M3u8Settings { s.PmtPid = &v return s } // SetPrivateMetadataPid sets the PrivateMetadataPid field's value. func (s *M3u8Settings) SetPrivateMetadataPid(v int64) *M3u8Settings { s.PrivateMetadataPid = &v return s } // SetProgramNumber sets the ProgramNumber field's value. func (s *M3u8Settings) SetProgramNumber(v int64) *M3u8Settings { s.ProgramNumber = &v return s } // SetScte35Pid sets the Scte35Pid field's value. func (s *M3u8Settings) SetScte35Pid(v int64) *M3u8Settings { s.Scte35Pid = &v return s } // SetScte35Source sets the Scte35Source field's value. func (s *M3u8Settings) SetScte35Source(v string) *M3u8Settings { s.Scte35Source = &v return s } // SetTimedMetadata sets the TimedMetadata field's value. func (s *M3u8Settings) SetTimedMetadata(v string) *M3u8Settings { s.TimedMetadata = &v return s } // SetTimedMetadataPid sets the TimedMetadataPid field's value. func (s *M3u8Settings) SetTimedMetadataPid(v int64) *M3u8Settings { s.TimedMetadataPid = &v return s } // SetTransportStreamId sets the TransportStreamId field's value. func (s *M3u8Settings) SetTransportStreamId(v int64) *M3u8Settings { s.TransportStreamId = &v return s } // SetVideoPid sets the VideoPid field's value. func (s *M3u8Settings) SetVideoPid(v int64) *M3u8Settings { s.VideoPid = &v return s } // Overlay motion graphics on top of your video at the time that you specify. type MotionImageInserter struct { _ struct{} `type:"structure"` // If your motion graphic asset is a .mov file, keep this setting unspecified. // If your motion graphic asset is a series of .png files, specify the frame // rate of the overlay in frames per second, as a fraction. For example, specify // 24 fps as 24/1. Make sure that the number of images in your series matches // the frame rate and your intended overlay duration. For example, if you want // a 30-second overlay at 30 fps, you should have 900 .png images. This overlay // frame rate doesn't need to match the frame rate of the underlying video. Framerate *MotionImageInsertionFramerate `locationName:"framerate" type:"structure"` // Specify the .mov file or series of .png files that you want to overlay on // your video. For .png files, provide the file name of the first file in the // series. Make sure that the names of the .png files end with sequential numbers // that specify the order that they are played in. For example, overlay_000.png, // overlay_001.png, overlay_002.png, and so on. The sequence must start at zero, // and each image file name must have the same number of digits. Pad your initial // file names with enough zeros to complete the sequence. For example, if the // first image is overlay_0.png, there can be only 10 images in the sequence, // with the last image being overlay_9.png. But if the first image is overlay_00.png, // there can be 100 images in the sequence. Input *string `locationName:"input" min:"14" type:"string"` // Choose the type of motion graphic asset that you are providing for your overlay. // You can choose either a .mov file or a series of .png files. InsertionMode *string `locationName:"insertionMode" type:"string" enum:"MotionImageInsertionMode"` // Use Offset to specify the placement of your motion graphic overlay on the // video frame. Specify in pixels, from the upper-left corner of the frame. // If you don't specify an offset, the service scales your overlay to the full // size of the frame. Otherwise, the service inserts the overlay at its native // resolution and scales the size up or down with any video scaling. Offset *MotionImageInsertionOffset `locationName:"offset" type:"structure"` // Specify whether your motion graphic overlay repeats on a loop or plays only // once. Playback *string `locationName:"playback" type:"string" enum:"MotionImagePlayback"` // Specify when the motion overlay begins. Use timecode format (HH:MM:SS:FF // or HH:MM:SS;FF). Make sure that the timecode you provide here takes into // account how you have set up your timecode configuration under both job settings // and input settings. The simplest way to do that is to set both to start at // 0. If you need to set up your job to follow timecodes embedded in your source // that don't start at zero, make sure that you specify a start time that is // after the first embedded timecode. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/setting-up-timecode.html // Find job-wide and input timecode configuration settings in your JSON job // settings specification at settings>timecodeConfig>source and settings>inputs>timecodeSource. StartTime *string `locationName:"startTime" min:"11" type:"string"` } // String returns the string representation func (s MotionImageInserter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MotionImageInserter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MotionImageInserter) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MotionImageInserter"} if s.Input != nil && len(*s.Input) < 14 { invalidParams.Add(request.NewErrParamMinLen("Input", 14)) } if s.StartTime != nil && len(*s.StartTime) < 11 { invalidParams.Add(request.NewErrParamMinLen("StartTime", 11)) } if s.Framerate != nil { if err := s.Framerate.Validate(); err != nil { invalidParams.AddNested("Framerate", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetFramerate sets the Framerate field's value. func (s *MotionImageInserter) SetFramerate(v *MotionImageInsertionFramerate) *MotionImageInserter { s.Framerate = v return s } // SetInput sets the Input field's value. func (s *MotionImageInserter) SetInput(v string) *MotionImageInserter { s.Input = &v return s } // SetInsertionMode sets the InsertionMode field's value. func (s *MotionImageInserter) SetInsertionMode(v string) *MotionImageInserter { s.InsertionMode = &v return s } // SetOffset sets the Offset field's value. func (s *MotionImageInserter) SetOffset(v *MotionImageInsertionOffset) *MotionImageInserter { s.Offset = v return s } // SetPlayback sets the Playback field's value. func (s *MotionImageInserter) SetPlayback(v string) *MotionImageInserter { s.Playback = &v return s } // SetStartTime sets the StartTime field's value. func (s *MotionImageInserter) SetStartTime(v string) *MotionImageInserter { s.StartTime = &v return s } // For motion overlays that don't have a built-in frame rate, specify the frame // rate of the overlay in frames per second, as a fraction. For example, specify // 24 fps as 24/1. The overlay frame rate doesn't need to match the frame rate // of the underlying video. type MotionImageInsertionFramerate struct { _ struct{} `type:"structure"` // The bottom of the fraction that expresses your overlay frame rate. For example, // if your frame rate is 24 fps, set this value to 1. FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"` // The top of the fraction that expresses your overlay frame rate. For example, // if your frame rate is 24 fps, set this value to 24. FramerateNumerator *int64 `locationName:"framerateNumerator" min:"1" type:"integer"` } // String returns the string representation func (s MotionImageInsertionFramerate) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MotionImageInsertionFramerate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MotionImageInsertionFramerate) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MotionImageInsertionFramerate"} if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 { invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1)) } if s.FramerateNumerator != nil && *s.FramerateNumerator < 1 { invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetFramerateDenominator sets the FramerateDenominator field's value. func (s *MotionImageInsertionFramerate) SetFramerateDenominator(v int64) *MotionImageInsertionFramerate { s.FramerateDenominator = &v return s } // SetFramerateNumerator sets the FramerateNumerator field's value. func (s *MotionImageInsertionFramerate) SetFramerateNumerator(v int64) *MotionImageInsertionFramerate { s.FramerateNumerator = &v return s } // Specify the offset between the upper-left corner of the video frame and the // top left corner of the overlay. type MotionImageInsertionOffset struct { _ struct{} `type:"structure"` // Set the distance, in pixels, between the overlay and the left edge of the // video frame. ImageX *int64 `locationName:"imageX" type:"integer"` // Set the distance, in pixels, between the overlay and the top edge of the // video frame. ImageY *int64 `locationName:"imageY" type:"integer"` } // String returns the string representation func (s MotionImageInsertionOffset) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MotionImageInsertionOffset) GoString() string { return s.String() } // SetImageX sets the ImageX field's value. func (s *MotionImageInsertionOffset) SetImageX(v int64) *MotionImageInsertionOffset { s.ImageX = &v return s } // SetImageY sets the ImageY field's value. func (s *MotionImageInsertionOffset) SetImageY(v int64) *MotionImageInsertionOffset { s.ImageY = &v return s } // Settings for MOV Container. type MovSettings struct { _ struct{} `type:"structure"` // When enabled, include 'clap' atom if appropriate for the video output settings. ClapAtom *string `locationName:"clapAtom" type:"string" enum:"MovClapAtom"` // When enabled, file composition times will start at zero, composition times // in the 'ctts' (composition time to sample) box for B-frames will be negative, // and a 'cslg' (composition shift least greatest) box will be included per // 14496-1 amendment 1. This improves compatibility with Apple players and tools. CslgAtom *string `locationName:"cslgAtom" type:"string" enum:"MovCslgAtom"` // When set to XDCAM, writes MPEG2 video streams into the QuickTime file using // XDCAM fourcc codes. This increases compatibility with Apple editors and players, // but may decrease compatibility with other players. Only applicable when the // video codec is MPEG2. Mpeg2FourCCControl *string `locationName:"mpeg2FourCCControl" type:"string" enum:"MovMpeg2FourCCControl"` // If set to OMNEON, inserts Omneon-compatible padding PaddingControl *string `locationName:"paddingControl" type:"string" enum:"MovPaddingControl"` // Always keep the default value (SELF_CONTAINED) for this setting. Reference *string `locationName:"reference" type:"string" enum:"MovReference"` } // String returns the string representation func (s MovSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MovSettings) GoString() string { return s.String() } // SetClapAtom sets the ClapAtom field's value. func (s *MovSettings) SetClapAtom(v string) *MovSettings { s.ClapAtom = &v return s } // SetCslgAtom sets the CslgAtom field's value. func (s *MovSettings) SetCslgAtom(v string) *MovSettings { s.CslgAtom = &v return s } // SetMpeg2FourCCControl sets the Mpeg2FourCCControl field's value. func (s *MovSettings) SetMpeg2FourCCControl(v string) *MovSettings { s.Mpeg2FourCCControl = &v return s } // SetPaddingControl sets the PaddingControl field's value. func (s *MovSettings) SetPaddingControl(v string) *MovSettings { s.PaddingControl = &v return s } // SetReference sets the Reference field's value. func (s *MovSettings) SetReference(v string) *MovSettings { s.Reference = &v return s } // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to // the value MP2. type Mp2Settings struct { _ struct{} `type:"structure"` // Average bitrate in bits/second. Bitrate *int64 `locationName:"bitrate" min:"32000" type:"integer"` // Set Channels to specify the number of channels in this output audio track. // Choosing Mono in the console will give you 1 output channel; choosing Stereo // will give you 2. In the API, valid values are 1 and 2. Channels *int64 `locationName:"channels" min:"1" type:"integer"` // Sample rate in hz. SampleRate *int64 `locationName:"sampleRate" min:"32000" type:"integer"` } // String returns the string representation func (s Mp2Settings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Mp2Settings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Mp2Settings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Mp2Settings"} if s.Bitrate != nil && *s.Bitrate < 32000 { invalidParams.Add(request.NewErrParamMinValue("Bitrate", 32000)) } if s.Channels != nil && *s.Channels < 1 { invalidParams.Add(request.NewErrParamMinValue("Channels", 1)) } if s.SampleRate != nil && *s.SampleRate < 32000 { invalidParams.Add(request.NewErrParamMinValue("SampleRate", 32000)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBitrate sets the Bitrate field's value. func (s *Mp2Settings) SetBitrate(v int64) *Mp2Settings { s.Bitrate = &v return s } // SetChannels sets the Channels field's value. func (s *Mp2Settings) SetChannels(v int64) *Mp2Settings { s.Channels = &v return s } // SetSampleRate sets the SampleRate field's value. func (s *Mp2Settings) SetSampleRate(v int64) *Mp2Settings { s.SampleRate = &v return s } // Settings for MP4 Container type Mp4Settings struct { _ struct{} `type:"structure"` // When enabled, file composition times will start at zero, composition times // in the 'ctts' (composition time to sample) box for B-frames will be negative, // and a 'cslg' (composition shift least greatest) box will be included per // 14496-1 amendment 1. This improves compatibility with Apple players and tools. CslgAtom *string `locationName:"cslgAtom" type:"string" enum:"Mp4CslgAtom"` // Inserts a free-space box immediately after the moov box. FreeSpaceBox *string `locationName:"freeSpaceBox" type:"string" enum:"Mp4FreeSpaceBox"` // If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning // of the archive as required for progressive downloading. Otherwise it is placed // normally at the end. MoovPlacement *string `locationName:"moovPlacement" type:"string" enum:"Mp4MoovPlacement"` // Overrides the "Major Brand" field in the output file. Usually not necessary // to specify. Mp4MajorBrand *string `locationName:"mp4MajorBrand" type:"string"` } // String returns the string representation func (s Mp4Settings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Mp4Settings) GoString() string { return s.String() } // SetCslgAtom sets the CslgAtom field's value. func (s *Mp4Settings) SetCslgAtom(v string) *Mp4Settings { s.CslgAtom = &v return s } // SetFreeSpaceBox sets the FreeSpaceBox field's value. func (s *Mp4Settings) SetFreeSpaceBox(v string) *Mp4Settings { s.FreeSpaceBox = &v return s } // SetMoovPlacement sets the MoovPlacement field's value. func (s *Mp4Settings) SetMoovPlacement(v string) *Mp4Settings { s.MoovPlacement = &v return s } // SetMp4MajorBrand sets the Mp4MajorBrand field's value. func (s *Mp4Settings) SetMp4MajorBrand(v string) *Mp4Settings { s.Mp4MajorBrand = &v return s } // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to // the value MPEG2. type Mpeg2Settings struct { _ struct{} `type:"structure"` // Adaptive quantization. Allows intra-frame quantizers to vary to improve visual // quality. AdaptiveQuantization *string `locationName:"adaptiveQuantization" type:"string" enum:"Mpeg2AdaptiveQuantization"` // Average bitrate in bits/second. Required for VBR and CBR. For MS Smooth outputs, // bitrates must be unique when rounded down to the nearest multiple of 1000. Bitrate *int64 `locationName:"bitrate" min:"1000" type:"integer"` // Use Level (Mpeg2CodecLevel) to set the MPEG-2 level for the video output. CodecLevel *string `locationName:"codecLevel" type:"string" enum:"Mpeg2CodecLevel"` // Use Profile (Mpeg2CodecProfile) to set the MPEG-2 profile for the video output. CodecProfile *string `locationName:"codecProfile" type:"string" enum:"Mpeg2CodecProfile"` // Choose Adaptive to improve subjective video quality for high-motion content. // This will cause the service to use fewer B-frames (which infer information // based on other frames) for high-motion portions of the video and more B-frames // for low-motion portions. The maximum number of B-frames is limited by the // value you provide for the setting B frames between reference frames (numberBFramesBetweenReferenceFrames). DynamicSubGop *string `locationName:"dynamicSubGop" type:"string" enum:"Mpeg2DynamicSubGop"` // If you are using the console, use the Framerate setting to specify the frame // rate for this output. If you want to keep the same frame rate as the input // video, choose Follow source. If you want to do frame rate conversion, choose // a frame rate from the dropdown list or choose Custom. The framerates shown // in the dropdown list are decimal approximations of fractions. If you choose // Custom, specify your frame rate as a fraction. If you are creating your transcoding // job sepecification as a JSON file without the console, use FramerateControl // to specify which value the service uses for the frame rate for this output. // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate // from the input. Choose SPECIFIED if you want the service to use the frame // rate you specify in the settings FramerateNumerator and FramerateDenominator. FramerateControl *string `locationName:"framerateControl" type:"string" enum:"Mpeg2FramerateControl"` // When set to INTERPOLATE, produces smoother motion during frame rate conversion. FramerateConversionAlgorithm *string `locationName:"framerateConversionAlgorithm" type:"string" enum:"Mpeg2FramerateConversionAlgorithm"` // Frame rate denominator. FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"` // Frame rate numerator - frame rate is a fraction, e.g. 24000 / 1001 = 23.976 // fps. FramerateNumerator *int64 `locationName:"framerateNumerator" min:"24" type:"integer"` // Frequency of closed GOPs. In streaming applications, it is recommended that // this be set to 1 so a decoder joining mid-stream will receive an IDR frame // as quickly as possible. Setting this value to 0 will break output segmenting. GopClosedCadence *int64 `locationName:"gopClosedCadence" type:"integer"` // GOP Length (keyframe interval) in frames or seconds. Must be greater than // zero. GopSize *float64 `locationName:"gopSize" type:"double"` // Indicates if the GOP Size in MPEG2 is specified in frames or seconds. If // seconds the system will convert the GOP Size into a frame count at run time. GopSizeUnits *string `locationName:"gopSizeUnits" type:"string" enum:"Mpeg2GopSizeUnits"` // Percentage of the buffer that should initially be filled (HRD buffer model). HrdBufferInitialFillPercentage *int64 `locationName:"hrdBufferInitialFillPercentage" type:"integer"` // Size of buffer (HRD buffer model) in bits. For example, enter five megabits // as 5000000. HrdBufferSize *int64 `locationName:"hrdBufferSize" type:"integer"` // Use Interlace mode (InterlaceMode) to choose the scan line type for the output. // * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce // interlaced output with the entire output having the same field polarity (top // or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default // Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, // behavior depends on the input scan type. - If the source is interlaced, the // output will be interlaced with the same polarity as the source (it will follow // the source). The output could therefore be a mix of "top field first" and // "bottom field first". - If the source is progressive, the output will be // interlaced with "top field first" or "bottom field first" polarity, depending // on which of the Follow options you chose. InterlaceMode *string `locationName:"interlaceMode" type:"string" enum:"Mpeg2InterlaceMode"` // Use Intra DC precision (Mpeg2IntraDcPrecision) to set quantization precision // for intra-block DC coefficients. If you choose the value auto, the service // will automatically select the precision based on the per-frame compression // ratio. IntraDcPrecision *string `locationName:"intraDcPrecision" type:"string" enum:"Mpeg2IntraDcPrecision"` // Maximum bitrate in bits/second. For example, enter five megabits per second // as 5000000. MaxBitrate *int64 `locationName:"maxBitrate" min:"1000" type:"integer"` // Enforces separation between repeated (cadence) I-frames and I-frames inserted // by Scene Change Detection. If a scene change I-frame is within I-interval // frames of a cadence I-frame, the GOP is shrunk and/or stretched to the scene // change I-frame. GOP stretch requires enabling lookahead as well as setting // I-interval. The normal cadence resumes for the next GOP. This setting is // only used when Scene Change Detect is enabled. Note: Maximum GOP stretch // = GOP size + Min-I-interval - 1 MinIInterval *int64 `locationName:"minIInterval" type:"integer"` // Number of B-frames between reference frames. NumberBFramesBetweenReferenceFrames *int64 `locationName:"numberBFramesBetweenReferenceFrames" type:"integer"` // Using the API, enable ParFollowSource if you want the service to use the // pixel aspect ratio from the input. Using the console, do this by choosing // Follow source for Pixel aspect ratio. ParControl *string `locationName:"parControl" type:"string" enum:"Mpeg2ParControl"` // Pixel Aspect Ratio denominator. ParDenominator *int64 `locationName:"parDenominator" min:"1" type:"integer"` // Pixel Aspect Ratio numerator. ParNumerator *int64 `locationName:"parNumerator" min:"1" type:"integer"` // Use Quality tuning level (Mpeg2QualityTuningLevel) to specifiy whether to // use single-pass or multipass video encoding. QualityTuningLevel *string `locationName:"qualityTuningLevel" type:"string" enum:"Mpeg2QualityTuningLevel"` // Use Rate control mode (Mpeg2RateControlMode) to specifiy whether the bitrate // is variable (vbr) or constant (cbr). RateControlMode *string `locationName:"rateControlMode" type:"string" enum:"Mpeg2RateControlMode"` // Scene change detection (inserts I-frames on scene changes). SceneChangeDetect *string `locationName:"sceneChangeDetect" type:"string" enum:"Mpeg2SceneChangeDetect"` // Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled // as 25fps, and audio is sped up correspondingly. SlowPal *string `locationName:"slowPal" type:"string" enum:"Mpeg2SlowPal"` // Softness. Selects quantizer matrix, larger values reduce high-frequency content // in the encoded image. Softness *int64 `locationName:"softness" type:"integer"` // Adjust quantization within each frame based on spatial variation of content // complexity. SpatialAdaptiveQuantization *string `locationName:"spatialAdaptiveQuantization" type:"string" enum:"Mpeg2SpatialAdaptiveQuantization"` // Produces a Type D-10 compatible bitstream (SMPTE 356M-2001). Syntax *string `locationName:"syntax" type:"string" enum:"Mpeg2Syntax"` // Only use Telecine (Mpeg2Telecine) when you set Framerate (Framerate) to 29.970. // Set Telecine (Mpeg2Telecine) to Hard (hard) to produce a 29.97i output from // a 23.976 input. Set it to Soft (soft) to produce 23.976 output and leave // converstion to the player. Telecine *string `locationName:"telecine" type:"string" enum:"Mpeg2Telecine"` // Adjust quantization within each frame based on temporal variation of content // complexity. TemporalAdaptiveQuantization *string `locationName:"temporalAdaptiveQuantization" type:"string" enum:"Mpeg2TemporalAdaptiveQuantization"` } // String returns the string representation func (s Mpeg2Settings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Mpeg2Settings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Mpeg2Settings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Mpeg2Settings"} if s.Bitrate != nil && *s.Bitrate < 1000 { invalidParams.Add(request.NewErrParamMinValue("Bitrate", 1000)) } if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 { invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1)) } if s.FramerateNumerator != nil && *s.FramerateNumerator < 24 { invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 24)) } if s.MaxBitrate != nil && *s.MaxBitrate < 1000 { invalidParams.Add(request.NewErrParamMinValue("MaxBitrate", 1000)) } if s.ParDenominator != nil && *s.ParDenominator < 1 { invalidParams.Add(request.NewErrParamMinValue("ParDenominator", 1)) } if s.ParNumerator != nil && *s.ParNumerator < 1 { invalidParams.Add(request.NewErrParamMinValue("ParNumerator", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAdaptiveQuantization sets the AdaptiveQuantization field's value. func (s *Mpeg2Settings) SetAdaptiveQuantization(v string) *Mpeg2Settings { s.AdaptiveQuantization = &v return s } // SetBitrate sets the Bitrate field's value. func (s *Mpeg2Settings) SetBitrate(v int64) *Mpeg2Settings { s.Bitrate = &v return s } // SetCodecLevel sets the CodecLevel field's value. func (s *Mpeg2Settings) SetCodecLevel(v string) *Mpeg2Settings { s.CodecLevel = &v return s } // SetCodecProfile sets the CodecProfile field's value. func (s *Mpeg2Settings) SetCodecProfile(v string) *Mpeg2Settings { s.CodecProfile = &v return s } // SetDynamicSubGop sets the DynamicSubGop field's value. func (s *Mpeg2Settings) SetDynamicSubGop(v string) *Mpeg2Settings { s.DynamicSubGop = &v return s } // SetFramerateControl sets the FramerateControl field's value. func (s *Mpeg2Settings) SetFramerateControl(v string) *Mpeg2Settings { s.FramerateControl = &v return s } // SetFramerateConversionAlgorithm sets the FramerateConversionAlgorithm field's value. func (s *Mpeg2Settings) SetFramerateConversionAlgorithm(v string) *Mpeg2Settings { s.FramerateConversionAlgorithm = &v return s } // SetFramerateDenominator sets the FramerateDenominator field's value. func (s *Mpeg2Settings) SetFramerateDenominator(v int64) *Mpeg2Settings { s.FramerateDenominator = &v return s } // SetFramerateNumerator sets the FramerateNumerator field's value. func (s *Mpeg2Settings) SetFramerateNumerator(v int64) *Mpeg2Settings { s.FramerateNumerator = &v return s } // SetGopClosedCadence sets the GopClosedCadence field's value. func (s *Mpeg2Settings) SetGopClosedCadence(v int64) *Mpeg2Settings { s.GopClosedCadence = &v return s } // SetGopSize sets the GopSize field's value. func (s *Mpeg2Settings) SetGopSize(v float64) *Mpeg2Settings { s.GopSize = &v return s } // SetGopSizeUnits sets the GopSizeUnits field's value. func (s *Mpeg2Settings) SetGopSizeUnits(v string) *Mpeg2Settings { s.GopSizeUnits = &v return s } // SetHrdBufferInitialFillPercentage sets the HrdBufferInitialFillPercentage field's value. func (s *Mpeg2Settings) SetHrdBufferInitialFillPercentage(v int64) *Mpeg2Settings { s.HrdBufferInitialFillPercentage = &v return s } // SetHrdBufferSize sets the HrdBufferSize field's value. func (s *Mpeg2Settings) SetHrdBufferSize(v int64) *Mpeg2Settings { s.HrdBufferSize = &v return s } // SetInterlaceMode sets the InterlaceMode field's value. func (s *Mpeg2Settings) SetInterlaceMode(v string) *Mpeg2Settings { s.InterlaceMode = &v return s } // SetIntraDcPrecision sets the IntraDcPrecision field's value. func (s *Mpeg2Settings) SetIntraDcPrecision(v string) *Mpeg2Settings { s.IntraDcPrecision = &v return s } // SetMaxBitrate sets the MaxBitrate field's value. func (s *Mpeg2Settings) SetMaxBitrate(v int64) *Mpeg2Settings { s.MaxBitrate = &v return s } // SetMinIInterval sets the MinIInterval field's value. func (s *Mpeg2Settings) SetMinIInterval(v int64) *Mpeg2Settings { s.MinIInterval = &v return s } // SetNumberBFramesBetweenReferenceFrames sets the NumberBFramesBetweenReferenceFrames field's value. func (s *Mpeg2Settings) SetNumberBFramesBetweenReferenceFrames(v int64) *Mpeg2Settings { s.NumberBFramesBetweenReferenceFrames = &v return s } // SetParControl sets the ParControl field's value. func (s *Mpeg2Settings) SetParControl(v string) *Mpeg2Settings { s.ParControl = &v return s } // SetParDenominator sets the ParDenominator field's value. func (s *Mpeg2Settings) SetParDenominator(v int64) *Mpeg2Settings { s.ParDenominator = &v return s } // SetParNumerator sets the ParNumerator field's value. func (s *Mpeg2Settings) SetParNumerator(v int64) *Mpeg2Settings { s.ParNumerator = &v return s } // SetQualityTuningLevel sets the QualityTuningLevel field's value. func (s *Mpeg2Settings) SetQualityTuningLevel(v string) *Mpeg2Settings { s.QualityTuningLevel = &v return s } // SetRateControlMode sets the RateControlMode field's value. func (s *Mpeg2Settings) SetRateControlMode(v string) *Mpeg2Settings { s.RateControlMode = &v return s } // SetSceneChangeDetect sets the SceneChangeDetect field's value. func (s *Mpeg2Settings) SetSceneChangeDetect(v string) *Mpeg2Settings { s.SceneChangeDetect = &v return s } // SetSlowPal sets the SlowPal field's value. func (s *Mpeg2Settings) SetSlowPal(v string) *Mpeg2Settings { s.SlowPal = &v return s } // SetSoftness sets the Softness field's value. func (s *Mpeg2Settings) SetSoftness(v int64) *Mpeg2Settings { s.Softness = &v return s } // SetSpatialAdaptiveQuantization sets the SpatialAdaptiveQuantization field's value. func (s *Mpeg2Settings) SetSpatialAdaptiveQuantization(v string) *Mpeg2Settings { s.SpatialAdaptiveQuantization = &v return s } // SetSyntax sets the Syntax field's value. func (s *Mpeg2Settings) SetSyntax(v string) *Mpeg2Settings { s.Syntax = &v return s } // SetTelecine sets the Telecine field's value. func (s *Mpeg2Settings) SetTelecine(v string) *Mpeg2Settings { s.Telecine = &v return s } // SetTemporalAdaptiveQuantization sets the TemporalAdaptiveQuantization field's value. func (s *Mpeg2Settings) SetTemporalAdaptiveQuantization(v string) *Mpeg2Settings { s.TemporalAdaptiveQuantization = &v return s } // If you are using DRM, set DRM System (MsSmoothEncryptionSettings) to specify // the value SpekeKeyProvider. type MsSmoothEncryptionSettings struct { _ struct{} `type:"structure"` // Settings for use with a SPEKE key provider SpekeKeyProvider *SpekeKeyProvider `locationName:"spekeKeyProvider" type:"structure"` } // String returns the string representation func (s MsSmoothEncryptionSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MsSmoothEncryptionSettings) GoString() string { return s.String() } // SetSpekeKeyProvider sets the SpekeKeyProvider field's value. func (s *MsSmoothEncryptionSettings) SetSpekeKeyProvider(v *SpekeKeyProvider) *MsSmoothEncryptionSettings { s.SpekeKeyProvider = v return s } // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to // MS_SMOOTH_GROUP_SETTINGS. type MsSmoothGroupSettings struct { _ struct{} `type:"structure"` // COMBINE_DUPLICATE_STREAMS combines identical audio encoding settings across // a Microsoft Smooth output group into a single audio stream. AudioDeduplication *string `locationName:"audioDeduplication" type:"string" enum:"MsSmoothAudioDeduplication"` // Use Destination (Destination) to specify the S3 output location and the output // filename base. Destination accepts format identifiers. If you do not specify // the base filename in the URI, the service will use the filename of the input // file. If your job has multiple inputs, the service uses the filename of the // first input file. Destination *string `locationName:"destination" type:"string"` // If you are using DRM, set DRM System (MsSmoothEncryptionSettings) to specify // the value SpekeKeyProvider. Encryption *MsSmoothEncryptionSettings `locationName:"encryption" type:"structure"` // Use Fragment length (FragmentLength) to specify the mp4 fragment sizes in // seconds. Fragment length must be compatible with GOP size and frame rate. FragmentLength *int64 `locationName:"fragmentLength" min:"1" type:"integer"` // Use Manifest encoding (MsSmoothManifestEncoding) to specify the encoding // format for the server and client manifest. Valid options are utf8 and utf16. ManifestEncoding *string `locationName:"manifestEncoding" type:"string" enum:"MsSmoothManifestEncoding"` } // String returns the string representation func (s MsSmoothGroupSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s MsSmoothGroupSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *MsSmoothGroupSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MsSmoothGroupSettings"} if s.FragmentLength != nil && *s.FragmentLength < 1 { invalidParams.Add(request.NewErrParamMinValue("FragmentLength", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAudioDeduplication sets the AudioDeduplication field's value. func (s *MsSmoothGroupSettings) SetAudioDeduplication(v string) *MsSmoothGroupSettings { s.AudioDeduplication = &v return s } // SetDestination sets the Destination field's value. func (s *MsSmoothGroupSettings) SetDestination(v string) *MsSmoothGroupSettings { s.Destination = &v return s } // SetEncryption sets the Encryption field's value. func (s *MsSmoothGroupSettings) SetEncryption(v *MsSmoothEncryptionSettings) *MsSmoothGroupSettings { s.Encryption = v return s } // SetFragmentLength sets the FragmentLength field's value. func (s *MsSmoothGroupSettings) SetFragmentLength(v int64) *MsSmoothGroupSettings { s.FragmentLength = &v return s } // SetManifestEncoding sets the ManifestEncoding field's value. func (s *MsSmoothGroupSettings) SetManifestEncoding(v string) *MsSmoothGroupSettings { s.ManifestEncoding = &v return s } // Settings for Nielsen Configuration type NielsenConfiguration struct { _ struct{} `type:"structure"` // Use Nielsen Configuration (NielsenConfiguration) to set the Nielsen measurement // system breakout code. Supported values are 0, 3, 7, and 9. BreakoutCode *int64 `locationName:"breakoutCode" type:"integer"` // Use Distributor ID (DistributorID) to specify the distributor ID that is // assigned to your organization by Neilsen. DistributorId *string `locationName:"distributorId" type:"string"` } // String returns the string representation func (s NielsenConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NielsenConfiguration) GoString() string { return s.String() } // SetBreakoutCode sets the BreakoutCode field's value. func (s *NielsenConfiguration) SetBreakoutCode(v int64) *NielsenConfiguration { s.BreakoutCode = &v return s } // SetDistributorId sets the DistributorId field's value. func (s *NielsenConfiguration) SetDistributorId(v string) *NielsenConfiguration { s.DistributorId = &v return s } // Enable the Noise reducer (NoiseReducer) feature to remove noise from your // video output if necessary. Enable or disable this feature for each output // individually. This setting is disabled by default. When you enable Noise // reducer (NoiseReducer), you must also select a value for Noise reducer filter // (NoiseReducerFilter). type NoiseReducer struct { _ struct{} `type:"structure"` // Use Noise reducer filter (NoiseReducerFilter) to select one of the following // spatial image filtering functions. To use this setting, you must also enable // Noise reducer (NoiseReducer). * Bilateral is an edge preserving noise reduction // filter. * Mean (softest), Gaussian, Lanczos, and Sharpen (sharpest) are convolution // filters. * Conserve is a min/max noise reduction filter. * Spatial is a frequency-domain // filter based on JND principles. Filter *string `locationName:"filter" type:"string" enum:"NoiseReducerFilter"` // Settings for a noise reducer filter FilterSettings *NoiseReducerFilterSettings `locationName:"filterSettings" type:"structure"` // Noise reducer filter settings for spatial filter. SpatialFilterSettings *NoiseReducerSpatialFilterSettings `locationName:"spatialFilterSettings" type:"structure"` } // String returns the string representation func (s NoiseReducer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NoiseReducer) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *NoiseReducer) Validate() error { invalidParams := request.ErrInvalidParams{Context: "NoiseReducer"} if s.SpatialFilterSettings != nil { if err := s.SpatialFilterSettings.Validate(); err != nil { invalidParams.AddNested("SpatialFilterSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetFilter sets the Filter field's value. func (s *NoiseReducer) SetFilter(v string) *NoiseReducer { s.Filter = &v return s } // SetFilterSettings sets the FilterSettings field's value. func (s *NoiseReducer) SetFilterSettings(v *NoiseReducerFilterSettings) *NoiseReducer { s.FilterSettings = v return s } // SetSpatialFilterSettings sets the SpatialFilterSettings field's value. func (s *NoiseReducer) SetSpatialFilterSettings(v *NoiseReducerSpatialFilterSettings) *NoiseReducer { s.SpatialFilterSettings = v return s } // Settings for a noise reducer filter type NoiseReducerFilterSettings struct { _ struct{} `type:"structure"` // Relative strength of noise reducing filter. Higher values produce stronger // filtering. Strength *int64 `locationName:"strength" type:"integer"` } // String returns the string representation func (s NoiseReducerFilterSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NoiseReducerFilterSettings) GoString() string { return s.String() } // SetStrength sets the Strength field's value. func (s *NoiseReducerFilterSettings) SetStrength(v int64) *NoiseReducerFilterSettings { s.Strength = &v return s } // Noise reducer filter settings for spatial filter. type NoiseReducerSpatialFilterSettings struct { _ struct{} `type:"structure"` // Specify strength of post noise reduction sharpening filter, with 0 disabling // the filter and 3 enabling it at maximum strength. PostFilterSharpenStrength *int64 `locationName:"postFilterSharpenStrength" type:"integer"` // The speed of the filter, from -2 (lower speed) to 3 (higher speed), with // 0 being the nominal value. Speed *int64 `locationName:"speed" type:"integer"` // Relative strength of noise reducing filter. Higher values produce stronger // filtering. Strength *int64 `locationName:"strength" type:"integer"` } // String returns the string representation func (s NoiseReducerSpatialFilterSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s NoiseReducerSpatialFilterSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *NoiseReducerSpatialFilterSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "NoiseReducerSpatialFilterSettings"} if s.Speed != nil && *s.Speed < -2 { invalidParams.Add(request.NewErrParamMinValue("Speed", -2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetPostFilterSharpenStrength sets the PostFilterSharpenStrength field's value. func (s *NoiseReducerSpatialFilterSettings) SetPostFilterSharpenStrength(v int64) *NoiseReducerSpatialFilterSettings { s.PostFilterSharpenStrength = &v return s } // SetSpeed sets the Speed field's value. func (s *NoiseReducerSpatialFilterSettings) SetSpeed(v int64) *NoiseReducerSpatialFilterSettings { s.Speed = &v return s } // SetStrength sets the Strength field's value. func (s *NoiseReducerSpatialFilterSettings) SetStrength(v int64) *NoiseReducerSpatialFilterSettings { s.Strength = &v return s } // An output object describes the settings for a single output file or stream // in an output group. type Output struct { _ struct{} `type:"structure"` // (AudioDescriptions) contains groups of audio encoding settings organized // by audio codec. Include one instance of (AudioDescriptions) per output. (AudioDescriptions) // can contain multiple groups of encoding settings. AudioDescriptions []*AudioDescription `locationName:"audioDescriptions" type:"list"` // (CaptionDescriptions) contains groups of captions settings. For each output // that has captions, include one instance of (CaptionDescriptions). (CaptionDescriptions) // can contain multiple groups of captions settings. CaptionDescriptions []*CaptionDescription `locationName:"captionDescriptions" type:"list"` // Container specific settings. ContainerSettings *ContainerSettings `locationName:"containerSettings" type:"structure"` // Use Extension (Extension) to specify the file extension for outputs in File // output groups. If you do not specify a value, the service will use default // extensions by container type as follows * MPEG-2 transport stream, m2ts * // Quicktime, mov * MXF container, mxf * MPEG-4 container, mp4 * No Container, // the service will use codec extensions (e.g. AAC, H265, H265, AC3) Extension *string `locationName:"extension" type:"string"` // Use Name modifier (NameModifier) to have the service add a string to the // end of each output filename. You specify the base filename as part of your // destination URI. When you create multiple outputs in the same output group, // Name modifier (NameModifier) is required. Name modifier also accepts format // identifiers. For DASH ISO outputs, if you use the format identifiers $Number$ // or $Time$ in one output, you must use them in the same way in all outputs // of the output group. NameModifier *string `locationName:"nameModifier" min:"1" type:"string"` // Specific settings for this type of output. OutputSettings *OutputSettings `locationName:"outputSettings" type:"structure"` // Use Preset (Preset) to specifiy a preset for your transcoding settings. Provide // the system or custom preset name. You can specify either Preset (Preset) // or Container settings (ContainerSettings), but not both. Preset *string `locationName:"preset" type:"string"` // (VideoDescription) contains a group of video encoding settings. The specific // video settings depend on the video codec you choose when you specify a value // for Video codec (codec). Include one instance of (VideoDescription) per output. VideoDescription *VideoDescription `locationName:"videoDescription" type:"structure"` } // String returns the string representation func (s Output) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Output) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Output) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Output"} if s.NameModifier != nil && len(*s.NameModifier) < 1 { invalidParams.Add(request.NewErrParamMinLen("NameModifier", 1)) } if s.AudioDescriptions != nil { for i, v := range s.AudioDescriptions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AudioDescriptions", i), err.(request.ErrInvalidParams)) } } } if s.CaptionDescriptions != nil { for i, v := range s.CaptionDescriptions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionDescriptions", i), err.(request.ErrInvalidParams)) } } } if s.ContainerSettings != nil { if err := s.ContainerSettings.Validate(); err != nil { invalidParams.AddNested("ContainerSettings", err.(request.ErrInvalidParams)) } } if s.VideoDescription != nil { if err := s.VideoDescription.Validate(); err != nil { invalidParams.AddNested("VideoDescription", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAudioDescriptions sets the AudioDescriptions field's value. func (s *Output) SetAudioDescriptions(v []*AudioDescription) *Output { s.AudioDescriptions = v return s } // SetCaptionDescriptions sets the CaptionDescriptions field's value. func (s *Output) SetCaptionDescriptions(v []*CaptionDescription) *Output { s.CaptionDescriptions = v return s } // SetContainerSettings sets the ContainerSettings field's value. func (s *Output) SetContainerSettings(v *ContainerSettings) *Output { s.ContainerSettings = v return s } // SetExtension sets the Extension field's value. func (s *Output) SetExtension(v string) *Output { s.Extension = &v return s } // SetNameModifier sets the NameModifier field's value. func (s *Output) SetNameModifier(v string) *Output { s.NameModifier = &v return s } // SetOutputSettings sets the OutputSettings field's value. func (s *Output) SetOutputSettings(v *OutputSettings) *Output { s.OutputSettings = v return s } // SetPreset sets the Preset field's value. func (s *Output) SetPreset(v string) *Output { s.Preset = &v return s } // SetVideoDescription sets the VideoDescription field's value. func (s *Output) SetVideoDescription(v *VideoDescription) *Output { s.VideoDescription = v return s } // OutputChannel mapping settings. type OutputChannelMapping struct { _ struct{} `type:"structure"` // List of input channels InputChannels []*int64 `locationName:"inputChannels" type:"list"` } // String returns the string representation func (s OutputChannelMapping) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OutputChannelMapping) GoString() string { return s.String() } // SetInputChannels sets the InputChannels field's value. func (s *OutputChannelMapping) SetInputChannels(v []*int64) *OutputChannelMapping { s.InputChannels = v return s } // Details regarding output type OutputDetail struct { _ struct{} `type:"structure"` // Duration in milliseconds DurationInMs *int64 `locationName:"durationInMs" type:"integer"` // Contains details about the output's video stream VideoDetails *VideoDetail `locationName:"videoDetails" type:"structure"` } // String returns the string representation func (s OutputDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OutputDetail) GoString() string { return s.String() } // SetDurationInMs sets the DurationInMs field's value. func (s *OutputDetail) SetDurationInMs(v int64) *OutputDetail { s.DurationInMs = &v return s } // SetVideoDetails sets the VideoDetails field's value. func (s *OutputDetail) SetVideoDetails(v *VideoDetail) *OutputDetail { s.VideoDetails = v return s } // Group of outputs type OutputGroup struct { _ struct{} `type:"structure"` // Use Custom Group Name (CustomName) to specify a name for the output group. // This value is displayed on the console and can make your job settings JSON // more human-readable. It does not affect your outputs. Use up to twelve characters // that are either letters, numbers, spaces, or underscores. CustomName *string `locationName:"customName" type:"string"` // Name of the output group Name *string `locationName:"name" type:"string"` // Output Group settings, including type OutputGroupSettings *OutputGroupSettings `locationName:"outputGroupSettings" type:"structure"` // This object holds groups of encoding settings, one group of settings per // output. Outputs []*Output `locationName:"outputs" type:"list"` } // String returns the string representation func (s OutputGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OutputGroup) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *OutputGroup) Validate() error { invalidParams := request.ErrInvalidParams{Context: "OutputGroup"} if s.OutputGroupSettings != nil { if err := s.OutputGroupSettings.Validate(); err != nil { invalidParams.AddNested("OutputGroupSettings", err.(request.ErrInvalidParams)) } } if s.Outputs != nil { for i, v := range s.Outputs { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Outputs", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCustomName sets the CustomName field's value. func (s *OutputGroup) SetCustomName(v string) *OutputGroup { s.CustomName = &v return s } // SetName sets the Name field's value. func (s *OutputGroup) SetName(v string) *OutputGroup { s.Name = &v return s } // SetOutputGroupSettings sets the OutputGroupSettings field's value. func (s *OutputGroup) SetOutputGroupSettings(v *OutputGroupSettings) *OutputGroup { s.OutputGroupSettings = v return s } // SetOutputs sets the Outputs field's value. func (s *OutputGroup) SetOutputs(v []*Output) *OutputGroup { s.Outputs = v return s } // Contains details about the output groups specified in the job settings. type OutputGroupDetail struct { _ struct{} `type:"structure"` // Details about the output OutputDetails []*OutputDetail `locationName:"outputDetails" type:"list"` } // String returns the string representation func (s OutputGroupDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OutputGroupDetail) GoString() string { return s.String() } // SetOutputDetails sets the OutputDetails field's value. func (s *OutputGroupDetail) SetOutputDetails(v []*OutputDetail) *OutputGroupDetail { s.OutputDetails = v return s } // Output Group settings, including type type OutputGroupSettings struct { _ struct{} `type:"structure"` // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to // CMAF_GROUP_SETTINGS. Each output in a CMAF Output Group may only contain // a single video, audio, or caption output. CmafGroupSettings *CmafGroupSettings `locationName:"cmafGroupSettings" type:"structure"` // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to // DASH_ISO_GROUP_SETTINGS. DashIsoGroupSettings *DashIsoGroupSettings `locationName:"dashIsoGroupSettings" type:"structure"` // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to // FILE_GROUP_SETTINGS. FileGroupSettings *FileGroupSettings `locationName:"fileGroupSettings" type:"structure"` // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to // HLS_GROUP_SETTINGS. HlsGroupSettings *HlsGroupSettings `locationName:"hlsGroupSettings" type:"structure"` // Required when you set (Type) under (OutputGroups)>(OutputGroupSettings) to // MS_SMOOTH_GROUP_SETTINGS. MsSmoothGroupSettings *MsSmoothGroupSettings `locationName:"msSmoothGroupSettings" type:"structure"` // Type of output group (File group, Apple HLS, DASH ISO, Microsoft Smooth Streaming, // CMAF) Type *string `locationName:"type" type:"string" enum:"OutputGroupType"` } // String returns the string representation func (s OutputGroupSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OutputGroupSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *OutputGroupSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "OutputGroupSettings"} if s.CmafGroupSettings != nil { if err := s.CmafGroupSettings.Validate(); err != nil { invalidParams.AddNested("CmafGroupSettings", err.(request.ErrInvalidParams)) } } if s.DashIsoGroupSettings != nil { if err := s.DashIsoGroupSettings.Validate(); err != nil { invalidParams.AddNested("DashIsoGroupSettings", err.(request.ErrInvalidParams)) } } if s.HlsGroupSettings != nil { if err := s.HlsGroupSettings.Validate(); err != nil { invalidParams.AddNested("HlsGroupSettings", err.(request.ErrInvalidParams)) } } if s.MsSmoothGroupSettings != nil { if err := s.MsSmoothGroupSettings.Validate(); err != nil { invalidParams.AddNested("MsSmoothGroupSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCmafGroupSettings sets the CmafGroupSettings field's value. func (s *OutputGroupSettings) SetCmafGroupSettings(v *CmafGroupSettings) *OutputGroupSettings { s.CmafGroupSettings = v return s } // SetDashIsoGroupSettings sets the DashIsoGroupSettings field's value. func (s *OutputGroupSettings) SetDashIsoGroupSettings(v *DashIsoGroupSettings) *OutputGroupSettings { s.DashIsoGroupSettings = v return s } // SetFileGroupSettings sets the FileGroupSettings field's value. func (s *OutputGroupSettings) SetFileGroupSettings(v *FileGroupSettings) *OutputGroupSettings { s.FileGroupSettings = v return s } // SetHlsGroupSettings sets the HlsGroupSettings field's value. func (s *OutputGroupSettings) SetHlsGroupSettings(v *HlsGroupSettings) *OutputGroupSettings { s.HlsGroupSettings = v return s } // SetMsSmoothGroupSettings sets the MsSmoothGroupSettings field's value. func (s *OutputGroupSettings) SetMsSmoothGroupSettings(v *MsSmoothGroupSettings) *OutputGroupSettings { s.MsSmoothGroupSettings = v return s } // SetType sets the Type field's value. func (s *OutputGroupSettings) SetType(v string) *OutputGroupSettings { s.Type = &v return s } // Specific settings for this type of output. type OutputSettings struct { _ struct{} `type:"structure"` // Settings for HLS output groups HlsSettings *HlsSettings `locationName:"hlsSettings" type:"structure"` } // String returns the string representation func (s OutputSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s OutputSettings) GoString() string { return s.String() } // SetHlsSettings sets the HlsSettings field's value. func (s *OutputSettings) SetHlsSettings(v *HlsSettings) *OutputSettings { s.HlsSettings = v return s } // A preset is a collection of preconfigured media conversion settings that // you want MediaConvert to apply to the output during the conversion process. type Preset struct { _ struct{} `type:"structure"` // An identifier for this resource that is unique within all of AWS. Arn *string `locationName:"arn" type:"string"` // An optional category you create to organize your presets. Category *string `locationName:"category" type:"string"` // The timestamp in epoch seconds for preset creation. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unixTimestamp"` // An optional description you create for each preset. Description *string `locationName:"description" type:"string"` // The timestamp in epoch seconds when the preset was last updated. LastUpdated *time.Time `locationName:"lastUpdated" type:"timestamp" timestampFormat:"unixTimestamp"` // A name you create for each preset. Each name must be unique within your account. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // Settings for preset // // Settings is a required field Settings *PresetSettings `locationName:"settings" type:"structure" required:"true"` // A preset can be of two types: system or custom. System or built-in preset // can't be modified or deleted by the user. Type *string `locationName:"type" type:"string" enum:"Type"` } // String returns the string representation func (s Preset) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Preset) GoString() string { return s.String() } // SetArn sets the Arn field's value. func (s *Preset) SetArn(v string) *Preset { s.Arn = &v return s } // SetCategory sets the Category field's value. func (s *Preset) SetCategory(v string) *Preset { s.Category = &v return s } // SetCreatedAt sets the CreatedAt field's value. func (s *Preset) SetCreatedAt(v time.Time) *Preset { s.CreatedAt = &v return s } // SetDescription sets the Description field's value. func (s *Preset) SetDescription(v string) *Preset { s.Description = &v return s } // SetLastUpdated sets the LastUpdated field's value. func (s *Preset) SetLastUpdated(v time.Time) *Preset { s.LastUpdated = &v return s } // SetName sets the Name field's value. func (s *Preset) SetName(v string) *Preset { s.Name = &v return s } // SetSettings sets the Settings field's value. func (s *Preset) SetSettings(v *PresetSettings) *Preset { s.Settings = v return s } // SetType sets the Type field's value. func (s *Preset) SetType(v string) *Preset { s.Type = &v return s } // Settings for preset type PresetSettings struct { _ struct{} `type:"structure"` // (AudioDescriptions) contains groups of audio encoding settings organized // by audio codec. Include one instance of (AudioDescriptions) per output. (AudioDescriptions) // can contain multiple groups of encoding settings. AudioDescriptions []*AudioDescription `locationName:"audioDescriptions" type:"list"` // Caption settings for this preset. There can be multiple caption settings // in a single output. CaptionDescriptions []*CaptionDescriptionPreset `locationName:"captionDescriptions" type:"list"` // Container specific settings. ContainerSettings *ContainerSettings `locationName:"containerSettings" type:"structure"` // (VideoDescription) contains a group of video encoding settings. The specific // video settings depend on the video codec you choose when you specify a value // for Video codec (codec). Include one instance of (VideoDescription) per output. VideoDescription *VideoDescription `locationName:"videoDescription" type:"structure"` } // String returns the string representation func (s PresetSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s PresetSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *PresetSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PresetSettings"} if s.AudioDescriptions != nil { for i, v := range s.AudioDescriptions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AudioDescriptions", i), err.(request.ErrInvalidParams)) } } } if s.CaptionDescriptions != nil { for i, v := range s.CaptionDescriptions { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionDescriptions", i), err.(request.ErrInvalidParams)) } } } if s.ContainerSettings != nil { if err := s.ContainerSettings.Validate(); err != nil { invalidParams.AddNested("ContainerSettings", err.(request.ErrInvalidParams)) } } if s.VideoDescription != nil { if err := s.VideoDescription.Validate(); err != nil { invalidParams.AddNested("VideoDescription", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAudioDescriptions sets the AudioDescriptions field's value. func (s *PresetSettings) SetAudioDescriptions(v []*AudioDescription) *PresetSettings { s.AudioDescriptions = v return s } // SetCaptionDescriptions sets the CaptionDescriptions field's value. func (s *PresetSettings) SetCaptionDescriptions(v []*CaptionDescriptionPreset) *PresetSettings { s.CaptionDescriptions = v return s } // SetContainerSettings sets the ContainerSettings field's value. func (s *PresetSettings) SetContainerSettings(v *ContainerSettings) *PresetSettings { s.ContainerSettings = v return s } // SetVideoDescription sets the VideoDescription field's value. func (s *PresetSettings) SetVideoDescription(v *VideoDescription) *PresetSettings { s.VideoDescription = v return s } // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to // the value PRORES. type ProresSettings struct { _ struct{} `type:"structure"` // Use Profile (ProResCodecProfile) to specifiy the type of Apple ProRes codec // to use for this output. CodecProfile *string `locationName:"codecProfile" type:"string" enum:"ProresCodecProfile"` // If you are using the console, use the Framerate setting to specify the frame // rate for this output. If you want to keep the same frame rate as the input // video, choose Follow source. If you want to do frame rate conversion, choose // a frame rate from the dropdown list or choose Custom. The framerates shown // in the dropdown list are decimal approximations of fractions. If you choose // Custom, specify your frame rate as a fraction. If you are creating your transcoding // job sepecification as a JSON file without the console, use FramerateControl // to specify which value the service uses for the frame rate for this output. // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate // from the input. Choose SPECIFIED if you want the service to use the frame // rate you specify in the settings FramerateNumerator and FramerateDenominator. FramerateControl *string `locationName:"framerateControl" type:"string" enum:"ProresFramerateControl"` // When set to INTERPOLATE, produces smoother motion during frame rate conversion. FramerateConversionAlgorithm *string `locationName:"framerateConversionAlgorithm" type:"string" enum:"ProresFramerateConversionAlgorithm"` // Frame rate denominator. FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"` // When you use the API for transcode jobs that use frame rate conversion, specify // the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use // FramerateNumerator to specify the numerator of this fraction. In this example, // use 24000 for the value of FramerateNumerator. FramerateNumerator *int64 `locationName:"framerateNumerator" min:"1" type:"integer"` // Use Interlace mode (InterlaceMode) to choose the scan line type for the output. // * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce // interlaced output with the entire output having the same field polarity (top // or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default // Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, // behavior depends on the input scan type. - If the source is interlaced, the // output will be interlaced with the same polarity as the source (it will follow // the source). The output could therefore be a mix of "top field first" and // "bottom field first". - If the source is progressive, the output will be // interlaced with "top field first" or "bottom field first" polarity, depending // on which of the Follow options you chose. InterlaceMode *string `locationName:"interlaceMode" type:"string" enum:"ProresInterlaceMode"` // Use (ProresParControl) to specify how the service determines the pixel aspect // ratio. Set to Follow source (INITIALIZE_FROM_SOURCE) to use the pixel aspect // ratio from the input. To specify a different pixel aspect ratio: Using the // console, choose it from the dropdown menu. Using the API, set ProresParControl // to (SPECIFIED) and provide for (ParNumerator) and (ParDenominator). ParControl *string `locationName:"parControl" type:"string" enum:"ProresParControl"` // Pixel Aspect Ratio denominator. ParDenominator *int64 `locationName:"parDenominator" min:"1" type:"integer"` // Pixel Aspect Ratio numerator. ParNumerator *int64 `locationName:"parNumerator" min:"1" type:"integer"` // Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled // as 25fps, and audio is sped up correspondingly. SlowPal *string `locationName:"slowPal" type:"string" enum:"ProresSlowPal"` // Only use Telecine (ProresTelecine) when you set Framerate (Framerate) to // 29.970. Set Telecine (ProresTelecine) to Hard (hard) to produce a 29.97i // output from a 23.976 input. Set it to Soft (soft) to produce 23.976 output // and leave converstion to the player. Telecine *string `locationName:"telecine" type:"string" enum:"ProresTelecine"` } // String returns the string representation func (s ProresSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ProresSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ProresSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ProresSettings"} if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 { invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1)) } if s.FramerateNumerator != nil && *s.FramerateNumerator < 1 { invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 1)) } if s.ParDenominator != nil && *s.ParDenominator < 1 { invalidParams.Add(request.NewErrParamMinValue("ParDenominator", 1)) } if s.ParNumerator != nil && *s.ParNumerator < 1 { invalidParams.Add(request.NewErrParamMinValue("ParNumerator", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCodecProfile sets the CodecProfile field's value. func (s *ProresSettings) SetCodecProfile(v string) *ProresSettings { s.CodecProfile = &v return s } // SetFramerateControl sets the FramerateControl field's value. func (s *ProresSettings) SetFramerateControl(v string) *ProresSettings { s.FramerateControl = &v return s } // SetFramerateConversionAlgorithm sets the FramerateConversionAlgorithm field's value. func (s *ProresSettings) SetFramerateConversionAlgorithm(v string) *ProresSettings { s.FramerateConversionAlgorithm = &v return s } // SetFramerateDenominator sets the FramerateDenominator field's value. func (s *ProresSettings) SetFramerateDenominator(v int64) *ProresSettings { s.FramerateDenominator = &v return s } // SetFramerateNumerator sets the FramerateNumerator field's value. func (s *ProresSettings) SetFramerateNumerator(v int64) *ProresSettings { s.FramerateNumerator = &v return s } // SetInterlaceMode sets the InterlaceMode field's value. func (s *ProresSettings) SetInterlaceMode(v string) *ProresSettings { s.InterlaceMode = &v return s } // SetParControl sets the ParControl field's value. func (s *ProresSettings) SetParControl(v string) *ProresSettings { s.ParControl = &v return s } // SetParDenominator sets the ParDenominator field's value. func (s *ProresSettings) SetParDenominator(v int64) *ProresSettings { s.ParDenominator = &v return s } // SetParNumerator sets the ParNumerator field's value. func (s *ProresSettings) SetParNumerator(v int64) *ProresSettings { s.ParNumerator = &v return s } // SetSlowPal sets the SlowPal field's value. func (s *ProresSettings) SetSlowPal(v string) *ProresSettings { s.SlowPal = &v return s } // SetTelecine sets the Telecine field's value. func (s *ProresSettings) SetTelecine(v string) *ProresSettings { s.Telecine = &v return s } // You can use queues to manage the resources that are available to your AWS // account for running multiple transcoding jobs at the same time. If you don't // specify a queue, the service sends all jobs through the default queue. For // more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/working-with-queues.html. type Queue struct { _ struct{} `type:"structure"` // An identifier for this resource that is unique within all of AWS. Arn *string `locationName:"arn" type:"string"` // The timestamp in epoch seconds for when you created the queue. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"unixTimestamp"` // An optional description that you create for each queue. Description *string `locationName:"description" type:"string"` // The timestamp in epoch seconds for when you most recently updated the queue. LastUpdated *time.Time `locationName:"lastUpdated" type:"timestamp" timestampFormat:"unixTimestamp"` // A name that you create for each queue. Each name must be unique within your // account. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` // Specifies whether the pricing plan for the queue is on-demand or reserved. // For on-demand, you pay per minute, billed in increments of .01 minute. For // reserved, you pay for the transcoding capacity of the entire queue, regardless // of how much or how little you use it. Reserved pricing requires a 12-month // commitment. PricingPlan *string `locationName:"pricingPlan" type:"string" enum:"PricingPlan"` // The estimated number of jobs with a PROGRESSING status. ProgressingJobsCount *int64 `locationName:"progressingJobsCount" type:"integer"` // Details about the pricing plan for your reserved queue. Required for reserved // queues and not applicable to on-demand queues. ReservationPlan *ReservationPlan `locationName:"reservationPlan" type:"structure"` // Queues can be ACTIVE or PAUSED. If you pause a queue, the service won't begin // processing jobs in that queue. Jobs that are running when you pause the queue // continue to run until they finish or result in an error. Status *string `locationName:"status" type:"string" enum:"QueueStatus"` // The estimated number of jobs with a SUBMITTED status. SubmittedJobsCount *int64 `locationName:"submittedJobsCount" type:"integer"` // Specifies whether this on-demand queue is system or custom. System queues // are built in. You can't modify or delete system queues. You can create and // modify custom queues. Type *string `locationName:"type" type:"string" enum:"Type"` } // String returns the string representation func (s Queue) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Queue) GoString() string { return s.String() } // SetArn sets the Arn field's value. func (s *Queue) SetArn(v string) *Queue { s.Arn = &v return s } // SetCreatedAt sets the CreatedAt field's value. func (s *Queue) SetCreatedAt(v time.Time) *Queue { s.CreatedAt = &v return s } // SetDescription sets the Description field's value. func (s *Queue) SetDescription(v string) *Queue { s.Description = &v return s } // SetLastUpdated sets the LastUpdated field's value. func (s *Queue) SetLastUpdated(v time.Time) *Queue { s.LastUpdated = &v return s } // SetName sets the Name field's value. func (s *Queue) SetName(v string) *Queue { s.Name = &v return s } // SetPricingPlan sets the PricingPlan field's value. func (s *Queue) SetPricingPlan(v string) *Queue { s.PricingPlan = &v return s } // SetProgressingJobsCount sets the ProgressingJobsCount field's value. func (s *Queue) SetProgressingJobsCount(v int64) *Queue { s.ProgressingJobsCount = &v return s } // SetReservationPlan sets the ReservationPlan field's value. func (s *Queue) SetReservationPlan(v *ReservationPlan) *Queue { s.ReservationPlan = v return s } // SetStatus sets the Status field's value. func (s *Queue) SetStatus(v string) *Queue { s.Status = &v return s } // SetSubmittedJobsCount sets the SubmittedJobsCount field's value. func (s *Queue) SetSubmittedJobsCount(v int64) *Queue { s.SubmittedJobsCount = &v return s } // SetType sets the Type field's value. func (s *Queue) SetType(v string) *Queue { s.Type = &v return s } // Use Rectangle to identify a specific area of the video frame. type Rectangle struct { _ struct{} `type:"structure"` // Height of rectangle in pixels. Specify only even numbers. Height *int64 `locationName:"height" min:"2" type:"integer"` // Width of rectangle in pixels. Specify only even numbers. Width *int64 `locationName:"width" min:"2" type:"integer"` // The distance, in pixels, between the rectangle and the left edge of the video // frame. Specify only even numbers. X *int64 `locationName:"x" type:"integer"` // The distance, in pixels, between the rectangle and the top edge of the video // frame. Specify only even numbers. Y *int64 `locationName:"y" type:"integer"` } // String returns the string representation func (s Rectangle) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Rectangle) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Rectangle) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Rectangle"} if s.Height != nil && *s.Height < 2 { invalidParams.Add(request.NewErrParamMinValue("Height", 2)) } if s.Width != nil && *s.Width < 2 { invalidParams.Add(request.NewErrParamMinValue("Width", 2)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetHeight sets the Height field's value. func (s *Rectangle) SetHeight(v int64) *Rectangle { s.Height = &v return s } // SetWidth sets the Width field's value. func (s *Rectangle) SetWidth(v int64) *Rectangle { s.Width = &v return s } // SetX sets the X field's value. func (s *Rectangle) SetX(v int64) *Rectangle { s.X = &v return s } // SetY sets the Y field's value. func (s *Rectangle) SetY(v int64) *Rectangle { s.Y = &v return s } // Use Manual audio remixing (RemixSettings) to adjust audio levels for each // audio channel in each output of your job. With audio remixing, you can output // more or fewer audio channels than your input audio source provides. type RemixSettings struct { _ struct{} `type:"structure"` // Channel mapping (ChannelMapping) contains the group of fields that hold the // remixing value for each channel. Units are in dB. Acceptable values are within // the range from -60 (mute) through 6. A setting of 0 passes the input channel // unchanged to the output channel (no attenuation or amplification). ChannelMapping *ChannelMapping `locationName:"channelMapping" type:"structure"` // Specify the number of audio channels from your input that you want to use // in your output. With remixing, you might combine or split the data in these // channels, so the number of channels in your final output might be different. ChannelsIn *int64 `locationName:"channelsIn" min:"1" type:"integer"` // Specify the number of channels in this output after remixing. Valid values: // 1, 2, 4, 6, 8 ChannelsOut *int64 `locationName:"channelsOut" min:"1" type:"integer"` } // String returns the string representation func (s RemixSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RemixSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RemixSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RemixSettings"} if s.ChannelsIn != nil && *s.ChannelsIn < 1 { invalidParams.Add(request.NewErrParamMinValue("ChannelsIn", 1)) } if s.ChannelsOut != nil && *s.ChannelsOut < 1 { invalidParams.Add(request.NewErrParamMinValue("ChannelsOut", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetChannelMapping sets the ChannelMapping field's value. func (s *RemixSettings) SetChannelMapping(v *ChannelMapping) *RemixSettings { s.ChannelMapping = v return s } // SetChannelsIn sets the ChannelsIn field's value. func (s *RemixSettings) SetChannelsIn(v int64) *RemixSettings { s.ChannelsIn = &v return s } // SetChannelsOut sets the ChannelsOut field's value. func (s *RemixSettings) SetChannelsOut(v int64) *RemixSettings { s.ChannelsOut = &v return s } // Details about the pricing plan for your reserved queue. Required for reserved // queues and not applicable to on-demand queues. type ReservationPlan struct { _ struct{} `type:"structure"` // The length of the term of your reserved queue pricing plan commitment. Commitment *string `locationName:"commitment" type:"string" enum:"Commitment"` // The timestamp in epoch seconds for when the current pricing plan term for // this reserved queue expires. ExpiresAt *time.Time `locationName:"expiresAt" type:"timestamp" timestampFormat:"unixTimestamp"` // The timestamp in epoch seconds for when you set up the current pricing plan // for this reserved queue. PurchasedAt *time.Time `locationName:"purchasedAt" type:"timestamp" timestampFormat:"unixTimestamp"` // Specifies whether the term of your reserved queue pricing plan is automatically // extended (AUTO_RENEW) or expires (EXPIRE) at the end of the term. RenewalType *string `locationName:"renewalType" type:"string" enum:"RenewalType"` // Specifies the number of reserved transcode slots (RTS) for this queue. The // number of RTS determines how many jobs the queue can process in parallel; // each RTS can process one job at a time. When you increase this number, you // extend your existing commitment with a new 12-month commitment for a larger // number of RTS. The new commitment begins when you purchase the additional // capacity. You can't decrease the number of RTS in your reserved queue. ReservedSlots *int64 `locationName:"reservedSlots" type:"integer"` // Specifies whether the pricing plan for your reserved queue is ACTIVE or EXPIRED. Status *string `locationName:"status" type:"string" enum:"ReservationPlanStatus"` } // String returns the string representation func (s ReservationPlan) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservationPlan) GoString() string { return s.String() } // SetCommitment sets the Commitment field's value. func (s *ReservationPlan) SetCommitment(v string) *ReservationPlan { s.Commitment = &v return s } // SetExpiresAt sets the ExpiresAt field's value. func (s *ReservationPlan) SetExpiresAt(v time.Time) *ReservationPlan { s.ExpiresAt = &v return s } // SetPurchasedAt sets the PurchasedAt field's value. func (s *ReservationPlan) SetPurchasedAt(v time.Time) *ReservationPlan { s.PurchasedAt = &v return s } // SetRenewalType sets the RenewalType field's value. func (s *ReservationPlan) SetRenewalType(v string) *ReservationPlan { s.RenewalType = &v return s } // SetReservedSlots sets the ReservedSlots field's value. func (s *ReservationPlan) SetReservedSlots(v int64) *ReservationPlan { s.ReservedSlots = &v return s } // SetStatus sets the Status field's value. func (s *ReservationPlan) SetStatus(v string) *ReservationPlan { s.Status = &v return s } // Details about the pricing plan for your reserved queue. Required for reserved // queues and not applicable to on-demand queues. type ReservationPlanSettings struct { _ struct{} `type:"structure"` // The length of the term of your reserved queue pricing plan commitment. // // Commitment is a required field Commitment *string `locationName:"commitment" type:"string" required:"true" enum:"Commitment"` // Specifies whether the term of your reserved queue pricing plan is automatically // extended (AUTO_RENEW) or expires (EXPIRE) at the end of the term. When your // term is auto renewed, you extend your commitment by 12 months from the auto // renew date. You can cancel this commitment. // // RenewalType is a required field RenewalType *string `locationName:"renewalType" type:"string" required:"true" enum:"RenewalType"` // Specifies the number of reserved transcode slots (RTS) for this queue. The // number of RTS determines how many jobs the queue can process in parallel; // each RTS can process one job at a time. You can't decrease the number of // RTS in your reserved queue. You can increase the number of RTS by extending // your existing commitment with a new 12-month commitment for the larger number. // The new commitment begins when you purchase the additional capacity. You // can't cancel your commitment or revert to your original commitment after // you increase the capacity. // // ReservedSlots is a required field ReservedSlots *int64 `locationName:"reservedSlots" type:"integer" required:"true"` } // String returns the string representation func (s ReservationPlanSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ReservationPlanSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ReservationPlanSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ReservationPlanSettings"} if s.Commitment == nil { invalidParams.Add(request.NewErrParamRequired("Commitment")) } if s.RenewalType == nil { invalidParams.Add(request.NewErrParamRequired("RenewalType")) } if s.ReservedSlots == nil { invalidParams.Add(request.NewErrParamRequired("ReservedSlots")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCommitment sets the Commitment field's value. func (s *ReservationPlanSettings) SetCommitment(v string) *ReservationPlanSettings { s.Commitment = &v return s } // SetRenewalType sets the RenewalType field's value. func (s *ReservationPlanSettings) SetRenewalType(v string) *ReservationPlanSettings { s.RenewalType = &v return s } // SetReservedSlots sets the ReservedSlots field's value. func (s *ReservationPlanSettings) SetReservedSlots(v int64) *ReservationPlanSettings { s.ReservedSlots = &v return s } // The Amazon Resource Name (ARN) and tags for an AWS Elemental MediaConvert // resource. type ResourceTags struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource. Arn *string `locationName:"arn" type:"string"` // The tags for the resource. Tags map[string]*string `locationName:"tags" type:"map"` } // String returns the string representation func (s ResourceTags) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ResourceTags) GoString() string { return s.String() } // SetArn sets the Arn field's value. func (s *ResourceTags) SetArn(v string) *ResourceTags { s.Arn = &v return s } // SetTags sets the Tags field's value. func (s *ResourceTags) SetTags(v map[string]*string) *ResourceTags { s.Tags = v return s } // Settings for SCC caption output. type SccDestinationSettings struct { _ struct{} `type:"structure"` // Set Framerate (SccDestinationFramerate) to make sure that the captions and // the video are synchronized in the output. Specify a frame rate that matches // the frame rate of the associated video. If the video frame rate is 29.97, // choose 29.97 dropframe (FRAMERATE_29_97_DROPFRAME) only if the video has // video_insertion=true and drop_frame_timecode=true; otherwise, choose 29.97 // non-dropframe (FRAMERATE_29_97_NON_DROPFRAME). Framerate *string `locationName:"framerate" type:"string" enum:"SccDestinationFramerate"` } // String returns the string representation func (s SccDestinationSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SccDestinationSettings) GoString() string { return s.String() } // SetFramerate sets the Framerate field's value. func (s *SccDestinationSettings) SetFramerate(v string) *SccDestinationSettings { s.Framerate = &v return s } // Settings for use with a SPEKE key provider type SpekeKeyProvider struct { _ struct{} `type:"structure"` // Optional AWS Certificate Manager ARN for a certificate to send to the keyprovider. // The certificate holds a key used by the keyprovider to encrypt the keys in // its response. CertificateArn *string `locationName:"certificateArn" type:"string"` // The SPEKE-compliant server uses Resource ID (ResourceId) to identify content. ResourceId *string `locationName:"resourceId" type:"string"` // Relates to SPEKE implementation. DRM system identifiers. DASH output groups // support a max of two system ids. Other group types support one system id. SystemIds []*string `locationName:"systemIds" type:"list"` // Use URL (Url) to specify the SPEKE-compliant server that will provide keys // for content. Url *string `locationName:"url" type:"string"` } // String returns the string representation func (s SpekeKeyProvider) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s SpekeKeyProvider) GoString() string { return s.String() } // SetCertificateArn sets the CertificateArn field's value. func (s *SpekeKeyProvider) SetCertificateArn(v string) *SpekeKeyProvider { s.CertificateArn = &v return s } // SetResourceId sets the ResourceId field's value. func (s *SpekeKeyProvider) SetResourceId(v string) *SpekeKeyProvider { s.ResourceId = &v return s } // SetSystemIds sets the SystemIds field's value. func (s *SpekeKeyProvider) SetSystemIds(v []*string) *SpekeKeyProvider { s.SystemIds = v return s } // SetUrl sets the Url field's value. func (s *SpekeKeyProvider) SetUrl(v string) *SpekeKeyProvider { s.Url = &v return s } // Use these settings to set up encryption with a static key provider. type StaticKeyProvider struct { _ struct{} `type:"structure"` // Relates to DRM implementation. Sets the value of the KEYFORMAT attribute. // Must be 'identity' or a reverse DNS string. May be omitted to indicate an // implicit value of 'identity'. KeyFormat *string `locationName:"keyFormat" type:"string"` // Relates to DRM implementation. Either a single positive integer version value // or a slash delimited list of version values (1/2/3). KeyFormatVersions *string `locationName:"keyFormatVersions" type:"string"` // Relates to DRM implementation. Use a 32-character hexidecimal string to specify // Key Value (StaticKeyValue). StaticKeyValue *string `locationName:"staticKeyValue" type:"string"` // Relates to DRM implementation. The location of the license server used for // protecting content. Url *string `locationName:"url" type:"string"` } // String returns the string representation func (s StaticKeyProvider) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StaticKeyProvider) GoString() string { return s.String() } // SetKeyFormat sets the KeyFormat field's value. func (s *StaticKeyProvider) SetKeyFormat(v string) *StaticKeyProvider { s.KeyFormat = &v return s } // SetKeyFormatVersions sets the KeyFormatVersions field's value. func (s *StaticKeyProvider) SetKeyFormatVersions(v string) *StaticKeyProvider { s.KeyFormatVersions = &v return s } // SetStaticKeyValue sets the StaticKeyValue field's value. func (s *StaticKeyProvider) SetStaticKeyValue(v string) *StaticKeyProvider { s.StaticKeyValue = &v return s } // SetUrl sets the Url field's value. func (s *StaticKeyProvider) SetUrl(v string) *StaticKeyProvider { s.Url = &v return s } // To add tags to a queue, preset, or job template, send a request with the // Amazon Resource Name (ARN) of the resource and the tags that you want to // add. type TagResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource that you want to tag. To get // the ARN, send a GET request with the resource name. // // Arn is a required field Arn *string `locationName:"arn" type:"string" required:"true"` // The tags that you want to add to the resource. You can tag resources with // a key-value pair or with only a key. // // Tags is a required field Tags map[string]*string `locationName:"tags" type:"map" required:"true"` } // String returns the string representation func (s TagResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TagResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TagResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetArn sets the Arn field's value. func (s *TagResourceInput) SetArn(v string) *TagResourceInput { s.Arn = &v return s } // SetTags sets the Tags field's value. func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { s.Tags = v return s } // A successful request to add tags to a resource returns an OK message. type TagResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s TagResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TagResourceOutput) GoString() string { return s.String() } // Settings for Teletext caption output type TeletextDestinationSettings struct { _ struct{} `type:"structure"` // Set pageNumber to the Teletext page number for the destination captions for // this output. This value must be a three-digit hexadecimal string; strings // ending in -FF are invalid. If you are passing through the entire set of Teletext // data, do not use this field. PageNumber *string `locationName:"pageNumber" min:"3" type:"string"` } // String returns the string representation func (s TeletextDestinationSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TeletextDestinationSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TeletextDestinationSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TeletextDestinationSettings"} if s.PageNumber != nil && len(*s.PageNumber) < 3 { invalidParams.Add(request.NewErrParamMinLen("PageNumber", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetPageNumber sets the PageNumber field's value. func (s *TeletextDestinationSettings) SetPageNumber(v string) *TeletextDestinationSettings { s.PageNumber = &v return s } // Settings specific to Teletext caption sources, including Page number. type TeletextSourceSettings struct { _ struct{} `type:"structure"` // Use Page Number (PageNumber) to specify the three-digit hexadecimal page // number that will be used for Teletext captions. Do not use this setting if // you are passing through teletext from the input source to output. PageNumber *string `locationName:"pageNumber" min:"3" type:"string"` } // String returns the string representation func (s TeletextSourceSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TeletextSourceSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TeletextSourceSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TeletextSourceSettings"} if s.PageNumber != nil && len(*s.PageNumber) < 3 { invalidParams.Add(request.NewErrParamMinLen("PageNumber", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetPageNumber sets the PageNumber field's value. func (s *TeletextSourceSettings) SetPageNumber(v string) *TeletextSourceSettings { s.PageNumber = &v return s } // Timecode burn-in (TimecodeBurnIn)--Burns the output timecode and specified // prefix into the output. type TimecodeBurnin struct { _ struct{} `type:"structure"` // Use Font Size (FontSize) to set the font size of any burned-in timecode. // Valid values are 10, 16, 32, 48. FontSize *int64 `locationName:"fontSize" min:"10" type:"integer"` // Use Position (Position) under under Timecode burn-in (TimecodeBurnIn) to // specify the location the burned-in timecode on output video. Position *string `locationName:"position" type:"string" enum:"TimecodeBurninPosition"` // Use Prefix (Prefix) to place ASCII characters before any burned-in timecode. // For example, a prefix of "EZ-" will result in the timecode "EZ-00:00:00:00". // Provide either the characters themselves or the ASCII code equivalents. The // supported range of characters is 0x20 through 0x7e. This includes letters, // numbers, and all special characters represented on a standard English keyboard. Prefix *string `locationName:"prefix" type:"string"` } // String returns the string representation func (s TimecodeBurnin) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TimecodeBurnin) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TimecodeBurnin) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TimecodeBurnin"} if s.FontSize != nil && *s.FontSize < 10 { invalidParams.Add(request.NewErrParamMinValue("FontSize", 10)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetFontSize sets the FontSize field's value. func (s *TimecodeBurnin) SetFontSize(v int64) *TimecodeBurnin { s.FontSize = &v return s } // SetPosition sets the Position field's value. func (s *TimecodeBurnin) SetPosition(v string) *TimecodeBurnin { s.Position = &v return s } // SetPrefix sets the Prefix field's value. func (s *TimecodeBurnin) SetPrefix(v string) *TimecodeBurnin { s.Prefix = &v return s } // These settings control how the service handles timecodes throughout the job. // These settings don't affect input clipping. type TimecodeConfig struct { _ struct{} `type:"structure"` // If you use an editing platform that relies on an anchor timecode, use Anchor // Timecode (Anchor) to specify a timecode that will match the input video frame // to the output video frame. Use 24-hour format with frame number, (HH:MM:SS:FF) // or (HH:MM:SS;FF). This setting ignores frame rate conversion. System behavior // for Anchor Timecode varies depending on your setting for Source (TimecodeSource). // * If Source (TimecodeSource) is set to Specified Start (SPECIFIEDSTART), // the first input frame is the specified value in Start Timecode (Start). Anchor // Timecode (Anchor) and Start Timecode (Start) are used calculate output timecode. // * If Source (TimecodeSource) is set to Start at 0 (ZEROBASED) the first frame // is 00:00:00:00. * If Source (TimecodeSource) is set to Embedded (EMBEDDED), // the first frame is the timecode value on the first input frame of the input. Anchor *string `locationName:"anchor" type:"string"` // Use Source (TimecodeSource) to set how timecodes are handled within this // job. To make sure that your video, audio, captions, and markers are synchronized // and that time-based features, such as image inserter, work correctly, choose // the Timecode source option that matches your assets. All timecodes are in // a 24-hour format with frame number (HH:MM:SS:FF). * Embedded (EMBEDDED) - // Use the timecode that is in the input video. If no embedded timecode is in // the source, the service will use Start at 0 (ZEROBASED) instead. * Start // at 0 (ZEROBASED) - Set the timecode of the initial frame to 00:00:00:00. // * Specified Start (SPECIFIEDSTART) - Set the timecode of the initial frame // to a value other than zero. You use Start timecode (Start) to provide this // value. Source *string `locationName:"source" type:"string" enum:"TimecodeSource"` // Only use when you set Source (TimecodeSource) to Specified start (SPECIFIEDSTART). // Use Start timecode (Start) to specify the timecode for the initial frame. // Use 24-hour format with frame number, (HH:MM:SS:FF) or (HH:MM:SS;FF). Start *string `locationName:"start" type:"string"` // Only applies to outputs that support program-date-time stamp. Use Timestamp // offset (TimestampOffset) to overwrite the timecode date without affecting // the time and frame number. Provide the new date as a string in the format // "yyyy-mm-dd". To use Time stamp offset, you must also enable Insert program-date-time // (InsertProgramDateTime) in the output settings. For example, if the date // part of your timecodes is 2002-1-25 and you want to change it to one year // later, set Timestamp offset (TimestampOffset) to 2003-1-25. TimestampOffset *string `locationName:"timestampOffset" type:"string"` } // String returns the string representation func (s TimecodeConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TimecodeConfig) GoString() string { return s.String() } // SetAnchor sets the Anchor field's value. func (s *TimecodeConfig) SetAnchor(v string) *TimecodeConfig { s.Anchor = &v return s } // SetSource sets the Source field's value. func (s *TimecodeConfig) SetSource(v string) *TimecodeConfig { s.Source = &v return s } // SetStart sets the Start field's value. func (s *TimecodeConfig) SetStart(v string) *TimecodeConfig { s.Start = &v return s } // SetTimestampOffset sets the TimestampOffset field's value. func (s *TimecodeConfig) SetTimestampOffset(v string) *TimecodeConfig { s.TimestampOffset = &v return s } // Enable Timed metadata insertion (TimedMetadataInsertion) to include ID3 tags // in your job. To include timed metadata, you must enable it here, enable it // in each output container, and specify tags and timecodes in ID3 insertion // (Id3Insertion) objects. type TimedMetadataInsertion struct { _ struct{} `type:"structure"` // Id3Insertions contains the array of Id3Insertion instances. Id3Insertions []*Id3Insertion `locationName:"id3Insertions" type:"list"` } // String returns the string representation func (s TimedMetadataInsertion) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TimedMetadataInsertion) GoString() string { return s.String() } // SetId3Insertions sets the Id3Insertions field's value. func (s *TimedMetadataInsertion) SetId3Insertions(v []*Id3Insertion) *TimedMetadataInsertion { s.Id3Insertions = v return s } // Information about when jobs are submitted, started, and finished is specified // in Unix epoch format in seconds. type Timing struct { _ struct{} `type:"structure"` // The time, in Unix epoch format, that the transcoding job finished FinishTime *time.Time `locationName:"finishTime" type:"timestamp" timestampFormat:"unixTimestamp"` // The time, in Unix epoch format, that transcoding for the job began. StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"unixTimestamp"` // The time, in Unix epoch format, that you submitted the job. SubmitTime *time.Time `locationName:"submitTime" type:"timestamp" timestampFormat:"unixTimestamp"` } // String returns the string representation func (s Timing) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Timing) GoString() string { return s.String() } // SetFinishTime sets the FinishTime field's value. func (s *Timing) SetFinishTime(v time.Time) *Timing { s.FinishTime = &v return s } // SetStartTime sets the StartTime field's value. func (s *Timing) SetStartTime(v time.Time) *Timing { s.StartTime = &v return s } // SetSubmitTime sets the SubmitTime field's value. func (s *Timing) SetSubmitTime(v time.Time) *Timing { s.SubmitTime = &v return s } // Settings specific to caption sources that are specfied by track number. Sources // include IMSC in IMF. type TrackSourceSettings struct { _ struct{} `type:"structure"` // Use this setting to select a single captions track from a source. Track numbers // correspond to the order in the captions source file. For IMF sources, track // numbering is based on the order that the captions appear in the CPL. For // example, use 1 to select the captions asset that is listed first in the CPL. // To include more than one captions track in your job outputs, create multiple // input captions selectors. Specify one track per selector. TrackNumber *int64 `locationName:"trackNumber" min:"1" type:"integer"` } // String returns the string representation func (s TrackSourceSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TrackSourceSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TrackSourceSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TrackSourceSettings"} if s.TrackNumber != nil && *s.TrackNumber < 1 { invalidParams.Add(request.NewErrParamMinValue("TrackNumber", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetTrackNumber sets the TrackNumber field's value. func (s *TrackSourceSettings) SetTrackNumber(v int64) *TrackSourceSettings { s.TrackNumber = &v return s } // Settings specific to TTML caption outputs, including Pass style information // (TtmlStylePassthrough). type TtmlDestinationSettings struct { _ struct{} `type:"structure"` // Pass through style and position information from a TTML-like input source // (TTML, SMPTE-TT, CFF-TT) to the CFF-TT output or TTML output. StylePassthrough *string `locationName:"stylePassthrough" type:"string" enum:"TtmlStylePassthrough"` } // String returns the string representation func (s TtmlDestinationSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TtmlDestinationSettings) GoString() string { return s.String() } // SetStylePassthrough sets the StylePassthrough field's value. func (s *TtmlDestinationSettings) SetStylePassthrough(v string) *TtmlDestinationSettings { s.StylePassthrough = &v return s } // To remove tags from a resource, send a request with the Amazon Resource Name // (ARN) of the resource and the keys of the tags that you want to remove. type UntagResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource that you want to remove tags // from. To get the ARN, send a GET request with the resource name. // // Arn is a required field Arn *string `location:"uri" locationName:"arn" type:"string" required:"true"` // The keys of the tags that you want to remove from the resource. TagKeys []*string `locationName:"tagKeys" type:"list"` } // String returns the string representation func (s UntagResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UntagResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UntagResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} if s.Arn == nil { invalidParams.Add(request.NewErrParamRequired("Arn")) } if s.Arn != nil && len(*s.Arn) < 1 { invalidParams.Add(request.NewErrParamMinLen("Arn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetArn sets the Arn field's value. func (s *UntagResourceInput) SetArn(v string) *UntagResourceInput { s.Arn = &v return s } // SetTagKeys sets the TagKeys field's value. func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { s.TagKeys = v return s } // A successful request to remove tags from a resource returns an OK message. type UntagResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UntagResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UntagResourceOutput) GoString() string { return s.String() } // Modify a job template by sending a request with the job template name and // any of the following that you wish to change: description, category, and // queue. type UpdateJobTemplateInput struct { _ struct{} `type:"structure"` // This is a beta feature. If you are interested in using this feature, please // contact AWS customer support. AccelerationSettings *AccelerationSettings `locationName:"accelerationSettings" type:"structure"` // The new category for the job template, if you are changing it. Category *string `locationName:"category" type:"string"` // The new description for the job template, if you are changing it. Description *string `locationName:"description" type:"string"` // The name of the job template you are modifying // // Name is a required field Name *string `location:"uri" locationName:"name" type:"string" required:"true"` // The new queue for the job template, if you are changing it. Queue *string `locationName:"queue" type:"string"` // JobTemplateSettings contains all the transcode settings saved in the template // that will be applied to jobs created from it. Settings *JobTemplateSettings `locationName:"settings" type:"structure"` // Specify how often MediaConvert sends STATUS_UPDATE events to Amazon CloudWatch // Events. Set the interval, in seconds, between status updates. MediaConvert // sends an update at this interval from the time the service begins processing // your job to the time it completes the transcode or encounters an error. StatusUpdateIntervalInSecs *int64 `locationName:"statusUpdateIntervalInSecs" min:"10" type:"long"` } // String returns the string representation func (s UpdateJobTemplateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateJobTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateJobTemplateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateJobTemplateInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.StatusUpdateIntervalInSecs != nil && *s.StatusUpdateIntervalInSecs < 10 { invalidParams.Add(request.NewErrParamMinValue("StatusUpdateIntervalInSecs", 10)) } if s.AccelerationSettings != nil { if err := s.AccelerationSettings.Validate(); err != nil { invalidParams.AddNested("AccelerationSettings", err.(request.ErrInvalidParams)) } } if s.Settings != nil { if err := s.Settings.Validate(); err != nil { invalidParams.AddNested("Settings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAccelerationSettings sets the AccelerationSettings field's value. func (s *UpdateJobTemplateInput) SetAccelerationSettings(v *AccelerationSettings) *UpdateJobTemplateInput { s.AccelerationSettings = v return s } // SetCategory sets the Category field's value. func (s *UpdateJobTemplateInput) SetCategory(v string) *UpdateJobTemplateInput { s.Category = &v return s } // SetDescription sets the Description field's value. func (s *UpdateJobTemplateInput) SetDescription(v string) *UpdateJobTemplateInput { s.Description = &v return s } // SetName sets the Name field's value. func (s *UpdateJobTemplateInput) SetName(v string) *UpdateJobTemplateInput { s.Name = &v return s } // SetQueue sets the Queue field's value. func (s *UpdateJobTemplateInput) SetQueue(v string) *UpdateJobTemplateInput { s.Queue = &v return s } // SetSettings sets the Settings field's value. func (s *UpdateJobTemplateInput) SetSettings(v *JobTemplateSettings) *UpdateJobTemplateInput { s.Settings = v return s } // SetStatusUpdateIntervalInSecs sets the StatusUpdateIntervalInSecs field's value. func (s *UpdateJobTemplateInput) SetStatusUpdateIntervalInSecs(v int64) *UpdateJobTemplateInput { s.StatusUpdateIntervalInSecs = &v return s } // Successful update job template requests will return the new job template // JSON. type UpdateJobTemplateOutput struct { _ struct{} `type:"structure"` // A job template is a pre-made set of encoding instructions that you can use // to quickly create a job. JobTemplate *JobTemplate `locationName:"jobTemplate" type:"structure"` } // String returns the string representation func (s UpdateJobTemplateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateJobTemplateOutput) GoString() string { return s.String() } // SetJobTemplate sets the JobTemplate field's value. func (s *UpdateJobTemplateOutput) SetJobTemplate(v *JobTemplate) *UpdateJobTemplateOutput { s.JobTemplate = v return s } // Modify a preset by sending a request with the preset name and any of the // following that you wish to change: description, category, and transcoding // settings. type UpdatePresetInput struct { _ struct{} `type:"structure"` // The new category for the preset, if you are changing it. Category *string `locationName:"category" type:"string"` // The new description for the preset, if you are changing it. Description *string `locationName:"description" type:"string"` // The name of the preset you are modifying. // // Name is a required field Name *string `location:"uri" locationName:"name" type:"string" required:"true"` // Settings for preset Settings *PresetSettings `locationName:"settings" type:"structure"` } // String returns the string representation func (s UpdatePresetInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdatePresetInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdatePresetInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdatePresetInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.Settings != nil { if err := s.Settings.Validate(); err != nil { invalidParams.AddNested("Settings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCategory sets the Category field's value. func (s *UpdatePresetInput) SetCategory(v string) *UpdatePresetInput { s.Category = &v return s } // SetDescription sets the Description field's value. func (s *UpdatePresetInput) SetDescription(v string) *UpdatePresetInput { s.Description = &v return s } // SetName sets the Name field's value. func (s *UpdatePresetInput) SetName(v string) *UpdatePresetInput { s.Name = &v return s } // SetSettings sets the Settings field's value. func (s *UpdatePresetInput) SetSettings(v *PresetSettings) *UpdatePresetInput { s.Settings = v return s } // Successful update preset requests will return the new preset JSON. type UpdatePresetOutput struct { _ struct{} `type:"structure"` // A preset is a collection of preconfigured media conversion settings that // you want MediaConvert to apply to the output during the conversion process. Preset *Preset `locationName:"preset" type:"structure"` } // String returns the string representation func (s UpdatePresetOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdatePresetOutput) GoString() string { return s.String() } // SetPreset sets the Preset field's value. func (s *UpdatePresetOutput) SetPreset(v *Preset) *UpdatePresetOutput { s.Preset = v return s } // Modify a queue by sending a request with the queue name and any changes to // the queue. type UpdateQueueInput struct { _ struct{} `type:"structure"` // The new description for the queue, if you are changing it. Description *string `locationName:"description" type:"string"` // The name of the queue that you are modifying. // // Name is a required field Name *string `location:"uri" locationName:"name" type:"string" required:"true"` // The new details of your pricing plan for your reserved queue. When you set // up a new pricing plan to replace an expired one, you enter into another 12-month // commitment. When you add capacity to your queue by increasing the number // of RTS, you extend the term of your commitment to 12 months from when you // add capacity. After you make these commitments, you can't cancel them. ReservationPlanSettings *ReservationPlanSettings `locationName:"reservationPlanSettings" type:"structure"` // Pause or activate a queue by changing its status between ACTIVE and PAUSED. // If you pause a queue, jobs in that queue won't begin. Jobs that are running // when you pause the queue continue to run until they finish or result in an // error. Status *string `locationName:"status" type:"string" enum:"QueueStatus"` } // String returns the string representation func (s UpdateQueueInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateQueueInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateQueueInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateQueueInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.ReservationPlanSettings != nil { if err := s.ReservationPlanSettings.Validate(); err != nil { invalidParams.AddNested("ReservationPlanSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDescription sets the Description field's value. func (s *UpdateQueueInput) SetDescription(v string) *UpdateQueueInput { s.Description = &v return s } // SetName sets the Name field's value. func (s *UpdateQueueInput) SetName(v string) *UpdateQueueInput { s.Name = &v return s } // SetReservationPlanSettings sets the ReservationPlanSettings field's value. func (s *UpdateQueueInput) SetReservationPlanSettings(v *ReservationPlanSettings) *UpdateQueueInput { s.ReservationPlanSettings = v return s } // SetStatus sets the Status field's value. func (s *UpdateQueueInput) SetStatus(v string) *UpdateQueueInput { s.Status = &v return s } // Successful update queue requests return the new queue information in JSON // format. type UpdateQueueOutput struct { _ struct{} `type:"structure"` // You can use queues to manage the resources that are available to your AWS // account for running multiple transcoding jobs at the same time. If you don't // specify a queue, the service sends all jobs through the default queue. For // more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/working-with-queues.html. Queue *Queue `locationName:"queue" type:"structure"` } // String returns the string representation func (s UpdateQueueOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateQueueOutput) GoString() string { return s.String() } // SetQueue sets the Queue field's value. func (s *UpdateQueueOutput) SetQueue(v *Queue) *UpdateQueueOutput { s.Queue = v return s } // Video codec settings, (CodecSettings) under (VideoDescription), contains // the group of settings related to video encoding. The settings in this group // vary depending on the value you choose for Video codec (Codec). For each // codec enum you choose, define the corresponding settings object. The following // lists the codec enum, settings object pairs. * H_264, H264Settings * H_265, // H265Settings * MPEG2, Mpeg2Settings * PRORES, ProresSettings * FRAME_CAPTURE, // FrameCaptureSettings type VideoCodecSettings struct { _ struct{} `type:"structure"` // Specifies the video codec. This must be equal to one of the enum values defined // by the object VideoCodec. Codec *string `locationName:"codec" type:"string" enum:"VideoCodec"` // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to // the value FRAME_CAPTURE. FrameCaptureSettings *FrameCaptureSettings `locationName:"frameCaptureSettings" type:"structure"` // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to // the value H_264. H264Settings *H264Settings `locationName:"h264Settings" type:"structure"` // Settings for H265 codec H265Settings *H265Settings `locationName:"h265Settings" type:"structure"` // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to // the value MPEG2. Mpeg2Settings *Mpeg2Settings `locationName:"mpeg2Settings" type:"structure"` // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to // the value PRORES. ProresSettings *ProresSettings `locationName:"proresSettings" type:"structure"` } // String returns the string representation func (s VideoCodecSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VideoCodecSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VideoCodecSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VideoCodecSettings"} if s.FrameCaptureSettings != nil { if err := s.FrameCaptureSettings.Validate(); err != nil { invalidParams.AddNested("FrameCaptureSettings", err.(request.ErrInvalidParams)) } } if s.H264Settings != nil { if err := s.H264Settings.Validate(); err != nil { invalidParams.AddNested("H264Settings", err.(request.ErrInvalidParams)) } } if s.H265Settings != nil { if err := s.H265Settings.Validate(); err != nil { invalidParams.AddNested("H265Settings", err.(request.ErrInvalidParams)) } } if s.Mpeg2Settings != nil { if err := s.Mpeg2Settings.Validate(); err != nil { invalidParams.AddNested("Mpeg2Settings", err.(request.ErrInvalidParams)) } } if s.ProresSettings != nil { if err := s.ProresSettings.Validate(); err != nil { invalidParams.AddNested("ProresSettings", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetCodec sets the Codec field's value. func (s *VideoCodecSettings) SetCodec(v string) *VideoCodecSettings { s.Codec = &v return s } // SetFrameCaptureSettings sets the FrameCaptureSettings field's value. func (s *VideoCodecSettings) SetFrameCaptureSettings(v *FrameCaptureSettings) *VideoCodecSettings { s.FrameCaptureSettings = v return s } // SetH264Settings sets the H264Settings field's value. func (s *VideoCodecSettings) SetH264Settings(v *H264Settings) *VideoCodecSettings { s.H264Settings = v return s } // SetH265Settings sets the H265Settings field's value. func (s *VideoCodecSettings) SetH265Settings(v *H265Settings) *VideoCodecSettings { s.H265Settings = v return s } // SetMpeg2Settings sets the Mpeg2Settings field's value. func (s *VideoCodecSettings) SetMpeg2Settings(v *Mpeg2Settings) *VideoCodecSettings { s.Mpeg2Settings = v return s } // SetProresSettings sets the ProresSettings field's value. func (s *VideoCodecSettings) SetProresSettings(v *ProresSettings) *VideoCodecSettings { s.ProresSettings = v return s } // Settings for video outputs type VideoDescription struct { _ struct{} `type:"structure"` // This setting only applies to H.264, H.265, and MPEG2 outputs. Use Insert // AFD signaling (AfdSignaling) to specify whether the service includes AFD // values in the output video data and what those values are. * Choose None // to remove all AFD values from this output. * Choose Fixed to ignore input // AFD values and instead encode the value specified in the job. * Choose Auto // to calculate output AFD values based on the input AFD scaler data. AfdSignaling *string `locationName:"afdSignaling" type:"string" enum:"AfdSignaling"` // You no longer need to specify the anti-alias filter. It's now automatically // applied to all outputs. This property is deprecated. AntiAlias *string `locationName:"antiAlias" type:"string" enum:"AntiAlias"` // Video codec settings, (CodecSettings) under (VideoDescription), contains // the group of settings related to video encoding. The settings in this group // vary depending on the value you choose for Video codec (Codec). For each // codec enum you choose, define the corresponding settings object. The following // lists the codec enum, settings object pairs. * H_264, H264Settings * H_265, // H265Settings * MPEG2, Mpeg2Settings * PRORES, ProresSettings * FRAME_CAPTURE, // FrameCaptureSettings CodecSettings *VideoCodecSettings `locationName:"codecSettings" type:"structure"` // Enable Insert color metadata (ColorMetadata) to include color metadata in // this output. This setting is enabled by default. ColorMetadata *string `locationName:"colorMetadata" type:"string" enum:"ColorMetadata"` // Applies only if your input aspect ratio is different from your output aspect // ratio. Use Input cropping rectangle (Crop) to specify the video area the // service will include in the output. This will crop the input source, causing // video pixels to be removed on encode. If you crop your input frame size to // smaller than your output frame size, make sure to specify the behavior you // want in your output setting "Scaling behavior". Crop *Rectangle `locationName:"crop" type:"structure"` // Applies only to 29.97 fps outputs. When this feature is enabled, the service // will use drop-frame timecode on outputs. If it is not possible to use drop-frame // timecode, the system will fall back to non-drop-frame. This setting is enabled // by default when Timecode insertion (TimecodeInsertion) is enabled. DropFrameTimecode *string `locationName:"dropFrameTimecode" type:"string" enum:"DropFrameTimecode"` // Applies only if you set AFD Signaling(AfdSignaling) to Fixed (FIXED). Use // Fixed (FixedAfd) to specify a four-bit AFD value which the service will write // on all frames of this video output. FixedAfd *int64 `locationName:"fixedAfd" type:"integer"` // Use the Height (Height) setting to define the video resolution height for // this output. Specify in pixels. If you don't provide a value here, the service // will use the input height. Height *int64 `locationName:"height" min:"32" type:"integer"` // Use Position (Position) to point to a rectangle object to define your position. // This setting overrides any other aspect ratio. Position *Rectangle `locationName:"position" type:"structure"` // Use Respond to AFD (RespondToAfd) to specify how the service changes the // video itself in response to AFD values in the input. * Choose Respond to // clip the input video frame according to the AFD value, input display aspect // ratio, and output display aspect ratio. * Choose Passthrough to include the // input AFD values. Do not choose this when AfdSignaling is set to (NONE). // A preferred implementation of this workflow is to set RespondToAfd to (NONE) // and set AfdSignaling to (AUTO). * Choose None to remove all input AFD values // from this output. RespondToAfd *string `locationName:"respondToAfd" type:"string" enum:"RespondToAfd"` // Applies only if your input aspect ratio is different from your output aspect // ratio. Choose "Stretch to output" to have the service stretch your video // image to fit. Keep the setting "Default" to allow the service to letterbox // your video instead. This setting overrides any positioning value you specify // elsewhere in the job. ScalingBehavior *string `locationName:"scalingBehavior" type:"string" enum:"ScalingBehavior"` // Use Sharpness (Sharpness) setting to specify the strength of anti-aliasing. // This setting changes the width of the anti-alias filter kernel used for scaling. // Sharpness only applies if your output resolution is different from your input // resolution. 0 is the softest setting, 100 the sharpest, and 50 recommended // for most content. Sharpness *int64 `locationName:"sharpness" type:"integer"` // Applies only to H.264, H.265, MPEG2, and ProRes outputs. Only enable Timecode // insertion when the input frame rate is identical to the output frame rate. // To include timecodes in this output, set Timecode insertion (VideoTimecodeInsertion) // to PIC_TIMING_SEI. To leave them out, set it to DISABLED. Default is DISABLED. // When the service inserts timecodes in an output, by default, it uses any // embedded timecodes from the input. If none are present, the service will // set the timecode for the first output frame to zero. To change this default // behavior, adjust the settings under Timecode configuration (TimecodeConfig). // In the console, these settings are located under Job > Job settings > Timecode // configuration. Note - Timecode source under input settings (InputTimecodeSource) // does not affect the timecodes that are inserted in the output. Source under // Job settings > Timecode configuration (TimecodeSource) does. TimecodeInsertion *string `locationName:"timecodeInsertion" type:"string" enum:"VideoTimecodeInsertion"` // Find additional transcoding features under Preprocessors (VideoPreprocessors). // Enable the features at each output individually. These features are disabled // by default. VideoPreprocessors *VideoPreprocessor `locationName:"videoPreprocessors" type:"structure"` // Use Width (Width) to define the video resolution width, in pixels, for this // output. If you don't provide a value here, the service will use the input // width. Width *int64 `locationName:"width" min:"32" type:"integer"` } // String returns the string representation func (s VideoDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VideoDescription) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VideoDescription) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VideoDescription"} if s.Height != nil && *s.Height < 32 { invalidParams.Add(request.NewErrParamMinValue("Height", 32)) } if s.Width != nil && *s.Width < 32 { invalidParams.Add(request.NewErrParamMinValue("Width", 32)) } if s.CodecSettings != nil { if err := s.CodecSettings.Validate(); err != nil { invalidParams.AddNested("CodecSettings", err.(request.ErrInvalidParams)) } } if s.Crop != nil { if err := s.Crop.Validate(); err != nil { invalidParams.AddNested("Crop", err.(request.ErrInvalidParams)) } } if s.Position != nil { if err := s.Position.Validate(); err != nil { invalidParams.AddNested("Position", err.(request.ErrInvalidParams)) } } if s.VideoPreprocessors != nil { if err := s.VideoPreprocessors.Validate(); err != nil { invalidParams.AddNested("VideoPreprocessors", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAfdSignaling sets the AfdSignaling field's value. func (s *VideoDescription) SetAfdSignaling(v string) *VideoDescription { s.AfdSignaling = &v return s } // SetAntiAlias sets the AntiAlias field's value. func (s *VideoDescription) SetAntiAlias(v string) *VideoDescription { s.AntiAlias = &v return s } // SetCodecSettings sets the CodecSettings field's value. func (s *VideoDescription) SetCodecSettings(v *VideoCodecSettings) *VideoDescription { s.CodecSettings = v return s } // SetColorMetadata sets the ColorMetadata field's value. func (s *VideoDescription) SetColorMetadata(v string) *VideoDescription { s.ColorMetadata = &v return s } // SetCrop sets the Crop field's value. func (s *VideoDescription) SetCrop(v *Rectangle) *VideoDescription { s.Crop = v return s } // SetDropFrameTimecode sets the DropFrameTimecode field's value. func (s *VideoDescription) SetDropFrameTimecode(v string) *VideoDescription { s.DropFrameTimecode = &v return s } // SetFixedAfd sets the FixedAfd field's value. func (s *VideoDescription) SetFixedAfd(v int64) *VideoDescription { s.FixedAfd = &v return s } // SetHeight sets the Height field's value. func (s *VideoDescription) SetHeight(v int64) *VideoDescription { s.Height = &v return s } // SetPosition sets the Position field's value. func (s *VideoDescription) SetPosition(v *Rectangle) *VideoDescription { s.Position = v return s } // SetRespondToAfd sets the RespondToAfd field's value. func (s *VideoDescription) SetRespondToAfd(v string) *VideoDescription { s.RespondToAfd = &v return s } // SetScalingBehavior sets the ScalingBehavior field's value. func (s *VideoDescription) SetScalingBehavior(v string) *VideoDescription { s.ScalingBehavior = &v return s } // SetSharpness sets the Sharpness field's value. func (s *VideoDescription) SetSharpness(v int64) *VideoDescription { s.Sharpness = &v return s } // SetTimecodeInsertion sets the TimecodeInsertion field's value. func (s *VideoDescription) SetTimecodeInsertion(v string) *VideoDescription { s.TimecodeInsertion = &v return s } // SetVideoPreprocessors sets the VideoPreprocessors field's value. func (s *VideoDescription) SetVideoPreprocessors(v *VideoPreprocessor) *VideoDescription { s.VideoPreprocessors = v return s } // SetWidth sets the Width field's value. func (s *VideoDescription) SetWidth(v int64) *VideoDescription { s.Width = &v return s } // Contains details about the output's video stream type VideoDetail struct { _ struct{} `type:"structure"` // Height in pixels for the output HeightInPx *int64 `locationName:"heightInPx" type:"integer"` // Width in pixels for the output WidthInPx *int64 `locationName:"widthInPx" type:"integer"` } // String returns the string representation func (s VideoDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VideoDetail) GoString() string { return s.String() } // SetHeightInPx sets the HeightInPx field's value. func (s *VideoDetail) SetHeightInPx(v int64) *VideoDetail { s.HeightInPx = &v return s } // SetWidthInPx sets the WidthInPx field's value. func (s *VideoDetail) SetWidthInPx(v int64) *VideoDetail { s.WidthInPx = &v return s } // Find additional transcoding features under Preprocessors (VideoPreprocessors). // Enable the features at each output individually. These features are disabled // by default. type VideoPreprocessor struct { _ struct{} `type:"structure"` // Enable the Color corrector (ColorCorrector) feature if necessary. Enable // or disable this feature for each output individually. This setting is disabled // by default. ColorCorrector *ColorCorrector `locationName:"colorCorrector" type:"structure"` // Use Deinterlacer (Deinterlacer) to produce smoother motion and a clearer // picture. Deinterlacer *Deinterlacer `locationName:"deinterlacer" type:"structure"` // Enable the Image inserter (ImageInserter) feature to include a graphic overlay // on your video. Enable or disable this feature for each output individually. // This setting is disabled by default. ImageInserter *ImageInserter `locationName:"imageInserter" type:"structure"` // Enable the Noise reducer (NoiseReducer) feature to remove noise from your // video output if necessary. Enable or disable this feature for each output // individually. This setting is disabled by default. NoiseReducer *NoiseReducer `locationName:"noiseReducer" type:"structure"` // Timecode burn-in (TimecodeBurnIn)--Burns the output timecode and specified // prefix into the output. TimecodeBurnin *TimecodeBurnin `locationName:"timecodeBurnin" type:"structure"` } // String returns the string representation func (s VideoPreprocessor) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VideoPreprocessor) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VideoPreprocessor) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VideoPreprocessor"} if s.ColorCorrector != nil { if err := s.ColorCorrector.Validate(); err != nil { invalidParams.AddNested("ColorCorrector", err.(request.ErrInvalidParams)) } } if s.ImageInserter != nil { if err := s.ImageInserter.Validate(); err != nil { invalidParams.AddNested("ImageInserter", err.(request.ErrInvalidParams)) } } if s.NoiseReducer != nil { if err := s.NoiseReducer.Validate(); err != nil { invalidParams.AddNested("NoiseReducer", err.(request.ErrInvalidParams)) } } if s.TimecodeBurnin != nil { if err := s.TimecodeBurnin.Validate(); err != nil { invalidParams.AddNested("TimecodeBurnin", err.(request.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetColorCorrector sets the ColorCorrector field's value. func (s *VideoPreprocessor) SetColorCorrector(v *ColorCorrector) *VideoPreprocessor { s.ColorCorrector = v return s } // SetDeinterlacer sets the Deinterlacer field's value. func (s *VideoPreprocessor) SetDeinterlacer(v *Deinterlacer) *VideoPreprocessor { s.Deinterlacer = v return s } // SetImageInserter sets the ImageInserter field's value. func (s *VideoPreprocessor) SetImageInserter(v *ImageInserter) *VideoPreprocessor { s.ImageInserter = v return s } // SetNoiseReducer sets the NoiseReducer field's value. func (s *VideoPreprocessor) SetNoiseReducer(v *NoiseReducer) *VideoPreprocessor { s.NoiseReducer = v return s } // SetTimecodeBurnin sets the TimecodeBurnin field's value. func (s *VideoPreprocessor) SetTimecodeBurnin(v *TimecodeBurnin) *VideoPreprocessor { s.TimecodeBurnin = v return s } // Selector for video. type VideoSelector struct { _ struct{} `type:"structure"` // If your input video has accurate color space metadata, or if you don't know // about color space, leave this set to the default value FOLLOW. The service // will automatically detect your input color space. If your input video has // metadata indicating the wrong color space, or if your input video is missing // color space metadata that should be there, specify the accurate color space // here. If you choose HDR10, you can also correct inaccurate color space coefficients, // using the HDR master display information controls. You must also set Color // space usage (ColorSpaceUsage) to FORCE for the service to use these values. ColorSpace *string `locationName:"colorSpace" type:"string" enum:"ColorSpace"` // There are two sources for color metadata, the input file and the job configuration // (in the Color space and HDR master display informaiton settings). The Color // space usage setting controls which takes precedence. FORCE: The system will // use color metadata supplied by user, if any. If the user does not supply // color metadata, the system will use data from the source. FALLBACK: The system // will use color metadata from the source. If source has no color metadata, // the system will use user-supplied color metadata values if available. ColorSpaceUsage *string `locationName:"colorSpaceUsage" type:"string" enum:"ColorSpaceUsage"` // Use the "HDR master display information" (Hdr10Metadata) settings to correct // HDR metadata or to provide missing metadata. These values vary depending // on the input video and must be provided by a color grader. Range is 0 to // 50,000; each increment represents 0.00002 in CIE1931 color coordinate. Note // that these settings are not color correction. Note that if you are creating // HDR outputs inside of an HLS CMAF package, to comply with the Apple specification, // you must use the following settings. Set "MP4 packaging type" (writeMp4PackagingType) // to HVC1 (HVC1). Set "Profile" (H265Settings > codecProfile) to Main10/High // (MAIN10_HIGH). Set "Level" (H265Settings > codecLevel) to 5 (LEVEL_5). Hdr10Metadata *Hdr10Metadata `locationName:"hdr10Metadata" type:"structure"` // Use PID (Pid) to select specific video data from an input file. Specify this // value as an integer; the system automatically converts it to the hexidecimal // value. For example, 257 selects PID 0x101. A PID, or packet identifier, is // an identifier for a set of data in an MPEG-2 transport stream container. Pid *int64 `locationName:"pid" min:"1" type:"integer"` // Selects a specific program from within a multi-program transport stream. // Note that Quad 4K is not currently supported. ProgramNumber *int64 `locationName:"programNumber" type:"integer"` // Use Rotate (InputRotate) to specify how the service rotates your video. You // can choose automatic rotation or specify a rotation. You can specify a clockwise // rotation of 0, 90, 180, or 270 degrees. If your input video container is // .mov or .mp4 and your input has rotation metadata, you can choose Automatic // to have the service rotate your video according to the rotation specified // in the metadata. The rotation must be within one degree of 90, 180, or 270 // degrees. If the rotation metadata specifies any other rotation, the service // will default to no rotation. By default, the service does no rotation, even // if your input video has rotation metadata. The service doesn't pass through // rotation metadata. Rotate *string `locationName:"rotate" type:"string" enum:"InputRotate"` } // String returns the string representation func (s VideoSelector) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s VideoSelector) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *VideoSelector) Validate() error { invalidParams := request.ErrInvalidParams{Context: "VideoSelector"} if s.Pid != nil && *s.Pid < 1 { invalidParams.Add(request.NewErrParamMinValue("Pid", 1)) } if s.ProgramNumber != nil && *s.ProgramNumber < -2.147483648e+09 { invalidParams.Add(request.NewErrParamMinValue("ProgramNumber", -2.147483648e+09)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetColorSpace sets the ColorSpace field's value. func (s *VideoSelector) SetColorSpace(v string) *VideoSelector { s.ColorSpace = &v return s } // SetColorSpaceUsage sets the ColorSpaceUsage field's value. func (s *VideoSelector) SetColorSpaceUsage(v string) *VideoSelector { s.ColorSpaceUsage = &v return s } // SetHdr10Metadata sets the Hdr10Metadata field's value. func (s *VideoSelector) SetHdr10Metadata(v *Hdr10Metadata) *VideoSelector { s.Hdr10Metadata = v return s } // SetPid sets the Pid field's value. func (s *VideoSelector) SetPid(v int64) *VideoSelector { s.Pid = &v return s } // SetProgramNumber sets the ProgramNumber field's value. func (s *VideoSelector) SetProgramNumber(v int64) *VideoSelector { s.ProgramNumber = &v return s } // SetRotate sets the Rotate field's value. func (s *VideoSelector) SetRotate(v string) *VideoSelector { s.Rotate = &v return s } // Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to // the value WAV. type WavSettings struct { _ struct{} `type:"structure"` // Specify Bit depth (BitDepth), in bits per sample, to choose the encoding // quality for this audio track. BitDepth *int64 `locationName:"bitDepth" min:"16" type:"integer"` // Set Channels to specify the number of channels in this output audio track. // With WAV, valid values 1, 2, 4, and 8. In the console, these values are Mono, // Stereo, 4-Channel, and 8-Channel, respectively. Channels *int64 `locationName:"channels" min:"1" type:"integer"` // The service defaults to using RIFF for WAV outputs. If your output audio // is likely to exceed 4 GB in file size, or if you otherwise need the extended // support of the RF64 format, set your output WAV file format to RF64. Format *string `locationName:"format" type:"string" enum:"WavFormat"` // Sample rate in Hz. SampleRate *int64 `locationName:"sampleRate" min:"8000" type:"integer"` } // String returns the string representation func (s WavSettings) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WavSettings) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *WavSettings) Validate() error { invalidParams := request.ErrInvalidParams{Context: "WavSettings"} if s.BitDepth != nil && *s.BitDepth < 16 { invalidParams.Add(request.NewErrParamMinValue("BitDepth", 16)) } if s.Channels != nil && *s.Channels < 1 { invalidParams.Add(request.NewErrParamMinValue("Channels", 1)) } if s.SampleRate != nil && *s.SampleRate < 8000 { invalidParams.Add(request.NewErrParamMinValue("SampleRate", 8000)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBitDepth sets the BitDepth field's value. func (s *WavSettings) SetBitDepth(v int64) *WavSettings { s.BitDepth = &v return s } // SetChannels sets the Channels field's value. func (s *WavSettings) SetChannels(v int64) *WavSettings { s.Channels = &v return s } // SetFormat sets the Format field's value. func (s *WavSettings) SetFormat(v string) *WavSettings { s.Format = &v return s } // SetSampleRate sets the SampleRate field's value. func (s *WavSettings) SetSampleRate(v int64) *WavSettings { s.SampleRate = &v return s } // Choose BROADCASTER_MIXED_AD when the input contains pre-mixed main audio // + audio description (AD) as a stereo pair. The value for AudioType will be // set to 3, which signals to downstream systems that this stream contains "broadcaster // mixed AD". Note that the input received by the encoder must contain pre-mixed // audio; the encoder does not perform the mixing. When you choose BROADCASTER_MIXED_AD, // the encoder ignores any values you provide in AudioType and FollowInputAudioType. // Choose NORMAL when the input does not contain pre-mixed audio + audio description // (AD). In this case, the encoder will use any values you provide for AudioType // and FollowInputAudioType. const ( // AacAudioDescriptionBroadcasterMixBroadcasterMixedAd is a AacAudioDescriptionBroadcasterMix enum value AacAudioDescriptionBroadcasterMixBroadcasterMixedAd = "BROADCASTER_MIXED_AD" // AacAudioDescriptionBroadcasterMixNormal is a AacAudioDescriptionBroadcasterMix enum value AacAudioDescriptionBroadcasterMixNormal = "NORMAL" ) // AAC Profile. const ( // AacCodecProfileLc is a AacCodecProfile enum value AacCodecProfileLc = "LC" // AacCodecProfileHev1 is a AacCodecProfile enum value AacCodecProfileHev1 = "HEV1" // AacCodecProfileHev2 is a AacCodecProfile enum value AacCodecProfileHev2 = "HEV2" ) // Mono (Audio Description), Mono, Stereo, or 5.1 channel layout. Valid values // depend on rate control mode and profile. "1.0 - Audio Description (Receiver // Mix)" setting receives a stereo description plus control track and emits // a mono AAC encode of the description track, with control data emitted in // the PES header as per ETSI TS 101 154 Annex E. const ( // AacCodingModeAdReceiverMix is a AacCodingMode enum value AacCodingModeAdReceiverMix = "AD_RECEIVER_MIX" // AacCodingModeCodingMode10 is a AacCodingMode enum value AacCodingModeCodingMode10 = "CODING_MODE_1_0" // AacCodingModeCodingMode11 is a AacCodingMode enum value AacCodingModeCodingMode11 = "CODING_MODE_1_1" // AacCodingModeCodingMode20 is a AacCodingMode enum value AacCodingModeCodingMode20 = "CODING_MODE_2_0" // AacCodingModeCodingMode51 is a AacCodingMode enum value AacCodingModeCodingMode51 = "CODING_MODE_5_1" ) // Rate Control Mode. const ( // AacRateControlModeCbr is a AacRateControlMode enum value AacRateControlModeCbr = "CBR" // AacRateControlModeVbr is a AacRateControlMode enum value AacRateControlModeVbr = "VBR" ) // Enables LATM/LOAS AAC output. Note that if you use LATM/LOAS AAC in an output, // you must choose "No container" for the output container. const ( // AacRawFormatLatmLoas is a AacRawFormat enum value AacRawFormatLatmLoas = "LATM_LOAS" // AacRawFormatNone is a AacRawFormat enum value AacRawFormatNone = "NONE" ) // Use MPEG-2 AAC instead of MPEG-4 AAC audio for raw or MPEG-2 Transport Stream // containers. const ( // AacSpecificationMpeg2 is a AacSpecification enum value AacSpecificationMpeg2 = "MPEG2" // AacSpecificationMpeg4 is a AacSpecification enum value AacSpecificationMpeg4 = "MPEG4" ) // VBR Quality Level - Only used if rate_control_mode is VBR. const ( // AacVbrQualityLow is a AacVbrQuality enum value AacVbrQualityLow = "LOW" // AacVbrQualityMediumLow is a AacVbrQuality enum value AacVbrQualityMediumLow = "MEDIUM_LOW" // AacVbrQualityMediumHigh is a AacVbrQuality enum value AacVbrQualityMediumHigh = "MEDIUM_HIGH" // AacVbrQualityHigh is a AacVbrQuality enum value AacVbrQualityHigh = "HIGH" ) // Specifies the "Bitstream Mode" (bsmod) for the emitted AC-3 stream. See ATSC // A/52-2012 for background on these values. const ( // Ac3BitstreamModeCompleteMain is a Ac3BitstreamMode enum value Ac3BitstreamModeCompleteMain = "COMPLETE_MAIN" // Ac3BitstreamModeCommentary is a Ac3BitstreamMode enum value Ac3BitstreamModeCommentary = "COMMENTARY" // Ac3BitstreamModeDialogue is a Ac3BitstreamMode enum value Ac3BitstreamModeDialogue = "DIALOGUE" // Ac3BitstreamModeEmergency is a Ac3BitstreamMode enum value Ac3BitstreamModeEmergency = "EMERGENCY" // Ac3BitstreamModeHearingImpaired is a Ac3BitstreamMode enum value Ac3BitstreamModeHearingImpaired = "HEARING_IMPAIRED" // Ac3BitstreamModeMusicAndEffects is a Ac3BitstreamMode enum value Ac3BitstreamModeMusicAndEffects = "MUSIC_AND_EFFECTS" // Ac3BitstreamModeVisuallyImpaired is a Ac3BitstreamMode enum value Ac3BitstreamModeVisuallyImpaired = "VISUALLY_IMPAIRED" // Ac3BitstreamModeVoiceOver is a Ac3BitstreamMode enum value Ac3BitstreamModeVoiceOver = "VOICE_OVER" ) // Dolby Digital coding mode. Determines number of channels. const ( // Ac3CodingModeCodingMode10 is a Ac3CodingMode enum value Ac3CodingModeCodingMode10 = "CODING_MODE_1_0" // Ac3CodingModeCodingMode11 is a Ac3CodingMode enum value Ac3CodingModeCodingMode11 = "CODING_MODE_1_1" // Ac3CodingModeCodingMode20 is a Ac3CodingMode enum value Ac3CodingModeCodingMode20 = "CODING_MODE_2_0" // Ac3CodingModeCodingMode32Lfe is a Ac3CodingMode enum value Ac3CodingModeCodingMode32Lfe = "CODING_MODE_3_2_LFE" ) // If set to FILM_STANDARD, adds dynamic range compression signaling to the // output bitstream as defined in the Dolby Digital specification. const ( // Ac3DynamicRangeCompressionProfileFilmStandard is a Ac3DynamicRangeCompressionProfile enum value Ac3DynamicRangeCompressionProfileFilmStandard = "FILM_STANDARD" // Ac3DynamicRangeCompressionProfileNone is a Ac3DynamicRangeCompressionProfile enum value Ac3DynamicRangeCompressionProfileNone = "NONE" ) // Applies a 120Hz lowpass filter to the LFE channel prior to encoding. Only // valid with 3_2_LFE coding mode. const ( // Ac3LfeFilterEnabled is a Ac3LfeFilter enum value Ac3LfeFilterEnabled = "ENABLED" // Ac3LfeFilterDisabled is a Ac3LfeFilter enum value Ac3LfeFilterDisabled = "DISABLED" ) // When set to FOLLOW_INPUT, encoder metadata will be sourced from the DD, DD+, // or DolbyE decoder that supplied this audio data. If audio was not supplied // from one of these streams, then the static metadata settings will be used. const ( // Ac3MetadataControlFollowInput is a Ac3MetadataControl enum value Ac3MetadataControlFollowInput = "FOLLOW_INPUT" // Ac3MetadataControlUseConfigured is a Ac3MetadataControl enum value Ac3MetadataControlUseConfigured = "USE_CONFIGURED" ) // Acceleration configuration for the job. const ( // AccelerationModeDisabled is a AccelerationMode enum value AccelerationModeDisabled = "DISABLED" // AccelerationModeEnabled is a AccelerationMode enum value AccelerationModeEnabled = "ENABLED" ) // This setting only applies to H.264, H.265, and MPEG2 outputs. Use Insert // AFD signaling (AfdSignaling) to specify whether the service includes AFD // values in the output video data and what those values are. * Choose None // to remove all AFD values from this output. * Choose Fixed to ignore input // AFD values and instead encode the value specified in the job. * Choose Auto // to calculate output AFD values based on the input AFD scaler data. const ( // AfdSignalingNone is a AfdSignaling enum value AfdSignalingNone = "NONE" // AfdSignalingAuto is a AfdSignaling enum value AfdSignalingAuto = "AUTO" // AfdSignalingFixed is a AfdSignaling enum value AfdSignalingFixed = "FIXED" ) // You no longer need to specify the anti-alias filter. It's now automatically // applied to all outputs. This property is deprecated. const ( // AntiAliasDisabled is a AntiAlias enum value AntiAliasDisabled = "DISABLED" // AntiAliasEnabled is a AntiAlias enum value AntiAliasEnabled = "ENABLED" ) // Type of Audio codec. const ( // AudioCodecAac is a AudioCodec enum value AudioCodecAac = "AAC" // AudioCodecMp2 is a AudioCodec enum value AudioCodecMp2 = "MP2" // AudioCodecWav is a AudioCodec enum value AudioCodecWav = "WAV" // AudioCodecAiff is a AudioCodec enum value AudioCodecAiff = "AIFF" // AudioCodecAc3 is a AudioCodec enum value AudioCodecAc3 = "AC3" // AudioCodecEac3 is a AudioCodec enum value AudioCodecEac3 = "EAC3" // AudioCodecPassthrough is a AudioCodec enum value AudioCodecPassthrough = "PASSTHROUGH" ) // Enable this setting on one audio selector to set it as the default for the // job. The service uses this default for outputs where it can't find the specified // input audio. If you don't set a default, those outputs have no audio. const ( // AudioDefaultSelectionDefault is a AudioDefaultSelection enum value AudioDefaultSelectionDefault = "DEFAULT" // AudioDefaultSelectionNotDefault is a AudioDefaultSelection enum value AudioDefaultSelectionNotDefault = "NOT_DEFAULT" ) // Choosing FOLLOW_INPUT will cause the ISO 639 language code of the output // to follow the ISO 639 language code of the input. The language specified // for languageCode' will be used when USE_CONFIGURED is selected or when FOLLOW_INPUT // is selected but there is no ISO 639 language code specified by the input. const ( // AudioLanguageCodeControlFollowInput is a AudioLanguageCodeControl enum value AudioLanguageCodeControlFollowInput = "FOLLOW_INPUT" // AudioLanguageCodeControlUseConfigured is a AudioLanguageCodeControl enum value AudioLanguageCodeControlUseConfigured = "USE_CONFIGURED" ) // Audio normalization algorithm to use. 1770-1 conforms to the CALM Act specification, // 1770-2 conforms to the EBU R-128 specification. const ( // AudioNormalizationAlgorithmItuBs17701 is a AudioNormalizationAlgorithm enum value AudioNormalizationAlgorithmItuBs17701 = "ITU_BS_1770_1" // AudioNormalizationAlgorithmItuBs17702 is a AudioNormalizationAlgorithm enum value AudioNormalizationAlgorithmItuBs17702 = "ITU_BS_1770_2" ) // When enabled the output audio is corrected using the chosen algorithm. If // disabled, the audio will be measured but not adjusted. const ( // AudioNormalizationAlgorithmControlCorrectAudio is a AudioNormalizationAlgorithmControl enum value AudioNormalizationAlgorithmControlCorrectAudio = "CORRECT_AUDIO" // AudioNormalizationAlgorithmControlMeasureOnly is a AudioNormalizationAlgorithmControl enum value AudioNormalizationAlgorithmControlMeasureOnly = "MEASURE_ONLY" ) // If set to LOG, log each output's audio track loudness to a CSV file. const ( // AudioNormalizationLoudnessLoggingLog is a AudioNormalizationLoudnessLogging enum value AudioNormalizationLoudnessLoggingLog = "LOG" // AudioNormalizationLoudnessLoggingDontLog is a AudioNormalizationLoudnessLogging enum value AudioNormalizationLoudnessLoggingDontLog = "DONT_LOG" ) // If set to TRUE_PEAK, calculate and log the TruePeak for each output's audio // track loudness. const ( // AudioNormalizationPeakCalculationTruePeak is a AudioNormalizationPeakCalculation enum value AudioNormalizationPeakCalculationTruePeak = "TRUE_PEAK" // AudioNormalizationPeakCalculationNone is a AudioNormalizationPeakCalculation enum value AudioNormalizationPeakCalculationNone = "NONE" ) // Specifies the type of the audio selector. const ( // AudioSelectorTypePid is a AudioSelectorType enum value AudioSelectorTypePid = "PID" // AudioSelectorTypeTrack is a AudioSelectorType enum value AudioSelectorTypeTrack = "TRACK" // AudioSelectorTypeLanguageCode is a AudioSelectorType enum value AudioSelectorTypeLanguageCode = "LANGUAGE_CODE" ) // When set to FOLLOW_INPUT, if the input contains an ISO 639 audio_type, then // that value is passed through to the output. If the input contains no ISO // 639 audio_type, the value in Audio Type is included in the output. Otherwise // the value in Audio Type is included in the output. Note that this field and // audioType are both ignored if audioDescriptionBroadcasterMix is set to BROADCASTER_MIXED_AD. const ( // AudioTypeControlFollowInput is a AudioTypeControl enum value AudioTypeControlFollowInput = "FOLLOW_INPUT" // AudioTypeControlUseConfigured is a AudioTypeControl enum value AudioTypeControlUseConfigured = "USE_CONFIGURED" ) // Optional. Choose a tag type that AWS Billing and Cost Management will use // to sort your AWS Elemental MediaConvert costs on any billing report that // you set up. Any transcoding outputs that don't have an associated tag will // appear in your billing report unsorted. If you don't choose a valid value // for this field, your job outputs will appear on the billing report unsorted. const ( // BillingTagsSourceQueue is a BillingTagsSource enum value BillingTagsSourceQueue = "QUEUE" // BillingTagsSourcePreset is a BillingTagsSource enum value BillingTagsSourcePreset = "PRESET" // BillingTagsSourceJobTemplate is a BillingTagsSource enum value BillingTagsSourceJobTemplate = "JOB_TEMPLATE" ) // If no explicit x_position or y_position is provided, setting alignment to // centered will place the captions at the bottom center of the output. Similarly, // setting a left alignment will align captions to the bottom left of the output. // If x and y positions are given in conjunction with the alignment parameter, // the font will be justified (either left or centered) relative to those coordinates. // This option is not valid for source captions that are STL, 608/embedded or // teletext. These source settings are already pre-defined by the caption stream. // All burn-in and DVB-Sub font settings must match. const ( // BurninSubtitleAlignmentCentered is a BurninSubtitleAlignment enum value BurninSubtitleAlignmentCentered = "CENTERED" // BurninSubtitleAlignmentLeft is a BurninSubtitleAlignment enum value BurninSubtitleAlignmentLeft = "LEFT" ) // Specifies the color of the rectangle behind the captions.All burn-in and // DVB-Sub font settings must match. const ( // BurninSubtitleBackgroundColorNone is a BurninSubtitleBackgroundColor enum value BurninSubtitleBackgroundColorNone = "NONE" // BurninSubtitleBackgroundColorBlack is a BurninSubtitleBackgroundColor enum value BurninSubtitleBackgroundColorBlack = "BLACK" // BurninSubtitleBackgroundColorWhite is a BurninSubtitleBackgroundColor enum value BurninSubtitleBackgroundColorWhite = "WHITE" ) // Specifies the color of the burned-in captions. This option is not valid for // source captions that are STL, 608/embedded or teletext. These source settings // are already pre-defined by the caption stream. All burn-in and DVB-Sub font // settings must match. const ( // BurninSubtitleFontColorWhite is a BurninSubtitleFontColor enum value BurninSubtitleFontColorWhite = "WHITE" // BurninSubtitleFontColorBlack is a BurninSubtitleFontColor enum value BurninSubtitleFontColorBlack = "BLACK" // BurninSubtitleFontColorYellow is a BurninSubtitleFontColor enum value BurninSubtitleFontColorYellow = "YELLOW" // BurninSubtitleFontColorRed is a BurninSubtitleFontColor enum value BurninSubtitleFontColorRed = "RED" // BurninSubtitleFontColorGreen is a BurninSubtitleFontColor enum value BurninSubtitleFontColorGreen = "GREEN" // BurninSubtitleFontColorBlue is a BurninSubtitleFontColor enum value BurninSubtitleFontColorBlue = "BLUE" ) // Specifies font outline color. This option is not valid for source captions // that are either 608/embedded or teletext. These source settings are already // pre-defined by the caption stream. All burn-in and DVB-Sub font settings // must match. const ( // BurninSubtitleOutlineColorBlack is a BurninSubtitleOutlineColor enum value BurninSubtitleOutlineColorBlack = "BLACK" // BurninSubtitleOutlineColorWhite is a BurninSubtitleOutlineColor enum value BurninSubtitleOutlineColorWhite = "WHITE" // BurninSubtitleOutlineColorYellow is a BurninSubtitleOutlineColor enum value BurninSubtitleOutlineColorYellow = "YELLOW" // BurninSubtitleOutlineColorRed is a BurninSubtitleOutlineColor enum value BurninSubtitleOutlineColorRed = "RED" // BurninSubtitleOutlineColorGreen is a BurninSubtitleOutlineColor enum value BurninSubtitleOutlineColorGreen = "GREEN" // BurninSubtitleOutlineColorBlue is a BurninSubtitleOutlineColor enum value BurninSubtitleOutlineColorBlue = "BLUE" ) // Specifies the color of the shadow cast by the captions.All burn-in and DVB-Sub // font settings must match. const ( // BurninSubtitleShadowColorNone is a BurninSubtitleShadowColor enum value BurninSubtitleShadowColorNone = "NONE" // BurninSubtitleShadowColorBlack is a BurninSubtitleShadowColor enum value BurninSubtitleShadowColorBlack = "BLACK" // BurninSubtitleShadowColorWhite is a BurninSubtitleShadowColor enum value BurninSubtitleShadowColorWhite = "WHITE" ) // Only applies to jobs with input captions in Teletext or STL formats. Specify // whether the spacing between letters in your captions is set by the captions // grid or varies depending on letter width. Choose fixed grid to conform to // the spacing specified in the captions file more accurately. Choose proportional // to make the text easier to read if the captions are closed caption. const ( // BurninSubtitleTeletextSpacingFixedGrid is a BurninSubtitleTeletextSpacing enum value BurninSubtitleTeletextSpacingFixedGrid = "FIXED_GRID" // BurninSubtitleTeletextSpacingProportional is a BurninSubtitleTeletextSpacing enum value BurninSubtitleTeletextSpacingProportional = "PROPORTIONAL" ) // Specify the format for this set of captions on this output. The default format // is embedded without SCTE-20. Other options are embedded with SCTE-20, burn-in, // DVB-sub, SCC, SRT, teletext, TTML, and web-VTT. If you are using SCTE-20, // choose SCTE-20 plus embedded (SCTE20_PLUS_EMBEDDED) to create an output that // complies with the SCTE-43 spec. To create a non-compliant output where the // embedded captions come first, choose Embedded plus SCTE-20 (EMBEDDED_PLUS_SCTE20). const ( // CaptionDestinationTypeBurnIn is a CaptionDestinationType enum value CaptionDestinationTypeBurnIn = "BURN_IN" // CaptionDestinationTypeDvbSub is a CaptionDestinationType enum value CaptionDestinationTypeDvbSub = "DVB_SUB" // CaptionDestinationTypeEmbedded is a CaptionDestinationType enum value CaptionDestinationTypeEmbedded = "EMBEDDED" // CaptionDestinationTypeEmbeddedPlusScte20 is a CaptionDestinationType enum value CaptionDestinationTypeEmbeddedPlusScte20 = "EMBEDDED_PLUS_SCTE20" // CaptionDestinationTypeScte20PlusEmbedded is a CaptionDestinationType enum value CaptionDestinationTypeScte20PlusEmbedded = "SCTE20_PLUS_EMBEDDED" // CaptionDestinationTypeScc is a CaptionDestinationType enum value CaptionDestinationTypeScc = "SCC" // CaptionDestinationTypeSrt is a CaptionDestinationType enum value CaptionDestinationTypeSrt = "SRT" // CaptionDestinationTypeSmi is a CaptionDestinationType enum value CaptionDestinationTypeSmi = "SMI" // CaptionDestinationTypeTeletext is a CaptionDestinationType enum value CaptionDestinationTypeTeletext = "TELETEXT" // CaptionDestinationTypeTtml is a CaptionDestinationType enum value CaptionDestinationTypeTtml = "TTML" // CaptionDestinationTypeWebvtt is a CaptionDestinationType enum value CaptionDestinationTypeWebvtt = "WEBVTT" ) // Use Source (SourceType) to identify the format of your input captions. The // service cannot auto-detect caption format. const ( // CaptionSourceTypeAncillary is a CaptionSourceType enum value CaptionSourceTypeAncillary = "ANCILLARY" // CaptionSourceTypeDvbSub is a CaptionSourceType enum value CaptionSourceTypeDvbSub = "DVB_SUB" // CaptionSourceTypeEmbedded is a CaptionSourceType enum value CaptionSourceTypeEmbedded = "EMBEDDED" // CaptionSourceTypeScte20 is a CaptionSourceType enum value CaptionSourceTypeScte20 = "SCTE20" // CaptionSourceTypeScc is a CaptionSourceType enum value CaptionSourceTypeScc = "SCC" // CaptionSourceTypeTtml is a CaptionSourceType enum value CaptionSourceTypeTtml = "TTML" // CaptionSourceTypeStl is a CaptionSourceType enum value CaptionSourceTypeStl = "STL" // CaptionSourceTypeSrt is a CaptionSourceType enum value CaptionSourceTypeSrt = "SRT" // CaptionSourceTypeSmi is a CaptionSourceType enum value CaptionSourceTypeSmi = "SMI" // CaptionSourceTypeTeletext is a CaptionSourceType enum value CaptionSourceTypeTeletext = "TELETEXT" // CaptionSourceTypeNullSource is a CaptionSourceType enum value CaptionSourceTypeNullSource = "NULL_SOURCE" // CaptionSourceTypeImsc is a CaptionSourceType enum value CaptionSourceTypeImsc = "IMSC" ) // When set to ENABLED, sets #EXT-X-ALLOW-CACHE:no tag, which prevents client // from saving media segments for later replay. const ( // CmafClientCacheDisabled is a CmafClientCache enum value CmafClientCacheDisabled = "DISABLED" // CmafClientCacheEnabled is a CmafClientCache enum value CmafClientCacheEnabled = "ENABLED" ) // Specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist // generation. const ( // CmafCodecSpecificationRfc6381 is a CmafCodecSpecification enum value CmafCodecSpecificationRfc6381 = "RFC_6381" // CmafCodecSpecificationRfc4281 is a CmafCodecSpecification enum value CmafCodecSpecificationRfc4281 = "RFC_4281" ) // Encrypts the segments with the given encryption scheme. Leave blank to disable. // Selecting 'Disabled' in the web interface also disables encryption. const ( // CmafEncryptionTypeSampleAes is a CmafEncryptionType enum value CmafEncryptionTypeSampleAes = "SAMPLE_AES" ) // The Initialization Vector is a 128-bit number used in conjunction with the // key for encrypting blocks. If set to INCLUDE, Initialization Vector is listed // in the manifest. Otherwise Initialization Vector is not in the manifest. const ( // CmafInitializationVectorInManifestInclude is a CmafInitializationVectorInManifest enum value CmafInitializationVectorInManifestInclude = "INCLUDE" // CmafInitializationVectorInManifestExclude is a CmafInitializationVectorInManifest enum value CmafInitializationVectorInManifestExclude = "EXCLUDE" ) // Indicates which type of key provider is used for encryption. const ( // CmafKeyProviderTypeStaticKey is a CmafKeyProviderType enum value CmafKeyProviderTypeStaticKey = "STATIC_KEY" ) // When set to GZIP, compresses HLS playlist. const ( // CmafManifestCompressionGzip is a CmafManifestCompression enum value CmafManifestCompressionGzip = "GZIP" // CmafManifestCompressionNone is a CmafManifestCompression enum value CmafManifestCompressionNone = "NONE" ) // Indicates whether the output manifest should use floating point values for // segment duration. const ( // CmafManifestDurationFormatFloatingPoint is a CmafManifestDurationFormat enum value CmafManifestDurationFormatFloatingPoint = "FLOATING_POINT" // CmafManifestDurationFormatInteger is a CmafManifestDurationFormat enum value CmafManifestDurationFormatInteger = "INTEGER" ) // When set to SINGLE_FILE, a single output file is generated, which is internally // segmented using the Fragment Length and Segment Length. When set to SEGMENTED_FILES, // separate segment files will be created. const ( // CmafSegmentControlSingleFile is a CmafSegmentControl enum value CmafSegmentControlSingleFile = "SINGLE_FILE" // CmafSegmentControlSegmentedFiles is a CmafSegmentControl enum value CmafSegmentControlSegmentedFiles = "SEGMENTED_FILES" ) // Include or exclude RESOLUTION attribute for video in EXT-X-STREAM-INF tag // of variant manifest. const ( // CmafStreamInfResolutionInclude is a CmafStreamInfResolution enum value CmafStreamInfResolutionInclude = "INCLUDE" // CmafStreamInfResolutionExclude is a CmafStreamInfResolution enum value CmafStreamInfResolutionExclude = "EXCLUDE" ) // When set to ENABLED, a DASH MPD manifest will be generated for this output. const ( // CmafWriteDASHManifestDisabled is a CmafWriteDASHManifest enum value CmafWriteDASHManifestDisabled = "DISABLED" // CmafWriteDASHManifestEnabled is a CmafWriteDASHManifest enum value CmafWriteDASHManifestEnabled = "ENABLED" ) // When set to ENABLED, an Apple HLS manifest will be generated for this output. const ( // CmafWriteHLSManifestDisabled is a CmafWriteHLSManifest enum value CmafWriteHLSManifestDisabled = "DISABLED" // CmafWriteHLSManifestEnabled is a CmafWriteHLSManifest enum value CmafWriteHLSManifestEnabled = "ENABLED" ) // Enable Insert color metadata (ColorMetadata) to include color metadata in // this output. This setting is enabled by default. const ( // ColorMetadataIgnore is a ColorMetadata enum value ColorMetadataIgnore = "IGNORE" // ColorMetadataInsert is a ColorMetadata enum value ColorMetadataInsert = "INSERT" ) // If your input video has accurate color space metadata, or if you don't know // about color space, leave this set to the default value FOLLOW. The service // will automatically detect your input color space. If your input video has // metadata indicating the wrong color space, or if your input video is missing // color space metadata that should be there, specify the accurate color space // here. If you choose HDR10, you can also correct inaccurate color space coefficients, // using the HDR master display information controls. You must also set Color // space usage (ColorSpaceUsage) to FORCE for the service to use these values. const ( // ColorSpaceFollow is a ColorSpace enum value ColorSpaceFollow = "FOLLOW" // ColorSpaceRec601 is a ColorSpace enum value ColorSpaceRec601 = "REC_601" // ColorSpaceRec709 is a ColorSpace enum value ColorSpaceRec709 = "REC_709" // ColorSpaceHdr10 is a ColorSpace enum value ColorSpaceHdr10 = "HDR10" // ColorSpaceHlg2020 is a ColorSpace enum value ColorSpaceHlg2020 = "HLG_2020" ) // Determines if colorspace conversion will be performed. If set to _None_, // no conversion will be performed. If _Force 601_ or _Force 709_ are selected, // conversion will be performed for inputs with differing colorspaces. An input's // colorspace can be specified explicitly in the "Video Selector":#inputs-video_selector // if necessary. const ( // ColorSpaceConversionNone is a ColorSpaceConversion enum value ColorSpaceConversionNone = "NONE" // ColorSpaceConversionForce601 is a ColorSpaceConversion enum value ColorSpaceConversionForce601 = "FORCE_601" // ColorSpaceConversionForce709 is a ColorSpaceConversion enum value ColorSpaceConversionForce709 = "FORCE_709" // ColorSpaceConversionForceHdr10 is a ColorSpaceConversion enum value ColorSpaceConversionForceHdr10 = "FORCE_HDR10" // ColorSpaceConversionForceHlg2020 is a ColorSpaceConversion enum value ColorSpaceConversionForceHlg2020 = "FORCE_HLG_2020" ) // There are two sources for color metadata, the input file and the job configuration // (in the Color space and HDR master display informaiton settings). The Color // space usage setting controls which takes precedence. FORCE: The system will // use color metadata supplied by user, if any. If the user does not supply // color metadata, the system will use data from the source. FALLBACK: The system // will use color metadata from the source. If source has no color metadata, // the system will use user-supplied color metadata values if available. const ( // ColorSpaceUsageForce is a ColorSpaceUsage enum value ColorSpaceUsageForce = "FORCE" // ColorSpaceUsageFallback is a ColorSpaceUsage enum value ColorSpaceUsageFallback = "FALLBACK" ) // The length of the term of your reserved queue pricing plan commitment. const ( // CommitmentOneYear is a Commitment enum value CommitmentOneYear = "ONE_YEAR" ) // Container for this output. Some containers require a container settings object. // If not specified, the default object will be created. const ( // ContainerTypeF4v is a ContainerType enum value ContainerTypeF4v = "F4V" // ContainerTypeIsmv is a ContainerType enum value ContainerTypeIsmv = "ISMV" // ContainerTypeM2ts is a ContainerType enum value ContainerTypeM2ts = "M2TS" // ContainerTypeM3u8 is a ContainerType enum value ContainerTypeM3u8 = "M3U8" // ContainerTypeCmfc is a ContainerType enum value ContainerTypeCmfc = "CMFC" // ContainerTypeMov is a ContainerType enum value ContainerTypeMov = "MOV" // ContainerTypeMp4 is a ContainerType enum value ContainerTypeMp4 = "MP4" // ContainerTypeMpd is a ContainerType enum value ContainerTypeMpd = "MPD" // ContainerTypeMxf is a ContainerType enum value ContainerTypeMxf = "MXF" // ContainerTypeRaw is a ContainerType enum value ContainerTypeRaw = "RAW" ) // Supports HbbTV specification as indicated const ( // DashIsoHbbtvComplianceHbbtv15 is a DashIsoHbbtvCompliance enum value DashIsoHbbtvComplianceHbbtv15 = "HBBTV_1_5" // DashIsoHbbtvComplianceNone is a DashIsoHbbtvCompliance enum value DashIsoHbbtvComplianceNone = "NONE" ) // When set to SINGLE_FILE, a single output file is generated, which is internally // segmented using the Fragment Length and Segment Length. When set to SEGMENTED_FILES, // separate segment files will be created. const ( // DashIsoSegmentControlSingleFile is a DashIsoSegmentControl enum value DashIsoSegmentControlSingleFile = "SINGLE_FILE" // DashIsoSegmentControlSegmentedFiles is a DashIsoSegmentControl enum value DashIsoSegmentControlSegmentedFiles = "SEGMENTED_FILES" ) // When you enable Precise segment duration in manifests (writeSegmentTimelineInRepresentation), // your DASH manifest shows precise segment durations. The segment duration // information appears inside the SegmentTimeline element, inside SegmentTemplate // at the Representation level. When this feature isn't enabled, the segment // durations in your DASH manifest are approximate. The segment duration information // appears in the duration attribute of the SegmentTemplate element. const ( // DashIsoWriteSegmentTimelineInRepresentationEnabled is a DashIsoWriteSegmentTimelineInRepresentation enum value DashIsoWriteSegmentTimelineInRepresentationEnabled = "ENABLED" // DashIsoWriteSegmentTimelineInRepresentationDisabled is a DashIsoWriteSegmentTimelineInRepresentation enum value DashIsoWriteSegmentTimelineInRepresentationDisabled = "DISABLED" ) // This specifies how the encrypted file needs to be decrypted. const ( // DecryptionModeAesCtr is a DecryptionMode enum value DecryptionModeAesCtr = "AES_CTR" // DecryptionModeAesCbc is a DecryptionMode enum value DecryptionModeAesCbc = "AES_CBC" // DecryptionModeAesGcm is a DecryptionMode enum value DecryptionModeAesGcm = "AES_GCM" ) // Only applies when you set Deinterlacer (DeinterlaceMode) to Deinterlace (DEINTERLACE) // or Adaptive (ADAPTIVE). Motion adaptive interpolate (INTERPOLATE) produces // sharper pictures, while blend (BLEND) produces smoother motion. Use (INTERPOLATE_TICKER) // OR (BLEND_TICKER) if your source file includes a ticker, such as a scrolling // headline at the bottom of the frame. const ( // DeinterlaceAlgorithmInterpolate is a DeinterlaceAlgorithm enum value DeinterlaceAlgorithmInterpolate = "INTERPOLATE" // DeinterlaceAlgorithmInterpolateTicker is a DeinterlaceAlgorithm enum value DeinterlaceAlgorithmInterpolateTicker = "INTERPOLATE_TICKER" // DeinterlaceAlgorithmBlend is a DeinterlaceAlgorithm enum value DeinterlaceAlgorithmBlend = "BLEND" // DeinterlaceAlgorithmBlendTicker is a DeinterlaceAlgorithm enum value DeinterlaceAlgorithmBlendTicker = "BLEND_TICKER" ) // - When set to NORMAL (default), the deinterlacer does not convert frames // that are tagged in metadata as progressive. It will only convert those that // are tagged as some other type. - When set to FORCE_ALL_FRAMES, the deinterlacer // converts every frame to progressive - even those that are already tagged // as progressive. Turn Force mode on only if there is a good chance that the // metadata has tagged frames as progressive when they are not progressive. // Do not turn on otherwise; processing frames that are already progressive // into progressive will probably result in lower quality video. const ( // DeinterlacerControlForceAllFrames is a DeinterlacerControl enum value DeinterlacerControlForceAllFrames = "FORCE_ALL_FRAMES" // DeinterlacerControlNormal is a DeinterlacerControl enum value DeinterlacerControlNormal = "NORMAL" ) // Use Deinterlacer (DeinterlaceMode) to choose how the service will do deinterlacing. // Default is Deinterlace. - Deinterlace converts interlaced to progressive. // - Inverse telecine converts Hard Telecine 29.97i to progressive 23.976p. // - Adaptive auto-detects and converts to progressive. const ( // DeinterlacerModeDeinterlace is a DeinterlacerMode enum value DeinterlacerModeDeinterlace = "DEINTERLACE" // DeinterlacerModeInverseTelecine is a DeinterlacerMode enum value DeinterlacerModeInverseTelecine = "INVERSE_TELECINE" // DeinterlacerModeAdaptive is a DeinterlacerMode enum value DeinterlacerModeAdaptive = "ADAPTIVE" ) // Optional field, defaults to DEFAULT. Specify DEFAULT for this operation to // return your endpoints if any exist, or to create an endpoint for you and // return it if one doesn't already exist. Specify GET_ONLY to return your endpoints // if any exist, or an empty list if none exist. const ( // DescribeEndpointsModeDefault is a DescribeEndpointsMode enum value DescribeEndpointsModeDefault = "DEFAULT" // DescribeEndpointsModeGetOnly is a DescribeEndpointsMode enum value DescribeEndpointsModeGetOnly = "GET_ONLY" ) // Applies only to 29.97 fps outputs. When this feature is enabled, the service // will use drop-frame timecode on outputs. If it is not possible to use drop-frame // timecode, the system will fall back to non-drop-frame. This setting is enabled // by default when Timecode insertion (TimecodeInsertion) is enabled. const ( // DropFrameTimecodeDisabled is a DropFrameTimecode enum value DropFrameTimecodeDisabled = "DISABLED" // DropFrameTimecodeEnabled is a DropFrameTimecode enum value DropFrameTimecodeEnabled = "ENABLED" ) // If no explicit x_position or y_position is provided, setting alignment to // centered will place the captions at the bottom center of the output. Similarly, // setting a left alignment will align captions to the bottom left of the output. // If x and y positions are given in conjunction with the alignment parameter, // the font will be justified (either left or centered) relative to those coordinates. // This option is not valid for source captions that are STL, 608/embedded or // teletext. These source settings are already pre-defined by the caption stream. // All burn-in and DVB-Sub font settings must match. const ( // DvbSubtitleAlignmentCentered is a DvbSubtitleAlignment enum value DvbSubtitleAlignmentCentered = "CENTERED" // DvbSubtitleAlignmentLeft is a DvbSubtitleAlignment enum value DvbSubtitleAlignmentLeft = "LEFT" ) // Specifies the color of the rectangle behind the captions.All burn-in and // DVB-Sub font settings must match. const ( // DvbSubtitleBackgroundColorNone is a DvbSubtitleBackgroundColor enum value DvbSubtitleBackgroundColorNone = "NONE" // DvbSubtitleBackgroundColorBlack is a DvbSubtitleBackgroundColor enum value DvbSubtitleBackgroundColorBlack = "BLACK" // DvbSubtitleBackgroundColorWhite is a DvbSubtitleBackgroundColor enum value DvbSubtitleBackgroundColorWhite = "WHITE" ) // Specifies the color of the burned-in captions. This option is not valid for // source captions that are STL, 608/embedded or teletext. These source settings // are already pre-defined by the caption stream. All burn-in and DVB-Sub font // settings must match. const ( // DvbSubtitleFontColorWhite is a DvbSubtitleFontColor enum value DvbSubtitleFontColorWhite = "WHITE" // DvbSubtitleFontColorBlack is a DvbSubtitleFontColor enum value DvbSubtitleFontColorBlack = "BLACK" // DvbSubtitleFontColorYellow is a DvbSubtitleFontColor enum value DvbSubtitleFontColorYellow = "YELLOW" // DvbSubtitleFontColorRed is a DvbSubtitleFontColor enum value DvbSubtitleFontColorRed = "RED" // DvbSubtitleFontColorGreen is a DvbSubtitleFontColor enum value DvbSubtitleFontColorGreen = "GREEN" // DvbSubtitleFontColorBlue is a DvbSubtitleFontColor enum value DvbSubtitleFontColorBlue = "BLUE" ) // Specifies font outline color. This option is not valid for source captions // that are either 608/embedded or teletext. These source settings are already // pre-defined by the caption stream. All burn-in and DVB-Sub font settings // must match. const ( // DvbSubtitleOutlineColorBlack is a DvbSubtitleOutlineColor enum value DvbSubtitleOutlineColorBlack = "BLACK" // DvbSubtitleOutlineColorWhite is a DvbSubtitleOutlineColor enum value DvbSubtitleOutlineColorWhite = "WHITE" // DvbSubtitleOutlineColorYellow is a DvbSubtitleOutlineColor enum value DvbSubtitleOutlineColorYellow = "YELLOW" // DvbSubtitleOutlineColorRed is a DvbSubtitleOutlineColor enum value DvbSubtitleOutlineColorRed = "RED" // DvbSubtitleOutlineColorGreen is a DvbSubtitleOutlineColor enum value DvbSubtitleOutlineColorGreen = "GREEN" // DvbSubtitleOutlineColorBlue is a DvbSubtitleOutlineColor enum value DvbSubtitleOutlineColorBlue = "BLUE" ) // Specifies the color of the shadow cast by the captions.All burn-in and DVB-Sub // font settings must match. const ( // DvbSubtitleShadowColorNone is a DvbSubtitleShadowColor enum value DvbSubtitleShadowColorNone = "NONE" // DvbSubtitleShadowColorBlack is a DvbSubtitleShadowColor enum value DvbSubtitleShadowColorBlack = "BLACK" // DvbSubtitleShadowColorWhite is a DvbSubtitleShadowColor enum value DvbSubtitleShadowColorWhite = "WHITE" ) // Only applies to jobs with input captions in Teletext or STL formats. Specify // whether the spacing between letters in your captions is set by the captions // grid or varies depending on letter width. Choose fixed grid to conform to // the spacing specified in the captions file more accurately. Choose proportional // to make the text easier to read if the captions are closed caption. const ( // DvbSubtitleTeletextSpacingFixedGrid is a DvbSubtitleTeletextSpacing enum value DvbSubtitleTeletextSpacingFixedGrid = "FIXED_GRID" // DvbSubtitleTeletextSpacingProportional is a DvbSubtitleTeletextSpacing enum value DvbSubtitleTeletextSpacingProportional = "PROPORTIONAL" ) // If set to ATTENUATE_3_DB, applies a 3 dB attenuation to the surround channels. // Only used for 3/2 coding mode. const ( // Eac3AttenuationControlAttenuate3Db is a Eac3AttenuationControl enum value Eac3AttenuationControlAttenuate3Db = "ATTENUATE_3_DB" // Eac3AttenuationControlNone is a Eac3AttenuationControl enum value Eac3AttenuationControlNone = "NONE" ) // Specifies the "Bitstream Mode" (bsmod) for the emitted E-AC-3 stream. See // ATSC A/52-2012 (Annex E) for background on these values. const ( // Eac3BitstreamModeCompleteMain is a Eac3BitstreamMode enum value Eac3BitstreamModeCompleteMain = "COMPLETE_MAIN" // Eac3BitstreamModeCommentary is a Eac3BitstreamMode enum value Eac3BitstreamModeCommentary = "COMMENTARY" // Eac3BitstreamModeEmergency is a Eac3BitstreamMode enum value Eac3BitstreamModeEmergency = "EMERGENCY" // Eac3BitstreamModeHearingImpaired is a Eac3BitstreamMode enum value Eac3BitstreamModeHearingImpaired = "HEARING_IMPAIRED" // Eac3BitstreamModeVisuallyImpaired is a Eac3BitstreamMode enum value Eac3BitstreamModeVisuallyImpaired = "VISUALLY_IMPAIRED" ) // Dolby Digital Plus coding mode. Determines number of channels. const ( // Eac3CodingModeCodingMode10 is a Eac3CodingMode enum value Eac3CodingModeCodingMode10 = "CODING_MODE_1_0" // Eac3CodingModeCodingMode20 is a Eac3CodingMode enum value Eac3CodingModeCodingMode20 = "CODING_MODE_2_0" // Eac3CodingModeCodingMode32 is a Eac3CodingMode enum value Eac3CodingModeCodingMode32 = "CODING_MODE_3_2" ) // Activates a DC highpass filter for all input channels. const ( // Eac3DcFilterEnabled is a Eac3DcFilter enum value Eac3DcFilterEnabled = "ENABLED" // Eac3DcFilterDisabled is a Eac3DcFilter enum value Eac3DcFilterDisabled = "DISABLED" ) // Enables Dynamic Range Compression that restricts the absolute peak level // for a signal. const ( // Eac3DynamicRangeCompressionLineNone is a Eac3DynamicRangeCompressionLine enum value Eac3DynamicRangeCompressionLineNone = "NONE" // Eac3DynamicRangeCompressionLineFilmStandard is a Eac3DynamicRangeCompressionLine enum value Eac3DynamicRangeCompressionLineFilmStandard = "FILM_STANDARD" // Eac3DynamicRangeCompressionLineFilmLight is a Eac3DynamicRangeCompressionLine enum value Eac3DynamicRangeCompressionLineFilmLight = "FILM_LIGHT" // Eac3DynamicRangeCompressionLineMusicStandard is a Eac3DynamicRangeCompressionLine enum value Eac3DynamicRangeCompressionLineMusicStandard = "MUSIC_STANDARD" // Eac3DynamicRangeCompressionLineMusicLight is a Eac3DynamicRangeCompressionLine enum value Eac3DynamicRangeCompressionLineMusicLight = "MUSIC_LIGHT" // Eac3DynamicRangeCompressionLineSpeech is a Eac3DynamicRangeCompressionLine enum value Eac3DynamicRangeCompressionLineSpeech = "SPEECH" ) // Enables Heavy Dynamic Range Compression, ensures that the instantaneous signal // peaks do not exceed specified levels. const ( // Eac3DynamicRangeCompressionRfNone is a Eac3DynamicRangeCompressionRf enum value Eac3DynamicRangeCompressionRfNone = "NONE" // Eac3DynamicRangeCompressionRfFilmStandard is a Eac3DynamicRangeCompressionRf enum value Eac3DynamicRangeCompressionRfFilmStandard = "FILM_STANDARD" // Eac3DynamicRangeCompressionRfFilmLight is a Eac3DynamicRangeCompressionRf enum value Eac3DynamicRangeCompressionRfFilmLight = "FILM_LIGHT" // Eac3DynamicRangeCompressionRfMusicStandard is a Eac3DynamicRangeCompressionRf enum value Eac3DynamicRangeCompressionRfMusicStandard = "MUSIC_STANDARD" // Eac3DynamicRangeCompressionRfMusicLight is a Eac3DynamicRangeCompressionRf enum value Eac3DynamicRangeCompressionRfMusicLight = "MUSIC_LIGHT" // Eac3DynamicRangeCompressionRfSpeech is a Eac3DynamicRangeCompressionRf enum value Eac3DynamicRangeCompressionRfSpeech = "SPEECH" ) // When encoding 3/2 audio, controls whether the LFE channel is enabled const ( // Eac3LfeControlLfe is a Eac3LfeControl enum value Eac3LfeControlLfe = "LFE" // Eac3LfeControlNoLfe is a Eac3LfeControl enum value Eac3LfeControlNoLfe = "NO_LFE" ) // Applies a 120Hz lowpass filter to the LFE channel prior to encoding. Only // valid with 3_2_LFE coding mode. const ( // Eac3LfeFilterEnabled is a Eac3LfeFilter enum value Eac3LfeFilterEnabled = "ENABLED" // Eac3LfeFilterDisabled is a Eac3LfeFilter enum value Eac3LfeFilterDisabled = "DISABLED" ) // When set to FOLLOW_INPUT, encoder metadata will be sourced from the DD, DD+, // or DolbyE decoder that supplied this audio data. If audio was not supplied // from one of these streams, then the static metadata settings will be used. const ( // Eac3MetadataControlFollowInput is a Eac3MetadataControl enum value Eac3MetadataControlFollowInput = "FOLLOW_INPUT" // Eac3MetadataControlUseConfigured is a Eac3MetadataControl enum value Eac3MetadataControlUseConfigured = "USE_CONFIGURED" ) // When set to WHEN_POSSIBLE, input DD+ audio will be passed through if it is // present on the input. this detection is dynamic over the life of the transcode. // Inputs that alternate between DD+ and non-DD+ content will have a consistent // DD+ output as the system alternates between passthrough and encoding. const ( // Eac3PassthroughControlWhenPossible is a Eac3PassthroughControl enum value Eac3PassthroughControlWhenPossible = "WHEN_POSSIBLE" // Eac3PassthroughControlNoPassthrough is a Eac3PassthroughControl enum value Eac3PassthroughControlNoPassthrough = "NO_PASSTHROUGH" ) // Controls the amount of phase-shift applied to the surround channels. Only // used for 3/2 coding mode. const ( // Eac3PhaseControlShift90Degrees is a Eac3PhaseControl enum value Eac3PhaseControlShift90Degrees = "SHIFT_90_DEGREES" // Eac3PhaseControlNoShift is a Eac3PhaseControl enum value Eac3PhaseControlNoShift = "NO_SHIFT" ) // Stereo downmix preference. Only used for 3/2 coding mode. const ( // Eac3StereoDownmixNotIndicated is a Eac3StereoDownmix enum value Eac3StereoDownmixNotIndicated = "NOT_INDICATED" // Eac3StereoDownmixLoRo is a Eac3StereoDownmix enum value Eac3StereoDownmixLoRo = "LO_RO" // Eac3StereoDownmixLtRt is a Eac3StereoDownmix enum value Eac3StereoDownmixLtRt = "LT_RT" // Eac3StereoDownmixDpl2 is a Eac3StereoDownmix enum value Eac3StereoDownmixDpl2 = "DPL2" ) // When encoding 3/2 audio, sets whether an extra center back surround channel // is matrix encoded into the left and right surround channels. const ( // Eac3SurroundExModeNotIndicated is a Eac3SurroundExMode enum value Eac3SurroundExModeNotIndicated = "NOT_INDICATED" // Eac3SurroundExModeEnabled is a Eac3SurroundExMode enum value Eac3SurroundExModeEnabled = "ENABLED" // Eac3SurroundExModeDisabled is a Eac3SurroundExMode enum value Eac3SurroundExModeDisabled = "DISABLED" ) // When encoding 2/0 audio, sets whether Dolby Surround is matrix encoded into // the two channels. const ( // Eac3SurroundModeNotIndicated is a Eac3SurroundMode enum value Eac3SurroundModeNotIndicated = "NOT_INDICATED" // Eac3SurroundModeEnabled is a Eac3SurroundMode enum value Eac3SurroundModeEnabled = "ENABLED" // Eac3SurroundModeDisabled is a Eac3SurroundMode enum value Eac3SurroundModeDisabled = "DISABLED" ) // When set to UPCONVERT, 608 data is both passed through via the "608 compatibility // bytes" fields of the 708 wrapper as well as translated into 708. 708 data // present in the source content will be discarded. const ( // EmbeddedConvert608To708Upconvert is a EmbeddedConvert608To708 enum value EmbeddedConvert608To708Upconvert = "UPCONVERT" // EmbeddedConvert608To708Disabled is a EmbeddedConvert608To708 enum value EmbeddedConvert608To708Disabled = "DISABLED" ) // If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning // of the archive as required for progressive downloading. Otherwise it is placed // normally at the end. const ( // F4vMoovPlacementProgressiveDownload is a F4vMoovPlacement enum value F4vMoovPlacementProgressiveDownload = "PROGRESSIVE_DOWNLOAD" // F4vMoovPlacementNormal is a F4vMoovPlacement enum value F4vMoovPlacementNormal = "NORMAL" ) // If set to UPCONVERT, 608 caption data is both passed through via the "608 // compatibility bytes" fields of the 708 wrapper as well as translated into // 708. 708 data present in the source content will be discarded. const ( // FileSourceConvert608To708Upconvert is a FileSourceConvert608To708 enum value FileSourceConvert608To708Upconvert = "UPCONVERT" // FileSourceConvert608To708Disabled is a FileSourceConvert608To708 enum value FileSourceConvert608To708Disabled = "DISABLED" ) // Provide the font script, using an ISO 15924 script code, if the LanguageCode // is not sufficient for determining the script type. Where LanguageCode or // CustomLanguageCode is sufficient, use "AUTOMATIC" or leave unset. const ( // FontScriptAutomatic is a FontScript enum value FontScriptAutomatic = "AUTOMATIC" // FontScriptHans is a FontScript enum value FontScriptHans = "HANS" // FontScriptHant is a FontScript enum value FontScriptHant = "HANT" ) // Adaptive quantization. Allows intra-frame quantizers to vary to improve visual // quality. const ( // H264AdaptiveQuantizationOff is a H264AdaptiveQuantization enum value H264AdaptiveQuantizationOff = "OFF" // H264AdaptiveQuantizationLow is a H264AdaptiveQuantization enum value H264AdaptiveQuantizationLow = "LOW" // H264AdaptiveQuantizationMedium is a H264AdaptiveQuantization enum value H264AdaptiveQuantizationMedium = "MEDIUM" // H264AdaptiveQuantizationHigh is a H264AdaptiveQuantization enum value H264AdaptiveQuantizationHigh = "HIGH" // H264AdaptiveQuantizationHigher is a H264AdaptiveQuantization enum value H264AdaptiveQuantizationHigher = "HIGHER" // H264AdaptiveQuantizationMax is a H264AdaptiveQuantization enum value H264AdaptiveQuantizationMax = "MAX" ) // Specify an H.264 level that is consistent with your output video settings. // If you aren't sure what level to specify, choose Auto (AUTO). const ( // H264CodecLevelAuto is a H264CodecLevel enum value H264CodecLevelAuto = "AUTO" // H264CodecLevelLevel1 is a H264CodecLevel enum value H264CodecLevelLevel1 = "LEVEL_1" // H264CodecLevelLevel11 is a H264CodecLevel enum value H264CodecLevelLevel11 = "LEVEL_1_1" // H264CodecLevelLevel12 is a H264CodecLevel enum value H264CodecLevelLevel12 = "LEVEL_1_2" // H264CodecLevelLevel13 is a H264CodecLevel enum value H264CodecLevelLevel13 = "LEVEL_1_3" // H264CodecLevelLevel2 is a H264CodecLevel enum value H264CodecLevelLevel2 = "LEVEL_2" // H264CodecLevelLevel21 is a H264CodecLevel enum value H264CodecLevelLevel21 = "LEVEL_2_1" // H264CodecLevelLevel22 is a H264CodecLevel enum value H264CodecLevelLevel22 = "LEVEL_2_2" // H264CodecLevelLevel3 is a H264CodecLevel enum value H264CodecLevelLevel3 = "LEVEL_3" // H264CodecLevelLevel31 is a H264CodecLevel enum value H264CodecLevelLevel31 = "LEVEL_3_1" // H264CodecLevelLevel32 is a H264CodecLevel enum value H264CodecLevelLevel32 = "LEVEL_3_2" // H264CodecLevelLevel4 is a H264CodecLevel enum value H264CodecLevelLevel4 = "LEVEL_4" // H264CodecLevelLevel41 is a H264CodecLevel enum value H264CodecLevelLevel41 = "LEVEL_4_1" // H264CodecLevelLevel42 is a H264CodecLevel enum value H264CodecLevelLevel42 = "LEVEL_4_2" // H264CodecLevelLevel5 is a H264CodecLevel enum value H264CodecLevelLevel5 = "LEVEL_5" // H264CodecLevelLevel51 is a H264CodecLevel enum value H264CodecLevelLevel51 = "LEVEL_5_1" // H264CodecLevelLevel52 is a H264CodecLevel enum value H264CodecLevelLevel52 = "LEVEL_5_2" ) // H.264 Profile. High 4:2:2 and 10-bit profiles are only available with the // AVC-I License. const ( // H264CodecProfileBaseline is a H264CodecProfile enum value H264CodecProfileBaseline = "BASELINE" // H264CodecProfileHigh is a H264CodecProfile enum value H264CodecProfileHigh = "HIGH" // H264CodecProfileHigh10bit is a H264CodecProfile enum value H264CodecProfileHigh10bit = "HIGH_10BIT" // H264CodecProfileHigh422 is a H264CodecProfile enum value H264CodecProfileHigh422 = "HIGH_422" // H264CodecProfileHigh42210bit is a H264CodecProfile enum value H264CodecProfileHigh42210bit = "HIGH_422_10BIT" // H264CodecProfileMain is a H264CodecProfile enum value H264CodecProfileMain = "MAIN" ) // Choose Adaptive to improve subjective video quality for high-motion content. // This will cause the service to use fewer B-frames (which infer information // based on other frames) for high-motion portions of the video and more B-frames // for low-motion portions. The maximum number of B-frames is limited by the // value you provide for the setting B frames between reference frames (numberBFramesBetweenReferenceFrames). const ( // H264DynamicSubGopAdaptive is a H264DynamicSubGop enum value H264DynamicSubGopAdaptive = "ADAPTIVE" // H264DynamicSubGopStatic is a H264DynamicSubGop enum value H264DynamicSubGopStatic = "STATIC" ) // Entropy encoding mode. Use CABAC (must be in Main or High profile) or CAVLC. const ( // H264EntropyEncodingCabac is a H264EntropyEncoding enum value H264EntropyEncodingCabac = "CABAC" // H264EntropyEncodingCavlc is a H264EntropyEncoding enum value H264EntropyEncodingCavlc = "CAVLC" ) // Choosing FORCE_FIELD disables PAFF encoding for interlaced outputs. const ( // H264FieldEncodingPaff is a H264FieldEncoding enum value H264FieldEncodingPaff = "PAFF" // H264FieldEncodingForceField is a H264FieldEncoding enum value H264FieldEncodingForceField = "FORCE_FIELD" ) // Adjust quantization within each frame to reduce flicker or 'pop' on I-frames. const ( // H264FlickerAdaptiveQuantizationDisabled is a H264FlickerAdaptiveQuantization enum value H264FlickerAdaptiveQuantizationDisabled = "DISABLED" // H264FlickerAdaptiveQuantizationEnabled is a H264FlickerAdaptiveQuantization enum value H264FlickerAdaptiveQuantizationEnabled = "ENABLED" ) // If you are using the console, use the Framerate setting to specify the frame // rate for this output. If you want to keep the same frame rate as the input // video, choose Follow source. If you want to do frame rate conversion, choose // a frame rate from the dropdown list or choose Custom. The framerates shown // in the dropdown list are decimal approximations of fractions. If you choose // Custom, specify your frame rate as a fraction. If you are creating your transcoding // job specification as a JSON file without the console, use FramerateControl // to specify which value the service uses for the frame rate for this output. // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate // from the input. Choose SPECIFIED if you want the service to use the frame // rate you specify in the settings FramerateNumerator and FramerateDenominator. const ( // H264FramerateControlInitializeFromSource is a H264FramerateControl enum value H264FramerateControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" // H264FramerateControlSpecified is a H264FramerateControl enum value H264FramerateControlSpecified = "SPECIFIED" ) // When set to INTERPOLATE, produces smoother motion during frame rate conversion. const ( // H264FramerateConversionAlgorithmDuplicateDrop is a H264FramerateConversionAlgorithm enum value H264FramerateConversionAlgorithmDuplicateDrop = "DUPLICATE_DROP" // H264FramerateConversionAlgorithmInterpolate is a H264FramerateConversionAlgorithm enum value H264FramerateConversionAlgorithmInterpolate = "INTERPOLATE" ) // If enable, use reference B frames for GOP structures that have B frames > // 1. const ( // H264GopBReferenceDisabled is a H264GopBReference enum value H264GopBReferenceDisabled = "DISABLED" // H264GopBReferenceEnabled is a H264GopBReference enum value H264GopBReferenceEnabled = "ENABLED" ) // Indicates if the GOP Size in H264 is specified in frames or seconds. If seconds // the system will convert the GOP Size into a frame count at run time. const ( // H264GopSizeUnitsFrames is a H264GopSizeUnits enum value H264GopSizeUnitsFrames = "FRAMES" // H264GopSizeUnitsSeconds is a H264GopSizeUnits enum value H264GopSizeUnitsSeconds = "SECONDS" ) // Use Interlace mode (InterlaceMode) to choose the scan line type for the output. // * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce // interlaced output with the entire output having the same field polarity (top // or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default // Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, // behavior depends on the input scan type, as follows. - If the source is interlaced, // the output will be interlaced with the same polarity as the source (it will // follow the source). The output could therefore be a mix of "top field first" // and "bottom field first". - If the source is progressive, the output will // be interlaced with "top field first" or "bottom field first" polarity, depending // on which of the Follow options you chose. const ( // H264InterlaceModeProgressive is a H264InterlaceMode enum value H264InterlaceModeProgressive = "PROGRESSIVE" // H264InterlaceModeTopField is a H264InterlaceMode enum value H264InterlaceModeTopField = "TOP_FIELD" // H264InterlaceModeBottomField is a H264InterlaceMode enum value H264InterlaceModeBottomField = "BOTTOM_FIELD" // H264InterlaceModeFollowTopField is a H264InterlaceMode enum value H264InterlaceModeFollowTopField = "FOLLOW_TOP_FIELD" // H264InterlaceModeFollowBottomField is a H264InterlaceMode enum value H264InterlaceModeFollowBottomField = "FOLLOW_BOTTOM_FIELD" ) // Using the API, enable ParFollowSource if you want the service to use the // pixel aspect ratio from the input. Using the console, do this by choosing // Follow source for Pixel aspect ratio. const ( // H264ParControlInitializeFromSource is a H264ParControl enum value H264ParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" // H264ParControlSpecified is a H264ParControl enum value H264ParControlSpecified = "SPECIFIED" ) // Use Quality tuning level (H264QualityTuningLevel) to specifiy whether to // use fast single-pass, high-quality singlepass, or high-quality multipass // video encoding. const ( // H264QualityTuningLevelSinglePass is a H264QualityTuningLevel enum value H264QualityTuningLevelSinglePass = "SINGLE_PASS" // H264QualityTuningLevelSinglePassHq is a H264QualityTuningLevel enum value H264QualityTuningLevelSinglePassHq = "SINGLE_PASS_HQ" // H264QualityTuningLevelMultiPassHq is a H264QualityTuningLevel enum value H264QualityTuningLevelMultiPassHq = "MULTI_PASS_HQ" ) // Use this setting to specify whether this output has a variable bitrate (VBR), // constant bitrate (CBR) or quality-defined variable bitrate (QVBR). const ( // H264RateControlModeVbr is a H264RateControlMode enum value H264RateControlModeVbr = "VBR" // H264RateControlModeCbr is a H264RateControlMode enum value H264RateControlModeCbr = "CBR" // H264RateControlModeQvbr is a H264RateControlMode enum value H264RateControlModeQvbr = "QVBR" ) // Places a PPS header on each encoded picture, even if repeated. const ( // H264RepeatPpsDisabled is a H264RepeatPps enum value H264RepeatPpsDisabled = "DISABLED" // H264RepeatPpsEnabled is a H264RepeatPps enum value H264RepeatPpsEnabled = "ENABLED" ) // Scene change detection (inserts I-frames on scene changes). const ( // H264SceneChangeDetectDisabled is a H264SceneChangeDetect enum value H264SceneChangeDetectDisabled = "DISABLED" // H264SceneChangeDetectEnabled is a H264SceneChangeDetect enum value H264SceneChangeDetectEnabled = "ENABLED" ) // Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled // as 25fps, and audio is sped up correspondingly. const ( // H264SlowPalDisabled is a H264SlowPal enum value H264SlowPalDisabled = "DISABLED" // H264SlowPalEnabled is a H264SlowPal enum value H264SlowPalEnabled = "ENABLED" ) // Adjust quantization within each frame based on spatial variation of content // complexity. const ( // H264SpatialAdaptiveQuantizationDisabled is a H264SpatialAdaptiveQuantization enum value H264SpatialAdaptiveQuantizationDisabled = "DISABLED" // H264SpatialAdaptiveQuantizationEnabled is a H264SpatialAdaptiveQuantization enum value H264SpatialAdaptiveQuantizationEnabled = "ENABLED" ) // Produces a bitstream compliant with SMPTE RP-2027. const ( // H264SyntaxDefault is a H264Syntax enum value H264SyntaxDefault = "DEFAULT" // H264SyntaxRp2027 is a H264Syntax enum value H264SyntaxRp2027 = "RP2027" ) // This field applies only if the Streams > Advanced > Framerate (framerate) // field is set to 29.970. This field works with the Streams > Advanced > Preprocessors // > Deinterlacer field (deinterlace_mode) and the Streams > Advanced > Interlaced // Mode field (interlace_mode) to identify the scan type for the output: Progressive, // Interlaced, Hard Telecine or Soft Telecine. - Hard: produces 29.97i output // from 23.976 input. - Soft: produces 23.976; the player converts this output // to 29.97i. const ( // H264TelecineNone is a H264Telecine enum value H264TelecineNone = "NONE" // H264TelecineSoft is a H264Telecine enum value H264TelecineSoft = "SOFT" // H264TelecineHard is a H264Telecine enum value H264TelecineHard = "HARD" ) // Adjust quantization within each frame based on temporal variation of content // complexity. const ( // H264TemporalAdaptiveQuantizationDisabled is a H264TemporalAdaptiveQuantization enum value H264TemporalAdaptiveQuantizationDisabled = "DISABLED" // H264TemporalAdaptiveQuantizationEnabled is a H264TemporalAdaptiveQuantization enum value H264TemporalAdaptiveQuantizationEnabled = "ENABLED" ) // Inserts timecode for each frame as 4 bytes of an unregistered SEI message. const ( // H264UnregisteredSeiTimecodeDisabled is a H264UnregisteredSeiTimecode enum value H264UnregisteredSeiTimecodeDisabled = "DISABLED" // H264UnregisteredSeiTimecodeEnabled is a H264UnregisteredSeiTimecode enum value H264UnregisteredSeiTimecodeEnabled = "ENABLED" ) // Adaptive quantization. Allows intra-frame quantizers to vary to improve visual // quality. const ( // H265AdaptiveQuantizationOff is a H265AdaptiveQuantization enum value H265AdaptiveQuantizationOff = "OFF" // H265AdaptiveQuantizationLow is a H265AdaptiveQuantization enum value H265AdaptiveQuantizationLow = "LOW" // H265AdaptiveQuantizationMedium is a H265AdaptiveQuantization enum value H265AdaptiveQuantizationMedium = "MEDIUM" // H265AdaptiveQuantizationHigh is a H265AdaptiveQuantization enum value H265AdaptiveQuantizationHigh = "HIGH" // H265AdaptiveQuantizationHigher is a H265AdaptiveQuantization enum value H265AdaptiveQuantizationHigher = "HIGHER" // H265AdaptiveQuantizationMax is a H265AdaptiveQuantization enum value H265AdaptiveQuantizationMax = "MAX" ) // Enables Alternate Transfer Function SEI message for outputs using Hybrid // Log Gamma (HLG) Electro-Optical Transfer Function (EOTF). const ( // H265AlternateTransferFunctionSeiDisabled is a H265AlternateTransferFunctionSei enum value H265AlternateTransferFunctionSeiDisabled = "DISABLED" // H265AlternateTransferFunctionSeiEnabled is a H265AlternateTransferFunctionSei enum value H265AlternateTransferFunctionSeiEnabled = "ENABLED" ) // H.265 Level. const ( // H265CodecLevelAuto is a H265CodecLevel enum value H265CodecLevelAuto = "AUTO" // H265CodecLevelLevel1 is a H265CodecLevel enum value H265CodecLevelLevel1 = "LEVEL_1" // H265CodecLevelLevel2 is a H265CodecLevel enum value H265CodecLevelLevel2 = "LEVEL_2" // H265CodecLevelLevel21 is a H265CodecLevel enum value H265CodecLevelLevel21 = "LEVEL_2_1" // H265CodecLevelLevel3 is a H265CodecLevel enum value H265CodecLevelLevel3 = "LEVEL_3" // H265CodecLevelLevel31 is a H265CodecLevel enum value H265CodecLevelLevel31 = "LEVEL_3_1" // H265CodecLevelLevel4 is a H265CodecLevel enum value H265CodecLevelLevel4 = "LEVEL_4" // H265CodecLevelLevel41 is a H265CodecLevel enum value H265CodecLevelLevel41 = "LEVEL_4_1" // H265CodecLevelLevel5 is a H265CodecLevel enum value H265CodecLevelLevel5 = "LEVEL_5" // H265CodecLevelLevel51 is a H265CodecLevel enum value H265CodecLevelLevel51 = "LEVEL_5_1" // H265CodecLevelLevel52 is a H265CodecLevel enum value H265CodecLevelLevel52 = "LEVEL_5_2" // H265CodecLevelLevel6 is a H265CodecLevel enum value H265CodecLevelLevel6 = "LEVEL_6" // H265CodecLevelLevel61 is a H265CodecLevel enum value H265CodecLevelLevel61 = "LEVEL_6_1" // H265CodecLevelLevel62 is a H265CodecLevel enum value H265CodecLevelLevel62 = "LEVEL_6_2" ) // Represents the Profile and Tier, per the HEVC (H.265) specification. Selections // are grouped as [Profile] / [Tier], so "Main/High" represents Main Profile // with High Tier. 4:2:2 profiles are only available with the HEVC 4:2:2 License. const ( // H265CodecProfileMainMain is a H265CodecProfile enum value H265CodecProfileMainMain = "MAIN_MAIN" // H265CodecProfileMainHigh is a H265CodecProfile enum value H265CodecProfileMainHigh = "MAIN_HIGH" // H265CodecProfileMain10Main is a H265CodecProfile enum value H265CodecProfileMain10Main = "MAIN10_MAIN" // H265CodecProfileMain10High is a H265CodecProfile enum value H265CodecProfileMain10High = "MAIN10_HIGH" // H265CodecProfileMain4228bitMain is a H265CodecProfile enum value H265CodecProfileMain4228bitMain = "MAIN_422_8BIT_MAIN" // H265CodecProfileMain4228bitHigh is a H265CodecProfile enum value H265CodecProfileMain4228bitHigh = "MAIN_422_8BIT_HIGH" // H265CodecProfileMain42210bitMain is a H265CodecProfile enum value H265CodecProfileMain42210bitMain = "MAIN_422_10BIT_MAIN" // H265CodecProfileMain42210bitHigh is a H265CodecProfile enum value H265CodecProfileMain42210bitHigh = "MAIN_422_10BIT_HIGH" ) // Choose Adaptive to improve subjective video quality for high-motion content. // This will cause the service to use fewer B-frames (which infer information // based on other frames) for high-motion portions of the video and more B-frames // for low-motion portions. The maximum number of B-frames is limited by the // value you provide for the setting B frames between reference frames (numberBFramesBetweenReferenceFrames). const ( // H265DynamicSubGopAdaptive is a H265DynamicSubGop enum value H265DynamicSubGopAdaptive = "ADAPTIVE" // H265DynamicSubGopStatic is a H265DynamicSubGop enum value H265DynamicSubGopStatic = "STATIC" ) // Adjust quantization within each frame to reduce flicker or 'pop' on I-frames. const ( // H265FlickerAdaptiveQuantizationDisabled is a H265FlickerAdaptiveQuantization enum value H265FlickerAdaptiveQuantizationDisabled = "DISABLED" // H265FlickerAdaptiveQuantizationEnabled is a H265FlickerAdaptiveQuantization enum value H265FlickerAdaptiveQuantizationEnabled = "ENABLED" ) // If you are using the console, use the Framerate setting to specify the frame // rate for this output. If you want to keep the same frame rate as the input // video, choose Follow source. If you want to do frame rate conversion, choose // a frame rate from the dropdown list or choose Custom. The framerates shown // in the dropdown list are decimal approximations of fractions. If you choose // Custom, specify your frame rate as a fraction. If you are creating your transcoding // job sepecification as a JSON file without the console, use FramerateControl // to specify which value the service uses for the frame rate for this output. // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate // from the input. Choose SPECIFIED if you want the service to use the frame // rate you specify in the settings FramerateNumerator and FramerateDenominator. const ( // H265FramerateControlInitializeFromSource is a H265FramerateControl enum value H265FramerateControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" // H265FramerateControlSpecified is a H265FramerateControl enum value H265FramerateControlSpecified = "SPECIFIED" ) // When set to INTERPOLATE, produces smoother motion during frame rate conversion. const ( // H265FramerateConversionAlgorithmDuplicateDrop is a H265FramerateConversionAlgorithm enum value H265FramerateConversionAlgorithmDuplicateDrop = "DUPLICATE_DROP" // H265FramerateConversionAlgorithmInterpolate is a H265FramerateConversionAlgorithm enum value H265FramerateConversionAlgorithmInterpolate = "INTERPOLATE" ) // If enable, use reference B frames for GOP structures that have B frames > // 1. const ( // H265GopBReferenceDisabled is a H265GopBReference enum value H265GopBReferenceDisabled = "DISABLED" // H265GopBReferenceEnabled is a H265GopBReference enum value H265GopBReferenceEnabled = "ENABLED" ) // Indicates if the GOP Size in H265 is specified in frames or seconds. If seconds // the system will convert the GOP Size into a frame count at run time. const ( // H265GopSizeUnitsFrames is a H265GopSizeUnits enum value H265GopSizeUnitsFrames = "FRAMES" // H265GopSizeUnitsSeconds is a H265GopSizeUnits enum value H265GopSizeUnitsSeconds = "SECONDS" ) // Use Interlace mode (InterlaceMode) to choose the scan line type for the output. // * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce // interlaced output with the entire output having the same field polarity (top // or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default // Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, // behavior depends on the input scan type. - If the source is interlaced, the // output will be interlaced with the same polarity as the source (it will follow // the source). The output could therefore be a mix of "top field first" and // "bottom field first". - If the source is progressive, the output will be // interlaced with "top field first" or "bottom field first" polarity, depending // on which of the Follow options you chose. const ( // H265InterlaceModeProgressive is a H265InterlaceMode enum value H265InterlaceModeProgressive = "PROGRESSIVE" // H265InterlaceModeTopField is a H265InterlaceMode enum value H265InterlaceModeTopField = "TOP_FIELD" // H265InterlaceModeBottomField is a H265InterlaceMode enum value H265InterlaceModeBottomField = "BOTTOM_FIELD" // H265InterlaceModeFollowTopField is a H265InterlaceMode enum value H265InterlaceModeFollowTopField = "FOLLOW_TOP_FIELD" // H265InterlaceModeFollowBottomField is a H265InterlaceMode enum value H265InterlaceModeFollowBottomField = "FOLLOW_BOTTOM_FIELD" ) // Using the API, enable ParFollowSource if you want the service to use the // pixel aspect ratio from the input. Using the console, do this by choosing // Follow source for Pixel aspect ratio. const ( // H265ParControlInitializeFromSource is a H265ParControl enum value H265ParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" // H265ParControlSpecified is a H265ParControl enum value H265ParControlSpecified = "SPECIFIED" ) // Use Quality tuning level (H265QualityTuningLevel) to specifiy whether to // use fast single-pass, high-quality singlepass, or high-quality multipass // video encoding. const ( // H265QualityTuningLevelSinglePass is a H265QualityTuningLevel enum value H265QualityTuningLevelSinglePass = "SINGLE_PASS" // H265QualityTuningLevelSinglePassHq is a H265QualityTuningLevel enum value H265QualityTuningLevelSinglePassHq = "SINGLE_PASS_HQ" // H265QualityTuningLevelMultiPassHq is a H265QualityTuningLevel enum value H265QualityTuningLevelMultiPassHq = "MULTI_PASS_HQ" ) // Use this setting to specify whether this output has a variable bitrate (VBR), // constant bitrate (CBR) or quality-defined variable bitrate (QVBR). const ( // H265RateControlModeVbr is a H265RateControlMode enum value H265RateControlModeVbr = "VBR" // H265RateControlModeCbr is a H265RateControlMode enum value H265RateControlModeCbr = "CBR" // H265RateControlModeQvbr is a H265RateControlMode enum value H265RateControlModeQvbr = "QVBR" ) // Specify Sample Adaptive Offset (SAO) filter strength. Adaptive mode dynamically // selects best strength based on content const ( // H265SampleAdaptiveOffsetFilterModeDefault is a H265SampleAdaptiveOffsetFilterMode enum value H265SampleAdaptiveOffsetFilterModeDefault = "DEFAULT" // H265SampleAdaptiveOffsetFilterModeAdaptive is a H265SampleAdaptiveOffsetFilterMode enum value H265SampleAdaptiveOffsetFilterModeAdaptive = "ADAPTIVE" // H265SampleAdaptiveOffsetFilterModeOff is a H265SampleAdaptiveOffsetFilterMode enum value H265SampleAdaptiveOffsetFilterModeOff = "OFF" ) // Scene change detection (inserts I-frames on scene changes). const ( // H265SceneChangeDetectDisabled is a H265SceneChangeDetect enum value H265SceneChangeDetectDisabled = "DISABLED" // H265SceneChangeDetectEnabled is a H265SceneChangeDetect enum value H265SceneChangeDetectEnabled = "ENABLED" ) // Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled // as 25fps, and audio is sped up correspondingly. const ( // H265SlowPalDisabled is a H265SlowPal enum value H265SlowPalDisabled = "DISABLED" // H265SlowPalEnabled is a H265SlowPal enum value H265SlowPalEnabled = "ENABLED" ) // Adjust quantization within each frame based on spatial variation of content // complexity. const ( // H265SpatialAdaptiveQuantizationDisabled is a H265SpatialAdaptiveQuantization enum value H265SpatialAdaptiveQuantizationDisabled = "DISABLED" // H265SpatialAdaptiveQuantizationEnabled is a H265SpatialAdaptiveQuantization enum value H265SpatialAdaptiveQuantizationEnabled = "ENABLED" ) // This field applies only if the Streams > Advanced > Framerate (framerate) // field is set to 29.970. This field works with the Streams > Advanced > Preprocessors // > Deinterlacer field (deinterlace_mode) and the Streams > Advanced > Interlaced // Mode field (interlace_mode) to identify the scan type for the output: Progressive, // Interlaced, Hard Telecine or Soft Telecine. - Hard: produces 29.97i output // from 23.976 input. - Soft: produces 23.976; the player converts this output // to 29.97i. const ( // H265TelecineNone is a H265Telecine enum value H265TelecineNone = "NONE" // H265TelecineSoft is a H265Telecine enum value H265TelecineSoft = "SOFT" // H265TelecineHard is a H265Telecine enum value H265TelecineHard = "HARD" ) // Adjust quantization within each frame based on temporal variation of content // complexity. const ( // H265TemporalAdaptiveQuantizationDisabled is a H265TemporalAdaptiveQuantization enum value H265TemporalAdaptiveQuantizationDisabled = "DISABLED" // H265TemporalAdaptiveQuantizationEnabled is a H265TemporalAdaptiveQuantization enum value H265TemporalAdaptiveQuantizationEnabled = "ENABLED" ) // Enables temporal layer identifiers in the encoded bitstream. Up to 3 layers // are supported depending on GOP structure: I- and P-frames form one layer, // reference B-frames can form a second layer and non-reference b-frames can // form a third layer. Decoders can optionally decode only the lower temporal // layers to generate a lower frame rate output. For example, given a bitstream // with temporal IDs and with b-frames = 1 (i.e. IbPbPb display order), a decoder // could decode all the frames for full frame rate output or only the I and // P frames (lowest temporal layer) for a half frame rate output. const ( // H265TemporalIdsDisabled is a H265TemporalIds enum value H265TemporalIdsDisabled = "DISABLED" // H265TemporalIdsEnabled is a H265TemporalIds enum value H265TemporalIdsEnabled = "ENABLED" ) // Enable use of tiles, allowing horizontal as well as vertical subdivision // of the encoded pictures. const ( // H265TilesDisabled is a H265Tiles enum value H265TilesDisabled = "DISABLED" // H265TilesEnabled is a H265Tiles enum value H265TilesEnabled = "ENABLED" ) // Inserts timecode for each frame as 4 bytes of an unregistered SEI message. const ( // H265UnregisteredSeiTimecodeDisabled is a H265UnregisteredSeiTimecode enum value H265UnregisteredSeiTimecodeDisabled = "DISABLED" // H265UnregisteredSeiTimecodeEnabled is a H265UnregisteredSeiTimecode enum value H265UnregisteredSeiTimecodeEnabled = "ENABLED" ) // Use this setting only for outputs encoded with H.265 that are in CMAF or // DASH output groups. If you include writeMp4PackagingType in your JSON job // specification for other outputs, your video might not work properly with // downstream systems and video players. If the location of parameter set NAL // units don't matter in your workflow, ignore this setting. The service defaults // to marking your output as HEV1. Choose HVC1 to mark your output as HVC1. // This makes your output compliant with this specification: ISO IECJTC1 SC29 // N13798 Text ISO/IEC FDIS 14496-15 3rd Edition. For these outputs, the service // stores parameter set NAL units in the sample headers but not in the samples // directly. Keep the default HEV1 to mark your output as HEV1. For these outputs, // the service writes parameter set NAL units directly into the samples. const ( // H265WriteMp4PackagingTypeHvc1 is a H265WriteMp4PackagingType enum value H265WriteMp4PackagingTypeHvc1 = "HVC1" // H265WriteMp4PackagingTypeHev1 is a H265WriteMp4PackagingType enum value H265WriteMp4PackagingTypeHev1 = "HEV1" ) const ( // HlsAdMarkersElemental is a HlsAdMarkers enum value HlsAdMarkersElemental = "ELEMENTAL" // HlsAdMarkersElementalScte35 is a HlsAdMarkers enum value HlsAdMarkersElementalScte35 = "ELEMENTAL_SCTE35" ) // Four types of audio-only tracks are supported: Audio-Only Variant Stream // The client can play back this audio-only stream instead of video in low-bandwidth // scenarios. Represented as an EXT-X-STREAM-INF in the HLS manifest. Alternate // Audio, Auto Select, Default Alternate rendition that the client should try // to play back by default. Represented as an EXT-X-MEDIA in the HLS manifest // with DEFAULT=YES, AUTOSELECT=YES Alternate Audio, Auto Select, Not Default // Alternate rendition that the client may try to play back by default. Represented // as an EXT-X-MEDIA in the HLS manifest with DEFAULT=NO, AUTOSELECT=YES Alternate // Audio, not Auto Select Alternate rendition that the client will not try to // play back by default. Represented as an EXT-X-MEDIA in the HLS manifest with // DEFAULT=NO, AUTOSELECT=NO const ( // HlsAudioTrackTypeAlternateAudioAutoSelectDefault is a HlsAudioTrackType enum value HlsAudioTrackTypeAlternateAudioAutoSelectDefault = "ALTERNATE_AUDIO_AUTO_SELECT_DEFAULT" // HlsAudioTrackTypeAlternateAudioAutoSelect is a HlsAudioTrackType enum value HlsAudioTrackTypeAlternateAudioAutoSelect = "ALTERNATE_AUDIO_AUTO_SELECT" // HlsAudioTrackTypeAlternateAudioNotAutoSelect is a HlsAudioTrackType enum value HlsAudioTrackTypeAlternateAudioNotAutoSelect = "ALTERNATE_AUDIO_NOT_AUTO_SELECT" // HlsAudioTrackTypeAudioOnlyVariantStream is a HlsAudioTrackType enum value HlsAudioTrackTypeAudioOnlyVariantStream = "AUDIO_ONLY_VARIANT_STREAM" ) // Applies only to 608 Embedded output captions. Insert: Include CLOSED-CAPTIONS // lines in the manifest. Specify at least one language in the CC1 Language // Code field. One CLOSED-CAPTION line is added for each Language Code you specify. // Make sure to specify the languages in the order in which they appear in the // original source (if the source is embedded format) or the order of the caption // selectors (if the source is other than embedded). Otherwise, languages in // the manifest will not match up properly with the output captions. None: Include // CLOSED-CAPTIONS=NONE line in the manifest. Omit: Omit any CLOSED-CAPTIONS // line from the manifest. const ( // HlsCaptionLanguageSettingInsert is a HlsCaptionLanguageSetting enum value HlsCaptionLanguageSettingInsert = "INSERT" // HlsCaptionLanguageSettingOmit is a HlsCaptionLanguageSetting enum value HlsCaptionLanguageSettingOmit = "OMIT" // HlsCaptionLanguageSettingNone is a HlsCaptionLanguageSetting enum value HlsCaptionLanguageSettingNone = "NONE" ) // When set to ENABLED, sets #EXT-X-ALLOW-CACHE:no tag, which prevents client // from saving media segments for later replay. const ( // HlsClientCacheDisabled is a HlsClientCache enum value HlsClientCacheDisabled = "DISABLED" // HlsClientCacheEnabled is a HlsClientCache enum value HlsClientCacheEnabled = "ENABLED" ) // Specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist // generation. const ( // HlsCodecSpecificationRfc6381 is a HlsCodecSpecification enum value HlsCodecSpecificationRfc6381 = "RFC_6381" // HlsCodecSpecificationRfc4281 is a HlsCodecSpecification enum value HlsCodecSpecificationRfc4281 = "RFC_4281" ) // Indicates whether segments should be placed in subdirectories. const ( // HlsDirectoryStructureSingleDirectory is a HlsDirectoryStructure enum value HlsDirectoryStructureSingleDirectory = "SINGLE_DIRECTORY" // HlsDirectoryStructureSubdirectoryPerStream is a HlsDirectoryStructure enum value HlsDirectoryStructureSubdirectoryPerStream = "SUBDIRECTORY_PER_STREAM" ) // Encrypts the segments with the given encryption scheme. Leave blank to disable. // Selecting 'Disabled' in the web interface also disables encryption. const ( // HlsEncryptionTypeAes128 is a HlsEncryptionType enum value HlsEncryptionTypeAes128 = "AES128" // HlsEncryptionTypeSampleAes is a HlsEncryptionType enum value HlsEncryptionTypeSampleAes = "SAMPLE_AES" ) // When set to INCLUDE, writes I-Frame Only Manifest in addition to the HLS // manifest const ( // HlsIFrameOnlyManifestInclude is a HlsIFrameOnlyManifest enum value HlsIFrameOnlyManifestInclude = "INCLUDE" // HlsIFrameOnlyManifestExclude is a HlsIFrameOnlyManifest enum value HlsIFrameOnlyManifestExclude = "EXCLUDE" ) // The Initialization Vector is a 128-bit number used in conjunction with the // key for encrypting blocks. If set to INCLUDE, Initialization Vector is listed // in the manifest. Otherwise Initialization Vector is not in the manifest. const ( // HlsInitializationVectorInManifestInclude is a HlsInitializationVectorInManifest enum value HlsInitializationVectorInManifestInclude = "INCLUDE" // HlsInitializationVectorInManifestExclude is a HlsInitializationVectorInManifest enum value HlsInitializationVectorInManifestExclude = "EXCLUDE" ) // Indicates which type of key provider is used for encryption. const ( // HlsKeyProviderTypeSpeke is a HlsKeyProviderType enum value HlsKeyProviderTypeSpeke = "SPEKE" // HlsKeyProviderTypeStaticKey is a HlsKeyProviderType enum value HlsKeyProviderTypeStaticKey = "STATIC_KEY" ) // When set to GZIP, compresses HLS playlist. const ( // HlsManifestCompressionGzip is a HlsManifestCompression enum value HlsManifestCompressionGzip = "GZIP" // HlsManifestCompressionNone is a HlsManifestCompression enum value HlsManifestCompressionNone = "NONE" ) // Indicates whether the output manifest should use floating point values for // segment duration. const ( // HlsManifestDurationFormatFloatingPoint is a HlsManifestDurationFormat enum value HlsManifestDurationFormatFloatingPoint = "FLOATING_POINT" // HlsManifestDurationFormatInteger is a HlsManifestDurationFormat enum value HlsManifestDurationFormatInteger = "INTEGER" ) // Enable this setting to insert the EXT-X-SESSION-KEY element into the master // playlist. This allows for offline Apple HLS FairPlay content protection. const ( // HlsOfflineEncryptedEnabled is a HlsOfflineEncrypted enum value HlsOfflineEncryptedEnabled = "ENABLED" // HlsOfflineEncryptedDisabled is a HlsOfflineEncrypted enum value HlsOfflineEncryptedDisabled = "DISABLED" ) // Indicates whether the .m3u8 manifest file should be generated for this HLS // output group. const ( // HlsOutputSelectionManifestsAndSegments is a HlsOutputSelection enum value HlsOutputSelectionManifestsAndSegments = "MANIFESTS_AND_SEGMENTS" // HlsOutputSelectionSegmentsOnly is a HlsOutputSelection enum value HlsOutputSelectionSegmentsOnly = "SEGMENTS_ONLY" ) // Includes or excludes EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files. // The value is calculated as follows: either the program date and time are // initialized using the input timecode source, or the time is initialized using // the input timecode source and the date is initialized using the timestamp_offset. const ( // HlsProgramDateTimeInclude is a HlsProgramDateTime enum value HlsProgramDateTimeInclude = "INCLUDE" // HlsProgramDateTimeExclude is a HlsProgramDateTime enum value HlsProgramDateTimeExclude = "EXCLUDE" ) // When set to SINGLE_FILE, emits program as a single media resource (.ts) file, // uses #EXT-X-BYTERANGE tags to index segment for playback. const ( // HlsSegmentControlSingleFile is a HlsSegmentControl enum value HlsSegmentControlSingleFile = "SINGLE_FILE" // HlsSegmentControlSegmentedFiles is a HlsSegmentControl enum value HlsSegmentControlSegmentedFiles = "SEGMENTED_FILES" ) // Include or exclude RESOLUTION attribute for video in EXT-X-STREAM-INF tag // of variant manifest. const ( // HlsStreamInfResolutionInclude is a HlsStreamInfResolution enum value HlsStreamInfResolutionInclude = "INCLUDE" // HlsStreamInfResolutionExclude is a HlsStreamInfResolution enum value HlsStreamInfResolutionExclude = "EXCLUDE" ) // Indicates ID3 frame that has the timecode. const ( // HlsTimedMetadataId3FrameNone is a HlsTimedMetadataId3Frame enum value HlsTimedMetadataId3FrameNone = "NONE" // HlsTimedMetadataId3FramePriv is a HlsTimedMetadataId3Frame enum value HlsTimedMetadataId3FramePriv = "PRIV" // HlsTimedMetadataId3FrameTdrl is a HlsTimedMetadataId3Frame enum value HlsTimedMetadataId3FrameTdrl = "TDRL" ) // Enable Deblock (InputDeblockFilter) to produce smoother motion in the output. // Default is disabled. Only manaully controllable for MPEG2 and uncompressed // video inputs. const ( // InputDeblockFilterEnabled is a InputDeblockFilter enum value InputDeblockFilterEnabled = "ENABLED" // InputDeblockFilterDisabled is a InputDeblockFilter enum value InputDeblockFilterDisabled = "DISABLED" ) // Enable Denoise (InputDenoiseFilter) to filter noise from the input. Default // is disabled. Only applicable to MPEG2, H.264, H.265, and uncompressed video // inputs. const ( // InputDenoiseFilterEnabled is a InputDenoiseFilter enum value InputDenoiseFilterEnabled = "ENABLED" // InputDenoiseFilterDisabled is a InputDenoiseFilter enum value InputDenoiseFilterDisabled = "DISABLED" ) // Use Filter enable (InputFilterEnable) to specify how the transcoding service // applies the denoise and deblock filters. You must also enable the filters // separately, with Denoise (InputDenoiseFilter) and Deblock (InputDeblockFilter). // * Auto - The transcoding service determines whether to apply filtering, depending // on input type and quality. * Disable - The input is not filtered. This is // true even if you use the API to enable them in (InputDeblockFilter) and (InputDeblockFilter). // * Force - The in put is filtered regardless of input type. const ( // InputFilterEnableAuto is a InputFilterEnable enum value InputFilterEnableAuto = "AUTO" // InputFilterEnableDisable is a InputFilterEnable enum value InputFilterEnableDisable = "DISABLE" // InputFilterEnableForce is a InputFilterEnable enum value InputFilterEnableForce = "FORCE" ) // Set PSI control (InputPsiControl) for transport stream inputs to specify // which data the demux process to scans. * Ignore PSI - Scan all PIDs for audio // and video. * Use PSI - Scan only PSI data. const ( // InputPsiControlIgnorePsi is a InputPsiControl enum value InputPsiControlIgnorePsi = "IGNORE_PSI" // InputPsiControlUsePsi is a InputPsiControl enum value InputPsiControlUsePsi = "USE_PSI" ) // Use Rotate (InputRotate) to specify how the service rotates your video. You // can choose automatic rotation or specify a rotation. You can specify a clockwise // rotation of 0, 90, 180, or 270 degrees. If your input video container is // .mov or .mp4 and your input has rotation metadata, you can choose Automatic // to have the service rotate your video according to the rotation specified // in the metadata. The rotation must be within one degree of 90, 180, or 270 // degrees. If the rotation metadata specifies any other rotation, the service // will default to no rotation. By default, the service does no rotation, even // if your input video has rotation metadata. The service doesn't pass through // rotation metadata. const ( // InputRotateDegree0 is a InputRotate enum value InputRotateDegree0 = "DEGREE_0" // InputRotateDegrees90 is a InputRotate enum value InputRotateDegrees90 = "DEGREES_90" // InputRotateDegrees180 is a InputRotate enum value InputRotateDegrees180 = "DEGREES_180" // InputRotateDegrees270 is a InputRotate enum value InputRotateDegrees270 = "DEGREES_270" // InputRotateAuto is a InputRotate enum value InputRotateAuto = "AUTO" ) // Timecode source under input settings (InputTimecodeSource) only affects the // behavior of features that apply to a single input at a time, such as input // clipping and synchronizing some captions formats. Use this setting to specify // whether the service counts frames by timecodes embedded in the video (EMBEDDED) // or by starting the first frame at zero (ZEROBASED). In both cases, the timecode // format is HH:MM:SS:FF or HH:MM:SS;FF, where FF is the frame number. Only // set this to EMBEDDED if your source video has embedded timecodes. const ( // InputTimecodeSourceEmbedded is a InputTimecodeSource enum value InputTimecodeSourceEmbedded = "EMBEDDED" // InputTimecodeSourceZerobased is a InputTimecodeSource enum value InputTimecodeSourceZerobased = "ZEROBASED" // InputTimecodeSourceSpecifiedstart is a InputTimecodeSource enum value InputTimecodeSourceSpecifiedstart = "SPECIFIEDSTART" ) // A job's status can be SUBMITTED, PROGRESSING, COMPLETE, CANCELED, or ERROR. const ( // JobStatusSubmitted is a JobStatus enum value JobStatusSubmitted = "SUBMITTED" // JobStatusProgressing is a JobStatus enum value JobStatusProgressing = "PROGRESSING" // JobStatusComplete is a JobStatus enum value JobStatusComplete = "COMPLETE" // JobStatusCanceled is a JobStatus enum value JobStatusCanceled = "CANCELED" // JobStatusError is a JobStatus enum value JobStatusError = "ERROR" ) // Optional. When you request a list of job templates, you can choose to list // them alphabetically by NAME or chronologically by CREATION_DATE. If you don't // specify, the service will list them by name. const ( // JobTemplateListByName is a JobTemplateListBy enum value JobTemplateListByName = "NAME" // JobTemplateListByCreationDate is a JobTemplateListBy enum value JobTemplateListByCreationDate = "CREATION_DATE" // JobTemplateListBySystem is a JobTemplateListBy enum value JobTemplateListBySystem = "SYSTEM" ) // Specify the language, using the ISO 639-2 three-letter code listed at https://www.loc.gov/standards/iso639-2/php/code_list.php. const ( // LanguageCodeEng is a LanguageCode enum value LanguageCodeEng = "ENG" // LanguageCodeSpa is a LanguageCode enum value LanguageCodeSpa = "SPA" // LanguageCodeFra is a LanguageCode enum value LanguageCodeFra = "FRA" // LanguageCodeDeu is a LanguageCode enum value LanguageCodeDeu = "DEU" // LanguageCodeGer is a LanguageCode enum value LanguageCodeGer = "GER" // LanguageCodeZho is a LanguageCode enum value LanguageCodeZho = "ZHO" // LanguageCodeAra is a LanguageCode enum value LanguageCodeAra = "ARA" // LanguageCodeHin is a LanguageCode enum value LanguageCodeHin = "HIN" // LanguageCodeJpn is a LanguageCode enum value LanguageCodeJpn = "JPN" // LanguageCodeRus is a LanguageCode enum value LanguageCodeRus = "RUS" // LanguageCodePor is a LanguageCode enum value LanguageCodePor = "POR" // LanguageCodeIta is a LanguageCode enum value LanguageCodeIta = "ITA" // LanguageCodeUrd is a LanguageCode enum value LanguageCodeUrd = "URD" // LanguageCodeVie is a LanguageCode enum value LanguageCodeVie = "VIE" // LanguageCodeKor is a LanguageCode enum value LanguageCodeKor = "KOR" // LanguageCodePan is a LanguageCode enum value LanguageCodePan = "PAN" // LanguageCodeAbk is a LanguageCode enum value LanguageCodeAbk = "ABK" // LanguageCodeAar is a LanguageCode enum value LanguageCodeAar = "AAR" // LanguageCodeAfr is a LanguageCode enum value LanguageCodeAfr = "AFR" // LanguageCodeAka is a LanguageCode enum value LanguageCodeAka = "AKA" // LanguageCodeSqi is a LanguageCode enum value LanguageCodeSqi = "SQI" // LanguageCodeAmh is a LanguageCode enum value LanguageCodeAmh = "AMH" // LanguageCodeArg is a LanguageCode enum value LanguageCodeArg = "ARG" // LanguageCodeHye is a LanguageCode enum value LanguageCodeHye = "HYE" // LanguageCodeAsm is a LanguageCode enum value LanguageCodeAsm = "ASM" // LanguageCodeAva is a LanguageCode enum value LanguageCodeAva = "AVA" // LanguageCodeAve is a LanguageCode enum value LanguageCodeAve = "AVE" // LanguageCodeAym is a LanguageCode enum value LanguageCodeAym = "AYM" // LanguageCodeAze is a LanguageCode enum value LanguageCodeAze = "AZE" // LanguageCodeBam is a LanguageCode enum value LanguageCodeBam = "BAM" // LanguageCodeBak is a LanguageCode enum value LanguageCodeBak = "BAK" // LanguageCodeEus is a LanguageCode enum value LanguageCodeEus = "EUS" // LanguageCodeBel is a LanguageCode enum value LanguageCodeBel = "BEL" // LanguageCodeBen is a LanguageCode enum value LanguageCodeBen = "BEN" // LanguageCodeBih is a LanguageCode enum value LanguageCodeBih = "BIH" // LanguageCodeBis is a LanguageCode enum value LanguageCodeBis = "BIS" // LanguageCodeBos is a LanguageCode enum value LanguageCodeBos = "BOS" // LanguageCodeBre is a LanguageCode enum value LanguageCodeBre = "BRE" // LanguageCodeBul is a LanguageCode enum value LanguageCodeBul = "BUL" // LanguageCodeMya is a LanguageCode enum value LanguageCodeMya = "MYA" // LanguageCodeCat is a LanguageCode enum value LanguageCodeCat = "CAT" // LanguageCodeKhm is a LanguageCode enum value LanguageCodeKhm = "KHM" // LanguageCodeCha is a LanguageCode enum value LanguageCodeCha = "CHA" // LanguageCodeChe is a LanguageCode enum value LanguageCodeChe = "CHE" // LanguageCodeNya is a LanguageCode enum value LanguageCodeNya = "NYA" // LanguageCodeChu is a LanguageCode enum value LanguageCodeChu = "CHU" // LanguageCodeChv is a LanguageCode enum value LanguageCodeChv = "CHV" // LanguageCodeCor is a LanguageCode enum value LanguageCodeCor = "COR" // LanguageCodeCos is a LanguageCode enum value LanguageCodeCos = "COS" // LanguageCodeCre is a LanguageCode enum value LanguageCodeCre = "CRE" // LanguageCodeHrv is a LanguageCode enum value LanguageCodeHrv = "HRV" // LanguageCodeCes is a LanguageCode enum value LanguageCodeCes = "CES" // LanguageCodeDan is a LanguageCode enum value LanguageCodeDan = "DAN" // LanguageCodeDiv is a LanguageCode enum value LanguageCodeDiv = "DIV" // LanguageCodeNld is a LanguageCode enum value LanguageCodeNld = "NLD" // LanguageCodeDzo is a LanguageCode enum value LanguageCodeDzo = "DZO" // LanguageCodeEnm is a LanguageCode enum value LanguageCodeEnm = "ENM" // LanguageCodeEpo is a LanguageCode enum value LanguageCodeEpo = "EPO" // LanguageCodeEst is a LanguageCode enum value LanguageCodeEst = "EST" // LanguageCodeEwe is a LanguageCode enum value LanguageCodeEwe = "EWE" // LanguageCodeFao is a LanguageCode enum value LanguageCodeFao = "FAO" // LanguageCodeFij is a LanguageCode enum value LanguageCodeFij = "FIJ" // LanguageCodeFin is a LanguageCode enum value LanguageCodeFin = "FIN" // LanguageCodeFrm is a LanguageCode enum value LanguageCodeFrm = "FRM" // LanguageCodeFul is a LanguageCode enum value LanguageCodeFul = "FUL" // LanguageCodeGla is a LanguageCode enum value LanguageCodeGla = "GLA" // LanguageCodeGlg is a LanguageCode enum value LanguageCodeGlg = "GLG" // LanguageCodeLug is a LanguageCode enum value LanguageCodeLug = "LUG" // LanguageCodeKat is a LanguageCode enum value LanguageCodeKat = "KAT" // LanguageCodeEll is a LanguageCode enum value LanguageCodeEll = "ELL" // LanguageCodeGrn is a LanguageCode enum value LanguageCodeGrn = "GRN" // LanguageCodeGuj is a LanguageCode enum value LanguageCodeGuj = "GUJ" // LanguageCodeHat is a LanguageCode enum value LanguageCodeHat = "HAT" // LanguageCodeHau is a LanguageCode enum value LanguageCodeHau = "HAU" // LanguageCodeHeb is a LanguageCode enum value LanguageCodeHeb = "HEB" // LanguageCodeHer is a LanguageCode enum value LanguageCodeHer = "HER" // LanguageCodeHmo is a LanguageCode enum value LanguageCodeHmo = "HMO" // LanguageCodeHun is a LanguageCode enum value LanguageCodeHun = "HUN" // LanguageCodeIsl is a LanguageCode enum value LanguageCodeIsl = "ISL" // LanguageCodeIdo is a LanguageCode enum value LanguageCodeIdo = "IDO" // LanguageCodeIbo is a LanguageCode enum value LanguageCodeIbo = "IBO" // LanguageCodeInd is a LanguageCode enum value LanguageCodeInd = "IND" // LanguageCodeIna is a LanguageCode enum value LanguageCodeIna = "INA" // LanguageCodeIle is a LanguageCode enum value LanguageCodeIle = "ILE" // LanguageCodeIku is a LanguageCode enum value LanguageCodeIku = "IKU" // LanguageCodeIpk is a LanguageCode enum value LanguageCodeIpk = "IPK" // LanguageCodeGle is a LanguageCode enum value LanguageCodeGle = "GLE" // LanguageCodeJav is a LanguageCode enum value LanguageCodeJav = "JAV" // LanguageCodeKal is a LanguageCode enum value LanguageCodeKal = "KAL" // LanguageCodeKan is a LanguageCode enum value LanguageCodeKan = "KAN" // LanguageCodeKau is a LanguageCode enum value LanguageCodeKau = "KAU" // LanguageCodeKas is a LanguageCode enum value LanguageCodeKas = "KAS" // LanguageCodeKaz is a LanguageCode enum value LanguageCodeKaz = "KAZ" // LanguageCodeKik is a LanguageCode enum value LanguageCodeKik = "KIK" // LanguageCodeKin is a LanguageCode enum value LanguageCodeKin = "KIN" // LanguageCodeKir is a LanguageCode enum value LanguageCodeKir = "KIR" // LanguageCodeKom is a LanguageCode enum value LanguageCodeKom = "KOM" // LanguageCodeKon is a LanguageCode enum value LanguageCodeKon = "KON" // LanguageCodeKua is a LanguageCode enum value LanguageCodeKua = "KUA" // LanguageCodeKur is a LanguageCode enum value LanguageCodeKur = "KUR" // LanguageCodeLao is a LanguageCode enum value LanguageCodeLao = "LAO" // LanguageCodeLat is a LanguageCode enum value LanguageCodeLat = "LAT" // LanguageCodeLav is a LanguageCode enum value LanguageCodeLav = "LAV" // LanguageCodeLim is a LanguageCode enum value LanguageCodeLim = "LIM" // LanguageCodeLin is a LanguageCode enum value LanguageCodeLin = "LIN" // LanguageCodeLit is a LanguageCode enum value LanguageCodeLit = "LIT" // LanguageCodeLub is a LanguageCode enum value LanguageCodeLub = "LUB" // LanguageCodeLtz is a LanguageCode enum value LanguageCodeLtz = "LTZ" // LanguageCodeMkd is a LanguageCode enum value LanguageCodeMkd = "MKD" // LanguageCodeMlg is a LanguageCode enum value LanguageCodeMlg = "MLG" // LanguageCodeMsa is a LanguageCode enum value LanguageCodeMsa = "MSA" // LanguageCodeMal is a LanguageCode enum value LanguageCodeMal = "MAL" // LanguageCodeMlt is a LanguageCode enum value LanguageCodeMlt = "MLT" // LanguageCodeGlv is a LanguageCode enum value LanguageCodeGlv = "GLV" // LanguageCodeMri is a LanguageCode enum value LanguageCodeMri = "MRI" // LanguageCodeMar is a LanguageCode enum value LanguageCodeMar = "MAR" // LanguageCodeMah is a LanguageCode enum value LanguageCodeMah = "MAH" // LanguageCodeMon is a LanguageCode enum value LanguageCodeMon = "MON" // LanguageCodeNau is a LanguageCode enum value LanguageCodeNau = "NAU" // LanguageCodeNav is a LanguageCode enum value LanguageCodeNav = "NAV" // LanguageCodeNde is a LanguageCode enum value LanguageCodeNde = "NDE" // LanguageCodeNbl is a LanguageCode enum value LanguageCodeNbl = "NBL" // LanguageCodeNdo is a LanguageCode enum value LanguageCodeNdo = "NDO" // LanguageCodeNep is a LanguageCode enum value LanguageCodeNep = "NEP" // LanguageCodeSme is a LanguageCode enum value LanguageCodeSme = "SME" // LanguageCodeNor is a LanguageCode enum value LanguageCodeNor = "NOR" // LanguageCodeNob is a LanguageCode enum value LanguageCodeNob = "NOB" // LanguageCodeNno is a LanguageCode enum value LanguageCodeNno = "NNO" // LanguageCodeOci is a LanguageCode enum value LanguageCodeOci = "OCI" // LanguageCodeOji is a LanguageCode enum value LanguageCodeOji = "OJI" // LanguageCodeOri is a LanguageCode enum value LanguageCodeOri = "ORI" // LanguageCodeOrm is a LanguageCode enum value LanguageCodeOrm = "ORM" // LanguageCodeOss is a LanguageCode enum value LanguageCodeOss = "OSS" // LanguageCodePli is a LanguageCode enum value LanguageCodePli = "PLI" // LanguageCodeFas is a LanguageCode enum value LanguageCodeFas = "FAS" // LanguageCodePol is a LanguageCode enum value LanguageCodePol = "POL" // LanguageCodePus is a LanguageCode enum value LanguageCodePus = "PUS" // LanguageCodeQue is a LanguageCode enum value LanguageCodeQue = "QUE" // LanguageCodeQaa is a LanguageCode enum value LanguageCodeQaa = "QAA" // LanguageCodeRon is a LanguageCode enum value LanguageCodeRon = "RON" // LanguageCodeRoh is a LanguageCode enum value LanguageCodeRoh = "ROH" // LanguageCodeRun is a LanguageCode enum value LanguageCodeRun = "RUN" // LanguageCodeSmo is a LanguageCode enum value LanguageCodeSmo = "SMO" // LanguageCodeSag is a LanguageCode enum value LanguageCodeSag = "SAG" // LanguageCodeSan is a LanguageCode enum value LanguageCodeSan = "SAN" // LanguageCodeSrd is a LanguageCode enum value LanguageCodeSrd = "SRD" // LanguageCodeSrb is a LanguageCode enum value LanguageCodeSrb = "SRB" // LanguageCodeSna is a LanguageCode enum value LanguageCodeSna = "SNA" // LanguageCodeIii is a LanguageCode enum value LanguageCodeIii = "III" // LanguageCodeSnd is a LanguageCode enum value LanguageCodeSnd = "SND" // LanguageCodeSin is a LanguageCode enum value LanguageCodeSin = "SIN" // LanguageCodeSlk is a LanguageCode enum value LanguageCodeSlk = "SLK" // LanguageCodeSlv is a LanguageCode enum value LanguageCodeSlv = "SLV" // LanguageCodeSom is a LanguageCode enum value LanguageCodeSom = "SOM" // LanguageCodeSot is a LanguageCode enum value LanguageCodeSot = "SOT" // LanguageCodeSun is a LanguageCode enum value LanguageCodeSun = "SUN" // LanguageCodeSwa is a LanguageCode enum value LanguageCodeSwa = "SWA" // LanguageCodeSsw is a LanguageCode enum value LanguageCodeSsw = "SSW" // LanguageCodeSwe is a LanguageCode enum value LanguageCodeSwe = "SWE" // LanguageCodeTgl is a LanguageCode enum value LanguageCodeTgl = "TGL" // LanguageCodeTah is a LanguageCode enum value LanguageCodeTah = "TAH" // LanguageCodeTgk is a LanguageCode enum value LanguageCodeTgk = "TGK" // LanguageCodeTam is a LanguageCode enum value LanguageCodeTam = "TAM" // LanguageCodeTat is a LanguageCode enum value LanguageCodeTat = "TAT" // LanguageCodeTel is a LanguageCode enum value LanguageCodeTel = "TEL" // LanguageCodeTha is a LanguageCode enum value LanguageCodeTha = "THA" // LanguageCodeBod is a LanguageCode enum value LanguageCodeBod = "BOD" // LanguageCodeTir is a LanguageCode enum value LanguageCodeTir = "TIR" // LanguageCodeTon is a LanguageCode enum value LanguageCodeTon = "TON" // LanguageCodeTso is a LanguageCode enum value LanguageCodeTso = "TSO" // LanguageCodeTsn is a LanguageCode enum value LanguageCodeTsn = "TSN" // LanguageCodeTur is a LanguageCode enum value LanguageCodeTur = "TUR" // LanguageCodeTuk is a LanguageCode enum value LanguageCodeTuk = "TUK" // LanguageCodeTwi is a LanguageCode enum value LanguageCodeTwi = "TWI" // LanguageCodeUig is a LanguageCode enum value LanguageCodeUig = "UIG" // LanguageCodeUkr is a LanguageCode enum value LanguageCodeUkr = "UKR" // LanguageCodeUzb is a LanguageCode enum value LanguageCodeUzb = "UZB" // LanguageCodeVen is a LanguageCode enum value LanguageCodeVen = "VEN" // LanguageCodeVol is a LanguageCode enum value LanguageCodeVol = "VOL" // LanguageCodeWln is a LanguageCode enum value LanguageCodeWln = "WLN" // LanguageCodeCym is a LanguageCode enum value LanguageCodeCym = "CYM" // LanguageCodeFry is a LanguageCode enum value LanguageCodeFry = "FRY" // LanguageCodeWol is a LanguageCode enum value LanguageCodeWol = "WOL" // LanguageCodeXho is a LanguageCode enum value LanguageCodeXho = "XHO" // LanguageCodeYid is a LanguageCode enum value LanguageCodeYid = "YID" // LanguageCodeYor is a LanguageCode enum value LanguageCodeYor = "YOR" // LanguageCodeZha is a LanguageCode enum value LanguageCodeZha = "ZHA" // LanguageCodeZul is a LanguageCode enum value LanguageCodeZul = "ZUL" // LanguageCodeOrj is a LanguageCode enum value LanguageCodeOrj = "ORJ" // LanguageCodeQpc is a LanguageCode enum value LanguageCodeQpc = "QPC" // LanguageCodeTng is a LanguageCode enum value LanguageCodeTng = "TNG" ) // Selects between the DVB and ATSC buffer models for Dolby Digital audio. const ( // M2tsAudioBufferModelDvb is a M2tsAudioBufferModel enum value M2tsAudioBufferModelDvb = "DVB" // M2tsAudioBufferModelAtsc is a M2tsAudioBufferModel enum value M2tsAudioBufferModelAtsc = "ATSC" ) // Controls what buffer model to use for accurate interleaving. If set to MULTIPLEX, // use multiplex buffer model. If set to NONE, this can lead to lower latency, // but low-memory devices may not be able to play back the stream without interruptions. const ( // M2tsBufferModelMultiplex is a M2tsBufferModel enum value M2tsBufferModelMultiplex = "MULTIPLEX" // M2tsBufferModelNone is a M2tsBufferModel enum value M2tsBufferModelNone = "NONE" ) // When set to VIDEO_AND_FIXED_INTERVALS, audio EBP markers will be added to // partitions 3 and 4. The interval between these additional markers will be // fixed, and will be slightly shorter than the video EBP marker interval. When // set to VIDEO_INTERVAL, these additional markers will not be inserted. Only // applicable when EBP segmentation markers are is selected (segmentationMarkers // is EBP or EBP_LEGACY). const ( // M2tsEbpAudioIntervalVideoAndFixedIntervals is a M2tsEbpAudioInterval enum value M2tsEbpAudioIntervalVideoAndFixedIntervals = "VIDEO_AND_FIXED_INTERVALS" // M2tsEbpAudioIntervalVideoInterval is a M2tsEbpAudioInterval enum value M2tsEbpAudioIntervalVideoInterval = "VIDEO_INTERVAL" ) // Selects which PIDs to place EBP markers on. They can either be placed only // on the video PID, or on both the video PID and all audio PIDs. Only applicable // when EBP segmentation markers are is selected (segmentationMarkers is EBP // or EBP_LEGACY). const ( // M2tsEbpPlacementVideoAndAudioPids is a M2tsEbpPlacement enum value M2tsEbpPlacementVideoAndAudioPids = "VIDEO_AND_AUDIO_PIDS" // M2tsEbpPlacementVideoPid is a M2tsEbpPlacement enum value M2tsEbpPlacementVideoPid = "VIDEO_PID" ) // Controls whether to include the ES Rate field in the PES header. const ( // M2tsEsRateInPesInclude is a M2tsEsRateInPes enum value M2tsEsRateInPesInclude = "INCLUDE" // M2tsEsRateInPesExclude is a M2tsEsRateInPes enum value M2tsEsRateInPesExclude = "EXCLUDE" ) // Keep the default value (DEFAULT) unless you know that your audio EBP markers // are incorrectly appearing before your video EBP markers. To correct this // problem, set this value to Force (FORCE). const ( // M2tsForceTsVideoEbpOrderForce is a M2tsForceTsVideoEbpOrder enum value M2tsForceTsVideoEbpOrderForce = "FORCE" // M2tsForceTsVideoEbpOrderDefault is a M2tsForceTsVideoEbpOrder enum value M2tsForceTsVideoEbpOrderDefault = "DEFAULT" ) // If INSERT, Nielsen inaudible tones for media tracking will be detected in // the input audio and an equivalent ID3 tag will be inserted in the output. const ( // M2tsNielsenId3Insert is a M2tsNielsenId3 enum value M2tsNielsenId3Insert = "INSERT" // M2tsNielsenId3None is a M2tsNielsenId3 enum value M2tsNielsenId3None = "NONE" ) // When set to PCR_EVERY_PES_PACKET, a Program Clock Reference value is inserted // for every Packetized Elementary Stream (PES) header. This is effective only // when the PCR PID is the same as the video or audio elementary stream. const ( // M2tsPcrControlPcrEveryPesPacket is a M2tsPcrControl enum value M2tsPcrControlPcrEveryPesPacket = "PCR_EVERY_PES_PACKET" // M2tsPcrControlConfiguredPcrPeriod is a M2tsPcrControl enum value M2tsPcrControlConfiguredPcrPeriod = "CONFIGURED_PCR_PERIOD" ) // When set to CBR, inserts null packets into transport stream to fill specified // bitrate. When set to VBR, the bitrate setting acts as the maximum bitrate, // but the output will not be padded up to that bitrate. const ( // M2tsRateModeVbr is a M2tsRateMode enum value M2tsRateModeVbr = "VBR" // M2tsRateModeCbr is a M2tsRateMode enum value M2tsRateModeCbr = "CBR" ) // Enables SCTE-35 passthrough (scte35Source) to pass any SCTE-35 signals from // input to output. const ( // M2tsScte35SourcePassthrough is a M2tsScte35Source enum value M2tsScte35SourcePassthrough = "PASSTHROUGH" // M2tsScte35SourceNone is a M2tsScte35Source enum value M2tsScte35SourceNone = "NONE" ) // Inserts segmentation markers at each segmentation_time period. rai_segstart // sets the Random Access Indicator bit in the adaptation field. rai_adapt sets // the RAI bit and adds the current timecode in the private data bytes. psi_segstart // inserts PAT and PMT tables at the start of segments. ebp adds Encoder Boundary // Point information to the adaptation field as per OpenCable specification // OC-SP-EBP-I01-130118. ebp_legacy adds Encoder Boundary Point information // to the adaptation field using a legacy proprietary format. const ( // M2tsSegmentationMarkersNone is a M2tsSegmentationMarkers enum value M2tsSegmentationMarkersNone = "NONE" // M2tsSegmentationMarkersRaiSegstart is a M2tsSegmentationMarkers enum value M2tsSegmentationMarkersRaiSegstart = "RAI_SEGSTART" // M2tsSegmentationMarkersRaiAdapt is a M2tsSegmentationMarkers enum value M2tsSegmentationMarkersRaiAdapt = "RAI_ADAPT" // M2tsSegmentationMarkersPsiSegstart is a M2tsSegmentationMarkers enum value M2tsSegmentationMarkersPsiSegstart = "PSI_SEGSTART" // M2tsSegmentationMarkersEbp is a M2tsSegmentationMarkers enum value M2tsSegmentationMarkersEbp = "EBP" // M2tsSegmentationMarkersEbpLegacy is a M2tsSegmentationMarkers enum value M2tsSegmentationMarkersEbpLegacy = "EBP_LEGACY" ) // The segmentation style parameter controls how segmentation markers are inserted // into the transport stream. With avails, it is possible that segments may // be truncated, which can influence where future segmentation markers are inserted. // When a segmentation style of "reset_cadence" is selected and a segment is // truncated due to an avail, we will reset the segmentation cadence. This means // the subsequent segment will have a duration of of $segmentation_time seconds. // When a segmentation style of "maintain_cadence" is selected and a segment // is truncated due to an avail, we will not reset the segmentation cadence. // This means the subsequent segment will likely be truncated as well. However, // all segments after that will have a duration of $segmentation_time seconds. // Note that EBP lookahead is a slight exception to this rule. const ( // M2tsSegmentationStyleMaintainCadence is a M2tsSegmentationStyle enum value M2tsSegmentationStyleMaintainCadence = "MAINTAIN_CADENCE" // M2tsSegmentationStyleResetCadence is a M2tsSegmentationStyle enum value M2tsSegmentationStyleResetCadence = "RESET_CADENCE" ) // If INSERT, Nielsen inaudible tones for media tracking will be detected in // the input audio and an equivalent ID3 tag will be inserted in the output. const ( // M3u8NielsenId3Insert is a M3u8NielsenId3 enum value M3u8NielsenId3Insert = "INSERT" // M3u8NielsenId3None is a M3u8NielsenId3 enum value M3u8NielsenId3None = "NONE" ) // When set to PCR_EVERY_PES_PACKET a Program Clock Reference value is inserted // for every Packetized Elementary Stream (PES) header. This parameter is effective // only when the PCR PID is the same as the video or audio elementary stream. const ( // M3u8PcrControlPcrEveryPesPacket is a M3u8PcrControl enum value M3u8PcrControlPcrEveryPesPacket = "PCR_EVERY_PES_PACKET" // M3u8PcrControlConfiguredPcrPeriod is a M3u8PcrControl enum value M3u8PcrControlConfiguredPcrPeriod = "CONFIGURED_PCR_PERIOD" ) // Enables SCTE-35 passthrough (scte35Source) to pass any SCTE-35 signals from // input to output. const ( // M3u8Scte35SourcePassthrough is a M3u8Scte35Source enum value M3u8Scte35SourcePassthrough = "PASSTHROUGH" // M3u8Scte35SourceNone is a M3u8Scte35Source enum value M3u8Scte35SourceNone = "NONE" ) // Choose the type of motion graphic asset that you are providing for your overlay. // You can choose either a .mov file or a series of .png files. const ( // MotionImageInsertionModeMov is a MotionImageInsertionMode enum value MotionImageInsertionModeMov = "MOV" // MotionImageInsertionModePng is a MotionImageInsertionMode enum value MotionImageInsertionModePng = "PNG" ) // Specify whether your motion graphic overlay repeats on a loop or plays only // once. const ( // MotionImagePlaybackOnce is a MotionImagePlayback enum value MotionImagePlaybackOnce = "ONCE" // MotionImagePlaybackRepeat is a MotionImagePlayback enum value MotionImagePlaybackRepeat = "REPEAT" ) // When enabled, include 'clap' atom if appropriate for the video output settings. const ( // MovClapAtomInclude is a MovClapAtom enum value MovClapAtomInclude = "INCLUDE" // MovClapAtomExclude is a MovClapAtom enum value MovClapAtomExclude = "EXCLUDE" ) // When enabled, file composition times will start at zero, composition times // in the 'ctts' (composition time to sample) box for B-frames will be negative, // and a 'cslg' (composition shift least greatest) box will be included per // 14496-1 amendment 1. This improves compatibility with Apple players and tools. const ( // MovCslgAtomInclude is a MovCslgAtom enum value MovCslgAtomInclude = "INCLUDE" // MovCslgAtomExclude is a MovCslgAtom enum value MovCslgAtomExclude = "EXCLUDE" ) // When set to XDCAM, writes MPEG2 video streams into the QuickTime file using // XDCAM fourcc codes. This increases compatibility with Apple editors and players, // but may decrease compatibility with other players. Only applicable when the // video codec is MPEG2. const ( // MovMpeg2FourCCControlXdcam is a MovMpeg2FourCCControl enum value MovMpeg2FourCCControlXdcam = "XDCAM" // MovMpeg2FourCCControlMpeg is a MovMpeg2FourCCControl enum value MovMpeg2FourCCControlMpeg = "MPEG" ) // If set to OMNEON, inserts Omneon-compatible padding const ( // MovPaddingControlOmneon is a MovPaddingControl enum value MovPaddingControlOmneon = "OMNEON" // MovPaddingControlNone is a MovPaddingControl enum value MovPaddingControlNone = "NONE" ) // Always keep the default value (SELF_CONTAINED) for this setting. const ( // MovReferenceSelfContained is a MovReference enum value MovReferenceSelfContained = "SELF_CONTAINED" // MovReferenceExternal is a MovReference enum value MovReferenceExternal = "EXTERNAL" ) // When enabled, file composition times will start at zero, composition times // in the 'ctts' (composition time to sample) box for B-frames will be negative, // and a 'cslg' (composition shift least greatest) box will be included per // 14496-1 amendment 1. This improves compatibility with Apple players and tools. const ( // Mp4CslgAtomInclude is a Mp4CslgAtom enum value Mp4CslgAtomInclude = "INCLUDE" // Mp4CslgAtomExclude is a Mp4CslgAtom enum value Mp4CslgAtomExclude = "EXCLUDE" ) // Inserts a free-space box immediately after the moov box. const ( // Mp4FreeSpaceBoxInclude is a Mp4FreeSpaceBox enum value Mp4FreeSpaceBoxInclude = "INCLUDE" // Mp4FreeSpaceBoxExclude is a Mp4FreeSpaceBox enum value Mp4FreeSpaceBoxExclude = "EXCLUDE" ) // If set to PROGRESSIVE_DOWNLOAD, the MOOV atom is relocated to the beginning // of the archive as required for progressive downloading. Otherwise it is placed // normally at the end. const ( // Mp4MoovPlacementProgressiveDownload is a Mp4MoovPlacement enum value Mp4MoovPlacementProgressiveDownload = "PROGRESSIVE_DOWNLOAD" // Mp4MoovPlacementNormal is a Mp4MoovPlacement enum value Mp4MoovPlacementNormal = "NORMAL" ) // Adaptive quantization. Allows intra-frame quantizers to vary to improve visual // quality. const ( // Mpeg2AdaptiveQuantizationOff is a Mpeg2AdaptiveQuantization enum value Mpeg2AdaptiveQuantizationOff = "OFF" // Mpeg2AdaptiveQuantizationLow is a Mpeg2AdaptiveQuantization enum value Mpeg2AdaptiveQuantizationLow = "LOW" // Mpeg2AdaptiveQuantizationMedium is a Mpeg2AdaptiveQuantization enum value Mpeg2AdaptiveQuantizationMedium = "MEDIUM" // Mpeg2AdaptiveQuantizationHigh is a Mpeg2AdaptiveQuantization enum value Mpeg2AdaptiveQuantizationHigh = "HIGH" ) // Use Level (Mpeg2CodecLevel) to set the MPEG-2 level for the video output. const ( // Mpeg2CodecLevelAuto is a Mpeg2CodecLevel enum value Mpeg2CodecLevelAuto = "AUTO" // Mpeg2CodecLevelLow is a Mpeg2CodecLevel enum value Mpeg2CodecLevelLow = "LOW" // Mpeg2CodecLevelMain is a Mpeg2CodecLevel enum value Mpeg2CodecLevelMain = "MAIN" // Mpeg2CodecLevelHigh1440 is a Mpeg2CodecLevel enum value Mpeg2CodecLevelHigh1440 = "HIGH1440" // Mpeg2CodecLevelHigh is a Mpeg2CodecLevel enum value Mpeg2CodecLevelHigh = "HIGH" ) // Use Profile (Mpeg2CodecProfile) to set the MPEG-2 profile for the video output. const ( // Mpeg2CodecProfileMain is a Mpeg2CodecProfile enum value Mpeg2CodecProfileMain = "MAIN" // Mpeg2CodecProfileProfile422 is a Mpeg2CodecProfile enum value Mpeg2CodecProfileProfile422 = "PROFILE_422" ) // Choose Adaptive to improve subjective video quality for high-motion content. // This will cause the service to use fewer B-frames (which infer information // based on other frames) for high-motion portions of the video and more B-frames // for low-motion portions. The maximum number of B-frames is limited by the // value you provide for the setting B frames between reference frames (numberBFramesBetweenReferenceFrames). const ( // Mpeg2DynamicSubGopAdaptive is a Mpeg2DynamicSubGop enum value Mpeg2DynamicSubGopAdaptive = "ADAPTIVE" // Mpeg2DynamicSubGopStatic is a Mpeg2DynamicSubGop enum value Mpeg2DynamicSubGopStatic = "STATIC" ) // If you are using the console, use the Framerate setting to specify the frame // rate for this output. If you want to keep the same frame rate as the input // video, choose Follow source. If you want to do frame rate conversion, choose // a frame rate from the dropdown list or choose Custom. The framerates shown // in the dropdown list are decimal approximations of fractions. If you choose // Custom, specify your frame rate as a fraction. If you are creating your transcoding // job sepecification as a JSON file without the console, use FramerateControl // to specify which value the service uses for the frame rate for this output. // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate // from the input. Choose SPECIFIED if you want the service to use the frame // rate you specify in the settings FramerateNumerator and FramerateDenominator. const ( // Mpeg2FramerateControlInitializeFromSource is a Mpeg2FramerateControl enum value Mpeg2FramerateControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" // Mpeg2FramerateControlSpecified is a Mpeg2FramerateControl enum value Mpeg2FramerateControlSpecified = "SPECIFIED" ) // When set to INTERPOLATE, produces smoother motion during frame rate conversion. const ( // Mpeg2FramerateConversionAlgorithmDuplicateDrop is a Mpeg2FramerateConversionAlgorithm enum value Mpeg2FramerateConversionAlgorithmDuplicateDrop = "DUPLICATE_DROP" // Mpeg2FramerateConversionAlgorithmInterpolate is a Mpeg2FramerateConversionAlgorithm enum value Mpeg2FramerateConversionAlgorithmInterpolate = "INTERPOLATE" ) // Indicates if the GOP Size in MPEG2 is specified in frames or seconds. If // seconds the system will convert the GOP Size into a frame count at run time. const ( // Mpeg2GopSizeUnitsFrames is a Mpeg2GopSizeUnits enum value Mpeg2GopSizeUnitsFrames = "FRAMES" // Mpeg2GopSizeUnitsSeconds is a Mpeg2GopSizeUnits enum value Mpeg2GopSizeUnitsSeconds = "SECONDS" ) // Use Interlace mode (InterlaceMode) to choose the scan line type for the output. // * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce // interlaced output with the entire output having the same field polarity (top // or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default // Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, // behavior depends on the input scan type. - If the source is interlaced, the // output will be interlaced with the same polarity as the source (it will follow // the source). The output could therefore be a mix of "top field first" and // "bottom field first". - If the source is progressive, the output will be // interlaced with "top field first" or "bottom field first" polarity, depending // on which of the Follow options you chose. const ( // Mpeg2InterlaceModeProgressive is a Mpeg2InterlaceMode enum value Mpeg2InterlaceModeProgressive = "PROGRESSIVE" // Mpeg2InterlaceModeTopField is a Mpeg2InterlaceMode enum value Mpeg2InterlaceModeTopField = "TOP_FIELD" // Mpeg2InterlaceModeBottomField is a Mpeg2InterlaceMode enum value Mpeg2InterlaceModeBottomField = "BOTTOM_FIELD" // Mpeg2InterlaceModeFollowTopField is a Mpeg2InterlaceMode enum value Mpeg2InterlaceModeFollowTopField = "FOLLOW_TOP_FIELD" // Mpeg2InterlaceModeFollowBottomField is a Mpeg2InterlaceMode enum value Mpeg2InterlaceModeFollowBottomField = "FOLLOW_BOTTOM_FIELD" ) // Use Intra DC precision (Mpeg2IntraDcPrecision) to set quantization precision // for intra-block DC coefficients. If you choose the value auto, the service // will automatically select the precision based on the per-frame compression // ratio. const ( // Mpeg2IntraDcPrecisionAuto is a Mpeg2IntraDcPrecision enum value Mpeg2IntraDcPrecisionAuto = "AUTO" // Mpeg2IntraDcPrecisionIntraDcPrecision8 is a Mpeg2IntraDcPrecision enum value Mpeg2IntraDcPrecisionIntraDcPrecision8 = "INTRA_DC_PRECISION_8" // Mpeg2IntraDcPrecisionIntraDcPrecision9 is a Mpeg2IntraDcPrecision enum value Mpeg2IntraDcPrecisionIntraDcPrecision9 = "INTRA_DC_PRECISION_9" // Mpeg2IntraDcPrecisionIntraDcPrecision10 is a Mpeg2IntraDcPrecision enum value Mpeg2IntraDcPrecisionIntraDcPrecision10 = "INTRA_DC_PRECISION_10" // Mpeg2IntraDcPrecisionIntraDcPrecision11 is a Mpeg2IntraDcPrecision enum value Mpeg2IntraDcPrecisionIntraDcPrecision11 = "INTRA_DC_PRECISION_11" ) // Using the API, enable ParFollowSource if you want the service to use the // pixel aspect ratio from the input. Using the console, do this by choosing // Follow source for Pixel aspect ratio. const ( // Mpeg2ParControlInitializeFromSource is a Mpeg2ParControl enum value Mpeg2ParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" // Mpeg2ParControlSpecified is a Mpeg2ParControl enum value Mpeg2ParControlSpecified = "SPECIFIED" ) // Use Quality tuning level (Mpeg2QualityTuningLevel) to specifiy whether to // use single-pass or multipass video encoding. const ( // Mpeg2QualityTuningLevelSinglePass is a Mpeg2QualityTuningLevel enum value Mpeg2QualityTuningLevelSinglePass = "SINGLE_PASS" // Mpeg2QualityTuningLevelMultiPass is a Mpeg2QualityTuningLevel enum value Mpeg2QualityTuningLevelMultiPass = "MULTI_PASS" ) // Use Rate control mode (Mpeg2RateControlMode) to specifiy whether the bitrate // is variable (vbr) or constant (cbr). const ( // Mpeg2RateControlModeVbr is a Mpeg2RateControlMode enum value Mpeg2RateControlModeVbr = "VBR" // Mpeg2RateControlModeCbr is a Mpeg2RateControlMode enum value Mpeg2RateControlModeCbr = "CBR" ) // Scene change detection (inserts I-frames on scene changes). const ( // Mpeg2SceneChangeDetectDisabled is a Mpeg2SceneChangeDetect enum value Mpeg2SceneChangeDetectDisabled = "DISABLED" // Mpeg2SceneChangeDetectEnabled is a Mpeg2SceneChangeDetect enum value Mpeg2SceneChangeDetectEnabled = "ENABLED" ) // Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled // as 25fps, and audio is sped up correspondingly. const ( // Mpeg2SlowPalDisabled is a Mpeg2SlowPal enum value Mpeg2SlowPalDisabled = "DISABLED" // Mpeg2SlowPalEnabled is a Mpeg2SlowPal enum value Mpeg2SlowPalEnabled = "ENABLED" ) // Adjust quantization within each frame based on spatial variation of content // complexity. const ( // Mpeg2SpatialAdaptiveQuantizationDisabled is a Mpeg2SpatialAdaptiveQuantization enum value Mpeg2SpatialAdaptiveQuantizationDisabled = "DISABLED" // Mpeg2SpatialAdaptiveQuantizationEnabled is a Mpeg2SpatialAdaptiveQuantization enum value Mpeg2SpatialAdaptiveQuantizationEnabled = "ENABLED" ) // Produces a Type D-10 compatible bitstream (SMPTE 356M-2001). const ( // Mpeg2SyntaxDefault is a Mpeg2Syntax enum value Mpeg2SyntaxDefault = "DEFAULT" // Mpeg2SyntaxD10 is a Mpeg2Syntax enum value Mpeg2SyntaxD10 = "D_10" ) // Only use Telecine (Mpeg2Telecine) when you set Framerate (Framerate) to 29.970. // Set Telecine (Mpeg2Telecine) to Hard (hard) to produce a 29.97i output from // a 23.976 input. Set it to Soft (soft) to produce 23.976 output and leave // converstion to the player. const ( // Mpeg2TelecineNone is a Mpeg2Telecine enum value Mpeg2TelecineNone = "NONE" // Mpeg2TelecineSoft is a Mpeg2Telecine enum value Mpeg2TelecineSoft = "SOFT" // Mpeg2TelecineHard is a Mpeg2Telecine enum value Mpeg2TelecineHard = "HARD" ) // Adjust quantization within each frame based on temporal variation of content // complexity. const ( // Mpeg2TemporalAdaptiveQuantizationDisabled is a Mpeg2TemporalAdaptiveQuantization enum value Mpeg2TemporalAdaptiveQuantizationDisabled = "DISABLED" // Mpeg2TemporalAdaptiveQuantizationEnabled is a Mpeg2TemporalAdaptiveQuantization enum value Mpeg2TemporalAdaptiveQuantizationEnabled = "ENABLED" ) // COMBINE_DUPLICATE_STREAMS combines identical audio encoding settings across // a Microsoft Smooth output group into a single audio stream. const ( // MsSmoothAudioDeduplicationCombineDuplicateStreams is a MsSmoothAudioDeduplication enum value MsSmoothAudioDeduplicationCombineDuplicateStreams = "COMBINE_DUPLICATE_STREAMS" // MsSmoothAudioDeduplicationNone is a MsSmoothAudioDeduplication enum value MsSmoothAudioDeduplicationNone = "NONE" ) // Use Manifest encoding (MsSmoothManifestEncoding) to specify the encoding // format for the server and client manifest. Valid options are utf8 and utf16. const ( // MsSmoothManifestEncodingUtf8 is a MsSmoothManifestEncoding enum value MsSmoothManifestEncodingUtf8 = "UTF8" // MsSmoothManifestEncodingUtf16 is a MsSmoothManifestEncoding enum value MsSmoothManifestEncodingUtf16 = "UTF16" ) // Use Noise reducer filter (NoiseReducerFilter) to select one of the following // spatial image filtering functions. To use this setting, you must also enable // Noise reducer (NoiseReducer). * Bilateral is an edge preserving noise reduction // filter. * Mean (softest), Gaussian, Lanczos, and Sharpen (sharpest) are convolution // filters. * Conserve is a min/max noise reduction filter. * Spatial is a frequency-domain // filter based on JND principles. const ( // NoiseReducerFilterBilateral is a NoiseReducerFilter enum value NoiseReducerFilterBilateral = "BILATERAL" // NoiseReducerFilterMean is a NoiseReducerFilter enum value NoiseReducerFilterMean = "MEAN" // NoiseReducerFilterGaussian is a NoiseReducerFilter enum value NoiseReducerFilterGaussian = "GAUSSIAN" // NoiseReducerFilterLanczos is a NoiseReducerFilter enum value NoiseReducerFilterLanczos = "LANCZOS" // NoiseReducerFilterSharpen is a NoiseReducerFilter enum value NoiseReducerFilterSharpen = "SHARPEN" // NoiseReducerFilterConserve is a NoiseReducerFilter enum value NoiseReducerFilterConserve = "CONSERVE" // NoiseReducerFilterSpatial is a NoiseReducerFilter enum value NoiseReducerFilterSpatial = "SPATIAL" ) // When you request lists of resources, you can optionally specify whether they // are sorted in ASCENDING or DESCENDING order. Default varies by resource. const ( // OrderAscending is a Order enum value OrderAscending = "ASCENDING" // OrderDescending is a Order enum value OrderDescending = "DESCENDING" ) // Type of output group (File group, Apple HLS, DASH ISO, Microsoft Smooth Streaming, // CMAF) const ( // OutputGroupTypeHlsGroupSettings is a OutputGroupType enum value OutputGroupTypeHlsGroupSettings = "HLS_GROUP_SETTINGS" // OutputGroupTypeDashIsoGroupSettings is a OutputGroupType enum value OutputGroupTypeDashIsoGroupSettings = "DASH_ISO_GROUP_SETTINGS" // OutputGroupTypeFileGroupSettings is a OutputGroupType enum value OutputGroupTypeFileGroupSettings = "FILE_GROUP_SETTINGS" // OutputGroupTypeMsSmoothGroupSettings is a OutputGroupType enum value OutputGroupTypeMsSmoothGroupSettings = "MS_SMOOTH_GROUP_SETTINGS" // OutputGroupTypeCmafGroupSettings is a OutputGroupType enum value OutputGroupTypeCmafGroupSettings = "CMAF_GROUP_SETTINGS" ) // Selects method of inserting SDT information into output stream. "Follow input // SDT" copies SDT information from input stream to output stream. "Follow input // SDT if present" copies SDT information from input stream to output stream // if SDT information is present in the input, otherwise it will fall back on // the user-defined values. Enter "SDT Manually" means user will enter the SDT // information. "No SDT" means output stream will not contain SDT information. const ( // OutputSdtSdtFollow is a OutputSdt enum value OutputSdtSdtFollow = "SDT_FOLLOW" // OutputSdtSdtFollowIfPresent is a OutputSdt enum value OutputSdtSdtFollowIfPresent = "SDT_FOLLOW_IF_PRESENT" // OutputSdtSdtManual is a OutputSdt enum value OutputSdtSdtManual = "SDT_MANUAL" // OutputSdtSdtNone is a OutputSdt enum value OutputSdtSdtNone = "SDT_NONE" ) // Optional. When you request a list of presets, you can choose to list them // alphabetically by NAME or chronologically by CREATION_DATE. If you don't // specify, the service will list them by name. const ( // PresetListByName is a PresetListBy enum value PresetListByName = "NAME" // PresetListByCreationDate is a PresetListBy enum value PresetListByCreationDate = "CREATION_DATE" // PresetListBySystem is a PresetListBy enum value PresetListBySystem = "SYSTEM" ) // Specifies whether the pricing plan for the queue is on-demand or reserved. // For on-demand, you pay per minute, billed in increments of .01 minute. For // reserved, you pay for the transcoding capacity of the entire queue, regardless // of how much or how little you use it. Reserved pricing requires a 12-month // commitment. const ( // PricingPlanOnDemand is a PricingPlan enum value PricingPlanOnDemand = "ON_DEMAND" // PricingPlanReserved is a PricingPlan enum value PricingPlanReserved = "RESERVED" ) // Use Profile (ProResCodecProfile) to specifiy the type of Apple ProRes codec // to use for this output. const ( // ProresCodecProfileAppleProres422 is a ProresCodecProfile enum value ProresCodecProfileAppleProres422 = "APPLE_PRORES_422" // ProresCodecProfileAppleProres422Hq is a ProresCodecProfile enum value ProresCodecProfileAppleProres422Hq = "APPLE_PRORES_422_HQ" // ProresCodecProfileAppleProres422Lt is a ProresCodecProfile enum value ProresCodecProfileAppleProres422Lt = "APPLE_PRORES_422_LT" // ProresCodecProfileAppleProres422Proxy is a ProresCodecProfile enum value ProresCodecProfileAppleProres422Proxy = "APPLE_PRORES_422_PROXY" ) // If you are using the console, use the Framerate setting to specify the frame // rate for this output. If you want to keep the same frame rate as the input // video, choose Follow source. If you want to do frame rate conversion, choose // a frame rate from the dropdown list or choose Custom. The framerates shown // in the dropdown list are decimal approximations of fractions. If you choose // Custom, specify your frame rate as a fraction. If you are creating your transcoding // job sepecification as a JSON file without the console, use FramerateControl // to specify which value the service uses for the frame rate for this output. // Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate // from the input. Choose SPECIFIED if you want the service to use the frame // rate you specify in the settings FramerateNumerator and FramerateDenominator. const ( // ProresFramerateControlInitializeFromSource is a ProresFramerateControl enum value ProresFramerateControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" // ProresFramerateControlSpecified is a ProresFramerateControl enum value ProresFramerateControlSpecified = "SPECIFIED" ) // When set to INTERPOLATE, produces smoother motion during frame rate conversion. const ( // ProresFramerateConversionAlgorithmDuplicateDrop is a ProresFramerateConversionAlgorithm enum value ProresFramerateConversionAlgorithmDuplicateDrop = "DUPLICATE_DROP" // ProresFramerateConversionAlgorithmInterpolate is a ProresFramerateConversionAlgorithm enum value ProresFramerateConversionAlgorithmInterpolate = "INTERPOLATE" ) // Use Interlace mode (InterlaceMode) to choose the scan line type for the output. // * Top Field First (TOP_FIELD) and Bottom Field First (BOTTOM_FIELD) produce // interlaced output with the entire output having the same field polarity (top // or bottom first). * Follow, Default Top (FOLLOW_TOP_FIELD) and Follow, Default // Bottom (FOLLOW_BOTTOM_FIELD) use the same field polarity as the source. Therefore, // behavior depends on the input scan type. - If the source is interlaced, the // output will be interlaced with the same polarity as the source (it will follow // the source). The output could therefore be a mix of "top field first" and // "bottom field first". - If the source is progressive, the output will be // interlaced with "top field first" or "bottom field first" polarity, depending // on which of the Follow options you chose. const ( // ProresInterlaceModeProgressive is a ProresInterlaceMode enum value ProresInterlaceModeProgressive = "PROGRESSIVE" // ProresInterlaceModeTopField is a ProresInterlaceMode enum value ProresInterlaceModeTopField = "TOP_FIELD" // ProresInterlaceModeBottomField is a ProresInterlaceMode enum value ProresInterlaceModeBottomField = "BOTTOM_FIELD" // ProresInterlaceModeFollowTopField is a ProresInterlaceMode enum value ProresInterlaceModeFollowTopField = "FOLLOW_TOP_FIELD" // ProresInterlaceModeFollowBottomField is a ProresInterlaceMode enum value ProresInterlaceModeFollowBottomField = "FOLLOW_BOTTOM_FIELD" ) // Use (ProresParControl) to specify how the service determines the pixel aspect // ratio. Set to Follow source (INITIALIZE_FROM_SOURCE) to use the pixel aspect // ratio from the input. To specify a different pixel aspect ratio: Using the // console, choose it from the dropdown menu. Using the API, set ProresParControl // to (SPECIFIED) and provide for (ParNumerator) and (ParDenominator). const ( // ProresParControlInitializeFromSource is a ProresParControl enum value ProresParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE" // ProresParControlSpecified is a ProresParControl enum value ProresParControlSpecified = "SPECIFIED" ) // Enables Slow PAL rate conversion. 23.976fps and 24fps input is relabeled // as 25fps, and audio is sped up correspondingly. const ( // ProresSlowPalDisabled is a ProresSlowPal enum value ProresSlowPalDisabled = "DISABLED" // ProresSlowPalEnabled is a ProresSlowPal enum value ProresSlowPalEnabled = "ENABLED" ) // Only use Telecine (ProresTelecine) when you set Framerate (Framerate) to // 29.970. Set Telecine (ProresTelecine) to Hard (hard) to produce a 29.97i // output from a 23.976 input. Set it to Soft (soft) to produce 23.976 output // and leave converstion to the player. const ( // ProresTelecineNone is a ProresTelecine enum value ProresTelecineNone = "NONE" // ProresTelecineHard is a ProresTelecine enum value ProresTelecineHard = "HARD" ) // Optional. When you request a list of queues, you can choose to list them // alphabetically by NAME or chronologically by CREATION_DATE. If you don't // specify, the service will list them by creation date. const ( // QueueListByName is a QueueListBy enum value QueueListByName = "NAME" // QueueListByCreationDate is a QueueListBy enum value QueueListByCreationDate = "CREATION_DATE" ) // Queues can be ACTIVE or PAUSED. If you pause a queue, jobs in that queue // won't begin. Jobs that are running when you pause a queue continue to run // until they finish or result in an error. const ( // QueueStatusActive is a QueueStatus enum value QueueStatusActive = "ACTIVE" // QueueStatusPaused is a QueueStatus enum value QueueStatusPaused = "PAUSED" ) // Specifies whether the term of your reserved queue pricing plan is automatically // extended (AUTO_RENEW) or expires (EXPIRE) at the end of the term. const ( // RenewalTypeAutoRenew is a RenewalType enum value RenewalTypeAutoRenew = "AUTO_RENEW" // RenewalTypeExpire is a RenewalType enum value RenewalTypeExpire = "EXPIRE" ) // Specifies whether the pricing plan for your reserved queue is ACTIVE or EXPIRED. const ( // ReservationPlanStatusActive is a ReservationPlanStatus enum value ReservationPlanStatusActive = "ACTIVE" // ReservationPlanStatusExpired is a ReservationPlanStatus enum value ReservationPlanStatusExpired = "EXPIRED" ) // Use Respond to AFD (RespondToAfd) to specify how the service changes the // video itself in response to AFD values in the input. * Choose Respond to // clip the input video frame according to the AFD value, input display aspect // ratio, and output display aspect ratio. * Choose Passthrough to include the // input AFD values. Do not choose this when AfdSignaling is set to (NONE). // A preferred implementation of this workflow is to set RespondToAfd to (NONE) // and set AfdSignaling to (AUTO). * Choose None to remove all input AFD values // from this output. const ( // RespondToAfdNone is a RespondToAfd enum value RespondToAfdNone = "NONE" // RespondToAfdRespond is a RespondToAfd enum value RespondToAfdRespond = "RESPOND" // RespondToAfdPassthrough is a RespondToAfd enum value RespondToAfdPassthrough = "PASSTHROUGH" ) // Applies only if your input aspect ratio is different from your output aspect // ratio. Choose "Stretch to output" to have the service stretch your video // image to fit. Keep the setting "Default" to allow the service to letterbox // your video instead. This setting overrides any positioning value you specify // elsewhere in the job. const ( // ScalingBehaviorDefault is a ScalingBehavior enum value ScalingBehaviorDefault = "DEFAULT" // ScalingBehaviorStretchToOutput is a ScalingBehavior enum value ScalingBehaviorStretchToOutput = "STRETCH_TO_OUTPUT" ) // Set Framerate (SccDestinationFramerate) to make sure that the captions and // the video are synchronized in the output. Specify a frame rate that matches // the frame rate of the associated video. If the video frame rate is 29.97, // choose 29.97 dropframe (FRAMERATE_29_97_DROPFRAME) only if the video has // video_insertion=true and drop_frame_timecode=true; otherwise, choose 29.97 // non-dropframe (FRAMERATE_29_97_NON_DROPFRAME). const ( // SccDestinationFramerateFramerate2397 is a SccDestinationFramerate enum value SccDestinationFramerateFramerate2397 = "FRAMERATE_23_97" // SccDestinationFramerateFramerate24 is a SccDestinationFramerate enum value SccDestinationFramerateFramerate24 = "FRAMERATE_24" // SccDestinationFramerateFramerate2997Dropframe is a SccDestinationFramerate enum value SccDestinationFramerateFramerate2997Dropframe = "FRAMERATE_29_97_DROPFRAME" // SccDestinationFramerateFramerate2997NonDropframe is a SccDestinationFramerate enum value SccDestinationFramerateFramerate2997NonDropframe = "FRAMERATE_29_97_NON_DROPFRAME" ) // Use Position (Position) under under Timecode burn-in (TimecodeBurnIn) to // specify the location the burned-in timecode on output video. const ( // TimecodeBurninPositionTopCenter is a TimecodeBurninPosition enum value TimecodeBurninPositionTopCenter = "TOP_CENTER" // TimecodeBurninPositionTopLeft is a TimecodeBurninPosition enum value TimecodeBurninPositionTopLeft = "TOP_LEFT" // TimecodeBurninPositionTopRight is a TimecodeBurninPosition enum value TimecodeBurninPositionTopRight = "TOP_RIGHT" // TimecodeBurninPositionMiddleLeft is a TimecodeBurninPosition enum value TimecodeBurninPositionMiddleLeft = "MIDDLE_LEFT" // TimecodeBurninPositionMiddleCenter is a TimecodeBurninPosition enum value TimecodeBurninPositionMiddleCenter = "MIDDLE_CENTER" // TimecodeBurninPositionMiddleRight is a TimecodeBurninPosition enum value TimecodeBurninPositionMiddleRight = "MIDDLE_RIGHT" // TimecodeBurninPositionBottomLeft is a TimecodeBurninPosition enum value TimecodeBurninPositionBottomLeft = "BOTTOM_LEFT" // TimecodeBurninPositionBottomCenter is a TimecodeBurninPosition enum value TimecodeBurninPositionBottomCenter = "BOTTOM_CENTER" // TimecodeBurninPositionBottomRight is a TimecodeBurninPosition enum value TimecodeBurninPositionBottomRight = "BOTTOM_RIGHT" ) // Use Source (TimecodeSource) to set how timecodes are handled within this // job. To make sure that your video, audio, captions, and markers are synchronized // and that time-based features, such as image inserter, work correctly, choose // the Timecode source option that matches your assets. All timecodes are in // a 24-hour format with frame number (HH:MM:SS:FF). * Embedded (EMBEDDED) - // Use the timecode that is in the input video. If no embedded timecode is in // the source, the service will use Start at 0 (ZEROBASED) instead. * Start // at 0 (ZEROBASED) - Set the timecode of the initial frame to 00:00:00:00. // * Specified Start (SPECIFIEDSTART) - Set the timecode of the initial frame // to a value other than zero. You use Start timecode (Start) to provide this // value. const ( // TimecodeSourceEmbedded is a TimecodeSource enum value TimecodeSourceEmbedded = "EMBEDDED" // TimecodeSourceZerobased is a TimecodeSource enum value TimecodeSourceZerobased = "ZEROBASED" // TimecodeSourceSpecifiedstart is a TimecodeSource enum value TimecodeSourceSpecifiedstart = "SPECIFIEDSTART" ) // Applies only to HLS outputs. Use this setting to specify whether the service // inserts the ID3 timed metadata from the input in this output. const ( // TimedMetadataPassthrough is a TimedMetadata enum value TimedMetadataPassthrough = "PASSTHROUGH" // TimedMetadataNone is a TimedMetadata enum value TimedMetadataNone = "NONE" ) // Pass through style and position information from a TTML-like input source // (TTML, SMPTE-TT, CFF-TT) to the CFF-TT output or TTML output. const ( // TtmlStylePassthroughEnabled is a TtmlStylePassthrough enum value TtmlStylePassthroughEnabled = "ENABLED" // TtmlStylePassthroughDisabled is a TtmlStylePassthrough enum value TtmlStylePassthroughDisabled = "DISABLED" ) const ( // TypeSystem is a Type enum value TypeSystem = "SYSTEM" // TypeCustom is a Type enum value TypeCustom = "CUSTOM" ) // Type of video codec const ( // VideoCodecFrameCapture is a VideoCodec enum value VideoCodecFrameCapture = "FRAME_CAPTURE" // VideoCodecH264 is a VideoCodec enum value VideoCodecH264 = "H_264" // VideoCodecH265 is a VideoCodec enum value VideoCodecH265 = "H_265" // VideoCodecMpeg2 is a VideoCodec enum value VideoCodecMpeg2 = "MPEG2" // VideoCodecProres is a VideoCodec enum value VideoCodecProres = "PRORES" ) // Applies only to H.264, H.265, MPEG2, and ProRes outputs. Only enable Timecode // insertion when the input frame rate is identical to the output frame rate. // To include timecodes in this output, set Timecode insertion (VideoTimecodeInsertion) // to PIC_TIMING_SEI. To leave them out, set it to DISABLED. Default is DISABLED. // When the service inserts timecodes in an output, by default, it uses any // embedded timecodes from the input. If none are present, the service will // set the timecode for the first output frame to zero. To change this default // behavior, adjust the settings under Timecode configuration (TimecodeConfig). // In the console, these settings are located under Job > Job settings > Timecode // configuration. Note - Timecode source under input settings (InputTimecodeSource) // does not affect the timecodes that are inserted in the output. Source under // Job settings > Timecode configuration (TimecodeSource) does. const ( // VideoTimecodeInsertionDisabled is a VideoTimecodeInsertion enum value VideoTimecodeInsertionDisabled = "DISABLED" // VideoTimecodeInsertionPicTimingSei is a VideoTimecodeInsertion enum value VideoTimecodeInsertionPicTimingSei = "PIC_TIMING_SEI" ) // The service defaults to using RIFF for WAV outputs. If your output audio // is likely to exceed 4 GB in file size, or if you otherwise need the extended // support of the RF64 format, set your output WAV file format to RF64. const ( // WavFormatRiff is a WavFormat enum value WavFormatRiff = "RIFF" // WavFormatRf64 is a WavFormat enum value WavFormatRf64 = "RF64" )