1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package medialive
4
5import (
6	"fmt"
7
8	"github.com/aws/aws-sdk-go/aws"
9	"github.com/aws/aws-sdk-go/aws/awsutil"
10	"github.com/aws/aws-sdk-go/aws/request"
11	"github.com/aws/aws-sdk-go/private/protocol"
12	"github.com/aws/aws-sdk-go/private/protocol/restjson"
13)
14
15const opBatchUpdateSchedule = "BatchUpdateSchedule"
16
17// BatchUpdateScheduleRequest generates a "aws/request.Request" representing the
18// client's request for the BatchUpdateSchedule operation. The "output" return
19// value will be populated with the request's response once the request completes
20// successfully.
21//
22// Use "Send" method on the returned Request to send the API call to the service.
23// the "output" return value is not valid until after Send returns without error.
24//
25// See BatchUpdateSchedule for more information on using the BatchUpdateSchedule
26// API call, and error handling.
27//
28// This method is useful when you want to inject custom logic or configuration
29// into the SDK's request lifecycle. Such as custom headers, or retry logic.
30//
31//
32//    // Example sending a request using the BatchUpdateScheduleRequest method.
33//    req, resp := client.BatchUpdateScheduleRequest(params)
34//
35//    err := req.Send()
36//    if err == nil { // resp is now filled
37//        fmt.Println(resp)
38//    }
39//
40// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/BatchUpdateSchedule
41func (c *MediaLive) BatchUpdateScheduleRequest(input *BatchUpdateScheduleInput) (req *request.Request, output *BatchUpdateScheduleOutput) {
42	op := &request.Operation{
43		Name:       opBatchUpdateSchedule,
44		HTTPMethod: "PUT",
45		HTTPPath:   "/prod/channels/{channelId}/schedule",
46	}
47
48	if input == nil {
49		input = &BatchUpdateScheduleInput{}
50	}
51
52	output = &BatchUpdateScheduleOutput{}
53	req = c.newRequest(op, input, output)
54	return
55}
56
57// BatchUpdateSchedule API operation for AWS Elemental MediaLive.
58//
59// Update a channel schedule
60//
61// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
62// with awserr.Error's Code and Message methods to get detailed information about
63// the error.
64//
65// See the AWS API reference guide for AWS Elemental MediaLive's
66// API operation BatchUpdateSchedule for usage and error information.
67//
68// Returned Error Types:
69//   * BadRequestException
70//
71//   * UnprocessableEntityException
72//
73//   * InternalServerErrorException
74//
75//   * ForbiddenException
76//
77//   * BadGatewayException
78//
79//   * NotFoundException
80//
81//   * GatewayTimeoutException
82//
83//   * TooManyRequestsException
84//
85// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/BatchUpdateSchedule
86func (c *MediaLive) BatchUpdateSchedule(input *BatchUpdateScheduleInput) (*BatchUpdateScheduleOutput, error) {
87	req, out := c.BatchUpdateScheduleRequest(input)
88	return out, req.Send()
89}
90
91// BatchUpdateScheduleWithContext is the same as BatchUpdateSchedule with the addition of
92// the ability to pass a context and additional request options.
93//
94// See BatchUpdateSchedule for details on how to use this API operation.
95//
96// The context must be non-nil and will be used for request cancellation. If
97// the context is nil a panic will occur. In the future the SDK may create
98// sub-contexts for http.Requests. See https://golang.org/pkg/context/
99// for more information on using Contexts.
100func (c *MediaLive) BatchUpdateScheduleWithContext(ctx aws.Context, input *BatchUpdateScheduleInput, opts ...request.Option) (*BatchUpdateScheduleOutput, error) {
101	req, out := c.BatchUpdateScheduleRequest(input)
102	req.SetContext(ctx)
103	req.ApplyOptions(opts...)
104	return out, req.Send()
105}
106
107const opCreateChannel = "CreateChannel"
108
109// CreateChannelRequest generates a "aws/request.Request" representing the
110// client's request for the CreateChannel operation. The "output" return
111// value will be populated with the request's response once the request completes
112// successfully.
113//
114// Use "Send" method on the returned Request to send the API call to the service.
115// the "output" return value is not valid until after Send returns without error.
116//
117// See CreateChannel for more information on using the CreateChannel
118// API call, and error handling.
119//
120// This method is useful when you want to inject custom logic or configuration
121// into the SDK's request lifecycle. Such as custom headers, or retry logic.
122//
123//
124//    // Example sending a request using the CreateChannelRequest method.
125//    req, resp := client.CreateChannelRequest(params)
126//
127//    err := req.Send()
128//    if err == nil { // resp is now filled
129//        fmt.Println(resp)
130//    }
131//
132// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/CreateChannel
133func (c *MediaLive) CreateChannelRequest(input *CreateChannelInput) (req *request.Request, output *CreateChannelOutput) {
134	op := &request.Operation{
135		Name:       opCreateChannel,
136		HTTPMethod: "POST",
137		HTTPPath:   "/prod/channels",
138	}
139
140	if input == nil {
141		input = &CreateChannelInput{}
142	}
143
144	output = &CreateChannelOutput{}
145	req = c.newRequest(op, input, output)
146	return
147}
148
149// CreateChannel API operation for AWS Elemental MediaLive.
150//
151// Creates a new channel
152//
153// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
154// with awserr.Error's Code and Message methods to get detailed information about
155// the error.
156//
157// See the AWS API reference guide for AWS Elemental MediaLive's
158// API operation CreateChannel for usage and error information.
159//
160// Returned Error Types:
161//   * BadRequestException
162//
163//   * UnprocessableEntityException
164//
165//   * InternalServerErrorException
166//
167//   * ForbiddenException
168//
169//   * BadGatewayException
170//
171//   * GatewayTimeoutException
172//
173//   * TooManyRequestsException
174//
175//   * ConflictException
176//
177// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/CreateChannel
178func (c *MediaLive) CreateChannel(input *CreateChannelInput) (*CreateChannelOutput, error) {
179	req, out := c.CreateChannelRequest(input)
180	return out, req.Send()
181}
182
183// CreateChannelWithContext is the same as CreateChannel with the addition of
184// the ability to pass a context and additional request options.
185//
186// See CreateChannel for details on how to use this API operation.
187//
188// The context must be non-nil and will be used for request cancellation. If
189// the context is nil a panic will occur. In the future the SDK may create
190// sub-contexts for http.Requests. See https://golang.org/pkg/context/
191// for more information on using Contexts.
192func (c *MediaLive) CreateChannelWithContext(ctx aws.Context, input *CreateChannelInput, opts ...request.Option) (*CreateChannelOutput, error) {
193	req, out := c.CreateChannelRequest(input)
194	req.SetContext(ctx)
195	req.ApplyOptions(opts...)
196	return out, req.Send()
197}
198
199const opCreateInput = "CreateInput"
200
201// CreateInputRequest generates a "aws/request.Request" representing the
202// client's request for the CreateInput operation. The "output" return
203// value will be populated with the request's response once the request completes
204// successfully.
205//
206// Use "Send" method on the returned Request to send the API call to the service.
207// the "output" return value is not valid until after Send returns without error.
208//
209// See CreateInput for more information on using the CreateInput
210// API call, and error handling.
211//
212// This method is useful when you want to inject custom logic or configuration
213// into the SDK's request lifecycle. Such as custom headers, or retry logic.
214//
215//
216//    // Example sending a request using the CreateInputRequest method.
217//    req, resp := client.CreateInputRequest(params)
218//
219//    err := req.Send()
220//    if err == nil { // resp is now filled
221//        fmt.Println(resp)
222//    }
223//
224// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/CreateInput
225func (c *MediaLive) CreateInputRequest(input *CreateInputInput) (req *request.Request, output *CreateInputOutput) {
226	op := &request.Operation{
227		Name:       opCreateInput,
228		HTTPMethod: "POST",
229		HTTPPath:   "/prod/inputs",
230	}
231
232	if input == nil {
233		input = &CreateInputInput{}
234	}
235
236	output = &CreateInputOutput{}
237	req = c.newRequest(op, input, output)
238	return
239}
240
241// CreateInput API operation for AWS Elemental MediaLive.
242//
243// Create an input
244//
245// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
246// with awserr.Error's Code and Message methods to get detailed information about
247// the error.
248//
249// See the AWS API reference guide for AWS Elemental MediaLive's
250// API operation CreateInput for usage and error information.
251//
252// Returned Error Types:
253//   * BadRequestException
254//
255//   * InternalServerErrorException
256//
257//   * ForbiddenException
258//
259//   * BadGatewayException
260//
261//   * GatewayTimeoutException
262//
263//   * TooManyRequestsException
264//
265// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/CreateInput
266func (c *MediaLive) CreateInput(input *CreateInputInput) (*CreateInputOutput, error) {
267	req, out := c.CreateInputRequest(input)
268	return out, req.Send()
269}
270
271// CreateInputWithContext is the same as CreateInput with the addition of
272// the ability to pass a context and additional request options.
273//
274// See CreateInput for details on how to use this API operation.
275//
276// The context must be non-nil and will be used for request cancellation. If
277// the context is nil a panic will occur. In the future the SDK may create
278// sub-contexts for http.Requests. See https://golang.org/pkg/context/
279// for more information on using Contexts.
280func (c *MediaLive) CreateInputWithContext(ctx aws.Context, input *CreateInputInput, opts ...request.Option) (*CreateInputOutput, error) {
281	req, out := c.CreateInputRequest(input)
282	req.SetContext(ctx)
283	req.ApplyOptions(opts...)
284	return out, req.Send()
285}
286
287const opCreateInputSecurityGroup = "CreateInputSecurityGroup"
288
289// CreateInputSecurityGroupRequest generates a "aws/request.Request" representing the
290// client's request for the CreateInputSecurityGroup operation. The "output" return
291// value will be populated with the request's response once the request completes
292// successfully.
293//
294// Use "Send" method on the returned Request to send the API call to the service.
295// the "output" return value is not valid until after Send returns without error.
296//
297// See CreateInputSecurityGroup for more information on using the CreateInputSecurityGroup
298// API call, and error handling.
299//
300// This method is useful when you want to inject custom logic or configuration
301// into the SDK's request lifecycle. Such as custom headers, or retry logic.
302//
303//
304//    // Example sending a request using the CreateInputSecurityGroupRequest method.
305//    req, resp := client.CreateInputSecurityGroupRequest(params)
306//
307//    err := req.Send()
308//    if err == nil { // resp is now filled
309//        fmt.Println(resp)
310//    }
311//
312// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/CreateInputSecurityGroup
313func (c *MediaLive) CreateInputSecurityGroupRequest(input *CreateInputSecurityGroupInput) (req *request.Request, output *CreateInputSecurityGroupOutput) {
314	op := &request.Operation{
315		Name:       opCreateInputSecurityGroup,
316		HTTPMethod: "POST",
317		HTTPPath:   "/prod/inputSecurityGroups",
318	}
319
320	if input == nil {
321		input = &CreateInputSecurityGroupInput{}
322	}
323
324	output = &CreateInputSecurityGroupOutput{}
325	req = c.newRequest(op, input, output)
326	return
327}
328
329// CreateInputSecurityGroup API operation for AWS Elemental MediaLive.
330//
331// Creates a Input Security Group
332//
333// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
334// with awserr.Error's Code and Message methods to get detailed information about
335// the error.
336//
337// See the AWS API reference guide for AWS Elemental MediaLive's
338// API operation CreateInputSecurityGroup for usage and error information.
339//
340// Returned Error Types:
341//   * BadRequestException
342//
343//   * InternalServerErrorException
344//
345//   * ForbiddenException
346//
347//   * BadGatewayException
348//
349//   * GatewayTimeoutException
350//
351//   * TooManyRequestsException
352//
353// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/CreateInputSecurityGroup
354func (c *MediaLive) CreateInputSecurityGroup(input *CreateInputSecurityGroupInput) (*CreateInputSecurityGroupOutput, error) {
355	req, out := c.CreateInputSecurityGroupRequest(input)
356	return out, req.Send()
357}
358
359// CreateInputSecurityGroupWithContext is the same as CreateInputSecurityGroup with the addition of
360// the ability to pass a context and additional request options.
361//
362// See CreateInputSecurityGroup for details on how to use this API operation.
363//
364// The context must be non-nil and will be used for request cancellation. If
365// the context is nil a panic will occur. In the future the SDK may create
366// sub-contexts for http.Requests. See https://golang.org/pkg/context/
367// for more information on using Contexts.
368func (c *MediaLive) CreateInputSecurityGroupWithContext(ctx aws.Context, input *CreateInputSecurityGroupInput, opts ...request.Option) (*CreateInputSecurityGroupOutput, error) {
369	req, out := c.CreateInputSecurityGroupRequest(input)
370	req.SetContext(ctx)
371	req.ApplyOptions(opts...)
372	return out, req.Send()
373}
374
375const opCreateMultiplex = "CreateMultiplex"
376
377// CreateMultiplexRequest generates a "aws/request.Request" representing the
378// client's request for the CreateMultiplex operation. The "output" return
379// value will be populated with the request's response once the request completes
380// successfully.
381//
382// Use "Send" method on the returned Request to send the API call to the service.
383// the "output" return value is not valid until after Send returns without error.
384//
385// See CreateMultiplex for more information on using the CreateMultiplex
386// API call, and error handling.
387//
388// This method is useful when you want to inject custom logic or configuration
389// into the SDK's request lifecycle. Such as custom headers, or retry logic.
390//
391//
392//    // Example sending a request using the CreateMultiplexRequest method.
393//    req, resp := client.CreateMultiplexRequest(params)
394//
395//    err := req.Send()
396//    if err == nil { // resp is now filled
397//        fmt.Println(resp)
398//    }
399//
400// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/CreateMultiplex
401func (c *MediaLive) CreateMultiplexRequest(input *CreateMultiplexInput) (req *request.Request, output *CreateMultiplexOutput) {
402	op := &request.Operation{
403		Name:       opCreateMultiplex,
404		HTTPMethod: "POST",
405		HTTPPath:   "/prod/multiplexes",
406	}
407
408	if input == nil {
409		input = &CreateMultiplexInput{}
410	}
411
412	output = &CreateMultiplexOutput{}
413	req = c.newRequest(op, input, output)
414	return
415}
416
417// CreateMultiplex API operation for AWS Elemental MediaLive.
418//
419// Create a new multiplex.
420//
421// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
422// with awserr.Error's Code and Message methods to get detailed information about
423// the error.
424//
425// See the AWS API reference guide for AWS Elemental MediaLive's
426// API operation CreateMultiplex for usage and error information.
427//
428// Returned Error Types:
429//   * BadRequestException
430//
431//   * UnprocessableEntityException
432//
433//   * InternalServerErrorException
434//
435//   * ForbiddenException
436//
437//   * BadGatewayException
438//
439//   * GatewayTimeoutException
440//
441//   * TooManyRequestsException
442//
443//   * ConflictException
444//
445// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/CreateMultiplex
446func (c *MediaLive) CreateMultiplex(input *CreateMultiplexInput) (*CreateMultiplexOutput, error) {
447	req, out := c.CreateMultiplexRequest(input)
448	return out, req.Send()
449}
450
451// CreateMultiplexWithContext is the same as CreateMultiplex with the addition of
452// the ability to pass a context and additional request options.
453//
454// See CreateMultiplex for details on how to use this API operation.
455//
456// The context must be non-nil and will be used for request cancellation. If
457// the context is nil a panic will occur. In the future the SDK may create
458// sub-contexts for http.Requests. See https://golang.org/pkg/context/
459// for more information on using Contexts.
460func (c *MediaLive) CreateMultiplexWithContext(ctx aws.Context, input *CreateMultiplexInput, opts ...request.Option) (*CreateMultiplexOutput, error) {
461	req, out := c.CreateMultiplexRequest(input)
462	req.SetContext(ctx)
463	req.ApplyOptions(opts...)
464	return out, req.Send()
465}
466
467const opCreateMultiplexProgram = "CreateMultiplexProgram"
468
469// CreateMultiplexProgramRequest generates a "aws/request.Request" representing the
470// client's request for the CreateMultiplexProgram operation. The "output" return
471// value will be populated with the request's response once the request completes
472// successfully.
473//
474// Use "Send" method on the returned Request to send the API call to the service.
475// the "output" return value is not valid until after Send returns without error.
476//
477// See CreateMultiplexProgram for more information on using the CreateMultiplexProgram
478// API call, and error handling.
479//
480// This method is useful when you want to inject custom logic or configuration
481// into the SDK's request lifecycle. Such as custom headers, or retry logic.
482//
483//
484//    // Example sending a request using the CreateMultiplexProgramRequest method.
485//    req, resp := client.CreateMultiplexProgramRequest(params)
486//
487//    err := req.Send()
488//    if err == nil { // resp is now filled
489//        fmt.Println(resp)
490//    }
491//
492// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/CreateMultiplexProgram
493func (c *MediaLive) CreateMultiplexProgramRequest(input *CreateMultiplexProgramInput) (req *request.Request, output *CreateMultiplexProgramOutput) {
494	op := &request.Operation{
495		Name:       opCreateMultiplexProgram,
496		HTTPMethod: "POST",
497		HTTPPath:   "/prod/multiplexes/{multiplexId}/programs",
498	}
499
500	if input == nil {
501		input = &CreateMultiplexProgramInput{}
502	}
503
504	output = &CreateMultiplexProgramOutput{}
505	req = c.newRequest(op, input, output)
506	return
507}
508
509// CreateMultiplexProgram API operation for AWS Elemental MediaLive.
510//
511// Create a new program in the multiplex.
512//
513// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
514// with awserr.Error's Code and Message methods to get detailed information about
515// the error.
516//
517// See the AWS API reference guide for AWS Elemental MediaLive's
518// API operation CreateMultiplexProgram for usage and error information.
519//
520// Returned Error Types:
521//   * BadRequestException
522//
523//   * UnprocessableEntityException
524//
525//   * InternalServerErrorException
526//
527//   * ForbiddenException
528//
529//   * BadGatewayException
530//
531//   * GatewayTimeoutException
532//
533//   * TooManyRequestsException
534//
535//   * ConflictException
536//
537// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/CreateMultiplexProgram
538func (c *MediaLive) CreateMultiplexProgram(input *CreateMultiplexProgramInput) (*CreateMultiplexProgramOutput, error) {
539	req, out := c.CreateMultiplexProgramRequest(input)
540	return out, req.Send()
541}
542
543// CreateMultiplexProgramWithContext is the same as CreateMultiplexProgram with the addition of
544// the ability to pass a context and additional request options.
545//
546// See CreateMultiplexProgram for details on how to use this API operation.
547//
548// The context must be non-nil and will be used for request cancellation. If
549// the context is nil a panic will occur. In the future the SDK may create
550// sub-contexts for http.Requests. See https://golang.org/pkg/context/
551// for more information on using Contexts.
552func (c *MediaLive) CreateMultiplexProgramWithContext(ctx aws.Context, input *CreateMultiplexProgramInput, opts ...request.Option) (*CreateMultiplexProgramOutput, error) {
553	req, out := c.CreateMultiplexProgramRequest(input)
554	req.SetContext(ctx)
555	req.ApplyOptions(opts...)
556	return out, req.Send()
557}
558
559const opCreateTags = "CreateTags"
560
561// CreateTagsRequest generates a "aws/request.Request" representing the
562// client's request for the CreateTags operation. The "output" return
563// value will be populated with the request's response once the request completes
564// successfully.
565//
566// Use "Send" method on the returned Request to send the API call to the service.
567// the "output" return value is not valid until after Send returns without error.
568//
569// See CreateTags for more information on using the CreateTags
570// API call, and error handling.
571//
572// This method is useful when you want to inject custom logic or configuration
573// into the SDK's request lifecycle. Such as custom headers, or retry logic.
574//
575//
576//    // Example sending a request using the CreateTagsRequest method.
577//    req, resp := client.CreateTagsRequest(params)
578//
579//    err := req.Send()
580//    if err == nil { // resp is now filled
581//        fmt.Println(resp)
582//    }
583//
584// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/CreateTags
585func (c *MediaLive) CreateTagsRequest(input *CreateTagsInput) (req *request.Request, output *CreateTagsOutput) {
586	op := &request.Operation{
587		Name:       opCreateTags,
588		HTTPMethod: "POST",
589		HTTPPath:   "/prod/tags/{resource-arn}",
590	}
591
592	if input == nil {
593		input = &CreateTagsInput{}
594	}
595
596	output = &CreateTagsOutput{}
597	req = c.newRequest(op, input, output)
598	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
599	return
600}
601
602// CreateTags API operation for AWS Elemental MediaLive.
603//
604// Create tags for a resource
605//
606// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
607// with awserr.Error's Code and Message methods to get detailed information about
608// the error.
609//
610// See the AWS API reference guide for AWS Elemental MediaLive's
611// API operation CreateTags for usage and error information.
612//
613// Returned Error Types:
614//   * NotFoundException
615//
616//   * BadRequestException
617//
618//   * InternalServerErrorException
619//
620//   * ForbiddenException
621//
622// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/CreateTags
623func (c *MediaLive) CreateTags(input *CreateTagsInput) (*CreateTagsOutput, error) {
624	req, out := c.CreateTagsRequest(input)
625	return out, req.Send()
626}
627
628// CreateTagsWithContext is the same as CreateTags with the addition of
629// the ability to pass a context and additional request options.
630//
631// See CreateTags for details on how to use this API operation.
632//
633// The context must be non-nil and will be used for request cancellation. If
634// the context is nil a panic will occur. In the future the SDK may create
635// sub-contexts for http.Requests. See https://golang.org/pkg/context/
636// for more information on using Contexts.
637func (c *MediaLive) CreateTagsWithContext(ctx aws.Context, input *CreateTagsInput, opts ...request.Option) (*CreateTagsOutput, error) {
638	req, out := c.CreateTagsRequest(input)
639	req.SetContext(ctx)
640	req.ApplyOptions(opts...)
641	return out, req.Send()
642}
643
644const opDeleteChannel = "DeleteChannel"
645
646// DeleteChannelRequest generates a "aws/request.Request" representing the
647// client's request for the DeleteChannel operation. The "output" return
648// value will be populated with the request's response once the request completes
649// successfully.
650//
651// Use "Send" method on the returned Request to send the API call to the service.
652// the "output" return value is not valid until after Send returns without error.
653//
654// See DeleteChannel for more information on using the DeleteChannel
655// API call, and error handling.
656//
657// This method is useful when you want to inject custom logic or configuration
658// into the SDK's request lifecycle. Such as custom headers, or retry logic.
659//
660//
661//    // Example sending a request using the DeleteChannelRequest method.
662//    req, resp := client.DeleteChannelRequest(params)
663//
664//    err := req.Send()
665//    if err == nil { // resp is now filled
666//        fmt.Println(resp)
667//    }
668//
669// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteChannel
670func (c *MediaLive) DeleteChannelRequest(input *DeleteChannelInput) (req *request.Request, output *DeleteChannelOutput) {
671	op := &request.Operation{
672		Name:       opDeleteChannel,
673		HTTPMethod: "DELETE",
674		HTTPPath:   "/prod/channels/{channelId}",
675	}
676
677	if input == nil {
678		input = &DeleteChannelInput{}
679	}
680
681	output = &DeleteChannelOutput{}
682	req = c.newRequest(op, input, output)
683	return
684}
685
686// DeleteChannel API operation for AWS Elemental MediaLive.
687//
688// Starts deletion of channel. The associated outputs are also deleted.
689//
690// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
691// with awserr.Error's Code and Message methods to get detailed information about
692// the error.
693//
694// See the AWS API reference guide for AWS Elemental MediaLive's
695// API operation DeleteChannel for usage and error information.
696//
697// Returned Error Types:
698//   * BadRequestException
699//
700//   * InternalServerErrorException
701//
702//   * ForbiddenException
703//
704//   * BadGatewayException
705//
706//   * NotFoundException
707//
708//   * GatewayTimeoutException
709//
710//   * TooManyRequestsException
711//
712//   * ConflictException
713//
714// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteChannel
715func (c *MediaLive) DeleteChannel(input *DeleteChannelInput) (*DeleteChannelOutput, error) {
716	req, out := c.DeleteChannelRequest(input)
717	return out, req.Send()
718}
719
720// DeleteChannelWithContext is the same as DeleteChannel with the addition of
721// the ability to pass a context and additional request options.
722//
723// See DeleteChannel for details on how to use this API operation.
724//
725// The context must be non-nil and will be used for request cancellation. If
726// the context is nil a panic will occur. In the future the SDK may create
727// sub-contexts for http.Requests. See https://golang.org/pkg/context/
728// for more information on using Contexts.
729func (c *MediaLive) DeleteChannelWithContext(ctx aws.Context, input *DeleteChannelInput, opts ...request.Option) (*DeleteChannelOutput, error) {
730	req, out := c.DeleteChannelRequest(input)
731	req.SetContext(ctx)
732	req.ApplyOptions(opts...)
733	return out, req.Send()
734}
735
736const opDeleteInput = "DeleteInput"
737
738// DeleteInputRequest generates a "aws/request.Request" representing the
739// client's request for the DeleteInput operation. The "output" return
740// value will be populated with the request's response once the request completes
741// successfully.
742//
743// Use "Send" method on the returned Request to send the API call to the service.
744// the "output" return value is not valid until after Send returns without error.
745//
746// See DeleteInput for more information on using the DeleteInput
747// API call, and error handling.
748//
749// This method is useful when you want to inject custom logic or configuration
750// into the SDK's request lifecycle. Such as custom headers, or retry logic.
751//
752//
753//    // Example sending a request using the DeleteInputRequest method.
754//    req, resp := client.DeleteInputRequest(params)
755//
756//    err := req.Send()
757//    if err == nil { // resp is now filled
758//        fmt.Println(resp)
759//    }
760//
761// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteInput
762func (c *MediaLive) DeleteInputRequest(input *DeleteInputInput) (req *request.Request, output *DeleteInputOutput) {
763	op := &request.Operation{
764		Name:       opDeleteInput,
765		HTTPMethod: "DELETE",
766		HTTPPath:   "/prod/inputs/{inputId}",
767	}
768
769	if input == nil {
770		input = &DeleteInputInput{}
771	}
772
773	output = &DeleteInputOutput{}
774	req = c.newRequest(op, input, output)
775	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
776	return
777}
778
779// DeleteInput API operation for AWS Elemental MediaLive.
780//
781// Deletes the input end point
782//
783// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
784// with awserr.Error's Code and Message methods to get detailed information about
785// the error.
786//
787// See the AWS API reference guide for AWS Elemental MediaLive's
788// API operation DeleteInput for usage and error information.
789//
790// Returned Error Types:
791//   * BadRequestException
792//
793//   * InternalServerErrorException
794//
795//   * ForbiddenException
796//
797//   * BadGatewayException
798//
799//   * NotFoundException
800//
801//   * GatewayTimeoutException
802//
803//   * TooManyRequestsException
804//
805//   * ConflictException
806//
807// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteInput
808func (c *MediaLive) DeleteInput(input *DeleteInputInput) (*DeleteInputOutput, error) {
809	req, out := c.DeleteInputRequest(input)
810	return out, req.Send()
811}
812
813// DeleteInputWithContext is the same as DeleteInput with the addition of
814// the ability to pass a context and additional request options.
815//
816// See DeleteInput for details on how to use this API operation.
817//
818// The context must be non-nil and will be used for request cancellation. If
819// the context is nil a panic will occur. In the future the SDK may create
820// sub-contexts for http.Requests. See https://golang.org/pkg/context/
821// for more information on using Contexts.
822func (c *MediaLive) DeleteInputWithContext(ctx aws.Context, input *DeleteInputInput, opts ...request.Option) (*DeleteInputOutput, error) {
823	req, out := c.DeleteInputRequest(input)
824	req.SetContext(ctx)
825	req.ApplyOptions(opts...)
826	return out, req.Send()
827}
828
829const opDeleteInputSecurityGroup = "DeleteInputSecurityGroup"
830
831// DeleteInputSecurityGroupRequest generates a "aws/request.Request" representing the
832// client's request for the DeleteInputSecurityGroup operation. The "output" return
833// value will be populated with the request's response once the request completes
834// successfully.
835//
836// Use "Send" method on the returned Request to send the API call to the service.
837// the "output" return value is not valid until after Send returns without error.
838//
839// See DeleteInputSecurityGroup for more information on using the DeleteInputSecurityGroup
840// API call, and error handling.
841//
842// This method is useful when you want to inject custom logic or configuration
843// into the SDK's request lifecycle. Such as custom headers, or retry logic.
844//
845//
846//    // Example sending a request using the DeleteInputSecurityGroupRequest method.
847//    req, resp := client.DeleteInputSecurityGroupRequest(params)
848//
849//    err := req.Send()
850//    if err == nil { // resp is now filled
851//        fmt.Println(resp)
852//    }
853//
854// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteInputSecurityGroup
855func (c *MediaLive) DeleteInputSecurityGroupRequest(input *DeleteInputSecurityGroupInput) (req *request.Request, output *DeleteInputSecurityGroupOutput) {
856	op := &request.Operation{
857		Name:       opDeleteInputSecurityGroup,
858		HTTPMethod: "DELETE",
859		HTTPPath:   "/prod/inputSecurityGroups/{inputSecurityGroupId}",
860	}
861
862	if input == nil {
863		input = &DeleteInputSecurityGroupInput{}
864	}
865
866	output = &DeleteInputSecurityGroupOutput{}
867	req = c.newRequest(op, input, output)
868	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
869	return
870}
871
872// DeleteInputSecurityGroup API operation for AWS Elemental MediaLive.
873//
874// Deletes an Input Security Group
875//
876// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
877// with awserr.Error's Code and Message methods to get detailed information about
878// the error.
879//
880// See the AWS API reference guide for AWS Elemental MediaLive's
881// API operation DeleteInputSecurityGroup for usage and error information.
882//
883// Returned Error Types:
884//   * BadRequestException
885//
886//   * InternalServerErrorException
887//
888//   * ForbiddenException
889//
890//   * BadGatewayException
891//
892//   * NotFoundException
893//
894//   * GatewayTimeoutException
895//
896//   * TooManyRequestsException
897//
898// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteInputSecurityGroup
899func (c *MediaLive) DeleteInputSecurityGroup(input *DeleteInputSecurityGroupInput) (*DeleteInputSecurityGroupOutput, error) {
900	req, out := c.DeleteInputSecurityGroupRequest(input)
901	return out, req.Send()
902}
903
904// DeleteInputSecurityGroupWithContext is the same as DeleteInputSecurityGroup with the addition of
905// the ability to pass a context and additional request options.
906//
907// See DeleteInputSecurityGroup for details on how to use this API operation.
908//
909// The context must be non-nil and will be used for request cancellation. If
910// the context is nil a panic will occur. In the future the SDK may create
911// sub-contexts for http.Requests. See https://golang.org/pkg/context/
912// for more information on using Contexts.
913func (c *MediaLive) DeleteInputSecurityGroupWithContext(ctx aws.Context, input *DeleteInputSecurityGroupInput, opts ...request.Option) (*DeleteInputSecurityGroupOutput, error) {
914	req, out := c.DeleteInputSecurityGroupRequest(input)
915	req.SetContext(ctx)
916	req.ApplyOptions(opts...)
917	return out, req.Send()
918}
919
920const opDeleteMultiplex = "DeleteMultiplex"
921
922// DeleteMultiplexRequest generates a "aws/request.Request" representing the
923// client's request for the DeleteMultiplex operation. The "output" return
924// value will be populated with the request's response once the request completes
925// successfully.
926//
927// Use "Send" method on the returned Request to send the API call to the service.
928// the "output" return value is not valid until after Send returns without error.
929//
930// See DeleteMultiplex for more information on using the DeleteMultiplex
931// API call, and error handling.
932//
933// This method is useful when you want to inject custom logic or configuration
934// into the SDK's request lifecycle. Such as custom headers, or retry logic.
935//
936//
937//    // Example sending a request using the DeleteMultiplexRequest method.
938//    req, resp := client.DeleteMultiplexRequest(params)
939//
940//    err := req.Send()
941//    if err == nil { // resp is now filled
942//        fmt.Println(resp)
943//    }
944//
945// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteMultiplex
946func (c *MediaLive) DeleteMultiplexRequest(input *DeleteMultiplexInput) (req *request.Request, output *DeleteMultiplexOutput) {
947	op := &request.Operation{
948		Name:       opDeleteMultiplex,
949		HTTPMethod: "DELETE",
950		HTTPPath:   "/prod/multiplexes/{multiplexId}",
951	}
952
953	if input == nil {
954		input = &DeleteMultiplexInput{}
955	}
956
957	output = &DeleteMultiplexOutput{}
958	req = c.newRequest(op, input, output)
959	return
960}
961
962// DeleteMultiplex API operation for AWS Elemental MediaLive.
963//
964// Delete a multiplex. The multiplex must be idle.
965//
966// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
967// with awserr.Error's Code and Message methods to get detailed information about
968// the error.
969//
970// See the AWS API reference guide for AWS Elemental MediaLive's
971// API operation DeleteMultiplex for usage and error information.
972//
973// Returned Error Types:
974//   * BadRequestException
975//
976//   * InternalServerErrorException
977//
978//   * ForbiddenException
979//
980//   * BadGatewayException
981//
982//   * NotFoundException
983//
984//   * GatewayTimeoutException
985//
986//   * TooManyRequestsException
987//
988//   * ConflictException
989//
990// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteMultiplex
991func (c *MediaLive) DeleteMultiplex(input *DeleteMultiplexInput) (*DeleteMultiplexOutput, error) {
992	req, out := c.DeleteMultiplexRequest(input)
993	return out, req.Send()
994}
995
996// DeleteMultiplexWithContext is the same as DeleteMultiplex with the addition of
997// the ability to pass a context and additional request options.
998//
999// See DeleteMultiplex for details on how to use this API operation.
1000//
1001// The context must be non-nil and will be used for request cancellation. If
1002// the context is nil a panic will occur. In the future the SDK may create
1003// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1004// for more information on using Contexts.
1005func (c *MediaLive) DeleteMultiplexWithContext(ctx aws.Context, input *DeleteMultiplexInput, opts ...request.Option) (*DeleteMultiplexOutput, error) {
1006	req, out := c.DeleteMultiplexRequest(input)
1007	req.SetContext(ctx)
1008	req.ApplyOptions(opts...)
1009	return out, req.Send()
1010}
1011
1012const opDeleteMultiplexProgram = "DeleteMultiplexProgram"
1013
1014// DeleteMultiplexProgramRequest generates a "aws/request.Request" representing the
1015// client's request for the DeleteMultiplexProgram operation. The "output" return
1016// value will be populated with the request's response once the request completes
1017// successfully.
1018//
1019// Use "Send" method on the returned Request to send the API call to the service.
1020// the "output" return value is not valid until after Send returns without error.
1021//
1022// See DeleteMultiplexProgram for more information on using the DeleteMultiplexProgram
1023// API call, and error handling.
1024//
1025// This method is useful when you want to inject custom logic or configuration
1026// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1027//
1028//
1029//    // Example sending a request using the DeleteMultiplexProgramRequest method.
1030//    req, resp := client.DeleteMultiplexProgramRequest(params)
1031//
1032//    err := req.Send()
1033//    if err == nil { // resp is now filled
1034//        fmt.Println(resp)
1035//    }
1036//
1037// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteMultiplexProgram
1038func (c *MediaLive) DeleteMultiplexProgramRequest(input *DeleteMultiplexProgramInput) (req *request.Request, output *DeleteMultiplexProgramOutput) {
1039	op := &request.Operation{
1040		Name:       opDeleteMultiplexProgram,
1041		HTTPMethod: "DELETE",
1042		HTTPPath:   "/prod/multiplexes/{multiplexId}/programs/{programName}",
1043	}
1044
1045	if input == nil {
1046		input = &DeleteMultiplexProgramInput{}
1047	}
1048
1049	output = &DeleteMultiplexProgramOutput{}
1050	req = c.newRequest(op, input, output)
1051	return
1052}
1053
1054// DeleteMultiplexProgram API operation for AWS Elemental MediaLive.
1055//
1056// Delete a program from a multiplex.
1057//
1058// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1059// with awserr.Error's Code and Message methods to get detailed information about
1060// the error.
1061//
1062// See the AWS API reference guide for AWS Elemental MediaLive's
1063// API operation DeleteMultiplexProgram for usage and error information.
1064//
1065// Returned Error Types:
1066//   * BadRequestException
1067//
1068//   * InternalServerErrorException
1069//
1070//   * ForbiddenException
1071//
1072//   * BadGatewayException
1073//
1074//   * NotFoundException
1075//
1076//   * GatewayTimeoutException
1077//
1078//   * TooManyRequestsException
1079//
1080//   * ConflictException
1081//
1082// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteMultiplexProgram
1083func (c *MediaLive) DeleteMultiplexProgram(input *DeleteMultiplexProgramInput) (*DeleteMultiplexProgramOutput, error) {
1084	req, out := c.DeleteMultiplexProgramRequest(input)
1085	return out, req.Send()
1086}
1087
1088// DeleteMultiplexProgramWithContext is the same as DeleteMultiplexProgram with the addition of
1089// the ability to pass a context and additional request options.
1090//
1091// See DeleteMultiplexProgram for details on how to use this API operation.
1092//
1093// The context must be non-nil and will be used for request cancellation. If
1094// the context is nil a panic will occur. In the future the SDK may create
1095// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1096// for more information on using Contexts.
1097func (c *MediaLive) DeleteMultiplexProgramWithContext(ctx aws.Context, input *DeleteMultiplexProgramInput, opts ...request.Option) (*DeleteMultiplexProgramOutput, error) {
1098	req, out := c.DeleteMultiplexProgramRequest(input)
1099	req.SetContext(ctx)
1100	req.ApplyOptions(opts...)
1101	return out, req.Send()
1102}
1103
1104const opDeleteReservation = "DeleteReservation"
1105
1106// DeleteReservationRequest generates a "aws/request.Request" representing the
1107// client's request for the DeleteReservation operation. The "output" return
1108// value will be populated with the request's response once the request completes
1109// successfully.
1110//
1111// Use "Send" method on the returned Request to send the API call to the service.
1112// the "output" return value is not valid until after Send returns without error.
1113//
1114// See DeleteReservation for more information on using the DeleteReservation
1115// API call, and error handling.
1116//
1117// This method is useful when you want to inject custom logic or configuration
1118// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1119//
1120//
1121//    // Example sending a request using the DeleteReservationRequest method.
1122//    req, resp := client.DeleteReservationRequest(params)
1123//
1124//    err := req.Send()
1125//    if err == nil { // resp is now filled
1126//        fmt.Println(resp)
1127//    }
1128//
1129// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteReservation
1130func (c *MediaLive) DeleteReservationRequest(input *DeleteReservationInput) (req *request.Request, output *DeleteReservationOutput) {
1131	op := &request.Operation{
1132		Name:       opDeleteReservation,
1133		HTTPMethod: "DELETE",
1134		HTTPPath:   "/prod/reservations/{reservationId}",
1135	}
1136
1137	if input == nil {
1138		input = &DeleteReservationInput{}
1139	}
1140
1141	output = &DeleteReservationOutput{}
1142	req = c.newRequest(op, input, output)
1143	return
1144}
1145
1146// DeleteReservation API operation for AWS Elemental MediaLive.
1147//
1148// Delete an expired reservation.
1149//
1150// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1151// with awserr.Error's Code and Message methods to get detailed information about
1152// the error.
1153//
1154// See the AWS API reference guide for AWS Elemental MediaLive's
1155// API operation DeleteReservation for usage and error information.
1156//
1157// Returned Error Types:
1158//   * BadRequestException
1159//
1160//   * InternalServerErrorException
1161//
1162//   * ForbiddenException
1163//
1164//   * BadGatewayException
1165//
1166//   * NotFoundException
1167//
1168//   * GatewayTimeoutException
1169//
1170//   * TooManyRequestsException
1171//
1172//   * ConflictException
1173//
1174// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteReservation
1175func (c *MediaLive) DeleteReservation(input *DeleteReservationInput) (*DeleteReservationOutput, error) {
1176	req, out := c.DeleteReservationRequest(input)
1177	return out, req.Send()
1178}
1179
1180// DeleteReservationWithContext is the same as DeleteReservation with the addition of
1181// the ability to pass a context and additional request options.
1182//
1183// See DeleteReservation for details on how to use this API operation.
1184//
1185// The context must be non-nil and will be used for request cancellation. If
1186// the context is nil a panic will occur. In the future the SDK may create
1187// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1188// for more information on using Contexts.
1189func (c *MediaLive) DeleteReservationWithContext(ctx aws.Context, input *DeleteReservationInput, opts ...request.Option) (*DeleteReservationOutput, error) {
1190	req, out := c.DeleteReservationRequest(input)
1191	req.SetContext(ctx)
1192	req.ApplyOptions(opts...)
1193	return out, req.Send()
1194}
1195
1196const opDeleteSchedule = "DeleteSchedule"
1197
1198// DeleteScheduleRequest generates a "aws/request.Request" representing the
1199// client's request for the DeleteSchedule operation. The "output" return
1200// value will be populated with the request's response once the request completes
1201// successfully.
1202//
1203// Use "Send" method on the returned Request to send the API call to the service.
1204// the "output" return value is not valid until after Send returns without error.
1205//
1206// See DeleteSchedule for more information on using the DeleteSchedule
1207// API call, and error handling.
1208//
1209// This method is useful when you want to inject custom logic or configuration
1210// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1211//
1212//
1213//    // Example sending a request using the DeleteScheduleRequest method.
1214//    req, resp := client.DeleteScheduleRequest(params)
1215//
1216//    err := req.Send()
1217//    if err == nil { // resp is now filled
1218//        fmt.Println(resp)
1219//    }
1220//
1221// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteSchedule
1222func (c *MediaLive) DeleteScheduleRequest(input *DeleteScheduleInput) (req *request.Request, output *DeleteScheduleOutput) {
1223	op := &request.Operation{
1224		Name:       opDeleteSchedule,
1225		HTTPMethod: "DELETE",
1226		HTTPPath:   "/prod/channels/{channelId}/schedule",
1227	}
1228
1229	if input == nil {
1230		input = &DeleteScheduleInput{}
1231	}
1232
1233	output = &DeleteScheduleOutput{}
1234	req = c.newRequest(op, input, output)
1235	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1236	return
1237}
1238
1239// DeleteSchedule API operation for AWS Elemental MediaLive.
1240//
1241// Delete all schedule actions on a channel.
1242//
1243// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1244// with awserr.Error's Code and Message methods to get detailed information about
1245// the error.
1246//
1247// See the AWS API reference guide for AWS Elemental MediaLive's
1248// API operation DeleteSchedule for usage and error information.
1249//
1250// Returned Error Types:
1251//   * BadRequestException
1252//
1253//   * InternalServerErrorException
1254//
1255//   * ForbiddenException
1256//
1257//   * BadGatewayException
1258//
1259//   * NotFoundException
1260//
1261//   * GatewayTimeoutException
1262//
1263//   * TooManyRequestsException
1264//
1265// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteSchedule
1266func (c *MediaLive) DeleteSchedule(input *DeleteScheduleInput) (*DeleteScheduleOutput, error) {
1267	req, out := c.DeleteScheduleRequest(input)
1268	return out, req.Send()
1269}
1270
1271// DeleteScheduleWithContext is the same as DeleteSchedule with the addition of
1272// the ability to pass a context and additional request options.
1273//
1274// See DeleteSchedule for details on how to use this API operation.
1275//
1276// The context must be non-nil and will be used for request cancellation. If
1277// the context is nil a panic will occur. In the future the SDK may create
1278// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1279// for more information on using Contexts.
1280func (c *MediaLive) DeleteScheduleWithContext(ctx aws.Context, input *DeleteScheduleInput, opts ...request.Option) (*DeleteScheduleOutput, error) {
1281	req, out := c.DeleteScheduleRequest(input)
1282	req.SetContext(ctx)
1283	req.ApplyOptions(opts...)
1284	return out, req.Send()
1285}
1286
1287const opDeleteTags = "DeleteTags"
1288
1289// DeleteTagsRequest generates a "aws/request.Request" representing the
1290// client's request for the DeleteTags operation. The "output" return
1291// value will be populated with the request's response once the request completes
1292// successfully.
1293//
1294// Use "Send" method on the returned Request to send the API call to the service.
1295// the "output" return value is not valid until after Send returns without error.
1296//
1297// See DeleteTags for more information on using the DeleteTags
1298// API call, and error handling.
1299//
1300// This method is useful when you want to inject custom logic or configuration
1301// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1302//
1303//
1304//    // Example sending a request using the DeleteTagsRequest method.
1305//    req, resp := client.DeleteTagsRequest(params)
1306//
1307//    err := req.Send()
1308//    if err == nil { // resp is now filled
1309//        fmt.Println(resp)
1310//    }
1311//
1312// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteTags
1313func (c *MediaLive) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput) {
1314	op := &request.Operation{
1315		Name:       opDeleteTags,
1316		HTTPMethod: "DELETE",
1317		HTTPPath:   "/prod/tags/{resource-arn}",
1318	}
1319
1320	if input == nil {
1321		input = &DeleteTagsInput{}
1322	}
1323
1324	output = &DeleteTagsOutput{}
1325	req = c.newRequest(op, input, output)
1326	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1327	return
1328}
1329
1330// DeleteTags API operation for AWS Elemental MediaLive.
1331//
1332// Removes tags for a resource
1333//
1334// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1335// with awserr.Error's Code and Message methods to get detailed information about
1336// the error.
1337//
1338// See the AWS API reference guide for AWS Elemental MediaLive's
1339// API operation DeleteTags for usage and error information.
1340//
1341// Returned Error Types:
1342//   * NotFoundException
1343//
1344//   * BadRequestException
1345//
1346//   * InternalServerErrorException
1347//
1348//   * ForbiddenException
1349//
1350// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DeleteTags
1351func (c *MediaLive) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error) {
1352	req, out := c.DeleteTagsRequest(input)
1353	return out, req.Send()
1354}
1355
1356// DeleteTagsWithContext is the same as DeleteTags with the addition of
1357// the ability to pass a context and additional request options.
1358//
1359// See DeleteTags for details on how to use this API operation.
1360//
1361// The context must be non-nil and will be used for request cancellation. If
1362// the context is nil a panic will occur. In the future the SDK may create
1363// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1364// for more information on using Contexts.
1365func (c *MediaLive) DeleteTagsWithContext(ctx aws.Context, input *DeleteTagsInput, opts ...request.Option) (*DeleteTagsOutput, error) {
1366	req, out := c.DeleteTagsRequest(input)
1367	req.SetContext(ctx)
1368	req.ApplyOptions(opts...)
1369	return out, req.Send()
1370}
1371
1372const opDescribeChannel = "DescribeChannel"
1373
1374// DescribeChannelRequest generates a "aws/request.Request" representing the
1375// client's request for the DescribeChannel operation. The "output" return
1376// value will be populated with the request's response once the request completes
1377// successfully.
1378//
1379// Use "Send" method on the returned Request to send the API call to the service.
1380// the "output" return value is not valid until after Send returns without error.
1381//
1382// See DescribeChannel for more information on using the DescribeChannel
1383// API call, and error handling.
1384//
1385// This method is useful when you want to inject custom logic or configuration
1386// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1387//
1388//
1389//    // Example sending a request using the DescribeChannelRequest method.
1390//    req, resp := client.DescribeChannelRequest(params)
1391//
1392//    err := req.Send()
1393//    if err == nil { // resp is now filled
1394//        fmt.Println(resp)
1395//    }
1396//
1397// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeChannel
1398func (c *MediaLive) DescribeChannelRequest(input *DescribeChannelInput) (req *request.Request, output *DescribeChannelOutput) {
1399	op := &request.Operation{
1400		Name:       opDescribeChannel,
1401		HTTPMethod: "GET",
1402		HTTPPath:   "/prod/channels/{channelId}",
1403	}
1404
1405	if input == nil {
1406		input = &DescribeChannelInput{}
1407	}
1408
1409	output = &DescribeChannelOutput{}
1410	req = c.newRequest(op, input, output)
1411	return
1412}
1413
1414// DescribeChannel API operation for AWS Elemental MediaLive.
1415//
1416// Gets details about a channel
1417//
1418// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1419// with awserr.Error's Code and Message methods to get detailed information about
1420// the error.
1421//
1422// See the AWS API reference guide for AWS Elemental MediaLive's
1423// API operation DescribeChannel for usage and error information.
1424//
1425// Returned Error Types:
1426//   * BadRequestException
1427//
1428//   * InternalServerErrorException
1429//
1430//   * ForbiddenException
1431//
1432//   * BadGatewayException
1433//
1434//   * NotFoundException
1435//
1436//   * GatewayTimeoutException
1437//
1438//   * TooManyRequestsException
1439//
1440// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeChannel
1441func (c *MediaLive) DescribeChannel(input *DescribeChannelInput) (*DescribeChannelOutput, error) {
1442	req, out := c.DescribeChannelRequest(input)
1443	return out, req.Send()
1444}
1445
1446// DescribeChannelWithContext is the same as DescribeChannel with the addition of
1447// the ability to pass a context and additional request options.
1448//
1449// See DescribeChannel for details on how to use this API operation.
1450//
1451// The context must be non-nil and will be used for request cancellation. If
1452// the context is nil a panic will occur. In the future the SDK may create
1453// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1454// for more information on using Contexts.
1455func (c *MediaLive) DescribeChannelWithContext(ctx aws.Context, input *DescribeChannelInput, opts ...request.Option) (*DescribeChannelOutput, error) {
1456	req, out := c.DescribeChannelRequest(input)
1457	req.SetContext(ctx)
1458	req.ApplyOptions(opts...)
1459	return out, req.Send()
1460}
1461
1462const opDescribeInput = "DescribeInput"
1463
1464// DescribeInputRequest generates a "aws/request.Request" representing the
1465// client's request for the DescribeInput operation. The "output" return
1466// value will be populated with the request's response once the request completes
1467// successfully.
1468//
1469// Use "Send" method on the returned Request to send the API call to the service.
1470// the "output" return value is not valid until after Send returns without error.
1471//
1472// See DescribeInput for more information on using the DescribeInput
1473// API call, and error handling.
1474//
1475// This method is useful when you want to inject custom logic or configuration
1476// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1477//
1478//
1479//    // Example sending a request using the DescribeInputRequest method.
1480//    req, resp := client.DescribeInputRequest(params)
1481//
1482//    err := req.Send()
1483//    if err == nil { // resp is now filled
1484//        fmt.Println(resp)
1485//    }
1486//
1487// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeInput
1488func (c *MediaLive) DescribeInputRequest(input *DescribeInputInput) (req *request.Request, output *DescribeInputOutput) {
1489	op := &request.Operation{
1490		Name:       opDescribeInput,
1491		HTTPMethod: "GET",
1492		HTTPPath:   "/prod/inputs/{inputId}",
1493	}
1494
1495	if input == nil {
1496		input = &DescribeInputInput{}
1497	}
1498
1499	output = &DescribeInputOutput{}
1500	req = c.newRequest(op, input, output)
1501	return
1502}
1503
1504// DescribeInput API operation for AWS Elemental MediaLive.
1505//
1506// Produces details about an input
1507//
1508// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1509// with awserr.Error's Code and Message methods to get detailed information about
1510// the error.
1511//
1512// See the AWS API reference guide for AWS Elemental MediaLive's
1513// API operation DescribeInput for usage and error information.
1514//
1515// Returned Error Types:
1516//   * BadRequestException
1517//
1518//   * InternalServerErrorException
1519//
1520//   * ForbiddenException
1521//
1522//   * BadGatewayException
1523//
1524//   * NotFoundException
1525//
1526//   * GatewayTimeoutException
1527//
1528//   * TooManyRequestsException
1529//
1530// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeInput
1531func (c *MediaLive) DescribeInput(input *DescribeInputInput) (*DescribeInputOutput, error) {
1532	req, out := c.DescribeInputRequest(input)
1533	return out, req.Send()
1534}
1535
1536// DescribeInputWithContext is the same as DescribeInput with the addition of
1537// the ability to pass a context and additional request options.
1538//
1539// See DescribeInput for details on how to use this API operation.
1540//
1541// The context must be non-nil and will be used for request cancellation. If
1542// the context is nil a panic will occur. In the future the SDK may create
1543// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1544// for more information on using Contexts.
1545func (c *MediaLive) DescribeInputWithContext(ctx aws.Context, input *DescribeInputInput, opts ...request.Option) (*DescribeInputOutput, error) {
1546	req, out := c.DescribeInputRequest(input)
1547	req.SetContext(ctx)
1548	req.ApplyOptions(opts...)
1549	return out, req.Send()
1550}
1551
1552const opDescribeInputDevice = "DescribeInputDevice"
1553
1554// DescribeInputDeviceRequest generates a "aws/request.Request" representing the
1555// client's request for the DescribeInputDevice operation. The "output" return
1556// value will be populated with the request's response once the request completes
1557// successfully.
1558//
1559// Use "Send" method on the returned Request to send the API call to the service.
1560// the "output" return value is not valid until after Send returns without error.
1561//
1562// See DescribeInputDevice for more information on using the DescribeInputDevice
1563// API call, and error handling.
1564//
1565// This method is useful when you want to inject custom logic or configuration
1566// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1567//
1568//
1569//    // Example sending a request using the DescribeInputDeviceRequest method.
1570//    req, resp := client.DescribeInputDeviceRequest(params)
1571//
1572//    err := req.Send()
1573//    if err == nil { // resp is now filled
1574//        fmt.Println(resp)
1575//    }
1576//
1577// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeInputDevice
1578func (c *MediaLive) DescribeInputDeviceRequest(input *DescribeInputDeviceInput) (req *request.Request, output *DescribeInputDeviceOutput) {
1579	op := &request.Operation{
1580		Name:       opDescribeInputDevice,
1581		HTTPMethod: "GET",
1582		HTTPPath:   "/prod/inputDevices/{inputDeviceId}",
1583	}
1584
1585	if input == nil {
1586		input = &DescribeInputDeviceInput{}
1587	}
1588
1589	output = &DescribeInputDeviceOutput{}
1590	req = c.newRequest(op, input, output)
1591	return
1592}
1593
1594// DescribeInputDevice API operation for AWS Elemental MediaLive.
1595//
1596// Gets the details for the input device
1597//
1598// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1599// with awserr.Error's Code and Message methods to get detailed information about
1600// the error.
1601//
1602// See the AWS API reference guide for AWS Elemental MediaLive's
1603// API operation DescribeInputDevice for usage and error information.
1604//
1605// Returned Error Types:
1606//   * BadRequestException
1607//
1608//   * InternalServerErrorException
1609//
1610//   * ForbiddenException
1611//
1612//   * BadGatewayException
1613//
1614//   * NotFoundException
1615//
1616//   * GatewayTimeoutException
1617//
1618//   * TooManyRequestsException
1619//
1620// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeInputDevice
1621func (c *MediaLive) DescribeInputDevice(input *DescribeInputDeviceInput) (*DescribeInputDeviceOutput, error) {
1622	req, out := c.DescribeInputDeviceRequest(input)
1623	return out, req.Send()
1624}
1625
1626// DescribeInputDeviceWithContext is the same as DescribeInputDevice with the addition of
1627// the ability to pass a context and additional request options.
1628//
1629// See DescribeInputDevice for details on how to use this API operation.
1630//
1631// The context must be non-nil and will be used for request cancellation. If
1632// the context is nil a panic will occur. In the future the SDK may create
1633// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1634// for more information on using Contexts.
1635func (c *MediaLive) DescribeInputDeviceWithContext(ctx aws.Context, input *DescribeInputDeviceInput, opts ...request.Option) (*DescribeInputDeviceOutput, error) {
1636	req, out := c.DescribeInputDeviceRequest(input)
1637	req.SetContext(ctx)
1638	req.ApplyOptions(opts...)
1639	return out, req.Send()
1640}
1641
1642const opDescribeInputSecurityGroup = "DescribeInputSecurityGroup"
1643
1644// DescribeInputSecurityGroupRequest generates a "aws/request.Request" representing the
1645// client's request for the DescribeInputSecurityGroup operation. The "output" return
1646// value will be populated with the request's response once the request completes
1647// successfully.
1648//
1649// Use "Send" method on the returned Request to send the API call to the service.
1650// the "output" return value is not valid until after Send returns without error.
1651//
1652// See DescribeInputSecurityGroup for more information on using the DescribeInputSecurityGroup
1653// API call, and error handling.
1654//
1655// This method is useful when you want to inject custom logic or configuration
1656// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1657//
1658//
1659//    // Example sending a request using the DescribeInputSecurityGroupRequest method.
1660//    req, resp := client.DescribeInputSecurityGroupRequest(params)
1661//
1662//    err := req.Send()
1663//    if err == nil { // resp is now filled
1664//        fmt.Println(resp)
1665//    }
1666//
1667// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeInputSecurityGroup
1668func (c *MediaLive) DescribeInputSecurityGroupRequest(input *DescribeInputSecurityGroupInput) (req *request.Request, output *DescribeInputSecurityGroupOutput) {
1669	op := &request.Operation{
1670		Name:       opDescribeInputSecurityGroup,
1671		HTTPMethod: "GET",
1672		HTTPPath:   "/prod/inputSecurityGroups/{inputSecurityGroupId}",
1673	}
1674
1675	if input == nil {
1676		input = &DescribeInputSecurityGroupInput{}
1677	}
1678
1679	output = &DescribeInputSecurityGroupOutput{}
1680	req = c.newRequest(op, input, output)
1681	return
1682}
1683
1684// DescribeInputSecurityGroup API operation for AWS Elemental MediaLive.
1685//
1686// Produces a summary of an Input Security Group
1687//
1688// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1689// with awserr.Error's Code and Message methods to get detailed information about
1690// the error.
1691//
1692// See the AWS API reference guide for AWS Elemental MediaLive's
1693// API operation DescribeInputSecurityGroup for usage and error information.
1694//
1695// Returned Error Types:
1696//   * BadRequestException
1697//
1698//   * InternalServerErrorException
1699//
1700//   * ForbiddenException
1701//
1702//   * BadGatewayException
1703//
1704//   * NotFoundException
1705//
1706//   * GatewayTimeoutException
1707//
1708//   * TooManyRequestsException
1709//
1710// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeInputSecurityGroup
1711func (c *MediaLive) DescribeInputSecurityGroup(input *DescribeInputSecurityGroupInput) (*DescribeInputSecurityGroupOutput, error) {
1712	req, out := c.DescribeInputSecurityGroupRequest(input)
1713	return out, req.Send()
1714}
1715
1716// DescribeInputSecurityGroupWithContext is the same as DescribeInputSecurityGroup with the addition of
1717// the ability to pass a context and additional request options.
1718//
1719// See DescribeInputSecurityGroup for details on how to use this API operation.
1720//
1721// The context must be non-nil and will be used for request cancellation. If
1722// the context is nil a panic will occur. In the future the SDK may create
1723// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1724// for more information on using Contexts.
1725func (c *MediaLive) DescribeInputSecurityGroupWithContext(ctx aws.Context, input *DescribeInputSecurityGroupInput, opts ...request.Option) (*DescribeInputSecurityGroupOutput, error) {
1726	req, out := c.DescribeInputSecurityGroupRequest(input)
1727	req.SetContext(ctx)
1728	req.ApplyOptions(opts...)
1729	return out, req.Send()
1730}
1731
1732const opDescribeMultiplex = "DescribeMultiplex"
1733
1734// DescribeMultiplexRequest generates a "aws/request.Request" representing the
1735// client's request for the DescribeMultiplex operation. The "output" return
1736// value will be populated with the request's response once the request completes
1737// successfully.
1738//
1739// Use "Send" method on the returned Request to send the API call to the service.
1740// the "output" return value is not valid until after Send returns without error.
1741//
1742// See DescribeMultiplex for more information on using the DescribeMultiplex
1743// API call, and error handling.
1744//
1745// This method is useful when you want to inject custom logic or configuration
1746// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1747//
1748//
1749//    // Example sending a request using the DescribeMultiplexRequest method.
1750//    req, resp := client.DescribeMultiplexRequest(params)
1751//
1752//    err := req.Send()
1753//    if err == nil { // resp is now filled
1754//        fmt.Println(resp)
1755//    }
1756//
1757// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeMultiplex
1758func (c *MediaLive) DescribeMultiplexRequest(input *DescribeMultiplexInput) (req *request.Request, output *DescribeMultiplexOutput) {
1759	op := &request.Operation{
1760		Name:       opDescribeMultiplex,
1761		HTTPMethod: "GET",
1762		HTTPPath:   "/prod/multiplexes/{multiplexId}",
1763	}
1764
1765	if input == nil {
1766		input = &DescribeMultiplexInput{}
1767	}
1768
1769	output = &DescribeMultiplexOutput{}
1770	req = c.newRequest(op, input, output)
1771	return
1772}
1773
1774// DescribeMultiplex API operation for AWS Elemental MediaLive.
1775//
1776// Gets details about a multiplex.
1777//
1778// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1779// with awserr.Error's Code and Message methods to get detailed information about
1780// the error.
1781//
1782// See the AWS API reference guide for AWS Elemental MediaLive's
1783// API operation DescribeMultiplex for usage and error information.
1784//
1785// Returned Error Types:
1786//   * BadRequestException
1787//
1788//   * InternalServerErrorException
1789//
1790//   * ForbiddenException
1791//
1792//   * BadGatewayException
1793//
1794//   * NotFoundException
1795//
1796//   * GatewayTimeoutException
1797//
1798//   * TooManyRequestsException
1799//
1800// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeMultiplex
1801func (c *MediaLive) DescribeMultiplex(input *DescribeMultiplexInput) (*DescribeMultiplexOutput, error) {
1802	req, out := c.DescribeMultiplexRequest(input)
1803	return out, req.Send()
1804}
1805
1806// DescribeMultiplexWithContext is the same as DescribeMultiplex with the addition of
1807// the ability to pass a context and additional request options.
1808//
1809// See DescribeMultiplex for details on how to use this API operation.
1810//
1811// The context must be non-nil and will be used for request cancellation. If
1812// the context is nil a panic will occur. In the future the SDK may create
1813// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1814// for more information on using Contexts.
1815func (c *MediaLive) DescribeMultiplexWithContext(ctx aws.Context, input *DescribeMultiplexInput, opts ...request.Option) (*DescribeMultiplexOutput, error) {
1816	req, out := c.DescribeMultiplexRequest(input)
1817	req.SetContext(ctx)
1818	req.ApplyOptions(opts...)
1819	return out, req.Send()
1820}
1821
1822const opDescribeMultiplexProgram = "DescribeMultiplexProgram"
1823
1824// DescribeMultiplexProgramRequest generates a "aws/request.Request" representing the
1825// client's request for the DescribeMultiplexProgram operation. The "output" return
1826// value will be populated with the request's response once the request completes
1827// successfully.
1828//
1829// Use "Send" method on the returned Request to send the API call to the service.
1830// the "output" return value is not valid until after Send returns without error.
1831//
1832// See DescribeMultiplexProgram for more information on using the DescribeMultiplexProgram
1833// API call, and error handling.
1834//
1835// This method is useful when you want to inject custom logic or configuration
1836// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1837//
1838//
1839//    // Example sending a request using the DescribeMultiplexProgramRequest method.
1840//    req, resp := client.DescribeMultiplexProgramRequest(params)
1841//
1842//    err := req.Send()
1843//    if err == nil { // resp is now filled
1844//        fmt.Println(resp)
1845//    }
1846//
1847// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeMultiplexProgram
1848func (c *MediaLive) DescribeMultiplexProgramRequest(input *DescribeMultiplexProgramInput) (req *request.Request, output *DescribeMultiplexProgramOutput) {
1849	op := &request.Operation{
1850		Name:       opDescribeMultiplexProgram,
1851		HTTPMethod: "GET",
1852		HTTPPath:   "/prod/multiplexes/{multiplexId}/programs/{programName}",
1853	}
1854
1855	if input == nil {
1856		input = &DescribeMultiplexProgramInput{}
1857	}
1858
1859	output = &DescribeMultiplexProgramOutput{}
1860	req = c.newRequest(op, input, output)
1861	return
1862}
1863
1864// DescribeMultiplexProgram API operation for AWS Elemental MediaLive.
1865//
1866// Get the details for a program in a multiplex.
1867//
1868// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1869// with awserr.Error's Code and Message methods to get detailed information about
1870// the error.
1871//
1872// See the AWS API reference guide for AWS Elemental MediaLive's
1873// API operation DescribeMultiplexProgram for usage and error information.
1874//
1875// Returned Error Types:
1876//   * BadRequestException
1877//
1878//   * InternalServerErrorException
1879//
1880//   * ForbiddenException
1881//
1882//   * BadGatewayException
1883//
1884//   * NotFoundException
1885//
1886//   * GatewayTimeoutException
1887//
1888//   * TooManyRequestsException
1889//
1890// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeMultiplexProgram
1891func (c *MediaLive) DescribeMultiplexProgram(input *DescribeMultiplexProgramInput) (*DescribeMultiplexProgramOutput, error) {
1892	req, out := c.DescribeMultiplexProgramRequest(input)
1893	return out, req.Send()
1894}
1895
1896// DescribeMultiplexProgramWithContext is the same as DescribeMultiplexProgram with the addition of
1897// the ability to pass a context and additional request options.
1898//
1899// See DescribeMultiplexProgram for details on how to use this API operation.
1900//
1901// The context must be non-nil and will be used for request cancellation. If
1902// the context is nil a panic will occur. In the future the SDK may create
1903// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1904// for more information on using Contexts.
1905func (c *MediaLive) DescribeMultiplexProgramWithContext(ctx aws.Context, input *DescribeMultiplexProgramInput, opts ...request.Option) (*DescribeMultiplexProgramOutput, error) {
1906	req, out := c.DescribeMultiplexProgramRequest(input)
1907	req.SetContext(ctx)
1908	req.ApplyOptions(opts...)
1909	return out, req.Send()
1910}
1911
1912const opDescribeOffering = "DescribeOffering"
1913
1914// DescribeOfferingRequest generates a "aws/request.Request" representing the
1915// client's request for the DescribeOffering operation. The "output" return
1916// value will be populated with the request's response once the request completes
1917// successfully.
1918//
1919// Use "Send" method on the returned Request to send the API call to the service.
1920// the "output" return value is not valid until after Send returns without error.
1921//
1922// See DescribeOffering for more information on using the DescribeOffering
1923// API call, and error handling.
1924//
1925// This method is useful when you want to inject custom logic or configuration
1926// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1927//
1928//
1929//    // Example sending a request using the DescribeOfferingRequest method.
1930//    req, resp := client.DescribeOfferingRequest(params)
1931//
1932//    err := req.Send()
1933//    if err == nil { // resp is now filled
1934//        fmt.Println(resp)
1935//    }
1936//
1937// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeOffering
1938func (c *MediaLive) DescribeOfferingRequest(input *DescribeOfferingInput) (req *request.Request, output *DescribeOfferingOutput) {
1939	op := &request.Operation{
1940		Name:       opDescribeOffering,
1941		HTTPMethod: "GET",
1942		HTTPPath:   "/prod/offerings/{offeringId}",
1943	}
1944
1945	if input == nil {
1946		input = &DescribeOfferingInput{}
1947	}
1948
1949	output = &DescribeOfferingOutput{}
1950	req = c.newRequest(op, input, output)
1951	return
1952}
1953
1954// DescribeOffering API operation for AWS Elemental MediaLive.
1955//
1956// Get details for an offering.
1957//
1958// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1959// with awserr.Error's Code and Message methods to get detailed information about
1960// the error.
1961//
1962// See the AWS API reference guide for AWS Elemental MediaLive's
1963// API operation DescribeOffering for usage and error information.
1964//
1965// Returned Error Types:
1966//   * BadRequestException
1967//
1968//   * InternalServerErrorException
1969//
1970//   * ForbiddenException
1971//
1972//   * BadGatewayException
1973//
1974//   * NotFoundException
1975//
1976//   * GatewayTimeoutException
1977//
1978//   * TooManyRequestsException
1979//
1980// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeOffering
1981func (c *MediaLive) DescribeOffering(input *DescribeOfferingInput) (*DescribeOfferingOutput, error) {
1982	req, out := c.DescribeOfferingRequest(input)
1983	return out, req.Send()
1984}
1985
1986// DescribeOfferingWithContext is the same as DescribeOffering with the addition of
1987// the ability to pass a context and additional request options.
1988//
1989// See DescribeOffering for details on how to use this API operation.
1990//
1991// The context must be non-nil and will be used for request cancellation. If
1992// the context is nil a panic will occur. In the future the SDK may create
1993// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1994// for more information on using Contexts.
1995func (c *MediaLive) DescribeOfferingWithContext(ctx aws.Context, input *DescribeOfferingInput, opts ...request.Option) (*DescribeOfferingOutput, error) {
1996	req, out := c.DescribeOfferingRequest(input)
1997	req.SetContext(ctx)
1998	req.ApplyOptions(opts...)
1999	return out, req.Send()
2000}
2001
2002const opDescribeReservation = "DescribeReservation"
2003
2004// DescribeReservationRequest generates a "aws/request.Request" representing the
2005// client's request for the DescribeReservation operation. The "output" return
2006// value will be populated with the request's response once the request completes
2007// successfully.
2008//
2009// Use "Send" method on the returned Request to send the API call to the service.
2010// the "output" return value is not valid until after Send returns without error.
2011//
2012// See DescribeReservation for more information on using the DescribeReservation
2013// API call, and error handling.
2014//
2015// This method is useful when you want to inject custom logic or configuration
2016// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2017//
2018//
2019//    // Example sending a request using the DescribeReservationRequest method.
2020//    req, resp := client.DescribeReservationRequest(params)
2021//
2022//    err := req.Send()
2023//    if err == nil { // resp is now filled
2024//        fmt.Println(resp)
2025//    }
2026//
2027// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeReservation
2028func (c *MediaLive) DescribeReservationRequest(input *DescribeReservationInput) (req *request.Request, output *DescribeReservationOutput) {
2029	op := &request.Operation{
2030		Name:       opDescribeReservation,
2031		HTTPMethod: "GET",
2032		HTTPPath:   "/prod/reservations/{reservationId}",
2033	}
2034
2035	if input == nil {
2036		input = &DescribeReservationInput{}
2037	}
2038
2039	output = &DescribeReservationOutput{}
2040	req = c.newRequest(op, input, output)
2041	return
2042}
2043
2044// DescribeReservation API operation for AWS Elemental MediaLive.
2045//
2046// Get details for a reservation.
2047//
2048// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2049// with awserr.Error's Code and Message methods to get detailed information about
2050// the error.
2051//
2052// See the AWS API reference guide for AWS Elemental MediaLive's
2053// API operation DescribeReservation for usage and error information.
2054//
2055// Returned Error Types:
2056//   * BadRequestException
2057//
2058//   * InternalServerErrorException
2059//
2060//   * ForbiddenException
2061//
2062//   * BadGatewayException
2063//
2064//   * NotFoundException
2065//
2066//   * GatewayTimeoutException
2067//
2068//   * TooManyRequestsException
2069//
2070// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeReservation
2071func (c *MediaLive) DescribeReservation(input *DescribeReservationInput) (*DescribeReservationOutput, error) {
2072	req, out := c.DescribeReservationRequest(input)
2073	return out, req.Send()
2074}
2075
2076// DescribeReservationWithContext is the same as DescribeReservation with the addition of
2077// the ability to pass a context and additional request options.
2078//
2079// See DescribeReservation for details on how to use this API operation.
2080//
2081// The context must be non-nil and will be used for request cancellation. If
2082// the context is nil a panic will occur. In the future the SDK may create
2083// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2084// for more information on using Contexts.
2085func (c *MediaLive) DescribeReservationWithContext(ctx aws.Context, input *DescribeReservationInput, opts ...request.Option) (*DescribeReservationOutput, error) {
2086	req, out := c.DescribeReservationRequest(input)
2087	req.SetContext(ctx)
2088	req.ApplyOptions(opts...)
2089	return out, req.Send()
2090}
2091
2092const opDescribeSchedule = "DescribeSchedule"
2093
2094// DescribeScheduleRequest generates a "aws/request.Request" representing the
2095// client's request for the DescribeSchedule operation. The "output" return
2096// value will be populated with the request's response once the request completes
2097// successfully.
2098//
2099// Use "Send" method on the returned Request to send the API call to the service.
2100// the "output" return value is not valid until after Send returns without error.
2101//
2102// See DescribeSchedule for more information on using the DescribeSchedule
2103// API call, and error handling.
2104//
2105// This method is useful when you want to inject custom logic or configuration
2106// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2107//
2108//
2109//    // Example sending a request using the DescribeScheduleRequest method.
2110//    req, resp := client.DescribeScheduleRequest(params)
2111//
2112//    err := req.Send()
2113//    if err == nil { // resp is now filled
2114//        fmt.Println(resp)
2115//    }
2116//
2117// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeSchedule
2118func (c *MediaLive) DescribeScheduleRequest(input *DescribeScheduleInput) (req *request.Request, output *DescribeScheduleOutput) {
2119	op := &request.Operation{
2120		Name:       opDescribeSchedule,
2121		HTTPMethod: "GET",
2122		HTTPPath:   "/prod/channels/{channelId}/schedule",
2123		Paginator: &request.Paginator{
2124			InputTokens:     []string{"NextToken"},
2125			OutputTokens:    []string{"NextToken"},
2126			LimitToken:      "MaxResults",
2127			TruncationToken: "",
2128		},
2129	}
2130
2131	if input == nil {
2132		input = &DescribeScheduleInput{}
2133	}
2134
2135	output = &DescribeScheduleOutput{}
2136	req = c.newRequest(op, input, output)
2137	return
2138}
2139
2140// DescribeSchedule API operation for AWS Elemental MediaLive.
2141//
2142// Get a channel schedule
2143//
2144// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2145// with awserr.Error's Code and Message methods to get detailed information about
2146// the error.
2147//
2148// See the AWS API reference guide for AWS Elemental MediaLive's
2149// API operation DescribeSchedule for usage and error information.
2150//
2151// Returned Error Types:
2152//   * BadRequestException
2153//
2154//   * InternalServerErrorException
2155//
2156//   * ForbiddenException
2157//
2158//   * BadGatewayException
2159//
2160//   * NotFoundException
2161//
2162//   * GatewayTimeoutException
2163//
2164//   * TooManyRequestsException
2165//
2166// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/DescribeSchedule
2167func (c *MediaLive) DescribeSchedule(input *DescribeScheduleInput) (*DescribeScheduleOutput, error) {
2168	req, out := c.DescribeScheduleRequest(input)
2169	return out, req.Send()
2170}
2171
2172// DescribeScheduleWithContext is the same as DescribeSchedule with the addition of
2173// the ability to pass a context and additional request options.
2174//
2175// See DescribeSchedule for details on how to use this API operation.
2176//
2177// The context must be non-nil and will be used for request cancellation. If
2178// the context is nil a panic will occur. In the future the SDK may create
2179// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2180// for more information on using Contexts.
2181func (c *MediaLive) DescribeScheduleWithContext(ctx aws.Context, input *DescribeScheduleInput, opts ...request.Option) (*DescribeScheduleOutput, error) {
2182	req, out := c.DescribeScheduleRequest(input)
2183	req.SetContext(ctx)
2184	req.ApplyOptions(opts...)
2185	return out, req.Send()
2186}
2187
2188// DescribeSchedulePages iterates over the pages of a DescribeSchedule operation,
2189// calling the "fn" function with the response data for each page. To stop
2190// iterating, return false from the fn function.
2191//
2192// See DescribeSchedule method for more information on how to use this operation.
2193//
2194// Note: This operation can generate multiple requests to a service.
2195//
2196//    // Example iterating over at most 3 pages of a DescribeSchedule operation.
2197//    pageNum := 0
2198//    err := client.DescribeSchedulePages(params,
2199//        func(page *medialive.DescribeScheduleOutput, lastPage bool) bool {
2200//            pageNum++
2201//            fmt.Println(page)
2202//            return pageNum <= 3
2203//        })
2204//
2205func (c *MediaLive) DescribeSchedulePages(input *DescribeScheduleInput, fn func(*DescribeScheduleOutput, bool) bool) error {
2206	return c.DescribeSchedulePagesWithContext(aws.BackgroundContext(), input, fn)
2207}
2208
2209// DescribeSchedulePagesWithContext same as DescribeSchedulePages except
2210// it takes a Context and allows setting request options on the pages.
2211//
2212// The context must be non-nil and will be used for request cancellation. If
2213// the context is nil a panic will occur. In the future the SDK may create
2214// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2215// for more information on using Contexts.
2216func (c *MediaLive) DescribeSchedulePagesWithContext(ctx aws.Context, input *DescribeScheduleInput, fn func(*DescribeScheduleOutput, bool) bool, opts ...request.Option) error {
2217	p := request.Pagination{
2218		NewRequest: func() (*request.Request, error) {
2219			var inCpy *DescribeScheduleInput
2220			if input != nil {
2221				tmp := *input
2222				inCpy = &tmp
2223			}
2224			req, _ := c.DescribeScheduleRequest(inCpy)
2225			req.SetContext(ctx)
2226			req.ApplyOptions(opts...)
2227			return req, nil
2228		},
2229	}
2230
2231	for p.Next() {
2232		if !fn(p.Page().(*DescribeScheduleOutput), !p.HasNextPage()) {
2233			break
2234		}
2235	}
2236
2237	return p.Err()
2238}
2239
2240const opListChannels = "ListChannels"
2241
2242// ListChannelsRequest generates a "aws/request.Request" representing the
2243// client's request for the ListChannels operation. The "output" return
2244// value will be populated with the request's response once the request completes
2245// successfully.
2246//
2247// Use "Send" method on the returned Request to send the API call to the service.
2248// the "output" return value is not valid until after Send returns without error.
2249//
2250// See ListChannels for more information on using the ListChannels
2251// API call, and error handling.
2252//
2253// This method is useful when you want to inject custom logic or configuration
2254// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2255//
2256//
2257//    // Example sending a request using the ListChannelsRequest method.
2258//    req, resp := client.ListChannelsRequest(params)
2259//
2260//    err := req.Send()
2261//    if err == nil { // resp is now filled
2262//        fmt.Println(resp)
2263//    }
2264//
2265// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListChannels
2266func (c *MediaLive) ListChannelsRequest(input *ListChannelsInput) (req *request.Request, output *ListChannelsOutput) {
2267	op := &request.Operation{
2268		Name:       opListChannels,
2269		HTTPMethod: "GET",
2270		HTTPPath:   "/prod/channels",
2271		Paginator: &request.Paginator{
2272			InputTokens:     []string{"NextToken"},
2273			OutputTokens:    []string{"NextToken"},
2274			LimitToken:      "MaxResults",
2275			TruncationToken: "",
2276		},
2277	}
2278
2279	if input == nil {
2280		input = &ListChannelsInput{}
2281	}
2282
2283	output = &ListChannelsOutput{}
2284	req = c.newRequest(op, input, output)
2285	return
2286}
2287
2288// ListChannels API operation for AWS Elemental MediaLive.
2289//
2290// Produces list of channels that have been created
2291//
2292// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2293// with awserr.Error's Code and Message methods to get detailed information about
2294// the error.
2295//
2296// See the AWS API reference guide for AWS Elemental MediaLive's
2297// API operation ListChannels for usage and error information.
2298//
2299// Returned Error Types:
2300//   * BadRequestException
2301//
2302//   * InternalServerErrorException
2303//
2304//   * ForbiddenException
2305//
2306//   * BadGatewayException
2307//
2308//   * GatewayTimeoutException
2309//
2310//   * TooManyRequestsException
2311//
2312// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListChannels
2313func (c *MediaLive) ListChannels(input *ListChannelsInput) (*ListChannelsOutput, error) {
2314	req, out := c.ListChannelsRequest(input)
2315	return out, req.Send()
2316}
2317
2318// ListChannelsWithContext is the same as ListChannels with the addition of
2319// the ability to pass a context and additional request options.
2320//
2321// See ListChannels for details on how to use this API operation.
2322//
2323// The context must be non-nil and will be used for request cancellation. If
2324// the context is nil a panic will occur. In the future the SDK may create
2325// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2326// for more information on using Contexts.
2327func (c *MediaLive) ListChannelsWithContext(ctx aws.Context, input *ListChannelsInput, opts ...request.Option) (*ListChannelsOutput, error) {
2328	req, out := c.ListChannelsRequest(input)
2329	req.SetContext(ctx)
2330	req.ApplyOptions(opts...)
2331	return out, req.Send()
2332}
2333
2334// ListChannelsPages iterates over the pages of a ListChannels operation,
2335// calling the "fn" function with the response data for each page. To stop
2336// iterating, return false from the fn function.
2337//
2338// See ListChannels method for more information on how to use this operation.
2339//
2340// Note: This operation can generate multiple requests to a service.
2341//
2342//    // Example iterating over at most 3 pages of a ListChannels operation.
2343//    pageNum := 0
2344//    err := client.ListChannelsPages(params,
2345//        func(page *medialive.ListChannelsOutput, lastPage bool) bool {
2346//            pageNum++
2347//            fmt.Println(page)
2348//            return pageNum <= 3
2349//        })
2350//
2351func (c *MediaLive) ListChannelsPages(input *ListChannelsInput, fn func(*ListChannelsOutput, bool) bool) error {
2352	return c.ListChannelsPagesWithContext(aws.BackgroundContext(), input, fn)
2353}
2354
2355// ListChannelsPagesWithContext same as ListChannelsPages except
2356// it takes a Context and allows setting request options on the pages.
2357//
2358// The context must be non-nil and will be used for request cancellation. If
2359// the context is nil a panic will occur. In the future the SDK may create
2360// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2361// for more information on using Contexts.
2362func (c *MediaLive) ListChannelsPagesWithContext(ctx aws.Context, input *ListChannelsInput, fn func(*ListChannelsOutput, bool) bool, opts ...request.Option) error {
2363	p := request.Pagination{
2364		NewRequest: func() (*request.Request, error) {
2365			var inCpy *ListChannelsInput
2366			if input != nil {
2367				tmp := *input
2368				inCpy = &tmp
2369			}
2370			req, _ := c.ListChannelsRequest(inCpy)
2371			req.SetContext(ctx)
2372			req.ApplyOptions(opts...)
2373			return req, nil
2374		},
2375	}
2376
2377	for p.Next() {
2378		if !fn(p.Page().(*ListChannelsOutput), !p.HasNextPage()) {
2379			break
2380		}
2381	}
2382
2383	return p.Err()
2384}
2385
2386const opListInputDevices = "ListInputDevices"
2387
2388// ListInputDevicesRequest generates a "aws/request.Request" representing the
2389// client's request for the ListInputDevices operation. The "output" return
2390// value will be populated with the request's response once the request completes
2391// successfully.
2392//
2393// Use "Send" method on the returned Request to send the API call to the service.
2394// the "output" return value is not valid until after Send returns without error.
2395//
2396// See ListInputDevices for more information on using the ListInputDevices
2397// API call, and error handling.
2398//
2399// This method is useful when you want to inject custom logic or configuration
2400// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2401//
2402//
2403//    // Example sending a request using the ListInputDevicesRequest method.
2404//    req, resp := client.ListInputDevicesRequest(params)
2405//
2406//    err := req.Send()
2407//    if err == nil { // resp is now filled
2408//        fmt.Println(resp)
2409//    }
2410//
2411// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListInputDevices
2412func (c *MediaLive) ListInputDevicesRequest(input *ListInputDevicesInput) (req *request.Request, output *ListInputDevicesOutput) {
2413	op := &request.Operation{
2414		Name:       opListInputDevices,
2415		HTTPMethod: "GET",
2416		HTTPPath:   "/prod/inputDevices",
2417		Paginator: &request.Paginator{
2418			InputTokens:     []string{"NextToken"},
2419			OutputTokens:    []string{"NextToken"},
2420			LimitToken:      "MaxResults",
2421			TruncationToken: "",
2422		},
2423	}
2424
2425	if input == nil {
2426		input = &ListInputDevicesInput{}
2427	}
2428
2429	output = &ListInputDevicesOutput{}
2430	req = c.newRequest(op, input, output)
2431	return
2432}
2433
2434// ListInputDevices API operation for AWS Elemental MediaLive.
2435//
2436// List input devices
2437//
2438// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2439// with awserr.Error's Code and Message methods to get detailed information about
2440// the error.
2441//
2442// See the AWS API reference guide for AWS Elemental MediaLive's
2443// API operation ListInputDevices for usage and error information.
2444//
2445// Returned Error Types:
2446//   * BadRequestException
2447//
2448//   * InternalServerErrorException
2449//
2450//   * ForbiddenException
2451//
2452//   * BadGatewayException
2453//
2454//   * GatewayTimeoutException
2455//
2456//   * TooManyRequestsException
2457//
2458// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListInputDevices
2459func (c *MediaLive) ListInputDevices(input *ListInputDevicesInput) (*ListInputDevicesOutput, error) {
2460	req, out := c.ListInputDevicesRequest(input)
2461	return out, req.Send()
2462}
2463
2464// ListInputDevicesWithContext is the same as ListInputDevices with the addition of
2465// the ability to pass a context and additional request options.
2466//
2467// See ListInputDevices for details on how to use this API operation.
2468//
2469// The context must be non-nil and will be used for request cancellation. If
2470// the context is nil a panic will occur. In the future the SDK may create
2471// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2472// for more information on using Contexts.
2473func (c *MediaLive) ListInputDevicesWithContext(ctx aws.Context, input *ListInputDevicesInput, opts ...request.Option) (*ListInputDevicesOutput, error) {
2474	req, out := c.ListInputDevicesRequest(input)
2475	req.SetContext(ctx)
2476	req.ApplyOptions(opts...)
2477	return out, req.Send()
2478}
2479
2480// ListInputDevicesPages iterates over the pages of a ListInputDevices operation,
2481// calling the "fn" function with the response data for each page. To stop
2482// iterating, return false from the fn function.
2483//
2484// See ListInputDevices method for more information on how to use this operation.
2485//
2486// Note: This operation can generate multiple requests to a service.
2487//
2488//    // Example iterating over at most 3 pages of a ListInputDevices operation.
2489//    pageNum := 0
2490//    err := client.ListInputDevicesPages(params,
2491//        func(page *medialive.ListInputDevicesOutput, lastPage bool) bool {
2492//            pageNum++
2493//            fmt.Println(page)
2494//            return pageNum <= 3
2495//        })
2496//
2497func (c *MediaLive) ListInputDevicesPages(input *ListInputDevicesInput, fn func(*ListInputDevicesOutput, bool) bool) error {
2498	return c.ListInputDevicesPagesWithContext(aws.BackgroundContext(), input, fn)
2499}
2500
2501// ListInputDevicesPagesWithContext same as ListInputDevicesPages except
2502// it takes a Context and allows setting request options on the pages.
2503//
2504// The context must be non-nil and will be used for request cancellation. If
2505// the context is nil a panic will occur. In the future the SDK may create
2506// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2507// for more information on using Contexts.
2508func (c *MediaLive) ListInputDevicesPagesWithContext(ctx aws.Context, input *ListInputDevicesInput, fn func(*ListInputDevicesOutput, bool) bool, opts ...request.Option) error {
2509	p := request.Pagination{
2510		NewRequest: func() (*request.Request, error) {
2511			var inCpy *ListInputDevicesInput
2512			if input != nil {
2513				tmp := *input
2514				inCpy = &tmp
2515			}
2516			req, _ := c.ListInputDevicesRequest(inCpy)
2517			req.SetContext(ctx)
2518			req.ApplyOptions(opts...)
2519			return req, nil
2520		},
2521	}
2522
2523	for p.Next() {
2524		if !fn(p.Page().(*ListInputDevicesOutput), !p.HasNextPage()) {
2525			break
2526		}
2527	}
2528
2529	return p.Err()
2530}
2531
2532const opListInputSecurityGroups = "ListInputSecurityGroups"
2533
2534// ListInputSecurityGroupsRequest generates a "aws/request.Request" representing the
2535// client's request for the ListInputSecurityGroups operation. The "output" return
2536// value will be populated with the request's response once the request completes
2537// successfully.
2538//
2539// Use "Send" method on the returned Request to send the API call to the service.
2540// the "output" return value is not valid until after Send returns without error.
2541//
2542// See ListInputSecurityGroups for more information on using the ListInputSecurityGroups
2543// API call, and error handling.
2544//
2545// This method is useful when you want to inject custom logic or configuration
2546// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2547//
2548//
2549//    // Example sending a request using the ListInputSecurityGroupsRequest method.
2550//    req, resp := client.ListInputSecurityGroupsRequest(params)
2551//
2552//    err := req.Send()
2553//    if err == nil { // resp is now filled
2554//        fmt.Println(resp)
2555//    }
2556//
2557// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListInputSecurityGroups
2558func (c *MediaLive) ListInputSecurityGroupsRequest(input *ListInputSecurityGroupsInput) (req *request.Request, output *ListInputSecurityGroupsOutput) {
2559	op := &request.Operation{
2560		Name:       opListInputSecurityGroups,
2561		HTTPMethod: "GET",
2562		HTTPPath:   "/prod/inputSecurityGroups",
2563		Paginator: &request.Paginator{
2564			InputTokens:     []string{"NextToken"},
2565			OutputTokens:    []string{"NextToken"},
2566			LimitToken:      "MaxResults",
2567			TruncationToken: "",
2568		},
2569	}
2570
2571	if input == nil {
2572		input = &ListInputSecurityGroupsInput{}
2573	}
2574
2575	output = &ListInputSecurityGroupsOutput{}
2576	req = c.newRequest(op, input, output)
2577	return
2578}
2579
2580// ListInputSecurityGroups API operation for AWS Elemental MediaLive.
2581//
2582// Produces a list of Input Security Groups for an account
2583//
2584// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2585// with awserr.Error's Code and Message methods to get detailed information about
2586// the error.
2587//
2588// See the AWS API reference guide for AWS Elemental MediaLive's
2589// API operation ListInputSecurityGroups for usage and error information.
2590//
2591// Returned Error Types:
2592//   * BadRequestException
2593//
2594//   * InternalServerErrorException
2595//
2596//   * ForbiddenException
2597//
2598//   * BadGatewayException
2599//
2600//   * GatewayTimeoutException
2601//
2602//   * TooManyRequestsException
2603//
2604// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListInputSecurityGroups
2605func (c *MediaLive) ListInputSecurityGroups(input *ListInputSecurityGroupsInput) (*ListInputSecurityGroupsOutput, error) {
2606	req, out := c.ListInputSecurityGroupsRequest(input)
2607	return out, req.Send()
2608}
2609
2610// ListInputSecurityGroupsWithContext is the same as ListInputSecurityGroups with the addition of
2611// the ability to pass a context and additional request options.
2612//
2613// See ListInputSecurityGroups for details on how to use this API operation.
2614//
2615// The context must be non-nil and will be used for request cancellation. If
2616// the context is nil a panic will occur. In the future the SDK may create
2617// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2618// for more information on using Contexts.
2619func (c *MediaLive) ListInputSecurityGroupsWithContext(ctx aws.Context, input *ListInputSecurityGroupsInput, opts ...request.Option) (*ListInputSecurityGroupsOutput, error) {
2620	req, out := c.ListInputSecurityGroupsRequest(input)
2621	req.SetContext(ctx)
2622	req.ApplyOptions(opts...)
2623	return out, req.Send()
2624}
2625
2626// ListInputSecurityGroupsPages iterates over the pages of a ListInputSecurityGroups operation,
2627// calling the "fn" function with the response data for each page. To stop
2628// iterating, return false from the fn function.
2629//
2630// See ListInputSecurityGroups method for more information on how to use this operation.
2631//
2632// Note: This operation can generate multiple requests to a service.
2633//
2634//    // Example iterating over at most 3 pages of a ListInputSecurityGroups operation.
2635//    pageNum := 0
2636//    err := client.ListInputSecurityGroupsPages(params,
2637//        func(page *medialive.ListInputSecurityGroupsOutput, lastPage bool) bool {
2638//            pageNum++
2639//            fmt.Println(page)
2640//            return pageNum <= 3
2641//        })
2642//
2643func (c *MediaLive) ListInputSecurityGroupsPages(input *ListInputSecurityGroupsInput, fn func(*ListInputSecurityGroupsOutput, bool) bool) error {
2644	return c.ListInputSecurityGroupsPagesWithContext(aws.BackgroundContext(), input, fn)
2645}
2646
2647// ListInputSecurityGroupsPagesWithContext same as ListInputSecurityGroupsPages except
2648// it takes a Context and allows setting request options on the pages.
2649//
2650// The context must be non-nil and will be used for request cancellation. If
2651// the context is nil a panic will occur. In the future the SDK may create
2652// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2653// for more information on using Contexts.
2654func (c *MediaLive) ListInputSecurityGroupsPagesWithContext(ctx aws.Context, input *ListInputSecurityGroupsInput, fn func(*ListInputSecurityGroupsOutput, bool) bool, opts ...request.Option) error {
2655	p := request.Pagination{
2656		NewRequest: func() (*request.Request, error) {
2657			var inCpy *ListInputSecurityGroupsInput
2658			if input != nil {
2659				tmp := *input
2660				inCpy = &tmp
2661			}
2662			req, _ := c.ListInputSecurityGroupsRequest(inCpy)
2663			req.SetContext(ctx)
2664			req.ApplyOptions(opts...)
2665			return req, nil
2666		},
2667	}
2668
2669	for p.Next() {
2670		if !fn(p.Page().(*ListInputSecurityGroupsOutput), !p.HasNextPage()) {
2671			break
2672		}
2673	}
2674
2675	return p.Err()
2676}
2677
2678const opListInputs = "ListInputs"
2679
2680// ListInputsRequest generates a "aws/request.Request" representing the
2681// client's request for the ListInputs operation. The "output" return
2682// value will be populated with the request's response once the request completes
2683// successfully.
2684//
2685// Use "Send" method on the returned Request to send the API call to the service.
2686// the "output" return value is not valid until after Send returns without error.
2687//
2688// See ListInputs for more information on using the ListInputs
2689// API call, and error handling.
2690//
2691// This method is useful when you want to inject custom logic or configuration
2692// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2693//
2694//
2695//    // Example sending a request using the ListInputsRequest method.
2696//    req, resp := client.ListInputsRequest(params)
2697//
2698//    err := req.Send()
2699//    if err == nil { // resp is now filled
2700//        fmt.Println(resp)
2701//    }
2702//
2703// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListInputs
2704func (c *MediaLive) ListInputsRequest(input *ListInputsInput) (req *request.Request, output *ListInputsOutput) {
2705	op := &request.Operation{
2706		Name:       opListInputs,
2707		HTTPMethod: "GET",
2708		HTTPPath:   "/prod/inputs",
2709		Paginator: &request.Paginator{
2710			InputTokens:     []string{"NextToken"},
2711			OutputTokens:    []string{"NextToken"},
2712			LimitToken:      "MaxResults",
2713			TruncationToken: "",
2714		},
2715	}
2716
2717	if input == nil {
2718		input = &ListInputsInput{}
2719	}
2720
2721	output = &ListInputsOutput{}
2722	req = c.newRequest(op, input, output)
2723	return
2724}
2725
2726// ListInputs API operation for AWS Elemental MediaLive.
2727//
2728// Produces list of inputs that have been created
2729//
2730// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2731// with awserr.Error's Code and Message methods to get detailed information about
2732// the error.
2733//
2734// See the AWS API reference guide for AWS Elemental MediaLive's
2735// API operation ListInputs for usage and error information.
2736//
2737// Returned Error Types:
2738//   * BadRequestException
2739//
2740//   * InternalServerErrorException
2741//
2742//   * ForbiddenException
2743//
2744//   * BadGatewayException
2745//
2746//   * GatewayTimeoutException
2747//
2748//   * TooManyRequestsException
2749//
2750// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListInputs
2751func (c *MediaLive) ListInputs(input *ListInputsInput) (*ListInputsOutput, error) {
2752	req, out := c.ListInputsRequest(input)
2753	return out, req.Send()
2754}
2755
2756// ListInputsWithContext is the same as ListInputs with the addition of
2757// the ability to pass a context and additional request options.
2758//
2759// See ListInputs for details on how to use this API operation.
2760//
2761// The context must be non-nil and will be used for request cancellation. If
2762// the context is nil a panic will occur. In the future the SDK may create
2763// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2764// for more information on using Contexts.
2765func (c *MediaLive) ListInputsWithContext(ctx aws.Context, input *ListInputsInput, opts ...request.Option) (*ListInputsOutput, error) {
2766	req, out := c.ListInputsRequest(input)
2767	req.SetContext(ctx)
2768	req.ApplyOptions(opts...)
2769	return out, req.Send()
2770}
2771
2772// ListInputsPages iterates over the pages of a ListInputs operation,
2773// calling the "fn" function with the response data for each page. To stop
2774// iterating, return false from the fn function.
2775//
2776// See ListInputs method for more information on how to use this operation.
2777//
2778// Note: This operation can generate multiple requests to a service.
2779//
2780//    // Example iterating over at most 3 pages of a ListInputs operation.
2781//    pageNum := 0
2782//    err := client.ListInputsPages(params,
2783//        func(page *medialive.ListInputsOutput, lastPage bool) bool {
2784//            pageNum++
2785//            fmt.Println(page)
2786//            return pageNum <= 3
2787//        })
2788//
2789func (c *MediaLive) ListInputsPages(input *ListInputsInput, fn func(*ListInputsOutput, bool) bool) error {
2790	return c.ListInputsPagesWithContext(aws.BackgroundContext(), input, fn)
2791}
2792
2793// ListInputsPagesWithContext same as ListInputsPages except
2794// it takes a Context and allows setting request options on the pages.
2795//
2796// The context must be non-nil and will be used for request cancellation. If
2797// the context is nil a panic will occur. In the future the SDK may create
2798// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2799// for more information on using Contexts.
2800func (c *MediaLive) ListInputsPagesWithContext(ctx aws.Context, input *ListInputsInput, fn func(*ListInputsOutput, bool) bool, opts ...request.Option) error {
2801	p := request.Pagination{
2802		NewRequest: func() (*request.Request, error) {
2803			var inCpy *ListInputsInput
2804			if input != nil {
2805				tmp := *input
2806				inCpy = &tmp
2807			}
2808			req, _ := c.ListInputsRequest(inCpy)
2809			req.SetContext(ctx)
2810			req.ApplyOptions(opts...)
2811			return req, nil
2812		},
2813	}
2814
2815	for p.Next() {
2816		if !fn(p.Page().(*ListInputsOutput), !p.HasNextPage()) {
2817			break
2818		}
2819	}
2820
2821	return p.Err()
2822}
2823
2824const opListMultiplexPrograms = "ListMultiplexPrograms"
2825
2826// ListMultiplexProgramsRequest generates a "aws/request.Request" representing the
2827// client's request for the ListMultiplexPrograms operation. The "output" return
2828// value will be populated with the request's response once the request completes
2829// successfully.
2830//
2831// Use "Send" method on the returned Request to send the API call to the service.
2832// the "output" return value is not valid until after Send returns without error.
2833//
2834// See ListMultiplexPrograms for more information on using the ListMultiplexPrograms
2835// API call, and error handling.
2836//
2837// This method is useful when you want to inject custom logic or configuration
2838// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2839//
2840//
2841//    // Example sending a request using the ListMultiplexProgramsRequest method.
2842//    req, resp := client.ListMultiplexProgramsRequest(params)
2843//
2844//    err := req.Send()
2845//    if err == nil { // resp is now filled
2846//        fmt.Println(resp)
2847//    }
2848//
2849// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListMultiplexPrograms
2850func (c *MediaLive) ListMultiplexProgramsRequest(input *ListMultiplexProgramsInput) (req *request.Request, output *ListMultiplexProgramsOutput) {
2851	op := &request.Operation{
2852		Name:       opListMultiplexPrograms,
2853		HTTPMethod: "GET",
2854		HTTPPath:   "/prod/multiplexes/{multiplexId}/programs",
2855		Paginator: &request.Paginator{
2856			InputTokens:     []string{"NextToken"},
2857			OutputTokens:    []string{"NextToken"},
2858			LimitToken:      "MaxResults",
2859			TruncationToken: "",
2860		},
2861	}
2862
2863	if input == nil {
2864		input = &ListMultiplexProgramsInput{}
2865	}
2866
2867	output = &ListMultiplexProgramsOutput{}
2868	req = c.newRequest(op, input, output)
2869	return
2870}
2871
2872// ListMultiplexPrograms API operation for AWS Elemental MediaLive.
2873//
2874// List the programs that currently exist for a specific multiplex.
2875//
2876// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2877// with awserr.Error's Code and Message methods to get detailed information about
2878// the error.
2879//
2880// See the AWS API reference guide for AWS Elemental MediaLive's
2881// API operation ListMultiplexPrograms for usage and error information.
2882//
2883// Returned Error Types:
2884//   * BadRequestException
2885//
2886//   * InternalServerErrorException
2887//
2888//   * ForbiddenException
2889//
2890//   * BadGatewayException
2891//
2892//   * NotFoundException
2893//
2894//   * GatewayTimeoutException
2895//
2896//   * TooManyRequestsException
2897//
2898// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListMultiplexPrograms
2899func (c *MediaLive) ListMultiplexPrograms(input *ListMultiplexProgramsInput) (*ListMultiplexProgramsOutput, error) {
2900	req, out := c.ListMultiplexProgramsRequest(input)
2901	return out, req.Send()
2902}
2903
2904// ListMultiplexProgramsWithContext is the same as ListMultiplexPrograms with the addition of
2905// the ability to pass a context and additional request options.
2906//
2907// See ListMultiplexPrograms for details on how to use this API operation.
2908//
2909// The context must be non-nil and will be used for request cancellation. If
2910// the context is nil a panic will occur. In the future the SDK may create
2911// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2912// for more information on using Contexts.
2913func (c *MediaLive) ListMultiplexProgramsWithContext(ctx aws.Context, input *ListMultiplexProgramsInput, opts ...request.Option) (*ListMultiplexProgramsOutput, error) {
2914	req, out := c.ListMultiplexProgramsRequest(input)
2915	req.SetContext(ctx)
2916	req.ApplyOptions(opts...)
2917	return out, req.Send()
2918}
2919
2920// ListMultiplexProgramsPages iterates over the pages of a ListMultiplexPrograms operation,
2921// calling the "fn" function with the response data for each page. To stop
2922// iterating, return false from the fn function.
2923//
2924// See ListMultiplexPrograms method for more information on how to use this operation.
2925//
2926// Note: This operation can generate multiple requests to a service.
2927//
2928//    // Example iterating over at most 3 pages of a ListMultiplexPrograms operation.
2929//    pageNum := 0
2930//    err := client.ListMultiplexProgramsPages(params,
2931//        func(page *medialive.ListMultiplexProgramsOutput, lastPage bool) bool {
2932//            pageNum++
2933//            fmt.Println(page)
2934//            return pageNum <= 3
2935//        })
2936//
2937func (c *MediaLive) ListMultiplexProgramsPages(input *ListMultiplexProgramsInput, fn func(*ListMultiplexProgramsOutput, bool) bool) error {
2938	return c.ListMultiplexProgramsPagesWithContext(aws.BackgroundContext(), input, fn)
2939}
2940
2941// ListMultiplexProgramsPagesWithContext same as ListMultiplexProgramsPages except
2942// it takes a Context and allows setting request options on the pages.
2943//
2944// The context must be non-nil and will be used for request cancellation. If
2945// the context is nil a panic will occur. In the future the SDK may create
2946// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2947// for more information on using Contexts.
2948func (c *MediaLive) ListMultiplexProgramsPagesWithContext(ctx aws.Context, input *ListMultiplexProgramsInput, fn func(*ListMultiplexProgramsOutput, bool) bool, opts ...request.Option) error {
2949	p := request.Pagination{
2950		NewRequest: func() (*request.Request, error) {
2951			var inCpy *ListMultiplexProgramsInput
2952			if input != nil {
2953				tmp := *input
2954				inCpy = &tmp
2955			}
2956			req, _ := c.ListMultiplexProgramsRequest(inCpy)
2957			req.SetContext(ctx)
2958			req.ApplyOptions(opts...)
2959			return req, nil
2960		},
2961	}
2962
2963	for p.Next() {
2964		if !fn(p.Page().(*ListMultiplexProgramsOutput), !p.HasNextPage()) {
2965			break
2966		}
2967	}
2968
2969	return p.Err()
2970}
2971
2972const opListMultiplexes = "ListMultiplexes"
2973
2974// ListMultiplexesRequest generates a "aws/request.Request" representing the
2975// client's request for the ListMultiplexes operation. The "output" return
2976// value will be populated with the request's response once the request completes
2977// successfully.
2978//
2979// Use "Send" method on the returned Request to send the API call to the service.
2980// the "output" return value is not valid until after Send returns without error.
2981//
2982// See ListMultiplexes for more information on using the ListMultiplexes
2983// API call, and error handling.
2984//
2985// This method is useful when you want to inject custom logic or configuration
2986// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2987//
2988//
2989//    // Example sending a request using the ListMultiplexesRequest method.
2990//    req, resp := client.ListMultiplexesRequest(params)
2991//
2992//    err := req.Send()
2993//    if err == nil { // resp is now filled
2994//        fmt.Println(resp)
2995//    }
2996//
2997// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListMultiplexes
2998func (c *MediaLive) ListMultiplexesRequest(input *ListMultiplexesInput) (req *request.Request, output *ListMultiplexesOutput) {
2999	op := &request.Operation{
3000		Name:       opListMultiplexes,
3001		HTTPMethod: "GET",
3002		HTTPPath:   "/prod/multiplexes",
3003		Paginator: &request.Paginator{
3004			InputTokens:     []string{"NextToken"},
3005			OutputTokens:    []string{"NextToken"},
3006			LimitToken:      "MaxResults",
3007			TruncationToken: "",
3008		},
3009	}
3010
3011	if input == nil {
3012		input = &ListMultiplexesInput{}
3013	}
3014
3015	output = &ListMultiplexesOutput{}
3016	req = c.newRequest(op, input, output)
3017	return
3018}
3019
3020// ListMultiplexes API operation for AWS Elemental MediaLive.
3021//
3022// Retrieve a list of the existing multiplexes.
3023//
3024// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3025// with awserr.Error's Code and Message methods to get detailed information about
3026// the error.
3027//
3028// See the AWS API reference guide for AWS Elemental MediaLive's
3029// API operation ListMultiplexes for usage and error information.
3030//
3031// Returned Error Types:
3032//   * BadRequestException
3033//
3034//   * InternalServerErrorException
3035//
3036//   * ForbiddenException
3037//
3038//   * BadGatewayException
3039//
3040//   * GatewayTimeoutException
3041//
3042//   * TooManyRequestsException
3043//
3044// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListMultiplexes
3045func (c *MediaLive) ListMultiplexes(input *ListMultiplexesInput) (*ListMultiplexesOutput, error) {
3046	req, out := c.ListMultiplexesRequest(input)
3047	return out, req.Send()
3048}
3049
3050// ListMultiplexesWithContext is the same as ListMultiplexes with the addition of
3051// the ability to pass a context and additional request options.
3052//
3053// See ListMultiplexes for details on how to use this API operation.
3054//
3055// The context must be non-nil and will be used for request cancellation. If
3056// the context is nil a panic will occur. In the future the SDK may create
3057// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3058// for more information on using Contexts.
3059func (c *MediaLive) ListMultiplexesWithContext(ctx aws.Context, input *ListMultiplexesInput, opts ...request.Option) (*ListMultiplexesOutput, error) {
3060	req, out := c.ListMultiplexesRequest(input)
3061	req.SetContext(ctx)
3062	req.ApplyOptions(opts...)
3063	return out, req.Send()
3064}
3065
3066// ListMultiplexesPages iterates over the pages of a ListMultiplexes operation,
3067// calling the "fn" function with the response data for each page. To stop
3068// iterating, return false from the fn function.
3069//
3070// See ListMultiplexes method for more information on how to use this operation.
3071//
3072// Note: This operation can generate multiple requests to a service.
3073//
3074//    // Example iterating over at most 3 pages of a ListMultiplexes operation.
3075//    pageNum := 0
3076//    err := client.ListMultiplexesPages(params,
3077//        func(page *medialive.ListMultiplexesOutput, lastPage bool) bool {
3078//            pageNum++
3079//            fmt.Println(page)
3080//            return pageNum <= 3
3081//        })
3082//
3083func (c *MediaLive) ListMultiplexesPages(input *ListMultiplexesInput, fn func(*ListMultiplexesOutput, bool) bool) error {
3084	return c.ListMultiplexesPagesWithContext(aws.BackgroundContext(), input, fn)
3085}
3086
3087// ListMultiplexesPagesWithContext same as ListMultiplexesPages except
3088// it takes a Context and allows setting request options on the pages.
3089//
3090// The context must be non-nil and will be used for request cancellation. If
3091// the context is nil a panic will occur. In the future the SDK may create
3092// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3093// for more information on using Contexts.
3094func (c *MediaLive) ListMultiplexesPagesWithContext(ctx aws.Context, input *ListMultiplexesInput, fn func(*ListMultiplexesOutput, bool) bool, opts ...request.Option) error {
3095	p := request.Pagination{
3096		NewRequest: func() (*request.Request, error) {
3097			var inCpy *ListMultiplexesInput
3098			if input != nil {
3099				tmp := *input
3100				inCpy = &tmp
3101			}
3102			req, _ := c.ListMultiplexesRequest(inCpy)
3103			req.SetContext(ctx)
3104			req.ApplyOptions(opts...)
3105			return req, nil
3106		},
3107	}
3108
3109	for p.Next() {
3110		if !fn(p.Page().(*ListMultiplexesOutput), !p.HasNextPage()) {
3111			break
3112		}
3113	}
3114
3115	return p.Err()
3116}
3117
3118const opListOfferings = "ListOfferings"
3119
3120// ListOfferingsRequest generates a "aws/request.Request" representing the
3121// client's request for the ListOfferings operation. The "output" return
3122// value will be populated with the request's response once the request completes
3123// successfully.
3124//
3125// Use "Send" method on the returned Request to send the API call to the service.
3126// the "output" return value is not valid until after Send returns without error.
3127//
3128// See ListOfferings for more information on using the ListOfferings
3129// API call, and error handling.
3130//
3131// This method is useful when you want to inject custom logic or configuration
3132// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3133//
3134//
3135//    // Example sending a request using the ListOfferingsRequest method.
3136//    req, resp := client.ListOfferingsRequest(params)
3137//
3138//    err := req.Send()
3139//    if err == nil { // resp is now filled
3140//        fmt.Println(resp)
3141//    }
3142//
3143// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListOfferings
3144func (c *MediaLive) ListOfferingsRequest(input *ListOfferingsInput) (req *request.Request, output *ListOfferingsOutput) {
3145	op := &request.Operation{
3146		Name:       opListOfferings,
3147		HTTPMethod: "GET",
3148		HTTPPath:   "/prod/offerings",
3149		Paginator: &request.Paginator{
3150			InputTokens:     []string{"NextToken"},
3151			OutputTokens:    []string{"NextToken"},
3152			LimitToken:      "MaxResults",
3153			TruncationToken: "",
3154		},
3155	}
3156
3157	if input == nil {
3158		input = &ListOfferingsInput{}
3159	}
3160
3161	output = &ListOfferingsOutput{}
3162	req = c.newRequest(op, input, output)
3163	return
3164}
3165
3166// ListOfferings API operation for AWS Elemental MediaLive.
3167//
3168// List offerings available for purchase.
3169//
3170// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3171// with awserr.Error's Code and Message methods to get detailed information about
3172// the error.
3173//
3174// See the AWS API reference guide for AWS Elemental MediaLive's
3175// API operation ListOfferings for usage and error information.
3176//
3177// Returned Error Types:
3178//   * BadRequestException
3179//
3180//   * InternalServerErrorException
3181//
3182//   * ForbiddenException
3183//
3184//   * BadGatewayException
3185//
3186//   * GatewayTimeoutException
3187//
3188//   * TooManyRequestsException
3189//
3190// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListOfferings
3191func (c *MediaLive) ListOfferings(input *ListOfferingsInput) (*ListOfferingsOutput, error) {
3192	req, out := c.ListOfferingsRequest(input)
3193	return out, req.Send()
3194}
3195
3196// ListOfferingsWithContext is the same as ListOfferings with the addition of
3197// the ability to pass a context and additional request options.
3198//
3199// See ListOfferings for details on how to use this API operation.
3200//
3201// The context must be non-nil and will be used for request cancellation. If
3202// the context is nil a panic will occur. In the future the SDK may create
3203// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3204// for more information on using Contexts.
3205func (c *MediaLive) ListOfferingsWithContext(ctx aws.Context, input *ListOfferingsInput, opts ...request.Option) (*ListOfferingsOutput, error) {
3206	req, out := c.ListOfferingsRequest(input)
3207	req.SetContext(ctx)
3208	req.ApplyOptions(opts...)
3209	return out, req.Send()
3210}
3211
3212// ListOfferingsPages iterates over the pages of a ListOfferings operation,
3213// calling the "fn" function with the response data for each page. To stop
3214// iterating, return false from the fn function.
3215//
3216// See ListOfferings method for more information on how to use this operation.
3217//
3218// Note: This operation can generate multiple requests to a service.
3219//
3220//    // Example iterating over at most 3 pages of a ListOfferings operation.
3221//    pageNum := 0
3222//    err := client.ListOfferingsPages(params,
3223//        func(page *medialive.ListOfferingsOutput, lastPage bool) bool {
3224//            pageNum++
3225//            fmt.Println(page)
3226//            return pageNum <= 3
3227//        })
3228//
3229func (c *MediaLive) ListOfferingsPages(input *ListOfferingsInput, fn func(*ListOfferingsOutput, bool) bool) error {
3230	return c.ListOfferingsPagesWithContext(aws.BackgroundContext(), input, fn)
3231}
3232
3233// ListOfferingsPagesWithContext same as ListOfferingsPages except
3234// it takes a Context and allows setting request options on the pages.
3235//
3236// The context must be non-nil and will be used for request cancellation. If
3237// the context is nil a panic will occur. In the future the SDK may create
3238// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3239// for more information on using Contexts.
3240func (c *MediaLive) ListOfferingsPagesWithContext(ctx aws.Context, input *ListOfferingsInput, fn func(*ListOfferingsOutput, bool) bool, opts ...request.Option) error {
3241	p := request.Pagination{
3242		NewRequest: func() (*request.Request, error) {
3243			var inCpy *ListOfferingsInput
3244			if input != nil {
3245				tmp := *input
3246				inCpy = &tmp
3247			}
3248			req, _ := c.ListOfferingsRequest(inCpy)
3249			req.SetContext(ctx)
3250			req.ApplyOptions(opts...)
3251			return req, nil
3252		},
3253	}
3254
3255	for p.Next() {
3256		if !fn(p.Page().(*ListOfferingsOutput), !p.HasNextPage()) {
3257			break
3258		}
3259	}
3260
3261	return p.Err()
3262}
3263
3264const opListReservations = "ListReservations"
3265
3266// ListReservationsRequest generates a "aws/request.Request" representing the
3267// client's request for the ListReservations operation. The "output" return
3268// value will be populated with the request's response once the request completes
3269// successfully.
3270//
3271// Use "Send" method on the returned Request to send the API call to the service.
3272// the "output" return value is not valid until after Send returns without error.
3273//
3274// See ListReservations for more information on using the ListReservations
3275// API call, and error handling.
3276//
3277// This method is useful when you want to inject custom logic or configuration
3278// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3279//
3280//
3281//    // Example sending a request using the ListReservationsRequest method.
3282//    req, resp := client.ListReservationsRequest(params)
3283//
3284//    err := req.Send()
3285//    if err == nil { // resp is now filled
3286//        fmt.Println(resp)
3287//    }
3288//
3289// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListReservations
3290func (c *MediaLive) ListReservationsRequest(input *ListReservationsInput) (req *request.Request, output *ListReservationsOutput) {
3291	op := &request.Operation{
3292		Name:       opListReservations,
3293		HTTPMethod: "GET",
3294		HTTPPath:   "/prod/reservations",
3295		Paginator: &request.Paginator{
3296			InputTokens:     []string{"NextToken"},
3297			OutputTokens:    []string{"NextToken"},
3298			LimitToken:      "MaxResults",
3299			TruncationToken: "",
3300		},
3301	}
3302
3303	if input == nil {
3304		input = &ListReservationsInput{}
3305	}
3306
3307	output = &ListReservationsOutput{}
3308	req = c.newRequest(op, input, output)
3309	return
3310}
3311
3312// ListReservations API operation for AWS Elemental MediaLive.
3313//
3314// List purchased reservations.
3315//
3316// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3317// with awserr.Error's Code and Message methods to get detailed information about
3318// the error.
3319//
3320// See the AWS API reference guide for AWS Elemental MediaLive's
3321// API operation ListReservations for usage and error information.
3322//
3323// Returned Error Types:
3324//   * BadRequestException
3325//
3326//   * InternalServerErrorException
3327//
3328//   * ForbiddenException
3329//
3330//   * BadGatewayException
3331//
3332//   * GatewayTimeoutException
3333//
3334//   * TooManyRequestsException
3335//
3336// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListReservations
3337func (c *MediaLive) ListReservations(input *ListReservationsInput) (*ListReservationsOutput, error) {
3338	req, out := c.ListReservationsRequest(input)
3339	return out, req.Send()
3340}
3341
3342// ListReservationsWithContext is the same as ListReservations with the addition of
3343// the ability to pass a context and additional request options.
3344//
3345// See ListReservations for details on how to use this API operation.
3346//
3347// The context must be non-nil and will be used for request cancellation. If
3348// the context is nil a panic will occur. In the future the SDK may create
3349// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3350// for more information on using Contexts.
3351func (c *MediaLive) ListReservationsWithContext(ctx aws.Context, input *ListReservationsInput, opts ...request.Option) (*ListReservationsOutput, error) {
3352	req, out := c.ListReservationsRequest(input)
3353	req.SetContext(ctx)
3354	req.ApplyOptions(opts...)
3355	return out, req.Send()
3356}
3357
3358// ListReservationsPages iterates over the pages of a ListReservations operation,
3359// calling the "fn" function with the response data for each page. To stop
3360// iterating, return false from the fn function.
3361//
3362// See ListReservations method for more information on how to use this operation.
3363//
3364// Note: This operation can generate multiple requests to a service.
3365//
3366//    // Example iterating over at most 3 pages of a ListReservations operation.
3367//    pageNum := 0
3368//    err := client.ListReservationsPages(params,
3369//        func(page *medialive.ListReservationsOutput, lastPage bool) bool {
3370//            pageNum++
3371//            fmt.Println(page)
3372//            return pageNum <= 3
3373//        })
3374//
3375func (c *MediaLive) ListReservationsPages(input *ListReservationsInput, fn func(*ListReservationsOutput, bool) bool) error {
3376	return c.ListReservationsPagesWithContext(aws.BackgroundContext(), input, fn)
3377}
3378
3379// ListReservationsPagesWithContext same as ListReservationsPages except
3380// it takes a Context and allows setting request options on the pages.
3381//
3382// The context must be non-nil and will be used for request cancellation. If
3383// the context is nil a panic will occur. In the future the SDK may create
3384// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3385// for more information on using Contexts.
3386func (c *MediaLive) ListReservationsPagesWithContext(ctx aws.Context, input *ListReservationsInput, fn func(*ListReservationsOutput, bool) bool, opts ...request.Option) error {
3387	p := request.Pagination{
3388		NewRequest: func() (*request.Request, error) {
3389			var inCpy *ListReservationsInput
3390			if input != nil {
3391				tmp := *input
3392				inCpy = &tmp
3393			}
3394			req, _ := c.ListReservationsRequest(inCpy)
3395			req.SetContext(ctx)
3396			req.ApplyOptions(opts...)
3397			return req, nil
3398		},
3399	}
3400
3401	for p.Next() {
3402		if !fn(p.Page().(*ListReservationsOutput), !p.HasNextPage()) {
3403			break
3404		}
3405	}
3406
3407	return p.Err()
3408}
3409
3410const opListTagsForResource = "ListTagsForResource"
3411
3412// ListTagsForResourceRequest generates a "aws/request.Request" representing the
3413// client's request for the ListTagsForResource operation. The "output" return
3414// value will be populated with the request's response once the request completes
3415// successfully.
3416//
3417// Use "Send" method on the returned Request to send the API call to the service.
3418// the "output" return value is not valid until after Send returns without error.
3419//
3420// See ListTagsForResource for more information on using the ListTagsForResource
3421// API call, and error handling.
3422//
3423// This method is useful when you want to inject custom logic or configuration
3424// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3425//
3426//
3427//    // Example sending a request using the ListTagsForResourceRequest method.
3428//    req, resp := client.ListTagsForResourceRequest(params)
3429//
3430//    err := req.Send()
3431//    if err == nil { // resp is now filled
3432//        fmt.Println(resp)
3433//    }
3434//
3435// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListTagsForResource
3436func (c *MediaLive) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
3437	op := &request.Operation{
3438		Name:       opListTagsForResource,
3439		HTTPMethod: "GET",
3440		HTTPPath:   "/prod/tags/{resource-arn}",
3441	}
3442
3443	if input == nil {
3444		input = &ListTagsForResourceInput{}
3445	}
3446
3447	output = &ListTagsForResourceOutput{}
3448	req = c.newRequest(op, input, output)
3449	return
3450}
3451
3452// ListTagsForResource API operation for AWS Elemental MediaLive.
3453//
3454// Produces list of tags that have been created for a resource
3455//
3456// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3457// with awserr.Error's Code and Message methods to get detailed information about
3458// the error.
3459//
3460// See the AWS API reference guide for AWS Elemental MediaLive's
3461// API operation ListTagsForResource for usage and error information.
3462//
3463// Returned Error Types:
3464//   * NotFoundException
3465//
3466//   * BadRequestException
3467//
3468//   * InternalServerErrorException
3469//
3470//   * ForbiddenException
3471//
3472// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/ListTagsForResource
3473func (c *MediaLive) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
3474	req, out := c.ListTagsForResourceRequest(input)
3475	return out, req.Send()
3476}
3477
3478// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
3479// the ability to pass a context and additional request options.
3480//
3481// See ListTagsForResource for details on how to use this API operation.
3482//
3483// The context must be non-nil and will be used for request cancellation. If
3484// the context is nil a panic will occur. In the future the SDK may create
3485// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3486// for more information on using Contexts.
3487func (c *MediaLive) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
3488	req, out := c.ListTagsForResourceRequest(input)
3489	req.SetContext(ctx)
3490	req.ApplyOptions(opts...)
3491	return out, req.Send()
3492}
3493
3494const opPurchaseOffering = "PurchaseOffering"
3495
3496// PurchaseOfferingRequest generates a "aws/request.Request" representing the
3497// client's request for the PurchaseOffering operation. The "output" return
3498// value will be populated with the request's response once the request completes
3499// successfully.
3500//
3501// Use "Send" method on the returned Request to send the API call to the service.
3502// the "output" return value is not valid until after Send returns without error.
3503//
3504// See PurchaseOffering for more information on using the PurchaseOffering
3505// API call, and error handling.
3506//
3507// This method is useful when you want to inject custom logic or configuration
3508// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3509//
3510//
3511//    // Example sending a request using the PurchaseOfferingRequest method.
3512//    req, resp := client.PurchaseOfferingRequest(params)
3513//
3514//    err := req.Send()
3515//    if err == nil { // resp is now filled
3516//        fmt.Println(resp)
3517//    }
3518//
3519// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/PurchaseOffering
3520func (c *MediaLive) PurchaseOfferingRequest(input *PurchaseOfferingInput) (req *request.Request, output *PurchaseOfferingOutput) {
3521	op := &request.Operation{
3522		Name:       opPurchaseOffering,
3523		HTTPMethod: "POST",
3524		HTTPPath:   "/prod/offerings/{offeringId}/purchase",
3525	}
3526
3527	if input == nil {
3528		input = &PurchaseOfferingInput{}
3529	}
3530
3531	output = &PurchaseOfferingOutput{}
3532	req = c.newRequest(op, input, output)
3533	return
3534}
3535
3536// PurchaseOffering API operation for AWS Elemental MediaLive.
3537//
3538// Purchase an offering and create a reservation.
3539//
3540// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3541// with awserr.Error's Code and Message methods to get detailed information about
3542// the error.
3543//
3544// See the AWS API reference guide for AWS Elemental MediaLive's
3545// API operation PurchaseOffering for usage and error information.
3546//
3547// Returned Error Types:
3548//   * BadRequestException
3549//
3550//   * InternalServerErrorException
3551//
3552//   * ForbiddenException
3553//
3554//   * BadGatewayException
3555//
3556//   * NotFoundException
3557//
3558//   * GatewayTimeoutException
3559//
3560//   * TooManyRequestsException
3561//
3562//   * ConflictException
3563//
3564// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/PurchaseOffering
3565func (c *MediaLive) PurchaseOffering(input *PurchaseOfferingInput) (*PurchaseOfferingOutput, error) {
3566	req, out := c.PurchaseOfferingRequest(input)
3567	return out, req.Send()
3568}
3569
3570// PurchaseOfferingWithContext is the same as PurchaseOffering with the addition of
3571// the ability to pass a context and additional request options.
3572//
3573// See PurchaseOffering for details on how to use this API operation.
3574//
3575// The context must be non-nil and will be used for request cancellation. If
3576// the context is nil a panic will occur. In the future the SDK may create
3577// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3578// for more information on using Contexts.
3579func (c *MediaLive) PurchaseOfferingWithContext(ctx aws.Context, input *PurchaseOfferingInput, opts ...request.Option) (*PurchaseOfferingOutput, error) {
3580	req, out := c.PurchaseOfferingRequest(input)
3581	req.SetContext(ctx)
3582	req.ApplyOptions(opts...)
3583	return out, req.Send()
3584}
3585
3586const opStartChannel = "StartChannel"
3587
3588// StartChannelRequest generates a "aws/request.Request" representing the
3589// client's request for the StartChannel operation. The "output" return
3590// value will be populated with the request's response once the request completes
3591// successfully.
3592//
3593// Use "Send" method on the returned Request to send the API call to the service.
3594// the "output" return value is not valid until after Send returns without error.
3595//
3596// See StartChannel for more information on using the StartChannel
3597// API call, and error handling.
3598//
3599// This method is useful when you want to inject custom logic or configuration
3600// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3601//
3602//
3603//    // Example sending a request using the StartChannelRequest method.
3604//    req, resp := client.StartChannelRequest(params)
3605//
3606//    err := req.Send()
3607//    if err == nil { // resp is now filled
3608//        fmt.Println(resp)
3609//    }
3610//
3611// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/StartChannel
3612func (c *MediaLive) StartChannelRequest(input *StartChannelInput) (req *request.Request, output *StartChannelOutput) {
3613	op := &request.Operation{
3614		Name:       opStartChannel,
3615		HTTPMethod: "POST",
3616		HTTPPath:   "/prod/channels/{channelId}/start",
3617	}
3618
3619	if input == nil {
3620		input = &StartChannelInput{}
3621	}
3622
3623	output = &StartChannelOutput{}
3624	req = c.newRequest(op, input, output)
3625	return
3626}
3627
3628// StartChannel API operation for AWS Elemental MediaLive.
3629//
3630// Starts an existing channel
3631//
3632// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3633// with awserr.Error's Code and Message methods to get detailed information about
3634// the error.
3635//
3636// See the AWS API reference guide for AWS Elemental MediaLive's
3637// API operation StartChannel for usage and error information.
3638//
3639// Returned Error Types:
3640//   * BadRequestException
3641//
3642//   * InternalServerErrorException
3643//
3644//   * ForbiddenException
3645//
3646//   * BadGatewayException
3647//
3648//   * NotFoundException
3649//
3650//   * GatewayTimeoutException
3651//
3652//   * TooManyRequestsException
3653//
3654//   * ConflictException
3655//
3656// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/StartChannel
3657func (c *MediaLive) StartChannel(input *StartChannelInput) (*StartChannelOutput, error) {
3658	req, out := c.StartChannelRequest(input)
3659	return out, req.Send()
3660}
3661
3662// StartChannelWithContext is the same as StartChannel with the addition of
3663// the ability to pass a context and additional request options.
3664//
3665// See StartChannel for details on how to use this API operation.
3666//
3667// The context must be non-nil and will be used for request cancellation. If
3668// the context is nil a panic will occur. In the future the SDK may create
3669// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3670// for more information on using Contexts.
3671func (c *MediaLive) StartChannelWithContext(ctx aws.Context, input *StartChannelInput, opts ...request.Option) (*StartChannelOutput, error) {
3672	req, out := c.StartChannelRequest(input)
3673	req.SetContext(ctx)
3674	req.ApplyOptions(opts...)
3675	return out, req.Send()
3676}
3677
3678const opStartMultiplex = "StartMultiplex"
3679
3680// StartMultiplexRequest generates a "aws/request.Request" representing the
3681// client's request for the StartMultiplex operation. The "output" return
3682// value will be populated with the request's response once the request completes
3683// successfully.
3684//
3685// Use "Send" method on the returned Request to send the API call to the service.
3686// the "output" return value is not valid until after Send returns without error.
3687//
3688// See StartMultiplex for more information on using the StartMultiplex
3689// API call, and error handling.
3690//
3691// This method is useful when you want to inject custom logic or configuration
3692// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3693//
3694//
3695//    // Example sending a request using the StartMultiplexRequest method.
3696//    req, resp := client.StartMultiplexRequest(params)
3697//
3698//    err := req.Send()
3699//    if err == nil { // resp is now filled
3700//        fmt.Println(resp)
3701//    }
3702//
3703// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/StartMultiplex
3704func (c *MediaLive) StartMultiplexRequest(input *StartMultiplexInput) (req *request.Request, output *StartMultiplexOutput) {
3705	op := &request.Operation{
3706		Name:       opStartMultiplex,
3707		HTTPMethod: "POST",
3708		HTTPPath:   "/prod/multiplexes/{multiplexId}/start",
3709	}
3710
3711	if input == nil {
3712		input = &StartMultiplexInput{}
3713	}
3714
3715	output = &StartMultiplexOutput{}
3716	req = c.newRequest(op, input, output)
3717	return
3718}
3719
3720// StartMultiplex API operation for AWS Elemental MediaLive.
3721//
3722// Start (run) the multiplex. Starting the multiplex does not start the channels.
3723// You must explicitly start each channel.
3724//
3725// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3726// with awserr.Error's Code and Message methods to get detailed information about
3727// the error.
3728//
3729// See the AWS API reference guide for AWS Elemental MediaLive's
3730// API operation StartMultiplex for usage and error information.
3731//
3732// Returned Error Types:
3733//   * BadRequestException
3734//
3735//   * InternalServerErrorException
3736//
3737//   * ForbiddenException
3738//
3739//   * BadGatewayException
3740//
3741//   * NotFoundException
3742//
3743//   * GatewayTimeoutException
3744//
3745//   * TooManyRequestsException
3746//
3747//   * ConflictException
3748//
3749// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/StartMultiplex
3750func (c *MediaLive) StartMultiplex(input *StartMultiplexInput) (*StartMultiplexOutput, error) {
3751	req, out := c.StartMultiplexRequest(input)
3752	return out, req.Send()
3753}
3754
3755// StartMultiplexWithContext is the same as StartMultiplex with the addition of
3756// the ability to pass a context and additional request options.
3757//
3758// See StartMultiplex for details on how to use this API operation.
3759//
3760// The context must be non-nil and will be used for request cancellation. If
3761// the context is nil a panic will occur. In the future the SDK may create
3762// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3763// for more information on using Contexts.
3764func (c *MediaLive) StartMultiplexWithContext(ctx aws.Context, input *StartMultiplexInput, opts ...request.Option) (*StartMultiplexOutput, error) {
3765	req, out := c.StartMultiplexRequest(input)
3766	req.SetContext(ctx)
3767	req.ApplyOptions(opts...)
3768	return out, req.Send()
3769}
3770
3771const opStopChannel = "StopChannel"
3772
3773// StopChannelRequest generates a "aws/request.Request" representing the
3774// client's request for the StopChannel operation. The "output" return
3775// value will be populated with the request's response once the request completes
3776// successfully.
3777//
3778// Use "Send" method on the returned Request to send the API call to the service.
3779// the "output" return value is not valid until after Send returns without error.
3780//
3781// See StopChannel for more information on using the StopChannel
3782// API call, and error handling.
3783//
3784// This method is useful when you want to inject custom logic or configuration
3785// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3786//
3787//
3788//    // Example sending a request using the StopChannelRequest method.
3789//    req, resp := client.StopChannelRequest(params)
3790//
3791//    err := req.Send()
3792//    if err == nil { // resp is now filled
3793//        fmt.Println(resp)
3794//    }
3795//
3796// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/StopChannel
3797func (c *MediaLive) StopChannelRequest(input *StopChannelInput) (req *request.Request, output *StopChannelOutput) {
3798	op := &request.Operation{
3799		Name:       opStopChannel,
3800		HTTPMethod: "POST",
3801		HTTPPath:   "/prod/channels/{channelId}/stop",
3802	}
3803
3804	if input == nil {
3805		input = &StopChannelInput{}
3806	}
3807
3808	output = &StopChannelOutput{}
3809	req = c.newRequest(op, input, output)
3810	return
3811}
3812
3813// StopChannel API operation for AWS Elemental MediaLive.
3814//
3815// Stops a running channel
3816//
3817// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3818// with awserr.Error's Code and Message methods to get detailed information about
3819// the error.
3820//
3821// See the AWS API reference guide for AWS Elemental MediaLive's
3822// API operation StopChannel for usage and error information.
3823//
3824// Returned Error Types:
3825//   * BadRequestException
3826//
3827//   * InternalServerErrorException
3828//
3829//   * ForbiddenException
3830//
3831//   * BadGatewayException
3832//
3833//   * NotFoundException
3834//
3835//   * GatewayTimeoutException
3836//
3837//   * TooManyRequestsException
3838//
3839//   * ConflictException
3840//
3841// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/StopChannel
3842func (c *MediaLive) StopChannel(input *StopChannelInput) (*StopChannelOutput, error) {
3843	req, out := c.StopChannelRequest(input)
3844	return out, req.Send()
3845}
3846
3847// StopChannelWithContext is the same as StopChannel with the addition of
3848// the ability to pass a context and additional request options.
3849//
3850// See StopChannel for details on how to use this API operation.
3851//
3852// The context must be non-nil and will be used for request cancellation. If
3853// the context is nil a panic will occur. In the future the SDK may create
3854// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3855// for more information on using Contexts.
3856func (c *MediaLive) StopChannelWithContext(ctx aws.Context, input *StopChannelInput, opts ...request.Option) (*StopChannelOutput, error) {
3857	req, out := c.StopChannelRequest(input)
3858	req.SetContext(ctx)
3859	req.ApplyOptions(opts...)
3860	return out, req.Send()
3861}
3862
3863const opStopMultiplex = "StopMultiplex"
3864
3865// StopMultiplexRequest generates a "aws/request.Request" representing the
3866// client's request for the StopMultiplex operation. The "output" return
3867// value will be populated with the request's response once the request completes
3868// successfully.
3869//
3870// Use "Send" method on the returned Request to send the API call to the service.
3871// the "output" return value is not valid until after Send returns without error.
3872//
3873// See StopMultiplex for more information on using the StopMultiplex
3874// API call, and error handling.
3875//
3876// This method is useful when you want to inject custom logic or configuration
3877// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3878//
3879//
3880//    // Example sending a request using the StopMultiplexRequest method.
3881//    req, resp := client.StopMultiplexRequest(params)
3882//
3883//    err := req.Send()
3884//    if err == nil { // resp is now filled
3885//        fmt.Println(resp)
3886//    }
3887//
3888// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/StopMultiplex
3889func (c *MediaLive) StopMultiplexRequest(input *StopMultiplexInput) (req *request.Request, output *StopMultiplexOutput) {
3890	op := &request.Operation{
3891		Name:       opStopMultiplex,
3892		HTTPMethod: "POST",
3893		HTTPPath:   "/prod/multiplexes/{multiplexId}/stop",
3894	}
3895
3896	if input == nil {
3897		input = &StopMultiplexInput{}
3898	}
3899
3900	output = &StopMultiplexOutput{}
3901	req = c.newRequest(op, input, output)
3902	return
3903}
3904
3905// StopMultiplex API operation for AWS Elemental MediaLive.
3906//
3907// Stops a running multiplex. If the multiplex isn't running, this action has
3908// no effect.
3909//
3910// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3911// with awserr.Error's Code and Message methods to get detailed information about
3912// the error.
3913//
3914// See the AWS API reference guide for AWS Elemental MediaLive's
3915// API operation StopMultiplex for usage and error information.
3916//
3917// Returned Error Types:
3918//   * BadRequestException
3919//
3920//   * InternalServerErrorException
3921//
3922//   * ForbiddenException
3923//
3924//   * BadGatewayException
3925//
3926//   * NotFoundException
3927//
3928//   * GatewayTimeoutException
3929//
3930//   * TooManyRequestsException
3931//
3932//   * ConflictException
3933//
3934// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/StopMultiplex
3935func (c *MediaLive) StopMultiplex(input *StopMultiplexInput) (*StopMultiplexOutput, error) {
3936	req, out := c.StopMultiplexRequest(input)
3937	return out, req.Send()
3938}
3939
3940// StopMultiplexWithContext is the same as StopMultiplex with the addition of
3941// the ability to pass a context and additional request options.
3942//
3943// See StopMultiplex for details on how to use this API operation.
3944//
3945// The context must be non-nil and will be used for request cancellation. If
3946// the context is nil a panic will occur. In the future the SDK may create
3947// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3948// for more information on using Contexts.
3949func (c *MediaLive) StopMultiplexWithContext(ctx aws.Context, input *StopMultiplexInput, opts ...request.Option) (*StopMultiplexOutput, error) {
3950	req, out := c.StopMultiplexRequest(input)
3951	req.SetContext(ctx)
3952	req.ApplyOptions(opts...)
3953	return out, req.Send()
3954}
3955
3956const opUpdateChannel = "UpdateChannel"
3957
3958// UpdateChannelRequest generates a "aws/request.Request" representing the
3959// client's request for the UpdateChannel operation. The "output" return
3960// value will be populated with the request's response once the request completes
3961// successfully.
3962//
3963// Use "Send" method on the returned Request to send the API call to the service.
3964// the "output" return value is not valid until after Send returns without error.
3965//
3966// See UpdateChannel for more information on using the UpdateChannel
3967// API call, and error handling.
3968//
3969// This method is useful when you want to inject custom logic or configuration
3970// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3971//
3972//
3973//    // Example sending a request using the UpdateChannelRequest method.
3974//    req, resp := client.UpdateChannelRequest(params)
3975//
3976//    err := req.Send()
3977//    if err == nil { // resp is now filled
3978//        fmt.Println(resp)
3979//    }
3980//
3981// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateChannel
3982func (c *MediaLive) UpdateChannelRequest(input *UpdateChannelInput) (req *request.Request, output *UpdateChannelOutput) {
3983	op := &request.Operation{
3984		Name:       opUpdateChannel,
3985		HTTPMethod: "PUT",
3986		HTTPPath:   "/prod/channels/{channelId}",
3987	}
3988
3989	if input == nil {
3990		input = &UpdateChannelInput{}
3991	}
3992
3993	output = &UpdateChannelOutput{}
3994	req = c.newRequest(op, input, output)
3995	return
3996}
3997
3998// UpdateChannel API operation for AWS Elemental MediaLive.
3999//
4000// Updates a channel.
4001//
4002// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4003// with awserr.Error's Code and Message methods to get detailed information about
4004// the error.
4005//
4006// See the AWS API reference guide for AWS Elemental MediaLive's
4007// API operation UpdateChannel for usage and error information.
4008//
4009// Returned Error Types:
4010//   * BadRequestException
4011//
4012//   * UnprocessableEntityException
4013//
4014//   * InternalServerErrorException
4015//
4016//   * ForbiddenException
4017//
4018//   * BadGatewayException
4019//
4020//   * GatewayTimeoutException
4021//
4022//   * ConflictException
4023//
4024// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateChannel
4025func (c *MediaLive) UpdateChannel(input *UpdateChannelInput) (*UpdateChannelOutput, error) {
4026	req, out := c.UpdateChannelRequest(input)
4027	return out, req.Send()
4028}
4029
4030// UpdateChannelWithContext is the same as UpdateChannel with the addition of
4031// the ability to pass a context and additional request options.
4032//
4033// See UpdateChannel for details on how to use this API operation.
4034//
4035// The context must be non-nil and will be used for request cancellation. If
4036// the context is nil a panic will occur. In the future the SDK may create
4037// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4038// for more information on using Contexts.
4039func (c *MediaLive) UpdateChannelWithContext(ctx aws.Context, input *UpdateChannelInput, opts ...request.Option) (*UpdateChannelOutput, error) {
4040	req, out := c.UpdateChannelRequest(input)
4041	req.SetContext(ctx)
4042	req.ApplyOptions(opts...)
4043	return out, req.Send()
4044}
4045
4046const opUpdateChannelClass = "UpdateChannelClass"
4047
4048// UpdateChannelClassRequest generates a "aws/request.Request" representing the
4049// client's request for the UpdateChannelClass operation. The "output" return
4050// value will be populated with the request's response once the request completes
4051// successfully.
4052//
4053// Use "Send" method on the returned Request to send the API call to the service.
4054// the "output" return value is not valid until after Send returns without error.
4055//
4056// See UpdateChannelClass for more information on using the UpdateChannelClass
4057// API call, and error handling.
4058//
4059// This method is useful when you want to inject custom logic or configuration
4060// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4061//
4062//
4063//    // Example sending a request using the UpdateChannelClassRequest method.
4064//    req, resp := client.UpdateChannelClassRequest(params)
4065//
4066//    err := req.Send()
4067//    if err == nil { // resp is now filled
4068//        fmt.Println(resp)
4069//    }
4070//
4071// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateChannelClass
4072func (c *MediaLive) UpdateChannelClassRequest(input *UpdateChannelClassInput) (req *request.Request, output *UpdateChannelClassOutput) {
4073	op := &request.Operation{
4074		Name:       opUpdateChannelClass,
4075		HTTPMethod: "PUT",
4076		HTTPPath:   "/prod/channels/{channelId}/channelClass",
4077	}
4078
4079	if input == nil {
4080		input = &UpdateChannelClassInput{}
4081	}
4082
4083	output = &UpdateChannelClassOutput{}
4084	req = c.newRequest(op, input, output)
4085	return
4086}
4087
4088// UpdateChannelClass API operation for AWS Elemental MediaLive.
4089//
4090// Changes the class of the channel.
4091//
4092// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4093// with awserr.Error's Code and Message methods to get detailed information about
4094// the error.
4095//
4096// See the AWS API reference guide for AWS Elemental MediaLive's
4097// API operation UpdateChannelClass for usage and error information.
4098//
4099// Returned Error Types:
4100//   * BadRequestException
4101//
4102//   * UnprocessableEntityException
4103//
4104//   * InternalServerErrorException
4105//
4106//   * ForbiddenException
4107//
4108//   * BadGatewayException
4109//
4110//   * NotFoundException
4111//
4112//   * GatewayTimeoutException
4113//
4114//   * TooManyRequestsException
4115//
4116//   * ConflictException
4117//
4118// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateChannelClass
4119func (c *MediaLive) UpdateChannelClass(input *UpdateChannelClassInput) (*UpdateChannelClassOutput, error) {
4120	req, out := c.UpdateChannelClassRequest(input)
4121	return out, req.Send()
4122}
4123
4124// UpdateChannelClassWithContext is the same as UpdateChannelClass with the addition of
4125// the ability to pass a context and additional request options.
4126//
4127// See UpdateChannelClass for details on how to use this API operation.
4128//
4129// The context must be non-nil and will be used for request cancellation. If
4130// the context is nil a panic will occur. In the future the SDK may create
4131// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4132// for more information on using Contexts.
4133func (c *MediaLive) UpdateChannelClassWithContext(ctx aws.Context, input *UpdateChannelClassInput, opts ...request.Option) (*UpdateChannelClassOutput, error) {
4134	req, out := c.UpdateChannelClassRequest(input)
4135	req.SetContext(ctx)
4136	req.ApplyOptions(opts...)
4137	return out, req.Send()
4138}
4139
4140const opUpdateInput = "UpdateInput"
4141
4142// UpdateInputRequest generates a "aws/request.Request" representing the
4143// client's request for the UpdateInput operation. The "output" return
4144// value will be populated with the request's response once the request completes
4145// successfully.
4146//
4147// Use "Send" method on the returned Request to send the API call to the service.
4148// the "output" return value is not valid until after Send returns without error.
4149//
4150// See UpdateInput for more information on using the UpdateInput
4151// API call, and error handling.
4152//
4153// This method is useful when you want to inject custom logic or configuration
4154// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4155//
4156//
4157//    // Example sending a request using the UpdateInputRequest method.
4158//    req, resp := client.UpdateInputRequest(params)
4159//
4160//    err := req.Send()
4161//    if err == nil { // resp is now filled
4162//        fmt.Println(resp)
4163//    }
4164//
4165// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateInput
4166func (c *MediaLive) UpdateInputRequest(input *UpdateInputInput) (req *request.Request, output *UpdateInputOutput) {
4167	op := &request.Operation{
4168		Name:       opUpdateInput,
4169		HTTPMethod: "PUT",
4170		HTTPPath:   "/prod/inputs/{inputId}",
4171	}
4172
4173	if input == nil {
4174		input = &UpdateInputInput{}
4175	}
4176
4177	output = &UpdateInputOutput{}
4178	req = c.newRequest(op, input, output)
4179	return
4180}
4181
4182// UpdateInput API operation for AWS Elemental MediaLive.
4183//
4184// Updates an input.
4185//
4186// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4187// with awserr.Error's Code and Message methods to get detailed information about
4188// the error.
4189//
4190// See the AWS API reference guide for AWS Elemental MediaLive's
4191// API operation UpdateInput for usage and error information.
4192//
4193// Returned Error Types:
4194//   * BadRequestException
4195//
4196//   * InternalServerErrorException
4197//
4198//   * ForbiddenException
4199//
4200//   * BadGatewayException
4201//
4202//   * NotFoundException
4203//
4204//   * GatewayTimeoutException
4205//
4206//   * ConflictException
4207//
4208// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateInput
4209func (c *MediaLive) UpdateInput(input *UpdateInputInput) (*UpdateInputOutput, error) {
4210	req, out := c.UpdateInputRequest(input)
4211	return out, req.Send()
4212}
4213
4214// UpdateInputWithContext is the same as UpdateInput with the addition of
4215// the ability to pass a context and additional request options.
4216//
4217// See UpdateInput for details on how to use this API operation.
4218//
4219// The context must be non-nil and will be used for request cancellation. If
4220// the context is nil a panic will occur. In the future the SDK may create
4221// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4222// for more information on using Contexts.
4223func (c *MediaLive) UpdateInputWithContext(ctx aws.Context, input *UpdateInputInput, opts ...request.Option) (*UpdateInputOutput, error) {
4224	req, out := c.UpdateInputRequest(input)
4225	req.SetContext(ctx)
4226	req.ApplyOptions(opts...)
4227	return out, req.Send()
4228}
4229
4230const opUpdateInputDevice = "UpdateInputDevice"
4231
4232// UpdateInputDeviceRequest generates a "aws/request.Request" representing the
4233// client's request for the UpdateInputDevice operation. The "output" return
4234// value will be populated with the request's response once the request completes
4235// successfully.
4236//
4237// Use "Send" method on the returned Request to send the API call to the service.
4238// the "output" return value is not valid until after Send returns without error.
4239//
4240// See UpdateInputDevice for more information on using the UpdateInputDevice
4241// API call, and error handling.
4242//
4243// This method is useful when you want to inject custom logic or configuration
4244// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4245//
4246//
4247//    // Example sending a request using the UpdateInputDeviceRequest method.
4248//    req, resp := client.UpdateInputDeviceRequest(params)
4249//
4250//    err := req.Send()
4251//    if err == nil { // resp is now filled
4252//        fmt.Println(resp)
4253//    }
4254//
4255// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateInputDevice
4256func (c *MediaLive) UpdateInputDeviceRequest(input *UpdateInputDeviceInput) (req *request.Request, output *UpdateInputDeviceOutput) {
4257	op := &request.Operation{
4258		Name:       opUpdateInputDevice,
4259		HTTPMethod: "PUT",
4260		HTTPPath:   "/prod/inputDevices/{inputDeviceId}",
4261	}
4262
4263	if input == nil {
4264		input = &UpdateInputDeviceInput{}
4265	}
4266
4267	output = &UpdateInputDeviceOutput{}
4268	req = c.newRequest(op, input, output)
4269	return
4270}
4271
4272// UpdateInputDevice API operation for AWS Elemental MediaLive.
4273//
4274// Updates the parameters for the input device.
4275//
4276// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4277// with awserr.Error's Code and Message methods to get detailed information about
4278// the error.
4279//
4280// See the AWS API reference guide for AWS Elemental MediaLive's
4281// API operation UpdateInputDevice for usage and error information.
4282//
4283// Returned Error Types:
4284//   * BadRequestException
4285//
4286//   * UnprocessableEntityException
4287//
4288//   * InternalServerErrorException
4289//
4290//   * ForbiddenException
4291//
4292//   * BadGatewayException
4293//
4294//   * NotFoundException
4295//
4296//   * GatewayTimeoutException
4297//
4298//   * TooManyRequestsException
4299//
4300// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateInputDevice
4301func (c *MediaLive) UpdateInputDevice(input *UpdateInputDeviceInput) (*UpdateInputDeviceOutput, error) {
4302	req, out := c.UpdateInputDeviceRequest(input)
4303	return out, req.Send()
4304}
4305
4306// UpdateInputDeviceWithContext is the same as UpdateInputDevice with the addition of
4307// the ability to pass a context and additional request options.
4308//
4309// See UpdateInputDevice for details on how to use this API operation.
4310//
4311// The context must be non-nil and will be used for request cancellation. If
4312// the context is nil a panic will occur. In the future the SDK may create
4313// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4314// for more information on using Contexts.
4315func (c *MediaLive) UpdateInputDeviceWithContext(ctx aws.Context, input *UpdateInputDeviceInput, opts ...request.Option) (*UpdateInputDeviceOutput, error) {
4316	req, out := c.UpdateInputDeviceRequest(input)
4317	req.SetContext(ctx)
4318	req.ApplyOptions(opts...)
4319	return out, req.Send()
4320}
4321
4322const opUpdateInputSecurityGroup = "UpdateInputSecurityGroup"
4323
4324// UpdateInputSecurityGroupRequest generates a "aws/request.Request" representing the
4325// client's request for the UpdateInputSecurityGroup operation. The "output" return
4326// value will be populated with the request's response once the request completes
4327// successfully.
4328//
4329// Use "Send" method on the returned Request to send the API call to the service.
4330// the "output" return value is not valid until after Send returns without error.
4331//
4332// See UpdateInputSecurityGroup for more information on using the UpdateInputSecurityGroup
4333// API call, and error handling.
4334//
4335// This method is useful when you want to inject custom logic or configuration
4336// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4337//
4338//
4339//    // Example sending a request using the UpdateInputSecurityGroupRequest method.
4340//    req, resp := client.UpdateInputSecurityGroupRequest(params)
4341//
4342//    err := req.Send()
4343//    if err == nil { // resp is now filled
4344//        fmt.Println(resp)
4345//    }
4346//
4347// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateInputSecurityGroup
4348func (c *MediaLive) UpdateInputSecurityGroupRequest(input *UpdateInputSecurityGroupInput) (req *request.Request, output *UpdateInputSecurityGroupOutput) {
4349	op := &request.Operation{
4350		Name:       opUpdateInputSecurityGroup,
4351		HTTPMethod: "PUT",
4352		HTTPPath:   "/prod/inputSecurityGroups/{inputSecurityGroupId}",
4353	}
4354
4355	if input == nil {
4356		input = &UpdateInputSecurityGroupInput{}
4357	}
4358
4359	output = &UpdateInputSecurityGroupOutput{}
4360	req = c.newRequest(op, input, output)
4361	return
4362}
4363
4364// UpdateInputSecurityGroup API operation for AWS Elemental MediaLive.
4365//
4366// Update an Input Security Group's Whilelists.
4367//
4368// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4369// with awserr.Error's Code and Message methods to get detailed information about
4370// the error.
4371//
4372// See the AWS API reference guide for AWS Elemental MediaLive's
4373// API operation UpdateInputSecurityGroup for usage and error information.
4374//
4375// Returned Error Types:
4376//   * BadRequestException
4377//
4378//   * InternalServerErrorException
4379//
4380//   * ForbiddenException
4381//
4382//   * BadGatewayException
4383//
4384//   * NotFoundException
4385//
4386//   * GatewayTimeoutException
4387//
4388//   * ConflictException
4389//
4390// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateInputSecurityGroup
4391func (c *MediaLive) UpdateInputSecurityGroup(input *UpdateInputSecurityGroupInput) (*UpdateInputSecurityGroupOutput, error) {
4392	req, out := c.UpdateInputSecurityGroupRequest(input)
4393	return out, req.Send()
4394}
4395
4396// UpdateInputSecurityGroupWithContext is the same as UpdateInputSecurityGroup with the addition of
4397// the ability to pass a context and additional request options.
4398//
4399// See UpdateInputSecurityGroup for details on how to use this API operation.
4400//
4401// The context must be non-nil and will be used for request cancellation. If
4402// the context is nil a panic will occur. In the future the SDK may create
4403// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4404// for more information on using Contexts.
4405func (c *MediaLive) UpdateInputSecurityGroupWithContext(ctx aws.Context, input *UpdateInputSecurityGroupInput, opts ...request.Option) (*UpdateInputSecurityGroupOutput, error) {
4406	req, out := c.UpdateInputSecurityGroupRequest(input)
4407	req.SetContext(ctx)
4408	req.ApplyOptions(opts...)
4409	return out, req.Send()
4410}
4411
4412const opUpdateMultiplex = "UpdateMultiplex"
4413
4414// UpdateMultiplexRequest generates a "aws/request.Request" representing the
4415// client's request for the UpdateMultiplex operation. The "output" return
4416// value will be populated with the request's response once the request completes
4417// successfully.
4418//
4419// Use "Send" method on the returned Request to send the API call to the service.
4420// the "output" return value is not valid until after Send returns without error.
4421//
4422// See UpdateMultiplex for more information on using the UpdateMultiplex
4423// API call, and error handling.
4424//
4425// This method is useful when you want to inject custom logic or configuration
4426// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4427//
4428//
4429//    // Example sending a request using the UpdateMultiplexRequest method.
4430//    req, resp := client.UpdateMultiplexRequest(params)
4431//
4432//    err := req.Send()
4433//    if err == nil { // resp is now filled
4434//        fmt.Println(resp)
4435//    }
4436//
4437// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateMultiplex
4438func (c *MediaLive) UpdateMultiplexRequest(input *UpdateMultiplexInput) (req *request.Request, output *UpdateMultiplexOutput) {
4439	op := &request.Operation{
4440		Name:       opUpdateMultiplex,
4441		HTTPMethod: "PUT",
4442		HTTPPath:   "/prod/multiplexes/{multiplexId}",
4443	}
4444
4445	if input == nil {
4446		input = &UpdateMultiplexInput{}
4447	}
4448
4449	output = &UpdateMultiplexOutput{}
4450	req = c.newRequest(op, input, output)
4451	return
4452}
4453
4454// UpdateMultiplex API operation for AWS Elemental MediaLive.
4455//
4456// Updates a multiplex.
4457//
4458// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4459// with awserr.Error's Code and Message methods to get detailed information about
4460// the error.
4461//
4462// See the AWS API reference guide for AWS Elemental MediaLive's
4463// API operation UpdateMultiplex for usage and error information.
4464//
4465// Returned Error Types:
4466//   * BadRequestException
4467//
4468//   * UnprocessableEntityException
4469//
4470//   * InternalServerErrorException
4471//
4472//   * ForbiddenException
4473//
4474//   * BadGatewayException
4475//
4476//   * NotFoundException
4477//
4478//   * GatewayTimeoutException
4479//
4480//   * ConflictException
4481//
4482// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateMultiplex
4483func (c *MediaLive) UpdateMultiplex(input *UpdateMultiplexInput) (*UpdateMultiplexOutput, error) {
4484	req, out := c.UpdateMultiplexRequest(input)
4485	return out, req.Send()
4486}
4487
4488// UpdateMultiplexWithContext is the same as UpdateMultiplex with the addition of
4489// the ability to pass a context and additional request options.
4490//
4491// See UpdateMultiplex for details on how to use this API operation.
4492//
4493// The context must be non-nil and will be used for request cancellation. If
4494// the context is nil a panic will occur. In the future the SDK may create
4495// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4496// for more information on using Contexts.
4497func (c *MediaLive) UpdateMultiplexWithContext(ctx aws.Context, input *UpdateMultiplexInput, opts ...request.Option) (*UpdateMultiplexOutput, error) {
4498	req, out := c.UpdateMultiplexRequest(input)
4499	req.SetContext(ctx)
4500	req.ApplyOptions(opts...)
4501	return out, req.Send()
4502}
4503
4504const opUpdateMultiplexProgram = "UpdateMultiplexProgram"
4505
4506// UpdateMultiplexProgramRequest generates a "aws/request.Request" representing the
4507// client's request for the UpdateMultiplexProgram operation. The "output" return
4508// value will be populated with the request's response once the request completes
4509// successfully.
4510//
4511// Use "Send" method on the returned Request to send the API call to the service.
4512// the "output" return value is not valid until after Send returns without error.
4513//
4514// See UpdateMultiplexProgram for more information on using the UpdateMultiplexProgram
4515// API call, and error handling.
4516//
4517// This method is useful when you want to inject custom logic or configuration
4518// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4519//
4520//
4521//    // Example sending a request using the UpdateMultiplexProgramRequest method.
4522//    req, resp := client.UpdateMultiplexProgramRequest(params)
4523//
4524//    err := req.Send()
4525//    if err == nil { // resp is now filled
4526//        fmt.Println(resp)
4527//    }
4528//
4529// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateMultiplexProgram
4530func (c *MediaLive) UpdateMultiplexProgramRequest(input *UpdateMultiplexProgramInput) (req *request.Request, output *UpdateMultiplexProgramOutput) {
4531	op := &request.Operation{
4532		Name:       opUpdateMultiplexProgram,
4533		HTTPMethod: "PUT",
4534		HTTPPath:   "/prod/multiplexes/{multiplexId}/programs/{programName}",
4535	}
4536
4537	if input == nil {
4538		input = &UpdateMultiplexProgramInput{}
4539	}
4540
4541	output = &UpdateMultiplexProgramOutput{}
4542	req = c.newRequest(op, input, output)
4543	return
4544}
4545
4546// UpdateMultiplexProgram API operation for AWS Elemental MediaLive.
4547//
4548// Update a program in a multiplex.
4549//
4550// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4551// with awserr.Error's Code and Message methods to get detailed information about
4552// the error.
4553//
4554// See the AWS API reference guide for AWS Elemental MediaLive's
4555// API operation UpdateMultiplexProgram for usage and error information.
4556//
4557// Returned Error Types:
4558//   * BadRequestException
4559//
4560//   * UnprocessableEntityException
4561//
4562//   * InternalServerErrorException
4563//
4564//   * ForbiddenException
4565//
4566//   * BadGatewayException
4567//
4568//   * NotFoundException
4569//
4570//   * GatewayTimeoutException
4571//
4572//   * ConflictException
4573//
4574// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateMultiplexProgram
4575func (c *MediaLive) UpdateMultiplexProgram(input *UpdateMultiplexProgramInput) (*UpdateMultiplexProgramOutput, error) {
4576	req, out := c.UpdateMultiplexProgramRequest(input)
4577	return out, req.Send()
4578}
4579
4580// UpdateMultiplexProgramWithContext is the same as UpdateMultiplexProgram with the addition of
4581// the ability to pass a context and additional request options.
4582//
4583// See UpdateMultiplexProgram for details on how to use this API operation.
4584//
4585// The context must be non-nil and will be used for request cancellation. If
4586// the context is nil a panic will occur. In the future the SDK may create
4587// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4588// for more information on using Contexts.
4589func (c *MediaLive) UpdateMultiplexProgramWithContext(ctx aws.Context, input *UpdateMultiplexProgramInput, opts ...request.Option) (*UpdateMultiplexProgramOutput, error) {
4590	req, out := c.UpdateMultiplexProgramRequest(input)
4591	req.SetContext(ctx)
4592	req.ApplyOptions(opts...)
4593	return out, req.Send()
4594}
4595
4596const opUpdateReservation = "UpdateReservation"
4597
4598// UpdateReservationRequest generates a "aws/request.Request" representing the
4599// client's request for the UpdateReservation operation. The "output" return
4600// value will be populated with the request's response once the request completes
4601// successfully.
4602//
4603// Use "Send" method on the returned Request to send the API call to the service.
4604// the "output" return value is not valid until after Send returns without error.
4605//
4606// See UpdateReservation for more information on using the UpdateReservation
4607// API call, and error handling.
4608//
4609// This method is useful when you want to inject custom logic or configuration
4610// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4611//
4612//
4613//    // Example sending a request using the UpdateReservationRequest method.
4614//    req, resp := client.UpdateReservationRequest(params)
4615//
4616//    err := req.Send()
4617//    if err == nil { // resp is now filled
4618//        fmt.Println(resp)
4619//    }
4620//
4621// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateReservation
4622func (c *MediaLive) UpdateReservationRequest(input *UpdateReservationInput) (req *request.Request, output *UpdateReservationOutput) {
4623	op := &request.Operation{
4624		Name:       opUpdateReservation,
4625		HTTPMethod: "PUT",
4626		HTTPPath:   "/prod/reservations/{reservationId}",
4627	}
4628
4629	if input == nil {
4630		input = &UpdateReservationInput{}
4631	}
4632
4633	output = &UpdateReservationOutput{}
4634	req = c.newRequest(op, input, output)
4635	return
4636}
4637
4638// UpdateReservation API operation for AWS Elemental MediaLive.
4639//
4640// Update reservation.
4641//
4642// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4643// with awserr.Error's Code and Message methods to get detailed information about
4644// the error.
4645//
4646// See the AWS API reference guide for AWS Elemental MediaLive's
4647// API operation UpdateReservation for usage and error information.
4648//
4649// Returned Error Types:
4650//   * BadRequestException
4651//
4652//   * InternalServerErrorException
4653//
4654//   * ForbiddenException
4655//
4656//   * BadGatewayException
4657//
4658//   * NotFoundException
4659//
4660//   * GatewayTimeoutException
4661//
4662//   * TooManyRequestsException
4663//
4664//   * ConflictException
4665//
4666// See also, https://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/UpdateReservation
4667func (c *MediaLive) UpdateReservation(input *UpdateReservationInput) (*UpdateReservationOutput, error) {
4668	req, out := c.UpdateReservationRequest(input)
4669	return out, req.Send()
4670}
4671
4672// UpdateReservationWithContext is the same as UpdateReservation with the addition of
4673// the ability to pass a context and additional request options.
4674//
4675// See UpdateReservation for details on how to use this API operation.
4676//
4677// The context must be non-nil and will be used for request cancellation. If
4678// the context is nil a panic will occur. In the future the SDK may create
4679// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4680// for more information on using Contexts.
4681func (c *MediaLive) UpdateReservationWithContext(ctx aws.Context, input *UpdateReservationInput, opts ...request.Option) (*UpdateReservationOutput, error) {
4682	req, out := c.UpdateReservationRequest(input)
4683	req.SetContext(ctx)
4684	req.ApplyOptions(opts...)
4685	return out, req.Send()
4686}
4687
4688// Aac Settings
4689type AacSettings struct {
4690	_ struct{} `type:"structure"`
4691
4692	// Average bitrate in bits/second. Valid values depend on rate control mode
4693	// and profile.
4694	Bitrate *float64 `locationName:"bitrate" type:"double"`
4695
4696	// Mono, Stereo, or 5.1 channel layout. Valid values depend on rate control
4697	// mode and profile. The adReceiverMix setting receives a stereo description
4698	// plus control track and emits a mono AAC encode of the description track,
4699	// with control data emitted in the PES header as per ETSI TS 101 154 Annex
4700	// E.
4701	CodingMode *string `locationName:"codingMode" type:"string" enum:"AacCodingMode"`
4702
4703	// Set to "broadcasterMixedAd" when input contains pre-mixed main audio + AD
4704	// (narration) as a stereo pair. The Audio Type field (audioType) will be set
4705	// to 3, which signals to downstream systems that this stream contains "broadcaster
4706	// mixed AD". Note that the input received by the encoder must contain pre-mixed
4707	// audio; the encoder does not perform the mixing. The values in audioTypeControl
4708	// and audioType (in AudioDescription) are ignored when set to broadcasterMixedAd.Leave
4709	// set to "normal" when input does not contain pre-mixed audio + AD.
4710	InputType *string `locationName:"inputType" type:"string" enum:"AacInputType"`
4711
4712	// AAC Profile.
4713	Profile *string `locationName:"profile" type:"string" enum:"AacProfile"`
4714
4715	// Rate Control Mode.
4716	RateControlMode *string `locationName:"rateControlMode" type:"string" enum:"AacRateControlMode"`
4717
4718	// Sets LATM / LOAS AAC output for raw containers.
4719	RawFormat *string `locationName:"rawFormat" type:"string" enum:"AacRawFormat"`
4720
4721	// Sample rate in Hz. Valid values depend on rate control mode and profile.
4722	SampleRate *float64 `locationName:"sampleRate" type:"double"`
4723
4724	// Use MPEG-2 AAC audio instead of MPEG-4 AAC audio for raw or MPEG-2 Transport
4725	// Stream containers.
4726	Spec *string `locationName:"spec" type:"string" enum:"AacSpec"`
4727
4728	// VBR Quality Level - Only used if rateControlMode is VBR.
4729	VbrQuality *string `locationName:"vbrQuality" type:"string" enum:"AacVbrQuality"`
4730}
4731
4732// String returns the string representation
4733func (s AacSettings) String() string {
4734	return awsutil.Prettify(s)
4735}
4736
4737// GoString returns the string representation
4738func (s AacSettings) GoString() string {
4739	return s.String()
4740}
4741
4742// SetBitrate sets the Bitrate field's value.
4743func (s *AacSettings) SetBitrate(v float64) *AacSettings {
4744	s.Bitrate = &v
4745	return s
4746}
4747
4748// SetCodingMode sets the CodingMode field's value.
4749func (s *AacSettings) SetCodingMode(v string) *AacSettings {
4750	s.CodingMode = &v
4751	return s
4752}
4753
4754// SetInputType sets the InputType field's value.
4755func (s *AacSettings) SetInputType(v string) *AacSettings {
4756	s.InputType = &v
4757	return s
4758}
4759
4760// SetProfile sets the Profile field's value.
4761func (s *AacSettings) SetProfile(v string) *AacSettings {
4762	s.Profile = &v
4763	return s
4764}
4765
4766// SetRateControlMode sets the RateControlMode field's value.
4767func (s *AacSettings) SetRateControlMode(v string) *AacSettings {
4768	s.RateControlMode = &v
4769	return s
4770}
4771
4772// SetRawFormat sets the RawFormat field's value.
4773func (s *AacSettings) SetRawFormat(v string) *AacSettings {
4774	s.RawFormat = &v
4775	return s
4776}
4777
4778// SetSampleRate sets the SampleRate field's value.
4779func (s *AacSettings) SetSampleRate(v float64) *AacSettings {
4780	s.SampleRate = &v
4781	return s
4782}
4783
4784// SetSpec sets the Spec field's value.
4785func (s *AacSettings) SetSpec(v string) *AacSettings {
4786	s.Spec = &v
4787	return s
4788}
4789
4790// SetVbrQuality sets the VbrQuality field's value.
4791func (s *AacSettings) SetVbrQuality(v string) *AacSettings {
4792	s.VbrQuality = &v
4793	return s
4794}
4795
4796// Ac3 Settings
4797type Ac3Settings struct {
4798	_ struct{} `type:"structure"`
4799
4800	// Average bitrate in bits/second. Valid bitrates depend on the coding mode.
4801	Bitrate *float64 `locationName:"bitrate" type:"double"`
4802
4803	// Specifies the bitstream mode (bsmod) for the emitted AC-3 stream. See ATSC
4804	// A/52-2012 for background on these values.
4805	BitstreamMode *string `locationName:"bitstreamMode" type:"string" enum:"Ac3BitstreamMode"`
4806
4807	// Dolby Digital coding mode. Determines number of channels.
4808	CodingMode *string `locationName:"codingMode" type:"string" enum:"Ac3CodingMode"`
4809
4810	// Sets the dialnorm for the output. If excluded and input audio is Dolby Digital,
4811	// dialnorm will be passed through.
4812	Dialnorm *int64 `locationName:"dialnorm" min:"1" type:"integer"`
4813
4814	// If set to filmStandard, adds dynamic range compression signaling to the output
4815	// bitstream as defined in the Dolby Digital specification.
4816	DrcProfile *string `locationName:"drcProfile" type:"string" enum:"Ac3DrcProfile"`
4817
4818	// When set to enabled, applies a 120Hz lowpass filter to the LFE channel prior
4819	// to encoding. Only valid in codingMode32Lfe mode.
4820	LfeFilter *string `locationName:"lfeFilter" type:"string" enum:"Ac3LfeFilter"`
4821
4822	// When set to "followInput", encoder metadata will be sourced from the DD,
4823	// DD+, or DolbyE decoder that supplied this audio data. If audio was not supplied
4824	// from one of these streams, then the static metadata settings will be used.
4825	MetadataControl *string `locationName:"metadataControl" type:"string" enum:"Ac3MetadataControl"`
4826}
4827
4828// String returns the string representation
4829func (s Ac3Settings) String() string {
4830	return awsutil.Prettify(s)
4831}
4832
4833// GoString returns the string representation
4834func (s Ac3Settings) GoString() string {
4835	return s.String()
4836}
4837
4838// Validate inspects the fields of the type to determine if they are valid.
4839func (s *Ac3Settings) Validate() error {
4840	invalidParams := request.ErrInvalidParams{Context: "Ac3Settings"}
4841	if s.Dialnorm != nil && *s.Dialnorm < 1 {
4842		invalidParams.Add(request.NewErrParamMinValue("Dialnorm", 1))
4843	}
4844
4845	if invalidParams.Len() > 0 {
4846		return invalidParams
4847	}
4848	return nil
4849}
4850
4851// SetBitrate sets the Bitrate field's value.
4852func (s *Ac3Settings) SetBitrate(v float64) *Ac3Settings {
4853	s.Bitrate = &v
4854	return s
4855}
4856
4857// SetBitstreamMode sets the BitstreamMode field's value.
4858func (s *Ac3Settings) SetBitstreamMode(v string) *Ac3Settings {
4859	s.BitstreamMode = &v
4860	return s
4861}
4862
4863// SetCodingMode sets the CodingMode field's value.
4864func (s *Ac3Settings) SetCodingMode(v string) *Ac3Settings {
4865	s.CodingMode = &v
4866	return s
4867}
4868
4869// SetDialnorm sets the Dialnorm field's value.
4870func (s *Ac3Settings) SetDialnorm(v int64) *Ac3Settings {
4871	s.Dialnorm = &v
4872	return s
4873}
4874
4875// SetDrcProfile sets the DrcProfile field's value.
4876func (s *Ac3Settings) SetDrcProfile(v string) *Ac3Settings {
4877	s.DrcProfile = &v
4878	return s
4879}
4880
4881// SetLfeFilter sets the LfeFilter field's value.
4882func (s *Ac3Settings) SetLfeFilter(v string) *Ac3Settings {
4883	s.LfeFilter = &v
4884	return s
4885}
4886
4887// SetMetadataControl sets the MetadataControl field's value.
4888func (s *Ac3Settings) SetMetadataControl(v string) *Ac3Settings {
4889	s.MetadataControl = &v
4890	return s
4891}
4892
4893// Archive Container Settings
4894type ArchiveContainerSettings struct {
4895	_ struct{} `type:"structure"`
4896
4897	// M2ts Settings
4898	M2tsSettings *M2tsSettings `locationName:"m2tsSettings" type:"structure"`
4899}
4900
4901// String returns the string representation
4902func (s ArchiveContainerSettings) String() string {
4903	return awsutil.Prettify(s)
4904}
4905
4906// GoString returns the string representation
4907func (s ArchiveContainerSettings) GoString() string {
4908	return s.String()
4909}
4910
4911// Validate inspects the fields of the type to determine if they are valid.
4912func (s *ArchiveContainerSettings) Validate() error {
4913	invalidParams := request.ErrInvalidParams{Context: "ArchiveContainerSettings"}
4914	if s.M2tsSettings != nil {
4915		if err := s.M2tsSettings.Validate(); err != nil {
4916			invalidParams.AddNested("M2tsSettings", err.(request.ErrInvalidParams))
4917		}
4918	}
4919
4920	if invalidParams.Len() > 0 {
4921		return invalidParams
4922	}
4923	return nil
4924}
4925
4926// SetM2tsSettings sets the M2tsSettings field's value.
4927func (s *ArchiveContainerSettings) SetM2tsSettings(v *M2tsSettings) *ArchiveContainerSettings {
4928	s.M2tsSettings = v
4929	return s
4930}
4931
4932// Archive Group Settings
4933type ArchiveGroupSettings struct {
4934	_ struct{} `type:"structure"`
4935
4936	// A directory and base filename where archive files should be written.
4937	//
4938	// Destination is a required field
4939	Destination *OutputLocationRef `locationName:"destination" type:"structure" required:"true"`
4940
4941	// Number of seconds to write to archive file before closing and starting a
4942	// new one.
4943	RolloverInterval *int64 `locationName:"rolloverInterval" min:"1" type:"integer"`
4944}
4945
4946// String returns the string representation
4947func (s ArchiveGroupSettings) String() string {
4948	return awsutil.Prettify(s)
4949}
4950
4951// GoString returns the string representation
4952func (s ArchiveGroupSettings) GoString() string {
4953	return s.String()
4954}
4955
4956// Validate inspects the fields of the type to determine if they are valid.
4957func (s *ArchiveGroupSettings) Validate() error {
4958	invalidParams := request.ErrInvalidParams{Context: "ArchiveGroupSettings"}
4959	if s.Destination == nil {
4960		invalidParams.Add(request.NewErrParamRequired("Destination"))
4961	}
4962	if s.RolloverInterval != nil && *s.RolloverInterval < 1 {
4963		invalidParams.Add(request.NewErrParamMinValue("RolloverInterval", 1))
4964	}
4965
4966	if invalidParams.Len() > 0 {
4967		return invalidParams
4968	}
4969	return nil
4970}
4971
4972// SetDestination sets the Destination field's value.
4973func (s *ArchiveGroupSettings) SetDestination(v *OutputLocationRef) *ArchiveGroupSettings {
4974	s.Destination = v
4975	return s
4976}
4977
4978// SetRolloverInterval sets the RolloverInterval field's value.
4979func (s *ArchiveGroupSettings) SetRolloverInterval(v int64) *ArchiveGroupSettings {
4980	s.RolloverInterval = &v
4981	return s
4982}
4983
4984// Archive Output Settings
4985type ArchiveOutputSettings struct {
4986	_ struct{} `type:"structure"`
4987
4988	// Settings specific to the container type of the file.
4989	//
4990	// ContainerSettings is a required field
4991	ContainerSettings *ArchiveContainerSettings `locationName:"containerSettings" type:"structure" required:"true"`
4992
4993	// Output file extension. If excluded, this will be auto-selected from the container
4994	// type.
4995	Extension *string `locationName:"extension" type:"string"`
4996
4997	// String concatenated to the end of the destination filename. Required for
4998	// multiple outputs of the same type.
4999	NameModifier *string `locationName:"nameModifier" type:"string"`
5000}
5001
5002// String returns the string representation
5003func (s ArchiveOutputSettings) String() string {
5004	return awsutil.Prettify(s)
5005}
5006
5007// GoString returns the string representation
5008func (s ArchiveOutputSettings) GoString() string {
5009	return s.String()
5010}
5011
5012// Validate inspects the fields of the type to determine if they are valid.
5013func (s *ArchiveOutputSettings) Validate() error {
5014	invalidParams := request.ErrInvalidParams{Context: "ArchiveOutputSettings"}
5015	if s.ContainerSettings == nil {
5016		invalidParams.Add(request.NewErrParamRequired("ContainerSettings"))
5017	}
5018	if s.ContainerSettings != nil {
5019		if err := s.ContainerSettings.Validate(); err != nil {
5020			invalidParams.AddNested("ContainerSettings", err.(request.ErrInvalidParams))
5021		}
5022	}
5023
5024	if invalidParams.Len() > 0 {
5025		return invalidParams
5026	}
5027	return nil
5028}
5029
5030// SetContainerSettings sets the ContainerSettings field's value.
5031func (s *ArchiveOutputSettings) SetContainerSettings(v *ArchiveContainerSettings) *ArchiveOutputSettings {
5032	s.ContainerSettings = v
5033	return s
5034}
5035
5036// SetExtension sets the Extension field's value.
5037func (s *ArchiveOutputSettings) SetExtension(v string) *ArchiveOutputSettings {
5038	s.Extension = &v
5039	return s
5040}
5041
5042// SetNameModifier sets the NameModifier field's value.
5043func (s *ArchiveOutputSettings) SetNameModifier(v string) *ArchiveOutputSettings {
5044	s.NameModifier = &v
5045	return s
5046}
5047
5048// Arib Destination Settings
5049type AribDestinationSettings struct {
5050	_ struct{} `type:"structure"`
5051}
5052
5053// String returns the string representation
5054func (s AribDestinationSettings) String() string {
5055	return awsutil.Prettify(s)
5056}
5057
5058// GoString returns the string representation
5059func (s AribDestinationSettings) GoString() string {
5060	return s.String()
5061}
5062
5063// Arib Source Settings
5064type AribSourceSettings struct {
5065	_ struct{} `type:"structure"`
5066}
5067
5068// String returns the string representation
5069func (s AribSourceSettings) String() string {
5070	return awsutil.Prettify(s)
5071}
5072
5073// GoString returns the string representation
5074func (s AribSourceSettings) GoString() string {
5075	return s.String()
5076}
5077
5078// Audio Channel Mapping
5079type AudioChannelMapping struct {
5080	_ struct{} `type:"structure"`
5081
5082	// Indices and gain values for each input channel that should be remixed into
5083	// this output channel.
5084	//
5085	// InputChannelLevels is a required field
5086	InputChannelLevels []*InputChannelLevel `locationName:"inputChannelLevels" type:"list" required:"true"`
5087
5088	// The index of the output channel being produced.
5089	//
5090	// OutputChannel is a required field
5091	OutputChannel *int64 `locationName:"outputChannel" type:"integer" required:"true"`
5092}
5093
5094// String returns the string representation
5095func (s AudioChannelMapping) String() string {
5096	return awsutil.Prettify(s)
5097}
5098
5099// GoString returns the string representation
5100func (s AudioChannelMapping) GoString() string {
5101	return s.String()
5102}
5103
5104// Validate inspects the fields of the type to determine if they are valid.
5105func (s *AudioChannelMapping) Validate() error {
5106	invalidParams := request.ErrInvalidParams{Context: "AudioChannelMapping"}
5107	if s.InputChannelLevels == nil {
5108		invalidParams.Add(request.NewErrParamRequired("InputChannelLevels"))
5109	}
5110	if s.OutputChannel == nil {
5111		invalidParams.Add(request.NewErrParamRequired("OutputChannel"))
5112	}
5113	if s.InputChannelLevels != nil {
5114		for i, v := range s.InputChannelLevels {
5115			if v == nil {
5116				continue
5117			}
5118			if err := v.Validate(); err != nil {
5119				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputChannelLevels", i), err.(request.ErrInvalidParams))
5120			}
5121		}
5122	}
5123
5124	if invalidParams.Len() > 0 {
5125		return invalidParams
5126	}
5127	return nil
5128}
5129
5130// SetInputChannelLevels sets the InputChannelLevels field's value.
5131func (s *AudioChannelMapping) SetInputChannelLevels(v []*InputChannelLevel) *AudioChannelMapping {
5132	s.InputChannelLevels = v
5133	return s
5134}
5135
5136// SetOutputChannel sets the OutputChannel field's value.
5137func (s *AudioChannelMapping) SetOutputChannel(v int64) *AudioChannelMapping {
5138	s.OutputChannel = &v
5139	return s
5140}
5141
5142// Audio Codec Settings
5143type AudioCodecSettings struct {
5144	_ struct{} `type:"structure"`
5145
5146	// Aac Settings
5147	AacSettings *AacSettings `locationName:"aacSettings" type:"structure"`
5148
5149	// Ac3 Settings
5150	Ac3Settings *Ac3Settings `locationName:"ac3Settings" type:"structure"`
5151
5152	// Eac3 Settings
5153	Eac3Settings *Eac3Settings `locationName:"eac3Settings" type:"structure"`
5154
5155	// Mp2 Settings
5156	Mp2Settings *Mp2Settings `locationName:"mp2Settings" type:"structure"`
5157
5158	// Pass Through Settings
5159	PassThroughSettings *PassThroughSettings `locationName:"passThroughSettings" type:"structure"`
5160}
5161
5162// String returns the string representation
5163func (s AudioCodecSettings) String() string {
5164	return awsutil.Prettify(s)
5165}
5166
5167// GoString returns the string representation
5168func (s AudioCodecSettings) GoString() string {
5169	return s.String()
5170}
5171
5172// Validate inspects the fields of the type to determine if they are valid.
5173func (s *AudioCodecSettings) Validate() error {
5174	invalidParams := request.ErrInvalidParams{Context: "AudioCodecSettings"}
5175	if s.Ac3Settings != nil {
5176		if err := s.Ac3Settings.Validate(); err != nil {
5177			invalidParams.AddNested("Ac3Settings", err.(request.ErrInvalidParams))
5178		}
5179	}
5180	if s.Eac3Settings != nil {
5181		if err := s.Eac3Settings.Validate(); err != nil {
5182			invalidParams.AddNested("Eac3Settings", err.(request.ErrInvalidParams))
5183		}
5184	}
5185
5186	if invalidParams.Len() > 0 {
5187		return invalidParams
5188	}
5189	return nil
5190}
5191
5192// SetAacSettings sets the AacSettings field's value.
5193func (s *AudioCodecSettings) SetAacSettings(v *AacSettings) *AudioCodecSettings {
5194	s.AacSettings = v
5195	return s
5196}
5197
5198// SetAc3Settings sets the Ac3Settings field's value.
5199func (s *AudioCodecSettings) SetAc3Settings(v *Ac3Settings) *AudioCodecSettings {
5200	s.Ac3Settings = v
5201	return s
5202}
5203
5204// SetEac3Settings sets the Eac3Settings field's value.
5205func (s *AudioCodecSettings) SetEac3Settings(v *Eac3Settings) *AudioCodecSettings {
5206	s.Eac3Settings = v
5207	return s
5208}
5209
5210// SetMp2Settings sets the Mp2Settings field's value.
5211func (s *AudioCodecSettings) SetMp2Settings(v *Mp2Settings) *AudioCodecSettings {
5212	s.Mp2Settings = v
5213	return s
5214}
5215
5216// SetPassThroughSettings sets the PassThroughSettings field's value.
5217func (s *AudioCodecSettings) SetPassThroughSettings(v *PassThroughSettings) *AudioCodecSettings {
5218	s.PassThroughSettings = v
5219	return s
5220}
5221
5222// Audio Description
5223type AudioDescription struct {
5224	_ struct{} `type:"structure"`
5225
5226	// Advanced audio normalization settings.
5227	AudioNormalizationSettings *AudioNormalizationSettings `locationName:"audioNormalizationSettings" type:"structure"`
5228
5229	// The name of the AudioSelector used as the source for this AudioDescription.
5230	//
5231	// AudioSelectorName is a required field
5232	AudioSelectorName *string `locationName:"audioSelectorName" type:"string" required:"true"`
5233
5234	// Applies only if audioTypeControl is useConfigured. The values for audioType
5235	// are defined in ISO-IEC 13818-1.
5236	AudioType *string `locationName:"audioType" type:"string" enum:"AudioType"`
5237
5238	// Determines how audio type is determined. followInput: If the input contains
5239	// an ISO 639 audioType, then that value is passed through to the output. If
5240	// the input contains no ISO 639 audioType, the value in Audio Type is included
5241	// in the output. useConfigured: The value in Audio Type is included in the
5242	// output.Note that this field and audioType are both ignored if inputType is
5243	// broadcasterMixedAd.
5244	AudioTypeControl *string `locationName:"audioTypeControl" type:"string" enum:"AudioDescriptionAudioTypeControl"`
5245
5246	// Audio codec settings.
5247	CodecSettings *AudioCodecSettings `locationName:"codecSettings" type:"structure"`
5248
5249	// Indicates the language of the audio output track. Only used if languageControlMode
5250	// is useConfigured, or there is no ISO 639 language code specified in the input.
5251	LanguageCode *string `locationName:"languageCode" min:"3" type:"string"`
5252
5253	// Choosing followInput will cause the ISO 639 language code of the output to
5254	// follow the ISO 639 language code of the input. The languageCode will be used
5255	// when useConfigured is set, or when followInput is selected but there is no
5256	// ISO 639 language code specified by the input.
5257	LanguageCodeControl *string `locationName:"languageCodeControl" type:"string" enum:"AudioDescriptionLanguageCodeControl"`
5258
5259	// The name of this AudioDescription. Outputs will use this name to uniquely
5260	// identify this AudioDescription. Description names should be unique within
5261	// this Live Event.
5262	//
5263	// Name is a required field
5264	Name *string `locationName:"name" type:"string" required:"true"`
5265
5266	// Settings that control how input audio channels are remixed into the output
5267	// audio channels.
5268	RemixSettings *RemixSettings `locationName:"remixSettings" type:"structure"`
5269
5270	// Used for MS Smooth and Apple HLS outputs. Indicates the name displayed by
5271	// the player (eg. English, or Director Commentary).
5272	StreamName *string `locationName:"streamName" type:"string"`
5273}
5274
5275// String returns the string representation
5276func (s AudioDescription) String() string {
5277	return awsutil.Prettify(s)
5278}
5279
5280// GoString returns the string representation
5281func (s AudioDescription) GoString() string {
5282	return s.String()
5283}
5284
5285// Validate inspects the fields of the type to determine if they are valid.
5286func (s *AudioDescription) Validate() error {
5287	invalidParams := request.ErrInvalidParams{Context: "AudioDescription"}
5288	if s.AudioSelectorName == nil {
5289		invalidParams.Add(request.NewErrParamRequired("AudioSelectorName"))
5290	}
5291	if s.LanguageCode != nil && len(*s.LanguageCode) < 3 {
5292		invalidParams.Add(request.NewErrParamMinLen("LanguageCode", 3))
5293	}
5294	if s.Name == nil {
5295		invalidParams.Add(request.NewErrParamRequired("Name"))
5296	}
5297	if s.CodecSettings != nil {
5298		if err := s.CodecSettings.Validate(); err != nil {
5299			invalidParams.AddNested("CodecSettings", err.(request.ErrInvalidParams))
5300		}
5301	}
5302	if s.RemixSettings != nil {
5303		if err := s.RemixSettings.Validate(); err != nil {
5304			invalidParams.AddNested("RemixSettings", err.(request.ErrInvalidParams))
5305		}
5306	}
5307
5308	if invalidParams.Len() > 0 {
5309		return invalidParams
5310	}
5311	return nil
5312}
5313
5314// SetAudioNormalizationSettings sets the AudioNormalizationSettings field's value.
5315func (s *AudioDescription) SetAudioNormalizationSettings(v *AudioNormalizationSettings) *AudioDescription {
5316	s.AudioNormalizationSettings = v
5317	return s
5318}
5319
5320// SetAudioSelectorName sets the AudioSelectorName field's value.
5321func (s *AudioDescription) SetAudioSelectorName(v string) *AudioDescription {
5322	s.AudioSelectorName = &v
5323	return s
5324}
5325
5326// SetAudioType sets the AudioType field's value.
5327func (s *AudioDescription) SetAudioType(v string) *AudioDescription {
5328	s.AudioType = &v
5329	return s
5330}
5331
5332// SetAudioTypeControl sets the AudioTypeControl field's value.
5333func (s *AudioDescription) SetAudioTypeControl(v string) *AudioDescription {
5334	s.AudioTypeControl = &v
5335	return s
5336}
5337
5338// SetCodecSettings sets the CodecSettings field's value.
5339func (s *AudioDescription) SetCodecSettings(v *AudioCodecSettings) *AudioDescription {
5340	s.CodecSettings = v
5341	return s
5342}
5343
5344// SetLanguageCode sets the LanguageCode field's value.
5345func (s *AudioDescription) SetLanguageCode(v string) *AudioDescription {
5346	s.LanguageCode = &v
5347	return s
5348}
5349
5350// SetLanguageCodeControl sets the LanguageCodeControl field's value.
5351func (s *AudioDescription) SetLanguageCodeControl(v string) *AudioDescription {
5352	s.LanguageCodeControl = &v
5353	return s
5354}
5355
5356// SetName sets the Name field's value.
5357func (s *AudioDescription) SetName(v string) *AudioDescription {
5358	s.Name = &v
5359	return s
5360}
5361
5362// SetRemixSettings sets the RemixSettings field's value.
5363func (s *AudioDescription) SetRemixSettings(v *RemixSettings) *AudioDescription {
5364	s.RemixSettings = v
5365	return s
5366}
5367
5368// SetStreamName sets the StreamName field's value.
5369func (s *AudioDescription) SetStreamName(v string) *AudioDescription {
5370	s.StreamName = &v
5371	return s
5372}
5373
5374// Audio Language Selection
5375type AudioLanguageSelection struct {
5376	_ struct{} `type:"structure"`
5377
5378	// Selects a specific three-letter language code from within an audio source.
5379	//
5380	// LanguageCode is a required field
5381	LanguageCode *string `locationName:"languageCode" type:"string" required:"true"`
5382
5383	// When set to "strict", the transport stream demux strictly identifies audio
5384	// streams by their language descriptor. If a PMT update occurs such that an
5385	// audio stream matching the initially selected language is no longer present
5386	// then mute will be encoded until the language returns. If "loose", then on
5387	// a PMT update the demux will choose another audio stream in the program with
5388	// the same stream type if it can't find one with the same language.
5389	LanguageSelectionPolicy *string `locationName:"languageSelectionPolicy" type:"string" enum:"AudioLanguageSelectionPolicy"`
5390}
5391
5392// String returns the string representation
5393func (s AudioLanguageSelection) String() string {
5394	return awsutil.Prettify(s)
5395}
5396
5397// GoString returns the string representation
5398func (s AudioLanguageSelection) GoString() string {
5399	return s.String()
5400}
5401
5402// Validate inspects the fields of the type to determine if they are valid.
5403func (s *AudioLanguageSelection) Validate() error {
5404	invalidParams := request.ErrInvalidParams{Context: "AudioLanguageSelection"}
5405	if s.LanguageCode == nil {
5406		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
5407	}
5408
5409	if invalidParams.Len() > 0 {
5410		return invalidParams
5411	}
5412	return nil
5413}
5414
5415// SetLanguageCode sets the LanguageCode field's value.
5416func (s *AudioLanguageSelection) SetLanguageCode(v string) *AudioLanguageSelection {
5417	s.LanguageCode = &v
5418	return s
5419}
5420
5421// SetLanguageSelectionPolicy sets the LanguageSelectionPolicy field's value.
5422func (s *AudioLanguageSelection) SetLanguageSelectionPolicy(v string) *AudioLanguageSelection {
5423	s.LanguageSelectionPolicy = &v
5424	return s
5425}
5426
5427// Audio Normalization Settings
5428type AudioNormalizationSettings struct {
5429	_ struct{} `type:"structure"`
5430
5431	// Audio normalization algorithm to use. itu17701 conforms to the CALM Act specification,
5432	// itu17702 conforms to the EBU R-128 specification.
5433	Algorithm *string `locationName:"algorithm" type:"string" enum:"AudioNormalizationAlgorithm"`
5434
5435	// When set to correctAudio the output audio is corrected using the chosen algorithm.
5436	// If set to measureOnly, the audio will be measured but not adjusted.
5437	AlgorithmControl *string `locationName:"algorithmControl" type:"string" enum:"AudioNormalizationAlgorithmControl"`
5438
5439	// Target LKFS(loudness) to adjust volume to. If no value is entered, a default
5440	// value will be used according to the chosen algorithm. The CALM Act (1770-1)
5441	// recommends a target of -24 LKFS. The EBU R-128 specification (1770-2) recommends
5442	// a target of -23 LKFS.
5443	TargetLkfs *float64 `locationName:"targetLkfs" type:"double"`
5444}
5445
5446// String returns the string representation
5447func (s AudioNormalizationSettings) String() string {
5448	return awsutil.Prettify(s)
5449}
5450
5451// GoString returns the string representation
5452func (s AudioNormalizationSettings) GoString() string {
5453	return s.String()
5454}
5455
5456// SetAlgorithm sets the Algorithm field's value.
5457func (s *AudioNormalizationSettings) SetAlgorithm(v string) *AudioNormalizationSettings {
5458	s.Algorithm = &v
5459	return s
5460}
5461
5462// SetAlgorithmControl sets the AlgorithmControl field's value.
5463func (s *AudioNormalizationSettings) SetAlgorithmControl(v string) *AudioNormalizationSettings {
5464	s.AlgorithmControl = &v
5465	return s
5466}
5467
5468// SetTargetLkfs sets the TargetLkfs field's value.
5469func (s *AudioNormalizationSettings) SetTargetLkfs(v float64) *AudioNormalizationSettings {
5470	s.TargetLkfs = &v
5471	return s
5472}
5473
5474// Audio Only Hls Settings
5475type AudioOnlyHlsSettings struct {
5476	_ struct{} `type:"structure"`
5477
5478	// Specifies the group to which the audio Rendition belongs.
5479	AudioGroupId *string `locationName:"audioGroupId" type:"string"`
5480
5481	// Optional. Specifies the .jpg or .png image to use as the cover art for an
5482	// audio-only output. We recommend a low bit-size file because the image increases
5483	// the output audio bandwidth.The image is attached to the audio as an ID3 tag,
5484	// frame type APIC, picture type 0x10, as per the "ID3 tag version 2.4.0 - Native
5485	// Frames" standard.
5486	AudioOnlyImage *InputLocation `locationName:"audioOnlyImage" type:"structure"`
5487
5488	// Four types of audio-only tracks are supported:Audio-Only Variant StreamThe
5489	// client can play back this audio-only stream instead of video in low-bandwidth
5490	// scenarios. Represented as an EXT-X-STREAM-INF in the HLS manifest.Alternate
5491	// Audio, Auto Select, DefaultAlternate rendition that the client should try
5492	// to play back by default. Represented as an EXT-X-MEDIA in the HLS manifest
5493	// with DEFAULT=YES, AUTOSELECT=YESAlternate Audio, Auto Select, Not DefaultAlternate
5494	// rendition that the client may try to play back by default. Represented as
5495	// an EXT-X-MEDIA in the HLS manifest with DEFAULT=NO, AUTOSELECT=YESAlternate
5496	// Audio, not Auto SelectAlternate rendition that the client will not try to
5497	// play back by default. Represented as an EXT-X-MEDIA in the HLS manifest with
5498	// DEFAULT=NO, AUTOSELECT=NO
5499	AudioTrackType *string `locationName:"audioTrackType" type:"string" enum:"AudioOnlyHlsTrackType"`
5500
5501	// Specifies the segment type.
5502	SegmentType *string `locationName:"segmentType" type:"string" enum:"AudioOnlyHlsSegmentType"`
5503}
5504
5505// String returns the string representation
5506func (s AudioOnlyHlsSettings) String() string {
5507	return awsutil.Prettify(s)
5508}
5509
5510// GoString returns the string representation
5511func (s AudioOnlyHlsSettings) GoString() string {
5512	return s.String()
5513}
5514
5515// Validate inspects the fields of the type to determine if they are valid.
5516func (s *AudioOnlyHlsSettings) Validate() error {
5517	invalidParams := request.ErrInvalidParams{Context: "AudioOnlyHlsSettings"}
5518	if s.AudioOnlyImage != nil {
5519		if err := s.AudioOnlyImage.Validate(); err != nil {
5520			invalidParams.AddNested("AudioOnlyImage", err.(request.ErrInvalidParams))
5521		}
5522	}
5523
5524	if invalidParams.Len() > 0 {
5525		return invalidParams
5526	}
5527	return nil
5528}
5529
5530// SetAudioGroupId sets the AudioGroupId field's value.
5531func (s *AudioOnlyHlsSettings) SetAudioGroupId(v string) *AudioOnlyHlsSettings {
5532	s.AudioGroupId = &v
5533	return s
5534}
5535
5536// SetAudioOnlyImage sets the AudioOnlyImage field's value.
5537func (s *AudioOnlyHlsSettings) SetAudioOnlyImage(v *InputLocation) *AudioOnlyHlsSettings {
5538	s.AudioOnlyImage = v
5539	return s
5540}
5541
5542// SetAudioTrackType sets the AudioTrackType field's value.
5543func (s *AudioOnlyHlsSettings) SetAudioTrackType(v string) *AudioOnlyHlsSettings {
5544	s.AudioTrackType = &v
5545	return s
5546}
5547
5548// SetSegmentType sets the SegmentType field's value.
5549func (s *AudioOnlyHlsSettings) SetSegmentType(v string) *AudioOnlyHlsSettings {
5550	s.SegmentType = &v
5551	return s
5552}
5553
5554// Audio Pid Selection
5555type AudioPidSelection struct {
5556	_ struct{} `type:"structure"`
5557
5558	// Selects a specific PID from within a source.
5559	//
5560	// Pid is a required field
5561	Pid *int64 `locationName:"pid" type:"integer" required:"true"`
5562}
5563
5564// String returns the string representation
5565func (s AudioPidSelection) String() string {
5566	return awsutil.Prettify(s)
5567}
5568
5569// GoString returns the string representation
5570func (s AudioPidSelection) GoString() string {
5571	return s.String()
5572}
5573
5574// Validate inspects the fields of the type to determine if they are valid.
5575func (s *AudioPidSelection) Validate() error {
5576	invalidParams := request.ErrInvalidParams{Context: "AudioPidSelection"}
5577	if s.Pid == nil {
5578		invalidParams.Add(request.NewErrParamRequired("Pid"))
5579	}
5580
5581	if invalidParams.Len() > 0 {
5582		return invalidParams
5583	}
5584	return nil
5585}
5586
5587// SetPid sets the Pid field's value.
5588func (s *AudioPidSelection) SetPid(v int64) *AudioPidSelection {
5589	s.Pid = &v
5590	return s
5591}
5592
5593// Audio Selector
5594type AudioSelector struct {
5595	_ struct{} `type:"structure"`
5596
5597	// The name of this AudioSelector. AudioDescriptions will use this name to uniquely
5598	// identify this Selector. Selector names should be unique per input.
5599	//
5600	// Name is a required field
5601	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
5602
5603	// The audio selector settings.
5604	SelectorSettings *AudioSelectorSettings `locationName:"selectorSettings" type:"structure"`
5605}
5606
5607// String returns the string representation
5608func (s AudioSelector) String() string {
5609	return awsutil.Prettify(s)
5610}
5611
5612// GoString returns the string representation
5613func (s AudioSelector) GoString() string {
5614	return s.String()
5615}
5616
5617// Validate inspects the fields of the type to determine if they are valid.
5618func (s *AudioSelector) Validate() error {
5619	invalidParams := request.ErrInvalidParams{Context: "AudioSelector"}
5620	if s.Name == nil {
5621		invalidParams.Add(request.NewErrParamRequired("Name"))
5622	}
5623	if s.Name != nil && len(*s.Name) < 1 {
5624		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
5625	}
5626	if s.SelectorSettings != nil {
5627		if err := s.SelectorSettings.Validate(); err != nil {
5628			invalidParams.AddNested("SelectorSettings", err.(request.ErrInvalidParams))
5629		}
5630	}
5631
5632	if invalidParams.Len() > 0 {
5633		return invalidParams
5634	}
5635	return nil
5636}
5637
5638// SetName sets the Name field's value.
5639func (s *AudioSelector) SetName(v string) *AudioSelector {
5640	s.Name = &v
5641	return s
5642}
5643
5644// SetSelectorSettings sets the SelectorSettings field's value.
5645func (s *AudioSelector) SetSelectorSettings(v *AudioSelectorSettings) *AudioSelector {
5646	s.SelectorSettings = v
5647	return s
5648}
5649
5650// Audio Selector Settings
5651type AudioSelectorSettings struct {
5652	_ struct{} `type:"structure"`
5653
5654	// Audio Language Selection
5655	AudioLanguageSelection *AudioLanguageSelection `locationName:"audioLanguageSelection" type:"structure"`
5656
5657	// Audio Pid Selection
5658	AudioPidSelection *AudioPidSelection `locationName:"audioPidSelection" type:"structure"`
5659
5660	// Audio Track Selection
5661	AudioTrackSelection *AudioTrackSelection `locationName:"audioTrackSelection" type:"structure"`
5662}
5663
5664// String returns the string representation
5665func (s AudioSelectorSettings) String() string {
5666	return awsutil.Prettify(s)
5667}
5668
5669// GoString returns the string representation
5670func (s AudioSelectorSettings) GoString() string {
5671	return s.String()
5672}
5673
5674// Validate inspects the fields of the type to determine if they are valid.
5675func (s *AudioSelectorSettings) Validate() error {
5676	invalidParams := request.ErrInvalidParams{Context: "AudioSelectorSettings"}
5677	if s.AudioLanguageSelection != nil {
5678		if err := s.AudioLanguageSelection.Validate(); err != nil {
5679			invalidParams.AddNested("AudioLanguageSelection", err.(request.ErrInvalidParams))
5680		}
5681	}
5682	if s.AudioPidSelection != nil {
5683		if err := s.AudioPidSelection.Validate(); err != nil {
5684			invalidParams.AddNested("AudioPidSelection", err.(request.ErrInvalidParams))
5685		}
5686	}
5687	if s.AudioTrackSelection != nil {
5688		if err := s.AudioTrackSelection.Validate(); err != nil {
5689			invalidParams.AddNested("AudioTrackSelection", err.(request.ErrInvalidParams))
5690		}
5691	}
5692
5693	if invalidParams.Len() > 0 {
5694		return invalidParams
5695	}
5696	return nil
5697}
5698
5699// SetAudioLanguageSelection sets the AudioLanguageSelection field's value.
5700func (s *AudioSelectorSettings) SetAudioLanguageSelection(v *AudioLanguageSelection) *AudioSelectorSettings {
5701	s.AudioLanguageSelection = v
5702	return s
5703}
5704
5705// SetAudioPidSelection sets the AudioPidSelection field's value.
5706func (s *AudioSelectorSettings) SetAudioPidSelection(v *AudioPidSelection) *AudioSelectorSettings {
5707	s.AudioPidSelection = v
5708	return s
5709}
5710
5711// SetAudioTrackSelection sets the AudioTrackSelection field's value.
5712func (s *AudioSelectorSettings) SetAudioTrackSelection(v *AudioTrackSelection) *AudioSelectorSettings {
5713	s.AudioTrackSelection = v
5714	return s
5715}
5716
5717// Audio Track
5718type AudioTrack struct {
5719	_ struct{} `type:"structure"`
5720
5721	// 1-based integer value that maps to a specific audio track
5722	//
5723	// Track is a required field
5724	Track *int64 `locationName:"track" min:"1" type:"integer" required:"true"`
5725}
5726
5727// String returns the string representation
5728func (s AudioTrack) String() string {
5729	return awsutil.Prettify(s)
5730}
5731
5732// GoString returns the string representation
5733func (s AudioTrack) GoString() string {
5734	return s.String()
5735}
5736
5737// Validate inspects the fields of the type to determine if they are valid.
5738func (s *AudioTrack) Validate() error {
5739	invalidParams := request.ErrInvalidParams{Context: "AudioTrack"}
5740	if s.Track == nil {
5741		invalidParams.Add(request.NewErrParamRequired("Track"))
5742	}
5743	if s.Track != nil && *s.Track < 1 {
5744		invalidParams.Add(request.NewErrParamMinValue("Track", 1))
5745	}
5746
5747	if invalidParams.Len() > 0 {
5748		return invalidParams
5749	}
5750	return nil
5751}
5752
5753// SetTrack sets the Track field's value.
5754func (s *AudioTrack) SetTrack(v int64) *AudioTrack {
5755	s.Track = &v
5756	return s
5757}
5758
5759// Audio Track Selection
5760type AudioTrackSelection struct {
5761	_ struct{} `type:"structure"`
5762
5763	// Selects one or more unique audio tracks from within an mp4 source.
5764	//
5765	// Tracks is a required field
5766	Tracks []*AudioTrack `locationName:"tracks" type:"list" required:"true"`
5767}
5768
5769// String returns the string representation
5770func (s AudioTrackSelection) String() string {
5771	return awsutil.Prettify(s)
5772}
5773
5774// GoString returns the string representation
5775func (s AudioTrackSelection) GoString() string {
5776	return s.String()
5777}
5778
5779// Validate inspects the fields of the type to determine if they are valid.
5780func (s *AudioTrackSelection) Validate() error {
5781	invalidParams := request.ErrInvalidParams{Context: "AudioTrackSelection"}
5782	if s.Tracks == nil {
5783		invalidParams.Add(request.NewErrParamRequired("Tracks"))
5784	}
5785	if s.Tracks != nil {
5786		for i, v := range s.Tracks {
5787			if v == nil {
5788				continue
5789			}
5790			if err := v.Validate(); err != nil {
5791				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tracks", i), err.(request.ErrInvalidParams))
5792			}
5793		}
5794	}
5795
5796	if invalidParams.Len() > 0 {
5797		return invalidParams
5798	}
5799	return nil
5800}
5801
5802// SetTracks sets the Tracks field's value.
5803func (s *AudioTrackSelection) SetTracks(v []*AudioTrack) *AudioTrackSelection {
5804	s.Tracks = v
5805	return s
5806}
5807
5808// The settings for Automatic Input Failover.
5809type AutomaticInputFailoverSettings struct {
5810	_ struct{} `type:"structure"`
5811
5812	// Input preference when deciding which input to make active when a previously
5813	// failed input has recovered.
5814	InputPreference *string `locationName:"inputPreference" type:"string" enum:"InputPreference"`
5815
5816	// The input ID of the secondary input in the automatic input failover pair.
5817	//
5818	// SecondaryInputId is a required field
5819	SecondaryInputId *string `locationName:"secondaryInputId" type:"string" required:"true"`
5820}
5821
5822// String returns the string representation
5823func (s AutomaticInputFailoverSettings) String() string {
5824	return awsutil.Prettify(s)
5825}
5826
5827// GoString returns the string representation
5828func (s AutomaticInputFailoverSettings) GoString() string {
5829	return s.String()
5830}
5831
5832// Validate inspects the fields of the type to determine if they are valid.
5833func (s *AutomaticInputFailoverSettings) Validate() error {
5834	invalidParams := request.ErrInvalidParams{Context: "AutomaticInputFailoverSettings"}
5835	if s.SecondaryInputId == nil {
5836		invalidParams.Add(request.NewErrParamRequired("SecondaryInputId"))
5837	}
5838
5839	if invalidParams.Len() > 0 {
5840		return invalidParams
5841	}
5842	return nil
5843}
5844
5845// SetInputPreference sets the InputPreference field's value.
5846func (s *AutomaticInputFailoverSettings) SetInputPreference(v string) *AutomaticInputFailoverSettings {
5847	s.InputPreference = &v
5848	return s
5849}
5850
5851// SetSecondaryInputId sets the SecondaryInputId field's value.
5852func (s *AutomaticInputFailoverSettings) SetSecondaryInputId(v string) *AutomaticInputFailoverSettings {
5853	s.SecondaryInputId = &v
5854	return s
5855}
5856
5857// Avail Blanking
5858type AvailBlanking struct {
5859	_ struct{} `type:"structure"`
5860
5861	// Blanking image to be used. Leave empty for solid black. Only bmp and png
5862	// images are supported.
5863	AvailBlankingImage *InputLocation `locationName:"availBlankingImage" type:"structure"`
5864
5865	// When set to enabled, causes video, audio and captions to be blanked when
5866	// insertion metadata is added.
5867	State *string `locationName:"state" type:"string" enum:"AvailBlankingState"`
5868}
5869
5870// String returns the string representation
5871func (s AvailBlanking) String() string {
5872	return awsutil.Prettify(s)
5873}
5874
5875// GoString returns the string representation
5876func (s AvailBlanking) GoString() string {
5877	return s.String()
5878}
5879
5880// Validate inspects the fields of the type to determine if they are valid.
5881func (s *AvailBlanking) Validate() error {
5882	invalidParams := request.ErrInvalidParams{Context: "AvailBlanking"}
5883	if s.AvailBlankingImage != nil {
5884		if err := s.AvailBlankingImage.Validate(); err != nil {
5885			invalidParams.AddNested("AvailBlankingImage", err.(request.ErrInvalidParams))
5886		}
5887	}
5888
5889	if invalidParams.Len() > 0 {
5890		return invalidParams
5891	}
5892	return nil
5893}
5894
5895// SetAvailBlankingImage sets the AvailBlankingImage field's value.
5896func (s *AvailBlanking) SetAvailBlankingImage(v *InputLocation) *AvailBlanking {
5897	s.AvailBlankingImage = v
5898	return s
5899}
5900
5901// SetState sets the State field's value.
5902func (s *AvailBlanking) SetState(v string) *AvailBlanking {
5903	s.State = &v
5904	return s
5905}
5906
5907// Avail Configuration
5908type AvailConfiguration struct {
5909	_ struct{} `type:"structure"`
5910
5911	// Ad avail settings.
5912	AvailSettings *AvailSettings `locationName:"availSettings" type:"structure"`
5913}
5914
5915// String returns the string representation
5916func (s AvailConfiguration) String() string {
5917	return awsutil.Prettify(s)
5918}
5919
5920// GoString returns the string representation
5921func (s AvailConfiguration) GoString() string {
5922	return s.String()
5923}
5924
5925// Validate inspects the fields of the type to determine if they are valid.
5926func (s *AvailConfiguration) Validate() error {
5927	invalidParams := request.ErrInvalidParams{Context: "AvailConfiguration"}
5928	if s.AvailSettings != nil {
5929		if err := s.AvailSettings.Validate(); err != nil {
5930			invalidParams.AddNested("AvailSettings", err.(request.ErrInvalidParams))
5931		}
5932	}
5933
5934	if invalidParams.Len() > 0 {
5935		return invalidParams
5936	}
5937	return nil
5938}
5939
5940// SetAvailSettings sets the AvailSettings field's value.
5941func (s *AvailConfiguration) SetAvailSettings(v *AvailSettings) *AvailConfiguration {
5942	s.AvailSettings = v
5943	return s
5944}
5945
5946// Avail Settings
5947type AvailSettings struct {
5948	_ struct{} `type:"structure"`
5949
5950	// Scte35 Splice Insert
5951	Scte35SpliceInsert *Scte35SpliceInsert `locationName:"scte35SpliceInsert" type:"structure"`
5952
5953	// Scte35 Time Signal Apos
5954	Scte35TimeSignalApos *Scte35TimeSignalApos `locationName:"scte35TimeSignalApos" type:"structure"`
5955}
5956
5957// String returns the string representation
5958func (s AvailSettings) String() string {
5959	return awsutil.Prettify(s)
5960}
5961
5962// GoString returns the string representation
5963func (s AvailSettings) GoString() string {
5964	return s.String()
5965}
5966
5967// Validate inspects the fields of the type to determine if they are valid.
5968func (s *AvailSettings) Validate() error {
5969	invalidParams := request.ErrInvalidParams{Context: "AvailSettings"}
5970	if s.Scte35SpliceInsert != nil {
5971		if err := s.Scte35SpliceInsert.Validate(); err != nil {
5972			invalidParams.AddNested("Scte35SpliceInsert", err.(request.ErrInvalidParams))
5973		}
5974	}
5975	if s.Scte35TimeSignalApos != nil {
5976		if err := s.Scte35TimeSignalApos.Validate(); err != nil {
5977			invalidParams.AddNested("Scte35TimeSignalApos", err.(request.ErrInvalidParams))
5978		}
5979	}
5980
5981	if invalidParams.Len() > 0 {
5982		return invalidParams
5983	}
5984	return nil
5985}
5986
5987// SetScte35SpliceInsert sets the Scte35SpliceInsert field's value.
5988func (s *AvailSettings) SetScte35SpliceInsert(v *Scte35SpliceInsert) *AvailSettings {
5989	s.Scte35SpliceInsert = v
5990	return s
5991}
5992
5993// SetScte35TimeSignalApos sets the Scte35TimeSignalApos field's value.
5994func (s *AvailSettings) SetScte35TimeSignalApos(v *Scte35TimeSignalApos) *AvailSettings {
5995	s.Scte35TimeSignalApos = v
5996	return s
5997}
5998
5999type BadGatewayException struct {
6000	_            struct{}                  `type:"structure"`
6001	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
6002
6003	Message_ *string `locationName:"message" type:"string"`
6004}
6005
6006// String returns the string representation
6007func (s BadGatewayException) String() string {
6008	return awsutil.Prettify(s)
6009}
6010
6011// GoString returns the string representation
6012func (s BadGatewayException) GoString() string {
6013	return s.String()
6014}
6015
6016func newErrorBadGatewayException(v protocol.ResponseMetadata) error {
6017	return &BadGatewayException{
6018		RespMetadata: v,
6019	}
6020}
6021
6022// Code returns the exception type name.
6023func (s *BadGatewayException) Code() string {
6024	return "BadGatewayException"
6025}
6026
6027// Message returns the exception's message.
6028func (s *BadGatewayException) Message() string {
6029	if s.Message_ != nil {
6030		return *s.Message_
6031	}
6032	return ""
6033}
6034
6035// OrigErr always returns nil, satisfies awserr.Error interface.
6036func (s *BadGatewayException) OrigErr() error {
6037	return nil
6038}
6039
6040func (s *BadGatewayException) Error() string {
6041	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6042}
6043
6044// Status code returns the HTTP status code for the request's response error.
6045func (s *BadGatewayException) StatusCode() int {
6046	return s.RespMetadata.StatusCode
6047}
6048
6049// RequestID returns the service's response RequestID for request.
6050func (s *BadGatewayException) RequestID() string {
6051	return s.RespMetadata.RequestID
6052}
6053
6054type BadRequestException struct {
6055	_            struct{}                  `type:"structure"`
6056	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
6057
6058	Message_ *string `locationName:"message" type:"string"`
6059}
6060
6061// String returns the string representation
6062func (s BadRequestException) String() string {
6063	return awsutil.Prettify(s)
6064}
6065
6066// GoString returns the string representation
6067func (s BadRequestException) GoString() string {
6068	return s.String()
6069}
6070
6071func newErrorBadRequestException(v protocol.ResponseMetadata) error {
6072	return &BadRequestException{
6073		RespMetadata: v,
6074	}
6075}
6076
6077// Code returns the exception type name.
6078func (s *BadRequestException) Code() string {
6079	return "BadRequestException"
6080}
6081
6082// Message returns the exception's message.
6083func (s *BadRequestException) Message() string {
6084	if s.Message_ != nil {
6085		return *s.Message_
6086	}
6087	return ""
6088}
6089
6090// OrigErr always returns nil, satisfies awserr.Error interface.
6091func (s *BadRequestException) OrigErr() error {
6092	return nil
6093}
6094
6095func (s *BadRequestException) Error() string {
6096	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6097}
6098
6099// Status code returns the HTTP status code for the request's response error.
6100func (s *BadRequestException) StatusCode() int {
6101	return s.RespMetadata.StatusCode
6102}
6103
6104// RequestID returns the service's response RequestID for request.
6105func (s *BadRequestException) RequestID() string {
6106	return s.RespMetadata.RequestID
6107}
6108
6109// A list of schedule actions to create (in a request) or that have been created
6110// (in a response).
6111type BatchScheduleActionCreateRequest struct {
6112	_ struct{} `type:"structure"`
6113
6114	// A list of schedule actions to create.
6115	//
6116	// ScheduleActions is a required field
6117	ScheduleActions []*ScheduleAction `locationName:"scheduleActions" type:"list" required:"true"`
6118}
6119
6120// String returns the string representation
6121func (s BatchScheduleActionCreateRequest) String() string {
6122	return awsutil.Prettify(s)
6123}
6124
6125// GoString returns the string representation
6126func (s BatchScheduleActionCreateRequest) GoString() string {
6127	return s.String()
6128}
6129
6130// Validate inspects the fields of the type to determine if they are valid.
6131func (s *BatchScheduleActionCreateRequest) Validate() error {
6132	invalidParams := request.ErrInvalidParams{Context: "BatchScheduleActionCreateRequest"}
6133	if s.ScheduleActions == nil {
6134		invalidParams.Add(request.NewErrParamRequired("ScheduleActions"))
6135	}
6136	if s.ScheduleActions != nil {
6137		for i, v := range s.ScheduleActions {
6138			if v == nil {
6139				continue
6140			}
6141			if err := v.Validate(); err != nil {
6142				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ScheduleActions", i), err.(request.ErrInvalidParams))
6143			}
6144		}
6145	}
6146
6147	if invalidParams.Len() > 0 {
6148		return invalidParams
6149	}
6150	return nil
6151}
6152
6153// SetScheduleActions sets the ScheduleActions field's value.
6154func (s *BatchScheduleActionCreateRequest) SetScheduleActions(v []*ScheduleAction) *BatchScheduleActionCreateRequest {
6155	s.ScheduleActions = v
6156	return s
6157}
6158
6159// List of actions that have been created in the schedule.
6160type BatchScheduleActionCreateResult struct {
6161	_ struct{} `type:"structure"`
6162
6163	// List of actions that have been created in the schedule.
6164	//
6165	// ScheduleActions is a required field
6166	ScheduleActions []*ScheduleAction `locationName:"scheduleActions" type:"list" required:"true"`
6167}
6168
6169// String returns the string representation
6170func (s BatchScheduleActionCreateResult) String() string {
6171	return awsutil.Prettify(s)
6172}
6173
6174// GoString returns the string representation
6175func (s BatchScheduleActionCreateResult) GoString() string {
6176	return s.String()
6177}
6178
6179// SetScheduleActions sets the ScheduleActions field's value.
6180func (s *BatchScheduleActionCreateResult) SetScheduleActions(v []*ScheduleAction) *BatchScheduleActionCreateResult {
6181	s.ScheduleActions = v
6182	return s
6183}
6184
6185// A list of schedule actions to delete.
6186type BatchScheduleActionDeleteRequest struct {
6187	_ struct{} `type:"structure"`
6188
6189	// A list of schedule actions to delete.
6190	//
6191	// ActionNames is a required field
6192	ActionNames []*string `locationName:"actionNames" type:"list" required:"true"`
6193}
6194
6195// String returns the string representation
6196func (s BatchScheduleActionDeleteRequest) String() string {
6197	return awsutil.Prettify(s)
6198}
6199
6200// GoString returns the string representation
6201func (s BatchScheduleActionDeleteRequest) GoString() string {
6202	return s.String()
6203}
6204
6205// Validate inspects the fields of the type to determine if they are valid.
6206func (s *BatchScheduleActionDeleteRequest) Validate() error {
6207	invalidParams := request.ErrInvalidParams{Context: "BatchScheduleActionDeleteRequest"}
6208	if s.ActionNames == nil {
6209		invalidParams.Add(request.NewErrParamRequired("ActionNames"))
6210	}
6211
6212	if invalidParams.Len() > 0 {
6213		return invalidParams
6214	}
6215	return nil
6216}
6217
6218// SetActionNames sets the ActionNames field's value.
6219func (s *BatchScheduleActionDeleteRequest) SetActionNames(v []*string) *BatchScheduleActionDeleteRequest {
6220	s.ActionNames = v
6221	return s
6222}
6223
6224// List of actions that have been deleted from the schedule.
6225type BatchScheduleActionDeleteResult struct {
6226	_ struct{} `type:"structure"`
6227
6228	// List of actions that have been deleted from the schedule.
6229	//
6230	// ScheduleActions is a required field
6231	ScheduleActions []*ScheduleAction `locationName:"scheduleActions" type:"list" required:"true"`
6232}
6233
6234// String returns the string representation
6235func (s BatchScheduleActionDeleteResult) String() string {
6236	return awsutil.Prettify(s)
6237}
6238
6239// GoString returns the string representation
6240func (s BatchScheduleActionDeleteResult) GoString() string {
6241	return s.String()
6242}
6243
6244// SetScheduleActions sets the ScheduleActions field's value.
6245func (s *BatchScheduleActionDeleteResult) SetScheduleActions(v []*ScheduleAction) *BatchScheduleActionDeleteResult {
6246	s.ScheduleActions = v
6247	return s
6248}
6249
6250// A request to create actions (add actions to the schedule), delete actions
6251// (remove actions from the schedule), or both create and delete actions.
6252type BatchUpdateScheduleInput struct {
6253	_ struct{} `type:"structure"`
6254
6255	// ChannelId is a required field
6256	ChannelId *string `location:"uri" locationName:"channelId" type:"string" required:"true"`
6257
6258	// Schedule actions to create in the schedule.
6259	Creates *BatchScheduleActionCreateRequest `locationName:"creates" type:"structure"`
6260
6261	// Schedule actions to delete from the schedule.
6262	Deletes *BatchScheduleActionDeleteRequest `locationName:"deletes" type:"structure"`
6263}
6264
6265// String returns the string representation
6266func (s BatchUpdateScheduleInput) String() string {
6267	return awsutil.Prettify(s)
6268}
6269
6270// GoString returns the string representation
6271func (s BatchUpdateScheduleInput) GoString() string {
6272	return s.String()
6273}
6274
6275// Validate inspects the fields of the type to determine if they are valid.
6276func (s *BatchUpdateScheduleInput) Validate() error {
6277	invalidParams := request.ErrInvalidParams{Context: "BatchUpdateScheduleInput"}
6278	if s.ChannelId == nil {
6279		invalidParams.Add(request.NewErrParamRequired("ChannelId"))
6280	}
6281	if s.ChannelId != nil && len(*s.ChannelId) < 1 {
6282		invalidParams.Add(request.NewErrParamMinLen("ChannelId", 1))
6283	}
6284	if s.Creates != nil {
6285		if err := s.Creates.Validate(); err != nil {
6286			invalidParams.AddNested("Creates", err.(request.ErrInvalidParams))
6287		}
6288	}
6289	if s.Deletes != nil {
6290		if err := s.Deletes.Validate(); err != nil {
6291			invalidParams.AddNested("Deletes", err.(request.ErrInvalidParams))
6292		}
6293	}
6294
6295	if invalidParams.Len() > 0 {
6296		return invalidParams
6297	}
6298	return nil
6299}
6300
6301// SetChannelId sets the ChannelId field's value.
6302func (s *BatchUpdateScheduleInput) SetChannelId(v string) *BatchUpdateScheduleInput {
6303	s.ChannelId = &v
6304	return s
6305}
6306
6307// SetCreates sets the Creates field's value.
6308func (s *BatchUpdateScheduleInput) SetCreates(v *BatchScheduleActionCreateRequest) *BatchUpdateScheduleInput {
6309	s.Creates = v
6310	return s
6311}
6312
6313// SetDeletes sets the Deletes field's value.
6314func (s *BatchUpdateScheduleInput) SetDeletes(v *BatchScheduleActionDeleteRequest) *BatchUpdateScheduleInput {
6315	s.Deletes = v
6316	return s
6317}
6318
6319type BatchUpdateScheduleOutput struct {
6320	_ struct{} `type:"structure"`
6321
6322	// List of actions that have been created in the schedule.
6323	Creates *BatchScheduleActionCreateResult `locationName:"creates" type:"structure"`
6324
6325	// List of actions that have been deleted from the schedule.
6326	Deletes *BatchScheduleActionDeleteResult `locationName:"deletes" type:"structure"`
6327}
6328
6329// String returns the string representation
6330func (s BatchUpdateScheduleOutput) String() string {
6331	return awsutil.Prettify(s)
6332}
6333
6334// GoString returns the string representation
6335func (s BatchUpdateScheduleOutput) GoString() string {
6336	return s.String()
6337}
6338
6339// SetCreates sets the Creates field's value.
6340func (s *BatchUpdateScheduleOutput) SetCreates(v *BatchScheduleActionCreateResult) *BatchUpdateScheduleOutput {
6341	s.Creates = v
6342	return s
6343}
6344
6345// SetDeletes sets the Deletes field's value.
6346func (s *BatchUpdateScheduleOutput) SetDeletes(v *BatchScheduleActionDeleteResult) *BatchUpdateScheduleOutput {
6347	s.Deletes = v
6348	return s
6349}
6350
6351// Blackout Slate
6352type BlackoutSlate struct {
6353	_ struct{} `type:"structure"`
6354
6355	// Blackout slate image to be used. Leave empty for solid black. Only bmp and
6356	// png images are supported.
6357	BlackoutSlateImage *InputLocation `locationName:"blackoutSlateImage" type:"structure"`
6358
6359	// Setting to enabled causes the encoder to blackout the video, audio, and captions,
6360	// and raise the "Network Blackout Image" slate when an SCTE104/35 Network End
6361	// Segmentation Descriptor is encountered. The blackout will be lifted when
6362	// the Network Start Segmentation Descriptor is encountered. The Network End
6363	// and Network Start descriptors must contain a network ID that matches the
6364	// value entered in "Network ID".
6365	NetworkEndBlackout *string `locationName:"networkEndBlackout" type:"string" enum:"BlackoutSlateNetworkEndBlackout"`
6366
6367	// Path to local file to use as Network End Blackout image. Image will be scaled
6368	// to fill the entire output raster.
6369	NetworkEndBlackoutImage *InputLocation `locationName:"networkEndBlackoutImage" type:"structure"`
6370
6371	// Provides Network ID that matches EIDR ID format (e.g., "10.XXXX/XXXX-XXXX-XXXX-XXXX-XXXX-C").
6372	NetworkId *string `locationName:"networkId" min:"34" type:"string"`
6373
6374	// When set to enabled, causes video, audio and captions to be blanked when
6375	// indicated by program metadata.
6376	State *string `locationName:"state" type:"string" enum:"BlackoutSlateState"`
6377}
6378
6379// String returns the string representation
6380func (s BlackoutSlate) String() string {
6381	return awsutil.Prettify(s)
6382}
6383
6384// GoString returns the string representation
6385func (s BlackoutSlate) GoString() string {
6386	return s.String()
6387}
6388
6389// Validate inspects the fields of the type to determine if they are valid.
6390func (s *BlackoutSlate) Validate() error {
6391	invalidParams := request.ErrInvalidParams{Context: "BlackoutSlate"}
6392	if s.NetworkId != nil && len(*s.NetworkId) < 34 {
6393		invalidParams.Add(request.NewErrParamMinLen("NetworkId", 34))
6394	}
6395	if s.BlackoutSlateImage != nil {
6396		if err := s.BlackoutSlateImage.Validate(); err != nil {
6397			invalidParams.AddNested("BlackoutSlateImage", err.(request.ErrInvalidParams))
6398		}
6399	}
6400	if s.NetworkEndBlackoutImage != nil {
6401		if err := s.NetworkEndBlackoutImage.Validate(); err != nil {
6402			invalidParams.AddNested("NetworkEndBlackoutImage", err.(request.ErrInvalidParams))
6403		}
6404	}
6405
6406	if invalidParams.Len() > 0 {
6407		return invalidParams
6408	}
6409	return nil
6410}
6411
6412// SetBlackoutSlateImage sets the BlackoutSlateImage field's value.
6413func (s *BlackoutSlate) SetBlackoutSlateImage(v *InputLocation) *BlackoutSlate {
6414	s.BlackoutSlateImage = v
6415	return s
6416}
6417
6418// SetNetworkEndBlackout sets the NetworkEndBlackout field's value.
6419func (s *BlackoutSlate) SetNetworkEndBlackout(v string) *BlackoutSlate {
6420	s.NetworkEndBlackout = &v
6421	return s
6422}
6423
6424// SetNetworkEndBlackoutImage sets the NetworkEndBlackoutImage field's value.
6425func (s *BlackoutSlate) SetNetworkEndBlackoutImage(v *InputLocation) *BlackoutSlate {
6426	s.NetworkEndBlackoutImage = v
6427	return s
6428}
6429
6430// SetNetworkId sets the NetworkId field's value.
6431func (s *BlackoutSlate) SetNetworkId(v string) *BlackoutSlate {
6432	s.NetworkId = &v
6433	return s
6434}
6435
6436// SetState sets the State field's value.
6437func (s *BlackoutSlate) SetState(v string) *BlackoutSlate {
6438	s.State = &v
6439	return s
6440}
6441
6442// Burn In Destination Settings
6443type BurnInDestinationSettings struct {
6444	_ struct{} `type:"structure"`
6445
6446	// If no explicit xPosition or yPosition is provided, setting alignment to centered
6447	// will place the captions at the bottom center of the output. Similarly, setting
6448	// a left alignment will align captions to the bottom left of the output. If
6449	// x and y positions are given in conjunction with the alignment parameter,
6450	// the font will be justified (either left or centered) relative to those coordinates.
6451	// Selecting "smart" justification will left-justify live subtitles and center-justify
6452	// pre-recorded subtitles. All burn-in and DVB-Sub font settings must match.
6453	Alignment *string `locationName:"alignment" type:"string" enum:"BurnInAlignment"`
6454
6455	// Specifies the color of the rectangle behind the captions. All burn-in and
6456	// DVB-Sub font settings must match.
6457	BackgroundColor *string `locationName:"backgroundColor" type:"string" enum:"BurnInBackgroundColor"`
6458
6459	// Specifies the opacity of the background rectangle. 255 is opaque; 0 is transparent.
6460	// Leaving this parameter out is equivalent to setting it to 0 (transparent).
6461	// All burn-in and DVB-Sub font settings must match.
6462	BackgroundOpacity *int64 `locationName:"backgroundOpacity" type:"integer"`
6463
6464	// External font file used for caption burn-in. File extension must be 'ttf'
6465	// or 'tte'. Although the user can select output fonts for many different types
6466	// of input captions, embedded, STL and teletext sources use a strict grid system.
6467	// Using external fonts with these caption sources could cause unexpected display
6468	// of proportional fonts. All burn-in and DVB-Sub font settings must match.
6469	Font *InputLocation `locationName:"font" type:"structure"`
6470
6471	// Specifies the color of the burned-in captions. This option is not valid for
6472	// source captions that are STL, 608/embedded or teletext. These source settings
6473	// are already pre-defined by the caption stream. All burn-in and DVB-Sub font
6474	// settings must match.
6475	FontColor *string `locationName:"fontColor" type:"string" enum:"BurnInFontColor"`
6476
6477	// Specifies the opacity of the burned-in captions. 255 is opaque; 0 is transparent.
6478	// All burn-in and DVB-Sub font settings must match.
6479	FontOpacity *int64 `locationName:"fontOpacity" type:"integer"`
6480
6481	// Font resolution in DPI (dots per inch); default is 96 dpi. All burn-in and
6482	// DVB-Sub font settings must match.
6483	FontResolution *int64 `locationName:"fontResolution" min:"96" type:"integer"`
6484
6485	// When set to 'auto' fontSize will scale depending on the size of the output.
6486	// Giving a positive integer will specify the exact font size in points. All
6487	// burn-in and DVB-Sub font settings must match.
6488	FontSize *string `locationName:"fontSize" type:"string"`
6489
6490	// Specifies font outline color. This option is not valid for source captions
6491	// that are either 608/embedded or teletext. These source settings are already
6492	// pre-defined by the caption stream. All burn-in and DVB-Sub font settings
6493	// must match.
6494	OutlineColor *string `locationName:"outlineColor" type:"string" enum:"BurnInOutlineColor"`
6495
6496	// Specifies font outline size in pixels. This option is not valid for source
6497	// captions that are either 608/embedded or teletext. These source settings
6498	// are already pre-defined by the caption stream. All burn-in and DVB-Sub font
6499	// settings must match.
6500	OutlineSize *int64 `locationName:"outlineSize" type:"integer"`
6501
6502	// Specifies the color of the shadow cast by the captions. All burn-in and DVB-Sub
6503	// font settings must match.
6504	ShadowColor *string `locationName:"shadowColor" type:"string" enum:"BurnInShadowColor"`
6505
6506	// Specifies the opacity of the shadow. 255 is opaque; 0 is transparent. Leaving
6507	// this parameter out is equivalent to setting it to 0 (transparent). All burn-in
6508	// and DVB-Sub font settings must match.
6509	ShadowOpacity *int64 `locationName:"shadowOpacity" type:"integer"`
6510
6511	// Specifies the horizontal offset of the shadow relative to the captions in
6512	// pixels. A value of -2 would result in a shadow offset 2 pixels to the left.
6513	// All burn-in and DVB-Sub font settings must match.
6514	ShadowXOffset *int64 `locationName:"shadowXOffset" type:"integer"`
6515
6516	// Specifies the vertical offset of the shadow relative to the captions in pixels.
6517	// A value of -2 would result in a shadow offset 2 pixels above the text. All
6518	// burn-in and DVB-Sub font settings must match.
6519	ShadowYOffset *int64 `locationName:"shadowYOffset" type:"integer"`
6520
6521	// Controls whether a fixed grid size will be used to generate the output subtitles
6522	// bitmap. Only applicable for Teletext inputs and DVB-Sub/Burn-in outputs.
6523	TeletextGridControl *string `locationName:"teletextGridControl" type:"string" enum:"BurnInTeletextGridControl"`
6524
6525	// Specifies the horizontal position of the caption relative to the left side
6526	// of the output in pixels. A value of 10 would result in the captions starting
6527	// 10 pixels from the left of the output. If no explicit xPosition is provided,
6528	// the horizontal caption position will be determined by the alignment parameter.
6529	// All burn-in and DVB-Sub font settings must match.
6530	XPosition *int64 `locationName:"xPosition" type:"integer"`
6531
6532	// Specifies the vertical position of the caption relative to the top of the
6533	// output in pixels. A value of 10 would result in the captions starting 10
6534	// pixels from the top of the output. If no explicit yPosition is provided,
6535	// the caption will be positioned towards the bottom of the output. All burn-in
6536	// and DVB-Sub font settings must match.
6537	YPosition *int64 `locationName:"yPosition" type:"integer"`
6538}
6539
6540// String returns the string representation
6541func (s BurnInDestinationSettings) String() string {
6542	return awsutil.Prettify(s)
6543}
6544
6545// GoString returns the string representation
6546func (s BurnInDestinationSettings) GoString() string {
6547	return s.String()
6548}
6549
6550// Validate inspects the fields of the type to determine if they are valid.
6551func (s *BurnInDestinationSettings) Validate() error {
6552	invalidParams := request.ErrInvalidParams{Context: "BurnInDestinationSettings"}
6553	if s.FontResolution != nil && *s.FontResolution < 96 {
6554		invalidParams.Add(request.NewErrParamMinValue("FontResolution", 96))
6555	}
6556	if s.Font != nil {
6557		if err := s.Font.Validate(); err != nil {
6558			invalidParams.AddNested("Font", err.(request.ErrInvalidParams))
6559		}
6560	}
6561
6562	if invalidParams.Len() > 0 {
6563		return invalidParams
6564	}
6565	return nil
6566}
6567
6568// SetAlignment sets the Alignment field's value.
6569func (s *BurnInDestinationSettings) SetAlignment(v string) *BurnInDestinationSettings {
6570	s.Alignment = &v
6571	return s
6572}
6573
6574// SetBackgroundColor sets the BackgroundColor field's value.
6575func (s *BurnInDestinationSettings) SetBackgroundColor(v string) *BurnInDestinationSettings {
6576	s.BackgroundColor = &v
6577	return s
6578}
6579
6580// SetBackgroundOpacity sets the BackgroundOpacity field's value.
6581func (s *BurnInDestinationSettings) SetBackgroundOpacity(v int64) *BurnInDestinationSettings {
6582	s.BackgroundOpacity = &v
6583	return s
6584}
6585
6586// SetFont sets the Font field's value.
6587func (s *BurnInDestinationSettings) SetFont(v *InputLocation) *BurnInDestinationSettings {
6588	s.Font = v
6589	return s
6590}
6591
6592// SetFontColor sets the FontColor field's value.
6593func (s *BurnInDestinationSettings) SetFontColor(v string) *BurnInDestinationSettings {
6594	s.FontColor = &v
6595	return s
6596}
6597
6598// SetFontOpacity sets the FontOpacity field's value.
6599func (s *BurnInDestinationSettings) SetFontOpacity(v int64) *BurnInDestinationSettings {
6600	s.FontOpacity = &v
6601	return s
6602}
6603
6604// SetFontResolution sets the FontResolution field's value.
6605func (s *BurnInDestinationSettings) SetFontResolution(v int64) *BurnInDestinationSettings {
6606	s.FontResolution = &v
6607	return s
6608}
6609
6610// SetFontSize sets the FontSize field's value.
6611func (s *BurnInDestinationSettings) SetFontSize(v string) *BurnInDestinationSettings {
6612	s.FontSize = &v
6613	return s
6614}
6615
6616// SetOutlineColor sets the OutlineColor field's value.
6617func (s *BurnInDestinationSettings) SetOutlineColor(v string) *BurnInDestinationSettings {
6618	s.OutlineColor = &v
6619	return s
6620}
6621
6622// SetOutlineSize sets the OutlineSize field's value.
6623func (s *BurnInDestinationSettings) SetOutlineSize(v int64) *BurnInDestinationSettings {
6624	s.OutlineSize = &v
6625	return s
6626}
6627
6628// SetShadowColor sets the ShadowColor field's value.
6629func (s *BurnInDestinationSettings) SetShadowColor(v string) *BurnInDestinationSettings {
6630	s.ShadowColor = &v
6631	return s
6632}
6633
6634// SetShadowOpacity sets the ShadowOpacity field's value.
6635func (s *BurnInDestinationSettings) SetShadowOpacity(v int64) *BurnInDestinationSettings {
6636	s.ShadowOpacity = &v
6637	return s
6638}
6639
6640// SetShadowXOffset sets the ShadowXOffset field's value.
6641func (s *BurnInDestinationSettings) SetShadowXOffset(v int64) *BurnInDestinationSettings {
6642	s.ShadowXOffset = &v
6643	return s
6644}
6645
6646// SetShadowYOffset sets the ShadowYOffset field's value.
6647func (s *BurnInDestinationSettings) SetShadowYOffset(v int64) *BurnInDestinationSettings {
6648	s.ShadowYOffset = &v
6649	return s
6650}
6651
6652// SetTeletextGridControl sets the TeletextGridControl field's value.
6653func (s *BurnInDestinationSettings) SetTeletextGridControl(v string) *BurnInDestinationSettings {
6654	s.TeletextGridControl = &v
6655	return s
6656}
6657
6658// SetXPosition sets the XPosition field's value.
6659func (s *BurnInDestinationSettings) SetXPosition(v int64) *BurnInDestinationSettings {
6660	s.XPosition = &v
6661	return s
6662}
6663
6664// SetYPosition sets the YPosition field's value.
6665func (s *BurnInDestinationSettings) SetYPosition(v int64) *BurnInDestinationSettings {
6666	s.YPosition = &v
6667	return s
6668}
6669
6670// Caption Description
6671type CaptionDescription struct {
6672	_ struct{} `type:"structure"`
6673
6674	// Specifies which input caption selector to use as a caption source when generating
6675	// output captions. This field should match a captionSelector name.
6676	//
6677	// CaptionSelectorName is a required field
6678	CaptionSelectorName *string `locationName:"captionSelectorName" type:"string" required:"true"`
6679
6680	// Additional settings for captions destination that depend on the destination
6681	// type.
6682	DestinationSettings *CaptionDestinationSettings `locationName:"destinationSettings" type:"structure"`
6683
6684	// ISO 639-2 three-digit code: http://www.loc.gov/standards/iso639-2/
6685	LanguageCode *string `locationName:"languageCode" type:"string"`
6686
6687	// Human readable information to indicate captions available for players (eg.
6688	// English, or Spanish).
6689	LanguageDescription *string `locationName:"languageDescription" type:"string"`
6690
6691	// Name of the caption description. Used to associate a caption description
6692	// with an output. Names must be unique within an event.
6693	//
6694	// Name is a required field
6695	Name *string `locationName:"name" type:"string" required:"true"`
6696}
6697
6698// String returns the string representation
6699func (s CaptionDescription) String() string {
6700	return awsutil.Prettify(s)
6701}
6702
6703// GoString returns the string representation
6704func (s CaptionDescription) GoString() string {
6705	return s.String()
6706}
6707
6708// Validate inspects the fields of the type to determine if they are valid.
6709func (s *CaptionDescription) Validate() error {
6710	invalidParams := request.ErrInvalidParams{Context: "CaptionDescription"}
6711	if s.CaptionSelectorName == nil {
6712		invalidParams.Add(request.NewErrParamRequired("CaptionSelectorName"))
6713	}
6714	if s.Name == nil {
6715		invalidParams.Add(request.NewErrParamRequired("Name"))
6716	}
6717	if s.DestinationSettings != nil {
6718		if err := s.DestinationSettings.Validate(); err != nil {
6719			invalidParams.AddNested("DestinationSettings", err.(request.ErrInvalidParams))
6720		}
6721	}
6722
6723	if invalidParams.Len() > 0 {
6724		return invalidParams
6725	}
6726	return nil
6727}
6728
6729// SetCaptionSelectorName sets the CaptionSelectorName field's value.
6730func (s *CaptionDescription) SetCaptionSelectorName(v string) *CaptionDescription {
6731	s.CaptionSelectorName = &v
6732	return s
6733}
6734
6735// SetDestinationSettings sets the DestinationSettings field's value.
6736func (s *CaptionDescription) SetDestinationSettings(v *CaptionDestinationSettings) *CaptionDescription {
6737	s.DestinationSettings = v
6738	return s
6739}
6740
6741// SetLanguageCode sets the LanguageCode field's value.
6742func (s *CaptionDescription) SetLanguageCode(v string) *CaptionDescription {
6743	s.LanguageCode = &v
6744	return s
6745}
6746
6747// SetLanguageDescription sets the LanguageDescription field's value.
6748func (s *CaptionDescription) SetLanguageDescription(v string) *CaptionDescription {
6749	s.LanguageDescription = &v
6750	return s
6751}
6752
6753// SetName sets the Name field's value.
6754func (s *CaptionDescription) SetName(v string) *CaptionDescription {
6755	s.Name = &v
6756	return s
6757}
6758
6759// Caption Destination Settings
6760type CaptionDestinationSettings struct {
6761	_ struct{} `type:"structure"`
6762
6763	// Arib Destination Settings
6764	AribDestinationSettings *AribDestinationSettings `locationName:"aribDestinationSettings" type:"structure"`
6765
6766	// Burn In Destination Settings
6767	BurnInDestinationSettings *BurnInDestinationSettings `locationName:"burnInDestinationSettings" type:"structure"`
6768
6769	// Dvb Sub Destination Settings
6770	DvbSubDestinationSettings *DvbSubDestinationSettings `locationName:"dvbSubDestinationSettings" type:"structure"`
6771
6772	// Embedded Destination Settings
6773	EmbeddedDestinationSettings *EmbeddedDestinationSettings `locationName:"embeddedDestinationSettings" type:"structure"`
6774
6775	// Embedded Plus Scte20 Destination Settings
6776	EmbeddedPlusScte20DestinationSettings *EmbeddedPlusScte20DestinationSettings `locationName:"embeddedPlusScte20DestinationSettings" type:"structure"`
6777
6778	// Rtmp Caption Info Destination Settings
6779	RtmpCaptionInfoDestinationSettings *RtmpCaptionInfoDestinationSettings `locationName:"rtmpCaptionInfoDestinationSettings" type:"structure"`
6780
6781	// Scte20 Plus Embedded Destination Settings
6782	Scte20PlusEmbeddedDestinationSettings *Scte20PlusEmbeddedDestinationSettings `locationName:"scte20PlusEmbeddedDestinationSettings" type:"structure"`
6783
6784	// Scte27 Destination Settings
6785	Scte27DestinationSettings *Scte27DestinationSettings `locationName:"scte27DestinationSettings" type:"structure"`
6786
6787	// Smpte Tt Destination Settings
6788	SmpteTtDestinationSettings *SmpteTtDestinationSettings `locationName:"smpteTtDestinationSettings" type:"structure"`
6789
6790	// Teletext Destination Settings
6791	TeletextDestinationSettings *TeletextDestinationSettings `locationName:"teletextDestinationSettings" type:"structure"`
6792
6793	// Ttml Destination Settings
6794	TtmlDestinationSettings *TtmlDestinationSettings `locationName:"ttmlDestinationSettings" type:"structure"`
6795
6796	// Webvtt Destination Settings
6797	WebvttDestinationSettings *WebvttDestinationSettings `locationName:"webvttDestinationSettings" type:"structure"`
6798}
6799
6800// String returns the string representation
6801func (s CaptionDestinationSettings) String() string {
6802	return awsutil.Prettify(s)
6803}
6804
6805// GoString returns the string representation
6806func (s CaptionDestinationSettings) GoString() string {
6807	return s.String()
6808}
6809
6810// Validate inspects the fields of the type to determine if they are valid.
6811func (s *CaptionDestinationSettings) Validate() error {
6812	invalidParams := request.ErrInvalidParams{Context: "CaptionDestinationSettings"}
6813	if s.BurnInDestinationSettings != nil {
6814		if err := s.BurnInDestinationSettings.Validate(); err != nil {
6815			invalidParams.AddNested("BurnInDestinationSettings", err.(request.ErrInvalidParams))
6816		}
6817	}
6818	if s.DvbSubDestinationSettings != nil {
6819		if err := s.DvbSubDestinationSettings.Validate(); err != nil {
6820			invalidParams.AddNested("DvbSubDestinationSettings", err.(request.ErrInvalidParams))
6821		}
6822	}
6823
6824	if invalidParams.Len() > 0 {
6825		return invalidParams
6826	}
6827	return nil
6828}
6829
6830// SetAribDestinationSettings sets the AribDestinationSettings field's value.
6831func (s *CaptionDestinationSettings) SetAribDestinationSettings(v *AribDestinationSettings) *CaptionDestinationSettings {
6832	s.AribDestinationSettings = v
6833	return s
6834}
6835
6836// SetBurnInDestinationSettings sets the BurnInDestinationSettings field's value.
6837func (s *CaptionDestinationSettings) SetBurnInDestinationSettings(v *BurnInDestinationSettings) *CaptionDestinationSettings {
6838	s.BurnInDestinationSettings = v
6839	return s
6840}
6841
6842// SetDvbSubDestinationSettings sets the DvbSubDestinationSettings field's value.
6843func (s *CaptionDestinationSettings) SetDvbSubDestinationSettings(v *DvbSubDestinationSettings) *CaptionDestinationSettings {
6844	s.DvbSubDestinationSettings = v
6845	return s
6846}
6847
6848// SetEmbeddedDestinationSettings sets the EmbeddedDestinationSettings field's value.
6849func (s *CaptionDestinationSettings) SetEmbeddedDestinationSettings(v *EmbeddedDestinationSettings) *CaptionDestinationSettings {
6850	s.EmbeddedDestinationSettings = v
6851	return s
6852}
6853
6854// SetEmbeddedPlusScte20DestinationSettings sets the EmbeddedPlusScte20DestinationSettings field's value.
6855func (s *CaptionDestinationSettings) SetEmbeddedPlusScte20DestinationSettings(v *EmbeddedPlusScte20DestinationSettings) *CaptionDestinationSettings {
6856	s.EmbeddedPlusScte20DestinationSettings = v
6857	return s
6858}
6859
6860// SetRtmpCaptionInfoDestinationSettings sets the RtmpCaptionInfoDestinationSettings field's value.
6861func (s *CaptionDestinationSettings) SetRtmpCaptionInfoDestinationSettings(v *RtmpCaptionInfoDestinationSettings) *CaptionDestinationSettings {
6862	s.RtmpCaptionInfoDestinationSettings = v
6863	return s
6864}
6865
6866// SetScte20PlusEmbeddedDestinationSettings sets the Scte20PlusEmbeddedDestinationSettings field's value.
6867func (s *CaptionDestinationSettings) SetScte20PlusEmbeddedDestinationSettings(v *Scte20PlusEmbeddedDestinationSettings) *CaptionDestinationSettings {
6868	s.Scte20PlusEmbeddedDestinationSettings = v
6869	return s
6870}
6871
6872// SetScte27DestinationSettings sets the Scte27DestinationSettings field's value.
6873func (s *CaptionDestinationSettings) SetScte27DestinationSettings(v *Scte27DestinationSettings) *CaptionDestinationSettings {
6874	s.Scte27DestinationSettings = v
6875	return s
6876}
6877
6878// SetSmpteTtDestinationSettings sets the SmpteTtDestinationSettings field's value.
6879func (s *CaptionDestinationSettings) SetSmpteTtDestinationSettings(v *SmpteTtDestinationSettings) *CaptionDestinationSettings {
6880	s.SmpteTtDestinationSettings = v
6881	return s
6882}
6883
6884// SetTeletextDestinationSettings sets the TeletextDestinationSettings field's value.
6885func (s *CaptionDestinationSettings) SetTeletextDestinationSettings(v *TeletextDestinationSettings) *CaptionDestinationSettings {
6886	s.TeletextDestinationSettings = v
6887	return s
6888}
6889
6890// SetTtmlDestinationSettings sets the TtmlDestinationSettings field's value.
6891func (s *CaptionDestinationSettings) SetTtmlDestinationSettings(v *TtmlDestinationSettings) *CaptionDestinationSettings {
6892	s.TtmlDestinationSettings = v
6893	return s
6894}
6895
6896// SetWebvttDestinationSettings sets the WebvttDestinationSettings field's value.
6897func (s *CaptionDestinationSettings) SetWebvttDestinationSettings(v *WebvttDestinationSettings) *CaptionDestinationSettings {
6898	s.WebvttDestinationSettings = v
6899	return s
6900}
6901
6902// Maps a caption channel to an ISO 693-2 language code (http://www.loc.gov/standards/iso639-2),
6903// with an optional description.
6904type CaptionLanguageMapping struct {
6905	_ struct{} `type:"structure"`
6906
6907	// The closed caption channel being described by this CaptionLanguageMapping.
6908	// Each channel mapping must have a unique channel number (maximum of 4)
6909	//
6910	// CaptionChannel is a required field
6911	CaptionChannel *int64 `locationName:"captionChannel" min:"1" type:"integer" required:"true"`
6912
6913	// Three character ISO 639-2 language code (see http://www.loc.gov/standards/iso639-2)
6914	//
6915	// LanguageCode is a required field
6916	LanguageCode *string `locationName:"languageCode" min:"3" type:"string" required:"true"`
6917
6918	// Textual description of language
6919	//
6920	// LanguageDescription is a required field
6921	LanguageDescription *string `locationName:"languageDescription" min:"1" type:"string" required:"true"`
6922}
6923
6924// String returns the string representation
6925func (s CaptionLanguageMapping) String() string {
6926	return awsutil.Prettify(s)
6927}
6928
6929// GoString returns the string representation
6930func (s CaptionLanguageMapping) GoString() string {
6931	return s.String()
6932}
6933
6934// Validate inspects the fields of the type to determine if they are valid.
6935func (s *CaptionLanguageMapping) Validate() error {
6936	invalidParams := request.ErrInvalidParams{Context: "CaptionLanguageMapping"}
6937	if s.CaptionChannel == nil {
6938		invalidParams.Add(request.NewErrParamRequired("CaptionChannel"))
6939	}
6940	if s.CaptionChannel != nil && *s.CaptionChannel < 1 {
6941		invalidParams.Add(request.NewErrParamMinValue("CaptionChannel", 1))
6942	}
6943	if s.LanguageCode == nil {
6944		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
6945	}
6946	if s.LanguageCode != nil && len(*s.LanguageCode) < 3 {
6947		invalidParams.Add(request.NewErrParamMinLen("LanguageCode", 3))
6948	}
6949	if s.LanguageDescription == nil {
6950		invalidParams.Add(request.NewErrParamRequired("LanguageDescription"))
6951	}
6952	if s.LanguageDescription != nil && len(*s.LanguageDescription) < 1 {
6953		invalidParams.Add(request.NewErrParamMinLen("LanguageDescription", 1))
6954	}
6955
6956	if invalidParams.Len() > 0 {
6957		return invalidParams
6958	}
6959	return nil
6960}
6961
6962// SetCaptionChannel sets the CaptionChannel field's value.
6963func (s *CaptionLanguageMapping) SetCaptionChannel(v int64) *CaptionLanguageMapping {
6964	s.CaptionChannel = &v
6965	return s
6966}
6967
6968// SetLanguageCode sets the LanguageCode field's value.
6969func (s *CaptionLanguageMapping) SetLanguageCode(v string) *CaptionLanguageMapping {
6970	s.LanguageCode = &v
6971	return s
6972}
6973
6974// SetLanguageDescription sets the LanguageDescription field's value.
6975func (s *CaptionLanguageMapping) SetLanguageDescription(v string) *CaptionLanguageMapping {
6976	s.LanguageDescription = &v
6977	return s
6978}
6979
6980// Output groups for this Live Event. Output groups contain information about
6981// where streams should be distributed.
6982type CaptionSelector struct {
6983	_ struct{} `type:"structure"`
6984
6985	// When specified this field indicates the three letter language code of the
6986	// caption track to extract from the source.
6987	LanguageCode *string `locationName:"languageCode" type:"string"`
6988
6989	// Name identifier for a caption selector. This name is used to associate this
6990	// caption selector with one or more caption descriptions. Names must be unique
6991	// within an event.
6992	//
6993	// Name is a required field
6994	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
6995
6996	// Caption selector settings.
6997	SelectorSettings *CaptionSelectorSettings `locationName:"selectorSettings" type:"structure"`
6998}
6999
7000// String returns the string representation
7001func (s CaptionSelector) String() string {
7002	return awsutil.Prettify(s)
7003}
7004
7005// GoString returns the string representation
7006func (s CaptionSelector) GoString() string {
7007	return s.String()
7008}
7009
7010// Validate inspects the fields of the type to determine if they are valid.
7011func (s *CaptionSelector) Validate() error {
7012	invalidParams := request.ErrInvalidParams{Context: "CaptionSelector"}
7013	if s.Name == nil {
7014		invalidParams.Add(request.NewErrParamRequired("Name"))
7015	}
7016	if s.Name != nil && len(*s.Name) < 1 {
7017		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7018	}
7019	if s.SelectorSettings != nil {
7020		if err := s.SelectorSettings.Validate(); err != nil {
7021			invalidParams.AddNested("SelectorSettings", err.(request.ErrInvalidParams))
7022		}
7023	}
7024
7025	if invalidParams.Len() > 0 {
7026		return invalidParams
7027	}
7028	return nil
7029}
7030
7031// SetLanguageCode sets the LanguageCode field's value.
7032func (s *CaptionSelector) SetLanguageCode(v string) *CaptionSelector {
7033	s.LanguageCode = &v
7034	return s
7035}
7036
7037// SetName sets the Name field's value.
7038func (s *CaptionSelector) SetName(v string) *CaptionSelector {
7039	s.Name = &v
7040	return s
7041}
7042
7043// SetSelectorSettings sets the SelectorSettings field's value.
7044func (s *CaptionSelector) SetSelectorSettings(v *CaptionSelectorSettings) *CaptionSelector {
7045	s.SelectorSettings = v
7046	return s
7047}
7048
7049// Caption Selector Settings
7050type CaptionSelectorSettings struct {
7051	_ struct{} `type:"structure"`
7052
7053	// Arib Source Settings
7054	AribSourceSettings *AribSourceSettings `locationName:"aribSourceSettings" type:"structure"`
7055
7056	// Dvb Sub Source Settings
7057	DvbSubSourceSettings *DvbSubSourceSettings `locationName:"dvbSubSourceSettings" type:"structure"`
7058
7059	// Embedded Source Settings
7060	EmbeddedSourceSettings *EmbeddedSourceSettings `locationName:"embeddedSourceSettings" type:"structure"`
7061
7062	// Scte20 Source Settings
7063	Scte20SourceSettings *Scte20SourceSettings `locationName:"scte20SourceSettings" type:"structure"`
7064
7065	// Scte27 Source Settings
7066	Scte27SourceSettings *Scte27SourceSettings `locationName:"scte27SourceSettings" type:"structure"`
7067
7068	// Teletext Source Settings
7069	TeletextSourceSettings *TeletextSourceSettings `locationName:"teletextSourceSettings" type:"structure"`
7070}
7071
7072// String returns the string representation
7073func (s CaptionSelectorSettings) String() string {
7074	return awsutil.Prettify(s)
7075}
7076
7077// GoString returns the string representation
7078func (s CaptionSelectorSettings) GoString() string {
7079	return s.String()
7080}
7081
7082// Validate inspects the fields of the type to determine if they are valid.
7083func (s *CaptionSelectorSettings) Validate() error {
7084	invalidParams := request.ErrInvalidParams{Context: "CaptionSelectorSettings"}
7085	if s.DvbSubSourceSettings != nil {
7086		if err := s.DvbSubSourceSettings.Validate(); err != nil {
7087			invalidParams.AddNested("DvbSubSourceSettings", err.(request.ErrInvalidParams))
7088		}
7089	}
7090	if s.EmbeddedSourceSettings != nil {
7091		if err := s.EmbeddedSourceSettings.Validate(); err != nil {
7092			invalidParams.AddNested("EmbeddedSourceSettings", err.(request.ErrInvalidParams))
7093		}
7094	}
7095	if s.Scte20SourceSettings != nil {
7096		if err := s.Scte20SourceSettings.Validate(); err != nil {
7097			invalidParams.AddNested("Scte20SourceSettings", err.(request.ErrInvalidParams))
7098		}
7099	}
7100	if s.Scte27SourceSettings != nil {
7101		if err := s.Scte27SourceSettings.Validate(); err != nil {
7102			invalidParams.AddNested("Scte27SourceSettings", err.(request.ErrInvalidParams))
7103		}
7104	}
7105
7106	if invalidParams.Len() > 0 {
7107		return invalidParams
7108	}
7109	return nil
7110}
7111
7112// SetAribSourceSettings sets the AribSourceSettings field's value.
7113func (s *CaptionSelectorSettings) SetAribSourceSettings(v *AribSourceSettings) *CaptionSelectorSettings {
7114	s.AribSourceSettings = v
7115	return s
7116}
7117
7118// SetDvbSubSourceSettings sets the DvbSubSourceSettings field's value.
7119func (s *CaptionSelectorSettings) SetDvbSubSourceSettings(v *DvbSubSourceSettings) *CaptionSelectorSettings {
7120	s.DvbSubSourceSettings = v
7121	return s
7122}
7123
7124// SetEmbeddedSourceSettings sets the EmbeddedSourceSettings field's value.
7125func (s *CaptionSelectorSettings) SetEmbeddedSourceSettings(v *EmbeddedSourceSettings) *CaptionSelectorSettings {
7126	s.EmbeddedSourceSettings = v
7127	return s
7128}
7129
7130// SetScte20SourceSettings sets the Scte20SourceSettings field's value.
7131func (s *CaptionSelectorSettings) SetScte20SourceSettings(v *Scte20SourceSettings) *CaptionSelectorSettings {
7132	s.Scte20SourceSettings = v
7133	return s
7134}
7135
7136// SetScte27SourceSettings sets the Scte27SourceSettings field's value.
7137func (s *CaptionSelectorSettings) SetScte27SourceSettings(v *Scte27SourceSettings) *CaptionSelectorSettings {
7138	s.Scte27SourceSettings = v
7139	return s
7140}
7141
7142// SetTeletextSourceSettings sets the TeletextSourceSettings field's value.
7143func (s *CaptionSelectorSettings) SetTeletextSourceSettings(v *TeletextSourceSettings) *CaptionSelectorSettings {
7144	s.TeletextSourceSettings = v
7145	return s
7146}
7147
7148type Channel struct {
7149	_ struct{} `type:"structure"`
7150
7151	// The unique arn of the channel.
7152	Arn *string `locationName:"arn" type:"string"`
7153
7154	// The class for this channel. STANDARD for a channel with two pipelines or
7155	// SINGLE_PIPELINE for a channel with one pipeline.
7156	ChannelClass *string `locationName:"channelClass" type:"string" enum:"ChannelClass"`
7157
7158	// A list of destinations of the channel. For UDP outputs, there is onedestination
7159	// per output. For other types (HLS, for example), there isone destination per
7160	// packager.
7161	Destinations []*OutputDestination `locationName:"destinations" type:"list"`
7162
7163	// The endpoints where outgoing connections initiate from
7164	EgressEndpoints []*ChannelEgressEndpoint `locationName:"egressEndpoints" type:"list"`
7165
7166	// Encoder Settings
7167	EncoderSettings *EncoderSettings `locationName:"encoderSettings" type:"structure"`
7168
7169	// The unique id of the channel.
7170	Id *string `locationName:"id" type:"string"`
7171
7172	// List of input attachments for channel.
7173	InputAttachments []*InputAttachment `locationName:"inputAttachments" type:"list"`
7174
7175	InputSpecification *InputSpecification `locationName:"inputSpecification" type:"structure"`
7176
7177	// The log level being written to CloudWatch Logs.
7178	LogLevel *string `locationName:"logLevel" type:"string" enum:"LogLevel"`
7179
7180	// The name of the channel. (user-mutable)
7181	Name *string `locationName:"name" type:"string"`
7182
7183	// Runtime details for the pipelines of a running channel.
7184	PipelineDetails []*PipelineDetail `locationName:"pipelineDetails" type:"list"`
7185
7186	// The number of currently healthy pipelines.
7187	PipelinesRunningCount *int64 `locationName:"pipelinesRunningCount" type:"integer"`
7188
7189	// The Amazon Resource Name (ARN) of the role assumed when running the Channel.
7190	RoleArn *string `locationName:"roleArn" type:"string"`
7191
7192	State *string `locationName:"state" type:"string" enum:"ChannelState"`
7193
7194	// A collection of key-value pairs.
7195	Tags map[string]*string `locationName:"tags" type:"map"`
7196}
7197
7198// String returns the string representation
7199func (s Channel) String() string {
7200	return awsutil.Prettify(s)
7201}
7202
7203// GoString returns the string representation
7204func (s Channel) GoString() string {
7205	return s.String()
7206}
7207
7208// SetArn sets the Arn field's value.
7209func (s *Channel) SetArn(v string) *Channel {
7210	s.Arn = &v
7211	return s
7212}
7213
7214// SetChannelClass sets the ChannelClass field's value.
7215func (s *Channel) SetChannelClass(v string) *Channel {
7216	s.ChannelClass = &v
7217	return s
7218}
7219
7220// SetDestinations sets the Destinations field's value.
7221func (s *Channel) SetDestinations(v []*OutputDestination) *Channel {
7222	s.Destinations = v
7223	return s
7224}
7225
7226// SetEgressEndpoints sets the EgressEndpoints field's value.
7227func (s *Channel) SetEgressEndpoints(v []*ChannelEgressEndpoint) *Channel {
7228	s.EgressEndpoints = v
7229	return s
7230}
7231
7232// SetEncoderSettings sets the EncoderSettings field's value.
7233func (s *Channel) SetEncoderSettings(v *EncoderSettings) *Channel {
7234	s.EncoderSettings = v
7235	return s
7236}
7237
7238// SetId sets the Id field's value.
7239func (s *Channel) SetId(v string) *Channel {
7240	s.Id = &v
7241	return s
7242}
7243
7244// SetInputAttachments sets the InputAttachments field's value.
7245func (s *Channel) SetInputAttachments(v []*InputAttachment) *Channel {
7246	s.InputAttachments = v
7247	return s
7248}
7249
7250// SetInputSpecification sets the InputSpecification field's value.
7251func (s *Channel) SetInputSpecification(v *InputSpecification) *Channel {
7252	s.InputSpecification = v
7253	return s
7254}
7255
7256// SetLogLevel sets the LogLevel field's value.
7257func (s *Channel) SetLogLevel(v string) *Channel {
7258	s.LogLevel = &v
7259	return s
7260}
7261
7262// SetName sets the Name field's value.
7263func (s *Channel) SetName(v string) *Channel {
7264	s.Name = &v
7265	return s
7266}
7267
7268// SetPipelineDetails sets the PipelineDetails field's value.
7269func (s *Channel) SetPipelineDetails(v []*PipelineDetail) *Channel {
7270	s.PipelineDetails = v
7271	return s
7272}
7273
7274// SetPipelinesRunningCount sets the PipelinesRunningCount field's value.
7275func (s *Channel) SetPipelinesRunningCount(v int64) *Channel {
7276	s.PipelinesRunningCount = &v
7277	return s
7278}
7279
7280// SetRoleArn sets the RoleArn field's value.
7281func (s *Channel) SetRoleArn(v string) *Channel {
7282	s.RoleArn = &v
7283	return s
7284}
7285
7286// SetState sets the State field's value.
7287func (s *Channel) SetState(v string) *Channel {
7288	s.State = &v
7289	return s
7290}
7291
7292// SetTags sets the Tags field's value.
7293func (s *Channel) SetTags(v map[string]*string) *Channel {
7294	s.Tags = v
7295	return s
7296}
7297
7298type ChannelEgressEndpoint struct {
7299	_ struct{} `type:"structure"`
7300
7301	// Public IP of where a channel's output comes from
7302	SourceIp *string `locationName:"sourceIp" type:"string"`
7303}
7304
7305// String returns the string representation
7306func (s ChannelEgressEndpoint) String() string {
7307	return awsutil.Prettify(s)
7308}
7309
7310// GoString returns the string representation
7311func (s ChannelEgressEndpoint) GoString() string {
7312	return s.String()
7313}
7314
7315// SetSourceIp sets the SourceIp field's value.
7316func (s *ChannelEgressEndpoint) SetSourceIp(v string) *ChannelEgressEndpoint {
7317	s.SourceIp = &v
7318	return s
7319}
7320
7321type ChannelSummary struct {
7322	_ struct{} `type:"structure"`
7323
7324	// The unique arn of the channel.
7325	Arn *string `locationName:"arn" type:"string"`
7326
7327	// The class for this channel. STANDARD for a channel with two pipelines or
7328	// SINGLE_PIPELINE for a channel with one pipeline.
7329	ChannelClass *string `locationName:"channelClass" type:"string" enum:"ChannelClass"`
7330
7331	// A list of destinations of the channel. For UDP outputs, there is onedestination
7332	// per output. For other types (HLS, for example), there isone destination per
7333	// packager.
7334	Destinations []*OutputDestination `locationName:"destinations" type:"list"`
7335
7336	// The endpoints where outgoing connections initiate from
7337	EgressEndpoints []*ChannelEgressEndpoint `locationName:"egressEndpoints" type:"list"`
7338
7339	// The unique id of the channel.
7340	Id *string `locationName:"id" type:"string"`
7341
7342	// List of input attachments for channel.
7343	InputAttachments []*InputAttachment `locationName:"inputAttachments" type:"list"`
7344
7345	InputSpecification *InputSpecification `locationName:"inputSpecification" type:"structure"`
7346
7347	// The log level being written to CloudWatch Logs.
7348	LogLevel *string `locationName:"logLevel" type:"string" enum:"LogLevel"`
7349
7350	// The name of the channel. (user-mutable)
7351	Name *string `locationName:"name" type:"string"`
7352
7353	// The number of currently healthy pipelines.
7354	PipelinesRunningCount *int64 `locationName:"pipelinesRunningCount" type:"integer"`
7355
7356	// The Amazon Resource Name (ARN) of the role assumed when running the Channel.
7357	RoleArn *string `locationName:"roleArn" type:"string"`
7358
7359	State *string `locationName:"state" type:"string" enum:"ChannelState"`
7360
7361	// A collection of key-value pairs.
7362	Tags map[string]*string `locationName:"tags" type:"map"`
7363}
7364
7365// String returns the string representation
7366func (s ChannelSummary) String() string {
7367	return awsutil.Prettify(s)
7368}
7369
7370// GoString returns the string representation
7371func (s ChannelSummary) GoString() string {
7372	return s.String()
7373}
7374
7375// SetArn sets the Arn field's value.
7376func (s *ChannelSummary) SetArn(v string) *ChannelSummary {
7377	s.Arn = &v
7378	return s
7379}
7380
7381// SetChannelClass sets the ChannelClass field's value.
7382func (s *ChannelSummary) SetChannelClass(v string) *ChannelSummary {
7383	s.ChannelClass = &v
7384	return s
7385}
7386
7387// SetDestinations sets the Destinations field's value.
7388func (s *ChannelSummary) SetDestinations(v []*OutputDestination) *ChannelSummary {
7389	s.Destinations = v
7390	return s
7391}
7392
7393// SetEgressEndpoints sets the EgressEndpoints field's value.
7394func (s *ChannelSummary) SetEgressEndpoints(v []*ChannelEgressEndpoint) *ChannelSummary {
7395	s.EgressEndpoints = v
7396	return s
7397}
7398
7399// SetId sets the Id field's value.
7400func (s *ChannelSummary) SetId(v string) *ChannelSummary {
7401	s.Id = &v
7402	return s
7403}
7404
7405// SetInputAttachments sets the InputAttachments field's value.
7406func (s *ChannelSummary) SetInputAttachments(v []*InputAttachment) *ChannelSummary {
7407	s.InputAttachments = v
7408	return s
7409}
7410
7411// SetInputSpecification sets the InputSpecification field's value.
7412func (s *ChannelSummary) SetInputSpecification(v *InputSpecification) *ChannelSummary {
7413	s.InputSpecification = v
7414	return s
7415}
7416
7417// SetLogLevel sets the LogLevel field's value.
7418func (s *ChannelSummary) SetLogLevel(v string) *ChannelSummary {
7419	s.LogLevel = &v
7420	return s
7421}
7422
7423// SetName sets the Name field's value.
7424func (s *ChannelSummary) SetName(v string) *ChannelSummary {
7425	s.Name = &v
7426	return s
7427}
7428
7429// SetPipelinesRunningCount sets the PipelinesRunningCount field's value.
7430func (s *ChannelSummary) SetPipelinesRunningCount(v int64) *ChannelSummary {
7431	s.PipelinesRunningCount = &v
7432	return s
7433}
7434
7435// SetRoleArn sets the RoleArn field's value.
7436func (s *ChannelSummary) SetRoleArn(v string) *ChannelSummary {
7437	s.RoleArn = &v
7438	return s
7439}
7440
7441// SetState sets the State field's value.
7442func (s *ChannelSummary) SetState(v string) *ChannelSummary {
7443	s.State = &v
7444	return s
7445}
7446
7447// SetTags sets the Tags field's value.
7448func (s *ChannelSummary) SetTags(v map[string]*string) *ChannelSummary {
7449	s.Tags = v
7450	return s
7451}
7452
7453// Passthrough applies no color space conversion to the output
7454type ColorSpacePassthroughSettings struct {
7455	_ struct{} `type:"structure"`
7456}
7457
7458// String returns the string representation
7459func (s ColorSpacePassthroughSettings) String() string {
7460	return awsutil.Prettify(s)
7461}
7462
7463// GoString returns the string representation
7464func (s ColorSpacePassthroughSettings) GoString() string {
7465	return s.String()
7466}
7467
7468type ConflictException struct {
7469	_            struct{}                  `type:"structure"`
7470	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7471
7472	Message_ *string `locationName:"message" type:"string"`
7473}
7474
7475// String returns the string representation
7476func (s ConflictException) String() string {
7477	return awsutil.Prettify(s)
7478}
7479
7480// GoString returns the string representation
7481func (s ConflictException) GoString() string {
7482	return s.String()
7483}
7484
7485func newErrorConflictException(v protocol.ResponseMetadata) error {
7486	return &ConflictException{
7487		RespMetadata: v,
7488	}
7489}
7490
7491// Code returns the exception type name.
7492func (s *ConflictException) Code() string {
7493	return "ConflictException"
7494}
7495
7496// Message returns the exception's message.
7497func (s *ConflictException) Message() string {
7498	if s.Message_ != nil {
7499		return *s.Message_
7500	}
7501	return ""
7502}
7503
7504// OrigErr always returns nil, satisfies awserr.Error interface.
7505func (s *ConflictException) OrigErr() error {
7506	return nil
7507}
7508
7509func (s *ConflictException) Error() string {
7510	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
7511}
7512
7513// Status code returns the HTTP status code for the request's response error.
7514func (s *ConflictException) StatusCode() int {
7515	return s.RespMetadata.StatusCode
7516}
7517
7518// RequestID returns the service's response RequestID for request.
7519func (s *ConflictException) RequestID() string {
7520	return s.RespMetadata.RequestID
7521}
7522
7523type CreateChannelInput struct {
7524	_ struct{} `type:"structure"`
7525
7526	// A standard channel has two encoding pipelines and a single pipeline channel
7527	// only has one.
7528	ChannelClass *string `locationName:"channelClass" type:"string" enum:"ChannelClass"`
7529
7530	Destinations []*OutputDestination `locationName:"destinations" type:"list"`
7531
7532	// Encoder Settings
7533	EncoderSettings *EncoderSettings `locationName:"encoderSettings" type:"structure"`
7534
7535	InputAttachments []*InputAttachment `locationName:"inputAttachments" type:"list"`
7536
7537	InputSpecification *InputSpecification `locationName:"inputSpecification" type:"structure"`
7538
7539	// The log level the user wants for their channel.
7540	LogLevel *string `locationName:"logLevel" type:"string" enum:"LogLevel"`
7541
7542	Name *string `locationName:"name" type:"string"`
7543
7544	RequestId *string `locationName:"requestId" type:"string" idempotencyToken:"true"`
7545
7546	Reserved *string `locationName:"reserved" deprecated:"true" type:"string"`
7547
7548	RoleArn *string `locationName:"roleArn" type:"string"`
7549
7550	Tags map[string]*string `locationName:"tags" type:"map"`
7551}
7552
7553// String returns the string representation
7554func (s CreateChannelInput) String() string {
7555	return awsutil.Prettify(s)
7556}
7557
7558// GoString returns the string representation
7559func (s CreateChannelInput) GoString() string {
7560	return s.String()
7561}
7562
7563// Validate inspects the fields of the type to determine if they are valid.
7564func (s *CreateChannelInput) Validate() error {
7565	invalidParams := request.ErrInvalidParams{Context: "CreateChannelInput"}
7566	if s.Destinations != nil {
7567		for i, v := range s.Destinations {
7568			if v == nil {
7569				continue
7570			}
7571			if err := v.Validate(); err != nil {
7572				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Destinations", i), err.(request.ErrInvalidParams))
7573			}
7574		}
7575	}
7576	if s.EncoderSettings != nil {
7577		if err := s.EncoderSettings.Validate(); err != nil {
7578			invalidParams.AddNested("EncoderSettings", err.(request.ErrInvalidParams))
7579		}
7580	}
7581	if s.InputAttachments != nil {
7582		for i, v := range s.InputAttachments {
7583			if v == nil {
7584				continue
7585			}
7586			if err := v.Validate(); err != nil {
7587				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputAttachments", i), err.(request.ErrInvalidParams))
7588			}
7589		}
7590	}
7591
7592	if invalidParams.Len() > 0 {
7593		return invalidParams
7594	}
7595	return nil
7596}
7597
7598// SetChannelClass sets the ChannelClass field's value.
7599func (s *CreateChannelInput) SetChannelClass(v string) *CreateChannelInput {
7600	s.ChannelClass = &v
7601	return s
7602}
7603
7604// SetDestinations sets the Destinations field's value.
7605func (s *CreateChannelInput) SetDestinations(v []*OutputDestination) *CreateChannelInput {
7606	s.Destinations = v
7607	return s
7608}
7609
7610// SetEncoderSettings sets the EncoderSettings field's value.
7611func (s *CreateChannelInput) SetEncoderSettings(v *EncoderSettings) *CreateChannelInput {
7612	s.EncoderSettings = v
7613	return s
7614}
7615
7616// SetInputAttachments sets the InputAttachments field's value.
7617func (s *CreateChannelInput) SetInputAttachments(v []*InputAttachment) *CreateChannelInput {
7618	s.InputAttachments = v
7619	return s
7620}
7621
7622// SetInputSpecification sets the InputSpecification field's value.
7623func (s *CreateChannelInput) SetInputSpecification(v *InputSpecification) *CreateChannelInput {
7624	s.InputSpecification = v
7625	return s
7626}
7627
7628// SetLogLevel sets the LogLevel field's value.
7629func (s *CreateChannelInput) SetLogLevel(v string) *CreateChannelInput {
7630	s.LogLevel = &v
7631	return s
7632}
7633
7634// SetName sets the Name field's value.
7635func (s *CreateChannelInput) SetName(v string) *CreateChannelInput {
7636	s.Name = &v
7637	return s
7638}
7639
7640// SetRequestId sets the RequestId field's value.
7641func (s *CreateChannelInput) SetRequestId(v string) *CreateChannelInput {
7642	s.RequestId = &v
7643	return s
7644}
7645
7646// SetReserved sets the Reserved field's value.
7647func (s *CreateChannelInput) SetReserved(v string) *CreateChannelInput {
7648	s.Reserved = &v
7649	return s
7650}
7651
7652// SetRoleArn sets the RoleArn field's value.
7653func (s *CreateChannelInput) SetRoleArn(v string) *CreateChannelInput {
7654	s.RoleArn = &v
7655	return s
7656}
7657
7658// SetTags sets the Tags field's value.
7659func (s *CreateChannelInput) SetTags(v map[string]*string) *CreateChannelInput {
7660	s.Tags = v
7661	return s
7662}
7663
7664type CreateChannelOutput struct {
7665	_ struct{} `type:"structure"`
7666
7667	Channel *Channel `locationName:"channel" type:"structure"`
7668}
7669
7670// String returns the string representation
7671func (s CreateChannelOutput) String() string {
7672	return awsutil.Prettify(s)
7673}
7674
7675// GoString returns the string representation
7676func (s CreateChannelOutput) GoString() string {
7677	return s.String()
7678}
7679
7680// SetChannel sets the Channel field's value.
7681func (s *CreateChannelOutput) SetChannel(v *Channel) *CreateChannelOutput {
7682	s.Channel = v
7683	return s
7684}
7685
7686type CreateInputInput struct {
7687	_ struct{} `type:"structure"`
7688
7689	Destinations []*InputDestinationRequest `locationName:"destinations" type:"list"`
7690
7691	InputDevices []*InputDeviceSettings `locationName:"inputDevices" type:"list"`
7692
7693	InputSecurityGroups []*string `locationName:"inputSecurityGroups" type:"list"`
7694
7695	MediaConnectFlows []*MediaConnectFlowRequest `locationName:"mediaConnectFlows" type:"list"`
7696
7697	Name *string `locationName:"name" type:"string"`
7698
7699	RequestId *string `locationName:"requestId" type:"string" idempotencyToken:"true"`
7700
7701	RoleArn *string `locationName:"roleArn" type:"string"`
7702
7703	Sources []*InputSourceRequest `locationName:"sources" type:"list"`
7704
7705	Tags map[string]*string `locationName:"tags" type:"map"`
7706
7707	Type *string `locationName:"type" type:"string" enum:"InputType"`
7708
7709	// Settings for a private VPC Input.When this property is specified, the input
7710	// destination addresses will be created in a VPC rather than with public Internet
7711	// addresses.This property requires setting the roleArn property on Input creation.Not
7712	// compatible with the inputSecurityGroups property.
7713	Vpc *InputVpcRequest `locationName:"vpc" type:"structure"`
7714}
7715
7716// String returns the string representation
7717func (s CreateInputInput) String() string {
7718	return awsutil.Prettify(s)
7719}
7720
7721// GoString returns the string representation
7722func (s CreateInputInput) GoString() string {
7723	return s.String()
7724}
7725
7726// Validate inspects the fields of the type to determine if they are valid.
7727func (s *CreateInputInput) Validate() error {
7728	invalidParams := request.ErrInvalidParams{Context: "CreateInputInput"}
7729	if s.Vpc != nil {
7730		if err := s.Vpc.Validate(); err != nil {
7731			invalidParams.AddNested("Vpc", err.(request.ErrInvalidParams))
7732		}
7733	}
7734
7735	if invalidParams.Len() > 0 {
7736		return invalidParams
7737	}
7738	return nil
7739}
7740
7741// SetDestinations sets the Destinations field's value.
7742func (s *CreateInputInput) SetDestinations(v []*InputDestinationRequest) *CreateInputInput {
7743	s.Destinations = v
7744	return s
7745}
7746
7747// SetInputDevices sets the InputDevices field's value.
7748func (s *CreateInputInput) SetInputDevices(v []*InputDeviceSettings) *CreateInputInput {
7749	s.InputDevices = v
7750	return s
7751}
7752
7753// SetInputSecurityGroups sets the InputSecurityGroups field's value.
7754func (s *CreateInputInput) SetInputSecurityGroups(v []*string) *CreateInputInput {
7755	s.InputSecurityGroups = v
7756	return s
7757}
7758
7759// SetMediaConnectFlows sets the MediaConnectFlows field's value.
7760func (s *CreateInputInput) SetMediaConnectFlows(v []*MediaConnectFlowRequest) *CreateInputInput {
7761	s.MediaConnectFlows = v
7762	return s
7763}
7764
7765// SetName sets the Name field's value.
7766func (s *CreateInputInput) SetName(v string) *CreateInputInput {
7767	s.Name = &v
7768	return s
7769}
7770
7771// SetRequestId sets the RequestId field's value.
7772func (s *CreateInputInput) SetRequestId(v string) *CreateInputInput {
7773	s.RequestId = &v
7774	return s
7775}
7776
7777// SetRoleArn sets the RoleArn field's value.
7778func (s *CreateInputInput) SetRoleArn(v string) *CreateInputInput {
7779	s.RoleArn = &v
7780	return s
7781}
7782
7783// SetSources sets the Sources field's value.
7784func (s *CreateInputInput) SetSources(v []*InputSourceRequest) *CreateInputInput {
7785	s.Sources = v
7786	return s
7787}
7788
7789// SetTags sets the Tags field's value.
7790func (s *CreateInputInput) SetTags(v map[string]*string) *CreateInputInput {
7791	s.Tags = v
7792	return s
7793}
7794
7795// SetType sets the Type field's value.
7796func (s *CreateInputInput) SetType(v string) *CreateInputInput {
7797	s.Type = &v
7798	return s
7799}
7800
7801// SetVpc sets the Vpc field's value.
7802func (s *CreateInputInput) SetVpc(v *InputVpcRequest) *CreateInputInput {
7803	s.Vpc = v
7804	return s
7805}
7806
7807type CreateInputOutput struct {
7808	_ struct{} `type:"structure"`
7809
7810	Input *Input `locationName:"input" type:"structure"`
7811}
7812
7813// String returns the string representation
7814func (s CreateInputOutput) String() string {
7815	return awsutil.Prettify(s)
7816}
7817
7818// GoString returns the string representation
7819func (s CreateInputOutput) GoString() string {
7820	return s.String()
7821}
7822
7823// SetInput sets the Input field's value.
7824func (s *CreateInputOutput) SetInput(v *Input) *CreateInputOutput {
7825	s.Input = v
7826	return s
7827}
7828
7829type CreateInputSecurityGroupInput struct {
7830	_ struct{} `type:"structure"`
7831
7832	Tags map[string]*string `locationName:"tags" type:"map"`
7833
7834	WhitelistRules []*InputWhitelistRuleCidr `locationName:"whitelistRules" type:"list"`
7835}
7836
7837// String returns the string representation
7838func (s CreateInputSecurityGroupInput) String() string {
7839	return awsutil.Prettify(s)
7840}
7841
7842// GoString returns the string representation
7843func (s CreateInputSecurityGroupInput) GoString() string {
7844	return s.String()
7845}
7846
7847// SetTags sets the Tags field's value.
7848func (s *CreateInputSecurityGroupInput) SetTags(v map[string]*string) *CreateInputSecurityGroupInput {
7849	s.Tags = v
7850	return s
7851}
7852
7853// SetWhitelistRules sets the WhitelistRules field's value.
7854func (s *CreateInputSecurityGroupInput) SetWhitelistRules(v []*InputWhitelistRuleCidr) *CreateInputSecurityGroupInput {
7855	s.WhitelistRules = v
7856	return s
7857}
7858
7859type CreateInputSecurityGroupOutput struct {
7860	_ struct{} `type:"structure"`
7861
7862	// An Input Security Group
7863	SecurityGroup *InputSecurityGroup `locationName:"securityGroup" type:"structure"`
7864}
7865
7866// String returns the string representation
7867func (s CreateInputSecurityGroupOutput) String() string {
7868	return awsutil.Prettify(s)
7869}
7870
7871// GoString returns the string representation
7872func (s CreateInputSecurityGroupOutput) GoString() string {
7873	return s.String()
7874}
7875
7876// SetSecurityGroup sets the SecurityGroup field's value.
7877func (s *CreateInputSecurityGroupOutput) SetSecurityGroup(v *InputSecurityGroup) *CreateInputSecurityGroupOutput {
7878	s.SecurityGroup = v
7879	return s
7880}
7881
7882type CreateMultiplexInput struct {
7883	_ struct{} `type:"structure"`
7884
7885	// AvailabilityZones is a required field
7886	AvailabilityZones []*string `locationName:"availabilityZones" type:"list" required:"true"`
7887
7888	// Contains configuration for a Multiplex event
7889	//
7890	// MultiplexSettings is a required field
7891	MultiplexSettings *MultiplexSettings `locationName:"multiplexSettings" type:"structure" required:"true"`
7892
7893	// Name is a required field
7894	Name *string `locationName:"name" type:"string" required:"true"`
7895
7896	RequestId *string `locationName:"requestId" type:"string" idempotencyToken:"true"`
7897
7898	Tags map[string]*string `locationName:"tags" type:"map"`
7899}
7900
7901// String returns the string representation
7902func (s CreateMultiplexInput) String() string {
7903	return awsutil.Prettify(s)
7904}
7905
7906// GoString returns the string representation
7907func (s CreateMultiplexInput) GoString() string {
7908	return s.String()
7909}
7910
7911// Validate inspects the fields of the type to determine if they are valid.
7912func (s *CreateMultiplexInput) Validate() error {
7913	invalidParams := request.ErrInvalidParams{Context: "CreateMultiplexInput"}
7914	if s.AvailabilityZones == nil {
7915		invalidParams.Add(request.NewErrParamRequired("AvailabilityZones"))
7916	}
7917	if s.MultiplexSettings == nil {
7918		invalidParams.Add(request.NewErrParamRequired("MultiplexSettings"))
7919	}
7920	if s.Name == nil {
7921		invalidParams.Add(request.NewErrParamRequired("Name"))
7922	}
7923	if s.MultiplexSettings != nil {
7924		if err := s.MultiplexSettings.Validate(); err != nil {
7925			invalidParams.AddNested("MultiplexSettings", err.(request.ErrInvalidParams))
7926		}
7927	}
7928
7929	if invalidParams.Len() > 0 {
7930		return invalidParams
7931	}
7932	return nil
7933}
7934
7935// SetAvailabilityZones sets the AvailabilityZones field's value.
7936func (s *CreateMultiplexInput) SetAvailabilityZones(v []*string) *CreateMultiplexInput {
7937	s.AvailabilityZones = v
7938	return s
7939}
7940
7941// SetMultiplexSettings sets the MultiplexSettings field's value.
7942func (s *CreateMultiplexInput) SetMultiplexSettings(v *MultiplexSettings) *CreateMultiplexInput {
7943	s.MultiplexSettings = v
7944	return s
7945}
7946
7947// SetName sets the Name field's value.
7948func (s *CreateMultiplexInput) SetName(v string) *CreateMultiplexInput {
7949	s.Name = &v
7950	return s
7951}
7952
7953// SetRequestId sets the RequestId field's value.
7954func (s *CreateMultiplexInput) SetRequestId(v string) *CreateMultiplexInput {
7955	s.RequestId = &v
7956	return s
7957}
7958
7959// SetTags sets the Tags field's value.
7960func (s *CreateMultiplexInput) SetTags(v map[string]*string) *CreateMultiplexInput {
7961	s.Tags = v
7962	return s
7963}
7964
7965type CreateMultiplexOutput struct {
7966	_ struct{} `type:"structure"`
7967
7968	// The multiplex object.
7969	Multiplex *Multiplex `locationName:"multiplex" type:"structure"`
7970}
7971
7972// String returns the string representation
7973func (s CreateMultiplexOutput) String() string {
7974	return awsutil.Prettify(s)
7975}
7976
7977// GoString returns the string representation
7978func (s CreateMultiplexOutput) GoString() string {
7979	return s.String()
7980}
7981
7982// SetMultiplex sets the Multiplex field's value.
7983func (s *CreateMultiplexOutput) SetMultiplex(v *Multiplex) *CreateMultiplexOutput {
7984	s.Multiplex = v
7985	return s
7986}
7987
7988type CreateMultiplexProgramInput struct {
7989	_ struct{} `type:"structure"`
7990
7991	// MultiplexId is a required field
7992	MultiplexId *string `location:"uri" locationName:"multiplexId" type:"string" required:"true"`
7993
7994	// Multiplex Program settings configuration.
7995	//
7996	// MultiplexProgramSettings is a required field
7997	MultiplexProgramSettings *MultiplexProgramSettings `locationName:"multiplexProgramSettings" type:"structure" required:"true"`
7998
7999	// ProgramName is a required field
8000	ProgramName *string `locationName:"programName" type:"string" required:"true"`
8001
8002	RequestId *string `locationName:"requestId" type:"string" idempotencyToken:"true"`
8003}
8004
8005// String returns the string representation
8006func (s CreateMultiplexProgramInput) String() string {
8007	return awsutil.Prettify(s)
8008}
8009
8010// GoString returns the string representation
8011func (s CreateMultiplexProgramInput) GoString() string {
8012	return s.String()
8013}
8014
8015// Validate inspects the fields of the type to determine if they are valid.
8016func (s *CreateMultiplexProgramInput) Validate() error {
8017	invalidParams := request.ErrInvalidParams{Context: "CreateMultiplexProgramInput"}
8018	if s.MultiplexId == nil {
8019		invalidParams.Add(request.NewErrParamRequired("MultiplexId"))
8020	}
8021	if s.MultiplexId != nil && len(*s.MultiplexId) < 1 {
8022		invalidParams.Add(request.NewErrParamMinLen("MultiplexId", 1))
8023	}
8024	if s.MultiplexProgramSettings == nil {
8025		invalidParams.Add(request.NewErrParamRequired("MultiplexProgramSettings"))
8026	}
8027	if s.ProgramName == nil {
8028		invalidParams.Add(request.NewErrParamRequired("ProgramName"))
8029	}
8030	if s.MultiplexProgramSettings != nil {
8031		if err := s.MultiplexProgramSettings.Validate(); err != nil {
8032			invalidParams.AddNested("MultiplexProgramSettings", err.(request.ErrInvalidParams))
8033		}
8034	}
8035
8036	if invalidParams.Len() > 0 {
8037		return invalidParams
8038	}
8039	return nil
8040}
8041
8042// SetMultiplexId sets the MultiplexId field's value.
8043func (s *CreateMultiplexProgramInput) SetMultiplexId(v string) *CreateMultiplexProgramInput {
8044	s.MultiplexId = &v
8045	return s
8046}
8047
8048// SetMultiplexProgramSettings sets the MultiplexProgramSettings field's value.
8049func (s *CreateMultiplexProgramInput) SetMultiplexProgramSettings(v *MultiplexProgramSettings) *CreateMultiplexProgramInput {
8050	s.MultiplexProgramSettings = v
8051	return s
8052}
8053
8054// SetProgramName sets the ProgramName field's value.
8055func (s *CreateMultiplexProgramInput) SetProgramName(v string) *CreateMultiplexProgramInput {
8056	s.ProgramName = &v
8057	return s
8058}
8059
8060// SetRequestId sets the RequestId field's value.
8061func (s *CreateMultiplexProgramInput) SetRequestId(v string) *CreateMultiplexProgramInput {
8062	s.RequestId = &v
8063	return s
8064}
8065
8066type CreateMultiplexProgramOutput struct {
8067	_ struct{} `type:"structure"`
8068
8069	// The multiplex program object.
8070	MultiplexProgram *MultiplexProgram `locationName:"multiplexProgram" type:"structure"`
8071}
8072
8073// String returns the string representation
8074func (s CreateMultiplexProgramOutput) String() string {
8075	return awsutil.Prettify(s)
8076}
8077
8078// GoString returns the string representation
8079func (s CreateMultiplexProgramOutput) GoString() string {
8080	return s.String()
8081}
8082
8083// SetMultiplexProgram sets the MultiplexProgram field's value.
8084func (s *CreateMultiplexProgramOutput) SetMultiplexProgram(v *MultiplexProgram) *CreateMultiplexProgramOutput {
8085	s.MultiplexProgram = v
8086	return s
8087}
8088
8089type CreateTagsInput struct {
8090	_ struct{} `type:"structure"`
8091
8092	// ResourceArn is a required field
8093	ResourceArn *string `location:"uri" locationName:"resource-arn" type:"string" required:"true"`
8094
8095	Tags map[string]*string `locationName:"tags" type:"map"`
8096}
8097
8098// String returns the string representation
8099func (s CreateTagsInput) String() string {
8100	return awsutil.Prettify(s)
8101}
8102
8103// GoString returns the string representation
8104func (s CreateTagsInput) GoString() string {
8105	return s.String()
8106}
8107
8108// Validate inspects the fields of the type to determine if they are valid.
8109func (s *CreateTagsInput) Validate() error {
8110	invalidParams := request.ErrInvalidParams{Context: "CreateTagsInput"}
8111	if s.ResourceArn == nil {
8112		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
8113	}
8114	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
8115		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
8116	}
8117
8118	if invalidParams.Len() > 0 {
8119		return invalidParams
8120	}
8121	return nil
8122}
8123
8124// SetResourceArn sets the ResourceArn field's value.
8125func (s *CreateTagsInput) SetResourceArn(v string) *CreateTagsInput {
8126	s.ResourceArn = &v
8127	return s
8128}
8129
8130// SetTags sets the Tags field's value.
8131func (s *CreateTagsInput) SetTags(v map[string]*string) *CreateTagsInput {
8132	s.Tags = v
8133	return s
8134}
8135
8136type CreateTagsOutput struct {
8137	_ struct{} `type:"structure"`
8138}
8139
8140// String returns the string representation
8141func (s CreateTagsOutput) String() string {
8142	return awsutil.Prettify(s)
8143}
8144
8145// GoString returns the string representation
8146func (s CreateTagsOutput) GoString() string {
8147	return s.String()
8148}
8149
8150type DeleteChannelInput struct {
8151	_ struct{} `type:"structure"`
8152
8153	// ChannelId is a required field
8154	ChannelId *string `location:"uri" locationName:"channelId" type:"string" required:"true"`
8155}
8156
8157// String returns the string representation
8158func (s DeleteChannelInput) String() string {
8159	return awsutil.Prettify(s)
8160}
8161
8162// GoString returns the string representation
8163func (s DeleteChannelInput) GoString() string {
8164	return s.String()
8165}
8166
8167// Validate inspects the fields of the type to determine if they are valid.
8168func (s *DeleteChannelInput) Validate() error {
8169	invalidParams := request.ErrInvalidParams{Context: "DeleteChannelInput"}
8170	if s.ChannelId == nil {
8171		invalidParams.Add(request.NewErrParamRequired("ChannelId"))
8172	}
8173	if s.ChannelId != nil && len(*s.ChannelId) < 1 {
8174		invalidParams.Add(request.NewErrParamMinLen("ChannelId", 1))
8175	}
8176
8177	if invalidParams.Len() > 0 {
8178		return invalidParams
8179	}
8180	return nil
8181}
8182
8183// SetChannelId sets the ChannelId field's value.
8184func (s *DeleteChannelInput) SetChannelId(v string) *DeleteChannelInput {
8185	s.ChannelId = &v
8186	return s
8187}
8188
8189type DeleteChannelOutput struct {
8190	_ struct{} `type:"structure"`
8191
8192	Arn *string `locationName:"arn" type:"string"`
8193
8194	// A standard channel has two encoding pipelines and a single pipeline channel
8195	// only has one.
8196	ChannelClass *string `locationName:"channelClass" type:"string" enum:"ChannelClass"`
8197
8198	Destinations []*OutputDestination `locationName:"destinations" type:"list"`
8199
8200	EgressEndpoints []*ChannelEgressEndpoint `locationName:"egressEndpoints" type:"list"`
8201
8202	// Encoder Settings
8203	EncoderSettings *EncoderSettings `locationName:"encoderSettings" type:"structure"`
8204
8205	Id *string `locationName:"id" type:"string"`
8206
8207	InputAttachments []*InputAttachment `locationName:"inputAttachments" type:"list"`
8208
8209	InputSpecification *InputSpecification `locationName:"inputSpecification" type:"structure"`
8210
8211	// The log level the user wants for their channel.
8212	LogLevel *string `locationName:"logLevel" type:"string" enum:"LogLevel"`
8213
8214	Name *string `locationName:"name" type:"string"`
8215
8216	PipelineDetails []*PipelineDetail `locationName:"pipelineDetails" type:"list"`
8217
8218	PipelinesRunningCount *int64 `locationName:"pipelinesRunningCount" type:"integer"`
8219
8220	RoleArn *string `locationName:"roleArn" type:"string"`
8221
8222	State *string `locationName:"state" type:"string" enum:"ChannelState"`
8223
8224	Tags map[string]*string `locationName:"tags" type:"map"`
8225}
8226
8227// String returns the string representation
8228func (s DeleteChannelOutput) String() string {
8229	return awsutil.Prettify(s)
8230}
8231
8232// GoString returns the string representation
8233func (s DeleteChannelOutput) GoString() string {
8234	return s.String()
8235}
8236
8237// SetArn sets the Arn field's value.
8238func (s *DeleteChannelOutput) SetArn(v string) *DeleteChannelOutput {
8239	s.Arn = &v
8240	return s
8241}
8242
8243// SetChannelClass sets the ChannelClass field's value.
8244func (s *DeleteChannelOutput) SetChannelClass(v string) *DeleteChannelOutput {
8245	s.ChannelClass = &v
8246	return s
8247}
8248
8249// SetDestinations sets the Destinations field's value.
8250func (s *DeleteChannelOutput) SetDestinations(v []*OutputDestination) *DeleteChannelOutput {
8251	s.Destinations = v
8252	return s
8253}
8254
8255// SetEgressEndpoints sets the EgressEndpoints field's value.
8256func (s *DeleteChannelOutput) SetEgressEndpoints(v []*ChannelEgressEndpoint) *DeleteChannelOutput {
8257	s.EgressEndpoints = v
8258	return s
8259}
8260
8261// SetEncoderSettings sets the EncoderSettings field's value.
8262func (s *DeleteChannelOutput) SetEncoderSettings(v *EncoderSettings) *DeleteChannelOutput {
8263	s.EncoderSettings = v
8264	return s
8265}
8266
8267// SetId sets the Id field's value.
8268func (s *DeleteChannelOutput) SetId(v string) *DeleteChannelOutput {
8269	s.Id = &v
8270	return s
8271}
8272
8273// SetInputAttachments sets the InputAttachments field's value.
8274func (s *DeleteChannelOutput) SetInputAttachments(v []*InputAttachment) *DeleteChannelOutput {
8275	s.InputAttachments = v
8276	return s
8277}
8278
8279// SetInputSpecification sets the InputSpecification field's value.
8280func (s *DeleteChannelOutput) SetInputSpecification(v *InputSpecification) *DeleteChannelOutput {
8281	s.InputSpecification = v
8282	return s
8283}
8284
8285// SetLogLevel sets the LogLevel field's value.
8286func (s *DeleteChannelOutput) SetLogLevel(v string) *DeleteChannelOutput {
8287	s.LogLevel = &v
8288	return s
8289}
8290
8291// SetName sets the Name field's value.
8292func (s *DeleteChannelOutput) SetName(v string) *DeleteChannelOutput {
8293	s.Name = &v
8294	return s
8295}
8296
8297// SetPipelineDetails sets the PipelineDetails field's value.
8298func (s *DeleteChannelOutput) SetPipelineDetails(v []*PipelineDetail) *DeleteChannelOutput {
8299	s.PipelineDetails = v
8300	return s
8301}
8302
8303// SetPipelinesRunningCount sets the PipelinesRunningCount field's value.
8304func (s *DeleteChannelOutput) SetPipelinesRunningCount(v int64) *DeleteChannelOutput {
8305	s.PipelinesRunningCount = &v
8306	return s
8307}
8308
8309// SetRoleArn sets the RoleArn field's value.
8310func (s *DeleteChannelOutput) SetRoleArn(v string) *DeleteChannelOutput {
8311	s.RoleArn = &v
8312	return s
8313}
8314
8315// SetState sets the State field's value.
8316func (s *DeleteChannelOutput) SetState(v string) *DeleteChannelOutput {
8317	s.State = &v
8318	return s
8319}
8320
8321// SetTags sets the Tags field's value.
8322func (s *DeleteChannelOutput) SetTags(v map[string]*string) *DeleteChannelOutput {
8323	s.Tags = v
8324	return s
8325}
8326
8327type DeleteInputInput struct {
8328	_ struct{} `type:"structure"`
8329
8330	// InputId is a required field
8331	InputId *string `location:"uri" locationName:"inputId" type:"string" required:"true"`
8332}
8333
8334// String returns the string representation
8335func (s DeleteInputInput) String() string {
8336	return awsutil.Prettify(s)
8337}
8338
8339// GoString returns the string representation
8340func (s DeleteInputInput) GoString() string {
8341	return s.String()
8342}
8343
8344// Validate inspects the fields of the type to determine if they are valid.
8345func (s *DeleteInputInput) Validate() error {
8346	invalidParams := request.ErrInvalidParams{Context: "DeleteInputInput"}
8347	if s.InputId == nil {
8348		invalidParams.Add(request.NewErrParamRequired("InputId"))
8349	}
8350	if s.InputId != nil && len(*s.InputId) < 1 {
8351		invalidParams.Add(request.NewErrParamMinLen("InputId", 1))
8352	}
8353
8354	if invalidParams.Len() > 0 {
8355		return invalidParams
8356	}
8357	return nil
8358}
8359
8360// SetInputId sets the InputId field's value.
8361func (s *DeleteInputInput) SetInputId(v string) *DeleteInputInput {
8362	s.InputId = &v
8363	return s
8364}
8365
8366type DeleteInputOutput struct {
8367	_ struct{} `type:"structure"`
8368}
8369
8370// String returns the string representation
8371func (s DeleteInputOutput) String() string {
8372	return awsutil.Prettify(s)
8373}
8374
8375// GoString returns the string representation
8376func (s DeleteInputOutput) GoString() string {
8377	return s.String()
8378}
8379
8380type DeleteInputSecurityGroupInput struct {
8381	_ struct{} `type:"structure"`
8382
8383	// InputSecurityGroupId is a required field
8384	InputSecurityGroupId *string `location:"uri" locationName:"inputSecurityGroupId" type:"string" required:"true"`
8385}
8386
8387// String returns the string representation
8388func (s DeleteInputSecurityGroupInput) String() string {
8389	return awsutil.Prettify(s)
8390}
8391
8392// GoString returns the string representation
8393func (s DeleteInputSecurityGroupInput) GoString() string {
8394	return s.String()
8395}
8396
8397// Validate inspects the fields of the type to determine if they are valid.
8398func (s *DeleteInputSecurityGroupInput) Validate() error {
8399	invalidParams := request.ErrInvalidParams{Context: "DeleteInputSecurityGroupInput"}
8400	if s.InputSecurityGroupId == nil {
8401		invalidParams.Add(request.NewErrParamRequired("InputSecurityGroupId"))
8402	}
8403	if s.InputSecurityGroupId != nil && len(*s.InputSecurityGroupId) < 1 {
8404		invalidParams.Add(request.NewErrParamMinLen("InputSecurityGroupId", 1))
8405	}
8406
8407	if invalidParams.Len() > 0 {
8408		return invalidParams
8409	}
8410	return nil
8411}
8412
8413// SetInputSecurityGroupId sets the InputSecurityGroupId field's value.
8414func (s *DeleteInputSecurityGroupInput) SetInputSecurityGroupId(v string) *DeleteInputSecurityGroupInput {
8415	s.InputSecurityGroupId = &v
8416	return s
8417}
8418
8419type DeleteInputSecurityGroupOutput struct {
8420	_ struct{} `type:"structure"`
8421}
8422
8423// String returns the string representation
8424func (s DeleteInputSecurityGroupOutput) String() string {
8425	return awsutil.Prettify(s)
8426}
8427
8428// GoString returns the string representation
8429func (s DeleteInputSecurityGroupOutput) GoString() string {
8430	return s.String()
8431}
8432
8433type DeleteMultiplexInput struct {
8434	_ struct{} `type:"structure"`
8435
8436	// MultiplexId is a required field
8437	MultiplexId *string `location:"uri" locationName:"multiplexId" type:"string" required:"true"`
8438}
8439
8440// String returns the string representation
8441func (s DeleteMultiplexInput) String() string {
8442	return awsutil.Prettify(s)
8443}
8444
8445// GoString returns the string representation
8446func (s DeleteMultiplexInput) GoString() string {
8447	return s.String()
8448}
8449
8450// Validate inspects the fields of the type to determine if they are valid.
8451func (s *DeleteMultiplexInput) Validate() error {
8452	invalidParams := request.ErrInvalidParams{Context: "DeleteMultiplexInput"}
8453	if s.MultiplexId == nil {
8454		invalidParams.Add(request.NewErrParamRequired("MultiplexId"))
8455	}
8456	if s.MultiplexId != nil && len(*s.MultiplexId) < 1 {
8457		invalidParams.Add(request.NewErrParamMinLen("MultiplexId", 1))
8458	}
8459
8460	if invalidParams.Len() > 0 {
8461		return invalidParams
8462	}
8463	return nil
8464}
8465
8466// SetMultiplexId sets the MultiplexId field's value.
8467func (s *DeleteMultiplexInput) SetMultiplexId(v string) *DeleteMultiplexInput {
8468	s.MultiplexId = &v
8469	return s
8470}
8471
8472type DeleteMultiplexOutput struct {
8473	_ struct{} `type:"structure"`
8474
8475	Arn *string `locationName:"arn" type:"string"`
8476
8477	AvailabilityZones []*string `locationName:"availabilityZones" type:"list"`
8478
8479	Destinations []*MultiplexOutputDestination `locationName:"destinations" type:"list"`
8480
8481	Id *string `locationName:"id" type:"string"`
8482
8483	// Contains configuration for a Multiplex event
8484	MultiplexSettings *MultiplexSettings `locationName:"multiplexSettings" type:"structure"`
8485
8486	Name *string `locationName:"name" type:"string"`
8487
8488	PipelinesRunningCount *int64 `locationName:"pipelinesRunningCount" type:"integer"`
8489
8490	ProgramCount *int64 `locationName:"programCount" type:"integer"`
8491
8492	// The current state of the multiplex.
8493	State *string `locationName:"state" type:"string" enum:"MultiplexState"`
8494
8495	Tags map[string]*string `locationName:"tags" type:"map"`
8496}
8497
8498// String returns the string representation
8499func (s DeleteMultiplexOutput) String() string {
8500	return awsutil.Prettify(s)
8501}
8502
8503// GoString returns the string representation
8504func (s DeleteMultiplexOutput) GoString() string {
8505	return s.String()
8506}
8507
8508// SetArn sets the Arn field's value.
8509func (s *DeleteMultiplexOutput) SetArn(v string) *DeleteMultiplexOutput {
8510	s.Arn = &v
8511	return s
8512}
8513
8514// SetAvailabilityZones sets the AvailabilityZones field's value.
8515func (s *DeleteMultiplexOutput) SetAvailabilityZones(v []*string) *DeleteMultiplexOutput {
8516	s.AvailabilityZones = v
8517	return s
8518}
8519
8520// SetDestinations sets the Destinations field's value.
8521func (s *DeleteMultiplexOutput) SetDestinations(v []*MultiplexOutputDestination) *DeleteMultiplexOutput {
8522	s.Destinations = v
8523	return s
8524}
8525
8526// SetId sets the Id field's value.
8527func (s *DeleteMultiplexOutput) SetId(v string) *DeleteMultiplexOutput {
8528	s.Id = &v
8529	return s
8530}
8531
8532// SetMultiplexSettings sets the MultiplexSettings field's value.
8533func (s *DeleteMultiplexOutput) SetMultiplexSettings(v *MultiplexSettings) *DeleteMultiplexOutput {
8534	s.MultiplexSettings = v
8535	return s
8536}
8537
8538// SetName sets the Name field's value.
8539func (s *DeleteMultiplexOutput) SetName(v string) *DeleteMultiplexOutput {
8540	s.Name = &v
8541	return s
8542}
8543
8544// SetPipelinesRunningCount sets the PipelinesRunningCount field's value.
8545func (s *DeleteMultiplexOutput) SetPipelinesRunningCount(v int64) *DeleteMultiplexOutput {
8546	s.PipelinesRunningCount = &v
8547	return s
8548}
8549
8550// SetProgramCount sets the ProgramCount field's value.
8551func (s *DeleteMultiplexOutput) SetProgramCount(v int64) *DeleteMultiplexOutput {
8552	s.ProgramCount = &v
8553	return s
8554}
8555
8556// SetState sets the State field's value.
8557func (s *DeleteMultiplexOutput) SetState(v string) *DeleteMultiplexOutput {
8558	s.State = &v
8559	return s
8560}
8561
8562// SetTags sets the Tags field's value.
8563func (s *DeleteMultiplexOutput) SetTags(v map[string]*string) *DeleteMultiplexOutput {
8564	s.Tags = v
8565	return s
8566}
8567
8568type DeleteMultiplexProgramInput struct {
8569	_ struct{} `type:"structure"`
8570
8571	// MultiplexId is a required field
8572	MultiplexId *string `location:"uri" locationName:"multiplexId" type:"string" required:"true"`
8573
8574	// ProgramName is a required field
8575	ProgramName *string `location:"uri" locationName:"programName" type:"string" required:"true"`
8576}
8577
8578// String returns the string representation
8579func (s DeleteMultiplexProgramInput) String() string {
8580	return awsutil.Prettify(s)
8581}
8582
8583// GoString returns the string representation
8584func (s DeleteMultiplexProgramInput) GoString() string {
8585	return s.String()
8586}
8587
8588// Validate inspects the fields of the type to determine if they are valid.
8589func (s *DeleteMultiplexProgramInput) Validate() error {
8590	invalidParams := request.ErrInvalidParams{Context: "DeleteMultiplexProgramInput"}
8591	if s.MultiplexId == nil {
8592		invalidParams.Add(request.NewErrParamRequired("MultiplexId"))
8593	}
8594	if s.MultiplexId != nil && len(*s.MultiplexId) < 1 {
8595		invalidParams.Add(request.NewErrParamMinLen("MultiplexId", 1))
8596	}
8597	if s.ProgramName == nil {
8598		invalidParams.Add(request.NewErrParamRequired("ProgramName"))
8599	}
8600	if s.ProgramName != nil && len(*s.ProgramName) < 1 {
8601		invalidParams.Add(request.NewErrParamMinLen("ProgramName", 1))
8602	}
8603
8604	if invalidParams.Len() > 0 {
8605		return invalidParams
8606	}
8607	return nil
8608}
8609
8610// SetMultiplexId sets the MultiplexId field's value.
8611func (s *DeleteMultiplexProgramInput) SetMultiplexId(v string) *DeleteMultiplexProgramInput {
8612	s.MultiplexId = &v
8613	return s
8614}
8615
8616// SetProgramName sets the ProgramName field's value.
8617func (s *DeleteMultiplexProgramInput) SetProgramName(v string) *DeleteMultiplexProgramInput {
8618	s.ProgramName = &v
8619	return s
8620}
8621
8622type DeleteMultiplexProgramOutput struct {
8623	_ struct{} `type:"structure"`
8624
8625	ChannelId *string `locationName:"channelId" type:"string"`
8626
8627	// Multiplex Program settings configuration.
8628	MultiplexProgramSettings *MultiplexProgramSettings `locationName:"multiplexProgramSettings" type:"structure"`
8629
8630	// Packet identifiers map for a given Multiplex program.
8631	PacketIdentifiersMap *MultiplexProgramPacketIdentifiersMap `locationName:"packetIdentifiersMap" type:"structure"`
8632
8633	ProgramName *string `locationName:"programName" type:"string"`
8634}
8635
8636// String returns the string representation
8637func (s DeleteMultiplexProgramOutput) String() string {
8638	return awsutil.Prettify(s)
8639}
8640
8641// GoString returns the string representation
8642func (s DeleteMultiplexProgramOutput) GoString() string {
8643	return s.String()
8644}
8645
8646// SetChannelId sets the ChannelId field's value.
8647func (s *DeleteMultiplexProgramOutput) SetChannelId(v string) *DeleteMultiplexProgramOutput {
8648	s.ChannelId = &v
8649	return s
8650}
8651
8652// SetMultiplexProgramSettings sets the MultiplexProgramSettings field's value.
8653func (s *DeleteMultiplexProgramOutput) SetMultiplexProgramSettings(v *MultiplexProgramSettings) *DeleteMultiplexProgramOutput {
8654	s.MultiplexProgramSettings = v
8655	return s
8656}
8657
8658// SetPacketIdentifiersMap sets the PacketIdentifiersMap field's value.
8659func (s *DeleteMultiplexProgramOutput) SetPacketIdentifiersMap(v *MultiplexProgramPacketIdentifiersMap) *DeleteMultiplexProgramOutput {
8660	s.PacketIdentifiersMap = v
8661	return s
8662}
8663
8664// SetProgramName sets the ProgramName field's value.
8665func (s *DeleteMultiplexProgramOutput) SetProgramName(v string) *DeleteMultiplexProgramOutput {
8666	s.ProgramName = &v
8667	return s
8668}
8669
8670type DeleteReservationInput struct {
8671	_ struct{} `type:"structure"`
8672
8673	// ReservationId is a required field
8674	ReservationId *string `location:"uri" locationName:"reservationId" type:"string" required:"true"`
8675}
8676
8677// String returns the string representation
8678func (s DeleteReservationInput) String() string {
8679	return awsutil.Prettify(s)
8680}
8681
8682// GoString returns the string representation
8683func (s DeleteReservationInput) GoString() string {
8684	return s.String()
8685}
8686
8687// Validate inspects the fields of the type to determine if they are valid.
8688func (s *DeleteReservationInput) Validate() error {
8689	invalidParams := request.ErrInvalidParams{Context: "DeleteReservationInput"}
8690	if s.ReservationId == nil {
8691		invalidParams.Add(request.NewErrParamRequired("ReservationId"))
8692	}
8693	if s.ReservationId != nil && len(*s.ReservationId) < 1 {
8694		invalidParams.Add(request.NewErrParamMinLen("ReservationId", 1))
8695	}
8696
8697	if invalidParams.Len() > 0 {
8698		return invalidParams
8699	}
8700	return nil
8701}
8702
8703// SetReservationId sets the ReservationId field's value.
8704func (s *DeleteReservationInput) SetReservationId(v string) *DeleteReservationInput {
8705	s.ReservationId = &v
8706	return s
8707}
8708
8709type DeleteReservationOutput struct {
8710	_ struct{} `type:"structure"`
8711
8712	Arn *string `locationName:"arn" type:"string"`
8713
8714	Count *int64 `locationName:"count" type:"integer"`
8715
8716	CurrencyCode *string `locationName:"currencyCode" type:"string"`
8717
8718	Duration *int64 `locationName:"duration" type:"integer"`
8719
8720	// Units for duration, e.g. 'MONTHS'
8721	DurationUnits *string `locationName:"durationUnits" type:"string" enum:"OfferingDurationUnits"`
8722
8723	End *string `locationName:"end" type:"string"`
8724
8725	FixedPrice *float64 `locationName:"fixedPrice" type:"double"`
8726
8727	Name *string `locationName:"name" type:"string"`
8728
8729	OfferingDescription *string `locationName:"offeringDescription" type:"string"`
8730
8731	OfferingId *string `locationName:"offeringId" type:"string"`
8732
8733	// Offering type, e.g. 'NO_UPFRONT'
8734	OfferingType *string `locationName:"offeringType" type:"string" enum:"OfferingType"`
8735
8736	Region *string `locationName:"region" type:"string"`
8737
8738	ReservationId *string `locationName:"reservationId" type:"string"`
8739
8740	// Resource configuration (codec, resolution, bitrate, ...)
8741	ResourceSpecification *ReservationResourceSpecification `locationName:"resourceSpecification" type:"structure"`
8742
8743	Start *string `locationName:"start" type:"string"`
8744
8745	// Current reservation state
8746	State *string `locationName:"state" type:"string" enum:"ReservationState"`
8747
8748	Tags map[string]*string `locationName:"tags" type:"map"`
8749
8750	UsagePrice *float64 `locationName:"usagePrice" type:"double"`
8751}
8752
8753// String returns the string representation
8754func (s DeleteReservationOutput) String() string {
8755	return awsutil.Prettify(s)
8756}
8757
8758// GoString returns the string representation
8759func (s DeleteReservationOutput) GoString() string {
8760	return s.String()
8761}
8762
8763// SetArn sets the Arn field's value.
8764func (s *DeleteReservationOutput) SetArn(v string) *DeleteReservationOutput {
8765	s.Arn = &v
8766	return s
8767}
8768
8769// SetCount sets the Count field's value.
8770func (s *DeleteReservationOutput) SetCount(v int64) *DeleteReservationOutput {
8771	s.Count = &v
8772	return s
8773}
8774
8775// SetCurrencyCode sets the CurrencyCode field's value.
8776func (s *DeleteReservationOutput) SetCurrencyCode(v string) *DeleteReservationOutput {
8777	s.CurrencyCode = &v
8778	return s
8779}
8780
8781// SetDuration sets the Duration field's value.
8782func (s *DeleteReservationOutput) SetDuration(v int64) *DeleteReservationOutput {
8783	s.Duration = &v
8784	return s
8785}
8786
8787// SetDurationUnits sets the DurationUnits field's value.
8788func (s *DeleteReservationOutput) SetDurationUnits(v string) *DeleteReservationOutput {
8789	s.DurationUnits = &v
8790	return s
8791}
8792
8793// SetEnd sets the End field's value.
8794func (s *DeleteReservationOutput) SetEnd(v string) *DeleteReservationOutput {
8795	s.End = &v
8796	return s
8797}
8798
8799// SetFixedPrice sets the FixedPrice field's value.
8800func (s *DeleteReservationOutput) SetFixedPrice(v float64) *DeleteReservationOutput {
8801	s.FixedPrice = &v
8802	return s
8803}
8804
8805// SetName sets the Name field's value.
8806func (s *DeleteReservationOutput) SetName(v string) *DeleteReservationOutput {
8807	s.Name = &v
8808	return s
8809}
8810
8811// SetOfferingDescription sets the OfferingDescription field's value.
8812func (s *DeleteReservationOutput) SetOfferingDescription(v string) *DeleteReservationOutput {
8813	s.OfferingDescription = &v
8814	return s
8815}
8816
8817// SetOfferingId sets the OfferingId field's value.
8818func (s *DeleteReservationOutput) SetOfferingId(v string) *DeleteReservationOutput {
8819	s.OfferingId = &v
8820	return s
8821}
8822
8823// SetOfferingType sets the OfferingType field's value.
8824func (s *DeleteReservationOutput) SetOfferingType(v string) *DeleteReservationOutput {
8825	s.OfferingType = &v
8826	return s
8827}
8828
8829// SetRegion sets the Region field's value.
8830func (s *DeleteReservationOutput) SetRegion(v string) *DeleteReservationOutput {
8831	s.Region = &v
8832	return s
8833}
8834
8835// SetReservationId sets the ReservationId field's value.
8836func (s *DeleteReservationOutput) SetReservationId(v string) *DeleteReservationOutput {
8837	s.ReservationId = &v
8838	return s
8839}
8840
8841// SetResourceSpecification sets the ResourceSpecification field's value.
8842func (s *DeleteReservationOutput) SetResourceSpecification(v *ReservationResourceSpecification) *DeleteReservationOutput {
8843	s.ResourceSpecification = v
8844	return s
8845}
8846
8847// SetStart sets the Start field's value.
8848func (s *DeleteReservationOutput) SetStart(v string) *DeleteReservationOutput {
8849	s.Start = &v
8850	return s
8851}
8852
8853// SetState sets the State field's value.
8854func (s *DeleteReservationOutput) SetState(v string) *DeleteReservationOutput {
8855	s.State = &v
8856	return s
8857}
8858
8859// SetTags sets the Tags field's value.
8860func (s *DeleteReservationOutput) SetTags(v map[string]*string) *DeleteReservationOutput {
8861	s.Tags = v
8862	return s
8863}
8864
8865// SetUsagePrice sets the UsagePrice field's value.
8866func (s *DeleteReservationOutput) SetUsagePrice(v float64) *DeleteReservationOutput {
8867	s.UsagePrice = &v
8868	return s
8869}
8870
8871type DeleteScheduleInput struct {
8872	_ struct{} `type:"structure"`
8873
8874	// ChannelId is a required field
8875	ChannelId *string `location:"uri" locationName:"channelId" type:"string" required:"true"`
8876}
8877
8878// String returns the string representation
8879func (s DeleteScheduleInput) String() string {
8880	return awsutil.Prettify(s)
8881}
8882
8883// GoString returns the string representation
8884func (s DeleteScheduleInput) GoString() string {
8885	return s.String()
8886}
8887
8888// Validate inspects the fields of the type to determine if they are valid.
8889func (s *DeleteScheduleInput) Validate() error {
8890	invalidParams := request.ErrInvalidParams{Context: "DeleteScheduleInput"}
8891	if s.ChannelId == nil {
8892		invalidParams.Add(request.NewErrParamRequired("ChannelId"))
8893	}
8894	if s.ChannelId != nil && len(*s.ChannelId) < 1 {
8895		invalidParams.Add(request.NewErrParamMinLen("ChannelId", 1))
8896	}
8897
8898	if invalidParams.Len() > 0 {
8899		return invalidParams
8900	}
8901	return nil
8902}
8903
8904// SetChannelId sets the ChannelId field's value.
8905func (s *DeleteScheduleInput) SetChannelId(v string) *DeleteScheduleInput {
8906	s.ChannelId = &v
8907	return s
8908}
8909
8910type DeleteScheduleOutput struct {
8911	_ struct{} `type:"structure"`
8912}
8913
8914// String returns the string representation
8915func (s DeleteScheduleOutput) String() string {
8916	return awsutil.Prettify(s)
8917}
8918
8919// GoString returns the string representation
8920func (s DeleteScheduleOutput) GoString() string {
8921	return s.String()
8922}
8923
8924type DeleteTagsInput struct {
8925	_ struct{} `type:"structure"`
8926
8927	// ResourceArn is a required field
8928	ResourceArn *string `location:"uri" locationName:"resource-arn" type:"string" required:"true"`
8929
8930	// TagKeys is a required field
8931	TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"`
8932}
8933
8934// String returns the string representation
8935func (s DeleteTagsInput) String() string {
8936	return awsutil.Prettify(s)
8937}
8938
8939// GoString returns the string representation
8940func (s DeleteTagsInput) GoString() string {
8941	return s.String()
8942}
8943
8944// Validate inspects the fields of the type to determine if they are valid.
8945func (s *DeleteTagsInput) Validate() error {
8946	invalidParams := request.ErrInvalidParams{Context: "DeleteTagsInput"}
8947	if s.ResourceArn == nil {
8948		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
8949	}
8950	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
8951		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
8952	}
8953	if s.TagKeys == nil {
8954		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
8955	}
8956
8957	if invalidParams.Len() > 0 {
8958		return invalidParams
8959	}
8960	return nil
8961}
8962
8963// SetResourceArn sets the ResourceArn field's value.
8964func (s *DeleteTagsInput) SetResourceArn(v string) *DeleteTagsInput {
8965	s.ResourceArn = &v
8966	return s
8967}
8968
8969// SetTagKeys sets the TagKeys field's value.
8970func (s *DeleteTagsInput) SetTagKeys(v []*string) *DeleteTagsInput {
8971	s.TagKeys = v
8972	return s
8973}
8974
8975type DeleteTagsOutput struct {
8976	_ struct{} `type:"structure"`
8977}
8978
8979// String returns the string representation
8980func (s DeleteTagsOutput) String() string {
8981	return awsutil.Prettify(s)
8982}
8983
8984// GoString returns the string representation
8985func (s DeleteTagsOutput) GoString() string {
8986	return s.String()
8987}
8988
8989type DescribeChannelInput struct {
8990	_ struct{} `type:"structure"`
8991
8992	// ChannelId is a required field
8993	ChannelId *string `location:"uri" locationName:"channelId" type:"string" required:"true"`
8994}
8995
8996// String returns the string representation
8997func (s DescribeChannelInput) String() string {
8998	return awsutil.Prettify(s)
8999}
9000
9001// GoString returns the string representation
9002func (s DescribeChannelInput) GoString() string {
9003	return s.String()
9004}
9005
9006// Validate inspects the fields of the type to determine if they are valid.
9007func (s *DescribeChannelInput) Validate() error {
9008	invalidParams := request.ErrInvalidParams{Context: "DescribeChannelInput"}
9009	if s.ChannelId == nil {
9010		invalidParams.Add(request.NewErrParamRequired("ChannelId"))
9011	}
9012	if s.ChannelId != nil && len(*s.ChannelId) < 1 {
9013		invalidParams.Add(request.NewErrParamMinLen("ChannelId", 1))
9014	}
9015
9016	if invalidParams.Len() > 0 {
9017		return invalidParams
9018	}
9019	return nil
9020}
9021
9022// SetChannelId sets the ChannelId field's value.
9023func (s *DescribeChannelInput) SetChannelId(v string) *DescribeChannelInput {
9024	s.ChannelId = &v
9025	return s
9026}
9027
9028type DescribeChannelOutput struct {
9029	_ struct{} `type:"structure"`
9030
9031	Arn *string `locationName:"arn" type:"string"`
9032
9033	// A standard channel has two encoding pipelines and a single pipeline channel
9034	// only has one.
9035	ChannelClass *string `locationName:"channelClass" type:"string" enum:"ChannelClass"`
9036
9037	Destinations []*OutputDestination `locationName:"destinations" type:"list"`
9038
9039	EgressEndpoints []*ChannelEgressEndpoint `locationName:"egressEndpoints" type:"list"`
9040
9041	// Encoder Settings
9042	EncoderSettings *EncoderSettings `locationName:"encoderSettings" type:"structure"`
9043
9044	Id *string `locationName:"id" type:"string"`
9045
9046	InputAttachments []*InputAttachment `locationName:"inputAttachments" type:"list"`
9047
9048	InputSpecification *InputSpecification `locationName:"inputSpecification" type:"structure"`
9049
9050	// The log level the user wants for their channel.
9051	LogLevel *string `locationName:"logLevel" type:"string" enum:"LogLevel"`
9052
9053	Name *string `locationName:"name" type:"string"`
9054
9055	PipelineDetails []*PipelineDetail `locationName:"pipelineDetails" type:"list"`
9056
9057	PipelinesRunningCount *int64 `locationName:"pipelinesRunningCount" type:"integer"`
9058
9059	RoleArn *string `locationName:"roleArn" type:"string"`
9060
9061	State *string `locationName:"state" type:"string" enum:"ChannelState"`
9062
9063	Tags map[string]*string `locationName:"tags" type:"map"`
9064}
9065
9066// String returns the string representation
9067func (s DescribeChannelOutput) String() string {
9068	return awsutil.Prettify(s)
9069}
9070
9071// GoString returns the string representation
9072func (s DescribeChannelOutput) GoString() string {
9073	return s.String()
9074}
9075
9076// SetArn sets the Arn field's value.
9077func (s *DescribeChannelOutput) SetArn(v string) *DescribeChannelOutput {
9078	s.Arn = &v
9079	return s
9080}
9081
9082// SetChannelClass sets the ChannelClass field's value.
9083func (s *DescribeChannelOutput) SetChannelClass(v string) *DescribeChannelOutput {
9084	s.ChannelClass = &v
9085	return s
9086}
9087
9088// SetDestinations sets the Destinations field's value.
9089func (s *DescribeChannelOutput) SetDestinations(v []*OutputDestination) *DescribeChannelOutput {
9090	s.Destinations = v
9091	return s
9092}
9093
9094// SetEgressEndpoints sets the EgressEndpoints field's value.
9095func (s *DescribeChannelOutput) SetEgressEndpoints(v []*ChannelEgressEndpoint) *DescribeChannelOutput {
9096	s.EgressEndpoints = v
9097	return s
9098}
9099
9100// SetEncoderSettings sets the EncoderSettings field's value.
9101func (s *DescribeChannelOutput) SetEncoderSettings(v *EncoderSettings) *DescribeChannelOutput {
9102	s.EncoderSettings = v
9103	return s
9104}
9105
9106// SetId sets the Id field's value.
9107func (s *DescribeChannelOutput) SetId(v string) *DescribeChannelOutput {
9108	s.Id = &v
9109	return s
9110}
9111
9112// SetInputAttachments sets the InputAttachments field's value.
9113func (s *DescribeChannelOutput) SetInputAttachments(v []*InputAttachment) *DescribeChannelOutput {
9114	s.InputAttachments = v
9115	return s
9116}
9117
9118// SetInputSpecification sets the InputSpecification field's value.
9119func (s *DescribeChannelOutput) SetInputSpecification(v *InputSpecification) *DescribeChannelOutput {
9120	s.InputSpecification = v
9121	return s
9122}
9123
9124// SetLogLevel sets the LogLevel field's value.
9125func (s *DescribeChannelOutput) SetLogLevel(v string) *DescribeChannelOutput {
9126	s.LogLevel = &v
9127	return s
9128}
9129
9130// SetName sets the Name field's value.
9131func (s *DescribeChannelOutput) SetName(v string) *DescribeChannelOutput {
9132	s.Name = &v
9133	return s
9134}
9135
9136// SetPipelineDetails sets the PipelineDetails field's value.
9137func (s *DescribeChannelOutput) SetPipelineDetails(v []*PipelineDetail) *DescribeChannelOutput {
9138	s.PipelineDetails = v
9139	return s
9140}
9141
9142// SetPipelinesRunningCount sets the PipelinesRunningCount field's value.
9143func (s *DescribeChannelOutput) SetPipelinesRunningCount(v int64) *DescribeChannelOutput {
9144	s.PipelinesRunningCount = &v
9145	return s
9146}
9147
9148// SetRoleArn sets the RoleArn field's value.
9149func (s *DescribeChannelOutput) SetRoleArn(v string) *DescribeChannelOutput {
9150	s.RoleArn = &v
9151	return s
9152}
9153
9154// SetState sets the State field's value.
9155func (s *DescribeChannelOutput) SetState(v string) *DescribeChannelOutput {
9156	s.State = &v
9157	return s
9158}
9159
9160// SetTags sets the Tags field's value.
9161func (s *DescribeChannelOutput) SetTags(v map[string]*string) *DescribeChannelOutput {
9162	s.Tags = v
9163	return s
9164}
9165
9166type DescribeInputDeviceInput struct {
9167	_ struct{} `type:"structure"`
9168
9169	// InputDeviceId is a required field
9170	InputDeviceId *string `location:"uri" locationName:"inputDeviceId" type:"string" required:"true"`
9171}
9172
9173// String returns the string representation
9174func (s DescribeInputDeviceInput) String() string {
9175	return awsutil.Prettify(s)
9176}
9177
9178// GoString returns the string representation
9179func (s DescribeInputDeviceInput) GoString() string {
9180	return s.String()
9181}
9182
9183// Validate inspects the fields of the type to determine if they are valid.
9184func (s *DescribeInputDeviceInput) Validate() error {
9185	invalidParams := request.ErrInvalidParams{Context: "DescribeInputDeviceInput"}
9186	if s.InputDeviceId == nil {
9187		invalidParams.Add(request.NewErrParamRequired("InputDeviceId"))
9188	}
9189	if s.InputDeviceId != nil && len(*s.InputDeviceId) < 1 {
9190		invalidParams.Add(request.NewErrParamMinLen("InputDeviceId", 1))
9191	}
9192
9193	if invalidParams.Len() > 0 {
9194		return invalidParams
9195	}
9196	return nil
9197}
9198
9199// SetInputDeviceId sets the InputDeviceId field's value.
9200func (s *DescribeInputDeviceInput) SetInputDeviceId(v string) *DescribeInputDeviceInput {
9201	s.InputDeviceId = &v
9202	return s
9203}
9204
9205type DescribeInputDeviceOutput struct {
9206	_ struct{} `type:"structure"`
9207
9208	Arn *string `locationName:"arn" type:"string"`
9209
9210	// The state of the connection between the input device and AWS.
9211	ConnectionState *string `locationName:"connectionState" type:"string" enum:"InputDeviceConnectionState"`
9212
9213	// The status of the action to synchronize the device configuration. If you
9214	// change the configuration of the input device (for example, the maximum bitrate),
9215	// MediaLive sends the new data to the device. The device might not update itself
9216	// immediately. SYNCED means the device has updated its configuration. SYNCING
9217	// means that it has not updated its configuration.
9218	DeviceSettingsSyncState *string `locationName:"deviceSettingsSyncState" type:"string" enum:"DeviceSettingsSyncState"`
9219
9220	// Settings that describe the active source from the input device, and the video
9221	// characteristics of that source.
9222	HdDeviceSettings *InputDeviceHdSettings `locationName:"hdDeviceSettings" type:"structure"`
9223
9224	Id *string `locationName:"id" type:"string"`
9225
9226	MacAddress *string `locationName:"macAddress" type:"string"`
9227
9228	Name *string `locationName:"name" type:"string"`
9229
9230	// The network settings for the input device.
9231	NetworkSettings *InputDeviceNetworkSettings `locationName:"networkSettings" type:"structure"`
9232
9233	SerialNumber *string `locationName:"serialNumber" type:"string"`
9234
9235	// The type of the input device. For an AWS Elemental Link device that outputs
9236	// resolutions up to 1080, choose "HD".
9237	Type *string `locationName:"type" type:"string" enum:"InputDeviceType"`
9238}
9239
9240// String returns the string representation
9241func (s DescribeInputDeviceOutput) String() string {
9242	return awsutil.Prettify(s)
9243}
9244
9245// GoString returns the string representation
9246func (s DescribeInputDeviceOutput) GoString() string {
9247	return s.String()
9248}
9249
9250// SetArn sets the Arn field's value.
9251func (s *DescribeInputDeviceOutput) SetArn(v string) *DescribeInputDeviceOutput {
9252	s.Arn = &v
9253	return s
9254}
9255
9256// SetConnectionState sets the ConnectionState field's value.
9257func (s *DescribeInputDeviceOutput) SetConnectionState(v string) *DescribeInputDeviceOutput {
9258	s.ConnectionState = &v
9259	return s
9260}
9261
9262// SetDeviceSettingsSyncState sets the DeviceSettingsSyncState field's value.
9263func (s *DescribeInputDeviceOutput) SetDeviceSettingsSyncState(v string) *DescribeInputDeviceOutput {
9264	s.DeviceSettingsSyncState = &v
9265	return s
9266}
9267
9268// SetHdDeviceSettings sets the HdDeviceSettings field's value.
9269func (s *DescribeInputDeviceOutput) SetHdDeviceSettings(v *InputDeviceHdSettings) *DescribeInputDeviceOutput {
9270	s.HdDeviceSettings = v
9271	return s
9272}
9273
9274// SetId sets the Id field's value.
9275func (s *DescribeInputDeviceOutput) SetId(v string) *DescribeInputDeviceOutput {
9276	s.Id = &v
9277	return s
9278}
9279
9280// SetMacAddress sets the MacAddress field's value.
9281func (s *DescribeInputDeviceOutput) SetMacAddress(v string) *DescribeInputDeviceOutput {
9282	s.MacAddress = &v
9283	return s
9284}
9285
9286// SetName sets the Name field's value.
9287func (s *DescribeInputDeviceOutput) SetName(v string) *DescribeInputDeviceOutput {
9288	s.Name = &v
9289	return s
9290}
9291
9292// SetNetworkSettings sets the NetworkSettings field's value.
9293func (s *DescribeInputDeviceOutput) SetNetworkSettings(v *InputDeviceNetworkSettings) *DescribeInputDeviceOutput {
9294	s.NetworkSettings = v
9295	return s
9296}
9297
9298// SetSerialNumber sets the SerialNumber field's value.
9299func (s *DescribeInputDeviceOutput) SetSerialNumber(v string) *DescribeInputDeviceOutput {
9300	s.SerialNumber = &v
9301	return s
9302}
9303
9304// SetType sets the Type field's value.
9305func (s *DescribeInputDeviceOutput) SetType(v string) *DescribeInputDeviceOutput {
9306	s.Type = &v
9307	return s
9308}
9309
9310type DescribeInputInput struct {
9311	_ struct{} `type:"structure"`
9312
9313	// InputId is a required field
9314	InputId *string `location:"uri" locationName:"inputId" type:"string" required:"true"`
9315}
9316
9317// String returns the string representation
9318func (s DescribeInputInput) String() string {
9319	return awsutil.Prettify(s)
9320}
9321
9322// GoString returns the string representation
9323func (s DescribeInputInput) GoString() string {
9324	return s.String()
9325}
9326
9327// Validate inspects the fields of the type to determine if they are valid.
9328func (s *DescribeInputInput) Validate() error {
9329	invalidParams := request.ErrInvalidParams{Context: "DescribeInputInput"}
9330	if s.InputId == nil {
9331		invalidParams.Add(request.NewErrParamRequired("InputId"))
9332	}
9333	if s.InputId != nil && len(*s.InputId) < 1 {
9334		invalidParams.Add(request.NewErrParamMinLen("InputId", 1))
9335	}
9336
9337	if invalidParams.Len() > 0 {
9338		return invalidParams
9339	}
9340	return nil
9341}
9342
9343// SetInputId sets the InputId field's value.
9344func (s *DescribeInputInput) SetInputId(v string) *DescribeInputInput {
9345	s.InputId = &v
9346	return s
9347}
9348
9349type DescribeInputOutput struct {
9350	_ struct{} `type:"structure"`
9351
9352	Arn *string `locationName:"arn" type:"string"`
9353
9354	AttachedChannels []*string `locationName:"attachedChannels" type:"list"`
9355
9356	Destinations []*InputDestination `locationName:"destinations" type:"list"`
9357
9358	Id *string `locationName:"id" type:"string"`
9359
9360	// A standard input has two sources and a single pipeline input only has one.
9361	InputClass *string `locationName:"inputClass" type:"string" enum:"InputClass"`
9362
9363	InputDevices []*InputDeviceSettings `locationName:"inputDevices" type:"list"`
9364
9365	// There are two types of input sources, static and dynamic. If an input source
9366	// is dynamic you canchange the source url of the input dynamically using an
9367	// input switch action. However, the only input typeto support a dynamic url
9368	// at this time is MP4_FILE. By default all input sources are static.
9369	InputSourceType *string `locationName:"inputSourceType" type:"string" enum:"InputSourceType"`
9370
9371	MediaConnectFlows []*MediaConnectFlow `locationName:"mediaConnectFlows" type:"list"`
9372
9373	Name *string `locationName:"name" type:"string"`
9374
9375	RoleArn *string `locationName:"roleArn" type:"string"`
9376
9377	SecurityGroups []*string `locationName:"securityGroups" type:"list"`
9378
9379	Sources []*InputSource `locationName:"sources" type:"list"`
9380
9381	State *string `locationName:"state" type:"string" enum:"InputState"`
9382
9383	Tags map[string]*string `locationName:"tags" type:"map"`
9384
9385	Type *string `locationName:"type" type:"string" enum:"InputType"`
9386}
9387
9388// String returns the string representation
9389func (s DescribeInputOutput) String() string {
9390	return awsutil.Prettify(s)
9391}
9392
9393// GoString returns the string representation
9394func (s DescribeInputOutput) GoString() string {
9395	return s.String()
9396}
9397
9398// SetArn sets the Arn field's value.
9399func (s *DescribeInputOutput) SetArn(v string) *DescribeInputOutput {
9400	s.Arn = &v
9401	return s
9402}
9403
9404// SetAttachedChannels sets the AttachedChannels field's value.
9405func (s *DescribeInputOutput) SetAttachedChannels(v []*string) *DescribeInputOutput {
9406	s.AttachedChannels = v
9407	return s
9408}
9409
9410// SetDestinations sets the Destinations field's value.
9411func (s *DescribeInputOutput) SetDestinations(v []*InputDestination) *DescribeInputOutput {
9412	s.Destinations = v
9413	return s
9414}
9415
9416// SetId sets the Id field's value.
9417func (s *DescribeInputOutput) SetId(v string) *DescribeInputOutput {
9418	s.Id = &v
9419	return s
9420}
9421
9422// SetInputClass sets the InputClass field's value.
9423func (s *DescribeInputOutput) SetInputClass(v string) *DescribeInputOutput {
9424	s.InputClass = &v
9425	return s
9426}
9427
9428// SetInputDevices sets the InputDevices field's value.
9429func (s *DescribeInputOutput) SetInputDevices(v []*InputDeviceSettings) *DescribeInputOutput {
9430	s.InputDevices = v
9431	return s
9432}
9433
9434// SetInputSourceType sets the InputSourceType field's value.
9435func (s *DescribeInputOutput) SetInputSourceType(v string) *DescribeInputOutput {
9436	s.InputSourceType = &v
9437	return s
9438}
9439
9440// SetMediaConnectFlows sets the MediaConnectFlows field's value.
9441func (s *DescribeInputOutput) SetMediaConnectFlows(v []*MediaConnectFlow) *DescribeInputOutput {
9442	s.MediaConnectFlows = v
9443	return s
9444}
9445
9446// SetName sets the Name field's value.
9447func (s *DescribeInputOutput) SetName(v string) *DescribeInputOutput {
9448	s.Name = &v
9449	return s
9450}
9451
9452// SetRoleArn sets the RoleArn field's value.
9453func (s *DescribeInputOutput) SetRoleArn(v string) *DescribeInputOutput {
9454	s.RoleArn = &v
9455	return s
9456}
9457
9458// SetSecurityGroups sets the SecurityGroups field's value.
9459func (s *DescribeInputOutput) SetSecurityGroups(v []*string) *DescribeInputOutput {
9460	s.SecurityGroups = v
9461	return s
9462}
9463
9464// SetSources sets the Sources field's value.
9465func (s *DescribeInputOutput) SetSources(v []*InputSource) *DescribeInputOutput {
9466	s.Sources = v
9467	return s
9468}
9469
9470// SetState sets the State field's value.
9471func (s *DescribeInputOutput) SetState(v string) *DescribeInputOutput {
9472	s.State = &v
9473	return s
9474}
9475
9476// SetTags sets the Tags field's value.
9477func (s *DescribeInputOutput) SetTags(v map[string]*string) *DescribeInputOutput {
9478	s.Tags = v
9479	return s
9480}
9481
9482// SetType sets the Type field's value.
9483func (s *DescribeInputOutput) SetType(v string) *DescribeInputOutput {
9484	s.Type = &v
9485	return s
9486}
9487
9488type DescribeInputSecurityGroupInput struct {
9489	_ struct{} `type:"structure"`
9490
9491	// InputSecurityGroupId is a required field
9492	InputSecurityGroupId *string `location:"uri" locationName:"inputSecurityGroupId" type:"string" required:"true"`
9493}
9494
9495// String returns the string representation
9496func (s DescribeInputSecurityGroupInput) String() string {
9497	return awsutil.Prettify(s)
9498}
9499
9500// GoString returns the string representation
9501func (s DescribeInputSecurityGroupInput) GoString() string {
9502	return s.String()
9503}
9504
9505// Validate inspects the fields of the type to determine if they are valid.
9506func (s *DescribeInputSecurityGroupInput) Validate() error {
9507	invalidParams := request.ErrInvalidParams{Context: "DescribeInputSecurityGroupInput"}
9508	if s.InputSecurityGroupId == nil {
9509		invalidParams.Add(request.NewErrParamRequired("InputSecurityGroupId"))
9510	}
9511	if s.InputSecurityGroupId != nil && len(*s.InputSecurityGroupId) < 1 {
9512		invalidParams.Add(request.NewErrParamMinLen("InputSecurityGroupId", 1))
9513	}
9514
9515	if invalidParams.Len() > 0 {
9516		return invalidParams
9517	}
9518	return nil
9519}
9520
9521// SetInputSecurityGroupId sets the InputSecurityGroupId field's value.
9522func (s *DescribeInputSecurityGroupInput) SetInputSecurityGroupId(v string) *DescribeInputSecurityGroupInput {
9523	s.InputSecurityGroupId = &v
9524	return s
9525}
9526
9527type DescribeInputSecurityGroupOutput struct {
9528	_ struct{} `type:"structure"`
9529
9530	Arn *string `locationName:"arn" type:"string"`
9531
9532	Id *string `locationName:"id" type:"string"`
9533
9534	Inputs []*string `locationName:"inputs" type:"list"`
9535
9536	State *string `locationName:"state" type:"string" enum:"InputSecurityGroupState"`
9537
9538	Tags map[string]*string `locationName:"tags" type:"map"`
9539
9540	WhitelistRules []*InputWhitelistRule `locationName:"whitelistRules" type:"list"`
9541}
9542
9543// String returns the string representation
9544func (s DescribeInputSecurityGroupOutput) String() string {
9545	return awsutil.Prettify(s)
9546}
9547
9548// GoString returns the string representation
9549func (s DescribeInputSecurityGroupOutput) GoString() string {
9550	return s.String()
9551}
9552
9553// SetArn sets the Arn field's value.
9554func (s *DescribeInputSecurityGroupOutput) SetArn(v string) *DescribeInputSecurityGroupOutput {
9555	s.Arn = &v
9556	return s
9557}
9558
9559// SetId sets the Id field's value.
9560func (s *DescribeInputSecurityGroupOutput) SetId(v string) *DescribeInputSecurityGroupOutput {
9561	s.Id = &v
9562	return s
9563}
9564
9565// SetInputs sets the Inputs field's value.
9566func (s *DescribeInputSecurityGroupOutput) SetInputs(v []*string) *DescribeInputSecurityGroupOutput {
9567	s.Inputs = v
9568	return s
9569}
9570
9571// SetState sets the State field's value.
9572func (s *DescribeInputSecurityGroupOutput) SetState(v string) *DescribeInputSecurityGroupOutput {
9573	s.State = &v
9574	return s
9575}
9576
9577// SetTags sets the Tags field's value.
9578func (s *DescribeInputSecurityGroupOutput) SetTags(v map[string]*string) *DescribeInputSecurityGroupOutput {
9579	s.Tags = v
9580	return s
9581}
9582
9583// SetWhitelistRules sets the WhitelistRules field's value.
9584func (s *DescribeInputSecurityGroupOutput) SetWhitelistRules(v []*InputWhitelistRule) *DescribeInputSecurityGroupOutput {
9585	s.WhitelistRules = v
9586	return s
9587}
9588
9589type DescribeMultiplexInput struct {
9590	_ struct{} `type:"structure"`
9591
9592	// MultiplexId is a required field
9593	MultiplexId *string `location:"uri" locationName:"multiplexId" type:"string" required:"true"`
9594}
9595
9596// String returns the string representation
9597func (s DescribeMultiplexInput) String() string {
9598	return awsutil.Prettify(s)
9599}
9600
9601// GoString returns the string representation
9602func (s DescribeMultiplexInput) GoString() string {
9603	return s.String()
9604}
9605
9606// Validate inspects the fields of the type to determine if they are valid.
9607func (s *DescribeMultiplexInput) Validate() error {
9608	invalidParams := request.ErrInvalidParams{Context: "DescribeMultiplexInput"}
9609	if s.MultiplexId == nil {
9610		invalidParams.Add(request.NewErrParamRequired("MultiplexId"))
9611	}
9612	if s.MultiplexId != nil && len(*s.MultiplexId) < 1 {
9613		invalidParams.Add(request.NewErrParamMinLen("MultiplexId", 1))
9614	}
9615
9616	if invalidParams.Len() > 0 {
9617		return invalidParams
9618	}
9619	return nil
9620}
9621
9622// SetMultiplexId sets the MultiplexId field's value.
9623func (s *DescribeMultiplexInput) SetMultiplexId(v string) *DescribeMultiplexInput {
9624	s.MultiplexId = &v
9625	return s
9626}
9627
9628type DescribeMultiplexOutput struct {
9629	_ struct{} `type:"structure"`
9630
9631	Arn *string `locationName:"arn" type:"string"`
9632
9633	AvailabilityZones []*string `locationName:"availabilityZones" type:"list"`
9634
9635	Destinations []*MultiplexOutputDestination `locationName:"destinations" type:"list"`
9636
9637	Id *string `locationName:"id" type:"string"`
9638
9639	// Contains configuration for a Multiplex event
9640	MultiplexSettings *MultiplexSettings `locationName:"multiplexSettings" type:"structure"`
9641
9642	Name *string `locationName:"name" type:"string"`
9643
9644	PipelinesRunningCount *int64 `locationName:"pipelinesRunningCount" type:"integer"`
9645
9646	ProgramCount *int64 `locationName:"programCount" type:"integer"`
9647
9648	// The current state of the multiplex.
9649	State *string `locationName:"state" type:"string" enum:"MultiplexState"`
9650
9651	Tags map[string]*string `locationName:"tags" type:"map"`
9652}
9653
9654// String returns the string representation
9655func (s DescribeMultiplexOutput) String() string {
9656	return awsutil.Prettify(s)
9657}
9658
9659// GoString returns the string representation
9660func (s DescribeMultiplexOutput) GoString() string {
9661	return s.String()
9662}
9663
9664// SetArn sets the Arn field's value.
9665func (s *DescribeMultiplexOutput) SetArn(v string) *DescribeMultiplexOutput {
9666	s.Arn = &v
9667	return s
9668}
9669
9670// SetAvailabilityZones sets the AvailabilityZones field's value.
9671func (s *DescribeMultiplexOutput) SetAvailabilityZones(v []*string) *DescribeMultiplexOutput {
9672	s.AvailabilityZones = v
9673	return s
9674}
9675
9676// SetDestinations sets the Destinations field's value.
9677func (s *DescribeMultiplexOutput) SetDestinations(v []*MultiplexOutputDestination) *DescribeMultiplexOutput {
9678	s.Destinations = v
9679	return s
9680}
9681
9682// SetId sets the Id field's value.
9683func (s *DescribeMultiplexOutput) SetId(v string) *DescribeMultiplexOutput {
9684	s.Id = &v
9685	return s
9686}
9687
9688// SetMultiplexSettings sets the MultiplexSettings field's value.
9689func (s *DescribeMultiplexOutput) SetMultiplexSettings(v *MultiplexSettings) *DescribeMultiplexOutput {
9690	s.MultiplexSettings = v
9691	return s
9692}
9693
9694// SetName sets the Name field's value.
9695func (s *DescribeMultiplexOutput) SetName(v string) *DescribeMultiplexOutput {
9696	s.Name = &v
9697	return s
9698}
9699
9700// SetPipelinesRunningCount sets the PipelinesRunningCount field's value.
9701func (s *DescribeMultiplexOutput) SetPipelinesRunningCount(v int64) *DescribeMultiplexOutput {
9702	s.PipelinesRunningCount = &v
9703	return s
9704}
9705
9706// SetProgramCount sets the ProgramCount field's value.
9707func (s *DescribeMultiplexOutput) SetProgramCount(v int64) *DescribeMultiplexOutput {
9708	s.ProgramCount = &v
9709	return s
9710}
9711
9712// SetState sets the State field's value.
9713func (s *DescribeMultiplexOutput) SetState(v string) *DescribeMultiplexOutput {
9714	s.State = &v
9715	return s
9716}
9717
9718// SetTags sets the Tags field's value.
9719func (s *DescribeMultiplexOutput) SetTags(v map[string]*string) *DescribeMultiplexOutput {
9720	s.Tags = v
9721	return s
9722}
9723
9724type DescribeMultiplexProgramInput struct {
9725	_ struct{} `type:"structure"`
9726
9727	// MultiplexId is a required field
9728	MultiplexId *string `location:"uri" locationName:"multiplexId" type:"string" required:"true"`
9729
9730	// ProgramName is a required field
9731	ProgramName *string `location:"uri" locationName:"programName" type:"string" required:"true"`
9732}
9733
9734// String returns the string representation
9735func (s DescribeMultiplexProgramInput) String() string {
9736	return awsutil.Prettify(s)
9737}
9738
9739// GoString returns the string representation
9740func (s DescribeMultiplexProgramInput) GoString() string {
9741	return s.String()
9742}
9743
9744// Validate inspects the fields of the type to determine if they are valid.
9745func (s *DescribeMultiplexProgramInput) Validate() error {
9746	invalidParams := request.ErrInvalidParams{Context: "DescribeMultiplexProgramInput"}
9747	if s.MultiplexId == nil {
9748		invalidParams.Add(request.NewErrParamRequired("MultiplexId"))
9749	}
9750	if s.MultiplexId != nil && len(*s.MultiplexId) < 1 {
9751		invalidParams.Add(request.NewErrParamMinLen("MultiplexId", 1))
9752	}
9753	if s.ProgramName == nil {
9754		invalidParams.Add(request.NewErrParamRequired("ProgramName"))
9755	}
9756	if s.ProgramName != nil && len(*s.ProgramName) < 1 {
9757		invalidParams.Add(request.NewErrParamMinLen("ProgramName", 1))
9758	}
9759
9760	if invalidParams.Len() > 0 {
9761		return invalidParams
9762	}
9763	return nil
9764}
9765
9766// SetMultiplexId sets the MultiplexId field's value.
9767func (s *DescribeMultiplexProgramInput) SetMultiplexId(v string) *DescribeMultiplexProgramInput {
9768	s.MultiplexId = &v
9769	return s
9770}
9771
9772// SetProgramName sets the ProgramName field's value.
9773func (s *DescribeMultiplexProgramInput) SetProgramName(v string) *DescribeMultiplexProgramInput {
9774	s.ProgramName = &v
9775	return s
9776}
9777
9778type DescribeMultiplexProgramOutput struct {
9779	_ struct{} `type:"structure"`
9780
9781	ChannelId *string `locationName:"channelId" type:"string"`
9782
9783	// Multiplex Program settings configuration.
9784	MultiplexProgramSettings *MultiplexProgramSettings `locationName:"multiplexProgramSettings" type:"structure"`
9785
9786	// Packet identifiers map for a given Multiplex program.
9787	PacketIdentifiersMap *MultiplexProgramPacketIdentifiersMap `locationName:"packetIdentifiersMap" type:"structure"`
9788
9789	ProgramName *string `locationName:"programName" type:"string"`
9790}
9791
9792// String returns the string representation
9793func (s DescribeMultiplexProgramOutput) String() string {
9794	return awsutil.Prettify(s)
9795}
9796
9797// GoString returns the string representation
9798func (s DescribeMultiplexProgramOutput) GoString() string {
9799	return s.String()
9800}
9801
9802// SetChannelId sets the ChannelId field's value.
9803func (s *DescribeMultiplexProgramOutput) SetChannelId(v string) *DescribeMultiplexProgramOutput {
9804	s.ChannelId = &v
9805	return s
9806}
9807
9808// SetMultiplexProgramSettings sets the MultiplexProgramSettings field's value.
9809func (s *DescribeMultiplexProgramOutput) SetMultiplexProgramSettings(v *MultiplexProgramSettings) *DescribeMultiplexProgramOutput {
9810	s.MultiplexProgramSettings = v
9811	return s
9812}
9813
9814// SetPacketIdentifiersMap sets the PacketIdentifiersMap field's value.
9815func (s *DescribeMultiplexProgramOutput) SetPacketIdentifiersMap(v *MultiplexProgramPacketIdentifiersMap) *DescribeMultiplexProgramOutput {
9816	s.PacketIdentifiersMap = v
9817	return s
9818}
9819
9820// SetProgramName sets the ProgramName field's value.
9821func (s *DescribeMultiplexProgramOutput) SetProgramName(v string) *DescribeMultiplexProgramOutput {
9822	s.ProgramName = &v
9823	return s
9824}
9825
9826type DescribeOfferingInput struct {
9827	_ struct{} `type:"structure"`
9828
9829	// OfferingId is a required field
9830	OfferingId *string `location:"uri" locationName:"offeringId" type:"string" required:"true"`
9831}
9832
9833// String returns the string representation
9834func (s DescribeOfferingInput) String() string {
9835	return awsutil.Prettify(s)
9836}
9837
9838// GoString returns the string representation
9839func (s DescribeOfferingInput) GoString() string {
9840	return s.String()
9841}
9842
9843// Validate inspects the fields of the type to determine if they are valid.
9844func (s *DescribeOfferingInput) Validate() error {
9845	invalidParams := request.ErrInvalidParams{Context: "DescribeOfferingInput"}
9846	if s.OfferingId == nil {
9847		invalidParams.Add(request.NewErrParamRequired("OfferingId"))
9848	}
9849	if s.OfferingId != nil && len(*s.OfferingId) < 1 {
9850		invalidParams.Add(request.NewErrParamMinLen("OfferingId", 1))
9851	}
9852
9853	if invalidParams.Len() > 0 {
9854		return invalidParams
9855	}
9856	return nil
9857}
9858
9859// SetOfferingId sets the OfferingId field's value.
9860func (s *DescribeOfferingInput) SetOfferingId(v string) *DescribeOfferingInput {
9861	s.OfferingId = &v
9862	return s
9863}
9864
9865type DescribeOfferingOutput struct {
9866	_ struct{} `type:"structure"`
9867
9868	Arn *string `locationName:"arn" type:"string"`
9869
9870	CurrencyCode *string `locationName:"currencyCode" type:"string"`
9871
9872	Duration *int64 `locationName:"duration" type:"integer"`
9873
9874	// Units for duration, e.g. 'MONTHS'
9875	DurationUnits *string `locationName:"durationUnits" type:"string" enum:"OfferingDurationUnits"`
9876
9877	FixedPrice *float64 `locationName:"fixedPrice" type:"double"`
9878
9879	OfferingDescription *string `locationName:"offeringDescription" type:"string"`
9880
9881	OfferingId *string `locationName:"offeringId" type:"string"`
9882
9883	// Offering type, e.g. 'NO_UPFRONT'
9884	OfferingType *string `locationName:"offeringType" type:"string" enum:"OfferingType"`
9885
9886	Region *string `locationName:"region" type:"string"`
9887
9888	// Resource configuration (codec, resolution, bitrate, ...)
9889	ResourceSpecification *ReservationResourceSpecification `locationName:"resourceSpecification" type:"structure"`
9890
9891	UsagePrice *float64 `locationName:"usagePrice" type:"double"`
9892}
9893
9894// String returns the string representation
9895func (s DescribeOfferingOutput) String() string {
9896	return awsutil.Prettify(s)
9897}
9898
9899// GoString returns the string representation
9900func (s DescribeOfferingOutput) GoString() string {
9901	return s.String()
9902}
9903
9904// SetArn sets the Arn field's value.
9905func (s *DescribeOfferingOutput) SetArn(v string) *DescribeOfferingOutput {
9906	s.Arn = &v
9907	return s
9908}
9909
9910// SetCurrencyCode sets the CurrencyCode field's value.
9911func (s *DescribeOfferingOutput) SetCurrencyCode(v string) *DescribeOfferingOutput {
9912	s.CurrencyCode = &v
9913	return s
9914}
9915
9916// SetDuration sets the Duration field's value.
9917func (s *DescribeOfferingOutput) SetDuration(v int64) *DescribeOfferingOutput {
9918	s.Duration = &v
9919	return s
9920}
9921
9922// SetDurationUnits sets the DurationUnits field's value.
9923func (s *DescribeOfferingOutput) SetDurationUnits(v string) *DescribeOfferingOutput {
9924	s.DurationUnits = &v
9925	return s
9926}
9927
9928// SetFixedPrice sets the FixedPrice field's value.
9929func (s *DescribeOfferingOutput) SetFixedPrice(v float64) *DescribeOfferingOutput {
9930	s.FixedPrice = &v
9931	return s
9932}
9933
9934// SetOfferingDescription sets the OfferingDescription field's value.
9935func (s *DescribeOfferingOutput) SetOfferingDescription(v string) *DescribeOfferingOutput {
9936	s.OfferingDescription = &v
9937	return s
9938}
9939
9940// SetOfferingId sets the OfferingId field's value.
9941func (s *DescribeOfferingOutput) SetOfferingId(v string) *DescribeOfferingOutput {
9942	s.OfferingId = &v
9943	return s
9944}
9945
9946// SetOfferingType sets the OfferingType field's value.
9947func (s *DescribeOfferingOutput) SetOfferingType(v string) *DescribeOfferingOutput {
9948	s.OfferingType = &v
9949	return s
9950}
9951
9952// SetRegion sets the Region field's value.
9953func (s *DescribeOfferingOutput) SetRegion(v string) *DescribeOfferingOutput {
9954	s.Region = &v
9955	return s
9956}
9957
9958// SetResourceSpecification sets the ResourceSpecification field's value.
9959func (s *DescribeOfferingOutput) SetResourceSpecification(v *ReservationResourceSpecification) *DescribeOfferingOutput {
9960	s.ResourceSpecification = v
9961	return s
9962}
9963
9964// SetUsagePrice sets the UsagePrice field's value.
9965func (s *DescribeOfferingOutput) SetUsagePrice(v float64) *DescribeOfferingOutput {
9966	s.UsagePrice = &v
9967	return s
9968}
9969
9970type DescribeReservationInput struct {
9971	_ struct{} `type:"structure"`
9972
9973	// ReservationId is a required field
9974	ReservationId *string `location:"uri" locationName:"reservationId" type:"string" required:"true"`
9975}
9976
9977// String returns the string representation
9978func (s DescribeReservationInput) String() string {
9979	return awsutil.Prettify(s)
9980}
9981
9982// GoString returns the string representation
9983func (s DescribeReservationInput) GoString() string {
9984	return s.String()
9985}
9986
9987// Validate inspects the fields of the type to determine if they are valid.
9988func (s *DescribeReservationInput) Validate() error {
9989	invalidParams := request.ErrInvalidParams{Context: "DescribeReservationInput"}
9990	if s.ReservationId == nil {
9991		invalidParams.Add(request.NewErrParamRequired("ReservationId"))
9992	}
9993	if s.ReservationId != nil && len(*s.ReservationId) < 1 {
9994		invalidParams.Add(request.NewErrParamMinLen("ReservationId", 1))
9995	}
9996
9997	if invalidParams.Len() > 0 {
9998		return invalidParams
9999	}
10000	return nil
10001}
10002
10003// SetReservationId sets the ReservationId field's value.
10004func (s *DescribeReservationInput) SetReservationId(v string) *DescribeReservationInput {
10005	s.ReservationId = &v
10006	return s
10007}
10008
10009type DescribeReservationOutput struct {
10010	_ struct{} `type:"structure"`
10011
10012	Arn *string `locationName:"arn" type:"string"`
10013
10014	Count *int64 `locationName:"count" type:"integer"`
10015
10016	CurrencyCode *string `locationName:"currencyCode" type:"string"`
10017
10018	Duration *int64 `locationName:"duration" type:"integer"`
10019
10020	// Units for duration, e.g. 'MONTHS'
10021	DurationUnits *string `locationName:"durationUnits" type:"string" enum:"OfferingDurationUnits"`
10022
10023	End *string `locationName:"end" type:"string"`
10024
10025	FixedPrice *float64 `locationName:"fixedPrice" type:"double"`
10026
10027	Name *string `locationName:"name" type:"string"`
10028
10029	OfferingDescription *string `locationName:"offeringDescription" type:"string"`
10030
10031	OfferingId *string `locationName:"offeringId" type:"string"`
10032
10033	// Offering type, e.g. 'NO_UPFRONT'
10034	OfferingType *string `locationName:"offeringType" type:"string" enum:"OfferingType"`
10035
10036	Region *string `locationName:"region" type:"string"`
10037
10038	ReservationId *string `locationName:"reservationId" type:"string"`
10039
10040	// Resource configuration (codec, resolution, bitrate, ...)
10041	ResourceSpecification *ReservationResourceSpecification `locationName:"resourceSpecification" type:"structure"`
10042
10043	Start *string `locationName:"start" type:"string"`
10044
10045	// Current reservation state
10046	State *string `locationName:"state" type:"string" enum:"ReservationState"`
10047
10048	Tags map[string]*string `locationName:"tags" type:"map"`
10049
10050	UsagePrice *float64 `locationName:"usagePrice" type:"double"`
10051}
10052
10053// String returns the string representation
10054func (s DescribeReservationOutput) String() string {
10055	return awsutil.Prettify(s)
10056}
10057
10058// GoString returns the string representation
10059func (s DescribeReservationOutput) GoString() string {
10060	return s.String()
10061}
10062
10063// SetArn sets the Arn field's value.
10064func (s *DescribeReservationOutput) SetArn(v string) *DescribeReservationOutput {
10065	s.Arn = &v
10066	return s
10067}
10068
10069// SetCount sets the Count field's value.
10070func (s *DescribeReservationOutput) SetCount(v int64) *DescribeReservationOutput {
10071	s.Count = &v
10072	return s
10073}
10074
10075// SetCurrencyCode sets the CurrencyCode field's value.
10076func (s *DescribeReservationOutput) SetCurrencyCode(v string) *DescribeReservationOutput {
10077	s.CurrencyCode = &v
10078	return s
10079}
10080
10081// SetDuration sets the Duration field's value.
10082func (s *DescribeReservationOutput) SetDuration(v int64) *DescribeReservationOutput {
10083	s.Duration = &v
10084	return s
10085}
10086
10087// SetDurationUnits sets the DurationUnits field's value.
10088func (s *DescribeReservationOutput) SetDurationUnits(v string) *DescribeReservationOutput {
10089	s.DurationUnits = &v
10090	return s
10091}
10092
10093// SetEnd sets the End field's value.
10094func (s *DescribeReservationOutput) SetEnd(v string) *DescribeReservationOutput {
10095	s.End = &v
10096	return s
10097}
10098
10099// SetFixedPrice sets the FixedPrice field's value.
10100func (s *DescribeReservationOutput) SetFixedPrice(v float64) *DescribeReservationOutput {
10101	s.FixedPrice = &v
10102	return s
10103}
10104
10105// SetName sets the Name field's value.
10106func (s *DescribeReservationOutput) SetName(v string) *DescribeReservationOutput {
10107	s.Name = &v
10108	return s
10109}
10110
10111// SetOfferingDescription sets the OfferingDescription field's value.
10112func (s *DescribeReservationOutput) SetOfferingDescription(v string) *DescribeReservationOutput {
10113	s.OfferingDescription = &v
10114	return s
10115}
10116
10117// SetOfferingId sets the OfferingId field's value.
10118func (s *DescribeReservationOutput) SetOfferingId(v string) *DescribeReservationOutput {
10119	s.OfferingId = &v
10120	return s
10121}
10122
10123// SetOfferingType sets the OfferingType field's value.
10124func (s *DescribeReservationOutput) SetOfferingType(v string) *DescribeReservationOutput {
10125	s.OfferingType = &v
10126	return s
10127}
10128
10129// SetRegion sets the Region field's value.
10130func (s *DescribeReservationOutput) SetRegion(v string) *DescribeReservationOutput {
10131	s.Region = &v
10132	return s
10133}
10134
10135// SetReservationId sets the ReservationId field's value.
10136func (s *DescribeReservationOutput) SetReservationId(v string) *DescribeReservationOutput {
10137	s.ReservationId = &v
10138	return s
10139}
10140
10141// SetResourceSpecification sets the ResourceSpecification field's value.
10142func (s *DescribeReservationOutput) SetResourceSpecification(v *ReservationResourceSpecification) *DescribeReservationOutput {
10143	s.ResourceSpecification = v
10144	return s
10145}
10146
10147// SetStart sets the Start field's value.
10148func (s *DescribeReservationOutput) SetStart(v string) *DescribeReservationOutput {
10149	s.Start = &v
10150	return s
10151}
10152
10153// SetState sets the State field's value.
10154func (s *DescribeReservationOutput) SetState(v string) *DescribeReservationOutput {
10155	s.State = &v
10156	return s
10157}
10158
10159// SetTags sets the Tags field's value.
10160func (s *DescribeReservationOutput) SetTags(v map[string]*string) *DescribeReservationOutput {
10161	s.Tags = v
10162	return s
10163}
10164
10165// SetUsagePrice sets the UsagePrice field's value.
10166func (s *DescribeReservationOutput) SetUsagePrice(v float64) *DescribeReservationOutput {
10167	s.UsagePrice = &v
10168	return s
10169}
10170
10171type DescribeScheduleInput struct {
10172	_ struct{} `type:"structure"`
10173
10174	// ChannelId is a required field
10175	ChannelId *string `location:"uri" locationName:"channelId" type:"string" required:"true"`
10176
10177	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
10178
10179	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
10180}
10181
10182// String returns the string representation
10183func (s DescribeScheduleInput) String() string {
10184	return awsutil.Prettify(s)
10185}
10186
10187// GoString returns the string representation
10188func (s DescribeScheduleInput) GoString() string {
10189	return s.String()
10190}
10191
10192// Validate inspects the fields of the type to determine if they are valid.
10193func (s *DescribeScheduleInput) Validate() error {
10194	invalidParams := request.ErrInvalidParams{Context: "DescribeScheduleInput"}
10195	if s.ChannelId == nil {
10196		invalidParams.Add(request.NewErrParamRequired("ChannelId"))
10197	}
10198	if s.ChannelId != nil && len(*s.ChannelId) < 1 {
10199		invalidParams.Add(request.NewErrParamMinLen("ChannelId", 1))
10200	}
10201	if s.MaxResults != nil && *s.MaxResults < 1 {
10202		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
10203	}
10204
10205	if invalidParams.Len() > 0 {
10206		return invalidParams
10207	}
10208	return nil
10209}
10210
10211// SetChannelId sets the ChannelId field's value.
10212func (s *DescribeScheduleInput) SetChannelId(v string) *DescribeScheduleInput {
10213	s.ChannelId = &v
10214	return s
10215}
10216
10217// SetMaxResults sets the MaxResults field's value.
10218func (s *DescribeScheduleInput) SetMaxResults(v int64) *DescribeScheduleInput {
10219	s.MaxResults = &v
10220	return s
10221}
10222
10223// SetNextToken sets the NextToken field's value.
10224func (s *DescribeScheduleInput) SetNextToken(v string) *DescribeScheduleInput {
10225	s.NextToken = &v
10226	return s
10227}
10228
10229type DescribeScheduleOutput struct {
10230	_ struct{} `type:"structure"`
10231
10232	NextToken *string `locationName:"nextToken" type:"string"`
10233
10234	ScheduleActions []*ScheduleAction `locationName:"scheduleActions" type:"list"`
10235}
10236
10237// String returns the string representation
10238func (s DescribeScheduleOutput) String() string {
10239	return awsutil.Prettify(s)
10240}
10241
10242// GoString returns the string representation
10243func (s DescribeScheduleOutput) GoString() string {
10244	return s.String()
10245}
10246
10247// SetNextToken sets the NextToken field's value.
10248func (s *DescribeScheduleOutput) SetNextToken(v string) *DescribeScheduleOutput {
10249	s.NextToken = &v
10250	return s
10251}
10252
10253// SetScheduleActions sets the ScheduleActions field's value.
10254func (s *DescribeScheduleOutput) SetScheduleActions(v []*ScheduleAction) *DescribeScheduleOutput {
10255	s.ScheduleActions = v
10256	return s
10257}
10258
10259// DVB Network Information Table (NIT)
10260type DvbNitSettings struct {
10261	_ struct{} `type:"structure"`
10262
10263	// The numeric value placed in the Network Information Table (NIT).
10264	//
10265	// NetworkId is a required field
10266	NetworkId *int64 `locationName:"networkId" type:"integer" required:"true"`
10267
10268	// The network name text placed in the networkNameDescriptor inside the Network
10269	// Information Table. Maximum length is 256 characters.
10270	//
10271	// NetworkName is a required field
10272	NetworkName *string `locationName:"networkName" min:"1" type:"string" required:"true"`
10273
10274	// The number of milliseconds between instances of this table in the output
10275	// transport stream.
10276	RepInterval *int64 `locationName:"repInterval" min:"25" type:"integer"`
10277}
10278
10279// String returns the string representation
10280func (s DvbNitSettings) String() string {
10281	return awsutil.Prettify(s)
10282}
10283
10284// GoString returns the string representation
10285func (s DvbNitSettings) GoString() string {
10286	return s.String()
10287}
10288
10289// Validate inspects the fields of the type to determine if they are valid.
10290func (s *DvbNitSettings) Validate() error {
10291	invalidParams := request.ErrInvalidParams{Context: "DvbNitSettings"}
10292	if s.NetworkId == nil {
10293		invalidParams.Add(request.NewErrParamRequired("NetworkId"))
10294	}
10295	if s.NetworkName == nil {
10296		invalidParams.Add(request.NewErrParamRequired("NetworkName"))
10297	}
10298	if s.NetworkName != nil && len(*s.NetworkName) < 1 {
10299		invalidParams.Add(request.NewErrParamMinLen("NetworkName", 1))
10300	}
10301	if s.RepInterval != nil && *s.RepInterval < 25 {
10302		invalidParams.Add(request.NewErrParamMinValue("RepInterval", 25))
10303	}
10304
10305	if invalidParams.Len() > 0 {
10306		return invalidParams
10307	}
10308	return nil
10309}
10310
10311// SetNetworkId sets the NetworkId field's value.
10312func (s *DvbNitSettings) SetNetworkId(v int64) *DvbNitSettings {
10313	s.NetworkId = &v
10314	return s
10315}
10316
10317// SetNetworkName sets the NetworkName field's value.
10318func (s *DvbNitSettings) SetNetworkName(v string) *DvbNitSettings {
10319	s.NetworkName = &v
10320	return s
10321}
10322
10323// SetRepInterval sets the RepInterval field's value.
10324func (s *DvbNitSettings) SetRepInterval(v int64) *DvbNitSettings {
10325	s.RepInterval = &v
10326	return s
10327}
10328
10329// DVB Service Description Table (SDT)
10330type DvbSdtSettings struct {
10331	_ struct{} `type:"structure"`
10332
10333	// Selects method of inserting SDT information into output stream. The sdtFollow
10334	// setting copies SDT information from input stream to output stream. The sdtFollowIfPresent
10335	// setting copies SDT information from input stream to output stream if SDT
10336	// information is present in the input, otherwise it will fall back on the user-defined
10337	// values. The sdtManual setting means user will enter the SDT information.
10338	// The sdtNone setting means output stream will not contain SDT information.
10339	OutputSdt *string `locationName:"outputSdt" type:"string" enum:"DvbSdtOutputSdt"`
10340
10341	// The number of milliseconds between instances of this table in the output
10342	// transport stream.
10343	RepInterval *int64 `locationName:"repInterval" min:"25" type:"integer"`
10344
10345	// The service name placed in the serviceDescriptor in the Service Description
10346	// Table. Maximum length is 256 characters.
10347	ServiceName *string `locationName:"serviceName" min:"1" type:"string"`
10348
10349	// The service provider name placed in the serviceDescriptor in the Service
10350	// Description Table. Maximum length is 256 characters.
10351	ServiceProviderName *string `locationName:"serviceProviderName" min:"1" type:"string"`
10352}
10353
10354// String returns the string representation
10355func (s DvbSdtSettings) String() string {
10356	return awsutil.Prettify(s)
10357}
10358
10359// GoString returns the string representation
10360func (s DvbSdtSettings) GoString() string {
10361	return s.String()
10362}
10363
10364// Validate inspects the fields of the type to determine if they are valid.
10365func (s *DvbSdtSettings) Validate() error {
10366	invalidParams := request.ErrInvalidParams{Context: "DvbSdtSettings"}
10367	if s.RepInterval != nil && *s.RepInterval < 25 {
10368		invalidParams.Add(request.NewErrParamMinValue("RepInterval", 25))
10369	}
10370	if s.ServiceName != nil && len(*s.ServiceName) < 1 {
10371		invalidParams.Add(request.NewErrParamMinLen("ServiceName", 1))
10372	}
10373	if s.ServiceProviderName != nil && len(*s.ServiceProviderName) < 1 {
10374		invalidParams.Add(request.NewErrParamMinLen("ServiceProviderName", 1))
10375	}
10376
10377	if invalidParams.Len() > 0 {
10378		return invalidParams
10379	}
10380	return nil
10381}
10382
10383// SetOutputSdt sets the OutputSdt field's value.
10384func (s *DvbSdtSettings) SetOutputSdt(v string) *DvbSdtSettings {
10385	s.OutputSdt = &v
10386	return s
10387}
10388
10389// SetRepInterval sets the RepInterval field's value.
10390func (s *DvbSdtSettings) SetRepInterval(v int64) *DvbSdtSettings {
10391	s.RepInterval = &v
10392	return s
10393}
10394
10395// SetServiceName sets the ServiceName field's value.
10396func (s *DvbSdtSettings) SetServiceName(v string) *DvbSdtSettings {
10397	s.ServiceName = &v
10398	return s
10399}
10400
10401// SetServiceProviderName sets the ServiceProviderName field's value.
10402func (s *DvbSdtSettings) SetServiceProviderName(v string) *DvbSdtSettings {
10403	s.ServiceProviderName = &v
10404	return s
10405}
10406
10407// Dvb Sub Destination Settings
10408type DvbSubDestinationSettings struct {
10409	_ struct{} `type:"structure"`
10410
10411	// If no explicit xPosition or yPosition is provided, setting alignment to centered
10412	// will place the captions at the bottom center of the output. Similarly, setting
10413	// a left alignment will align captions to the bottom left of the output. If
10414	// x and y positions are given in conjunction with the alignment parameter,
10415	// the font will be justified (either left or centered) relative to those coordinates.
10416	// Selecting "smart" justification will left-justify live subtitles and center-justify
10417	// pre-recorded subtitles. This option is not valid for source captions that
10418	// are STL or 608/embedded. These source settings are already pre-defined by
10419	// the caption stream. All burn-in and DVB-Sub font settings must match.
10420	Alignment *string `locationName:"alignment" type:"string" enum:"DvbSubDestinationAlignment"`
10421
10422	// Specifies the color of the rectangle behind the captions. All burn-in and
10423	// DVB-Sub font settings must match.
10424	BackgroundColor *string `locationName:"backgroundColor" type:"string" enum:"DvbSubDestinationBackgroundColor"`
10425
10426	// Specifies the opacity of the background rectangle. 255 is opaque; 0 is transparent.
10427	// Leaving this parameter blank is equivalent to setting it to 0 (transparent).
10428	// All burn-in and DVB-Sub font settings must match.
10429	BackgroundOpacity *int64 `locationName:"backgroundOpacity" type:"integer"`
10430
10431	// External font file used for caption burn-in. File extension must be 'ttf'
10432	// or 'tte'. Although the user can select output fonts for many different types
10433	// of input captions, embedded, STL and teletext sources use a strict grid system.
10434	// Using external fonts with these caption sources could cause unexpected display
10435	// of proportional fonts. All burn-in and DVB-Sub font settings must match.
10436	Font *InputLocation `locationName:"font" type:"structure"`
10437
10438	// Specifies the color of the burned-in captions. This option is not valid for
10439	// source captions that are STL, 608/embedded or teletext. These source settings
10440	// are already pre-defined by the caption stream. All burn-in and DVB-Sub font
10441	// settings must match.
10442	FontColor *string `locationName:"fontColor" type:"string" enum:"DvbSubDestinationFontColor"`
10443
10444	// Specifies the opacity of the burned-in captions. 255 is opaque; 0 is transparent.
10445	// All burn-in and DVB-Sub font settings must match.
10446	FontOpacity *int64 `locationName:"fontOpacity" type:"integer"`
10447
10448	// Font resolution in DPI (dots per inch); default is 96 dpi. All burn-in and
10449	// DVB-Sub font settings must match.
10450	FontResolution *int64 `locationName:"fontResolution" min:"96" type:"integer"`
10451
10452	// When set to auto fontSize will scale depending on the size of the output.
10453	// Giving a positive integer will specify the exact font size in points. All
10454	// burn-in and DVB-Sub font settings must match.
10455	FontSize *string `locationName:"fontSize" type:"string"`
10456
10457	// Specifies font outline color. This option is not valid for source captions
10458	// that are either 608/embedded or teletext. These source settings are already
10459	// pre-defined by the caption stream. All burn-in and DVB-Sub font settings
10460	// must match.
10461	OutlineColor *string `locationName:"outlineColor" type:"string" enum:"DvbSubDestinationOutlineColor"`
10462
10463	// Specifies font outline size in pixels. This option is not valid for source
10464	// captions that are either 608/embedded or teletext. These source settings
10465	// are already pre-defined by the caption stream. All burn-in and DVB-Sub font
10466	// settings must match.
10467	OutlineSize *int64 `locationName:"outlineSize" type:"integer"`
10468
10469	// Specifies the color of the shadow cast by the captions. All burn-in and DVB-Sub
10470	// font settings must match.
10471	ShadowColor *string `locationName:"shadowColor" type:"string" enum:"DvbSubDestinationShadowColor"`
10472
10473	// Specifies the opacity of the shadow. 255 is opaque; 0 is transparent. Leaving
10474	// this parameter blank is equivalent to setting it to 0 (transparent). All
10475	// burn-in and DVB-Sub font settings must match.
10476	ShadowOpacity *int64 `locationName:"shadowOpacity" type:"integer"`
10477
10478	// Specifies the horizontal offset of the shadow relative to the captions in
10479	// pixels. A value of -2 would result in a shadow offset 2 pixels to the left.
10480	// All burn-in and DVB-Sub font settings must match.
10481	ShadowXOffset *int64 `locationName:"shadowXOffset" type:"integer"`
10482
10483	// Specifies the vertical offset of the shadow relative to the captions in pixels.
10484	// A value of -2 would result in a shadow offset 2 pixels above the text. All
10485	// burn-in and DVB-Sub font settings must match.
10486	ShadowYOffset *int64 `locationName:"shadowYOffset" type:"integer"`
10487
10488	// Controls whether a fixed grid size will be used to generate the output subtitles
10489	// bitmap. Only applicable for Teletext inputs and DVB-Sub/Burn-in outputs.
10490	TeletextGridControl *string `locationName:"teletextGridControl" type:"string" enum:"DvbSubDestinationTeletextGridControl"`
10491
10492	// Specifies the horizontal position of the caption relative to the left side
10493	// of the output in pixels. A value of 10 would result in the captions starting
10494	// 10 pixels from the left of the output. If no explicit xPosition is provided,
10495	// the horizontal caption position will be determined by the alignment parameter.
10496	// This option is not valid for source captions that are STL, 608/embedded or
10497	// teletext. These source settings are already pre-defined by the caption stream.
10498	// All burn-in and DVB-Sub font settings must match.
10499	XPosition *int64 `locationName:"xPosition" type:"integer"`
10500
10501	// Specifies the vertical position of the caption relative to the top of the
10502	// output in pixels. A value of 10 would result in the captions starting 10
10503	// pixels from the top of the output. If no explicit yPosition is provided,
10504	// the caption will be positioned towards the bottom of the output. This option
10505	// is not valid for source captions that are STL, 608/embedded or teletext.
10506	// These source settings are already pre-defined by the caption stream. All
10507	// burn-in and DVB-Sub font settings must match.
10508	YPosition *int64 `locationName:"yPosition" type:"integer"`
10509}
10510
10511// String returns the string representation
10512func (s DvbSubDestinationSettings) String() string {
10513	return awsutil.Prettify(s)
10514}
10515
10516// GoString returns the string representation
10517func (s DvbSubDestinationSettings) GoString() string {
10518	return s.String()
10519}
10520
10521// Validate inspects the fields of the type to determine if they are valid.
10522func (s *DvbSubDestinationSettings) Validate() error {
10523	invalidParams := request.ErrInvalidParams{Context: "DvbSubDestinationSettings"}
10524	if s.FontResolution != nil && *s.FontResolution < 96 {
10525		invalidParams.Add(request.NewErrParamMinValue("FontResolution", 96))
10526	}
10527	if s.Font != nil {
10528		if err := s.Font.Validate(); err != nil {
10529			invalidParams.AddNested("Font", err.(request.ErrInvalidParams))
10530		}
10531	}
10532
10533	if invalidParams.Len() > 0 {
10534		return invalidParams
10535	}
10536	return nil
10537}
10538
10539// SetAlignment sets the Alignment field's value.
10540func (s *DvbSubDestinationSettings) SetAlignment(v string) *DvbSubDestinationSettings {
10541	s.Alignment = &v
10542	return s
10543}
10544
10545// SetBackgroundColor sets the BackgroundColor field's value.
10546func (s *DvbSubDestinationSettings) SetBackgroundColor(v string) *DvbSubDestinationSettings {
10547	s.BackgroundColor = &v
10548	return s
10549}
10550
10551// SetBackgroundOpacity sets the BackgroundOpacity field's value.
10552func (s *DvbSubDestinationSettings) SetBackgroundOpacity(v int64) *DvbSubDestinationSettings {
10553	s.BackgroundOpacity = &v
10554	return s
10555}
10556
10557// SetFont sets the Font field's value.
10558func (s *DvbSubDestinationSettings) SetFont(v *InputLocation) *DvbSubDestinationSettings {
10559	s.Font = v
10560	return s
10561}
10562
10563// SetFontColor sets the FontColor field's value.
10564func (s *DvbSubDestinationSettings) SetFontColor(v string) *DvbSubDestinationSettings {
10565	s.FontColor = &v
10566	return s
10567}
10568
10569// SetFontOpacity sets the FontOpacity field's value.
10570func (s *DvbSubDestinationSettings) SetFontOpacity(v int64) *DvbSubDestinationSettings {
10571	s.FontOpacity = &v
10572	return s
10573}
10574
10575// SetFontResolution sets the FontResolution field's value.
10576func (s *DvbSubDestinationSettings) SetFontResolution(v int64) *DvbSubDestinationSettings {
10577	s.FontResolution = &v
10578	return s
10579}
10580
10581// SetFontSize sets the FontSize field's value.
10582func (s *DvbSubDestinationSettings) SetFontSize(v string) *DvbSubDestinationSettings {
10583	s.FontSize = &v
10584	return s
10585}
10586
10587// SetOutlineColor sets the OutlineColor field's value.
10588func (s *DvbSubDestinationSettings) SetOutlineColor(v string) *DvbSubDestinationSettings {
10589	s.OutlineColor = &v
10590	return s
10591}
10592
10593// SetOutlineSize sets the OutlineSize field's value.
10594func (s *DvbSubDestinationSettings) SetOutlineSize(v int64) *DvbSubDestinationSettings {
10595	s.OutlineSize = &v
10596	return s
10597}
10598
10599// SetShadowColor sets the ShadowColor field's value.
10600func (s *DvbSubDestinationSettings) SetShadowColor(v string) *DvbSubDestinationSettings {
10601	s.ShadowColor = &v
10602	return s
10603}
10604
10605// SetShadowOpacity sets the ShadowOpacity field's value.
10606func (s *DvbSubDestinationSettings) SetShadowOpacity(v int64) *DvbSubDestinationSettings {
10607	s.ShadowOpacity = &v
10608	return s
10609}
10610
10611// SetShadowXOffset sets the ShadowXOffset field's value.
10612func (s *DvbSubDestinationSettings) SetShadowXOffset(v int64) *DvbSubDestinationSettings {
10613	s.ShadowXOffset = &v
10614	return s
10615}
10616
10617// SetShadowYOffset sets the ShadowYOffset field's value.
10618func (s *DvbSubDestinationSettings) SetShadowYOffset(v int64) *DvbSubDestinationSettings {
10619	s.ShadowYOffset = &v
10620	return s
10621}
10622
10623// SetTeletextGridControl sets the TeletextGridControl field's value.
10624func (s *DvbSubDestinationSettings) SetTeletextGridControl(v string) *DvbSubDestinationSettings {
10625	s.TeletextGridControl = &v
10626	return s
10627}
10628
10629// SetXPosition sets the XPosition field's value.
10630func (s *DvbSubDestinationSettings) SetXPosition(v int64) *DvbSubDestinationSettings {
10631	s.XPosition = &v
10632	return s
10633}
10634
10635// SetYPosition sets the YPosition field's value.
10636func (s *DvbSubDestinationSettings) SetYPosition(v int64) *DvbSubDestinationSettings {
10637	s.YPosition = &v
10638	return s
10639}
10640
10641// Dvb Sub Source Settings
10642type DvbSubSourceSettings struct {
10643	_ struct{} `type:"structure"`
10644
10645	// When using DVB-Sub with Burn-In or SMPTE-TT, use this PID for the source
10646	// content. Unused for DVB-Sub passthrough. All DVB-Sub content is passed through,
10647	// regardless of selectors.
10648	Pid *int64 `locationName:"pid" min:"1" type:"integer"`
10649}
10650
10651// String returns the string representation
10652func (s DvbSubSourceSettings) String() string {
10653	return awsutil.Prettify(s)
10654}
10655
10656// GoString returns the string representation
10657func (s DvbSubSourceSettings) GoString() string {
10658	return s.String()
10659}
10660
10661// Validate inspects the fields of the type to determine if they are valid.
10662func (s *DvbSubSourceSettings) Validate() error {
10663	invalidParams := request.ErrInvalidParams{Context: "DvbSubSourceSettings"}
10664	if s.Pid != nil && *s.Pid < 1 {
10665		invalidParams.Add(request.NewErrParamMinValue("Pid", 1))
10666	}
10667
10668	if invalidParams.Len() > 0 {
10669		return invalidParams
10670	}
10671	return nil
10672}
10673
10674// SetPid sets the Pid field's value.
10675func (s *DvbSubSourceSettings) SetPid(v int64) *DvbSubSourceSettings {
10676	s.Pid = &v
10677	return s
10678}
10679
10680// DVB Time and Date Table (SDT)
10681type DvbTdtSettings struct {
10682	_ struct{} `type:"structure"`
10683
10684	// The number of milliseconds between instances of this table in the output
10685	// transport stream.
10686	RepInterval *int64 `locationName:"repInterval" min:"1000" type:"integer"`
10687}
10688
10689// String returns the string representation
10690func (s DvbTdtSettings) String() string {
10691	return awsutil.Prettify(s)
10692}
10693
10694// GoString returns the string representation
10695func (s DvbTdtSettings) GoString() string {
10696	return s.String()
10697}
10698
10699// Validate inspects the fields of the type to determine if they are valid.
10700func (s *DvbTdtSettings) Validate() error {
10701	invalidParams := request.ErrInvalidParams{Context: "DvbTdtSettings"}
10702	if s.RepInterval != nil && *s.RepInterval < 1000 {
10703		invalidParams.Add(request.NewErrParamMinValue("RepInterval", 1000))
10704	}
10705
10706	if invalidParams.Len() > 0 {
10707		return invalidParams
10708	}
10709	return nil
10710}
10711
10712// SetRepInterval sets the RepInterval field's value.
10713func (s *DvbTdtSettings) SetRepInterval(v int64) *DvbTdtSettings {
10714	s.RepInterval = &v
10715	return s
10716}
10717
10718// Eac3 Settings
10719type Eac3Settings struct {
10720	_ struct{} `type:"structure"`
10721
10722	// When set to attenuate3Db, applies a 3 dB attenuation to the surround channels.
10723	// Only used for 3/2 coding mode.
10724	AttenuationControl *string `locationName:"attenuationControl" type:"string" enum:"Eac3AttenuationControl"`
10725
10726	// Average bitrate in bits/second. Valid bitrates depend on the coding mode.
10727	Bitrate *float64 `locationName:"bitrate" type:"double"`
10728
10729	// Specifies the bitstream mode (bsmod) for the emitted E-AC-3 stream. See ATSC
10730	// A/52-2012 (Annex E) for background on these values.
10731	BitstreamMode *string `locationName:"bitstreamMode" type:"string" enum:"Eac3BitstreamMode"`
10732
10733	// Dolby Digital Plus coding mode. Determines number of channels.
10734	CodingMode *string `locationName:"codingMode" type:"string" enum:"Eac3CodingMode"`
10735
10736	// When set to enabled, activates a DC highpass filter for all input channels.
10737	DcFilter *string `locationName:"dcFilter" type:"string" enum:"Eac3DcFilter"`
10738
10739	// Sets the dialnorm for the output. If blank and input audio is Dolby Digital
10740	// Plus, dialnorm will be passed through.
10741	Dialnorm *int64 `locationName:"dialnorm" min:"1" type:"integer"`
10742
10743	// Sets the Dolby dynamic range compression profile.
10744	DrcLine *string `locationName:"drcLine" type:"string" enum:"Eac3DrcLine"`
10745
10746	// Sets the profile for heavy Dolby dynamic range compression, ensures that
10747	// the instantaneous signal peaks do not exceed specified levels.
10748	DrcRf *string `locationName:"drcRf" type:"string" enum:"Eac3DrcRf"`
10749
10750	// When encoding 3/2 audio, setting to lfe enables the LFE channel
10751	LfeControl *string `locationName:"lfeControl" type:"string" enum:"Eac3LfeControl"`
10752
10753	// When set to enabled, applies a 120Hz lowpass filter to the LFE channel prior
10754	// to encoding. Only valid with codingMode32 coding mode.
10755	LfeFilter *string `locationName:"lfeFilter" type:"string" enum:"Eac3LfeFilter"`
10756
10757	// Left only/Right only center mix level. Only used for 3/2 coding mode.
10758	LoRoCenterMixLevel *float64 `locationName:"loRoCenterMixLevel" type:"double"`
10759
10760	// Left only/Right only surround mix level. Only used for 3/2 coding mode.
10761	LoRoSurroundMixLevel *float64 `locationName:"loRoSurroundMixLevel" type:"double"`
10762
10763	// Left total/Right total center mix level. Only used for 3/2 coding mode.
10764	LtRtCenterMixLevel *float64 `locationName:"ltRtCenterMixLevel" type:"double"`
10765
10766	// Left total/Right total surround mix level. Only used for 3/2 coding mode.
10767	LtRtSurroundMixLevel *float64 `locationName:"ltRtSurroundMixLevel" type:"double"`
10768
10769	// When set to followInput, encoder metadata will be sourced from the DD, DD+,
10770	// or DolbyE decoder that supplied this audio data. If audio was not supplied
10771	// from one of these streams, then the static metadata settings will be used.
10772	MetadataControl *string `locationName:"metadataControl" type:"string" enum:"Eac3MetadataControl"`
10773
10774	// When set to whenPossible, input DD+ audio will be passed through if it is
10775	// present on the input. This detection is dynamic over the life of the transcode.
10776	// Inputs that alternate between DD+ and non-DD+ content will have a consistent
10777	// DD+ output as the system alternates between passthrough and encoding.
10778	PassthroughControl *string `locationName:"passthroughControl" type:"string" enum:"Eac3PassthroughControl"`
10779
10780	// When set to shift90Degrees, applies a 90-degree phase shift to the surround
10781	// channels. Only used for 3/2 coding mode.
10782	PhaseControl *string `locationName:"phaseControl" type:"string" enum:"Eac3PhaseControl"`
10783
10784	// Stereo downmix preference. Only used for 3/2 coding mode.
10785	StereoDownmix *string `locationName:"stereoDownmix" type:"string" enum:"Eac3StereoDownmix"`
10786
10787	// When encoding 3/2 audio, sets whether an extra center back surround channel
10788	// is matrix encoded into the left and right surround channels.
10789	SurroundExMode *string `locationName:"surroundExMode" type:"string" enum:"Eac3SurroundExMode"`
10790
10791	// When encoding 2/0 audio, sets whether Dolby Surround is matrix encoded into
10792	// the two channels.
10793	SurroundMode *string `locationName:"surroundMode" type:"string" enum:"Eac3SurroundMode"`
10794}
10795
10796// String returns the string representation
10797func (s Eac3Settings) String() string {
10798	return awsutil.Prettify(s)
10799}
10800
10801// GoString returns the string representation
10802func (s Eac3Settings) GoString() string {
10803	return s.String()
10804}
10805
10806// Validate inspects the fields of the type to determine if they are valid.
10807func (s *Eac3Settings) Validate() error {
10808	invalidParams := request.ErrInvalidParams{Context: "Eac3Settings"}
10809	if s.Dialnorm != nil && *s.Dialnorm < 1 {
10810		invalidParams.Add(request.NewErrParamMinValue("Dialnorm", 1))
10811	}
10812
10813	if invalidParams.Len() > 0 {
10814		return invalidParams
10815	}
10816	return nil
10817}
10818
10819// SetAttenuationControl sets the AttenuationControl field's value.
10820func (s *Eac3Settings) SetAttenuationControl(v string) *Eac3Settings {
10821	s.AttenuationControl = &v
10822	return s
10823}
10824
10825// SetBitrate sets the Bitrate field's value.
10826func (s *Eac3Settings) SetBitrate(v float64) *Eac3Settings {
10827	s.Bitrate = &v
10828	return s
10829}
10830
10831// SetBitstreamMode sets the BitstreamMode field's value.
10832func (s *Eac3Settings) SetBitstreamMode(v string) *Eac3Settings {
10833	s.BitstreamMode = &v
10834	return s
10835}
10836
10837// SetCodingMode sets the CodingMode field's value.
10838func (s *Eac3Settings) SetCodingMode(v string) *Eac3Settings {
10839	s.CodingMode = &v
10840	return s
10841}
10842
10843// SetDcFilter sets the DcFilter field's value.
10844func (s *Eac3Settings) SetDcFilter(v string) *Eac3Settings {
10845	s.DcFilter = &v
10846	return s
10847}
10848
10849// SetDialnorm sets the Dialnorm field's value.
10850func (s *Eac3Settings) SetDialnorm(v int64) *Eac3Settings {
10851	s.Dialnorm = &v
10852	return s
10853}
10854
10855// SetDrcLine sets the DrcLine field's value.
10856func (s *Eac3Settings) SetDrcLine(v string) *Eac3Settings {
10857	s.DrcLine = &v
10858	return s
10859}
10860
10861// SetDrcRf sets the DrcRf field's value.
10862func (s *Eac3Settings) SetDrcRf(v string) *Eac3Settings {
10863	s.DrcRf = &v
10864	return s
10865}
10866
10867// SetLfeControl sets the LfeControl field's value.
10868func (s *Eac3Settings) SetLfeControl(v string) *Eac3Settings {
10869	s.LfeControl = &v
10870	return s
10871}
10872
10873// SetLfeFilter sets the LfeFilter field's value.
10874func (s *Eac3Settings) SetLfeFilter(v string) *Eac3Settings {
10875	s.LfeFilter = &v
10876	return s
10877}
10878
10879// SetLoRoCenterMixLevel sets the LoRoCenterMixLevel field's value.
10880func (s *Eac3Settings) SetLoRoCenterMixLevel(v float64) *Eac3Settings {
10881	s.LoRoCenterMixLevel = &v
10882	return s
10883}
10884
10885// SetLoRoSurroundMixLevel sets the LoRoSurroundMixLevel field's value.
10886func (s *Eac3Settings) SetLoRoSurroundMixLevel(v float64) *Eac3Settings {
10887	s.LoRoSurroundMixLevel = &v
10888	return s
10889}
10890
10891// SetLtRtCenterMixLevel sets the LtRtCenterMixLevel field's value.
10892func (s *Eac3Settings) SetLtRtCenterMixLevel(v float64) *Eac3Settings {
10893	s.LtRtCenterMixLevel = &v
10894	return s
10895}
10896
10897// SetLtRtSurroundMixLevel sets the LtRtSurroundMixLevel field's value.
10898func (s *Eac3Settings) SetLtRtSurroundMixLevel(v float64) *Eac3Settings {
10899	s.LtRtSurroundMixLevel = &v
10900	return s
10901}
10902
10903// SetMetadataControl sets the MetadataControl field's value.
10904func (s *Eac3Settings) SetMetadataControl(v string) *Eac3Settings {
10905	s.MetadataControl = &v
10906	return s
10907}
10908
10909// SetPassthroughControl sets the PassthroughControl field's value.
10910func (s *Eac3Settings) SetPassthroughControl(v string) *Eac3Settings {
10911	s.PassthroughControl = &v
10912	return s
10913}
10914
10915// SetPhaseControl sets the PhaseControl field's value.
10916func (s *Eac3Settings) SetPhaseControl(v string) *Eac3Settings {
10917	s.PhaseControl = &v
10918	return s
10919}
10920
10921// SetStereoDownmix sets the StereoDownmix field's value.
10922func (s *Eac3Settings) SetStereoDownmix(v string) *Eac3Settings {
10923	s.StereoDownmix = &v
10924	return s
10925}
10926
10927// SetSurroundExMode sets the SurroundExMode field's value.
10928func (s *Eac3Settings) SetSurroundExMode(v string) *Eac3Settings {
10929	s.SurroundExMode = &v
10930	return s
10931}
10932
10933// SetSurroundMode sets the SurroundMode field's value.
10934func (s *Eac3Settings) SetSurroundMode(v string) *Eac3Settings {
10935	s.SurroundMode = &v
10936	return s
10937}
10938
10939// Embedded Destination Settings
10940type EmbeddedDestinationSettings struct {
10941	_ struct{} `type:"structure"`
10942}
10943
10944// String returns the string representation
10945func (s EmbeddedDestinationSettings) String() string {
10946	return awsutil.Prettify(s)
10947}
10948
10949// GoString returns the string representation
10950func (s EmbeddedDestinationSettings) GoString() string {
10951	return s.String()
10952}
10953
10954// Embedded Plus Scte20 Destination Settings
10955type EmbeddedPlusScte20DestinationSettings struct {
10956	_ struct{} `type:"structure"`
10957}
10958
10959// String returns the string representation
10960func (s EmbeddedPlusScte20DestinationSettings) String() string {
10961	return awsutil.Prettify(s)
10962}
10963
10964// GoString returns the string representation
10965func (s EmbeddedPlusScte20DestinationSettings) GoString() string {
10966	return s.String()
10967}
10968
10969// Embedded Source Settings
10970type EmbeddedSourceSettings struct {
10971	_ struct{} `type:"structure"`
10972
10973	// If upconvert, 608 data is both passed through via the "608 compatibility
10974	// bytes" fields of the 708 wrapper as well as translated into 708. 708 data
10975	// present in the source content will be discarded.
10976	Convert608To708 *string `locationName:"convert608To708" type:"string" enum:"EmbeddedConvert608To708"`
10977
10978	// Set to "auto" to handle streams with intermittent and/or non-aligned SCTE-20
10979	// and Embedded captions.
10980	Scte20Detection *string `locationName:"scte20Detection" type:"string" enum:"EmbeddedScte20Detection"`
10981
10982	// Specifies the 608/708 channel number within the video track from which to
10983	// extract captions. Unused for passthrough.
10984	Source608ChannelNumber *int64 `locationName:"source608ChannelNumber" min:"1" type:"integer"`
10985
10986	// This field is unused and deprecated.
10987	Source608TrackNumber *int64 `locationName:"source608TrackNumber" min:"1" type:"integer"`
10988}
10989
10990// String returns the string representation
10991func (s EmbeddedSourceSettings) String() string {
10992	return awsutil.Prettify(s)
10993}
10994
10995// GoString returns the string representation
10996func (s EmbeddedSourceSettings) GoString() string {
10997	return s.String()
10998}
10999
11000// Validate inspects the fields of the type to determine if they are valid.
11001func (s *EmbeddedSourceSettings) Validate() error {
11002	invalidParams := request.ErrInvalidParams{Context: "EmbeddedSourceSettings"}
11003	if s.Source608ChannelNumber != nil && *s.Source608ChannelNumber < 1 {
11004		invalidParams.Add(request.NewErrParamMinValue("Source608ChannelNumber", 1))
11005	}
11006	if s.Source608TrackNumber != nil && *s.Source608TrackNumber < 1 {
11007		invalidParams.Add(request.NewErrParamMinValue("Source608TrackNumber", 1))
11008	}
11009
11010	if invalidParams.Len() > 0 {
11011		return invalidParams
11012	}
11013	return nil
11014}
11015
11016// SetConvert608To708 sets the Convert608To708 field's value.
11017func (s *EmbeddedSourceSettings) SetConvert608To708(v string) *EmbeddedSourceSettings {
11018	s.Convert608To708 = &v
11019	return s
11020}
11021
11022// SetScte20Detection sets the Scte20Detection field's value.
11023func (s *EmbeddedSourceSettings) SetScte20Detection(v string) *EmbeddedSourceSettings {
11024	s.Scte20Detection = &v
11025	return s
11026}
11027
11028// SetSource608ChannelNumber sets the Source608ChannelNumber field's value.
11029func (s *EmbeddedSourceSettings) SetSource608ChannelNumber(v int64) *EmbeddedSourceSettings {
11030	s.Source608ChannelNumber = &v
11031	return s
11032}
11033
11034// SetSource608TrackNumber sets the Source608TrackNumber field's value.
11035func (s *EmbeddedSourceSettings) SetSource608TrackNumber(v int64) *EmbeddedSourceSettings {
11036	s.Source608TrackNumber = &v
11037	return s
11038}
11039
11040// Encoder Settings
11041type EncoderSettings struct {
11042	_ struct{} `type:"structure"`
11043
11044	// AudioDescriptions is a required field
11045	AudioDescriptions []*AudioDescription `locationName:"audioDescriptions" type:"list" required:"true"`
11046
11047	// Settings for ad avail blanking.
11048	AvailBlanking *AvailBlanking `locationName:"availBlanking" type:"structure"`
11049
11050	// Event-wide configuration settings for ad avail insertion.
11051	AvailConfiguration *AvailConfiguration `locationName:"availConfiguration" type:"structure"`
11052
11053	// Settings for blackout slate.
11054	BlackoutSlate *BlackoutSlate `locationName:"blackoutSlate" type:"structure"`
11055
11056	// Settings for caption decriptions
11057	CaptionDescriptions []*CaptionDescription `locationName:"captionDescriptions" type:"list"`
11058
11059	// Feature Activations
11060	FeatureActivations *FeatureActivations `locationName:"featureActivations" type:"structure"`
11061
11062	// Configuration settings that apply to the event as a whole.
11063	GlobalConfiguration *GlobalConfiguration `locationName:"globalConfiguration" type:"structure"`
11064
11065	// Nielsen configuration settings.
11066	NielsenConfiguration *NielsenConfiguration `locationName:"nielsenConfiguration" type:"structure"`
11067
11068	// OutputGroups is a required field
11069	OutputGroups []*OutputGroup `locationName:"outputGroups" type:"list" required:"true"`
11070
11071	// Contains settings used to acquire and adjust timecode information from inputs.
11072	//
11073	// TimecodeConfig is a required field
11074	TimecodeConfig *TimecodeConfig `locationName:"timecodeConfig" type:"structure" required:"true"`
11075
11076	// VideoDescriptions is a required field
11077	VideoDescriptions []*VideoDescription `locationName:"videoDescriptions" type:"list" required:"true"`
11078}
11079
11080// String returns the string representation
11081func (s EncoderSettings) String() string {
11082	return awsutil.Prettify(s)
11083}
11084
11085// GoString returns the string representation
11086func (s EncoderSettings) GoString() string {
11087	return s.String()
11088}
11089
11090// Validate inspects the fields of the type to determine if they are valid.
11091func (s *EncoderSettings) Validate() error {
11092	invalidParams := request.ErrInvalidParams{Context: "EncoderSettings"}
11093	if s.AudioDescriptions == nil {
11094		invalidParams.Add(request.NewErrParamRequired("AudioDescriptions"))
11095	}
11096	if s.OutputGroups == nil {
11097		invalidParams.Add(request.NewErrParamRequired("OutputGroups"))
11098	}
11099	if s.TimecodeConfig == nil {
11100		invalidParams.Add(request.NewErrParamRequired("TimecodeConfig"))
11101	}
11102	if s.VideoDescriptions == nil {
11103		invalidParams.Add(request.NewErrParamRequired("VideoDescriptions"))
11104	}
11105	if s.AudioDescriptions != nil {
11106		for i, v := range s.AudioDescriptions {
11107			if v == nil {
11108				continue
11109			}
11110			if err := v.Validate(); err != nil {
11111				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AudioDescriptions", i), err.(request.ErrInvalidParams))
11112			}
11113		}
11114	}
11115	if s.AvailBlanking != nil {
11116		if err := s.AvailBlanking.Validate(); err != nil {
11117			invalidParams.AddNested("AvailBlanking", err.(request.ErrInvalidParams))
11118		}
11119	}
11120	if s.AvailConfiguration != nil {
11121		if err := s.AvailConfiguration.Validate(); err != nil {
11122			invalidParams.AddNested("AvailConfiguration", err.(request.ErrInvalidParams))
11123		}
11124	}
11125	if s.BlackoutSlate != nil {
11126		if err := s.BlackoutSlate.Validate(); err != nil {
11127			invalidParams.AddNested("BlackoutSlate", err.(request.ErrInvalidParams))
11128		}
11129	}
11130	if s.CaptionDescriptions != nil {
11131		for i, v := range s.CaptionDescriptions {
11132			if v == nil {
11133				continue
11134			}
11135			if err := v.Validate(); err != nil {
11136				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionDescriptions", i), err.(request.ErrInvalidParams))
11137			}
11138		}
11139	}
11140	if s.GlobalConfiguration != nil {
11141		if err := s.GlobalConfiguration.Validate(); err != nil {
11142			invalidParams.AddNested("GlobalConfiguration", err.(request.ErrInvalidParams))
11143		}
11144	}
11145	if s.OutputGroups != nil {
11146		for i, v := range s.OutputGroups {
11147			if v == nil {
11148				continue
11149			}
11150			if err := v.Validate(); err != nil {
11151				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputGroups", i), err.(request.ErrInvalidParams))
11152			}
11153		}
11154	}
11155	if s.TimecodeConfig != nil {
11156		if err := s.TimecodeConfig.Validate(); err != nil {
11157			invalidParams.AddNested("TimecodeConfig", err.(request.ErrInvalidParams))
11158		}
11159	}
11160	if s.VideoDescriptions != nil {
11161		for i, v := range s.VideoDescriptions {
11162			if v == nil {
11163				continue
11164			}
11165			if err := v.Validate(); err != nil {
11166				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "VideoDescriptions", i), err.(request.ErrInvalidParams))
11167			}
11168		}
11169	}
11170
11171	if invalidParams.Len() > 0 {
11172		return invalidParams
11173	}
11174	return nil
11175}
11176
11177// SetAudioDescriptions sets the AudioDescriptions field's value.
11178func (s *EncoderSettings) SetAudioDescriptions(v []*AudioDescription) *EncoderSettings {
11179	s.AudioDescriptions = v
11180	return s
11181}
11182
11183// SetAvailBlanking sets the AvailBlanking field's value.
11184func (s *EncoderSettings) SetAvailBlanking(v *AvailBlanking) *EncoderSettings {
11185	s.AvailBlanking = v
11186	return s
11187}
11188
11189// SetAvailConfiguration sets the AvailConfiguration field's value.
11190func (s *EncoderSettings) SetAvailConfiguration(v *AvailConfiguration) *EncoderSettings {
11191	s.AvailConfiguration = v
11192	return s
11193}
11194
11195// SetBlackoutSlate sets the BlackoutSlate field's value.
11196func (s *EncoderSettings) SetBlackoutSlate(v *BlackoutSlate) *EncoderSettings {
11197	s.BlackoutSlate = v
11198	return s
11199}
11200
11201// SetCaptionDescriptions sets the CaptionDescriptions field's value.
11202func (s *EncoderSettings) SetCaptionDescriptions(v []*CaptionDescription) *EncoderSettings {
11203	s.CaptionDescriptions = v
11204	return s
11205}
11206
11207// SetFeatureActivations sets the FeatureActivations field's value.
11208func (s *EncoderSettings) SetFeatureActivations(v *FeatureActivations) *EncoderSettings {
11209	s.FeatureActivations = v
11210	return s
11211}
11212
11213// SetGlobalConfiguration sets the GlobalConfiguration field's value.
11214func (s *EncoderSettings) SetGlobalConfiguration(v *GlobalConfiguration) *EncoderSettings {
11215	s.GlobalConfiguration = v
11216	return s
11217}
11218
11219// SetNielsenConfiguration sets the NielsenConfiguration field's value.
11220func (s *EncoderSettings) SetNielsenConfiguration(v *NielsenConfiguration) *EncoderSettings {
11221	s.NielsenConfiguration = v
11222	return s
11223}
11224
11225// SetOutputGroups sets the OutputGroups field's value.
11226func (s *EncoderSettings) SetOutputGroups(v []*OutputGroup) *EncoderSettings {
11227	s.OutputGroups = v
11228	return s
11229}
11230
11231// SetTimecodeConfig sets the TimecodeConfig field's value.
11232func (s *EncoderSettings) SetTimecodeConfig(v *TimecodeConfig) *EncoderSettings {
11233	s.TimecodeConfig = v
11234	return s
11235}
11236
11237// SetVideoDescriptions sets the VideoDescriptions field's value.
11238func (s *EncoderSettings) SetVideoDescriptions(v []*VideoDescription) *EncoderSettings {
11239	s.VideoDescriptions = v
11240	return s
11241}
11242
11243// Feature Activations
11244type FeatureActivations struct {
11245	_ struct{} `type:"structure"`
11246
11247	// Enables the Input Prepare feature. You can create Input Prepare actions in
11248	// the schedule only if this feature is enabled.If you disable the feature on
11249	// an existing schedule, make sure that you first delete all input prepare actions
11250	// from the schedule.
11251	InputPrepareScheduleActions *string `locationName:"inputPrepareScheduleActions" type:"string" enum:"FeatureActivationsInputPrepareScheduleActions"`
11252}
11253
11254// String returns the string representation
11255func (s FeatureActivations) String() string {
11256	return awsutil.Prettify(s)
11257}
11258
11259// GoString returns the string representation
11260func (s FeatureActivations) GoString() string {
11261	return s.String()
11262}
11263
11264// SetInputPrepareScheduleActions sets the InputPrepareScheduleActions field's value.
11265func (s *FeatureActivations) SetInputPrepareScheduleActions(v string) *FeatureActivations {
11266	s.InputPrepareScheduleActions = &v
11267	return s
11268}
11269
11270// Fec Output Settings
11271type FecOutputSettings struct {
11272	_ struct{} `type:"structure"`
11273
11274	// Parameter D from SMPTE 2022-1. The height of the FEC protection matrix. The
11275	// number of transport stream packets per column error correction packet. Must
11276	// be between 4 and 20, inclusive.
11277	ColumnDepth *int64 `locationName:"columnDepth" min:"4" type:"integer"`
11278
11279	// Enables column only or column and row based FEC
11280	IncludeFec *string `locationName:"includeFec" type:"string" enum:"FecOutputIncludeFec"`
11281
11282	// Parameter L from SMPTE 2022-1. The width of the FEC protection matrix. Must
11283	// be between 1 and 20, inclusive. If only Column FEC is used, then larger values
11284	// increase robustness. If Row FEC is used, then this is the number of transport
11285	// stream packets per row error correction packet, and the value must be between
11286	// 4 and 20, inclusive, if includeFec is columnAndRow. If includeFec is column,
11287	// this value must be 1 to 20, inclusive.
11288	RowLength *int64 `locationName:"rowLength" min:"1" type:"integer"`
11289}
11290
11291// String returns the string representation
11292func (s FecOutputSettings) String() string {
11293	return awsutil.Prettify(s)
11294}
11295
11296// GoString returns the string representation
11297func (s FecOutputSettings) GoString() string {
11298	return s.String()
11299}
11300
11301// Validate inspects the fields of the type to determine if they are valid.
11302func (s *FecOutputSettings) Validate() error {
11303	invalidParams := request.ErrInvalidParams{Context: "FecOutputSettings"}
11304	if s.ColumnDepth != nil && *s.ColumnDepth < 4 {
11305		invalidParams.Add(request.NewErrParamMinValue("ColumnDepth", 4))
11306	}
11307	if s.RowLength != nil && *s.RowLength < 1 {
11308		invalidParams.Add(request.NewErrParamMinValue("RowLength", 1))
11309	}
11310
11311	if invalidParams.Len() > 0 {
11312		return invalidParams
11313	}
11314	return nil
11315}
11316
11317// SetColumnDepth sets the ColumnDepth field's value.
11318func (s *FecOutputSettings) SetColumnDepth(v int64) *FecOutputSettings {
11319	s.ColumnDepth = &v
11320	return s
11321}
11322
11323// SetIncludeFec sets the IncludeFec field's value.
11324func (s *FecOutputSettings) SetIncludeFec(v string) *FecOutputSettings {
11325	s.IncludeFec = &v
11326	return s
11327}
11328
11329// SetRowLength sets the RowLength field's value.
11330func (s *FecOutputSettings) SetRowLength(v int64) *FecOutputSettings {
11331	s.RowLength = &v
11332	return s
11333}
11334
11335// Start time for the action.
11336type FixedModeScheduleActionStartSettings struct {
11337	_ struct{} `type:"structure"`
11338
11339	// Start time for the action to start in the channel. (Not the time for the
11340	// action to be added to the schedule: actions are always added to the schedule
11341	// immediately.) UTC format: yyyy-mm-ddThh:mm:ss.nnnZ. All the letters are digits
11342	// (for example, mm might be 01) except for the two constants "T" for time and
11343	// "Z" for "UTC format".
11344	//
11345	// Time is a required field
11346	Time *string `locationName:"time" type:"string" required:"true"`
11347}
11348
11349// String returns the string representation
11350func (s FixedModeScheduleActionStartSettings) String() string {
11351	return awsutil.Prettify(s)
11352}
11353
11354// GoString returns the string representation
11355func (s FixedModeScheduleActionStartSettings) GoString() string {
11356	return s.String()
11357}
11358
11359// Validate inspects the fields of the type to determine if they are valid.
11360func (s *FixedModeScheduleActionStartSettings) Validate() error {
11361	invalidParams := request.ErrInvalidParams{Context: "FixedModeScheduleActionStartSettings"}
11362	if s.Time == nil {
11363		invalidParams.Add(request.NewErrParamRequired("Time"))
11364	}
11365
11366	if invalidParams.Len() > 0 {
11367		return invalidParams
11368	}
11369	return nil
11370}
11371
11372// SetTime sets the Time field's value.
11373func (s *FixedModeScheduleActionStartSettings) SetTime(v string) *FixedModeScheduleActionStartSettings {
11374	s.Time = &v
11375	return s
11376}
11377
11378// Fmp4 Hls Settings
11379type Fmp4HlsSettings struct {
11380	_ struct{} `type:"structure"`
11381
11382	// List all the audio groups that are used with the video output stream. Input
11383	// all the audio GROUP-IDs that are associated to the video, separate by ','.
11384	AudioRenditionSets *string `locationName:"audioRenditionSets" type:"string"`
11385
11386	// If set to passthrough, Nielsen inaudible tones for media tracking will be
11387	// detected in the input audio and an equivalent ID3 tag will be inserted in
11388	// the output.
11389	NielsenId3Behavior *string `locationName:"nielsenId3Behavior" type:"string" enum:"Fmp4NielsenId3Behavior"`
11390
11391	// When set to passthrough, timed metadata is passed through from input to output.
11392	TimedMetadataBehavior *string `locationName:"timedMetadataBehavior" type:"string" enum:"Fmp4TimedMetadataBehavior"`
11393}
11394
11395// String returns the string representation
11396func (s Fmp4HlsSettings) String() string {
11397	return awsutil.Prettify(s)
11398}
11399
11400// GoString returns the string representation
11401func (s Fmp4HlsSettings) GoString() string {
11402	return s.String()
11403}
11404
11405// SetAudioRenditionSets sets the AudioRenditionSets field's value.
11406func (s *Fmp4HlsSettings) SetAudioRenditionSets(v string) *Fmp4HlsSettings {
11407	s.AudioRenditionSets = &v
11408	return s
11409}
11410
11411// SetNielsenId3Behavior sets the NielsenId3Behavior field's value.
11412func (s *Fmp4HlsSettings) SetNielsenId3Behavior(v string) *Fmp4HlsSettings {
11413	s.NielsenId3Behavior = &v
11414	return s
11415}
11416
11417// SetTimedMetadataBehavior sets the TimedMetadataBehavior field's value.
11418func (s *Fmp4HlsSettings) SetTimedMetadataBehavior(v string) *Fmp4HlsSettings {
11419	s.TimedMetadataBehavior = &v
11420	return s
11421}
11422
11423// Settings to specify if an action follows another.
11424type FollowModeScheduleActionStartSettings struct {
11425	_ struct{} `type:"structure"`
11426
11427	// Identifies whether this action starts relative to the start or relative to
11428	// the end of the reference action.
11429	//
11430	// FollowPoint is a required field
11431	FollowPoint *string `locationName:"followPoint" type:"string" required:"true" enum:"FollowPoint"`
11432
11433	// The action name of another action that this one refers to.
11434	//
11435	// ReferenceActionName is a required field
11436	ReferenceActionName *string `locationName:"referenceActionName" type:"string" required:"true"`
11437}
11438
11439// String returns the string representation
11440func (s FollowModeScheduleActionStartSettings) String() string {
11441	return awsutil.Prettify(s)
11442}
11443
11444// GoString returns the string representation
11445func (s FollowModeScheduleActionStartSettings) GoString() string {
11446	return s.String()
11447}
11448
11449// Validate inspects the fields of the type to determine if they are valid.
11450func (s *FollowModeScheduleActionStartSettings) Validate() error {
11451	invalidParams := request.ErrInvalidParams{Context: "FollowModeScheduleActionStartSettings"}
11452	if s.FollowPoint == nil {
11453		invalidParams.Add(request.NewErrParamRequired("FollowPoint"))
11454	}
11455	if s.ReferenceActionName == nil {
11456		invalidParams.Add(request.NewErrParamRequired("ReferenceActionName"))
11457	}
11458
11459	if invalidParams.Len() > 0 {
11460		return invalidParams
11461	}
11462	return nil
11463}
11464
11465// SetFollowPoint sets the FollowPoint field's value.
11466func (s *FollowModeScheduleActionStartSettings) SetFollowPoint(v string) *FollowModeScheduleActionStartSettings {
11467	s.FollowPoint = &v
11468	return s
11469}
11470
11471// SetReferenceActionName sets the ReferenceActionName field's value.
11472func (s *FollowModeScheduleActionStartSettings) SetReferenceActionName(v string) *FollowModeScheduleActionStartSettings {
11473	s.ReferenceActionName = &v
11474	return s
11475}
11476
11477type ForbiddenException struct {
11478	_            struct{}                  `type:"structure"`
11479	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11480
11481	Message_ *string `locationName:"message" type:"string"`
11482}
11483
11484// String returns the string representation
11485func (s ForbiddenException) String() string {
11486	return awsutil.Prettify(s)
11487}
11488
11489// GoString returns the string representation
11490func (s ForbiddenException) GoString() string {
11491	return s.String()
11492}
11493
11494func newErrorForbiddenException(v protocol.ResponseMetadata) error {
11495	return &ForbiddenException{
11496		RespMetadata: v,
11497	}
11498}
11499
11500// Code returns the exception type name.
11501func (s *ForbiddenException) Code() string {
11502	return "ForbiddenException"
11503}
11504
11505// Message returns the exception's message.
11506func (s *ForbiddenException) Message() string {
11507	if s.Message_ != nil {
11508		return *s.Message_
11509	}
11510	return ""
11511}
11512
11513// OrigErr always returns nil, satisfies awserr.Error interface.
11514func (s *ForbiddenException) OrigErr() error {
11515	return nil
11516}
11517
11518func (s *ForbiddenException) Error() string {
11519	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11520}
11521
11522// Status code returns the HTTP status code for the request's response error.
11523func (s *ForbiddenException) StatusCode() int {
11524	return s.RespMetadata.StatusCode
11525}
11526
11527// RequestID returns the service's response RequestID for request.
11528func (s *ForbiddenException) RequestID() string {
11529	return s.RespMetadata.RequestID
11530}
11531
11532// Frame Capture Group Settings
11533type FrameCaptureGroupSettings struct {
11534	_ struct{} `type:"structure"`
11535
11536	// The destination for the frame capture files. Either the URI for an Amazon
11537	// S3 bucket and object, plus a file name prefix (for example, s3ssl://sportsDelivery/highlights/20180820/curling_)
11538	// or the URI for a MediaStore container, plus a file name prefix (for example,
11539	// mediastoressl://sportsDelivery/20180820/curling_). The final file names consist
11540	// of the prefix from the destination field (for example, "curling_") + name
11541	// modifier + the counter (5 digits, starting from 00001) + extension (which
11542	// is always .jpg). For example, curlingLow.00001.jpg
11543	//
11544	// Destination is a required field
11545	Destination *OutputLocationRef `locationName:"destination" type:"structure" required:"true"`
11546}
11547
11548// String returns the string representation
11549func (s FrameCaptureGroupSettings) String() string {
11550	return awsutil.Prettify(s)
11551}
11552
11553// GoString returns the string representation
11554func (s FrameCaptureGroupSettings) GoString() string {
11555	return s.String()
11556}
11557
11558// Validate inspects the fields of the type to determine if they are valid.
11559func (s *FrameCaptureGroupSettings) Validate() error {
11560	invalidParams := request.ErrInvalidParams{Context: "FrameCaptureGroupSettings"}
11561	if s.Destination == nil {
11562		invalidParams.Add(request.NewErrParamRequired("Destination"))
11563	}
11564
11565	if invalidParams.Len() > 0 {
11566		return invalidParams
11567	}
11568	return nil
11569}
11570
11571// SetDestination sets the Destination field's value.
11572func (s *FrameCaptureGroupSettings) SetDestination(v *OutputLocationRef) *FrameCaptureGroupSettings {
11573	s.Destination = v
11574	return s
11575}
11576
11577// Frame Capture Output Settings
11578type FrameCaptureOutputSettings struct {
11579	_ struct{} `type:"structure"`
11580
11581	// Required if the output group contains more than one output. This modifier
11582	// forms part of the output file name.
11583	NameModifier *string `locationName:"nameModifier" type:"string"`
11584}
11585
11586// String returns the string representation
11587func (s FrameCaptureOutputSettings) String() string {
11588	return awsutil.Prettify(s)
11589}
11590
11591// GoString returns the string representation
11592func (s FrameCaptureOutputSettings) GoString() string {
11593	return s.String()
11594}
11595
11596// SetNameModifier sets the NameModifier field's value.
11597func (s *FrameCaptureOutputSettings) SetNameModifier(v string) *FrameCaptureOutputSettings {
11598	s.NameModifier = &v
11599	return s
11600}
11601
11602// Frame Capture Settings
11603type FrameCaptureSettings struct {
11604	_ struct{} `type:"structure"`
11605
11606	// The frequency at which to capture frames for inclusion in the output. May
11607	// be specified in either seconds or milliseconds, as specified by captureIntervalUnits.
11608	//
11609	// CaptureInterval is a required field
11610	CaptureInterval *int64 `locationName:"captureInterval" min:"1" type:"integer" required:"true"`
11611
11612	// Unit for the frame capture interval.
11613	CaptureIntervalUnits *string `locationName:"captureIntervalUnits" type:"string" enum:"FrameCaptureIntervalUnit"`
11614}
11615
11616// String returns the string representation
11617func (s FrameCaptureSettings) String() string {
11618	return awsutil.Prettify(s)
11619}
11620
11621// GoString returns the string representation
11622func (s FrameCaptureSettings) GoString() string {
11623	return s.String()
11624}
11625
11626// Validate inspects the fields of the type to determine if they are valid.
11627func (s *FrameCaptureSettings) Validate() error {
11628	invalidParams := request.ErrInvalidParams{Context: "FrameCaptureSettings"}
11629	if s.CaptureInterval == nil {
11630		invalidParams.Add(request.NewErrParamRequired("CaptureInterval"))
11631	}
11632	if s.CaptureInterval != nil && *s.CaptureInterval < 1 {
11633		invalidParams.Add(request.NewErrParamMinValue("CaptureInterval", 1))
11634	}
11635
11636	if invalidParams.Len() > 0 {
11637		return invalidParams
11638	}
11639	return nil
11640}
11641
11642// SetCaptureInterval sets the CaptureInterval field's value.
11643func (s *FrameCaptureSettings) SetCaptureInterval(v int64) *FrameCaptureSettings {
11644	s.CaptureInterval = &v
11645	return s
11646}
11647
11648// SetCaptureIntervalUnits sets the CaptureIntervalUnits field's value.
11649func (s *FrameCaptureSettings) SetCaptureIntervalUnits(v string) *FrameCaptureSettings {
11650	s.CaptureIntervalUnits = &v
11651	return s
11652}
11653
11654type GatewayTimeoutException struct {
11655	_            struct{}                  `type:"structure"`
11656	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11657
11658	Message_ *string `locationName:"message" type:"string"`
11659}
11660
11661// String returns the string representation
11662func (s GatewayTimeoutException) String() string {
11663	return awsutil.Prettify(s)
11664}
11665
11666// GoString returns the string representation
11667func (s GatewayTimeoutException) GoString() string {
11668	return s.String()
11669}
11670
11671func newErrorGatewayTimeoutException(v protocol.ResponseMetadata) error {
11672	return &GatewayTimeoutException{
11673		RespMetadata: v,
11674	}
11675}
11676
11677// Code returns the exception type name.
11678func (s *GatewayTimeoutException) Code() string {
11679	return "GatewayTimeoutException"
11680}
11681
11682// Message returns the exception's message.
11683func (s *GatewayTimeoutException) Message() string {
11684	if s.Message_ != nil {
11685		return *s.Message_
11686	}
11687	return ""
11688}
11689
11690// OrigErr always returns nil, satisfies awserr.Error interface.
11691func (s *GatewayTimeoutException) OrigErr() error {
11692	return nil
11693}
11694
11695func (s *GatewayTimeoutException) Error() string {
11696	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11697}
11698
11699// Status code returns the HTTP status code for the request's response error.
11700func (s *GatewayTimeoutException) StatusCode() int {
11701	return s.RespMetadata.StatusCode
11702}
11703
11704// RequestID returns the service's response RequestID for request.
11705func (s *GatewayTimeoutException) RequestID() string {
11706	return s.RespMetadata.RequestID
11707}
11708
11709// Global Configuration
11710type GlobalConfiguration struct {
11711	_ struct{} `type:"structure"`
11712
11713	// Value to set the initial audio gain for the Live Event.
11714	InitialAudioGain *int64 `locationName:"initialAudioGain" type:"integer"`
11715
11716	// Indicates the action to take when the current input completes (e.g. end-of-file).
11717	// When switchAndLoopInputs is configured the encoder will restart at the beginning
11718	// of the first input. When "none" is configured the encoder will transcode
11719	// either black, a solid color, or a user specified slate images per the "Input
11720	// Loss Behavior" configuration until the next input switch occurs (which is
11721	// controlled through the Channel Schedule API).
11722	InputEndAction *string `locationName:"inputEndAction" type:"string" enum:"GlobalConfigurationInputEndAction"`
11723
11724	// Settings for system actions when input is lost.
11725	InputLossBehavior *InputLossBehavior `locationName:"inputLossBehavior" type:"structure"`
11726
11727	// Indicates how MediaLive pipelines are synchronized.PIPELINE_LOCKING - MediaLive
11728	// will attempt to synchronize the output of each pipeline to the other.EPOCH_LOCKING
11729	// - MediaLive will attempt to synchronize the output of each pipeline to the
11730	// Unix epoch.
11731	OutputLockingMode *string `locationName:"outputLockingMode" type:"string" enum:"GlobalConfigurationOutputLockingMode"`
11732
11733	// Indicates whether the rate of frames emitted by the Live encoder should be
11734	// paced by its system clock (which optionally may be locked to another source
11735	// via NTP) or should be locked to the clock of the source that is providing
11736	// the input stream.
11737	OutputTimingSource *string `locationName:"outputTimingSource" type:"string" enum:"GlobalConfigurationOutputTimingSource"`
11738
11739	// Adjusts video input buffer for streams with very low video framerates. This
11740	// is commonly set to enabled for music channels with less than one video frame
11741	// per second.
11742	SupportLowFramerateInputs *string `locationName:"supportLowFramerateInputs" type:"string" enum:"GlobalConfigurationLowFramerateInputs"`
11743}
11744
11745// String returns the string representation
11746func (s GlobalConfiguration) String() string {
11747	return awsutil.Prettify(s)
11748}
11749
11750// GoString returns the string representation
11751func (s GlobalConfiguration) GoString() string {
11752	return s.String()
11753}
11754
11755// Validate inspects the fields of the type to determine if they are valid.
11756func (s *GlobalConfiguration) Validate() error {
11757	invalidParams := request.ErrInvalidParams{Context: "GlobalConfiguration"}
11758	if s.InitialAudioGain != nil && *s.InitialAudioGain < -60 {
11759		invalidParams.Add(request.NewErrParamMinValue("InitialAudioGain", -60))
11760	}
11761	if s.InputLossBehavior != nil {
11762		if err := s.InputLossBehavior.Validate(); err != nil {
11763			invalidParams.AddNested("InputLossBehavior", err.(request.ErrInvalidParams))
11764		}
11765	}
11766
11767	if invalidParams.Len() > 0 {
11768		return invalidParams
11769	}
11770	return nil
11771}
11772
11773// SetInitialAudioGain sets the InitialAudioGain field's value.
11774func (s *GlobalConfiguration) SetInitialAudioGain(v int64) *GlobalConfiguration {
11775	s.InitialAudioGain = &v
11776	return s
11777}
11778
11779// SetInputEndAction sets the InputEndAction field's value.
11780func (s *GlobalConfiguration) SetInputEndAction(v string) *GlobalConfiguration {
11781	s.InputEndAction = &v
11782	return s
11783}
11784
11785// SetInputLossBehavior sets the InputLossBehavior field's value.
11786func (s *GlobalConfiguration) SetInputLossBehavior(v *InputLossBehavior) *GlobalConfiguration {
11787	s.InputLossBehavior = v
11788	return s
11789}
11790
11791// SetOutputLockingMode sets the OutputLockingMode field's value.
11792func (s *GlobalConfiguration) SetOutputLockingMode(v string) *GlobalConfiguration {
11793	s.OutputLockingMode = &v
11794	return s
11795}
11796
11797// SetOutputTimingSource sets the OutputTimingSource field's value.
11798func (s *GlobalConfiguration) SetOutputTimingSource(v string) *GlobalConfiguration {
11799	s.OutputTimingSource = &v
11800	return s
11801}
11802
11803// SetSupportLowFramerateInputs sets the SupportLowFramerateInputs field's value.
11804func (s *GlobalConfiguration) SetSupportLowFramerateInputs(v string) *GlobalConfiguration {
11805	s.SupportLowFramerateInputs = &v
11806	return s
11807}
11808
11809// H264 Color Space Settings
11810type H264ColorSpaceSettings struct {
11811	_ struct{} `type:"structure"`
11812
11813	// Passthrough applies no color space conversion to the output
11814	ColorSpacePassthroughSettings *ColorSpacePassthroughSettings `locationName:"colorSpacePassthroughSettings" type:"structure"`
11815
11816	// Rec601 Settings
11817	Rec601Settings *Rec601Settings `locationName:"rec601Settings" type:"structure"`
11818
11819	// Rec709 Settings
11820	Rec709Settings *Rec709Settings `locationName:"rec709Settings" type:"structure"`
11821}
11822
11823// String returns the string representation
11824func (s H264ColorSpaceSettings) String() string {
11825	return awsutil.Prettify(s)
11826}
11827
11828// GoString returns the string representation
11829func (s H264ColorSpaceSettings) GoString() string {
11830	return s.String()
11831}
11832
11833// SetColorSpacePassthroughSettings sets the ColorSpacePassthroughSettings field's value.
11834func (s *H264ColorSpaceSettings) SetColorSpacePassthroughSettings(v *ColorSpacePassthroughSettings) *H264ColorSpaceSettings {
11835	s.ColorSpacePassthroughSettings = v
11836	return s
11837}
11838
11839// SetRec601Settings sets the Rec601Settings field's value.
11840func (s *H264ColorSpaceSettings) SetRec601Settings(v *Rec601Settings) *H264ColorSpaceSettings {
11841	s.Rec601Settings = v
11842	return s
11843}
11844
11845// SetRec709Settings sets the Rec709Settings field's value.
11846func (s *H264ColorSpaceSettings) SetRec709Settings(v *Rec709Settings) *H264ColorSpaceSettings {
11847	s.Rec709Settings = v
11848	return s
11849}
11850
11851// H264 Filter Settings
11852type H264FilterSettings struct {
11853	_ struct{} `type:"structure"`
11854
11855	// Temporal Filter Settings
11856	TemporalFilterSettings *TemporalFilterSettings `locationName:"temporalFilterSettings" type:"structure"`
11857}
11858
11859// String returns the string representation
11860func (s H264FilterSettings) String() string {
11861	return awsutil.Prettify(s)
11862}
11863
11864// GoString returns the string representation
11865func (s H264FilterSettings) GoString() string {
11866	return s.String()
11867}
11868
11869// SetTemporalFilterSettings sets the TemporalFilterSettings field's value.
11870func (s *H264FilterSettings) SetTemporalFilterSettings(v *TemporalFilterSettings) *H264FilterSettings {
11871	s.TemporalFilterSettings = v
11872	return s
11873}
11874
11875// H264 Settings
11876type H264Settings struct {
11877	_ struct{} `type:"structure"`
11878
11879	// Adaptive quantization. Allows intra-frame quantizers to vary to improve visual
11880	// quality.
11881	AdaptiveQuantization *string `locationName:"adaptiveQuantization" type:"string" enum:"H264AdaptiveQuantization"`
11882
11883	// Indicates that AFD values will be written into the output stream. If afdSignaling
11884	// is "auto", the system will try to preserve the input AFD value (in cases
11885	// where multiple AFD values are valid). If set to "fixed", the AFD value will
11886	// be the value configured in the fixedAfd parameter.
11887	AfdSignaling *string `locationName:"afdSignaling" type:"string" enum:"AfdSignaling"`
11888
11889	// Average bitrate in bits/second. Required when the rate control mode is VBR
11890	// or CBR. Not used for QVBR. In an MS Smooth output group, each output must
11891	// have a unique value when its bitrate is rounded down to the nearest multiple
11892	// of 1000.
11893	Bitrate *int64 `locationName:"bitrate" min:"1000" type:"integer"`
11894
11895	// Percentage of the buffer that should initially be filled (HRD buffer model).
11896	BufFillPct *int64 `locationName:"bufFillPct" type:"integer"`
11897
11898	// Size of buffer (HRD buffer model) in bits.
11899	BufSize *int64 `locationName:"bufSize" type:"integer"`
11900
11901	// Includes colorspace metadata in the output.
11902	ColorMetadata *string `locationName:"colorMetadata" type:"string" enum:"H264ColorMetadata"`
11903
11904	// Color Space settings
11905	ColorSpaceSettings *H264ColorSpaceSettings `locationName:"colorSpaceSettings" type:"structure"`
11906
11907	// Entropy encoding mode. Use cabac (must be in Main or High profile) or cavlc.
11908	EntropyEncoding *string `locationName:"entropyEncoding" type:"string" enum:"H264EntropyEncoding"`
11909
11910	// Optional filters that you can apply to an encode.
11911	FilterSettings *H264FilterSettings `locationName:"filterSettings" type:"structure"`
11912
11913	// Four bit AFD value to write on all frames of video in the output stream.
11914	// Only valid when afdSignaling is set to 'Fixed'.
11915	FixedAfd *string `locationName:"fixedAfd" type:"string" enum:"FixedAfd"`
11916
11917	// If set to enabled, adjust quantization within each frame to reduce flicker
11918	// or 'pop' on I-frames.
11919	FlickerAq *string `locationName:"flickerAq" type:"string" enum:"H264FlickerAq"`
11920
11921	// This setting applies only when scan type is "interlaced." It controls whether
11922	// coding is performed on a field basis or on a frame basis. (When the video
11923	// is progressive, the coding is always performed on a frame basis.)enabled:
11924	// Force MediaLive to code on a field basis, so that odd and even sets of fields
11925	// are coded separately.disabled: Code the two sets of fields separately (on
11926	// a field basis) or together (on a frame basis using PAFF), depending on what
11927	// is most appropriate for the content.
11928	ForceFieldPictures *string `locationName:"forceFieldPictures" type:"string" enum:"H264ForceFieldPictures"`
11929
11930	// This field indicates how the output video frame rate is specified. If "specified"
11931	// is selected then the output video frame rate is determined by framerateNumerator
11932	// and framerateDenominator, else if "initializeFromSource" is selected then
11933	// the output video frame rate will be set equal to the input video frame rate
11934	// of the first input.
11935	FramerateControl *string `locationName:"framerateControl" type:"string" enum:"H264FramerateControl"`
11936
11937	// Framerate denominator.
11938	FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer"`
11939
11940	// Framerate numerator - framerate is a fraction, e.g. 24000 / 1001 = 23.976
11941	// fps.
11942	FramerateNumerator *int64 `locationName:"framerateNumerator" min:"1" type:"integer"`
11943
11944	// If enabled, use reference B frames for GOP structures that have B frames
11945	// > 1.
11946	GopBReference *string `locationName:"gopBReference" type:"string" enum:"H264GopBReference"`
11947
11948	// Frequency of closed GOPs. In streaming applications, it is recommended that
11949	// this be set to 1 so a decoder joining mid-stream will receive an IDR frame
11950	// as quickly as possible. Setting this value to 0 will break output segmenting.
11951	GopClosedCadence *int64 `locationName:"gopClosedCadence" type:"integer"`
11952
11953	// Number of B-frames between reference frames.
11954	GopNumBFrames *int64 `locationName:"gopNumBFrames" type:"integer"`
11955
11956	// GOP size (keyframe interval) in units of either frames or seconds per gopSizeUnits.If
11957	// gopSizeUnits is frames, gopSize must be an integer and must be greater than
11958	// or equal to 1.If gopSizeUnits is seconds, gopSize must be greater than 0,
11959	// but need not be an integer.
11960	GopSize *float64 `locationName:"gopSize" type:"double"`
11961
11962	// Indicates if the gopSize is specified in frames or seconds. If seconds the
11963	// system will convert the gopSize into a frame count at run time.
11964	GopSizeUnits *string `locationName:"gopSizeUnits" type:"string" enum:"H264GopSizeUnits"`
11965
11966	// H.264 Level.
11967	Level *string `locationName:"level" type:"string" enum:"H264Level"`
11968
11969	// Amount of lookahead. A value of low can decrease latency and memory usage,
11970	// while high can produce better quality for certain content.
11971	LookAheadRateControl *string `locationName:"lookAheadRateControl" type:"string" enum:"H264LookAheadRateControl"`
11972
11973	// For QVBR: See the tooltip for Quality levelFor VBR: Set the maximum bitrate
11974	// in order to accommodate expected spikes in the complexity of the video.
11975	MaxBitrate *int64 `locationName:"maxBitrate" min:"1000" type:"integer"`
11976
11977	// Only meaningful if sceneChangeDetect is set to enabled. Defaults to 5 if
11978	// multiplex rate control is used. Enforces separation between repeated (cadence)
11979	// I-frames and I-frames inserted by Scene Change Detection. If a scene change
11980	// I-frame is within I-interval frames of a cadence I-frame, the GOP is shrunk
11981	// and/or stretched to the scene change I-frame. GOP stretch requires enabling
11982	// lookahead as well as setting I-interval. The normal cadence resumes for the
11983	// next GOP. Note: Maximum GOP stretch = GOP size + Min-I-interval - 1
11984	MinIInterval *int64 `locationName:"minIInterval" type:"integer"`
11985
11986	// Number of reference frames to use. The encoder may use more than requested
11987	// if using B-frames and/or interlaced encoding.
11988	NumRefFrames *int64 `locationName:"numRefFrames" min:"1" type:"integer"`
11989
11990	// This field indicates how the output pixel aspect ratio is specified. If "specified"
11991	// is selected then the output video pixel aspect ratio is determined by parNumerator
11992	// and parDenominator, else if "initializeFromSource" is selected then the output
11993	// pixsel aspect ratio will be set equal to the input video pixel aspect ratio
11994	// of the first input.
11995	ParControl *string `locationName:"parControl" type:"string" enum:"H264ParControl"`
11996
11997	// Pixel Aspect Ratio denominator.
11998	ParDenominator *int64 `locationName:"parDenominator" min:"1" type:"integer"`
11999
12000	// Pixel Aspect Ratio numerator.
12001	ParNumerator *int64 `locationName:"parNumerator" type:"integer"`
12002
12003	// H.264 Profile.
12004	Profile *string `locationName:"profile" type:"string" enum:"H264Profile"`
12005
12006	// Leave as STANDARD_QUALITY or choose a different value (which might result
12007	// in additional costs to run the channel).- ENHANCED_QUALITY: Produces a slightly
12008	// better video quality without an increase in the bitrate. Has an effect only
12009	// when the Rate control mode is QVBR or CBR. If this channel is in a MediaLive
12010	// multiplex, the value must be ENHANCED_QUALITY.- STANDARD_QUALITY: Valid for
12011	// any Rate control mode.
12012	QualityLevel *string `locationName:"qualityLevel" type:"string" enum:"H264QualityLevel"`
12013
12014	// Controls the target quality for the video encode. Applies only when the rate
12015	// control mode is QVBR. Set values for the QVBR quality level field and Max
12016	// bitrate field that suit your most important viewing devices. Recommended
12017	// values are:- Primary screen: Quality level: 8 to 10. Max bitrate: 4M- PC
12018	// or tablet: Quality level: 7. Max bitrate: 1.5M to 3M- Smartphone: Quality
12019	// level: 6. Max bitrate: 1M to 1.5M
12020	QvbrQualityLevel *int64 `locationName:"qvbrQualityLevel" min:"1" type:"integer"`
12021
12022	// Rate control mode.QVBR: Quality will match the specified quality level except
12023	// when it is constrained by themaximum bitrate. Recommended if you or your
12024	// viewers pay for bandwidth.VBR: Quality and bitrate vary, depending on the
12025	// video complexity. Recommended instead of QVBRif you want to maintain a specific
12026	// average bitrate over the duration of the channel.CBR: Quality varies, depending
12027	// on the video complexity. Recommended only if you distributeyour assets to
12028	// devices that cannot handle variable bitrates.Multiplex: This rate control
12029	// mode is only supported (and is required) when the video is beingdelivered
12030	// to a MediaLive Multiplex in which case the rate control configuration is
12031	// controlledby the properties within the Multiplex Program.
12032	RateControlMode *string `locationName:"rateControlMode" type:"string" enum:"H264RateControlMode"`
12033
12034	// Sets the scan type of the output to progressive or top-field-first interlaced.
12035	ScanType *string `locationName:"scanType" type:"string" enum:"H264ScanType"`
12036
12037	// Scene change detection.- On: inserts I-frames when scene change is detected.-
12038	// Off: does not force an I-frame when scene change is detected.
12039	SceneChangeDetect *string `locationName:"sceneChangeDetect" type:"string" enum:"H264SceneChangeDetect"`
12040
12041	// Number of slices per picture. Must be less than or equal to the number of
12042	// macroblock rows for progressive pictures, and less than or equal to half
12043	// the number of macroblock rows for interlaced pictures.This field is optional;
12044	// when no value is specified the encoder will choose the number of slices based
12045	// on encode resolution.
12046	Slices *int64 `locationName:"slices" min:"1" type:"integer"`
12047
12048	// Softness. Selects quantizer matrix, larger values reduce high-frequency content
12049	// in the encoded image.
12050	Softness *int64 `locationName:"softness" type:"integer"`
12051
12052	// If set to enabled, adjust quantization within each frame based on spatial
12053	// variation of content complexity.
12054	SpatialAq *string `locationName:"spatialAq" type:"string" enum:"H264SpatialAq"`
12055
12056	// If set to fixed, use gopNumBFrames B-frames per sub-GOP. If set to dynamic,
12057	// optimize the number of B-frames used for each sub-GOP to improve visual quality.
12058	SubgopLength *string `locationName:"subgopLength" type:"string" enum:"H264SubGopLength"`
12059
12060	// Produces a bitstream compliant with SMPTE RP-2027.
12061	Syntax *string `locationName:"syntax" type:"string" enum:"H264Syntax"`
12062
12063	// If set to enabled, adjust quantization within each frame based on temporal
12064	// variation of content complexity.
12065	TemporalAq *string `locationName:"temporalAq" type:"string" enum:"H264TemporalAq"`
12066
12067	// Determines how timecodes should be inserted into the video elementary stream.-
12068	// 'disabled': Do not include timecodes- 'picTimingSei': Pass through picture
12069	// timing SEI messages from the source specified in Timecode Config
12070	TimecodeInsertion *string `locationName:"timecodeInsertion" type:"string" enum:"H264TimecodeInsertionBehavior"`
12071}
12072
12073// String returns the string representation
12074func (s H264Settings) String() string {
12075	return awsutil.Prettify(s)
12076}
12077
12078// GoString returns the string representation
12079func (s H264Settings) GoString() string {
12080	return s.String()
12081}
12082
12083// Validate inspects the fields of the type to determine if they are valid.
12084func (s *H264Settings) Validate() error {
12085	invalidParams := request.ErrInvalidParams{Context: "H264Settings"}
12086	if s.Bitrate != nil && *s.Bitrate < 1000 {
12087		invalidParams.Add(request.NewErrParamMinValue("Bitrate", 1000))
12088	}
12089	if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 {
12090		invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1))
12091	}
12092	if s.FramerateNumerator != nil && *s.FramerateNumerator < 1 {
12093		invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 1))
12094	}
12095	if s.MaxBitrate != nil && *s.MaxBitrate < 1000 {
12096		invalidParams.Add(request.NewErrParamMinValue("MaxBitrate", 1000))
12097	}
12098	if s.NumRefFrames != nil && *s.NumRefFrames < 1 {
12099		invalidParams.Add(request.NewErrParamMinValue("NumRefFrames", 1))
12100	}
12101	if s.ParDenominator != nil && *s.ParDenominator < 1 {
12102		invalidParams.Add(request.NewErrParamMinValue("ParDenominator", 1))
12103	}
12104	if s.QvbrQualityLevel != nil && *s.QvbrQualityLevel < 1 {
12105		invalidParams.Add(request.NewErrParamMinValue("QvbrQualityLevel", 1))
12106	}
12107	if s.Slices != nil && *s.Slices < 1 {
12108		invalidParams.Add(request.NewErrParamMinValue("Slices", 1))
12109	}
12110
12111	if invalidParams.Len() > 0 {
12112		return invalidParams
12113	}
12114	return nil
12115}
12116
12117// SetAdaptiveQuantization sets the AdaptiveQuantization field's value.
12118func (s *H264Settings) SetAdaptiveQuantization(v string) *H264Settings {
12119	s.AdaptiveQuantization = &v
12120	return s
12121}
12122
12123// SetAfdSignaling sets the AfdSignaling field's value.
12124func (s *H264Settings) SetAfdSignaling(v string) *H264Settings {
12125	s.AfdSignaling = &v
12126	return s
12127}
12128
12129// SetBitrate sets the Bitrate field's value.
12130func (s *H264Settings) SetBitrate(v int64) *H264Settings {
12131	s.Bitrate = &v
12132	return s
12133}
12134
12135// SetBufFillPct sets the BufFillPct field's value.
12136func (s *H264Settings) SetBufFillPct(v int64) *H264Settings {
12137	s.BufFillPct = &v
12138	return s
12139}
12140
12141// SetBufSize sets the BufSize field's value.
12142func (s *H264Settings) SetBufSize(v int64) *H264Settings {
12143	s.BufSize = &v
12144	return s
12145}
12146
12147// SetColorMetadata sets the ColorMetadata field's value.
12148func (s *H264Settings) SetColorMetadata(v string) *H264Settings {
12149	s.ColorMetadata = &v
12150	return s
12151}
12152
12153// SetColorSpaceSettings sets the ColorSpaceSettings field's value.
12154func (s *H264Settings) SetColorSpaceSettings(v *H264ColorSpaceSettings) *H264Settings {
12155	s.ColorSpaceSettings = v
12156	return s
12157}
12158
12159// SetEntropyEncoding sets the EntropyEncoding field's value.
12160func (s *H264Settings) SetEntropyEncoding(v string) *H264Settings {
12161	s.EntropyEncoding = &v
12162	return s
12163}
12164
12165// SetFilterSettings sets the FilterSettings field's value.
12166func (s *H264Settings) SetFilterSettings(v *H264FilterSettings) *H264Settings {
12167	s.FilterSettings = v
12168	return s
12169}
12170
12171// SetFixedAfd sets the FixedAfd field's value.
12172func (s *H264Settings) SetFixedAfd(v string) *H264Settings {
12173	s.FixedAfd = &v
12174	return s
12175}
12176
12177// SetFlickerAq sets the FlickerAq field's value.
12178func (s *H264Settings) SetFlickerAq(v string) *H264Settings {
12179	s.FlickerAq = &v
12180	return s
12181}
12182
12183// SetForceFieldPictures sets the ForceFieldPictures field's value.
12184func (s *H264Settings) SetForceFieldPictures(v string) *H264Settings {
12185	s.ForceFieldPictures = &v
12186	return s
12187}
12188
12189// SetFramerateControl sets the FramerateControl field's value.
12190func (s *H264Settings) SetFramerateControl(v string) *H264Settings {
12191	s.FramerateControl = &v
12192	return s
12193}
12194
12195// SetFramerateDenominator sets the FramerateDenominator field's value.
12196func (s *H264Settings) SetFramerateDenominator(v int64) *H264Settings {
12197	s.FramerateDenominator = &v
12198	return s
12199}
12200
12201// SetFramerateNumerator sets the FramerateNumerator field's value.
12202func (s *H264Settings) SetFramerateNumerator(v int64) *H264Settings {
12203	s.FramerateNumerator = &v
12204	return s
12205}
12206
12207// SetGopBReference sets the GopBReference field's value.
12208func (s *H264Settings) SetGopBReference(v string) *H264Settings {
12209	s.GopBReference = &v
12210	return s
12211}
12212
12213// SetGopClosedCadence sets the GopClosedCadence field's value.
12214func (s *H264Settings) SetGopClosedCadence(v int64) *H264Settings {
12215	s.GopClosedCadence = &v
12216	return s
12217}
12218
12219// SetGopNumBFrames sets the GopNumBFrames field's value.
12220func (s *H264Settings) SetGopNumBFrames(v int64) *H264Settings {
12221	s.GopNumBFrames = &v
12222	return s
12223}
12224
12225// SetGopSize sets the GopSize field's value.
12226func (s *H264Settings) SetGopSize(v float64) *H264Settings {
12227	s.GopSize = &v
12228	return s
12229}
12230
12231// SetGopSizeUnits sets the GopSizeUnits field's value.
12232func (s *H264Settings) SetGopSizeUnits(v string) *H264Settings {
12233	s.GopSizeUnits = &v
12234	return s
12235}
12236
12237// SetLevel sets the Level field's value.
12238func (s *H264Settings) SetLevel(v string) *H264Settings {
12239	s.Level = &v
12240	return s
12241}
12242
12243// SetLookAheadRateControl sets the LookAheadRateControl field's value.
12244func (s *H264Settings) SetLookAheadRateControl(v string) *H264Settings {
12245	s.LookAheadRateControl = &v
12246	return s
12247}
12248
12249// SetMaxBitrate sets the MaxBitrate field's value.
12250func (s *H264Settings) SetMaxBitrate(v int64) *H264Settings {
12251	s.MaxBitrate = &v
12252	return s
12253}
12254
12255// SetMinIInterval sets the MinIInterval field's value.
12256func (s *H264Settings) SetMinIInterval(v int64) *H264Settings {
12257	s.MinIInterval = &v
12258	return s
12259}
12260
12261// SetNumRefFrames sets the NumRefFrames field's value.
12262func (s *H264Settings) SetNumRefFrames(v int64) *H264Settings {
12263	s.NumRefFrames = &v
12264	return s
12265}
12266
12267// SetParControl sets the ParControl field's value.
12268func (s *H264Settings) SetParControl(v string) *H264Settings {
12269	s.ParControl = &v
12270	return s
12271}
12272
12273// SetParDenominator sets the ParDenominator field's value.
12274func (s *H264Settings) SetParDenominator(v int64) *H264Settings {
12275	s.ParDenominator = &v
12276	return s
12277}
12278
12279// SetParNumerator sets the ParNumerator field's value.
12280func (s *H264Settings) SetParNumerator(v int64) *H264Settings {
12281	s.ParNumerator = &v
12282	return s
12283}
12284
12285// SetProfile sets the Profile field's value.
12286func (s *H264Settings) SetProfile(v string) *H264Settings {
12287	s.Profile = &v
12288	return s
12289}
12290
12291// SetQualityLevel sets the QualityLevel field's value.
12292func (s *H264Settings) SetQualityLevel(v string) *H264Settings {
12293	s.QualityLevel = &v
12294	return s
12295}
12296
12297// SetQvbrQualityLevel sets the QvbrQualityLevel field's value.
12298func (s *H264Settings) SetQvbrQualityLevel(v int64) *H264Settings {
12299	s.QvbrQualityLevel = &v
12300	return s
12301}
12302
12303// SetRateControlMode sets the RateControlMode field's value.
12304func (s *H264Settings) SetRateControlMode(v string) *H264Settings {
12305	s.RateControlMode = &v
12306	return s
12307}
12308
12309// SetScanType sets the ScanType field's value.
12310func (s *H264Settings) SetScanType(v string) *H264Settings {
12311	s.ScanType = &v
12312	return s
12313}
12314
12315// SetSceneChangeDetect sets the SceneChangeDetect field's value.
12316func (s *H264Settings) SetSceneChangeDetect(v string) *H264Settings {
12317	s.SceneChangeDetect = &v
12318	return s
12319}
12320
12321// SetSlices sets the Slices field's value.
12322func (s *H264Settings) SetSlices(v int64) *H264Settings {
12323	s.Slices = &v
12324	return s
12325}
12326
12327// SetSoftness sets the Softness field's value.
12328func (s *H264Settings) SetSoftness(v int64) *H264Settings {
12329	s.Softness = &v
12330	return s
12331}
12332
12333// SetSpatialAq sets the SpatialAq field's value.
12334func (s *H264Settings) SetSpatialAq(v string) *H264Settings {
12335	s.SpatialAq = &v
12336	return s
12337}
12338
12339// SetSubgopLength sets the SubgopLength field's value.
12340func (s *H264Settings) SetSubgopLength(v string) *H264Settings {
12341	s.SubgopLength = &v
12342	return s
12343}
12344
12345// SetSyntax sets the Syntax field's value.
12346func (s *H264Settings) SetSyntax(v string) *H264Settings {
12347	s.Syntax = &v
12348	return s
12349}
12350
12351// SetTemporalAq sets the TemporalAq field's value.
12352func (s *H264Settings) SetTemporalAq(v string) *H264Settings {
12353	s.TemporalAq = &v
12354	return s
12355}
12356
12357// SetTimecodeInsertion sets the TimecodeInsertion field's value.
12358func (s *H264Settings) SetTimecodeInsertion(v string) *H264Settings {
12359	s.TimecodeInsertion = &v
12360	return s
12361}
12362
12363// H265 Color Space Settings
12364type H265ColorSpaceSettings struct {
12365	_ struct{} `type:"structure"`
12366
12367	// Passthrough applies no color space conversion to the output
12368	ColorSpacePassthroughSettings *ColorSpacePassthroughSettings `locationName:"colorSpacePassthroughSettings" type:"structure"`
12369
12370	// Hdr10 Settings
12371	Hdr10Settings *Hdr10Settings `locationName:"hdr10Settings" type:"structure"`
12372
12373	// Rec601 Settings
12374	Rec601Settings *Rec601Settings `locationName:"rec601Settings" type:"structure"`
12375
12376	// Rec709 Settings
12377	Rec709Settings *Rec709Settings `locationName:"rec709Settings" type:"structure"`
12378}
12379
12380// String returns the string representation
12381func (s H265ColorSpaceSettings) String() string {
12382	return awsutil.Prettify(s)
12383}
12384
12385// GoString returns the string representation
12386func (s H265ColorSpaceSettings) GoString() string {
12387	return s.String()
12388}
12389
12390// SetColorSpacePassthroughSettings sets the ColorSpacePassthroughSettings field's value.
12391func (s *H265ColorSpaceSettings) SetColorSpacePassthroughSettings(v *ColorSpacePassthroughSettings) *H265ColorSpaceSettings {
12392	s.ColorSpacePassthroughSettings = v
12393	return s
12394}
12395
12396// SetHdr10Settings sets the Hdr10Settings field's value.
12397func (s *H265ColorSpaceSettings) SetHdr10Settings(v *Hdr10Settings) *H265ColorSpaceSettings {
12398	s.Hdr10Settings = v
12399	return s
12400}
12401
12402// SetRec601Settings sets the Rec601Settings field's value.
12403func (s *H265ColorSpaceSettings) SetRec601Settings(v *Rec601Settings) *H265ColorSpaceSettings {
12404	s.Rec601Settings = v
12405	return s
12406}
12407
12408// SetRec709Settings sets the Rec709Settings field's value.
12409func (s *H265ColorSpaceSettings) SetRec709Settings(v *Rec709Settings) *H265ColorSpaceSettings {
12410	s.Rec709Settings = v
12411	return s
12412}
12413
12414// H265 Settings
12415type H265Settings struct {
12416	_ struct{} `type:"structure"`
12417
12418	// Adaptive quantization. Allows intra-frame quantizers to vary to improve visual
12419	// quality.
12420	AdaptiveQuantization *string `locationName:"adaptiveQuantization" type:"string" enum:"H265AdaptiveQuantization"`
12421
12422	// Indicates that AFD values will be written into the output stream. If afdSignaling
12423	// is "auto", the system will try to preserve the input AFD value (in cases
12424	// where multiple AFD values are valid). If set to "fixed", the AFD value will
12425	// be the value configured in the fixedAfd parameter.
12426	AfdSignaling *string `locationName:"afdSignaling" type:"string" enum:"AfdSignaling"`
12427
12428	// Whether or not EML should insert an Alternative Transfer Function SEI message
12429	// to support backwards compatibility with non-HDR decoders and displays.
12430	AlternativeTransferFunction *string `locationName:"alternativeTransferFunction" type:"string" enum:"H265AlternativeTransferFunction"`
12431
12432	// Average bitrate in bits/second. Required when the rate control mode is VBR
12433	// or CBR. Not used for QVBR. In an MS Smooth output group, each output must
12434	// have a unique value when its bitrate is rounded down to the nearest multiple
12435	// of 1000.
12436	Bitrate *int64 `locationName:"bitrate" min:"100000" type:"integer"`
12437
12438	// Size of buffer (HRD buffer model) in bits.
12439	BufSize *int64 `locationName:"bufSize" min:"100000" type:"integer"`
12440
12441	// Includes colorspace metadata in the output.
12442	ColorMetadata *string `locationName:"colorMetadata" type:"string" enum:"H265ColorMetadata"`
12443
12444	// Color Space settings
12445	ColorSpaceSettings *H265ColorSpaceSettings `locationName:"colorSpaceSettings" type:"structure"`
12446
12447	// Four bit AFD value to write on all frames of video in the output stream.
12448	// Only valid when afdSignaling is set to 'Fixed'.
12449	FixedAfd *string `locationName:"fixedAfd" type:"string" enum:"FixedAfd"`
12450
12451	// If set to enabled, adjust quantization within each frame to reduce flicker
12452	// or 'pop' on I-frames.
12453	FlickerAq *string `locationName:"flickerAq" type:"string" enum:"H265FlickerAq"`
12454
12455	// Framerate denominator.
12456	//
12457	// FramerateDenominator is a required field
12458	FramerateDenominator *int64 `locationName:"framerateDenominator" min:"1" type:"integer" required:"true"`
12459
12460	// Framerate numerator - framerate is a fraction, e.g. 24000 / 1001 = 23.976
12461	// fps.
12462	//
12463	// FramerateNumerator is a required field
12464	FramerateNumerator *int64 `locationName:"framerateNumerator" min:"1" type:"integer" required:"true"`
12465
12466	// Frequency of closed GOPs. In streaming applications, it is recommended that
12467	// this be set to 1 so a decoder joining mid-stream will receive an IDR frame
12468	// as quickly as possible. Setting this value to 0 will break output segmenting.
12469	GopClosedCadence *int64 `locationName:"gopClosedCadence" type:"integer"`
12470
12471	// GOP size (keyframe interval) in units of either frames or seconds per gopSizeUnits.If
12472	// gopSizeUnits is frames, gopSize must be an integer and must be greater than
12473	// or equal to 1.If gopSizeUnits is seconds, gopSize must be greater than 0,
12474	// but need not be an integer.
12475	GopSize *float64 `locationName:"gopSize" type:"double"`
12476
12477	// Indicates if the gopSize is specified in frames or seconds. If seconds the
12478	// system will convert the gopSize into a frame count at run time.
12479	GopSizeUnits *string `locationName:"gopSizeUnits" type:"string" enum:"H265GopSizeUnits"`
12480
12481	// H.265 Level.
12482	Level *string `locationName:"level" type:"string" enum:"H265Level"`
12483
12484	// Amount of lookahead. A value of low can decrease latency and memory usage,
12485	// while high can produce better quality for certain content.
12486	LookAheadRateControl *string `locationName:"lookAheadRateControl" type:"string" enum:"H265LookAheadRateControl"`
12487
12488	// For QVBR: See the tooltip for Quality level
12489	MaxBitrate *int64 `locationName:"maxBitrate" min:"100000" type:"integer"`
12490
12491	// Only meaningful if sceneChangeDetect is set to enabled. Defaults to 5 if
12492	// multiplex rate control is used. Enforces separation between repeated (cadence)
12493	// I-frames and I-frames inserted by Scene Change Detection. If a scene change
12494	// I-frame is within I-interval frames of a cadence I-frame, the GOP is shrunk
12495	// and/or stretched to the scene change I-frame. GOP stretch requires enabling
12496	// lookahead as well as setting I-interval. The normal cadence resumes for the
12497	// next GOP. Note: Maximum GOP stretch = GOP size + Min-I-interval - 1
12498	MinIInterval *int64 `locationName:"minIInterval" type:"integer"`
12499
12500	// Pixel Aspect Ratio denominator.
12501	ParDenominator *int64 `locationName:"parDenominator" min:"1" type:"integer"`
12502
12503	// Pixel Aspect Ratio numerator.
12504	ParNumerator *int64 `locationName:"parNumerator" min:"1" type:"integer"`
12505
12506	// H.265 Profile.
12507	Profile *string `locationName:"profile" type:"string" enum:"H265Profile"`
12508
12509	// Controls the target quality for the video encode. Applies only when the rate
12510	// control mode is QVBR. Set values for the QVBR quality level field and Max
12511	// bitrate field that suit your most important viewing devices. Recommended
12512	// values are:- Primary screen: Quality level: 8 to 10. Max bitrate: 4M- PC
12513	// or tablet: Quality level: 7. Max bitrate: 1.5M to 3M- Smartphone: Quality
12514	// level: 6. Max bitrate: 1M to 1.5M
12515	QvbrQualityLevel *int64 `locationName:"qvbrQualityLevel" min:"1" type:"integer"`
12516
12517	// Rate control mode.QVBR: Quality will match the specified quality level except
12518	// when it is constrained by themaximum bitrate. Recommended if you or your
12519	// viewers pay for bandwidth.CBR: Quality varies, depending on the video complexity.
12520	// Recommended only if you distributeyour assets to devices that cannot handle
12521	// variable bitrates.
12522	RateControlMode *string `locationName:"rateControlMode" type:"string" enum:"H265RateControlMode"`
12523
12524	// Sets the scan type of the output to progressive or top-field-first interlaced.
12525	ScanType *string `locationName:"scanType" type:"string" enum:"H265ScanType"`
12526
12527	// Scene change detection.
12528	SceneChangeDetect *string `locationName:"sceneChangeDetect" type:"string" enum:"H265SceneChangeDetect"`
12529
12530	// Number of slices per picture. Must be less than or equal to the number of
12531	// macroblock rows for progressive pictures, and less than or equal to half
12532	// the number of macroblock rows for interlaced pictures.This field is optional;
12533	// when no value is specified the encoder will choose the number of slices based
12534	// on encode resolution.
12535	Slices *int64 `locationName:"slices" min:"1" type:"integer"`
12536
12537	// H.265 Tier.
12538	Tier *string `locationName:"tier" type:"string" enum:"H265Tier"`
12539
12540	// Determines how timecodes should be inserted into the video elementary stream.-
12541	// 'disabled': Do not include timecodes- 'picTimingSei': Pass through picture
12542	// timing SEI messages from the source specified in Timecode Config
12543	TimecodeInsertion *string `locationName:"timecodeInsertion" type:"string" enum:"H265TimecodeInsertionBehavior"`
12544}
12545
12546// String returns the string representation
12547func (s H265Settings) String() string {
12548	return awsutil.Prettify(s)
12549}
12550
12551// GoString returns the string representation
12552func (s H265Settings) GoString() string {
12553	return s.String()
12554}
12555
12556// Validate inspects the fields of the type to determine if they are valid.
12557func (s *H265Settings) Validate() error {
12558	invalidParams := request.ErrInvalidParams{Context: "H265Settings"}
12559	if s.Bitrate != nil && *s.Bitrate < 100000 {
12560		invalidParams.Add(request.NewErrParamMinValue("Bitrate", 100000))
12561	}
12562	if s.BufSize != nil && *s.BufSize < 100000 {
12563		invalidParams.Add(request.NewErrParamMinValue("BufSize", 100000))
12564	}
12565	if s.FramerateDenominator == nil {
12566		invalidParams.Add(request.NewErrParamRequired("FramerateDenominator"))
12567	}
12568	if s.FramerateDenominator != nil && *s.FramerateDenominator < 1 {
12569		invalidParams.Add(request.NewErrParamMinValue("FramerateDenominator", 1))
12570	}
12571	if s.FramerateNumerator == nil {
12572		invalidParams.Add(request.NewErrParamRequired("FramerateNumerator"))
12573	}
12574	if s.FramerateNumerator != nil && *s.FramerateNumerator < 1 {
12575		invalidParams.Add(request.NewErrParamMinValue("FramerateNumerator", 1))
12576	}
12577	if s.MaxBitrate != nil && *s.MaxBitrate < 100000 {
12578		invalidParams.Add(request.NewErrParamMinValue("MaxBitrate", 100000))
12579	}
12580	if s.ParDenominator != nil && *s.ParDenominator < 1 {
12581		invalidParams.Add(request.NewErrParamMinValue("ParDenominator", 1))
12582	}
12583	if s.ParNumerator != nil && *s.ParNumerator < 1 {
12584		invalidParams.Add(request.NewErrParamMinValue("ParNumerator", 1))
12585	}
12586	if s.QvbrQualityLevel != nil && *s.QvbrQualityLevel < 1 {
12587		invalidParams.Add(request.NewErrParamMinValue("QvbrQualityLevel", 1))
12588	}
12589	if s.Slices != nil && *s.Slices < 1 {
12590		invalidParams.Add(request.NewErrParamMinValue("Slices", 1))
12591	}
12592
12593	if invalidParams.Len() > 0 {
12594		return invalidParams
12595	}
12596	return nil
12597}
12598
12599// SetAdaptiveQuantization sets the AdaptiveQuantization field's value.
12600func (s *H265Settings) SetAdaptiveQuantization(v string) *H265Settings {
12601	s.AdaptiveQuantization = &v
12602	return s
12603}
12604
12605// SetAfdSignaling sets the AfdSignaling field's value.
12606func (s *H265Settings) SetAfdSignaling(v string) *H265Settings {
12607	s.AfdSignaling = &v
12608	return s
12609}
12610
12611// SetAlternativeTransferFunction sets the AlternativeTransferFunction field's value.
12612func (s *H265Settings) SetAlternativeTransferFunction(v string) *H265Settings {
12613	s.AlternativeTransferFunction = &v
12614	return s
12615}
12616
12617// SetBitrate sets the Bitrate field's value.
12618func (s *H265Settings) SetBitrate(v int64) *H265Settings {
12619	s.Bitrate = &v
12620	return s
12621}
12622
12623// SetBufSize sets the BufSize field's value.
12624func (s *H265Settings) SetBufSize(v int64) *H265Settings {
12625	s.BufSize = &v
12626	return s
12627}
12628
12629// SetColorMetadata sets the ColorMetadata field's value.
12630func (s *H265Settings) SetColorMetadata(v string) *H265Settings {
12631	s.ColorMetadata = &v
12632	return s
12633}
12634
12635// SetColorSpaceSettings sets the ColorSpaceSettings field's value.
12636func (s *H265Settings) SetColorSpaceSettings(v *H265ColorSpaceSettings) *H265Settings {
12637	s.ColorSpaceSettings = v
12638	return s
12639}
12640
12641// SetFixedAfd sets the FixedAfd field's value.
12642func (s *H265Settings) SetFixedAfd(v string) *H265Settings {
12643	s.FixedAfd = &v
12644	return s
12645}
12646
12647// SetFlickerAq sets the FlickerAq field's value.
12648func (s *H265Settings) SetFlickerAq(v string) *H265Settings {
12649	s.FlickerAq = &v
12650	return s
12651}
12652
12653// SetFramerateDenominator sets the FramerateDenominator field's value.
12654func (s *H265Settings) SetFramerateDenominator(v int64) *H265Settings {
12655	s.FramerateDenominator = &v
12656	return s
12657}
12658
12659// SetFramerateNumerator sets the FramerateNumerator field's value.
12660func (s *H265Settings) SetFramerateNumerator(v int64) *H265Settings {
12661	s.FramerateNumerator = &v
12662	return s
12663}
12664
12665// SetGopClosedCadence sets the GopClosedCadence field's value.
12666func (s *H265Settings) SetGopClosedCadence(v int64) *H265Settings {
12667	s.GopClosedCadence = &v
12668	return s
12669}
12670
12671// SetGopSize sets the GopSize field's value.
12672func (s *H265Settings) SetGopSize(v float64) *H265Settings {
12673	s.GopSize = &v
12674	return s
12675}
12676
12677// SetGopSizeUnits sets the GopSizeUnits field's value.
12678func (s *H265Settings) SetGopSizeUnits(v string) *H265Settings {
12679	s.GopSizeUnits = &v
12680	return s
12681}
12682
12683// SetLevel sets the Level field's value.
12684func (s *H265Settings) SetLevel(v string) *H265Settings {
12685	s.Level = &v
12686	return s
12687}
12688
12689// SetLookAheadRateControl sets the LookAheadRateControl field's value.
12690func (s *H265Settings) SetLookAheadRateControl(v string) *H265Settings {
12691	s.LookAheadRateControl = &v
12692	return s
12693}
12694
12695// SetMaxBitrate sets the MaxBitrate field's value.
12696func (s *H265Settings) SetMaxBitrate(v int64) *H265Settings {
12697	s.MaxBitrate = &v
12698	return s
12699}
12700
12701// SetMinIInterval sets the MinIInterval field's value.
12702func (s *H265Settings) SetMinIInterval(v int64) *H265Settings {
12703	s.MinIInterval = &v
12704	return s
12705}
12706
12707// SetParDenominator sets the ParDenominator field's value.
12708func (s *H265Settings) SetParDenominator(v int64) *H265Settings {
12709	s.ParDenominator = &v
12710	return s
12711}
12712
12713// SetParNumerator sets the ParNumerator field's value.
12714func (s *H265Settings) SetParNumerator(v int64) *H265Settings {
12715	s.ParNumerator = &v
12716	return s
12717}
12718
12719// SetProfile sets the Profile field's value.
12720func (s *H265Settings) SetProfile(v string) *H265Settings {
12721	s.Profile = &v
12722	return s
12723}
12724
12725// SetQvbrQualityLevel sets the QvbrQualityLevel field's value.
12726func (s *H265Settings) SetQvbrQualityLevel(v int64) *H265Settings {
12727	s.QvbrQualityLevel = &v
12728	return s
12729}
12730
12731// SetRateControlMode sets the RateControlMode field's value.
12732func (s *H265Settings) SetRateControlMode(v string) *H265Settings {
12733	s.RateControlMode = &v
12734	return s
12735}
12736
12737// SetScanType sets the ScanType field's value.
12738func (s *H265Settings) SetScanType(v string) *H265Settings {
12739	s.ScanType = &v
12740	return s
12741}
12742
12743// SetSceneChangeDetect sets the SceneChangeDetect field's value.
12744func (s *H265Settings) SetSceneChangeDetect(v string) *H265Settings {
12745	s.SceneChangeDetect = &v
12746	return s
12747}
12748
12749// SetSlices sets the Slices field's value.
12750func (s *H265Settings) SetSlices(v int64) *H265Settings {
12751	s.Slices = &v
12752	return s
12753}
12754
12755// SetTier sets the Tier field's value.
12756func (s *H265Settings) SetTier(v string) *H265Settings {
12757	s.Tier = &v
12758	return s
12759}
12760
12761// SetTimecodeInsertion sets the TimecodeInsertion field's value.
12762func (s *H265Settings) SetTimecodeInsertion(v string) *H265Settings {
12763	s.TimecodeInsertion = &v
12764	return s
12765}
12766
12767// Hdr10 Settings
12768type Hdr10Settings struct {
12769	_ struct{} `type:"structure"`
12770
12771	// Maximum Content Light LevelAn integer metadata value defining the maximum
12772	// light level, in nits,of any single pixel within an encoded HDR video stream
12773	// or file.
12774	MaxCll *int64 `locationName:"maxCll" type:"integer"`
12775
12776	// Maximum Frame Average Light LevelAn integer metadata value defining the maximum
12777	// average light level, in nits,for any single frame within an encoded HDR video
12778	// stream or file.
12779	MaxFall *int64 `locationName:"maxFall" type:"integer"`
12780}
12781
12782// String returns the string representation
12783func (s Hdr10Settings) String() string {
12784	return awsutil.Prettify(s)
12785}
12786
12787// GoString returns the string representation
12788func (s Hdr10Settings) GoString() string {
12789	return s.String()
12790}
12791
12792// SetMaxCll sets the MaxCll field's value.
12793func (s *Hdr10Settings) SetMaxCll(v int64) *Hdr10Settings {
12794	s.MaxCll = &v
12795	return s
12796}
12797
12798// SetMaxFall sets the MaxFall field's value.
12799func (s *Hdr10Settings) SetMaxFall(v int64) *Hdr10Settings {
12800	s.MaxFall = &v
12801	return s
12802}
12803
12804// Hls Akamai Settings
12805type HlsAkamaiSettings struct {
12806	_ struct{} `type:"structure"`
12807
12808	// Number of seconds to wait before retrying connection to the CDN if the connection
12809	// is lost.
12810	ConnectionRetryInterval *int64 `locationName:"connectionRetryInterval" type:"integer"`
12811
12812	// Size in seconds of file cache for streaming outputs.
12813	FilecacheDuration *int64 `locationName:"filecacheDuration" type:"integer"`
12814
12815	// Specify whether or not to use chunked transfer encoding to Akamai. User should
12816	// contact Akamai to enable this feature.
12817	HttpTransferMode *string `locationName:"httpTransferMode" type:"string" enum:"HlsAkamaiHttpTransferMode"`
12818
12819	// Number of retry attempts that will be made before the Live Event is put into
12820	// an error state.
12821	NumRetries *int64 `locationName:"numRetries" type:"integer"`
12822
12823	// If a streaming output fails, number of seconds to wait until a restart is
12824	// initiated. A value of 0 means never restart.
12825	RestartDelay *int64 `locationName:"restartDelay" type:"integer"`
12826
12827	// Salt for authenticated Akamai.
12828	Salt *string `locationName:"salt" type:"string"`
12829
12830	// Token parameter for authenticated akamai. If not specified, _gda_ is used.
12831	Token *string `locationName:"token" type:"string"`
12832}
12833
12834// String returns the string representation
12835func (s HlsAkamaiSettings) String() string {
12836	return awsutil.Prettify(s)
12837}
12838
12839// GoString returns the string representation
12840func (s HlsAkamaiSettings) GoString() string {
12841	return s.String()
12842}
12843
12844// SetConnectionRetryInterval sets the ConnectionRetryInterval field's value.
12845func (s *HlsAkamaiSettings) SetConnectionRetryInterval(v int64) *HlsAkamaiSettings {
12846	s.ConnectionRetryInterval = &v
12847	return s
12848}
12849
12850// SetFilecacheDuration sets the FilecacheDuration field's value.
12851func (s *HlsAkamaiSettings) SetFilecacheDuration(v int64) *HlsAkamaiSettings {
12852	s.FilecacheDuration = &v
12853	return s
12854}
12855
12856// SetHttpTransferMode sets the HttpTransferMode field's value.
12857func (s *HlsAkamaiSettings) SetHttpTransferMode(v string) *HlsAkamaiSettings {
12858	s.HttpTransferMode = &v
12859	return s
12860}
12861
12862// SetNumRetries sets the NumRetries field's value.
12863func (s *HlsAkamaiSettings) SetNumRetries(v int64) *HlsAkamaiSettings {
12864	s.NumRetries = &v
12865	return s
12866}
12867
12868// SetRestartDelay sets the RestartDelay field's value.
12869func (s *HlsAkamaiSettings) SetRestartDelay(v int64) *HlsAkamaiSettings {
12870	s.RestartDelay = &v
12871	return s
12872}
12873
12874// SetSalt sets the Salt field's value.
12875func (s *HlsAkamaiSettings) SetSalt(v string) *HlsAkamaiSettings {
12876	s.Salt = &v
12877	return s
12878}
12879
12880// SetToken sets the Token field's value.
12881func (s *HlsAkamaiSettings) SetToken(v string) *HlsAkamaiSettings {
12882	s.Token = &v
12883	return s
12884}
12885
12886// Hls Basic Put Settings
12887type HlsBasicPutSettings struct {
12888	_ struct{} `type:"structure"`
12889
12890	// Number of seconds to wait before retrying connection to the CDN if the connection
12891	// is lost.
12892	ConnectionRetryInterval *int64 `locationName:"connectionRetryInterval" type:"integer"`
12893
12894	// Size in seconds of file cache for streaming outputs.
12895	FilecacheDuration *int64 `locationName:"filecacheDuration" type:"integer"`
12896
12897	// Number of retry attempts that will be made before the Live Event is put into
12898	// an error state.
12899	NumRetries *int64 `locationName:"numRetries" type:"integer"`
12900
12901	// If a streaming output fails, number of seconds to wait until a restart is
12902	// initiated. A value of 0 means never restart.
12903	RestartDelay *int64 `locationName:"restartDelay" type:"integer"`
12904}
12905
12906// String returns the string representation
12907func (s HlsBasicPutSettings) String() string {
12908	return awsutil.Prettify(s)
12909}
12910
12911// GoString returns the string representation
12912func (s HlsBasicPutSettings) GoString() string {
12913	return s.String()
12914}
12915
12916// SetConnectionRetryInterval sets the ConnectionRetryInterval field's value.
12917func (s *HlsBasicPutSettings) SetConnectionRetryInterval(v int64) *HlsBasicPutSettings {
12918	s.ConnectionRetryInterval = &v
12919	return s
12920}
12921
12922// SetFilecacheDuration sets the FilecacheDuration field's value.
12923func (s *HlsBasicPutSettings) SetFilecacheDuration(v int64) *HlsBasicPutSettings {
12924	s.FilecacheDuration = &v
12925	return s
12926}
12927
12928// SetNumRetries sets the NumRetries field's value.
12929func (s *HlsBasicPutSettings) SetNumRetries(v int64) *HlsBasicPutSettings {
12930	s.NumRetries = &v
12931	return s
12932}
12933
12934// SetRestartDelay sets the RestartDelay field's value.
12935func (s *HlsBasicPutSettings) SetRestartDelay(v int64) *HlsBasicPutSettings {
12936	s.RestartDelay = &v
12937	return s
12938}
12939
12940// Hls Cdn Settings
12941type HlsCdnSettings struct {
12942	_ struct{} `type:"structure"`
12943
12944	// Hls Akamai Settings
12945	HlsAkamaiSettings *HlsAkamaiSettings `locationName:"hlsAkamaiSettings" type:"structure"`
12946
12947	// Hls Basic Put Settings
12948	HlsBasicPutSettings *HlsBasicPutSettings `locationName:"hlsBasicPutSettings" type:"structure"`
12949
12950	// Hls Media Store Settings
12951	HlsMediaStoreSettings *HlsMediaStoreSettings `locationName:"hlsMediaStoreSettings" type:"structure"`
12952
12953	// Hls Webdav Settings
12954	HlsWebdavSettings *HlsWebdavSettings `locationName:"hlsWebdavSettings" type:"structure"`
12955}
12956
12957// String returns the string representation
12958func (s HlsCdnSettings) String() string {
12959	return awsutil.Prettify(s)
12960}
12961
12962// GoString returns the string representation
12963func (s HlsCdnSettings) GoString() string {
12964	return s.String()
12965}
12966
12967// SetHlsAkamaiSettings sets the HlsAkamaiSettings field's value.
12968func (s *HlsCdnSettings) SetHlsAkamaiSettings(v *HlsAkamaiSettings) *HlsCdnSettings {
12969	s.HlsAkamaiSettings = v
12970	return s
12971}
12972
12973// SetHlsBasicPutSettings sets the HlsBasicPutSettings field's value.
12974func (s *HlsCdnSettings) SetHlsBasicPutSettings(v *HlsBasicPutSettings) *HlsCdnSettings {
12975	s.HlsBasicPutSettings = v
12976	return s
12977}
12978
12979// SetHlsMediaStoreSettings sets the HlsMediaStoreSettings field's value.
12980func (s *HlsCdnSettings) SetHlsMediaStoreSettings(v *HlsMediaStoreSettings) *HlsCdnSettings {
12981	s.HlsMediaStoreSettings = v
12982	return s
12983}
12984
12985// SetHlsWebdavSettings sets the HlsWebdavSettings field's value.
12986func (s *HlsCdnSettings) SetHlsWebdavSettings(v *HlsWebdavSettings) *HlsCdnSettings {
12987	s.HlsWebdavSettings = v
12988	return s
12989}
12990
12991// Hls Group Settings
12992type HlsGroupSettings struct {
12993	_ struct{} `type:"structure"`
12994
12995	// Choose one or more ad marker types to pass SCTE35 signals through to this
12996	// group of Apple HLS outputs.
12997	AdMarkers []*string `locationName:"adMarkers" type:"list"`
12998
12999	// A partial URI prefix that will be prepended to each output in the media .m3u8
13000	// file. Can be used if base manifest is delivered from a different URL than
13001	// the main .m3u8 file.
13002	BaseUrlContent *string `locationName:"baseUrlContent" type:"string"`
13003
13004	// Optional. One value per output group.This field is required only if you are
13005	// completing Base URL content A, and the downstream system has notified you
13006	// that the media files for pipeline 1 of all outputs are in a location different
13007	// from the media files for pipeline 0.
13008	BaseUrlContent1 *string `locationName:"baseUrlContent1" type:"string"`
13009
13010	// A partial URI prefix that will be prepended to each output in the media .m3u8
13011	// file. Can be used if base manifest is delivered from a different URL than
13012	// the main .m3u8 file.
13013	BaseUrlManifest *string `locationName:"baseUrlManifest" type:"string"`
13014
13015	// Optional. One value per output group.Complete this field only if you are
13016	// completing Base URL manifest A, and the downstream system has notified you
13017	// that the child manifest files for pipeline 1 of all outputs are in a location
13018	// different from the child manifest files for pipeline 0.
13019	BaseUrlManifest1 *string `locationName:"baseUrlManifest1" type:"string"`
13020
13021	// Mapping of up to 4 caption channels to caption languages. Is only meaningful
13022	// if captionLanguageSetting is set to "insert".
13023	CaptionLanguageMappings []*CaptionLanguageMapping `locationName:"captionLanguageMappings" type:"list"`
13024
13025	// Applies only to 608 Embedded output captions.insert: Include CLOSED-CAPTIONS
13026	// lines in the manifest. Specify at least one language in the CC1 Language
13027	// Code field. One CLOSED-CAPTION line is added for each Language Code you specify.
13028	// Make sure to specify the languages in the order in which they appear in the
13029	// original source (if the source is embedded format) or the order of the caption
13030	// selectors (if the source is other than embedded). Otherwise, languages in
13031	// the manifest will not match up properly with the output captions.none: Include
13032	// CLOSED-CAPTIONS=NONE line in the manifest.omit: Omit any CLOSED-CAPTIONS
13033	// line from the manifest.
13034	CaptionLanguageSetting *string `locationName:"captionLanguageSetting" type:"string" enum:"HlsCaptionLanguageSetting"`
13035
13036	// When set to "disabled", sets the #EXT-X-ALLOW-CACHE:no tag in the manifest,
13037	// which prevents clients from saving media segments for later replay.
13038	ClientCache *string `locationName:"clientCache" type:"string" enum:"HlsClientCache"`
13039
13040	// Specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist
13041	// generation.
13042	CodecSpecification *string `locationName:"codecSpecification" type:"string" enum:"HlsCodecSpecification"`
13043
13044	// For use with encryptionType. This is a 128-bit, 16-byte hex value represented
13045	// by a 32-character text string. If ivSource is set to "explicit" then this
13046	// parameter is required and is used as the IV for encryption.
13047	ConstantIv *string `locationName:"constantIv" min:"32" type:"string"`
13048
13049	// A directory or HTTP destination for the HLS segments, manifest files, and
13050	// encryption keys (if enabled).
13051	//
13052	// Destination is a required field
13053	Destination *OutputLocationRef `locationName:"destination" type:"structure" required:"true"`
13054
13055	// Place segments in subdirectories.
13056	DirectoryStructure *string `locationName:"directoryStructure" type:"string" enum:"HlsDirectoryStructure"`
13057
13058	// Encrypts the segments with the given encryption scheme. Exclude this parameter
13059	// if no encryption is desired.
13060	EncryptionType *string `locationName:"encryptionType" type:"string" enum:"HlsEncryptionType"`
13061
13062	// Parameters that control interactions with the CDN.
13063	HlsCdnSettings *HlsCdnSettings `locationName:"hlsCdnSettings" type:"structure"`
13064
13065	// State of HLS ID3 Segment Tagging
13066	HlsId3SegmentTagging *string `locationName:"hlsId3SegmentTagging" type:"string" enum:"HlsId3SegmentTaggingState"`
13067
13068	// DISABLED: Do not create an I-frame-only manifest, but do create the master
13069	// and media manifests (according to the Output Selection field).STANDARD: Create
13070	// an I-frame-only manifest for each output that contains video, as well as
13071	// the other manifests (according to the Output Selection field). The I-frame
13072	// manifest contains a #EXT-X-I-FRAMES-ONLY tag to indicate it is I-frame only,
13073	// and one or more #EXT-X-BYTERANGE entries identifying the I-frame position.
13074	// For example, #EXT-X-BYTERANGE:160364@1461888"
13075	IFrameOnlyPlaylists *string `locationName:"iFrameOnlyPlaylists" type:"string" enum:"IFrameOnlyPlaylistType"`
13076
13077	// Applies only if Mode field is LIVE. Specifies the maximum number of segments
13078	// in the media manifest file. After this maximum, older segments are removed
13079	// from the media manifest. This number must be less than or equal to the Keep
13080	// Segments field.
13081	IndexNSegments *int64 `locationName:"indexNSegments" min:"3" type:"integer"`
13082
13083	// Parameter that control output group behavior on input loss.
13084	InputLossAction *string `locationName:"inputLossAction" type:"string" enum:"InputLossActionForHlsOut"`
13085
13086	// For use with encryptionType. The IV (Initialization Vector) is a 128-bit
13087	// number used in conjunction with the key for encrypting blocks. If set to
13088	// "include", IV is listed in the manifest, otherwise the IV is not in the manifest.
13089	IvInManifest *string `locationName:"ivInManifest" type:"string" enum:"HlsIvInManifest"`
13090
13091	// For use with encryptionType. The IV (Initialization Vector) is a 128-bit
13092	// number used in conjunction with the key for encrypting blocks. If this setting
13093	// is "followsSegmentNumber", it will cause the IV to change every segment (to
13094	// match the segment number). If this is set to "explicit", you must enter a
13095	// constantIv value.
13096	IvSource *string `locationName:"ivSource" type:"string" enum:"HlsIvSource"`
13097
13098	// Applies only if Mode field is LIVE. Specifies the number of media segments
13099	// (.ts files) to retain in the destination directory.
13100	KeepSegments *int64 `locationName:"keepSegments" min:"1" type:"integer"`
13101
13102	// The value specifies how the key is represented in the resource identified
13103	// by the URI. If parameter is absent, an implicit value of "identity" is used.
13104	// A reverse DNS string can also be given.
13105	KeyFormat *string `locationName:"keyFormat" type:"string"`
13106
13107	// Either a single positive integer version value or a slash delimited list
13108	// of version values (1/2/3).
13109	KeyFormatVersions *string `locationName:"keyFormatVersions" type:"string"`
13110
13111	// The key provider settings.
13112	KeyProviderSettings *KeyProviderSettings `locationName:"keyProviderSettings" type:"structure"`
13113
13114	// When set to gzip, compresses HLS playlist.
13115	ManifestCompression *string `locationName:"manifestCompression" type:"string" enum:"HlsManifestCompression"`
13116
13117	// Indicates whether the output manifest should use floating point or integer
13118	// values for segment duration.
13119	ManifestDurationFormat *string `locationName:"manifestDurationFormat" type:"string" enum:"HlsManifestDurationFormat"`
13120
13121	// When set, minimumSegmentLength is enforced by looking ahead and back within
13122	// the specified range for a nearby avail and extending the segment size if
13123	// needed.
13124	MinSegmentLength *int64 `locationName:"minSegmentLength" type:"integer"`
13125
13126	// If "vod", all segments are indexed and kept permanently in the destination
13127	// and manifest. If "live", only the number segments specified in keepSegments
13128	// and indexNSegments are kept; newer segments replace older segments, which
13129	// may prevent players from rewinding all the way to the beginning of the event.VOD
13130	// mode uses HLS EXT-X-PLAYLIST-TYPE of EVENT while the channel is running,
13131	// converting it to a "VOD" type manifest on completion of the stream.
13132	Mode *string `locationName:"mode" type:"string" enum:"HlsMode"`
13133
13134	// MANIFESTS_AND_SEGMENTS: Generates manifests (master manifest, if applicable,
13135	// and media manifests) for this output group.VARIANT_MANIFESTS_AND_SEGMENTS:
13136	// Generates media manifests for this output group, but not a master manifest.SEGMENTS_ONLY:
13137	// Does not generate any manifests for this output group.
13138	OutputSelection *string `locationName:"outputSelection" type:"string" enum:"HlsOutputSelection"`
13139
13140	// Includes or excludes EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files.
13141	// The value is calculated as follows: either the program date and time are
13142	// initialized using the input timecode source, or the time is initialized using
13143	// the input timecode source and the date is initialized using the timestampOffset.
13144	ProgramDateTime *string `locationName:"programDateTime" type:"string" enum:"HlsProgramDateTime"`
13145
13146	// Period of insertion of EXT-X-PROGRAM-DATE-TIME entry, in seconds.
13147	ProgramDateTimePeriod *int64 `locationName:"programDateTimePeriod" type:"integer"`
13148
13149	// ENABLED: The master manifest (.m3u8 file) for each pipeline includes information
13150	// about both pipelines: first its own media files, then the media files of
13151	// the other pipeline. This feature allows playout device that support stale
13152	// manifest detection to switch from one manifest to the other, when the current
13153	// manifest seems to be stale. There are still two destinations and two master
13154	// manifests, but both master manifests reference the media files from both
13155	// pipelines.DISABLED: The master manifest (.m3u8 file) for each pipeline includes
13156	// information about its own pipeline only.For an HLS output group with MediaPackage
13157	// as the destination, the DISABLED behavior is always followed. MediaPackage
13158	// regenerates the manifests it serves to players so a redundant manifest from
13159	// MediaLive is irrelevant.
13160	RedundantManifest *string `locationName:"redundantManifest" type:"string" enum:"HlsRedundantManifest"`
13161
13162	// Length of MPEG-2 Transport Stream segments to create (in seconds). Note that
13163	// segments will end on the next keyframe after this number of seconds, so actual
13164	// segment length may be longer.
13165	SegmentLength *int64 `locationName:"segmentLength" min:"1" type:"integer"`
13166
13167	// useInputSegmentation has been deprecated. The configured segment size is
13168	// always used.
13169	SegmentationMode *string `locationName:"segmentationMode" type:"string" enum:"HlsSegmentationMode"`
13170
13171	// Number of segments to write to a subdirectory before starting a new one.
13172	// directoryStructure must be subdirectoryPerStream for this setting to have
13173	// an effect.
13174	SegmentsPerSubdirectory *int64 `locationName:"segmentsPerSubdirectory" min:"1" type:"integer"`
13175
13176	// Include or exclude RESOLUTION attribute for video in EXT-X-STREAM-INF tag
13177	// of variant manifest.
13178	StreamInfResolution *string `locationName:"streamInfResolution" type:"string" enum:"HlsStreamInfResolution"`
13179
13180	// Indicates ID3 frame that has the timecode.
13181	TimedMetadataId3Frame *string `locationName:"timedMetadataId3Frame" type:"string" enum:"HlsTimedMetadataId3Frame"`
13182
13183	// Timed Metadata interval in seconds.
13184	TimedMetadataId3Period *int64 `locationName:"timedMetadataId3Period" type:"integer"`
13185
13186	// Provides an extra millisecond delta offset to fine tune the timestamps.
13187	TimestampDeltaMilliseconds *int64 `locationName:"timestampDeltaMilliseconds" type:"integer"`
13188
13189	// SEGMENTED_FILES: Emit the program as segments - multiple .ts media files.SINGLE_FILE:
13190	// Applies only if Mode field is VOD. Emit the program as a single .ts media
13191	// file. The media manifest includes #EXT-X-BYTERANGE tags to index segments
13192	// for playback. A typical use for this value is when sending the output to
13193	// AWS Elemental MediaConvert, which can accept only a single media file. Playback
13194	// while the channel is running is not guaranteed due to HTTP server caching.
13195	TsFileMode *string `locationName:"tsFileMode" type:"string" enum:"HlsTsFileMode"`
13196}
13197
13198// String returns the string representation
13199func (s HlsGroupSettings) String() string {
13200	return awsutil.Prettify(s)
13201}
13202
13203// GoString returns the string representation
13204func (s HlsGroupSettings) GoString() string {
13205	return s.String()
13206}
13207
13208// Validate inspects the fields of the type to determine if they are valid.
13209func (s *HlsGroupSettings) Validate() error {
13210	invalidParams := request.ErrInvalidParams{Context: "HlsGroupSettings"}
13211	if s.ConstantIv != nil && len(*s.ConstantIv) < 32 {
13212		invalidParams.Add(request.NewErrParamMinLen("ConstantIv", 32))
13213	}
13214	if s.Destination == nil {
13215		invalidParams.Add(request.NewErrParamRequired("Destination"))
13216	}
13217	if s.IndexNSegments != nil && *s.IndexNSegments < 3 {
13218		invalidParams.Add(request.NewErrParamMinValue("IndexNSegments", 3))
13219	}
13220	if s.KeepSegments != nil && *s.KeepSegments < 1 {
13221		invalidParams.Add(request.NewErrParamMinValue("KeepSegments", 1))
13222	}
13223	if s.SegmentLength != nil && *s.SegmentLength < 1 {
13224		invalidParams.Add(request.NewErrParamMinValue("SegmentLength", 1))
13225	}
13226	if s.SegmentsPerSubdirectory != nil && *s.SegmentsPerSubdirectory < 1 {
13227		invalidParams.Add(request.NewErrParamMinValue("SegmentsPerSubdirectory", 1))
13228	}
13229	if s.CaptionLanguageMappings != nil {
13230		for i, v := range s.CaptionLanguageMappings {
13231			if v == nil {
13232				continue
13233			}
13234			if err := v.Validate(); err != nil {
13235				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionLanguageMappings", i), err.(request.ErrInvalidParams))
13236			}
13237		}
13238	}
13239	if s.KeyProviderSettings != nil {
13240		if err := s.KeyProviderSettings.Validate(); err != nil {
13241			invalidParams.AddNested("KeyProviderSettings", err.(request.ErrInvalidParams))
13242		}
13243	}
13244
13245	if invalidParams.Len() > 0 {
13246		return invalidParams
13247	}
13248	return nil
13249}
13250
13251// SetAdMarkers sets the AdMarkers field's value.
13252func (s *HlsGroupSettings) SetAdMarkers(v []*string) *HlsGroupSettings {
13253	s.AdMarkers = v
13254	return s
13255}
13256
13257// SetBaseUrlContent sets the BaseUrlContent field's value.
13258func (s *HlsGroupSettings) SetBaseUrlContent(v string) *HlsGroupSettings {
13259	s.BaseUrlContent = &v
13260	return s
13261}
13262
13263// SetBaseUrlContent1 sets the BaseUrlContent1 field's value.
13264func (s *HlsGroupSettings) SetBaseUrlContent1(v string) *HlsGroupSettings {
13265	s.BaseUrlContent1 = &v
13266	return s
13267}
13268
13269// SetBaseUrlManifest sets the BaseUrlManifest field's value.
13270func (s *HlsGroupSettings) SetBaseUrlManifest(v string) *HlsGroupSettings {
13271	s.BaseUrlManifest = &v
13272	return s
13273}
13274
13275// SetBaseUrlManifest1 sets the BaseUrlManifest1 field's value.
13276func (s *HlsGroupSettings) SetBaseUrlManifest1(v string) *HlsGroupSettings {
13277	s.BaseUrlManifest1 = &v
13278	return s
13279}
13280
13281// SetCaptionLanguageMappings sets the CaptionLanguageMappings field's value.
13282func (s *HlsGroupSettings) SetCaptionLanguageMappings(v []*CaptionLanguageMapping) *HlsGroupSettings {
13283	s.CaptionLanguageMappings = v
13284	return s
13285}
13286
13287// SetCaptionLanguageSetting sets the CaptionLanguageSetting field's value.
13288func (s *HlsGroupSettings) SetCaptionLanguageSetting(v string) *HlsGroupSettings {
13289	s.CaptionLanguageSetting = &v
13290	return s
13291}
13292
13293// SetClientCache sets the ClientCache field's value.
13294func (s *HlsGroupSettings) SetClientCache(v string) *HlsGroupSettings {
13295	s.ClientCache = &v
13296	return s
13297}
13298
13299// SetCodecSpecification sets the CodecSpecification field's value.
13300func (s *HlsGroupSettings) SetCodecSpecification(v string) *HlsGroupSettings {
13301	s.CodecSpecification = &v
13302	return s
13303}
13304
13305// SetConstantIv sets the ConstantIv field's value.
13306func (s *HlsGroupSettings) SetConstantIv(v string) *HlsGroupSettings {
13307	s.ConstantIv = &v
13308	return s
13309}
13310
13311// SetDestination sets the Destination field's value.
13312func (s *HlsGroupSettings) SetDestination(v *OutputLocationRef) *HlsGroupSettings {
13313	s.Destination = v
13314	return s
13315}
13316
13317// SetDirectoryStructure sets the DirectoryStructure field's value.
13318func (s *HlsGroupSettings) SetDirectoryStructure(v string) *HlsGroupSettings {
13319	s.DirectoryStructure = &v
13320	return s
13321}
13322
13323// SetEncryptionType sets the EncryptionType field's value.
13324func (s *HlsGroupSettings) SetEncryptionType(v string) *HlsGroupSettings {
13325	s.EncryptionType = &v
13326	return s
13327}
13328
13329// SetHlsCdnSettings sets the HlsCdnSettings field's value.
13330func (s *HlsGroupSettings) SetHlsCdnSettings(v *HlsCdnSettings) *HlsGroupSettings {
13331	s.HlsCdnSettings = v
13332	return s
13333}
13334
13335// SetHlsId3SegmentTagging sets the HlsId3SegmentTagging field's value.
13336func (s *HlsGroupSettings) SetHlsId3SegmentTagging(v string) *HlsGroupSettings {
13337	s.HlsId3SegmentTagging = &v
13338	return s
13339}
13340
13341// SetIFrameOnlyPlaylists sets the IFrameOnlyPlaylists field's value.
13342func (s *HlsGroupSettings) SetIFrameOnlyPlaylists(v string) *HlsGroupSettings {
13343	s.IFrameOnlyPlaylists = &v
13344	return s
13345}
13346
13347// SetIndexNSegments sets the IndexNSegments field's value.
13348func (s *HlsGroupSettings) SetIndexNSegments(v int64) *HlsGroupSettings {
13349	s.IndexNSegments = &v
13350	return s
13351}
13352
13353// SetInputLossAction sets the InputLossAction field's value.
13354func (s *HlsGroupSettings) SetInputLossAction(v string) *HlsGroupSettings {
13355	s.InputLossAction = &v
13356	return s
13357}
13358
13359// SetIvInManifest sets the IvInManifest field's value.
13360func (s *HlsGroupSettings) SetIvInManifest(v string) *HlsGroupSettings {
13361	s.IvInManifest = &v
13362	return s
13363}
13364
13365// SetIvSource sets the IvSource field's value.
13366func (s *HlsGroupSettings) SetIvSource(v string) *HlsGroupSettings {
13367	s.IvSource = &v
13368	return s
13369}
13370
13371// SetKeepSegments sets the KeepSegments field's value.
13372func (s *HlsGroupSettings) SetKeepSegments(v int64) *HlsGroupSettings {
13373	s.KeepSegments = &v
13374	return s
13375}
13376
13377// SetKeyFormat sets the KeyFormat field's value.
13378func (s *HlsGroupSettings) SetKeyFormat(v string) *HlsGroupSettings {
13379	s.KeyFormat = &v
13380	return s
13381}
13382
13383// SetKeyFormatVersions sets the KeyFormatVersions field's value.
13384func (s *HlsGroupSettings) SetKeyFormatVersions(v string) *HlsGroupSettings {
13385	s.KeyFormatVersions = &v
13386	return s
13387}
13388
13389// SetKeyProviderSettings sets the KeyProviderSettings field's value.
13390func (s *HlsGroupSettings) SetKeyProviderSettings(v *KeyProviderSettings) *HlsGroupSettings {
13391	s.KeyProviderSettings = v
13392	return s
13393}
13394
13395// SetManifestCompression sets the ManifestCompression field's value.
13396func (s *HlsGroupSettings) SetManifestCompression(v string) *HlsGroupSettings {
13397	s.ManifestCompression = &v
13398	return s
13399}
13400
13401// SetManifestDurationFormat sets the ManifestDurationFormat field's value.
13402func (s *HlsGroupSettings) SetManifestDurationFormat(v string) *HlsGroupSettings {
13403	s.ManifestDurationFormat = &v
13404	return s
13405}
13406
13407// SetMinSegmentLength sets the MinSegmentLength field's value.
13408func (s *HlsGroupSettings) SetMinSegmentLength(v int64) *HlsGroupSettings {
13409	s.MinSegmentLength = &v
13410	return s
13411}
13412
13413// SetMode sets the Mode field's value.
13414func (s *HlsGroupSettings) SetMode(v string) *HlsGroupSettings {
13415	s.Mode = &v
13416	return s
13417}
13418
13419// SetOutputSelection sets the OutputSelection field's value.
13420func (s *HlsGroupSettings) SetOutputSelection(v string) *HlsGroupSettings {
13421	s.OutputSelection = &v
13422	return s
13423}
13424
13425// SetProgramDateTime sets the ProgramDateTime field's value.
13426func (s *HlsGroupSettings) SetProgramDateTime(v string) *HlsGroupSettings {
13427	s.ProgramDateTime = &v
13428	return s
13429}
13430
13431// SetProgramDateTimePeriod sets the ProgramDateTimePeriod field's value.
13432func (s *HlsGroupSettings) SetProgramDateTimePeriod(v int64) *HlsGroupSettings {
13433	s.ProgramDateTimePeriod = &v
13434	return s
13435}
13436
13437// SetRedundantManifest sets the RedundantManifest field's value.
13438func (s *HlsGroupSettings) SetRedundantManifest(v string) *HlsGroupSettings {
13439	s.RedundantManifest = &v
13440	return s
13441}
13442
13443// SetSegmentLength sets the SegmentLength field's value.
13444func (s *HlsGroupSettings) SetSegmentLength(v int64) *HlsGroupSettings {
13445	s.SegmentLength = &v
13446	return s
13447}
13448
13449// SetSegmentationMode sets the SegmentationMode field's value.
13450func (s *HlsGroupSettings) SetSegmentationMode(v string) *HlsGroupSettings {
13451	s.SegmentationMode = &v
13452	return s
13453}
13454
13455// SetSegmentsPerSubdirectory sets the SegmentsPerSubdirectory field's value.
13456func (s *HlsGroupSettings) SetSegmentsPerSubdirectory(v int64) *HlsGroupSettings {
13457	s.SegmentsPerSubdirectory = &v
13458	return s
13459}
13460
13461// SetStreamInfResolution sets the StreamInfResolution field's value.
13462func (s *HlsGroupSettings) SetStreamInfResolution(v string) *HlsGroupSettings {
13463	s.StreamInfResolution = &v
13464	return s
13465}
13466
13467// SetTimedMetadataId3Frame sets the TimedMetadataId3Frame field's value.
13468func (s *HlsGroupSettings) SetTimedMetadataId3Frame(v string) *HlsGroupSettings {
13469	s.TimedMetadataId3Frame = &v
13470	return s
13471}
13472
13473// SetTimedMetadataId3Period sets the TimedMetadataId3Period field's value.
13474func (s *HlsGroupSettings) SetTimedMetadataId3Period(v int64) *HlsGroupSettings {
13475	s.TimedMetadataId3Period = &v
13476	return s
13477}
13478
13479// SetTimestampDeltaMilliseconds sets the TimestampDeltaMilliseconds field's value.
13480func (s *HlsGroupSettings) SetTimestampDeltaMilliseconds(v int64) *HlsGroupSettings {
13481	s.TimestampDeltaMilliseconds = &v
13482	return s
13483}
13484
13485// SetTsFileMode sets the TsFileMode field's value.
13486func (s *HlsGroupSettings) SetTsFileMode(v string) *HlsGroupSettings {
13487	s.TsFileMode = &v
13488	return s
13489}
13490
13491// Settings for the action to insert a user-defined ID3 tag in each HLS segment
13492type HlsId3SegmentTaggingScheduleActionSettings struct {
13493	_ struct{} `type:"structure"`
13494
13495	// ID3 tag to insert into each segment. Supports special keyword identifiers
13496	// to substitute in segment-related values.\nSupported keyword identifiers:
13497	// https://docs.aws.amazon.com/medialive/latest/ug/variable-data-identifiers.html
13498	//
13499	// Tag is a required field
13500	Tag *string `locationName:"tag" type:"string" required:"true"`
13501}
13502
13503// String returns the string representation
13504func (s HlsId3SegmentTaggingScheduleActionSettings) String() string {
13505	return awsutil.Prettify(s)
13506}
13507
13508// GoString returns the string representation
13509func (s HlsId3SegmentTaggingScheduleActionSettings) GoString() string {
13510	return s.String()
13511}
13512
13513// Validate inspects the fields of the type to determine if they are valid.
13514func (s *HlsId3SegmentTaggingScheduleActionSettings) Validate() error {
13515	invalidParams := request.ErrInvalidParams{Context: "HlsId3SegmentTaggingScheduleActionSettings"}
13516	if s.Tag == nil {
13517		invalidParams.Add(request.NewErrParamRequired("Tag"))
13518	}
13519
13520	if invalidParams.Len() > 0 {
13521		return invalidParams
13522	}
13523	return nil
13524}
13525
13526// SetTag sets the Tag field's value.
13527func (s *HlsId3SegmentTaggingScheduleActionSettings) SetTag(v string) *HlsId3SegmentTaggingScheduleActionSettings {
13528	s.Tag = &v
13529	return s
13530}
13531
13532// Hls Input Settings
13533type HlsInputSettings struct {
13534	_ struct{} `type:"structure"`
13535
13536	// When specified the HLS stream with the m3u8 BANDWIDTH that most closely matches
13537	// this value will be chosen, otherwise the highest bandwidth stream in the
13538	// m3u8 will be chosen. The bitrate is specified in bits per second, as in an
13539	// HLS manifest.
13540	Bandwidth *int64 `locationName:"bandwidth" type:"integer"`
13541
13542	// When specified, reading of the HLS input will begin this many buffer segments
13543	// from the end (most recently written segment). When not specified, the HLS
13544	// input will begin with the first segment specified in the m3u8.
13545	BufferSegments *int64 `locationName:"bufferSegments" type:"integer"`
13546
13547	// The number of consecutive times that attempts to read a manifest or segment
13548	// must fail before the input is considered unavailable.
13549	Retries *int64 `locationName:"retries" type:"integer"`
13550
13551	// The number of seconds between retries when an attempt to read a manifest
13552	// or segment fails.
13553	RetryInterval *int64 `locationName:"retryInterval" type:"integer"`
13554}
13555
13556// String returns the string representation
13557func (s HlsInputSettings) String() string {
13558	return awsutil.Prettify(s)
13559}
13560
13561// GoString returns the string representation
13562func (s HlsInputSettings) GoString() string {
13563	return s.String()
13564}
13565
13566// SetBandwidth sets the Bandwidth field's value.
13567func (s *HlsInputSettings) SetBandwidth(v int64) *HlsInputSettings {
13568	s.Bandwidth = &v
13569	return s
13570}
13571
13572// SetBufferSegments sets the BufferSegments field's value.
13573func (s *HlsInputSettings) SetBufferSegments(v int64) *HlsInputSettings {
13574	s.BufferSegments = &v
13575	return s
13576}
13577
13578// SetRetries sets the Retries field's value.
13579func (s *HlsInputSettings) SetRetries(v int64) *HlsInputSettings {
13580	s.Retries = &v
13581	return s
13582}
13583
13584// SetRetryInterval sets the RetryInterval field's value.
13585func (s *HlsInputSettings) SetRetryInterval(v int64) *HlsInputSettings {
13586	s.RetryInterval = &v
13587	return s
13588}
13589
13590// Hls Media Store Settings
13591type HlsMediaStoreSettings struct {
13592	_ struct{} `type:"structure"`
13593
13594	// Number of seconds to wait before retrying connection to the CDN if the connection
13595	// is lost.
13596	ConnectionRetryInterval *int64 `locationName:"connectionRetryInterval" type:"integer"`
13597
13598	// Size in seconds of file cache for streaming outputs.
13599	FilecacheDuration *int64 `locationName:"filecacheDuration" type:"integer"`
13600
13601	// When set to temporal, output files are stored in non-persistent memory for
13602	// faster reading and writing.
13603	MediaStoreStorageClass *string `locationName:"mediaStoreStorageClass" type:"string" enum:"HlsMediaStoreStorageClass"`
13604
13605	// Number of retry attempts that will be made before the Live Event is put into
13606	// an error state.
13607	NumRetries *int64 `locationName:"numRetries" type:"integer"`
13608
13609	// If a streaming output fails, number of seconds to wait until a restart is
13610	// initiated. A value of 0 means never restart.
13611	RestartDelay *int64 `locationName:"restartDelay" type:"integer"`
13612}
13613
13614// String returns the string representation
13615func (s HlsMediaStoreSettings) String() string {
13616	return awsutil.Prettify(s)
13617}
13618
13619// GoString returns the string representation
13620func (s HlsMediaStoreSettings) GoString() string {
13621	return s.String()
13622}
13623
13624// SetConnectionRetryInterval sets the ConnectionRetryInterval field's value.
13625func (s *HlsMediaStoreSettings) SetConnectionRetryInterval(v int64) *HlsMediaStoreSettings {
13626	s.ConnectionRetryInterval = &v
13627	return s
13628}
13629
13630// SetFilecacheDuration sets the FilecacheDuration field's value.
13631func (s *HlsMediaStoreSettings) SetFilecacheDuration(v int64) *HlsMediaStoreSettings {
13632	s.FilecacheDuration = &v
13633	return s
13634}
13635
13636// SetMediaStoreStorageClass sets the MediaStoreStorageClass field's value.
13637func (s *HlsMediaStoreSettings) SetMediaStoreStorageClass(v string) *HlsMediaStoreSettings {
13638	s.MediaStoreStorageClass = &v
13639	return s
13640}
13641
13642// SetNumRetries sets the NumRetries field's value.
13643func (s *HlsMediaStoreSettings) SetNumRetries(v int64) *HlsMediaStoreSettings {
13644	s.NumRetries = &v
13645	return s
13646}
13647
13648// SetRestartDelay sets the RestartDelay field's value.
13649func (s *HlsMediaStoreSettings) SetRestartDelay(v int64) *HlsMediaStoreSettings {
13650	s.RestartDelay = &v
13651	return s
13652}
13653
13654// Hls Output Settings
13655type HlsOutputSettings struct {
13656	_ struct{} `type:"structure"`
13657
13658	// Only applicable when this output is referencing an H.265 video description.Specifies
13659	// whether MP4 segments should be packaged as HEV1 or HVC1.
13660	H265PackagingType *string `locationName:"h265PackagingType" type:"string" enum:"HlsH265PackagingType"`
13661
13662	// Settings regarding the underlying stream. These settings are different for
13663	// audio-only outputs.
13664	//
13665	// HlsSettings is a required field
13666	HlsSettings *HlsSettings `locationName:"hlsSettings" type:"structure" required:"true"`
13667
13668	// String concatenated to the end of the destination filename. Accepts \"Format
13669	// Identifiers\":#formatIdentifierParameters.
13670	NameModifier *string `locationName:"nameModifier" min:"1" type:"string"`
13671
13672	// String concatenated to end of segment filenames.
13673	SegmentModifier *string `locationName:"segmentModifier" type:"string"`
13674}
13675
13676// String returns the string representation
13677func (s HlsOutputSettings) String() string {
13678	return awsutil.Prettify(s)
13679}
13680
13681// GoString returns the string representation
13682func (s HlsOutputSettings) GoString() string {
13683	return s.String()
13684}
13685
13686// Validate inspects the fields of the type to determine if they are valid.
13687func (s *HlsOutputSettings) Validate() error {
13688	invalidParams := request.ErrInvalidParams{Context: "HlsOutputSettings"}
13689	if s.HlsSettings == nil {
13690		invalidParams.Add(request.NewErrParamRequired("HlsSettings"))
13691	}
13692	if s.NameModifier != nil && len(*s.NameModifier) < 1 {
13693		invalidParams.Add(request.NewErrParamMinLen("NameModifier", 1))
13694	}
13695	if s.HlsSettings != nil {
13696		if err := s.HlsSettings.Validate(); err != nil {
13697			invalidParams.AddNested("HlsSettings", err.(request.ErrInvalidParams))
13698		}
13699	}
13700
13701	if invalidParams.Len() > 0 {
13702		return invalidParams
13703	}
13704	return nil
13705}
13706
13707// SetH265PackagingType sets the H265PackagingType field's value.
13708func (s *HlsOutputSettings) SetH265PackagingType(v string) *HlsOutputSettings {
13709	s.H265PackagingType = &v
13710	return s
13711}
13712
13713// SetHlsSettings sets the HlsSettings field's value.
13714func (s *HlsOutputSettings) SetHlsSettings(v *HlsSettings) *HlsOutputSettings {
13715	s.HlsSettings = v
13716	return s
13717}
13718
13719// SetNameModifier sets the NameModifier field's value.
13720func (s *HlsOutputSettings) SetNameModifier(v string) *HlsOutputSettings {
13721	s.NameModifier = &v
13722	return s
13723}
13724
13725// SetSegmentModifier sets the SegmentModifier field's value.
13726func (s *HlsOutputSettings) SetSegmentModifier(v string) *HlsOutputSettings {
13727	s.SegmentModifier = &v
13728	return s
13729}
13730
13731// Hls Settings
13732type HlsSettings struct {
13733	_ struct{} `type:"structure"`
13734
13735	// Audio Only Hls Settings
13736	AudioOnlyHlsSettings *AudioOnlyHlsSettings `locationName:"audioOnlyHlsSettings" type:"structure"`
13737
13738	// Fmp4 Hls Settings
13739	Fmp4HlsSettings *Fmp4HlsSettings `locationName:"fmp4HlsSettings" type:"structure"`
13740
13741	// Standard Hls Settings
13742	StandardHlsSettings *StandardHlsSettings `locationName:"standardHlsSettings" type:"structure"`
13743}
13744
13745// String returns the string representation
13746func (s HlsSettings) String() string {
13747	return awsutil.Prettify(s)
13748}
13749
13750// GoString returns the string representation
13751func (s HlsSettings) GoString() string {
13752	return s.String()
13753}
13754
13755// Validate inspects the fields of the type to determine if they are valid.
13756func (s *HlsSettings) Validate() error {
13757	invalidParams := request.ErrInvalidParams{Context: "HlsSettings"}
13758	if s.AudioOnlyHlsSettings != nil {
13759		if err := s.AudioOnlyHlsSettings.Validate(); err != nil {
13760			invalidParams.AddNested("AudioOnlyHlsSettings", err.(request.ErrInvalidParams))
13761		}
13762	}
13763	if s.StandardHlsSettings != nil {
13764		if err := s.StandardHlsSettings.Validate(); err != nil {
13765			invalidParams.AddNested("StandardHlsSettings", err.(request.ErrInvalidParams))
13766		}
13767	}
13768
13769	if invalidParams.Len() > 0 {
13770		return invalidParams
13771	}
13772	return nil
13773}
13774
13775// SetAudioOnlyHlsSettings sets the AudioOnlyHlsSettings field's value.
13776func (s *HlsSettings) SetAudioOnlyHlsSettings(v *AudioOnlyHlsSettings) *HlsSettings {
13777	s.AudioOnlyHlsSettings = v
13778	return s
13779}
13780
13781// SetFmp4HlsSettings sets the Fmp4HlsSettings field's value.
13782func (s *HlsSettings) SetFmp4HlsSettings(v *Fmp4HlsSettings) *HlsSettings {
13783	s.Fmp4HlsSettings = v
13784	return s
13785}
13786
13787// SetStandardHlsSettings sets the StandardHlsSettings field's value.
13788func (s *HlsSettings) SetStandardHlsSettings(v *StandardHlsSettings) *HlsSettings {
13789	s.StandardHlsSettings = v
13790	return s
13791}
13792
13793// Settings for the action to emit HLS metadata
13794type HlsTimedMetadataScheduleActionSettings struct {
13795	_ struct{} `type:"structure"`
13796
13797	// Base64 string formatted according to the ID3 specification: http://id3.org/id3v2.4.0-structure
13798	//
13799	// Id3 is a required field
13800	Id3 *string `locationName:"id3" type:"string" required:"true"`
13801}
13802
13803// String returns the string representation
13804func (s HlsTimedMetadataScheduleActionSettings) String() string {
13805	return awsutil.Prettify(s)
13806}
13807
13808// GoString returns the string representation
13809func (s HlsTimedMetadataScheduleActionSettings) GoString() string {
13810	return s.String()
13811}
13812
13813// Validate inspects the fields of the type to determine if they are valid.
13814func (s *HlsTimedMetadataScheduleActionSettings) Validate() error {
13815	invalidParams := request.ErrInvalidParams{Context: "HlsTimedMetadataScheduleActionSettings"}
13816	if s.Id3 == nil {
13817		invalidParams.Add(request.NewErrParamRequired("Id3"))
13818	}
13819
13820	if invalidParams.Len() > 0 {
13821		return invalidParams
13822	}
13823	return nil
13824}
13825
13826// SetId3 sets the Id3 field's value.
13827func (s *HlsTimedMetadataScheduleActionSettings) SetId3(v string) *HlsTimedMetadataScheduleActionSettings {
13828	s.Id3 = &v
13829	return s
13830}
13831
13832// Hls Webdav Settings
13833type HlsWebdavSettings struct {
13834	_ struct{} `type:"structure"`
13835
13836	// Number of seconds to wait before retrying connection to the CDN if the connection
13837	// is lost.
13838	ConnectionRetryInterval *int64 `locationName:"connectionRetryInterval" type:"integer"`
13839
13840	// Size in seconds of file cache for streaming outputs.
13841	FilecacheDuration *int64 `locationName:"filecacheDuration" type:"integer"`
13842
13843	// Specify whether or not to use chunked transfer encoding to WebDAV.
13844	HttpTransferMode *string `locationName:"httpTransferMode" type:"string" enum:"HlsWebdavHttpTransferMode"`
13845
13846	// Number of retry attempts that will be made before the Live Event is put into
13847	// an error state.
13848	NumRetries *int64 `locationName:"numRetries" type:"integer"`
13849
13850	// If a streaming output fails, number of seconds to wait until a restart is
13851	// initiated. A value of 0 means never restart.
13852	RestartDelay *int64 `locationName:"restartDelay" type:"integer"`
13853}
13854
13855// String returns the string representation
13856func (s HlsWebdavSettings) String() string {
13857	return awsutil.Prettify(s)
13858}
13859
13860// GoString returns the string representation
13861func (s HlsWebdavSettings) GoString() string {
13862	return s.String()
13863}
13864
13865// SetConnectionRetryInterval sets the ConnectionRetryInterval field's value.
13866func (s *HlsWebdavSettings) SetConnectionRetryInterval(v int64) *HlsWebdavSettings {
13867	s.ConnectionRetryInterval = &v
13868	return s
13869}
13870
13871// SetFilecacheDuration sets the FilecacheDuration field's value.
13872func (s *HlsWebdavSettings) SetFilecacheDuration(v int64) *HlsWebdavSettings {
13873	s.FilecacheDuration = &v
13874	return s
13875}
13876
13877// SetHttpTransferMode sets the HttpTransferMode field's value.
13878func (s *HlsWebdavSettings) SetHttpTransferMode(v string) *HlsWebdavSettings {
13879	s.HttpTransferMode = &v
13880	return s
13881}
13882
13883// SetNumRetries sets the NumRetries field's value.
13884func (s *HlsWebdavSettings) SetNumRetries(v int64) *HlsWebdavSettings {
13885	s.NumRetries = &v
13886	return s
13887}
13888
13889// SetRestartDelay sets the RestartDelay field's value.
13890func (s *HlsWebdavSettings) SetRestartDelay(v int64) *HlsWebdavSettings {
13891	s.RestartDelay = &v
13892	return s
13893}
13894
13895// Settings to configure an action so that it occurs as soon as possible.
13896type ImmediateModeScheduleActionStartSettings struct {
13897	_ struct{} `type:"structure"`
13898}
13899
13900// String returns the string representation
13901func (s ImmediateModeScheduleActionStartSettings) String() string {
13902	return awsutil.Prettify(s)
13903}
13904
13905// GoString returns the string representation
13906func (s ImmediateModeScheduleActionStartSettings) GoString() string {
13907	return s.String()
13908}
13909
13910type Input struct {
13911	_ struct{} `type:"structure"`
13912
13913	// The Unique ARN of the input (generated, immutable).
13914	Arn *string `locationName:"arn" type:"string"`
13915
13916	// A list of channel IDs that that input is attached to (currently an input
13917	// can only be attached to one channel).
13918	AttachedChannels []*string `locationName:"attachedChannels" type:"list"`
13919
13920	// A list of the destinations of the input (PUSH-type).
13921	Destinations []*InputDestination `locationName:"destinations" type:"list"`
13922
13923	// The generated ID of the input (unique for user account, immutable).
13924	Id *string `locationName:"id" type:"string"`
13925
13926	// STANDARD - MediaLive expects two sources to be connected to this input. If
13927	// the channel is also STANDARD, both sources will be ingested. If the channel
13928	// is SINGLE_PIPELINE, only the first source will be ingested; the second source
13929	// will always be ignored, even if the first source fails.SINGLE_PIPELINE -
13930	// You can connect only one source to this input. If the ChannelClass is also
13931	// SINGLE_PIPELINE, this value is valid. If the ChannelClass is STANDARD, this
13932	// value is not valid because the channel requires two sources in the input.
13933	InputClass *string `locationName:"inputClass" type:"string" enum:"InputClass"`
13934
13935	// Settings for the input devices.
13936	InputDevices []*InputDeviceSettings `locationName:"inputDevices" type:"list"`
13937
13938	// Certain pull input sources can be dynamic, meaning that they can have their
13939	// URL's dynamically changesduring input switch actions. Presently, this functionality
13940	// only works with MP4_FILE inputs.
13941	InputSourceType *string `locationName:"inputSourceType" type:"string" enum:"InputSourceType"`
13942
13943	// A list of MediaConnect Flows for this input.
13944	MediaConnectFlows []*MediaConnectFlow `locationName:"mediaConnectFlows" type:"list"`
13945
13946	// The user-assigned name (This is a mutable value).
13947	Name *string `locationName:"name" type:"string"`
13948
13949	// The Amazon Resource Name (ARN) of the role this input assumes during and
13950	// after creation.
13951	RoleArn *string `locationName:"roleArn" type:"string"`
13952
13953	// A list of IDs for all the Input Security Groups attached to the input.
13954	SecurityGroups []*string `locationName:"securityGroups" type:"list"`
13955
13956	// A list of the sources of the input (PULL-type).
13957	Sources []*InputSource `locationName:"sources" type:"list"`
13958
13959	State *string `locationName:"state" type:"string" enum:"InputState"`
13960
13961	// A collection of key-value pairs.
13962	Tags map[string]*string `locationName:"tags" type:"map"`
13963
13964	Type *string `locationName:"type" type:"string" enum:"InputType"`
13965}
13966
13967// String returns the string representation
13968func (s Input) String() string {
13969	return awsutil.Prettify(s)
13970}
13971
13972// GoString returns the string representation
13973func (s Input) GoString() string {
13974	return s.String()
13975}
13976
13977// SetArn sets the Arn field's value.
13978func (s *Input) SetArn(v string) *Input {
13979	s.Arn = &v
13980	return s
13981}
13982
13983// SetAttachedChannels sets the AttachedChannels field's value.
13984func (s *Input) SetAttachedChannels(v []*string) *Input {
13985	s.AttachedChannels = v
13986	return s
13987}
13988
13989// SetDestinations sets the Destinations field's value.
13990func (s *Input) SetDestinations(v []*InputDestination) *Input {
13991	s.Destinations = v
13992	return s
13993}
13994
13995// SetId sets the Id field's value.
13996func (s *Input) SetId(v string) *Input {
13997	s.Id = &v
13998	return s
13999}
14000
14001// SetInputClass sets the InputClass field's value.
14002func (s *Input) SetInputClass(v string) *Input {
14003	s.InputClass = &v
14004	return s
14005}
14006
14007// SetInputDevices sets the InputDevices field's value.
14008func (s *Input) SetInputDevices(v []*InputDeviceSettings) *Input {
14009	s.InputDevices = v
14010	return s
14011}
14012
14013// SetInputSourceType sets the InputSourceType field's value.
14014func (s *Input) SetInputSourceType(v string) *Input {
14015	s.InputSourceType = &v
14016	return s
14017}
14018
14019// SetMediaConnectFlows sets the MediaConnectFlows field's value.
14020func (s *Input) SetMediaConnectFlows(v []*MediaConnectFlow) *Input {
14021	s.MediaConnectFlows = v
14022	return s
14023}
14024
14025// SetName sets the Name field's value.
14026func (s *Input) SetName(v string) *Input {
14027	s.Name = &v
14028	return s
14029}
14030
14031// SetRoleArn sets the RoleArn field's value.
14032func (s *Input) SetRoleArn(v string) *Input {
14033	s.RoleArn = &v
14034	return s
14035}
14036
14037// SetSecurityGroups sets the SecurityGroups field's value.
14038func (s *Input) SetSecurityGroups(v []*string) *Input {
14039	s.SecurityGroups = v
14040	return s
14041}
14042
14043// SetSources sets the Sources field's value.
14044func (s *Input) SetSources(v []*InputSource) *Input {
14045	s.Sources = v
14046	return s
14047}
14048
14049// SetState sets the State field's value.
14050func (s *Input) SetState(v string) *Input {
14051	s.State = &v
14052	return s
14053}
14054
14055// SetTags sets the Tags field's value.
14056func (s *Input) SetTags(v map[string]*string) *Input {
14057	s.Tags = v
14058	return s
14059}
14060
14061// SetType sets the Type field's value.
14062func (s *Input) SetType(v string) *Input {
14063	s.Type = &v
14064	return s
14065}
14066
14067type InputAttachment struct {
14068	_ struct{} `type:"structure"`
14069
14070	// User-specified settings for defining what the conditions are for declaring
14071	// the input unhealthy and failing over to a different input.
14072	AutomaticInputFailoverSettings *AutomaticInputFailoverSettings `locationName:"automaticInputFailoverSettings" type:"structure"`
14073
14074	// User-specified name for the attachment. This is required if the user wants
14075	// to use this input in an input switch action.
14076	InputAttachmentName *string `locationName:"inputAttachmentName" type:"string"`
14077
14078	// The ID of the input
14079	InputId *string `locationName:"inputId" type:"string"`
14080
14081	// Settings of an input (caption selector, etc.)
14082	InputSettings *InputSettings `locationName:"inputSettings" type:"structure"`
14083}
14084
14085// String returns the string representation
14086func (s InputAttachment) String() string {
14087	return awsutil.Prettify(s)
14088}
14089
14090// GoString returns the string representation
14091func (s InputAttachment) GoString() string {
14092	return s.String()
14093}
14094
14095// Validate inspects the fields of the type to determine if they are valid.
14096func (s *InputAttachment) Validate() error {
14097	invalidParams := request.ErrInvalidParams{Context: "InputAttachment"}
14098	if s.AutomaticInputFailoverSettings != nil {
14099		if err := s.AutomaticInputFailoverSettings.Validate(); err != nil {
14100			invalidParams.AddNested("AutomaticInputFailoverSettings", err.(request.ErrInvalidParams))
14101		}
14102	}
14103	if s.InputSettings != nil {
14104		if err := s.InputSettings.Validate(); err != nil {
14105			invalidParams.AddNested("InputSettings", err.(request.ErrInvalidParams))
14106		}
14107	}
14108
14109	if invalidParams.Len() > 0 {
14110		return invalidParams
14111	}
14112	return nil
14113}
14114
14115// SetAutomaticInputFailoverSettings sets the AutomaticInputFailoverSettings field's value.
14116func (s *InputAttachment) SetAutomaticInputFailoverSettings(v *AutomaticInputFailoverSettings) *InputAttachment {
14117	s.AutomaticInputFailoverSettings = v
14118	return s
14119}
14120
14121// SetInputAttachmentName sets the InputAttachmentName field's value.
14122func (s *InputAttachment) SetInputAttachmentName(v string) *InputAttachment {
14123	s.InputAttachmentName = &v
14124	return s
14125}
14126
14127// SetInputId sets the InputId field's value.
14128func (s *InputAttachment) SetInputId(v string) *InputAttachment {
14129	s.InputId = &v
14130	return s
14131}
14132
14133// SetInputSettings sets the InputSettings field's value.
14134func (s *InputAttachment) SetInputSettings(v *InputSettings) *InputAttachment {
14135	s.InputSettings = v
14136	return s
14137}
14138
14139// Input Channel Level
14140type InputChannelLevel struct {
14141	_ struct{} `type:"structure"`
14142
14143	// Remixing value. Units are in dB and acceptable values are within the range
14144	// from -60 (mute) and 6 dB.
14145	//
14146	// Gain is a required field
14147	Gain *int64 `locationName:"gain" type:"integer" required:"true"`
14148
14149	// The index of the input channel used as a source.
14150	//
14151	// InputChannel is a required field
14152	InputChannel *int64 `locationName:"inputChannel" type:"integer" required:"true"`
14153}
14154
14155// String returns the string representation
14156func (s InputChannelLevel) String() string {
14157	return awsutil.Prettify(s)
14158}
14159
14160// GoString returns the string representation
14161func (s InputChannelLevel) GoString() string {
14162	return s.String()
14163}
14164
14165// Validate inspects the fields of the type to determine if they are valid.
14166func (s *InputChannelLevel) Validate() error {
14167	invalidParams := request.ErrInvalidParams{Context: "InputChannelLevel"}
14168	if s.Gain == nil {
14169		invalidParams.Add(request.NewErrParamRequired("Gain"))
14170	}
14171	if s.Gain != nil && *s.Gain < -60 {
14172		invalidParams.Add(request.NewErrParamMinValue("Gain", -60))
14173	}
14174	if s.InputChannel == nil {
14175		invalidParams.Add(request.NewErrParamRequired("InputChannel"))
14176	}
14177
14178	if invalidParams.Len() > 0 {
14179		return invalidParams
14180	}
14181	return nil
14182}
14183
14184// SetGain sets the Gain field's value.
14185func (s *InputChannelLevel) SetGain(v int64) *InputChannelLevel {
14186	s.Gain = &v
14187	return s
14188}
14189
14190// SetInputChannel sets the InputChannel field's value.
14191func (s *InputChannelLevel) SetInputChannel(v int64) *InputChannelLevel {
14192	s.InputChannel = &v
14193	return s
14194}
14195
14196// Settings to let you create a clip of the file input, in order to set up the
14197// input to ingest only a portion of the file.
14198type InputClippingSettings struct {
14199	_ struct{} `type:"structure"`
14200
14201	// The source of the timecodes in the source being clipped.
14202	//
14203	// InputTimecodeSource is a required field
14204	InputTimecodeSource *string `locationName:"inputTimecodeSource" type:"string" required:"true" enum:"InputTimecodeSource"`
14205
14206	// Settings to identify the start of the clip.
14207	StartTimecode *StartTimecode `locationName:"startTimecode" type:"structure"`
14208
14209	// Settings to identify the end of the clip.
14210	StopTimecode *StopTimecode `locationName:"stopTimecode" type:"structure"`
14211}
14212
14213// String returns the string representation
14214func (s InputClippingSettings) String() string {
14215	return awsutil.Prettify(s)
14216}
14217
14218// GoString returns the string representation
14219func (s InputClippingSettings) GoString() string {
14220	return s.String()
14221}
14222
14223// Validate inspects the fields of the type to determine if they are valid.
14224func (s *InputClippingSettings) Validate() error {
14225	invalidParams := request.ErrInvalidParams{Context: "InputClippingSettings"}
14226	if s.InputTimecodeSource == nil {
14227		invalidParams.Add(request.NewErrParamRequired("InputTimecodeSource"))
14228	}
14229
14230	if invalidParams.Len() > 0 {
14231		return invalidParams
14232	}
14233	return nil
14234}
14235
14236// SetInputTimecodeSource sets the InputTimecodeSource field's value.
14237func (s *InputClippingSettings) SetInputTimecodeSource(v string) *InputClippingSettings {
14238	s.InputTimecodeSource = &v
14239	return s
14240}
14241
14242// SetStartTimecode sets the StartTimecode field's value.
14243func (s *InputClippingSettings) SetStartTimecode(v *StartTimecode) *InputClippingSettings {
14244	s.StartTimecode = v
14245	return s
14246}
14247
14248// SetStopTimecode sets the StopTimecode field's value.
14249func (s *InputClippingSettings) SetStopTimecode(v *StopTimecode) *InputClippingSettings {
14250	s.StopTimecode = v
14251	return s
14252}
14253
14254// The settings for a PUSH type input.
14255type InputDestination struct {
14256	_ struct{} `type:"structure"`
14257
14258	// The system-generated static IP address of endpoint.It remains fixed for the
14259	// lifetime of the input.
14260	Ip *string `locationName:"ip" type:"string"`
14261
14262	// The port number for the input.
14263	Port *string `locationName:"port" type:"string"`
14264
14265	// This represents the endpoint that the customer stream will bepushed to.
14266	Url *string `locationName:"url" type:"string"`
14267
14268	// The properties for a VPC type input destination.
14269	Vpc *InputDestinationVpc `locationName:"vpc" type:"structure"`
14270}
14271
14272// String returns the string representation
14273func (s InputDestination) String() string {
14274	return awsutil.Prettify(s)
14275}
14276
14277// GoString returns the string representation
14278func (s InputDestination) GoString() string {
14279	return s.String()
14280}
14281
14282// SetIp sets the Ip field's value.
14283func (s *InputDestination) SetIp(v string) *InputDestination {
14284	s.Ip = &v
14285	return s
14286}
14287
14288// SetPort sets the Port field's value.
14289func (s *InputDestination) SetPort(v string) *InputDestination {
14290	s.Port = &v
14291	return s
14292}
14293
14294// SetUrl sets the Url field's value.
14295func (s *InputDestination) SetUrl(v string) *InputDestination {
14296	s.Url = &v
14297	return s
14298}
14299
14300// SetVpc sets the Vpc field's value.
14301func (s *InputDestination) SetVpc(v *InputDestinationVpc) *InputDestination {
14302	s.Vpc = v
14303	return s
14304}
14305
14306// Endpoint settings for a PUSH type input.
14307type InputDestinationRequest struct {
14308	_ struct{} `type:"structure"`
14309
14310	// A unique name for the location the RTMP stream is being pushedto.
14311	StreamName *string `locationName:"streamName" type:"string"`
14312}
14313
14314// String returns the string representation
14315func (s InputDestinationRequest) String() string {
14316	return awsutil.Prettify(s)
14317}
14318
14319// GoString returns the string representation
14320func (s InputDestinationRequest) GoString() string {
14321	return s.String()
14322}
14323
14324// SetStreamName sets the StreamName field's value.
14325func (s *InputDestinationRequest) SetStreamName(v string) *InputDestinationRequest {
14326	s.StreamName = &v
14327	return s
14328}
14329
14330// The properties for a VPC type input destination.
14331type InputDestinationVpc struct {
14332	_ struct{} `type:"structure"`
14333
14334	// The availability zone of the Input destination.
14335	AvailabilityZone *string `locationName:"availabilityZone" type:"string"`
14336
14337	// The network interface ID of the Input destination in the VPC.
14338	NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"`
14339}
14340
14341// String returns the string representation
14342func (s InputDestinationVpc) String() string {
14343	return awsutil.Prettify(s)
14344}
14345
14346// GoString returns the string representation
14347func (s InputDestinationVpc) GoString() string {
14348	return s.String()
14349}
14350
14351// SetAvailabilityZone sets the AvailabilityZone field's value.
14352func (s *InputDestinationVpc) SetAvailabilityZone(v string) *InputDestinationVpc {
14353	s.AvailabilityZone = &v
14354	return s
14355}
14356
14357// SetNetworkInterfaceId sets the NetworkInterfaceId field's value.
14358func (s *InputDestinationVpc) SetNetworkInterfaceId(v string) *InputDestinationVpc {
14359	s.NetworkInterfaceId = &v
14360	return s
14361}
14362
14363// Configurable settings for the input device.
14364type InputDeviceConfigurableSettings struct {
14365	_ struct{} `type:"structure"`
14366
14367	// The input source that you want to use. If the device has a source connected
14368	// to only one of its input ports, or if you don't care which source the device
14369	// sends, specify Auto. If the device has sources connected to both its input
14370	// ports, and you want to use a specific source, specify the source.
14371	ConfiguredInput *string `locationName:"configuredInput" type:"string" enum:"InputDeviceConfiguredInput"`
14372
14373	// The maximum bitrate in bits per second. Set a value here to throttle the
14374	// bitrate of the source video.
14375	MaxBitrate *int64 `locationName:"maxBitrate" type:"integer"`
14376}
14377
14378// String returns the string representation
14379func (s InputDeviceConfigurableSettings) String() string {
14380	return awsutil.Prettify(s)
14381}
14382
14383// GoString returns the string representation
14384func (s InputDeviceConfigurableSettings) GoString() string {
14385	return s.String()
14386}
14387
14388// SetConfiguredInput sets the ConfiguredInput field's value.
14389func (s *InputDeviceConfigurableSettings) SetConfiguredInput(v string) *InputDeviceConfigurableSettings {
14390	s.ConfiguredInput = &v
14391	return s
14392}
14393
14394// SetMaxBitrate sets the MaxBitrate field's value.
14395func (s *InputDeviceConfigurableSettings) SetMaxBitrate(v int64) *InputDeviceConfigurableSettings {
14396	s.MaxBitrate = &v
14397	return s
14398}
14399
14400// Settings that describe the active source from the input device, and the video
14401// characteristics of that source.
14402type InputDeviceHdSettings struct {
14403	_ struct{} `type:"structure"`
14404
14405	// If you specified Auto as the configured input, specifies which of the sources
14406	// is currently active (SDI or HDMI).
14407	ActiveInput *string `locationName:"activeInput" type:"string" enum:"InputDeviceActiveInput"`
14408
14409	// The source at the input device that is currently active. You can specify
14410	// this source.
14411	ConfiguredInput *string `locationName:"configuredInput" type:"string" enum:"InputDeviceConfiguredInput"`
14412
14413	// The state of the input device.
14414	DeviceState *string `locationName:"deviceState" type:"string" enum:"InputDeviceState"`
14415
14416	// The frame rate of the video source.
14417	Framerate *float64 `locationName:"framerate" type:"double"`
14418
14419	// The height of the video source, in pixels.
14420	Height *int64 `locationName:"height" type:"integer"`
14421
14422	// The current maximum bitrate for ingesting this source, in bits per second.
14423	// You can specify this maximum.
14424	MaxBitrate *int64 `locationName:"maxBitrate" type:"integer"`
14425
14426	// The scan type of the video source.
14427	ScanType *string `locationName:"scanType" type:"string" enum:"InputDeviceScanType"`
14428
14429	// The width of the video source, in pixels.
14430	Width *int64 `locationName:"width" type:"integer"`
14431}
14432
14433// String returns the string representation
14434func (s InputDeviceHdSettings) String() string {
14435	return awsutil.Prettify(s)
14436}
14437
14438// GoString returns the string representation
14439func (s InputDeviceHdSettings) GoString() string {
14440	return s.String()
14441}
14442
14443// SetActiveInput sets the ActiveInput field's value.
14444func (s *InputDeviceHdSettings) SetActiveInput(v string) *InputDeviceHdSettings {
14445	s.ActiveInput = &v
14446	return s
14447}
14448
14449// SetConfiguredInput sets the ConfiguredInput field's value.
14450func (s *InputDeviceHdSettings) SetConfiguredInput(v string) *InputDeviceHdSettings {
14451	s.ConfiguredInput = &v
14452	return s
14453}
14454
14455// SetDeviceState sets the DeviceState field's value.
14456func (s *InputDeviceHdSettings) SetDeviceState(v string) *InputDeviceHdSettings {
14457	s.DeviceState = &v
14458	return s
14459}
14460
14461// SetFramerate sets the Framerate field's value.
14462func (s *InputDeviceHdSettings) SetFramerate(v float64) *InputDeviceHdSettings {
14463	s.Framerate = &v
14464	return s
14465}
14466
14467// SetHeight sets the Height field's value.
14468func (s *InputDeviceHdSettings) SetHeight(v int64) *InputDeviceHdSettings {
14469	s.Height = &v
14470	return s
14471}
14472
14473// SetMaxBitrate sets the MaxBitrate field's value.
14474func (s *InputDeviceHdSettings) SetMaxBitrate(v int64) *InputDeviceHdSettings {
14475	s.MaxBitrate = &v
14476	return s
14477}
14478
14479// SetScanType sets the ScanType field's value.
14480func (s *InputDeviceHdSettings) SetScanType(v string) *InputDeviceHdSettings {
14481	s.ScanType = &v
14482	return s
14483}
14484
14485// SetWidth sets the Width field's value.
14486func (s *InputDeviceHdSettings) SetWidth(v int64) *InputDeviceHdSettings {
14487	s.Width = &v
14488	return s
14489}
14490
14491// The network settings for the input device.
14492type InputDeviceNetworkSettings struct {
14493	_ struct{} `type:"structure"`
14494
14495	// The DNS addresses of the input device.
14496	DnsAddresses []*string `locationName:"dnsAddresses" type:"list"`
14497
14498	// The network gateway IP address.
14499	Gateway *string `locationName:"gateway" type:"string"`
14500
14501	// The IP address of the input device.
14502	IpAddress *string `locationName:"ipAddress" type:"string"`
14503
14504	// Specifies whether the input device has been configured (outside of MediaLive)
14505	// to use a dynamic IP address assignment (DHCP) or a static IP address.
14506	IpScheme *string `locationName:"ipScheme" type:"string" enum:"InputDeviceIpScheme"`
14507
14508	// The subnet mask of the input device.
14509	SubnetMask *string `locationName:"subnetMask" type:"string"`
14510}
14511
14512// String returns the string representation
14513func (s InputDeviceNetworkSettings) String() string {
14514	return awsutil.Prettify(s)
14515}
14516
14517// GoString returns the string representation
14518func (s InputDeviceNetworkSettings) GoString() string {
14519	return s.String()
14520}
14521
14522// SetDnsAddresses sets the DnsAddresses field's value.
14523func (s *InputDeviceNetworkSettings) SetDnsAddresses(v []*string) *InputDeviceNetworkSettings {
14524	s.DnsAddresses = v
14525	return s
14526}
14527
14528// SetGateway sets the Gateway field's value.
14529func (s *InputDeviceNetworkSettings) SetGateway(v string) *InputDeviceNetworkSettings {
14530	s.Gateway = &v
14531	return s
14532}
14533
14534// SetIpAddress sets the IpAddress field's value.
14535func (s *InputDeviceNetworkSettings) SetIpAddress(v string) *InputDeviceNetworkSettings {
14536	s.IpAddress = &v
14537	return s
14538}
14539
14540// SetIpScheme sets the IpScheme field's value.
14541func (s *InputDeviceNetworkSettings) SetIpScheme(v string) *InputDeviceNetworkSettings {
14542	s.IpScheme = &v
14543	return s
14544}
14545
14546// SetSubnetMask sets the SubnetMask field's value.
14547func (s *InputDeviceNetworkSettings) SetSubnetMask(v string) *InputDeviceNetworkSettings {
14548	s.SubnetMask = &v
14549	return s
14550}
14551
14552// Settings for an input device.
14553type InputDeviceRequest struct {
14554	_ struct{} `type:"structure"`
14555
14556	// The unique ID for the device.
14557	Id *string `locationName:"id" type:"string"`
14558}
14559
14560// String returns the string representation
14561func (s InputDeviceRequest) String() string {
14562	return awsutil.Prettify(s)
14563}
14564
14565// GoString returns the string representation
14566func (s InputDeviceRequest) GoString() string {
14567	return s.String()
14568}
14569
14570// SetId sets the Id field's value.
14571func (s *InputDeviceRequest) SetId(v string) *InputDeviceRequest {
14572	s.Id = &v
14573	return s
14574}
14575
14576// Settings for an input device.
14577type InputDeviceSettings struct {
14578	_ struct{} `type:"structure"`
14579
14580	// The unique ID for the device.
14581	Id *string `locationName:"id" type:"string"`
14582}
14583
14584// String returns the string representation
14585func (s InputDeviceSettings) String() string {
14586	return awsutil.Prettify(s)
14587}
14588
14589// GoString returns the string representation
14590func (s InputDeviceSettings) GoString() string {
14591	return s.String()
14592}
14593
14594// SetId sets the Id field's value.
14595func (s *InputDeviceSettings) SetId(v string) *InputDeviceSettings {
14596	s.Id = &v
14597	return s
14598}
14599
14600// Details of the input device.
14601type InputDeviceSummary struct {
14602	_ struct{} `type:"structure"`
14603
14604	// The unique ARN of the input device.
14605	Arn *string `locationName:"arn" type:"string"`
14606
14607	// The state of the connection between the input device and AWS.
14608	ConnectionState *string `locationName:"connectionState" type:"string" enum:"InputDeviceConnectionState"`
14609
14610	// The status of the action to synchronize the device configuration. If you
14611	// change the configuration of the input device (for example, the maximum bitrate),
14612	// MediaLive sends the new data to the device. The device might not update itself
14613	// immediately. SYNCED means the device has updated its configuration. SYNCING
14614	// means that it has not updated its configuration.
14615	DeviceSettingsSyncState *string `locationName:"deviceSettingsSyncState" type:"string" enum:"DeviceSettingsSyncState"`
14616
14617	// Settings that describe an input device that is type HD.
14618	HdDeviceSettings *InputDeviceHdSettings `locationName:"hdDeviceSettings" type:"structure"`
14619
14620	// The unique ID of the input device.
14621	Id *string `locationName:"id" type:"string"`
14622
14623	// The network MAC address of the input device.
14624	MacAddress *string `locationName:"macAddress" type:"string"`
14625
14626	// A name that you specify for the input device.
14627	Name *string `locationName:"name" type:"string"`
14628
14629	// Network settings for the input device.
14630	NetworkSettings *InputDeviceNetworkSettings `locationName:"networkSettings" type:"structure"`
14631
14632	// The unique serial number of the input device.
14633	SerialNumber *string `locationName:"serialNumber" type:"string"`
14634
14635	// The type of the input device.
14636	Type *string `locationName:"type" type:"string" enum:"InputDeviceType"`
14637}
14638
14639// String returns the string representation
14640func (s InputDeviceSummary) String() string {
14641	return awsutil.Prettify(s)
14642}
14643
14644// GoString returns the string representation
14645func (s InputDeviceSummary) GoString() string {
14646	return s.String()
14647}
14648
14649// SetArn sets the Arn field's value.
14650func (s *InputDeviceSummary) SetArn(v string) *InputDeviceSummary {
14651	s.Arn = &v
14652	return s
14653}
14654
14655// SetConnectionState sets the ConnectionState field's value.
14656func (s *InputDeviceSummary) SetConnectionState(v string) *InputDeviceSummary {
14657	s.ConnectionState = &v
14658	return s
14659}
14660
14661// SetDeviceSettingsSyncState sets the DeviceSettingsSyncState field's value.
14662func (s *InputDeviceSummary) SetDeviceSettingsSyncState(v string) *InputDeviceSummary {
14663	s.DeviceSettingsSyncState = &v
14664	return s
14665}
14666
14667// SetHdDeviceSettings sets the HdDeviceSettings field's value.
14668func (s *InputDeviceSummary) SetHdDeviceSettings(v *InputDeviceHdSettings) *InputDeviceSummary {
14669	s.HdDeviceSettings = v
14670	return s
14671}
14672
14673// SetId sets the Id field's value.
14674func (s *InputDeviceSummary) SetId(v string) *InputDeviceSummary {
14675	s.Id = &v
14676	return s
14677}
14678
14679// SetMacAddress sets the MacAddress field's value.
14680func (s *InputDeviceSummary) SetMacAddress(v string) *InputDeviceSummary {
14681	s.MacAddress = &v
14682	return s
14683}
14684
14685// SetName sets the Name field's value.
14686func (s *InputDeviceSummary) SetName(v string) *InputDeviceSummary {
14687	s.Name = &v
14688	return s
14689}
14690
14691// SetNetworkSettings sets the NetworkSettings field's value.
14692func (s *InputDeviceSummary) SetNetworkSettings(v *InputDeviceNetworkSettings) *InputDeviceSummary {
14693	s.NetworkSettings = v
14694	return s
14695}
14696
14697// SetSerialNumber sets the SerialNumber field's value.
14698func (s *InputDeviceSummary) SetSerialNumber(v string) *InputDeviceSummary {
14699	s.SerialNumber = &v
14700	return s
14701}
14702
14703// SetType sets the Type field's value.
14704func (s *InputDeviceSummary) SetType(v string) *InputDeviceSummary {
14705	s.Type = &v
14706	return s
14707}
14708
14709// Input Location
14710type InputLocation struct {
14711	_ struct{} `type:"structure"`
14712
14713	// key used to extract the password from EC2 Parameter store
14714	PasswordParam *string `locationName:"passwordParam" type:"string"`
14715
14716	// Uniform Resource Identifier - This should be a path to a file accessible
14717	// to the Live system (eg. a http:// URI) depending on the output type. For
14718	// example, a RTMP destination should have a uri simliar to: "rtmp://fmsserver/live".
14719	//
14720	// Uri is a required field
14721	Uri *string `locationName:"uri" type:"string" required:"true"`
14722
14723	// Username if credentials are required to access a file or publishing point.
14724	// This can be either a plaintext username, or a reference to an AWS parameter
14725	// store name from which the username can be retrieved. AWS Parameter store
14726	// format: "ssm://"
14727	Username *string `locationName:"username" type:"string"`
14728}
14729
14730// String returns the string representation
14731func (s InputLocation) String() string {
14732	return awsutil.Prettify(s)
14733}
14734
14735// GoString returns the string representation
14736func (s InputLocation) GoString() string {
14737	return s.String()
14738}
14739
14740// Validate inspects the fields of the type to determine if they are valid.
14741func (s *InputLocation) Validate() error {
14742	invalidParams := request.ErrInvalidParams{Context: "InputLocation"}
14743	if s.Uri == nil {
14744		invalidParams.Add(request.NewErrParamRequired("Uri"))
14745	}
14746
14747	if invalidParams.Len() > 0 {
14748		return invalidParams
14749	}
14750	return nil
14751}
14752
14753// SetPasswordParam sets the PasswordParam field's value.
14754func (s *InputLocation) SetPasswordParam(v string) *InputLocation {
14755	s.PasswordParam = &v
14756	return s
14757}
14758
14759// SetUri sets the Uri field's value.
14760func (s *InputLocation) SetUri(v string) *InputLocation {
14761	s.Uri = &v
14762	return s
14763}
14764
14765// SetUsername sets the Username field's value.
14766func (s *InputLocation) SetUsername(v string) *InputLocation {
14767	s.Username = &v
14768	return s
14769}
14770
14771// Input Loss Behavior
14772type InputLossBehavior struct {
14773	_ struct{} `type:"structure"`
14774
14775	// On input loss, the number of milliseconds to substitute black into the output
14776	// before switching to the frame specified by inputLossImageType. A value x,
14777	// where 0 <= x <= 1,000,000 and a value of 1,000,000 will be interpreted as
14778	// infinite.
14779	BlackFrameMsec *int64 `locationName:"blackFrameMsec" type:"integer"`
14780
14781	// When input loss image type is "color" this field specifies the color to use.
14782	// Value: 6 hex characters representing the values of RGB.
14783	InputLossImageColor *string `locationName:"inputLossImageColor" min:"6" type:"string"`
14784
14785	// When input loss image type is "slate" these fields specify the parameters
14786	// for accessing the slate.
14787	InputLossImageSlate *InputLocation `locationName:"inputLossImageSlate" type:"structure"`
14788
14789	// Indicates whether to substitute a solid color or a slate into the output
14790	// after input loss exceeds blackFrameMsec.
14791	InputLossImageType *string `locationName:"inputLossImageType" type:"string" enum:"InputLossImageType"`
14792
14793	// On input loss, the number of milliseconds to repeat the previous picture
14794	// before substituting black into the output. A value x, where 0 <= x <= 1,000,000
14795	// and a value of 1,000,000 will be interpreted as infinite.
14796	RepeatFrameMsec *int64 `locationName:"repeatFrameMsec" type:"integer"`
14797}
14798
14799// String returns the string representation
14800func (s InputLossBehavior) String() string {
14801	return awsutil.Prettify(s)
14802}
14803
14804// GoString returns the string representation
14805func (s InputLossBehavior) GoString() string {
14806	return s.String()
14807}
14808
14809// Validate inspects the fields of the type to determine if they are valid.
14810func (s *InputLossBehavior) Validate() error {
14811	invalidParams := request.ErrInvalidParams{Context: "InputLossBehavior"}
14812	if s.InputLossImageColor != nil && len(*s.InputLossImageColor) < 6 {
14813		invalidParams.Add(request.NewErrParamMinLen("InputLossImageColor", 6))
14814	}
14815	if s.InputLossImageSlate != nil {
14816		if err := s.InputLossImageSlate.Validate(); err != nil {
14817			invalidParams.AddNested("InputLossImageSlate", err.(request.ErrInvalidParams))
14818		}
14819	}
14820
14821	if invalidParams.Len() > 0 {
14822		return invalidParams
14823	}
14824	return nil
14825}
14826
14827// SetBlackFrameMsec sets the BlackFrameMsec field's value.
14828func (s *InputLossBehavior) SetBlackFrameMsec(v int64) *InputLossBehavior {
14829	s.BlackFrameMsec = &v
14830	return s
14831}
14832
14833// SetInputLossImageColor sets the InputLossImageColor field's value.
14834func (s *InputLossBehavior) SetInputLossImageColor(v string) *InputLossBehavior {
14835	s.InputLossImageColor = &v
14836	return s
14837}
14838
14839// SetInputLossImageSlate sets the InputLossImageSlate field's value.
14840func (s *InputLossBehavior) SetInputLossImageSlate(v *InputLocation) *InputLossBehavior {
14841	s.InputLossImageSlate = v
14842	return s
14843}
14844
14845// SetInputLossImageType sets the InputLossImageType field's value.
14846func (s *InputLossBehavior) SetInputLossImageType(v string) *InputLossBehavior {
14847	s.InputLossImageType = &v
14848	return s
14849}
14850
14851// SetRepeatFrameMsec sets the RepeatFrameMsec field's value.
14852func (s *InputLossBehavior) SetRepeatFrameMsec(v int64) *InputLossBehavior {
14853	s.RepeatFrameMsec = &v
14854	return s
14855}
14856
14857// Action to prepare an input for a future immediate input switch.
14858type InputPrepareScheduleActionSettings struct {
14859	_ struct{} `type:"structure"`
14860
14861	// The name of the input attachment that should be prepared by this action.
14862	// If no name is provided, the action will stop the most recent prepare (if
14863	// any) when activated.
14864	//
14865	// InputAttachmentNameReference is a required field
14866	InputAttachmentNameReference *string `locationName:"inputAttachmentNameReference" type:"string" required:"true"`
14867
14868	// Settings to let you create a clip of the file input, in order to set up the
14869	// input to ingest only a portion of the file.
14870	InputClippingSettings *InputClippingSettings `locationName:"inputClippingSettings" type:"structure"`
14871
14872	// The value for the variable portion of the URL for the dynamic input, for
14873	// this instance of the input. Each time you use the same dynamic input in an
14874	// input switch action, you can provide a different value, in order to connect
14875	// the input to a different content source.
14876	UrlPath []*string `locationName:"urlPath" type:"list"`
14877}
14878
14879// String returns the string representation
14880func (s InputPrepareScheduleActionSettings) String() string {
14881	return awsutil.Prettify(s)
14882}
14883
14884// GoString returns the string representation
14885func (s InputPrepareScheduleActionSettings) GoString() string {
14886	return s.String()
14887}
14888
14889// Validate inspects the fields of the type to determine if they are valid.
14890func (s *InputPrepareScheduleActionSettings) Validate() error {
14891	invalidParams := request.ErrInvalidParams{Context: "InputPrepareScheduleActionSettings"}
14892	if s.InputAttachmentNameReference == nil {
14893		invalidParams.Add(request.NewErrParamRequired("InputAttachmentNameReference"))
14894	}
14895	if s.InputClippingSettings != nil {
14896		if err := s.InputClippingSettings.Validate(); err != nil {
14897			invalidParams.AddNested("InputClippingSettings", err.(request.ErrInvalidParams))
14898		}
14899	}
14900
14901	if invalidParams.Len() > 0 {
14902		return invalidParams
14903	}
14904	return nil
14905}
14906
14907// SetInputAttachmentNameReference sets the InputAttachmentNameReference field's value.
14908func (s *InputPrepareScheduleActionSettings) SetInputAttachmentNameReference(v string) *InputPrepareScheduleActionSettings {
14909	s.InputAttachmentNameReference = &v
14910	return s
14911}
14912
14913// SetInputClippingSettings sets the InputClippingSettings field's value.
14914func (s *InputPrepareScheduleActionSettings) SetInputClippingSettings(v *InputClippingSettings) *InputPrepareScheduleActionSettings {
14915	s.InputClippingSettings = v
14916	return s
14917}
14918
14919// SetUrlPath sets the UrlPath field's value.
14920func (s *InputPrepareScheduleActionSettings) SetUrlPath(v []*string) *InputPrepareScheduleActionSettings {
14921	s.UrlPath = v
14922	return s
14923}
14924
14925// An Input Security Group
14926type InputSecurityGroup struct {
14927	_ struct{} `type:"structure"`
14928
14929	// Unique ARN of Input Security Group
14930	Arn *string `locationName:"arn" type:"string"`
14931
14932	// The Id of the Input Security Group
14933	Id *string `locationName:"id" type:"string"`
14934
14935	// The list of inputs currently using this Input Security Group.
14936	Inputs []*string `locationName:"inputs" type:"list"`
14937
14938	// The current state of the Input Security Group.
14939	State *string `locationName:"state" type:"string" enum:"InputSecurityGroupState"`
14940
14941	// A collection of key-value pairs.
14942	Tags map[string]*string `locationName:"tags" type:"map"`
14943
14944	// Whitelist rules and their sync status
14945	WhitelistRules []*InputWhitelistRule `locationName:"whitelistRules" type:"list"`
14946}
14947
14948// String returns the string representation
14949func (s InputSecurityGroup) String() string {
14950	return awsutil.Prettify(s)
14951}
14952
14953// GoString returns the string representation
14954func (s InputSecurityGroup) GoString() string {
14955	return s.String()
14956}
14957
14958// SetArn sets the Arn field's value.
14959func (s *InputSecurityGroup) SetArn(v string) *InputSecurityGroup {
14960	s.Arn = &v
14961	return s
14962}
14963
14964// SetId sets the Id field's value.
14965func (s *InputSecurityGroup) SetId(v string) *InputSecurityGroup {
14966	s.Id = &v
14967	return s
14968}
14969
14970// SetInputs sets the Inputs field's value.
14971func (s *InputSecurityGroup) SetInputs(v []*string) *InputSecurityGroup {
14972	s.Inputs = v
14973	return s
14974}
14975
14976// SetState sets the State field's value.
14977func (s *InputSecurityGroup) SetState(v string) *InputSecurityGroup {
14978	s.State = &v
14979	return s
14980}
14981
14982// SetTags sets the Tags field's value.
14983func (s *InputSecurityGroup) SetTags(v map[string]*string) *InputSecurityGroup {
14984	s.Tags = v
14985	return s
14986}
14987
14988// SetWhitelistRules sets the WhitelistRules field's value.
14989func (s *InputSecurityGroup) SetWhitelistRules(v []*InputWhitelistRule) *InputSecurityGroup {
14990	s.WhitelistRules = v
14991	return s
14992}
14993
14994// Live Event input parameters. There can be multiple inputs in a single Live
14995// Event.
14996type InputSettings struct {
14997	_ struct{} `type:"structure"`
14998
14999	// Used to select the audio stream to decode for inputs that have multiple available.
15000	AudioSelectors []*AudioSelector `locationName:"audioSelectors" type:"list"`
15001
15002	// Used to select the caption input to use for inputs that have multiple available.
15003	CaptionSelectors []*CaptionSelector `locationName:"captionSelectors" type:"list"`
15004
15005	// Enable or disable the deblock filter when filtering.
15006	DeblockFilter *string `locationName:"deblockFilter" type:"string" enum:"InputDeblockFilter"`
15007
15008	// Enable or disable the denoise filter when filtering.
15009	DenoiseFilter *string `locationName:"denoiseFilter" type:"string" enum:"InputDenoiseFilter"`
15010
15011	// Adjusts the magnitude of filtering from 1 (minimal) to 5 (strongest).
15012	FilterStrength *int64 `locationName:"filterStrength" min:"1" type:"integer"`
15013
15014	// Turns on the filter for this input. MPEG-2 inputs have the deblocking filter
15015	// enabled by default.1) auto - filtering will be applied depending on input
15016	// type/quality2) disabled - no filtering will be applied to the input3) forced
15017	// - filtering will be applied regardless of input type
15018	InputFilter *string `locationName:"inputFilter" type:"string" enum:"InputFilter"`
15019
15020	// Input settings.
15021	NetworkInputSettings *NetworkInputSettings `locationName:"networkInputSettings" type:"structure"`
15022
15023	// Specifies whether to extract applicable ancillary data from a SMPTE-2038
15024	// source in this input. Applicable data types are captions, timecode, AFD,
15025	// and SCTE-104 messages.- PREFER: Extract from SMPTE-2038 if present in this
15026	// input, otherwise extract from another source (if any).- IGNORE: Never extract
15027	// any ancillary data from SMPTE-2038.
15028	Smpte2038DataPreference *string `locationName:"smpte2038DataPreference" type:"string" enum:"Smpte2038DataPreference"`
15029
15030	// Loop input if it is a file. This allows a file input to be streamed indefinitely.
15031	SourceEndBehavior *string `locationName:"sourceEndBehavior" type:"string" enum:"InputSourceEndBehavior"`
15032
15033	// Informs which video elementary stream to decode for input types that have
15034	// multiple available.
15035	VideoSelector *VideoSelector `locationName:"videoSelector" type:"structure"`
15036}
15037
15038// String returns the string representation
15039func (s InputSettings) String() string {
15040	return awsutil.Prettify(s)
15041}
15042
15043// GoString returns the string representation
15044func (s InputSettings) GoString() string {
15045	return s.String()
15046}
15047
15048// Validate inspects the fields of the type to determine if they are valid.
15049func (s *InputSettings) Validate() error {
15050	invalidParams := request.ErrInvalidParams{Context: "InputSettings"}
15051	if s.FilterStrength != nil && *s.FilterStrength < 1 {
15052		invalidParams.Add(request.NewErrParamMinValue("FilterStrength", 1))
15053	}
15054	if s.AudioSelectors != nil {
15055		for i, v := range s.AudioSelectors {
15056			if v == nil {
15057				continue
15058			}
15059			if err := v.Validate(); err != nil {
15060				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AudioSelectors", i), err.(request.ErrInvalidParams))
15061			}
15062		}
15063	}
15064	if s.CaptionSelectors != nil {
15065		for i, v := range s.CaptionSelectors {
15066			if v == nil {
15067				continue
15068			}
15069			if err := v.Validate(); err != nil {
15070				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionSelectors", i), err.(request.ErrInvalidParams))
15071			}
15072		}
15073	}
15074
15075	if invalidParams.Len() > 0 {
15076		return invalidParams
15077	}
15078	return nil
15079}
15080
15081// SetAudioSelectors sets the AudioSelectors field's value.
15082func (s *InputSettings) SetAudioSelectors(v []*AudioSelector) *InputSettings {
15083	s.AudioSelectors = v
15084	return s
15085}
15086
15087// SetCaptionSelectors sets the CaptionSelectors field's value.
15088func (s *InputSettings) SetCaptionSelectors(v []*CaptionSelector) *InputSettings {
15089	s.CaptionSelectors = v
15090	return s
15091}
15092
15093// SetDeblockFilter sets the DeblockFilter field's value.
15094func (s *InputSettings) SetDeblockFilter(v string) *InputSettings {
15095	s.DeblockFilter = &v
15096	return s
15097}
15098
15099// SetDenoiseFilter sets the DenoiseFilter field's value.
15100func (s *InputSettings) SetDenoiseFilter(v string) *InputSettings {
15101	s.DenoiseFilter = &v
15102	return s
15103}
15104
15105// SetFilterStrength sets the FilterStrength field's value.
15106func (s *InputSettings) SetFilterStrength(v int64) *InputSettings {
15107	s.FilterStrength = &v
15108	return s
15109}
15110
15111// SetInputFilter sets the InputFilter field's value.
15112func (s *InputSettings) SetInputFilter(v string) *InputSettings {
15113	s.InputFilter = &v
15114	return s
15115}
15116
15117// SetNetworkInputSettings sets the NetworkInputSettings field's value.
15118func (s *InputSettings) SetNetworkInputSettings(v *NetworkInputSettings) *InputSettings {
15119	s.NetworkInputSettings = v
15120	return s
15121}
15122
15123// SetSmpte2038DataPreference sets the Smpte2038DataPreference field's value.
15124func (s *InputSettings) SetSmpte2038DataPreference(v string) *InputSettings {
15125	s.Smpte2038DataPreference = &v
15126	return s
15127}
15128
15129// SetSourceEndBehavior sets the SourceEndBehavior field's value.
15130func (s *InputSettings) SetSourceEndBehavior(v string) *InputSettings {
15131	s.SourceEndBehavior = &v
15132	return s
15133}
15134
15135// SetVideoSelector sets the VideoSelector field's value.
15136func (s *InputSettings) SetVideoSelector(v *VideoSelector) *InputSettings {
15137	s.VideoSelector = v
15138	return s
15139}
15140
15141// The settings for a PULL type input.
15142type InputSource struct {
15143	_ struct{} `type:"structure"`
15144
15145	// The key used to extract the password from EC2 Parameter store.
15146	PasswordParam *string `locationName:"passwordParam" type:"string"`
15147
15148	// This represents the customer's source URL where stream ispulled from.
15149	Url *string `locationName:"url" type:"string"`
15150
15151	// The username for the input source.
15152	Username *string `locationName:"username" type:"string"`
15153}
15154
15155// String returns the string representation
15156func (s InputSource) String() string {
15157	return awsutil.Prettify(s)
15158}
15159
15160// GoString returns the string representation
15161func (s InputSource) GoString() string {
15162	return s.String()
15163}
15164
15165// SetPasswordParam sets the PasswordParam field's value.
15166func (s *InputSource) SetPasswordParam(v string) *InputSource {
15167	s.PasswordParam = &v
15168	return s
15169}
15170
15171// SetUrl sets the Url field's value.
15172func (s *InputSource) SetUrl(v string) *InputSource {
15173	s.Url = &v
15174	return s
15175}
15176
15177// SetUsername sets the Username field's value.
15178func (s *InputSource) SetUsername(v string) *InputSource {
15179	s.Username = &v
15180	return s
15181}
15182
15183// Settings for for a PULL type input.
15184type InputSourceRequest struct {
15185	_ struct{} `type:"structure"`
15186
15187	// The key used to extract the password from EC2 Parameter store.
15188	PasswordParam *string `locationName:"passwordParam" type:"string"`
15189
15190	// This represents the customer's source URL where stream ispulled from.
15191	Url *string `locationName:"url" type:"string"`
15192
15193	// The username for the input source.
15194	Username *string `locationName:"username" type:"string"`
15195}
15196
15197// String returns the string representation
15198func (s InputSourceRequest) String() string {
15199	return awsutil.Prettify(s)
15200}
15201
15202// GoString returns the string representation
15203func (s InputSourceRequest) GoString() string {
15204	return s.String()
15205}
15206
15207// SetPasswordParam sets the PasswordParam field's value.
15208func (s *InputSourceRequest) SetPasswordParam(v string) *InputSourceRequest {
15209	s.PasswordParam = &v
15210	return s
15211}
15212
15213// SetUrl sets the Url field's value.
15214func (s *InputSourceRequest) SetUrl(v string) *InputSourceRequest {
15215	s.Url = &v
15216	return s
15217}
15218
15219// SetUsername sets the Username field's value.
15220func (s *InputSourceRequest) SetUsername(v string) *InputSourceRequest {
15221	s.Username = &v
15222	return s
15223}
15224
15225type InputSpecification struct {
15226	_ struct{} `type:"structure"`
15227
15228	// Input codec
15229	Codec *string `locationName:"codec" type:"string" enum:"InputCodec"`
15230
15231	// Maximum input bitrate, categorized coarsely
15232	MaximumBitrate *string `locationName:"maximumBitrate" type:"string" enum:"InputMaximumBitrate"`
15233
15234	// Input resolution, categorized coarsely
15235	Resolution *string `locationName:"resolution" type:"string" enum:"InputResolution"`
15236}
15237
15238// String returns the string representation
15239func (s InputSpecification) String() string {
15240	return awsutil.Prettify(s)
15241}
15242
15243// GoString returns the string representation
15244func (s InputSpecification) GoString() string {
15245	return s.String()
15246}
15247
15248// SetCodec sets the Codec field's value.
15249func (s *InputSpecification) SetCodec(v string) *InputSpecification {
15250	s.Codec = &v
15251	return s
15252}
15253
15254// SetMaximumBitrate sets the MaximumBitrate field's value.
15255func (s *InputSpecification) SetMaximumBitrate(v string) *InputSpecification {
15256	s.MaximumBitrate = &v
15257	return s
15258}
15259
15260// SetResolution sets the Resolution field's value.
15261func (s *InputSpecification) SetResolution(v string) *InputSpecification {
15262	s.Resolution = &v
15263	return s
15264}
15265
15266// Settings for the "switch input" action: to switch from ingesting one input
15267// to ingesting another input.
15268type InputSwitchScheduleActionSettings struct {
15269	_ struct{} `type:"structure"`
15270
15271	// The name of the input attachment (not the name of the input!) to switch to.
15272	// The name is specified in the channel configuration.
15273	//
15274	// InputAttachmentNameReference is a required field
15275	InputAttachmentNameReference *string `locationName:"inputAttachmentNameReference" type:"string" required:"true"`
15276
15277	// Settings to let you create a clip of the file input, in order to set up the
15278	// input to ingest only a portion of the file.
15279	InputClippingSettings *InputClippingSettings `locationName:"inputClippingSettings" type:"structure"`
15280
15281	// The value for the variable portion of the URL for the dynamic input, for
15282	// this instance of the input. Each time you use the same dynamic input in an
15283	// input switch action, you can provide a different value, in order to connect
15284	// the input to a different content source.
15285	UrlPath []*string `locationName:"urlPath" type:"list"`
15286}
15287
15288// String returns the string representation
15289func (s InputSwitchScheduleActionSettings) String() string {
15290	return awsutil.Prettify(s)
15291}
15292
15293// GoString returns the string representation
15294func (s InputSwitchScheduleActionSettings) GoString() string {
15295	return s.String()
15296}
15297
15298// Validate inspects the fields of the type to determine if they are valid.
15299func (s *InputSwitchScheduleActionSettings) Validate() error {
15300	invalidParams := request.ErrInvalidParams{Context: "InputSwitchScheduleActionSettings"}
15301	if s.InputAttachmentNameReference == nil {
15302		invalidParams.Add(request.NewErrParamRequired("InputAttachmentNameReference"))
15303	}
15304	if s.InputClippingSettings != nil {
15305		if err := s.InputClippingSettings.Validate(); err != nil {
15306			invalidParams.AddNested("InputClippingSettings", err.(request.ErrInvalidParams))
15307		}
15308	}
15309
15310	if invalidParams.Len() > 0 {
15311		return invalidParams
15312	}
15313	return nil
15314}
15315
15316// SetInputAttachmentNameReference sets the InputAttachmentNameReference field's value.
15317func (s *InputSwitchScheduleActionSettings) SetInputAttachmentNameReference(v string) *InputSwitchScheduleActionSettings {
15318	s.InputAttachmentNameReference = &v
15319	return s
15320}
15321
15322// SetInputClippingSettings sets the InputClippingSettings field's value.
15323func (s *InputSwitchScheduleActionSettings) SetInputClippingSettings(v *InputClippingSettings) *InputSwitchScheduleActionSettings {
15324	s.InputClippingSettings = v
15325	return s
15326}
15327
15328// SetUrlPath sets the UrlPath field's value.
15329func (s *InputSwitchScheduleActionSettings) SetUrlPath(v []*string) *InputSwitchScheduleActionSettings {
15330	s.UrlPath = v
15331	return s
15332}
15333
15334// Settings for a private VPC Input.When this property is specified, the input
15335// destination addresses will be created in a VPC rather than with public Internet
15336// addresses.This property requires setting the roleArn property on Input creation.Not
15337// compatible with the inputSecurityGroups property.
15338type InputVpcRequest struct {
15339	_ struct{} `type:"structure"`
15340
15341	// A list of up to 5 EC2 VPC security group IDs to attach to the Input VPC network
15342	// interfaces.Requires subnetIds. If none are specified then the VPC default
15343	// security group will be used.
15344	SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"`
15345
15346	// A list of 2 VPC subnet IDs from the same VPC.Subnet IDs must be mapped to
15347	// two unique availability zones (AZ).
15348	//
15349	// SubnetIds is a required field
15350	SubnetIds []*string `locationName:"subnetIds" type:"list" required:"true"`
15351}
15352
15353// String returns the string representation
15354func (s InputVpcRequest) String() string {
15355	return awsutil.Prettify(s)
15356}
15357
15358// GoString returns the string representation
15359func (s InputVpcRequest) GoString() string {
15360	return s.String()
15361}
15362
15363// Validate inspects the fields of the type to determine if they are valid.
15364func (s *InputVpcRequest) Validate() error {
15365	invalidParams := request.ErrInvalidParams{Context: "InputVpcRequest"}
15366	if s.SubnetIds == nil {
15367		invalidParams.Add(request.NewErrParamRequired("SubnetIds"))
15368	}
15369
15370	if invalidParams.Len() > 0 {
15371		return invalidParams
15372	}
15373	return nil
15374}
15375
15376// SetSecurityGroupIds sets the SecurityGroupIds field's value.
15377func (s *InputVpcRequest) SetSecurityGroupIds(v []*string) *InputVpcRequest {
15378	s.SecurityGroupIds = v
15379	return s
15380}
15381
15382// SetSubnetIds sets the SubnetIds field's value.
15383func (s *InputVpcRequest) SetSubnetIds(v []*string) *InputVpcRequest {
15384	s.SubnetIds = v
15385	return s
15386}
15387
15388// Whitelist rule
15389type InputWhitelistRule struct {
15390	_ struct{} `type:"structure"`
15391
15392	// The IPv4 CIDR that's whitelisted.
15393	Cidr *string `locationName:"cidr" type:"string"`
15394}
15395
15396// String returns the string representation
15397func (s InputWhitelistRule) String() string {
15398	return awsutil.Prettify(s)
15399}
15400
15401// GoString returns the string representation
15402func (s InputWhitelistRule) GoString() string {
15403	return s.String()
15404}
15405
15406// SetCidr sets the Cidr field's value.
15407func (s *InputWhitelistRule) SetCidr(v string) *InputWhitelistRule {
15408	s.Cidr = &v
15409	return s
15410}
15411
15412// An IPv4 CIDR to whitelist.
15413type InputWhitelistRuleCidr struct {
15414	_ struct{} `type:"structure"`
15415
15416	// The IPv4 CIDR to whitelist.
15417	Cidr *string `locationName:"cidr" type:"string"`
15418}
15419
15420// String returns the string representation
15421func (s InputWhitelistRuleCidr) String() string {
15422	return awsutil.Prettify(s)
15423}
15424
15425// GoString returns the string representation
15426func (s InputWhitelistRuleCidr) GoString() string {
15427	return s.String()
15428}
15429
15430// SetCidr sets the Cidr field's value.
15431func (s *InputWhitelistRuleCidr) SetCidr(v string) *InputWhitelistRuleCidr {
15432	s.Cidr = &v
15433	return s
15434}
15435
15436type InternalServerErrorException struct {
15437	_            struct{}                  `type:"structure"`
15438	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
15439
15440	Message_ *string `locationName:"message" type:"string"`
15441}
15442
15443// String returns the string representation
15444func (s InternalServerErrorException) String() string {
15445	return awsutil.Prettify(s)
15446}
15447
15448// GoString returns the string representation
15449func (s InternalServerErrorException) GoString() string {
15450	return s.String()
15451}
15452
15453func newErrorInternalServerErrorException(v protocol.ResponseMetadata) error {
15454	return &InternalServerErrorException{
15455		RespMetadata: v,
15456	}
15457}
15458
15459// Code returns the exception type name.
15460func (s *InternalServerErrorException) Code() string {
15461	return "InternalServerErrorException"
15462}
15463
15464// Message returns the exception's message.
15465func (s *InternalServerErrorException) Message() string {
15466	if s.Message_ != nil {
15467		return *s.Message_
15468	}
15469	return ""
15470}
15471
15472// OrigErr always returns nil, satisfies awserr.Error interface.
15473func (s *InternalServerErrorException) OrigErr() error {
15474	return nil
15475}
15476
15477func (s *InternalServerErrorException) Error() string {
15478	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
15479}
15480
15481// Status code returns the HTTP status code for the request's response error.
15482func (s *InternalServerErrorException) StatusCode() int {
15483	return s.RespMetadata.StatusCode
15484}
15485
15486// RequestID returns the service's response RequestID for request.
15487func (s *InternalServerErrorException) RequestID() string {
15488	return s.RespMetadata.RequestID
15489}
15490
15491// Key Provider Settings
15492type KeyProviderSettings struct {
15493	_ struct{} `type:"structure"`
15494
15495	// Static Key Settings
15496	StaticKeySettings *StaticKeySettings `locationName:"staticKeySettings" type:"structure"`
15497}
15498
15499// String returns the string representation
15500func (s KeyProviderSettings) String() string {
15501	return awsutil.Prettify(s)
15502}
15503
15504// GoString returns the string representation
15505func (s KeyProviderSettings) GoString() string {
15506	return s.String()
15507}
15508
15509// Validate inspects the fields of the type to determine if they are valid.
15510func (s *KeyProviderSettings) Validate() error {
15511	invalidParams := request.ErrInvalidParams{Context: "KeyProviderSettings"}
15512	if s.StaticKeySettings != nil {
15513		if err := s.StaticKeySettings.Validate(); err != nil {
15514			invalidParams.AddNested("StaticKeySettings", err.(request.ErrInvalidParams))
15515		}
15516	}
15517
15518	if invalidParams.Len() > 0 {
15519		return invalidParams
15520	}
15521	return nil
15522}
15523
15524// SetStaticKeySettings sets the StaticKeySettings field's value.
15525func (s *KeyProviderSettings) SetStaticKeySettings(v *StaticKeySettings) *KeyProviderSettings {
15526	s.StaticKeySettings = v
15527	return s
15528}
15529
15530type ListChannelsInput struct {
15531	_ struct{} `type:"structure"`
15532
15533	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
15534
15535	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
15536}
15537
15538// String returns the string representation
15539func (s ListChannelsInput) String() string {
15540	return awsutil.Prettify(s)
15541}
15542
15543// GoString returns the string representation
15544func (s ListChannelsInput) GoString() string {
15545	return s.String()
15546}
15547
15548// Validate inspects the fields of the type to determine if they are valid.
15549func (s *ListChannelsInput) Validate() error {
15550	invalidParams := request.ErrInvalidParams{Context: "ListChannelsInput"}
15551	if s.MaxResults != nil && *s.MaxResults < 1 {
15552		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
15553	}
15554
15555	if invalidParams.Len() > 0 {
15556		return invalidParams
15557	}
15558	return nil
15559}
15560
15561// SetMaxResults sets the MaxResults field's value.
15562func (s *ListChannelsInput) SetMaxResults(v int64) *ListChannelsInput {
15563	s.MaxResults = &v
15564	return s
15565}
15566
15567// SetNextToken sets the NextToken field's value.
15568func (s *ListChannelsInput) SetNextToken(v string) *ListChannelsInput {
15569	s.NextToken = &v
15570	return s
15571}
15572
15573type ListChannelsOutput struct {
15574	_ struct{} `type:"structure"`
15575
15576	Channels []*ChannelSummary `locationName:"channels" type:"list"`
15577
15578	NextToken *string `locationName:"nextToken" type:"string"`
15579}
15580
15581// String returns the string representation
15582func (s ListChannelsOutput) String() string {
15583	return awsutil.Prettify(s)
15584}
15585
15586// GoString returns the string representation
15587func (s ListChannelsOutput) GoString() string {
15588	return s.String()
15589}
15590
15591// SetChannels sets the Channels field's value.
15592func (s *ListChannelsOutput) SetChannels(v []*ChannelSummary) *ListChannelsOutput {
15593	s.Channels = v
15594	return s
15595}
15596
15597// SetNextToken sets the NextToken field's value.
15598func (s *ListChannelsOutput) SetNextToken(v string) *ListChannelsOutput {
15599	s.NextToken = &v
15600	return s
15601}
15602
15603type ListInputDevicesInput struct {
15604	_ struct{} `type:"structure"`
15605
15606	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
15607
15608	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
15609}
15610
15611// String returns the string representation
15612func (s ListInputDevicesInput) String() string {
15613	return awsutil.Prettify(s)
15614}
15615
15616// GoString returns the string representation
15617func (s ListInputDevicesInput) GoString() string {
15618	return s.String()
15619}
15620
15621// Validate inspects the fields of the type to determine if they are valid.
15622func (s *ListInputDevicesInput) Validate() error {
15623	invalidParams := request.ErrInvalidParams{Context: "ListInputDevicesInput"}
15624	if s.MaxResults != nil && *s.MaxResults < 1 {
15625		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
15626	}
15627
15628	if invalidParams.Len() > 0 {
15629		return invalidParams
15630	}
15631	return nil
15632}
15633
15634// SetMaxResults sets the MaxResults field's value.
15635func (s *ListInputDevicesInput) SetMaxResults(v int64) *ListInputDevicesInput {
15636	s.MaxResults = &v
15637	return s
15638}
15639
15640// SetNextToken sets the NextToken field's value.
15641func (s *ListInputDevicesInput) SetNextToken(v string) *ListInputDevicesInput {
15642	s.NextToken = &v
15643	return s
15644}
15645
15646type ListInputDevicesOutput struct {
15647	_ struct{} `type:"structure"`
15648
15649	InputDevices []*InputDeviceSummary `locationName:"inputDevices" type:"list"`
15650
15651	NextToken *string `locationName:"nextToken" type:"string"`
15652}
15653
15654// String returns the string representation
15655func (s ListInputDevicesOutput) String() string {
15656	return awsutil.Prettify(s)
15657}
15658
15659// GoString returns the string representation
15660func (s ListInputDevicesOutput) GoString() string {
15661	return s.String()
15662}
15663
15664// SetInputDevices sets the InputDevices field's value.
15665func (s *ListInputDevicesOutput) SetInputDevices(v []*InputDeviceSummary) *ListInputDevicesOutput {
15666	s.InputDevices = v
15667	return s
15668}
15669
15670// SetNextToken sets the NextToken field's value.
15671func (s *ListInputDevicesOutput) SetNextToken(v string) *ListInputDevicesOutput {
15672	s.NextToken = &v
15673	return s
15674}
15675
15676type ListInputSecurityGroupsInput struct {
15677	_ struct{} `type:"structure"`
15678
15679	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
15680
15681	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
15682}
15683
15684// String returns the string representation
15685func (s ListInputSecurityGroupsInput) String() string {
15686	return awsutil.Prettify(s)
15687}
15688
15689// GoString returns the string representation
15690func (s ListInputSecurityGroupsInput) GoString() string {
15691	return s.String()
15692}
15693
15694// Validate inspects the fields of the type to determine if they are valid.
15695func (s *ListInputSecurityGroupsInput) Validate() error {
15696	invalidParams := request.ErrInvalidParams{Context: "ListInputSecurityGroupsInput"}
15697	if s.MaxResults != nil && *s.MaxResults < 1 {
15698		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
15699	}
15700
15701	if invalidParams.Len() > 0 {
15702		return invalidParams
15703	}
15704	return nil
15705}
15706
15707// SetMaxResults sets the MaxResults field's value.
15708func (s *ListInputSecurityGroupsInput) SetMaxResults(v int64) *ListInputSecurityGroupsInput {
15709	s.MaxResults = &v
15710	return s
15711}
15712
15713// SetNextToken sets the NextToken field's value.
15714func (s *ListInputSecurityGroupsInput) SetNextToken(v string) *ListInputSecurityGroupsInput {
15715	s.NextToken = &v
15716	return s
15717}
15718
15719type ListInputSecurityGroupsOutput struct {
15720	_ struct{} `type:"structure"`
15721
15722	InputSecurityGroups []*InputSecurityGroup `locationName:"inputSecurityGroups" type:"list"`
15723
15724	NextToken *string `locationName:"nextToken" type:"string"`
15725}
15726
15727// String returns the string representation
15728func (s ListInputSecurityGroupsOutput) String() string {
15729	return awsutil.Prettify(s)
15730}
15731
15732// GoString returns the string representation
15733func (s ListInputSecurityGroupsOutput) GoString() string {
15734	return s.String()
15735}
15736
15737// SetInputSecurityGroups sets the InputSecurityGroups field's value.
15738func (s *ListInputSecurityGroupsOutput) SetInputSecurityGroups(v []*InputSecurityGroup) *ListInputSecurityGroupsOutput {
15739	s.InputSecurityGroups = v
15740	return s
15741}
15742
15743// SetNextToken sets the NextToken field's value.
15744func (s *ListInputSecurityGroupsOutput) SetNextToken(v string) *ListInputSecurityGroupsOutput {
15745	s.NextToken = &v
15746	return s
15747}
15748
15749type ListInputsInput struct {
15750	_ struct{} `type:"structure"`
15751
15752	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
15753
15754	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
15755}
15756
15757// String returns the string representation
15758func (s ListInputsInput) String() string {
15759	return awsutil.Prettify(s)
15760}
15761
15762// GoString returns the string representation
15763func (s ListInputsInput) GoString() string {
15764	return s.String()
15765}
15766
15767// Validate inspects the fields of the type to determine if they are valid.
15768func (s *ListInputsInput) Validate() error {
15769	invalidParams := request.ErrInvalidParams{Context: "ListInputsInput"}
15770	if s.MaxResults != nil && *s.MaxResults < 1 {
15771		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
15772	}
15773
15774	if invalidParams.Len() > 0 {
15775		return invalidParams
15776	}
15777	return nil
15778}
15779
15780// SetMaxResults sets the MaxResults field's value.
15781func (s *ListInputsInput) SetMaxResults(v int64) *ListInputsInput {
15782	s.MaxResults = &v
15783	return s
15784}
15785
15786// SetNextToken sets the NextToken field's value.
15787func (s *ListInputsInput) SetNextToken(v string) *ListInputsInput {
15788	s.NextToken = &v
15789	return s
15790}
15791
15792type ListInputsOutput struct {
15793	_ struct{} `type:"structure"`
15794
15795	Inputs []*Input `locationName:"inputs" type:"list"`
15796
15797	NextToken *string `locationName:"nextToken" type:"string"`
15798}
15799
15800// String returns the string representation
15801func (s ListInputsOutput) String() string {
15802	return awsutil.Prettify(s)
15803}
15804
15805// GoString returns the string representation
15806func (s ListInputsOutput) GoString() string {
15807	return s.String()
15808}
15809
15810// SetInputs sets the Inputs field's value.
15811func (s *ListInputsOutput) SetInputs(v []*Input) *ListInputsOutput {
15812	s.Inputs = v
15813	return s
15814}
15815
15816// SetNextToken sets the NextToken field's value.
15817func (s *ListInputsOutput) SetNextToken(v string) *ListInputsOutput {
15818	s.NextToken = &v
15819	return s
15820}
15821
15822type ListMultiplexProgramsInput struct {
15823	_ struct{} `type:"structure"`
15824
15825	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
15826
15827	// MultiplexId is a required field
15828	MultiplexId *string `location:"uri" locationName:"multiplexId" type:"string" required:"true"`
15829
15830	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
15831}
15832
15833// String returns the string representation
15834func (s ListMultiplexProgramsInput) String() string {
15835	return awsutil.Prettify(s)
15836}
15837
15838// GoString returns the string representation
15839func (s ListMultiplexProgramsInput) GoString() string {
15840	return s.String()
15841}
15842
15843// Validate inspects the fields of the type to determine if they are valid.
15844func (s *ListMultiplexProgramsInput) Validate() error {
15845	invalidParams := request.ErrInvalidParams{Context: "ListMultiplexProgramsInput"}
15846	if s.MaxResults != nil && *s.MaxResults < 1 {
15847		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
15848	}
15849	if s.MultiplexId == nil {
15850		invalidParams.Add(request.NewErrParamRequired("MultiplexId"))
15851	}
15852	if s.MultiplexId != nil && len(*s.MultiplexId) < 1 {
15853		invalidParams.Add(request.NewErrParamMinLen("MultiplexId", 1))
15854	}
15855
15856	if invalidParams.Len() > 0 {
15857		return invalidParams
15858	}
15859	return nil
15860}
15861
15862// SetMaxResults sets the MaxResults field's value.
15863func (s *ListMultiplexProgramsInput) SetMaxResults(v int64) *ListMultiplexProgramsInput {
15864	s.MaxResults = &v
15865	return s
15866}
15867
15868// SetMultiplexId sets the MultiplexId field's value.
15869func (s *ListMultiplexProgramsInput) SetMultiplexId(v string) *ListMultiplexProgramsInput {
15870	s.MultiplexId = &v
15871	return s
15872}
15873
15874// SetNextToken sets the NextToken field's value.
15875func (s *ListMultiplexProgramsInput) SetNextToken(v string) *ListMultiplexProgramsInput {
15876	s.NextToken = &v
15877	return s
15878}
15879
15880type ListMultiplexProgramsOutput struct {
15881	_ struct{} `type:"structure"`
15882
15883	MultiplexPrograms []*MultiplexProgramSummary `locationName:"multiplexPrograms" type:"list"`
15884
15885	NextToken *string `locationName:"nextToken" type:"string"`
15886}
15887
15888// String returns the string representation
15889func (s ListMultiplexProgramsOutput) String() string {
15890	return awsutil.Prettify(s)
15891}
15892
15893// GoString returns the string representation
15894func (s ListMultiplexProgramsOutput) GoString() string {
15895	return s.String()
15896}
15897
15898// SetMultiplexPrograms sets the MultiplexPrograms field's value.
15899func (s *ListMultiplexProgramsOutput) SetMultiplexPrograms(v []*MultiplexProgramSummary) *ListMultiplexProgramsOutput {
15900	s.MultiplexPrograms = v
15901	return s
15902}
15903
15904// SetNextToken sets the NextToken field's value.
15905func (s *ListMultiplexProgramsOutput) SetNextToken(v string) *ListMultiplexProgramsOutput {
15906	s.NextToken = &v
15907	return s
15908}
15909
15910type ListMultiplexesInput struct {
15911	_ struct{} `type:"structure"`
15912
15913	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
15914
15915	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
15916}
15917
15918// String returns the string representation
15919func (s ListMultiplexesInput) String() string {
15920	return awsutil.Prettify(s)
15921}
15922
15923// GoString returns the string representation
15924func (s ListMultiplexesInput) GoString() string {
15925	return s.String()
15926}
15927
15928// Validate inspects the fields of the type to determine if they are valid.
15929func (s *ListMultiplexesInput) Validate() error {
15930	invalidParams := request.ErrInvalidParams{Context: "ListMultiplexesInput"}
15931	if s.MaxResults != nil && *s.MaxResults < 1 {
15932		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
15933	}
15934
15935	if invalidParams.Len() > 0 {
15936		return invalidParams
15937	}
15938	return nil
15939}
15940
15941// SetMaxResults sets the MaxResults field's value.
15942func (s *ListMultiplexesInput) SetMaxResults(v int64) *ListMultiplexesInput {
15943	s.MaxResults = &v
15944	return s
15945}
15946
15947// SetNextToken sets the NextToken field's value.
15948func (s *ListMultiplexesInput) SetNextToken(v string) *ListMultiplexesInput {
15949	s.NextToken = &v
15950	return s
15951}
15952
15953type ListMultiplexesOutput struct {
15954	_ struct{} `type:"structure"`
15955
15956	Multiplexes []*MultiplexSummary `locationName:"multiplexes" type:"list"`
15957
15958	NextToken *string `locationName:"nextToken" type:"string"`
15959}
15960
15961// String returns the string representation
15962func (s ListMultiplexesOutput) String() string {
15963	return awsutil.Prettify(s)
15964}
15965
15966// GoString returns the string representation
15967func (s ListMultiplexesOutput) GoString() string {
15968	return s.String()
15969}
15970
15971// SetMultiplexes sets the Multiplexes field's value.
15972func (s *ListMultiplexesOutput) SetMultiplexes(v []*MultiplexSummary) *ListMultiplexesOutput {
15973	s.Multiplexes = v
15974	return s
15975}
15976
15977// SetNextToken sets the NextToken field's value.
15978func (s *ListMultiplexesOutput) SetNextToken(v string) *ListMultiplexesOutput {
15979	s.NextToken = &v
15980	return s
15981}
15982
15983type ListOfferingsInput struct {
15984	_ struct{} `type:"structure"`
15985
15986	ChannelClass *string `location:"querystring" locationName:"channelClass" type:"string"`
15987
15988	ChannelConfiguration *string `location:"querystring" locationName:"channelConfiguration" type:"string"`
15989
15990	Codec *string `location:"querystring" locationName:"codec" type:"string"`
15991
15992	Duration *string `location:"querystring" locationName:"duration" type:"string"`
15993
15994	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
15995
15996	MaximumBitrate *string `location:"querystring" locationName:"maximumBitrate" type:"string"`
15997
15998	MaximumFramerate *string `location:"querystring" locationName:"maximumFramerate" type:"string"`
15999
16000	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
16001
16002	Resolution *string `location:"querystring" locationName:"resolution" type:"string"`
16003
16004	ResourceType *string `location:"querystring" locationName:"resourceType" type:"string"`
16005
16006	SpecialFeature *string `location:"querystring" locationName:"specialFeature" type:"string"`
16007
16008	VideoQuality *string `location:"querystring" locationName:"videoQuality" type:"string"`
16009}
16010
16011// String returns the string representation
16012func (s ListOfferingsInput) String() string {
16013	return awsutil.Prettify(s)
16014}
16015
16016// GoString returns the string representation
16017func (s ListOfferingsInput) GoString() string {
16018	return s.String()
16019}
16020
16021// Validate inspects the fields of the type to determine if they are valid.
16022func (s *ListOfferingsInput) Validate() error {
16023	invalidParams := request.ErrInvalidParams{Context: "ListOfferingsInput"}
16024	if s.MaxResults != nil && *s.MaxResults < 1 {
16025		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
16026	}
16027
16028	if invalidParams.Len() > 0 {
16029		return invalidParams
16030	}
16031	return nil
16032}
16033
16034// SetChannelClass sets the ChannelClass field's value.
16035func (s *ListOfferingsInput) SetChannelClass(v string) *ListOfferingsInput {
16036	s.ChannelClass = &v
16037	return s
16038}
16039
16040// SetChannelConfiguration sets the ChannelConfiguration field's value.
16041func (s *ListOfferingsInput) SetChannelConfiguration(v string) *ListOfferingsInput {
16042	s.ChannelConfiguration = &v
16043	return s
16044}
16045
16046// SetCodec sets the Codec field's value.
16047func (s *ListOfferingsInput) SetCodec(v string) *ListOfferingsInput {
16048	s.Codec = &v
16049	return s
16050}
16051
16052// SetDuration sets the Duration field's value.
16053func (s *ListOfferingsInput) SetDuration(v string) *ListOfferingsInput {
16054	s.Duration = &v
16055	return s
16056}
16057
16058// SetMaxResults sets the MaxResults field's value.
16059func (s *ListOfferingsInput) SetMaxResults(v int64) *ListOfferingsInput {
16060	s.MaxResults = &v
16061	return s
16062}
16063
16064// SetMaximumBitrate sets the MaximumBitrate field's value.
16065func (s *ListOfferingsInput) SetMaximumBitrate(v string) *ListOfferingsInput {
16066	s.MaximumBitrate = &v
16067	return s
16068}
16069
16070// SetMaximumFramerate sets the MaximumFramerate field's value.
16071func (s *ListOfferingsInput) SetMaximumFramerate(v string) *ListOfferingsInput {
16072	s.MaximumFramerate = &v
16073	return s
16074}
16075
16076// SetNextToken sets the NextToken field's value.
16077func (s *ListOfferingsInput) SetNextToken(v string) *ListOfferingsInput {
16078	s.NextToken = &v
16079	return s
16080}
16081
16082// SetResolution sets the Resolution field's value.
16083func (s *ListOfferingsInput) SetResolution(v string) *ListOfferingsInput {
16084	s.Resolution = &v
16085	return s
16086}
16087
16088// SetResourceType sets the ResourceType field's value.
16089func (s *ListOfferingsInput) SetResourceType(v string) *ListOfferingsInput {
16090	s.ResourceType = &v
16091	return s
16092}
16093
16094// SetSpecialFeature sets the SpecialFeature field's value.
16095func (s *ListOfferingsInput) SetSpecialFeature(v string) *ListOfferingsInput {
16096	s.SpecialFeature = &v
16097	return s
16098}
16099
16100// SetVideoQuality sets the VideoQuality field's value.
16101func (s *ListOfferingsInput) SetVideoQuality(v string) *ListOfferingsInput {
16102	s.VideoQuality = &v
16103	return s
16104}
16105
16106type ListOfferingsOutput struct {
16107	_ struct{} `type:"structure"`
16108
16109	NextToken *string `locationName:"nextToken" type:"string"`
16110
16111	Offerings []*Offering `locationName:"offerings" type:"list"`
16112}
16113
16114// String returns the string representation
16115func (s ListOfferingsOutput) String() string {
16116	return awsutil.Prettify(s)
16117}
16118
16119// GoString returns the string representation
16120func (s ListOfferingsOutput) GoString() string {
16121	return s.String()
16122}
16123
16124// SetNextToken sets the NextToken field's value.
16125func (s *ListOfferingsOutput) SetNextToken(v string) *ListOfferingsOutput {
16126	s.NextToken = &v
16127	return s
16128}
16129
16130// SetOfferings sets the Offerings field's value.
16131func (s *ListOfferingsOutput) SetOfferings(v []*Offering) *ListOfferingsOutput {
16132	s.Offerings = v
16133	return s
16134}
16135
16136type ListReservationsInput struct {
16137	_ struct{} `type:"structure"`
16138
16139	ChannelClass *string `location:"querystring" locationName:"channelClass" type:"string"`
16140
16141	Codec *string `location:"querystring" locationName:"codec" type:"string"`
16142
16143	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
16144
16145	MaximumBitrate *string `location:"querystring" locationName:"maximumBitrate" type:"string"`
16146
16147	MaximumFramerate *string `location:"querystring" locationName:"maximumFramerate" type:"string"`
16148
16149	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
16150
16151	Resolution *string `location:"querystring" locationName:"resolution" type:"string"`
16152
16153	ResourceType *string `location:"querystring" locationName:"resourceType" type:"string"`
16154
16155	SpecialFeature *string `location:"querystring" locationName:"specialFeature" type:"string"`
16156
16157	VideoQuality *string `location:"querystring" locationName:"videoQuality" type:"string"`
16158}
16159
16160// String returns the string representation
16161func (s ListReservationsInput) String() string {
16162	return awsutil.Prettify(s)
16163}
16164
16165// GoString returns the string representation
16166func (s ListReservationsInput) GoString() string {
16167	return s.String()
16168}
16169
16170// Validate inspects the fields of the type to determine if they are valid.
16171func (s *ListReservationsInput) Validate() error {
16172	invalidParams := request.ErrInvalidParams{Context: "ListReservationsInput"}
16173	if s.MaxResults != nil && *s.MaxResults < 1 {
16174		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
16175	}
16176
16177	if invalidParams.Len() > 0 {
16178		return invalidParams
16179	}
16180	return nil
16181}
16182
16183// SetChannelClass sets the ChannelClass field's value.
16184func (s *ListReservationsInput) SetChannelClass(v string) *ListReservationsInput {
16185	s.ChannelClass = &v
16186	return s
16187}
16188
16189// SetCodec sets the Codec field's value.
16190func (s *ListReservationsInput) SetCodec(v string) *ListReservationsInput {
16191	s.Codec = &v
16192	return s
16193}
16194
16195// SetMaxResults sets the MaxResults field's value.
16196func (s *ListReservationsInput) SetMaxResults(v int64) *ListReservationsInput {
16197	s.MaxResults = &v
16198	return s
16199}
16200
16201// SetMaximumBitrate sets the MaximumBitrate field's value.
16202func (s *ListReservationsInput) SetMaximumBitrate(v string) *ListReservationsInput {
16203	s.MaximumBitrate = &v
16204	return s
16205}
16206
16207// SetMaximumFramerate sets the MaximumFramerate field's value.
16208func (s *ListReservationsInput) SetMaximumFramerate(v string) *ListReservationsInput {
16209	s.MaximumFramerate = &v
16210	return s
16211}
16212
16213// SetNextToken sets the NextToken field's value.
16214func (s *ListReservationsInput) SetNextToken(v string) *ListReservationsInput {
16215	s.NextToken = &v
16216	return s
16217}
16218
16219// SetResolution sets the Resolution field's value.
16220func (s *ListReservationsInput) SetResolution(v string) *ListReservationsInput {
16221	s.Resolution = &v
16222	return s
16223}
16224
16225// SetResourceType sets the ResourceType field's value.
16226func (s *ListReservationsInput) SetResourceType(v string) *ListReservationsInput {
16227	s.ResourceType = &v
16228	return s
16229}
16230
16231// SetSpecialFeature sets the SpecialFeature field's value.
16232func (s *ListReservationsInput) SetSpecialFeature(v string) *ListReservationsInput {
16233	s.SpecialFeature = &v
16234	return s
16235}
16236
16237// SetVideoQuality sets the VideoQuality field's value.
16238func (s *ListReservationsInput) SetVideoQuality(v string) *ListReservationsInput {
16239	s.VideoQuality = &v
16240	return s
16241}
16242
16243type ListReservationsOutput struct {
16244	_ struct{} `type:"structure"`
16245
16246	NextToken *string `locationName:"nextToken" type:"string"`
16247
16248	Reservations []*Reservation `locationName:"reservations" type:"list"`
16249}
16250
16251// String returns the string representation
16252func (s ListReservationsOutput) String() string {
16253	return awsutil.Prettify(s)
16254}
16255
16256// GoString returns the string representation
16257func (s ListReservationsOutput) GoString() string {
16258	return s.String()
16259}
16260
16261// SetNextToken sets the NextToken field's value.
16262func (s *ListReservationsOutput) SetNextToken(v string) *ListReservationsOutput {
16263	s.NextToken = &v
16264	return s
16265}
16266
16267// SetReservations sets the Reservations field's value.
16268func (s *ListReservationsOutput) SetReservations(v []*Reservation) *ListReservationsOutput {
16269	s.Reservations = v
16270	return s
16271}
16272
16273type ListTagsForResourceInput struct {
16274	_ struct{} `type:"structure"`
16275
16276	// ResourceArn is a required field
16277	ResourceArn *string `location:"uri" locationName:"resource-arn" type:"string" required:"true"`
16278}
16279
16280// String returns the string representation
16281func (s ListTagsForResourceInput) String() string {
16282	return awsutil.Prettify(s)
16283}
16284
16285// GoString returns the string representation
16286func (s ListTagsForResourceInput) GoString() string {
16287	return s.String()
16288}
16289
16290// Validate inspects the fields of the type to determine if they are valid.
16291func (s *ListTagsForResourceInput) Validate() error {
16292	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
16293	if s.ResourceArn == nil {
16294		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
16295	}
16296	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
16297		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
16298	}
16299
16300	if invalidParams.Len() > 0 {
16301		return invalidParams
16302	}
16303	return nil
16304}
16305
16306// SetResourceArn sets the ResourceArn field's value.
16307func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
16308	s.ResourceArn = &v
16309	return s
16310}
16311
16312type ListTagsForResourceOutput struct {
16313	_ struct{} `type:"structure"`
16314
16315	Tags map[string]*string `locationName:"tags" type:"map"`
16316}
16317
16318// String returns the string representation
16319func (s ListTagsForResourceOutput) String() string {
16320	return awsutil.Prettify(s)
16321}
16322
16323// GoString returns the string representation
16324func (s ListTagsForResourceOutput) GoString() string {
16325	return s.String()
16326}
16327
16328// SetTags sets the Tags field's value.
16329func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
16330	s.Tags = v
16331	return s
16332}
16333
16334// M2ts Settings
16335type M2tsSettings struct {
16336	_ struct{} `type:"structure"`
16337
16338	// When set to drop, output audio streams will be removed from the program if
16339	// the selected input audio stream is removed from the input. This allows the
16340	// output audio configuration to dynamically change based on input configuration.
16341	// If this is set to encodeSilence, all output audio streams will output encoded
16342	// silence when not connected to an active input stream.
16343	AbsentInputAudioBehavior *string `locationName:"absentInputAudioBehavior" type:"string" enum:"M2tsAbsentInputAudioBehavior"`
16344
16345	// When set to enabled, uses ARIB-compliant field muxing and removes video descriptor.
16346	Arib *string `locationName:"arib" type:"string" enum:"M2tsArib"`
16347
16348	// Packet Identifier (PID) for ARIB Captions in the transport stream. Can be
16349	// entered as a decimal or hexadecimal value. Valid values are 32 (or 0x20)..8182
16350	// (or 0x1ff6).
16351	AribCaptionsPid *string `locationName:"aribCaptionsPid" type:"string"`
16352
16353	// If set to auto, pid number used for ARIB Captions will be auto-selected from
16354	// unused pids. If set to useConfigured, ARIB Captions will be on the configured
16355	// pid number.
16356	AribCaptionsPidControl *string `locationName:"aribCaptionsPidControl" type:"string" enum:"M2tsAribCaptionsPidControl"`
16357
16358	// When set to dvb, uses DVB buffer model for Dolby Digital audio. When set
16359	// to atsc, the ATSC model is used.
16360	AudioBufferModel *string `locationName:"audioBufferModel" type:"string" enum:"M2tsAudioBufferModel"`
16361
16362	// The number of audio frames to insert for each PES packet.
16363	AudioFramesPerPes *int64 `locationName:"audioFramesPerPes" type:"integer"`
16364
16365	// Packet Identifier (PID) of the elementary audio stream(s) in the transport
16366	// stream. Multiple values are accepted, and can be entered in ranges and/or
16367	// by comma separation. Can be entered as decimal or hexadecimal values. Each
16368	// PID specified must be in the range of 32 (or 0x20)..8182 (or 0x1ff6).
16369	AudioPids *string `locationName:"audioPids" type:"string"`
16370
16371	// When set to atsc, uses stream type = 0x81 for AC3 and stream type = 0x87
16372	// for EAC3. When set to dvb, uses stream type = 0x06.
16373	AudioStreamType *string `locationName:"audioStreamType" type:"string" enum:"M2tsAudioStreamType"`
16374
16375	// The output bitrate of the transport stream in bits per second. Setting to
16376	// 0 lets the muxer automatically determine the appropriate bitrate.
16377	Bitrate *int64 `locationName:"bitrate" type:"integer"`
16378
16379	// If set to multiplex, use multiplex buffer model for accurate interleaving.
16380	// Setting to bufferModel to none can lead to lower latency, but low-memory
16381	// devices may not be able to play back the stream without interruptions.
16382	BufferModel *string `locationName:"bufferModel" type:"string" enum:"M2tsBufferModel"`
16383
16384	// When set to enabled, generates captionServiceDescriptor in PMT.
16385	CcDescriptor *string `locationName:"ccDescriptor" type:"string" enum:"M2tsCcDescriptor"`
16386
16387	// Inserts DVB Network Information Table (NIT) at the specified table repetition
16388	// interval.
16389	DvbNitSettings *DvbNitSettings `locationName:"dvbNitSettings" type:"structure"`
16390
16391	// Inserts DVB Service Description Table (SDT) at the specified table repetition
16392	// interval.
16393	DvbSdtSettings *DvbSdtSettings `locationName:"dvbSdtSettings" type:"structure"`
16394
16395	// Packet Identifier (PID) for input source DVB Subtitle data to this output.
16396	// Multiple values are accepted, and can be entered in ranges and/or by comma
16397	// separation. Can be entered as decimal or hexadecimal values. Each PID specified
16398	// must be in the range of 32 (or 0x20)..8182 (or 0x1ff6).
16399	DvbSubPids *string `locationName:"dvbSubPids" type:"string"`
16400
16401	// Inserts DVB Time and Date Table (TDT) at the specified table repetition interval.
16402	DvbTdtSettings *DvbTdtSettings `locationName:"dvbTdtSettings" type:"structure"`
16403
16404	// Packet Identifier (PID) for input source DVB Teletext data to this output.
16405	// Can be entered as a decimal or hexadecimal value. Valid values are 32 (or
16406	// 0x20)..8182 (or 0x1ff6).
16407	DvbTeletextPid *string `locationName:"dvbTeletextPid" type:"string"`
16408
16409	// If set to passthrough, passes any EBIF data from the input source to this
16410	// output.
16411	Ebif *string `locationName:"ebif" type:"string" enum:"M2tsEbifControl"`
16412
16413	// When videoAndFixedIntervals is selected, audio EBP markers will be added
16414	// to partitions 3 and 4. The interval between these additional markers will
16415	// be fixed, and will be slightly shorter than the video EBP marker interval.
16416	// Only available when EBP Cablelabs segmentation markers are selected. Partitions
16417	// 1 and 2 will always follow the video interval.
16418	EbpAudioInterval *string `locationName:"ebpAudioInterval" type:"string" enum:"M2tsAudioInterval"`
16419
16420	// When set, enforces that Encoder Boundary Points do not come within the specified
16421	// time interval of each other by looking ahead at input video. If another EBP
16422	// is going to come in within the specified time interval, the current EBP is
16423	// not emitted, and the segment is "stretched" to the next marker. The lookahead
16424	// value does not add latency to the system. The Live Event must be configured
16425	// elsewhere to create sufficient latency to make the lookahead accurate.
16426	EbpLookaheadMs *int64 `locationName:"ebpLookaheadMs" type:"integer"`
16427
16428	// Controls placement of EBP on Audio PIDs. If set to videoAndAudioPids, EBP
16429	// markers will be placed on the video PID and all audio PIDs. If set to videoPid,
16430	// EBP markers will be placed on only the video PID.
16431	EbpPlacement *string `locationName:"ebpPlacement" type:"string" enum:"M2tsEbpPlacement"`
16432
16433	// This field is unused and deprecated.
16434	EcmPid *string `locationName:"ecmPid" type:"string"`
16435
16436	// Include or exclude the ES Rate field in the PES header.
16437	EsRateInPes *string `locationName:"esRateInPes" type:"string" enum:"M2tsEsRateInPes"`
16438
16439	// Packet Identifier (PID) for input source ETV Platform data to this output.
16440	// Can be entered as a decimal or hexadecimal value. Valid values are 32 (or
16441	// 0x20)..8182 (or 0x1ff6).
16442	EtvPlatformPid *string `locationName:"etvPlatformPid" type:"string"`
16443
16444	// Packet Identifier (PID) for input source ETV Signal data to this output.
16445	// Can be entered as a decimal or hexadecimal value. Valid values are 32 (or
16446	// 0x20)..8182 (or 0x1ff6).
16447	EtvSignalPid *string `locationName:"etvSignalPid" type:"string"`
16448
16449	// The length in seconds of each fragment. Only used with EBP markers.
16450	FragmentTime *float64 `locationName:"fragmentTime" type:"double"`
16451
16452	// If set to passthrough, passes any KLV data from the input source to this
16453	// output.
16454	Klv *string `locationName:"klv" type:"string" enum:"M2tsKlv"`
16455
16456	// Packet Identifier (PID) for input source KLV data to this output. Multiple
16457	// values are accepted, and can be entered in ranges and/or by comma separation.
16458	// Can be entered as decimal or hexadecimal values. Each PID specified must
16459	// be in the range of 32 (or 0x20)..8182 (or 0x1ff6).
16460	KlvDataPids *string `locationName:"klvDataPids" type:"string"`
16461
16462	// If set to passthrough, Nielsen inaudible tones for media tracking will be
16463	// detected in the input audio and an equivalent ID3 tag will be inserted in
16464	// the output.
16465	NielsenId3Behavior *string `locationName:"nielsenId3Behavior" type:"string" enum:"M2tsNielsenId3Behavior"`
16466
16467	// Value in bits per second of extra null packets to insert into the transport
16468	// stream. This can be used if a downstream encryption system requires periodic
16469	// null packets.
16470	NullPacketBitrate *float64 `locationName:"nullPacketBitrate" type:"double"`
16471
16472	// The number of milliseconds between instances of this table in the output
16473	// transport stream. Valid values are 0, 10..1000.
16474	PatInterval *int64 `locationName:"patInterval" type:"integer"`
16475
16476	// When set to pcrEveryPesPacket, a Program Clock Reference value is inserted
16477	// for every Packetized Elementary Stream (PES) header. This parameter is effective
16478	// only when the PCR PID is the same as the video or audio elementary stream.
16479	PcrControl *string `locationName:"pcrControl" type:"string" enum:"M2tsPcrControl"`
16480
16481	// Maximum time in milliseconds between Program Clock Reference (PCRs) inserted
16482	// into the transport stream.
16483	PcrPeriod *int64 `locationName:"pcrPeriod" type:"integer"`
16484
16485	// Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport
16486	// stream. When no value is given, the encoder will assign the same value as
16487	// the Video PID. Can be entered as a decimal or hexadecimal value. Valid values
16488	// are 32 (or 0x20)..8182 (or 0x1ff6).
16489	PcrPid *string `locationName:"pcrPid" type:"string"`
16490
16491	// The number of milliseconds between instances of this table in the output
16492	// transport stream. Valid values are 0, 10..1000.
16493	PmtInterval *int64 `locationName:"pmtInterval" type:"integer"`
16494
16495	// Packet Identifier (PID) for the Program Map Table (PMT) in the transport
16496	// stream. Can be entered as a decimal or hexadecimal value. Valid values are
16497	// 32 (or 0x20)..8182 (or 0x1ff6).
16498	PmtPid *string `locationName:"pmtPid" type:"string"`
16499
16500	// The value of the program number field in the Program Map Table.
16501	ProgramNum *int64 `locationName:"programNum" type:"integer"`
16502
16503	// When vbr, does not insert null packets into transport stream to fill specified
16504	// bitrate. The bitrate setting acts as the maximum bitrate when vbr is set.
16505	RateMode *string `locationName:"rateMode" type:"string" enum:"M2tsRateMode"`
16506
16507	// Packet Identifier (PID) for input source SCTE-27 data to this output. Multiple
16508	// values are accepted, and can be entered in ranges and/or by comma separation.
16509	// Can be entered as decimal or hexadecimal values. Each PID specified must
16510	// be in the range of 32 (or 0x20)..8182 (or 0x1ff6).
16511	Scte27Pids *string `locationName:"scte27Pids" type:"string"`
16512
16513	// Optionally pass SCTE-35 signals from the input source to this output.
16514	Scte35Control *string `locationName:"scte35Control" type:"string" enum:"M2tsScte35Control"`
16515
16516	// Packet Identifier (PID) of the SCTE-35 stream in the transport stream. Can
16517	// be entered as a decimal or hexadecimal value. Valid values are 32 (or 0x20)..8182
16518	// (or 0x1ff6).
16519	Scte35Pid *string `locationName:"scte35Pid" type:"string"`
16520
16521	// Inserts segmentation markers at each segmentationTime period. raiSegstart
16522	// sets the Random Access Indicator bit in the adaptation field. raiAdapt sets
16523	// the RAI bit and adds the current timecode in the private data bytes. psiSegstart
16524	// inserts PAT and PMT tables at the start of segments. ebp adds Encoder Boundary
16525	// Point information to the adaptation field as per OpenCable specification
16526	// OC-SP-EBP-I01-130118. ebpLegacy adds Encoder Boundary Point information to
16527	// the adaptation field using a legacy proprietary format.
16528	SegmentationMarkers *string `locationName:"segmentationMarkers" type:"string" enum:"M2tsSegmentationMarkers"`
16529
16530	// The segmentation style parameter controls how segmentation markers are inserted
16531	// into the transport stream. With avails, it is possible that segments may
16532	// be truncated, which can influence where future segmentation markers are inserted.When
16533	// a segmentation style of "resetCadence" is selected and a segment is truncated
16534	// due to an avail, we will reset the segmentation cadence. This means the subsequent
16535	// segment will have a duration of $segmentationTime seconds.When a segmentation
16536	// style of "maintainCadence" is selected and a segment is truncated due to
16537	// an avail, we will not reset the segmentation cadence. This means the subsequent
16538	// segment will likely be truncated as well. However, all segments after that
16539	// will have a duration of $segmentationTime seconds. Note that EBP lookahead
16540	// is a slight exception to this rule.
16541	SegmentationStyle *string `locationName:"segmentationStyle" type:"string" enum:"M2tsSegmentationStyle"`
16542
16543	// The length in seconds of each segment. Required unless markers is set to
16544	// _none_.
16545	SegmentationTime *float64 `locationName:"segmentationTime" type:"double"`
16546
16547	// When set to passthrough, timed metadata will be passed through from input
16548	// to output.
16549	TimedMetadataBehavior *string `locationName:"timedMetadataBehavior" type:"string" enum:"M2tsTimedMetadataBehavior"`
16550
16551	// Packet Identifier (PID) of the timed metadata stream in the transport stream.
16552	// Can be entered as a decimal or hexadecimal value. Valid values are 32 (or
16553	// 0x20)..8182 (or 0x1ff6).
16554	TimedMetadataPid *string `locationName:"timedMetadataPid" type:"string"`
16555
16556	// The value of the transport stream ID field in the Program Map Table.
16557	TransportStreamId *int64 `locationName:"transportStreamId" type:"integer"`
16558
16559	// Packet Identifier (PID) of the elementary video stream in the transport stream.
16560	// Can be entered as a decimal or hexadecimal value. Valid values are 32 (or
16561	// 0x20)..8182 (or 0x1ff6).
16562	VideoPid *string `locationName:"videoPid" type:"string"`
16563}
16564
16565// String returns the string representation
16566func (s M2tsSettings) String() string {
16567	return awsutil.Prettify(s)
16568}
16569
16570// GoString returns the string representation
16571func (s M2tsSettings) GoString() string {
16572	return s.String()
16573}
16574
16575// Validate inspects the fields of the type to determine if they are valid.
16576func (s *M2tsSettings) Validate() error {
16577	invalidParams := request.ErrInvalidParams{Context: "M2tsSettings"}
16578	if s.DvbNitSettings != nil {
16579		if err := s.DvbNitSettings.Validate(); err != nil {
16580			invalidParams.AddNested("DvbNitSettings", err.(request.ErrInvalidParams))
16581		}
16582	}
16583	if s.DvbSdtSettings != nil {
16584		if err := s.DvbSdtSettings.Validate(); err != nil {
16585			invalidParams.AddNested("DvbSdtSettings", err.(request.ErrInvalidParams))
16586		}
16587	}
16588	if s.DvbTdtSettings != nil {
16589		if err := s.DvbTdtSettings.Validate(); err != nil {
16590			invalidParams.AddNested("DvbTdtSettings", err.(request.ErrInvalidParams))
16591		}
16592	}
16593
16594	if invalidParams.Len() > 0 {
16595		return invalidParams
16596	}
16597	return nil
16598}
16599
16600// SetAbsentInputAudioBehavior sets the AbsentInputAudioBehavior field's value.
16601func (s *M2tsSettings) SetAbsentInputAudioBehavior(v string) *M2tsSettings {
16602	s.AbsentInputAudioBehavior = &v
16603	return s
16604}
16605
16606// SetArib sets the Arib field's value.
16607func (s *M2tsSettings) SetArib(v string) *M2tsSettings {
16608	s.Arib = &v
16609	return s
16610}
16611
16612// SetAribCaptionsPid sets the AribCaptionsPid field's value.
16613func (s *M2tsSettings) SetAribCaptionsPid(v string) *M2tsSettings {
16614	s.AribCaptionsPid = &v
16615	return s
16616}
16617
16618// SetAribCaptionsPidControl sets the AribCaptionsPidControl field's value.
16619func (s *M2tsSettings) SetAribCaptionsPidControl(v string) *M2tsSettings {
16620	s.AribCaptionsPidControl = &v
16621	return s
16622}
16623
16624// SetAudioBufferModel sets the AudioBufferModel field's value.
16625func (s *M2tsSettings) SetAudioBufferModel(v string) *M2tsSettings {
16626	s.AudioBufferModel = &v
16627	return s
16628}
16629
16630// SetAudioFramesPerPes sets the AudioFramesPerPes field's value.
16631func (s *M2tsSettings) SetAudioFramesPerPes(v int64) *M2tsSettings {
16632	s.AudioFramesPerPes = &v
16633	return s
16634}
16635
16636// SetAudioPids sets the AudioPids field's value.
16637func (s *M2tsSettings) SetAudioPids(v string) *M2tsSettings {
16638	s.AudioPids = &v
16639	return s
16640}
16641
16642// SetAudioStreamType sets the AudioStreamType field's value.
16643func (s *M2tsSettings) SetAudioStreamType(v string) *M2tsSettings {
16644	s.AudioStreamType = &v
16645	return s
16646}
16647
16648// SetBitrate sets the Bitrate field's value.
16649func (s *M2tsSettings) SetBitrate(v int64) *M2tsSettings {
16650	s.Bitrate = &v
16651	return s
16652}
16653
16654// SetBufferModel sets the BufferModel field's value.
16655func (s *M2tsSettings) SetBufferModel(v string) *M2tsSettings {
16656	s.BufferModel = &v
16657	return s
16658}
16659
16660// SetCcDescriptor sets the CcDescriptor field's value.
16661func (s *M2tsSettings) SetCcDescriptor(v string) *M2tsSettings {
16662	s.CcDescriptor = &v
16663	return s
16664}
16665
16666// SetDvbNitSettings sets the DvbNitSettings field's value.
16667func (s *M2tsSettings) SetDvbNitSettings(v *DvbNitSettings) *M2tsSettings {
16668	s.DvbNitSettings = v
16669	return s
16670}
16671
16672// SetDvbSdtSettings sets the DvbSdtSettings field's value.
16673func (s *M2tsSettings) SetDvbSdtSettings(v *DvbSdtSettings) *M2tsSettings {
16674	s.DvbSdtSettings = v
16675	return s
16676}
16677
16678// SetDvbSubPids sets the DvbSubPids field's value.
16679func (s *M2tsSettings) SetDvbSubPids(v string) *M2tsSettings {
16680	s.DvbSubPids = &v
16681	return s
16682}
16683
16684// SetDvbTdtSettings sets the DvbTdtSettings field's value.
16685func (s *M2tsSettings) SetDvbTdtSettings(v *DvbTdtSettings) *M2tsSettings {
16686	s.DvbTdtSettings = v
16687	return s
16688}
16689
16690// SetDvbTeletextPid sets the DvbTeletextPid field's value.
16691func (s *M2tsSettings) SetDvbTeletextPid(v string) *M2tsSettings {
16692	s.DvbTeletextPid = &v
16693	return s
16694}
16695
16696// SetEbif sets the Ebif field's value.
16697func (s *M2tsSettings) SetEbif(v string) *M2tsSettings {
16698	s.Ebif = &v
16699	return s
16700}
16701
16702// SetEbpAudioInterval sets the EbpAudioInterval field's value.
16703func (s *M2tsSettings) SetEbpAudioInterval(v string) *M2tsSettings {
16704	s.EbpAudioInterval = &v
16705	return s
16706}
16707
16708// SetEbpLookaheadMs sets the EbpLookaheadMs field's value.
16709func (s *M2tsSettings) SetEbpLookaheadMs(v int64) *M2tsSettings {
16710	s.EbpLookaheadMs = &v
16711	return s
16712}
16713
16714// SetEbpPlacement sets the EbpPlacement field's value.
16715func (s *M2tsSettings) SetEbpPlacement(v string) *M2tsSettings {
16716	s.EbpPlacement = &v
16717	return s
16718}
16719
16720// SetEcmPid sets the EcmPid field's value.
16721func (s *M2tsSettings) SetEcmPid(v string) *M2tsSettings {
16722	s.EcmPid = &v
16723	return s
16724}
16725
16726// SetEsRateInPes sets the EsRateInPes field's value.
16727func (s *M2tsSettings) SetEsRateInPes(v string) *M2tsSettings {
16728	s.EsRateInPes = &v
16729	return s
16730}
16731
16732// SetEtvPlatformPid sets the EtvPlatformPid field's value.
16733func (s *M2tsSettings) SetEtvPlatformPid(v string) *M2tsSettings {
16734	s.EtvPlatformPid = &v
16735	return s
16736}
16737
16738// SetEtvSignalPid sets the EtvSignalPid field's value.
16739func (s *M2tsSettings) SetEtvSignalPid(v string) *M2tsSettings {
16740	s.EtvSignalPid = &v
16741	return s
16742}
16743
16744// SetFragmentTime sets the FragmentTime field's value.
16745func (s *M2tsSettings) SetFragmentTime(v float64) *M2tsSettings {
16746	s.FragmentTime = &v
16747	return s
16748}
16749
16750// SetKlv sets the Klv field's value.
16751func (s *M2tsSettings) SetKlv(v string) *M2tsSettings {
16752	s.Klv = &v
16753	return s
16754}
16755
16756// SetKlvDataPids sets the KlvDataPids field's value.
16757func (s *M2tsSettings) SetKlvDataPids(v string) *M2tsSettings {
16758	s.KlvDataPids = &v
16759	return s
16760}
16761
16762// SetNielsenId3Behavior sets the NielsenId3Behavior field's value.
16763func (s *M2tsSettings) SetNielsenId3Behavior(v string) *M2tsSettings {
16764	s.NielsenId3Behavior = &v
16765	return s
16766}
16767
16768// SetNullPacketBitrate sets the NullPacketBitrate field's value.
16769func (s *M2tsSettings) SetNullPacketBitrate(v float64) *M2tsSettings {
16770	s.NullPacketBitrate = &v
16771	return s
16772}
16773
16774// SetPatInterval sets the PatInterval field's value.
16775func (s *M2tsSettings) SetPatInterval(v int64) *M2tsSettings {
16776	s.PatInterval = &v
16777	return s
16778}
16779
16780// SetPcrControl sets the PcrControl field's value.
16781func (s *M2tsSettings) SetPcrControl(v string) *M2tsSettings {
16782	s.PcrControl = &v
16783	return s
16784}
16785
16786// SetPcrPeriod sets the PcrPeriod field's value.
16787func (s *M2tsSettings) SetPcrPeriod(v int64) *M2tsSettings {
16788	s.PcrPeriod = &v
16789	return s
16790}
16791
16792// SetPcrPid sets the PcrPid field's value.
16793func (s *M2tsSettings) SetPcrPid(v string) *M2tsSettings {
16794	s.PcrPid = &v
16795	return s
16796}
16797
16798// SetPmtInterval sets the PmtInterval field's value.
16799func (s *M2tsSettings) SetPmtInterval(v int64) *M2tsSettings {
16800	s.PmtInterval = &v
16801	return s
16802}
16803
16804// SetPmtPid sets the PmtPid field's value.
16805func (s *M2tsSettings) SetPmtPid(v string) *M2tsSettings {
16806	s.PmtPid = &v
16807	return s
16808}
16809
16810// SetProgramNum sets the ProgramNum field's value.
16811func (s *M2tsSettings) SetProgramNum(v int64) *M2tsSettings {
16812	s.ProgramNum = &v
16813	return s
16814}
16815
16816// SetRateMode sets the RateMode field's value.
16817func (s *M2tsSettings) SetRateMode(v string) *M2tsSettings {
16818	s.RateMode = &v
16819	return s
16820}
16821
16822// SetScte27Pids sets the Scte27Pids field's value.
16823func (s *M2tsSettings) SetScte27Pids(v string) *M2tsSettings {
16824	s.Scte27Pids = &v
16825	return s
16826}
16827
16828// SetScte35Control sets the Scte35Control field's value.
16829func (s *M2tsSettings) SetScte35Control(v string) *M2tsSettings {
16830	s.Scte35Control = &v
16831	return s
16832}
16833
16834// SetScte35Pid sets the Scte35Pid field's value.
16835func (s *M2tsSettings) SetScte35Pid(v string) *M2tsSettings {
16836	s.Scte35Pid = &v
16837	return s
16838}
16839
16840// SetSegmentationMarkers sets the SegmentationMarkers field's value.
16841func (s *M2tsSettings) SetSegmentationMarkers(v string) *M2tsSettings {
16842	s.SegmentationMarkers = &v
16843	return s
16844}
16845
16846// SetSegmentationStyle sets the SegmentationStyle field's value.
16847func (s *M2tsSettings) SetSegmentationStyle(v string) *M2tsSettings {
16848	s.SegmentationStyle = &v
16849	return s
16850}
16851
16852// SetSegmentationTime sets the SegmentationTime field's value.
16853func (s *M2tsSettings) SetSegmentationTime(v float64) *M2tsSettings {
16854	s.SegmentationTime = &v
16855	return s
16856}
16857
16858// SetTimedMetadataBehavior sets the TimedMetadataBehavior field's value.
16859func (s *M2tsSettings) SetTimedMetadataBehavior(v string) *M2tsSettings {
16860	s.TimedMetadataBehavior = &v
16861	return s
16862}
16863
16864// SetTimedMetadataPid sets the TimedMetadataPid field's value.
16865func (s *M2tsSettings) SetTimedMetadataPid(v string) *M2tsSettings {
16866	s.TimedMetadataPid = &v
16867	return s
16868}
16869
16870// SetTransportStreamId sets the TransportStreamId field's value.
16871func (s *M2tsSettings) SetTransportStreamId(v int64) *M2tsSettings {
16872	s.TransportStreamId = &v
16873	return s
16874}
16875
16876// SetVideoPid sets the VideoPid field's value.
16877func (s *M2tsSettings) SetVideoPid(v string) *M2tsSettings {
16878	s.VideoPid = &v
16879	return s
16880}
16881
16882// Settings information for the .m3u8 container
16883type M3u8Settings struct {
16884	_ struct{} `type:"structure"`
16885
16886	// The number of audio frames to insert for each PES packet.
16887	AudioFramesPerPes *int64 `locationName:"audioFramesPerPes" type:"integer"`
16888
16889	// Packet Identifier (PID) of the elementary audio stream(s) in the transport
16890	// stream. Multiple values are accepted, and can be entered in ranges and/or
16891	// by comma separation. Can be entered as decimal or hexadecimal values.
16892	AudioPids *string `locationName:"audioPids" type:"string"`
16893
16894	// This parameter is unused and deprecated.
16895	EcmPid *string `locationName:"ecmPid" type:"string"`
16896
16897	// If set to passthrough, Nielsen inaudible tones for media tracking will be
16898	// detected in the input audio and an equivalent ID3 tag will be inserted in
16899	// the output.
16900	NielsenId3Behavior *string `locationName:"nielsenId3Behavior" type:"string" enum:"M3u8NielsenId3Behavior"`
16901
16902	// The number of milliseconds between instances of this table in the output
16903	// transport stream. A value of \"0\" writes out the PMT once per segment file.
16904	PatInterval *int64 `locationName:"patInterval" type:"integer"`
16905
16906	// When set to pcrEveryPesPacket, a Program Clock Reference value is inserted
16907	// for every Packetized Elementary Stream (PES) header. This parameter is effective
16908	// only when the PCR PID is the same as the video or audio elementary stream.
16909	PcrControl *string `locationName:"pcrControl" type:"string" enum:"M3u8PcrControl"`
16910
16911	// Maximum time in milliseconds between Program Clock References (PCRs) inserted
16912	// into the transport stream.
16913	PcrPeriod *int64 `locationName:"pcrPeriod" type:"integer"`
16914
16915	// Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport
16916	// stream. When no value is given, the encoder will assign the same value as
16917	// the Video PID. Can be entered as a decimal or hexadecimal value.
16918	PcrPid *string `locationName:"pcrPid" type:"string"`
16919
16920	// The number of milliseconds between instances of this table in the output
16921	// transport stream. A value of \"0\" writes out the PMT once per segment file.
16922	PmtInterval *int64 `locationName:"pmtInterval" type:"integer"`
16923
16924	// Packet Identifier (PID) for the Program Map Table (PMT) in the transport
16925	// stream. Can be entered as a decimal or hexadecimal value.
16926	PmtPid *string `locationName:"pmtPid" type:"string"`
16927
16928	// The value of the program number field in the Program Map Table.
16929	ProgramNum *int64 `locationName:"programNum" type:"integer"`
16930
16931	// If set to passthrough, passes any SCTE-35 signals from the input source to
16932	// this output.
16933	Scte35Behavior *string `locationName:"scte35Behavior" type:"string" enum:"M3u8Scte35Behavior"`
16934
16935	// Packet Identifier (PID) of the SCTE-35 stream in the transport stream. Can
16936	// be entered as a decimal or hexadecimal value.
16937	Scte35Pid *string `locationName:"scte35Pid" type:"string"`
16938
16939	// When set to passthrough, timed metadata is passed through from input to output.
16940	TimedMetadataBehavior *string `locationName:"timedMetadataBehavior" type:"string" enum:"M3u8TimedMetadataBehavior"`
16941
16942	// Packet Identifier (PID) of the timed metadata stream in the transport stream.
16943	// Can be entered as a decimal or hexadecimal value. Valid values are 32 (or
16944	// 0x20)..8182 (or 0x1ff6).
16945	TimedMetadataPid *string `locationName:"timedMetadataPid" type:"string"`
16946
16947	// The value of the transport stream ID field in the Program Map Table.
16948	TransportStreamId *int64 `locationName:"transportStreamId" type:"integer"`
16949
16950	// Packet Identifier (PID) of the elementary video stream in the transport stream.
16951	// Can be entered as a decimal or hexadecimal value.
16952	VideoPid *string `locationName:"videoPid" type:"string"`
16953}
16954
16955// String returns the string representation
16956func (s M3u8Settings) String() string {
16957	return awsutil.Prettify(s)
16958}
16959
16960// GoString returns the string representation
16961func (s M3u8Settings) GoString() string {
16962	return s.String()
16963}
16964
16965// SetAudioFramesPerPes sets the AudioFramesPerPes field's value.
16966func (s *M3u8Settings) SetAudioFramesPerPes(v int64) *M3u8Settings {
16967	s.AudioFramesPerPes = &v
16968	return s
16969}
16970
16971// SetAudioPids sets the AudioPids field's value.
16972func (s *M3u8Settings) SetAudioPids(v string) *M3u8Settings {
16973	s.AudioPids = &v
16974	return s
16975}
16976
16977// SetEcmPid sets the EcmPid field's value.
16978func (s *M3u8Settings) SetEcmPid(v string) *M3u8Settings {
16979	s.EcmPid = &v
16980	return s
16981}
16982
16983// SetNielsenId3Behavior sets the NielsenId3Behavior field's value.
16984func (s *M3u8Settings) SetNielsenId3Behavior(v string) *M3u8Settings {
16985	s.NielsenId3Behavior = &v
16986	return s
16987}
16988
16989// SetPatInterval sets the PatInterval field's value.
16990func (s *M3u8Settings) SetPatInterval(v int64) *M3u8Settings {
16991	s.PatInterval = &v
16992	return s
16993}
16994
16995// SetPcrControl sets the PcrControl field's value.
16996func (s *M3u8Settings) SetPcrControl(v string) *M3u8Settings {
16997	s.PcrControl = &v
16998	return s
16999}
17000
17001// SetPcrPeriod sets the PcrPeriod field's value.
17002func (s *M3u8Settings) SetPcrPeriod(v int64) *M3u8Settings {
17003	s.PcrPeriod = &v
17004	return s
17005}
17006
17007// SetPcrPid sets the PcrPid field's value.
17008func (s *M3u8Settings) SetPcrPid(v string) *M3u8Settings {
17009	s.PcrPid = &v
17010	return s
17011}
17012
17013// SetPmtInterval sets the PmtInterval field's value.
17014func (s *M3u8Settings) SetPmtInterval(v int64) *M3u8Settings {
17015	s.PmtInterval = &v
17016	return s
17017}
17018
17019// SetPmtPid sets the PmtPid field's value.
17020func (s *M3u8Settings) SetPmtPid(v string) *M3u8Settings {
17021	s.PmtPid = &v
17022	return s
17023}
17024
17025// SetProgramNum sets the ProgramNum field's value.
17026func (s *M3u8Settings) SetProgramNum(v int64) *M3u8Settings {
17027	s.ProgramNum = &v
17028	return s
17029}
17030
17031// SetScte35Behavior sets the Scte35Behavior field's value.
17032func (s *M3u8Settings) SetScte35Behavior(v string) *M3u8Settings {
17033	s.Scte35Behavior = &v
17034	return s
17035}
17036
17037// SetScte35Pid sets the Scte35Pid field's value.
17038func (s *M3u8Settings) SetScte35Pid(v string) *M3u8Settings {
17039	s.Scte35Pid = &v
17040	return s
17041}
17042
17043// SetTimedMetadataBehavior sets the TimedMetadataBehavior field's value.
17044func (s *M3u8Settings) SetTimedMetadataBehavior(v string) *M3u8Settings {
17045	s.TimedMetadataBehavior = &v
17046	return s
17047}
17048
17049// SetTimedMetadataPid sets the TimedMetadataPid field's value.
17050func (s *M3u8Settings) SetTimedMetadataPid(v string) *M3u8Settings {
17051	s.TimedMetadataPid = &v
17052	return s
17053}
17054
17055// SetTransportStreamId sets the TransportStreamId field's value.
17056func (s *M3u8Settings) SetTransportStreamId(v int64) *M3u8Settings {
17057	s.TransportStreamId = &v
17058	return s
17059}
17060
17061// SetVideoPid sets the VideoPid field's value.
17062func (s *M3u8Settings) SetVideoPid(v string) *M3u8Settings {
17063	s.VideoPid = &v
17064	return s
17065}
17066
17067// The settings for a MediaConnect Flow.
17068type MediaConnectFlow struct {
17069	_ struct{} `type:"structure"`
17070
17071	// The unique ARN of the MediaConnect Flow being used as a source.
17072	FlowArn *string `locationName:"flowArn" type:"string"`
17073}
17074
17075// String returns the string representation
17076func (s MediaConnectFlow) String() string {
17077	return awsutil.Prettify(s)
17078}
17079
17080// GoString returns the string representation
17081func (s MediaConnectFlow) GoString() string {
17082	return s.String()
17083}
17084
17085// SetFlowArn sets the FlowArn field's value.
17086func (s *MediaConnectFlow) SetFlowArn(v string) *MediaConnectFlow {
17087	s.FlowArn = &v
17088	return s
17089}
17090
17091// The settings for a MediaConnect Flow.
17092type MediaConnectFlowRequest struct {
17093	_ struct{} `type:"structure"`
17094
17095	// The ARN of the MediaConnect Flow that you want to use as a source.
17096	FlowArn *string `locationName:"flowArn" type:"string"`
17097}
17098
17099// String returns the string representation
17100func (s MediaConnectFlowRequest) String() string {
17101	return awsutil.Prettify(s)
17102}
17103
17104// GoString returns the string representation
17105func (s MediaConnectFlowRequest) GoString() string {
17106	return s.String()
17107}
17108
17109// SetFlowArn sets the FlowArn field's value.
17110func (s *MediaConnectFlowRequest) SetFlowArn(v string) *MediaConnectFlowRequest {
17111	s.FlowArn = &v
17112	return s
17113}
17114
17115// Media Package Group Settings
17116type MediaPackageGroupSettings struct {
17117	_ struct{} `type:"structure"`
17118
17119	// MediaPackage channel destination.
17120	//
17121	// Destination is a required field
17122	Destination *OutputLocationRef `locationName:"destination" type:"structure" required:"true"`
17123}
17124
17125// String returns the string representation
17126func (s MediaPackageGroupSettings) String() string {
17127	return awsutil.Prettify(s)
17128}
17129
17130// GoString returns the string representation
17131func (s MediaPackageGroupSettings) GoString() string {
17132	return s.String()
17133}
17134
17135// Validate inspects the fields of the type to determine if they are valid.
17136func (s *MediaPackageGroupSettings) Validate() error {
17137	invalidParams := request.ErrInvalidParams{Context: "MediaPackageGroupSettings"}
17138	if s.Destination == nil {
17139		invalidParams.Add(request.NewErrParamRequired("Destination"))
17140	}
17141
17142	if invalidParams.Len() > 0 {
17143		return invalidParams
17144	}
17145	return nil
17146}
17147
17148// SetDestination sets the Destination field's value.
17149func (s *MediaPackageGroupSettings) SetDestination(v *OutputLocationRef) *MediaPackageGroupSettings {
17150	s.Destination = v
17151	return s
17152}
17153
17154// MediaPackage Output Destination Settings
17155type MediaPackageOutputDestinationSettings struct {
17156	_ struct{} `type:"structure"`
17157
17158	// ID of the channel in MediaPackage that is the destination for this output
17159	// group. You do not need to specify the individual inputs in MediaPackage;
17160	// MediaLive will handle the connection of the two MediaLive pipelines to the
17161	// two MediaPackage inputs. The MediaPackage channel and MediaLive channel must
17162	// be in the same region.
17163	ChannelId *string `locationName:"channelId" min:"1" type:"string"`
17164}
17165
17166// String returns the string representation
17167func (s MediaPackageOutputDestinationSettings) String() string {
17168	return awsutil.Prettify(s)
17169}
17170
17171// GoString returns the string representation
17172func (s MediaPackageOutputDestinationSettings) GoString() string {
17173	return s.String()
17174}
17175
17176// Validate inspects the fields of the type to determine if they are valid.
17177func (s *MediaPackageOutputDestinationSettings) Validate() error {
17178	invalidParams := request.ErrInvalidParams{Context: "MediaPackageOutputDestinationSettings"}
17179	if s.ChannelId != nil && len(*s.ChannelId) < 1 {
17180		invalidParams.Add(request.NewErrParamMinLen("ChannelId", 1))
17181	}
17182
17183	if invalidParams.Len() > 0 {
17184		return invalidParams
17185	}
17186	return nil
17187}
17188
17189// SetChannelId sets the ChannelId field's value.
17190func (s *MediaPackageOutputDestinationSettings) SetChannelId(v string) *MediaPackageOutputDestinationSettings {
17191	s.ChannelId = &v
17192	return s
17193}
17194
17195// Media Package Output Settings
17196type MediaPackageOutputSettings struct {
17197	_ struct{} `type:"structure"`
17198}
17199
17200// String returns the string representation
17201func (s MediaPackageOutputSettings) String() string {
17202	return awsutil.Prettify(s)
17203}
17204
17205// GoString returns the string representation
17206func (s MediaPackageOutputSettings) GoString() string {
17207	return s.String()
17208}
17209
17210// Mp2 Settings
17211type Mp2Settings struct {
17212	_ struct{} `type:"structure"`
17213
17214	// Average bitrate in bits/second.
17215	Bitrate *float64 `locationName:"bitrate" type:"double"`
17216
17217	// The MPEG2 Audio coding mode. Valid values are codingMode10 (for mono) or
17218	// codingMode20 (for stereo).
17219	CodingMode *string `locationName:"codingMode" type:"string" enum:"Mp2CodingMode"`
17220
17221	// Sample rate in Hz.
17222	SampleRate *float64 `locationName:"sampleRate" type:"double"`
17223}
17224
17225// String returns the string representation
17226func (s Mp2Settings) String() string {
17227	return awsutil.Prettify(s)
17228}
17229
17230// GoString returns the string representation
17231func (s Mp2Settings) GoString() string {
17232	return s.String()
17233}
17234
17235// SetBitrate sets the Bitrate field's value.
17236func (s *Mp2Settings) SetBitrate(v float64) *Mp2Settings {
17237	s.Bitrate = &v
17238	return s
17239}
17240
17241// SetCodingMode sets the CodingMode field's value.
17242func (s *Mp2Settings) SetCodingMode(v string) *Mp2Settings {
17243	s.CodingMode = &v
17244	return s
17245}
17246
17247// SetSampleRate sets the SampleRate field's value.
17248func (s *Mp2Settings) SetSampleRate(v float64) *Mp2Settings {
17249	s.SampleRate = &v
17250	return s
17251}
17252
17253// Ms Smooth Group Settings
17254type MsSmoothGroupSettings struct {
17255	_ struct{} `type:"structure"`
17256
17257	// The ID to include in each message in the sparse track. Ignored if sparseTrackType
17258	// is NONE.
17259	AcquisitionPointId *string `locationName:"acquisitionPointId" type:"string"`
17260
17261	// If set to passthrough for an audio-only MS Smooth output, the fragment absolute
17262	// time will be set to the current timecode. This option does not write timecodes
17263	// to the audio elementary stream.
17264	AudioOnlyTimecodeControl *string `locationName:"audioOnlyTimecodeControl" type:"string" enum:"SmoothGroupAudioOnlyTimecodeControl"`
17265
17266	// If set to verifyAuthenticity, verify the https certificate chain to a trusted
17267	// Certificate Authority (CA). This will cause https outputs to self-signed
17268	// certificates to fail.
17269	CertificateMode *string `locationName:"certificateMode" type:"string" enum:"SmoothGroupCertificateMode"`
17270
17271	// Number of seconds to wait before retrying connection to the IIS server if
17272	// the connection is lost. Content will be cached during this time and the cache
17273	// will be be delivered to the IIS server once the connection is re-established.
17274	ConnectionRetryInterval *int64 `locationName:"connectionRetryInterval" type:"integer"`
17275
17276	// Smooth Streaming publish point on an IIS server. Elemental Live acts as a
17277	// "Push" encoder to IIS.
17278	//
17279	// Destination is a required field
17280	Destination *OutputLocationRef `locationName:"destination" type:"structure" required:"true"`
17281
17282	// MS Smooth event ID to be sent to the IIS server.Should only be specified
17283	// if eventIdMode is set to useConfigured.
17284	EventId *string `locationName:"eventId" type:"string"`
17285
17286	// Specifies whether or not to send an event ID to the IIS server. If no event
17287	// ID is sent and the same Live Event is used without changing the publishing
17288	// point, clients might see cached video from the previous run.Options:- "useConfigured"
17289	// - use the value provided in eventId- "useTimestamp" - generate and send an
17290	// event ID based on the current timestamp- "noEventId" - do not send an event
17291	// ID to the IIS server.
17292	EventIdMode *string `locationName:"eventIdMode" type:"string" enum:"SmoothGroupEventIdMode"`
17293
17294	// When set to sendEos, send EOS signal to IIS server when stopping the event
17295	EventStopBehavior *string `locationName:"eventStopBehavior" type:"string" enum:"SmoothGroupEventStopBehavior"`
17296
17297	// Size in seconds of file cache for streaming outputs.
17298	FilecacheDuration *int64 `locationName:"filecacheDuration" type:"integer"`
17299
17300	// Length of mp4 fragments to generate (in seconds). Fragment length must be
17301	// compatible with GOP size and framerate.
17302	FragmentLength *int64 `locationName:"fragmentLength" min:"1" type:"integer"`
17303
17304	// Parameter that control output group behavior on input loss.
17305	InputLossAction *string `locationName:"inputLossAction" type:"string" enum:"InputLossActionForMsSmoothOut"`
17306
17307	// Number of retry attempts.
17308	NumRetries *int64 `locationName:"numRetries" type:"integer"`
17309
17310	// Number of seconds before initiating a restart due to output failure, due
17311	// to exhausting the numRetries on one segment, or exceeding filecacheDuration.
17312	RestartDelay *int64 `locationName:"restartDelay" type:"integer"`
17313
17314	// useInputSegmentation has been deprecated. The configured segment size is
17315	// always used.
17316	SegmentationMode *string `locationName:"segmentationMode" type:"string" enum:"SmoothGroupSegmentationMode"`
17317
17318	// Number of milliseconds to delay the output from the second pipeline.
17319	SendDelayMs *int64 `locationName:"sendDelayMs" type:"integer"`
17320
17321	// Identifies the type of data to place in the sparse track:- SCTE35: Insert
17322	// SCTE-35 messages from the source content. With each message, insert an IDR
17323	// frame to start a new segment.- SCTE35_WITHOUT_SEGMENTATION: Insert SCTE-35
17324	// messages from the source content. With each message, insert an IDR frame
17325	// but don't start a new segment.- NONE: Don't generate a sparse track for any
17326	// outputs in this output group.
17327	SparseTrackType *string `locationName:"sparseTrackType" type:"string" enum:"SmoothGroupSparseTrackType"`
17328
17329	// When set to send, send stream manifest so publishing point doesn't start
17330	// until all streams start.
17331	StreamManifestBehavior *string `locationName:"streamManifestBehavior" type:"string" enum:"SmoothGroupStreamManifestBehavior"`
17332
17333	// Timestamp offset for the event. Only used if timestampOffsetMode is set to
17334	// useConfiguredOffset.
17335	TimestampOffset *string `locationName:"timestampOffset" type:"string"`
17336
17337	// Type of timestamp date offset to use.- useEventStartDate: Use the date the
17338	// event was started as the offset- useConfiguredOffset: Use an explicitly configured
17339	// date as the offset
17340	TimestampOffsetMode *string `locationName:"timestampOffsetMode" type:"string" enum:"SmoothGroupTimestampOffsetMode"`
17341}
17342
17343// String returns the string representation
17344func (s MsSmoothGroupSettings) String() string {
17345	return awsutil.Prettify(s)
17346}
17347
17348// GoString returns the string representation
17349func (s MsSmoothGroupSettings) GoString() string {
17350	return s.String()
17351}
17352
17353// Validate inspects the fields of the type to determine if they are valid.
17354func (s *MsSmoothGroupSettings) Validate() error {
17355	invalidParams := request.ErrInvalidParams{Context: "MsSmoothGroupSettings"}
17356	if s.Destination == nil {
17357		invalidParams.Add(request.NewErrParamRequired("Destination"))
17358	}
17359	if s.FragmentLength != nil && *s.FragmentLength < 1 {
17360		invalidParams.Add(request.NewErrParamMinValue("FragmentLength", 1))
17361	}
17362
17363	if invalidParams.Len() > 0 {
17364		return invalidParams
17365	}
17366	return nil
17367}
17368
17369// SetAcquisitionPointId sets the AcquisitionPointId field's value.
17370func (s *MsSmoothGroupSettings) SetAcquisitionPointId(v string) *MsSmoothGroupSettings {
17371	s.AcquisitionPointId = &v
17372	return s
17373}
17374
17375// SetAudioOnlyTimecodeControl sets the AudioOnlyTimecodeControl field's value.
17376func (s *MsSmoothGroupSettings) SetAudioOnlyTimecodeControl(v string) *MsSmoothGroupSettings {
17377	s.AudioOnlyTimecodeControl = &v
17378	return s
17379}
17380
17381// SetCertificateMode sets the CertificateMode field's value.
17382func (s *MsSmoothGroupSettings) SetCertificateMode(v string) *MsSmoothGroupSettings {
17383	s.CertificateMode = &v
17384	return s
17385}
17386
17387// SetConnectionRetryInterval sets the ConnectionRetryInterval field's value.
17388func (s *MsSmoothGroupSettings) SetConnectionRetryInterval(v int64) *MsSmoothGroupSettings {
17389	s.ConnectionRetryInterval = &v
17390	return s
17391}
17392
17393// SetDestination sets the Destination field's value.
17394func (s *MsSmoothGroupSettings) SetDestination(v *OutputLocationRef) *MsSmoothGroupSettings {
17395	s.Destination = v
17396	return s
17397}
17398
17399// SetEventId sets the EventId field's value.
17400func (s *MsSmoothGroupSettings) SetEventId(v string) *MsSmoothGroupSettings {
17401	s.EventId = &v
17402	return s
17403}
17404
17405// SetEventIdMode sets the EventIdMode field's value.
17406func (s *MsSmoothGroupSettings) SetEventIdMode(v string) *MsSmoothGroupSettings {
17407	s.EventIdMode = &v
17408	return s
17409}
17410
17411// SetEventStopBehavior sets the EventStopBehavior field's value.
17412func (s *MsSmoothGroupSettings) SetEventStopBehavior(v string) *MsSmoothGroupSettings {
17413	s.EventStopBehavior = &v
17414	return s
17415}
17416
17417// SetFilecacheDuration sets the FilecacheDuration field's value.
17418func (s *MsSmoothGroupSettings) SetFilecacheDuration(v int64) *MsSmoothGroupSettings {
17419	s.FilecacheDuration = &v
17420	return s
17421}
17422
17423// SetFragmentLength sets the FragmentLength field's value.
17424func (s *MsSmoothGroupSettings) SetFragmentLength(v int64) *MsSmoothGroupSettings {
17425	s.FragmentLength = &v
17426	return s
17427}
17428
17429// SetInputLossAction sets the InputLossAction field's value.
17430func (s *MsSmoothGroupSettings) SetInputLossAction(v string) *MsSmoothGroupSettings {
17431	s.InputLossAction = &v
17432	return s
17433}
17434
17435// SetNumRetries sets the NumRetries field's value.
17436func (s *MsSmoothGroupSettings) SetNumRetries(v int64) *MsSmoothGroupSettings {
17437	s.NumRetries = &v
17438	return s
17439}
17440
17441// SetRestartDelay sets the RestartDelay field's value.
17442func (s *MsSmoothGroupSettings) SetRestartDelay(v int64) *MsSmoothGroupSettings {
17443	s.RestartDelay = &v
17444	return s
17445}
17446
17447// SetSegmentationMode sets the SegmentationMode field's value.
17448func (s *MsSmoothGroupSettings) SetSegmentationMode(v string) *MsSmoothGroupSettings {
17449	s.SegmentationMode = &v
17450	return s
17451}
17452
17453// SetSendDelayMs sets the SendDelayMs field's value.
17454func (s *MsSmoothGroupSettings) SetSendDelayMs(v int64) *MsSmoothGroupSettings {
17455	s.SendDelayMs = &v
17456	return s
17457}
17458
17459// SetSparseTrackType sets the SparseTrackType field's value.
17460func (s *MsSmoothGroupSettings) SetSparseTrackType(v string) *MsSmoothGroupSettings {
17461	s.SparseTrackType = &v
17462	return s
17463}
17464
17465// SetStreamManifestBehavior sets the StreamManifestBehavior field's value.
17466func (s *MsSmoothGroupSettings) SetStreamManifestBehavior(v string) *MsSmoothGroupSettings {
17467	s.StreamManifestBehavior = &v
17468	return s
17469}
17470
17471// SetTimestampOffset sets the TimestampOffset field's value.
17472func (s *MsSmoothGroupSettings) SetTimestampOffset(v string) *MsSmoothGroupSettings {
17473	s.TimestampOffset = &v
17474	return s
17475}
17476
17477// SetTimestampOffsetMode sets the TimestampOffsetMode field's value.
17478func (s *MsSmoothGroupSettings) SetTimestampOffsetMode(v string) *MsSmoothGroupSettings {
17479	s.TimestampOffsetMode = &v
17480	return s
17481}
17482
17483// Ms Smooth Output Settings
17484type MsSmoothOutputSettings struct {
17485	_ struct{} `type:"structure"`
17486
17487	// Only applicable when this output is referencing an H.265 video description.Specifies
17488	// whether MP4 segments should be packaged as HEV1 or HVC1.
17489	H265PackagingType *string `locationName:"h265PackagingType" type:"string" enum:"MsSmoothH265PackagingType"`
17490
17491	// String concatenated to the end of the destination filename. Required for
17492	// multiple outputs of the same type.
17493	NameModifier *string `locationName:"nameModifier" type:"string"`
17494}
17495
17496// String returns the string representation
17497func (s MsSmoothOutputSettings) String() string {
17498	return awsutil.Prettify(s)
17499}
17500
17501// GoString returns the string representation
17502func (s MsSmoothOutputSettings) GoString() string {
17503	return s.String()
17504}
17505
17506// SetH265PackagingType sets the H265PackagingType field's value.
17507func (s *MsSmoothOutputSettings) SetH265PackagingType(v string) *MsSmoothOutputSettings {
17508	s.H265PackagingType = &v
17509	return s
17510}
17511
17512// SetNameModifier sets the NameModifier field's value.
17513func (s *MsSmoothOutputSettings) SetNameModifier(v string) *MsSmoothOutputSettings {
17514	s.NameModifier = &v
17515	return s
17516}
17517
17518// The multiplex object.
17519type Multiplex struct {
17520	_ struct{} `type:"structure"`
17521
17522	// The unique arn of the multiplex.
17523	Arn *string `locationName:"arn" type:"string"`
17524
17525	// A list of availability zones for the multiplex.
17526	AvailabilityZones []*string `locationName:"availabilityZones" type:"list"`
17527
17528	// A list of the multiplex output destinations.
17529	Destinations []*MultiplexOutputDestination `locationName:"destinations" type:"list"`
17530
17531	// The unique id of the multiplex.
17532	Id *string `locationName:"id" type:"string"`
17533
17534	// Configuration for a multiplex event.
17535	MultiplexSettings *MultiplexSettings `locationName:"multiplexSettings" type:"structure"`
17536
17537	// The name of the multiplex.
17538	Name *string `locationName:"name" type:"string"`
17539
17540	// The number of currently healthy pipelines.
17541	PipelinesRunningCount *int64 `locationName:"pipelinesRunningCount" type:"integer"`
17542
17543	// The number of programs in the multiplex.
17544	ProgramCount *int64 `locationName:"programCount" type:"integer"`
17545
17546	// The current state of the multiplex.
17547	State *string `locationName:"state" type:"string" enum:"MultiplexState"`
17548
17549	// A collection of key-value pairs.
17550	Tags map[string]*string `locationName:"tags" type:"map"`
17551}
17552
17553// String returns the string representation
17554func (s Multiplex) String() string {
17555	return awsutil.Prettify(s)
17556}
17557
17558// GoString returns the string representation
17559func (s Multiplex) GoString() string {
17560	return s.String()
17561}
17562
17563// SetArn sets the Arn field's value.
17564func (s *Multiplex) SetArn(v string) *Multiplex {
17565	s.Arn = &v
17566	return s
17567}
17568
17569// SetAvailabilityZones sets the AvailabilityZones field's value.
17570func (s *Multiplex) SetAvailabilityZones(v []*string) *Multiplex {
17571	s.AvailabilityZones = v
17572	return s
17573}
17574
17575// SetDestinations sets the Destinations field's value.
17576func (s *Multiplex) SetDestinations(v []*MultiplexOutputDestination) *Multiplex {
17577	s.Destinations = v
17578	return s
17579}
17580
17581// SetId sets the Id field's value.
17582func (s *Multiplex) SetId(v string) *Multiplex {
17583	s.Id = &v
17584	return s
17585}
17586
17587// SetMultiplexSettings sets the MultiplexSettings field's value.
17588func (s *Multiplex) SetMultiplexSettings(v *MultiplexSettings) *Multiplex {
17589	s.MultiplexSettings = v
17590	return s
17591}
17592
17593// SetName sets the Name field's value.
17594func (s *Multiplex) SetName(v string) *Multiplex {
17595	s.Name = &v
17596	return s
17597}
17598
17599// SetPipelinesRunningCount sets the PipelinesRunningCount field's value.
17600func (s *Multiplex) SetPipelinesRunningCount(v int64) *Multiplex {
17601	s.PipelinesRunningCount = &v
17602	return s
17603}
17604
17605// SetProgramCount sets the ProgramCount field's value.
17606func (s *Multiplex) SetProgramCount(v int64) *Multiplex {
17607	s.ProgramCount = &v
17608	return s
17609}
17610
17611// SetState sets the State field's value.
17612func (s *Multiplex) SetState(v string) *Multiplex {
17613	s.State = &v
17614	return s
17615}
17616
17617// SetTags sets the Tags field's value.
17618func (s *Multiplex) SetTags(v map[string]*string) *Multiplex {
17619	s.Tags = v
17620	return s
17621}
17622
17623// Multiplex Group Settings
17624type MultiplexGroupSettings struct {
17625	_ struct{} `type:"structure"`
17626}
17627
17628// String returns the string representation
17629func (s MultiplexGroupSettings) String() string {
17630	return awsutil.Prettify(s)
17631}
17632
17633// GoString returns the string representation
17634func (s MultiplexGroupSettings) GoString() string {
17635	return s.String()
17636}
17637
17638// Multiplex MediaConnect output destination settings.
17639type MultiplexMediaConnectOutputDestinationSettings struct {
17640	_ struct{} `type:"structure"`
17641
17642	// The MediaConnect entitlement ARN available as a Flow source.
17643	EntitlementArn *string `locationName:"entitlementArn" min:"1" type:"string"`
17644}
17645
17646// String returns the string representation
17647func (s MultiplexMediaConnectOutputDestinationSettings) String() string {
17648	return awsutil.Prettify(s)
17649}
17650
17651// GoString returns the string representation
17652func (s MultiplexMediaConnectOutputDestinationSettings) GoString() string {
17653	return s.String()
17654}
17655
17656// SetEntitlementArn sets the EntitlementArn field's value.
17657func (s *MultiplexMediaConnectOutputDestinationSettings) SetEntitlementArn(v string) *MultiplexMediaConnectOutputDestinationSettings {
17658	s.EntitlementArn = &v
17659	return s
17660}
17661
17662// Multiplex output destination settings
17663type MultiplexOutputDestination struct {
17664	_ struct{} `type:"structure"`
17665
17666	// Multiplex MediaConnect output destination settings.
17667	MediaConnectSettings *MultiplexMediaConnectOutputDestinationSettings `locationName:"mediaConnectSettings" type:"structure"`
17668}
17669
17670// String returns the string representation
17671func (s MultiplexOutputDestination) String() string {
17672	return awsutil.Prettify(s)
17673}
17674
17675// GoString returns the string representation
17676func (s MultiplexOutputDestination) GoString() string {
17677	return s.String()
17678}
17679
17680// SetMediaConnectSettings sets the MediaConnectSettings field's value.
17681func (s *MultiplexOutputDestination) SetMediaConnectSettings(v *MultiplexMediaConnectOutputDestinationSettings) *MultiplexOutputDestination {
17682	s.MediaConnectSettings = v
17683	return s
17684}
17685
17686// Multiplex Output Settings
17687type MultiplexOutputSettings struct {
17688	_ struct{} `type:"structure"`
17689
17690	// Destination is a Multiplex.
17691	//
17692	// Destination is a required field
17693	Destination *OutputLocationRef `locationName:"destination" type:"structure" required:"true"`
17694}
17695
17696// String returns the string representation
17697func (s MultiplexOutputSettings) String() string {
17698	return awsutil.Prettify(s)
17699}
17700
17701// GoString returns the string representation
17702func (s MultiplexOutputSettings) GoString() string {
17703	return s.String()
17704}
17705
17706// Validate inspects the fields of the type to determine if they are valid.
17707func (s *MultiplexOutputSettings) Validate() error {
17708	invalidParams := request.ErrInvalidParams{Context: "MultiplexOutputSettings"}
17709	if s.Destination == nil {
17710		invalidParams.Add(request.NewErrParamRequired("Destination"))
17711	}
17712
17713	if invalidParams.Len() > 0 {
17714		return invalidParams
17715	}
17716	return nil
17717}
17718
17719// SetDestination sets the Destination field's value.
17720func (s *MultiplexOutputSettings) SetDestination(v *OutputLocationRef) *MultiplexOutputSettings {
17721	s.Destination = v
17722	return s
17723}
17724
17725// The multiplex program object.
17726type MultiplexProgram struct {
17727	_ struct{} `type:"structure"`
17728
17729	// The MediaLive channel associated with the program.
17730	ChannelId *string `locationName:"channelId" type:"string"`
17731
17732	// The settings for this multiplex program.
17733	MultiplexProgramSettings *MultiplexProgramSettings `locationName:"multiplexProgramSettings" type:"structure"`
17734
17735	// The packet identifier map for this multiplex program.
17736	PacketIdentifiersMap *MultiplexProgramPacketIdentifiersMap `locationName:"packetIdentifiersMap" type:"structure"`
17737
17738	// The name of the multiplex program.
17739	ProgramName *string `locationName:"programName" type:"string"`
17740}
17741
17742// String returns the string representation
17743func (s MultiplexProgram) String() string {
17744	return awsutil.Prettify(s)
17745}
17746
17747// GoString returns the string representation
17748func (s MultiplexProgram) GoString() string {
17749	return s.String()
17750}
17751
17752// SetChannelId sets the ChannelId field's value.
17753func (s *MultiplexProgram) SetChannelId(v string) *MultiplexProgram {
17754	s.ChannelId = &v
17755	return s
17756}
17757
17758// SetMultiplexProgramSettings sets the MultiplexProgramSettings field's value.
17759func (s *MultiplexProgram) SetMultiplexProgramSettings(v *MultiplexProgramSettings) *MultiplexProgram {
17760	s.MultiplexProgramSettings = v
17761	return s
17762}
17763
17764// SetPacketIdentifiersMap sets the PacketIdentifiersMap field's value.
17765func (s *MultiplexProgram) SetPacketIdentifiersMap(v *MultiplexProgramPacketIdentifiersMap) *MultiplexProgram {
17766	s.PacketIdentifiersMap = v
17767	return s
17768}
17769
17770// SetProgramName sets the ProgramName field's value.
17771func (s *MultiplexProgram) SetProgramName(v string) *MultiplexProgram {
17772	s.ProgramName = &v
17773	return s
17774}
17775
17776// Multiplex Program Input Destination Settings for outputting a Channel to
17777// a Multiplex
17778type MultiplexProgramChannelDestinationSettings struct {
17779	_ struct{} `type:"structure"`
17780
17781	// The ID of the Multiplex that the encoder is providing output to. You do not
17782	// need to specify the individual inputs to the Multiplex; MediaLive will handle
17783	// the connection of the two MediaLive pipelines to the two Multiplex instances.The
17784	// Multiplex must be in the same region as the Channel.
17785	MultiplexId *string `locationName:"multiplexId" min:"1" type:"string"`
17786
17787	// The program name of the Multiplex program that the encoder is providing output
17788	// to.
17789	ProgramName *string `locationName:"programName" min:"1" type:"string"`
17790}
17791
17792// String returns the string representation
17793func (s MultiplexProgramChannelDestinationSettings) String() string {
17794	return awsutil.Prettify(s)
17795}
17796
17797// GoString returns the string representation
17798func (s MultiplexProgramChannelDestinationSettings) GoString() string {
17799	return s.String()
17800}
17801
17802// Validate inspects the fields of the type to determine if they are valid.
17803func (s *MultiplexProgramChannelDestinationSettings) Validate() error {
17804	invalidParams := request.ErrInvalidParams{Context: "MultiplexProgramChannelDestinationSettings"}
17805	if s.MultiplexId != nil && len(*s.MultiplexId) < 1 {
17806		invalidParams.Add(request.NewErrParamMinLen("MultiplexId", 1))
17807	}
17808	if s.ProgramName != nil && len(*s.ProgramName) < 1 {
17809		invalidParams.Add(request.NewErrParamMinLen("ProgramName", 1))
17810	}
17811
17812	if invalidParams.Len() > 0 {
17813		return invalidParams
17814	}
17815	return nil
17816}
17817
17818// SetMultiplexId sets the MultiplexId field's value.
17819func (s *MultiplexProgramChannelDestinationSettings) SetMultiplexId(v string) *MultiplexProgramChannelDestinationSettings {
17820	s.MultiplexId = &v
17821	return s
17822}
17823
17824// SetProgramName sets the ProgramName field's value.
17825func (s *MultiplexProgramChannelDestinationSettings) SetProgramName(v string) *MultiplexProgramChannelDestinationSettings {
17826	s.ProgramName = &v
17827	return s
17828}
17829
17830// Packet identifiers map for a given Multiplex program.
17831type MultiplexProgramPacketIdentifiersMap struct {
17832	_ struct{} `type:"structure"`
17833
17834	AudioPids []*int64 `locationName:"audioPids" type:"list"`
17835
17836	DvbSubPids []*int64 `locationName:"dvbSubPids" type:"list"`
17837
17838	DvbTeletextPid *int64 `locationName:"dvbTeletextPid" type:"integer"`
17839
17840	EtvPlatformPid *int64 `locationName:"etvPlatformPid" type:"integer"`
17841
17842	EtvSignalPid *int64 `locationName:"etvSignalPid" type:"integer"`
17843
17844	KlvDataPids []*int64 `locationName:"klvDataPids" type:"list"`
17845
17846	PcrPid *int64 `locationName:"pcrPid" type:"integer"`
17847
17848	PmtPid *int64 `locationName:"pmtPid" type:"integer"`
17849
17850	PrivateMetadataPid *int64 `locationName:"privateMetadataPid" type:"integer"`
17851
17852	Scte27Pids []*int64 `locationName:"scte27Pids" type:"list"`
17853
17854	Scte35Pid *int64 `locationName:"scte35Pid" type:"integer"`
17855
17856	TimedMetadataPid *int64 `locationName:"timedMetadataPid" type:"integer"`
17857
17858	VideoPid *int64 `locationName:"videoPid" type:"integer"`
17859}
17860
17861// String returns the string representation
17862func (s MultiplexProgramPacketIdentifiersMap) String() string {
17863	return awsutil.Prettify(s)
17864}
17865
17866// GoString returns the string representation
17867func (s MultiplexProgramPacketIdentifiersMap) GoString() string {
17868	return s.String()
17869}
17870
17871// SetAudioPids sets the AudioPids field's value.
17872func (s *MultiplexProgramPacketIdentifiersMap) SetAudioPids(v []*int64) *MultiplexProgramPacketIdentifiersMap {
17873	s.AudioPids = v
17874	return s
17875}
17876
17877// SetDvbSubPids sets the DvbSubPids field's value.
17878func (s *MultiplexProgramPacketIdentifiersMap) SetDvbSubPids(v []*int64) *MultiplexProgramPacketIdentifiersMap {
17879	s.DvbSubPids = v
17880	return s
17881}
17882
17883// SetDvbTeletextPid sets the DvbTeletextPid field's value.
17884func (s *MultiplexProgramPacketIdentifiersMap) SetDvbTeletextPid(v int64) *MultiplexProgramPacketIdentifiersMap {
17885	s.DvbTeletextPid = &v
17886	return s
17887}
17888
17889// SetEtvPlatformPid sets the EtvPlatformPid field's value.
17890func (s *MultiplexProgramPacketIdentifiersMap) SetEtvPlatformPid(v int64) *MultiplexProgramPacketIdentifiersMap {
17891	s.EtvPlatformPid = &v
17892	return s
17893}
17894
17895// SetEtvSignalPid sets the EtvSignalPid field's value.
17896func (s *MultiplexProgramPacketIdentifiersMap) SetEtvSignalPid(v int64) *MultiplexProgramPacketIdentifiersMap {
17897	s.EtvSignalPid = &v
17898	return s
17899}
17900
17901// SetKlvDataPids sets the KlvDataPids field's value.
17902func (s *MultiplexProgramPacketIdentifiersMap) SetKlvDataPids(v []*int64) *MultiplexProgramPacketIdentifiersMap {
17903	s.KlvDataPids = v
17904	return s
17905}
17906
17907// SetPcrPid sets the PcrPid field's value.
17908func (s *MultiplexProgramPacketIdentifiersMap) SetPcrPid(v int64) *MultiplexProgramPacketIdentifiersMap {
17909	s.PcrPid = &v
17910	return s
17911}
17912
17913// SetPmtPid sets the PmtPid field's value.
17914func (s *MultiplexProgramPacketIdentifiersMap) SetPmtPid(v int64) *MultiplexProgramPacketIdentifiersMap {
17915	s.PmtPid = &v
17916	return s
17917}
17918
17919// SetPrivateMetadataPid sets the PrivateMetadataPid field's value.
17920func (s *MultiplexProgramPacketIdentifiersMap) SetPrivateMetadataPid(v int64) *MultiplexProgramPacketIdentifiersMap {
17921	s.PrivateMetadataPid = &v
17922	return s
17923}
17924
17925// SetScte27Pids sets the Scte27Pids field's value.
17926func (s *MultiplexProgramPacketIdentifiersMap) SetScte27Pids(v []*int64) *MultiplexProgramPacketIdentifiersMap {
17927	s.Scte27Pids = v
17928	return s
17929}
17930
17931// SetScte35Pid sets the Scte35Pid field's value.
17932func (s *MultiplexProgramPacketIdentifiersMap) SetScte35Pid(v int64) *MultiplexProgramPacketIdentifiersMap {
17933	s.Scte35Pid = &v
17934	return s
17935}
17936
17937// SetTimedMetadataPid sets the TimedMetadataPid field's value.
17938func (s *MultiplexProgramPacketIdentifiersMap) SetTimedMetadataPid(v int64) *MultiplexProgramPacketIdentifiersMap {
17939	s.TimedMetadataPid = &v
17940	return s
17941}
17942
17943// SetVideoPid sets the VideoPid field's value.
17944func (s *MultiplexProgramPacketIdentifiersMap) SetVideoPid(v int64) *MultiplexProgramPacketIdentifiersMap {
17945	s.VideoPid = &v
17946	return s
17947}
17948
17949// Transport stream service descriptor configuration for the Multiplex program.
17950type MultiplexProgramServiceDescriptor struct {
17951	_ struct{} `type:"structure"`
17952
17953	// Name of the provider.
17954	//
17955	// ProviderName is a required field
17956	ProviderName *string `locationName:"providerName" type:"string" required:"true"`
17957
17958	// Name of the service.
17959	//
17960	// ServiceName is a required field
17961	ServiceName *string `locationName:"serviceName" type:"string" required:"true"`
17962}
17963
17964// String returns the string representation
17965func (s MultiplexProgramServiceDescriptor) String() string {
17966	return awsutil.Prettify(s)
17967}
17968
17969// GoString returns the string representation
17970func (s MultiplexProgramServiceDescriptor) GoString() string {
17971	return s.String()
17972}
17973
17974// Validate inspects the fields of the type to determine if they are valid.
17975func (s *MultiplexProgramServiceDescriptor) Validate() error {
17976	invalidParams := request.ErrInvalidParams{Context: "MultiplexProgramServiceDescriptor"}
17977	if s.ProviderName == nil {
17978		invalidParams.Add(request.NewErrParamRequired("ProviderName"))
17979	}
17980	if s.ServiceName == nil {
17981		invalidParams.Add(request.NewErrParamRequired("ServiceName"))
17982	}
17983
17984	if invalidParams.Len() > 0 {
17985		return invalidParams
17986	}
17987	return nil
17988}
17989
17990// SetProviderName sets the ProviderName field's value.
17991func (s *MultiplexProgramServiceDescriptor) SetProviderName(v string) *MultiplexProgramServiceDescriptor {
17992	s.ProviderName = &v
17993	return s
17994}
17995
17996// SetServiceName sets the ServiceName field's value.
17997func (s *MultiplexProgramServiceDescriptor) SetServiceName(v string) *MultiplexProgramServiceDescriptor {
17998	s.ServiceName = &v
17999	return s
18000}
18001
18002// Multiplex Program settings configuration.
18003type MultiplexProgramSettings struct {
18004	_ struct{} `type:"structure"`
18005
18006	// Indicates which pipeline is preferred by the multiplex for program ingest.
18007	PreferredChannelPipeline *string `locationName:"preferredChannelPipeline" type:"string" enum:"PreferredChannelPipeline"`
18008
18009	// Unique program number.
18010	//
18011	// ProgramNumber is a required field
18012	ProgramNumber *int64 `locationName:"programNumber" type:"integer" required:"true"`
18013
18014	// Transport stream service descriptor configuration for the Multiplex program.
18015	ServiceDescriptor *MultiplexProgramServiceDescriptor `locationName:"serviceDescriptor" type:"structure"`
18016
18017	// Program video settings configuration.
18018	VideoSettings *MultiplexVideoSettings `locationName:"videoSettings" type:"structure"`
18019}
18020
18021// String returns the string representation
18022func (s MultiplexProgramSettings) String() string {
18023	return awsutil.Prettify(s)
18024}
18025
18026// GoString returns the string representation
18027func (s MultiplexProgramSettings) GoString() string {
18028	return s.String()
18029}
18030
18031// Validate inspects the fields of the type to determine if they are valid.
18032func (s *MultiplexProgramSettings) Validate() error {
18033	invalidParams := request.ErrInvalidParams{Context: "MultiplexProgramSettings"}
18034	if s.ProgramNumber == nil {
18035		invalidParams.Add(request.NewErrParamRequired("ProgramNumber"))
18036	}
18037	if s.ServiceDescriptor != nil {
18038		if err := s.ServiceDescriptor.Validate(); err != nil {
18039			invalidParams.AddNested("ServiceDescriptor", err.(request.ErrInvalidParams))
18040		}
18041	}
18042	if s.VideoSettings != nil {
18043		if err := s.VideoSettings.Validate(); err != nil {
18044			invalidParams.AddNested("VideoSettings", err.(request.ErrInvalidParams))
18045		}
18046	}
18047
18048	if invalidParams.Len() > 0 {
18049		return invalidParams
18050	}
18051	return nil
18052}
18053
18054// SetPreferredChannelPipeline sets the PreferredChannelPipeline field's value.
18055func (s *MultiplexProgramSettings) SetPreferredChannelPipeline(v string) *MultiplexProgramSettings {
18056	s.PreferredChannelPipeline = &v
18057	return s
18058}
18059
18060// SetProgramNumber sets the ProgramNumber field's value.
18061func (s *MultiplexProgramSettings) SetProgramNumber(v int64) *MultiplexProgramSettings {
18062	s.ProgramNumber = &v
18063	return s
18064}
18065
18066// SetServiceDescriptor sets the ServiceDescriptor field's value.
18067func (s *MultiplexProgramSettings) SetServiceDescriptor(v *MultiplexProgramServiceDescriptor) *MultiplexProgramSettings {
18068	s.ServiceDescriptor = v
18069	return s
18070}
18071
18072// SetVideoSettings sets the VideoSettings field's value.
18073func (s *MultiplexProgramSettings) SetVideoSettings(v *MultiplexVideoSettings) *MultiplexProgramSettings {
18074	s.VideoSettings = v
18075	return s
18076}
18077
18078type MultiplexProgramSummary struct {
18079	_ struct{} `type:"structure"`
18080
18081	// The MediaLive Channel associated with the program.
18082	ChannelId *string `locationName:"channelId" type:"string"`
18083
18084	// The name of the multiplex program.
18085	ProgramName *string `locationName:"programName" type:"string"`
18086}
18087
18088// String returns the string representation
18089func (s MultiplexProgramSummary) String() string {
18090	return awsutil.Prettify(s)
18091}
18092
18093// GoString returns the string representation
18094func (s MultiplexProgramSummary) GoString() string {
18095	return s.String()
18096}
18097
18098// SetChannelId sets the ChannelId field's value.
18099func (s *MultiplexProgramSummary) SetChannelId(v string) *MultiplexProgramSummary {
18100	s.ChannelId = &v
18101	return s
18102}
18103
18104// SetProgramName sets the ProgramName field's value.
18105func (s *MultiplexProgramSummary) SetProgramName(v string) *MultiplexProgramSummary {
18106	s.ProgramName = &v
18107	return s
18108}
18109
18110// Contains configuration for a Multiplex event
18111type MultiplexSettings struct {
18112	_ struct{} `type:"structure"`
18113
18114	// Maximum video buffer delay in milliseconds.
18115	MaximumVideoBufferDelayMilliseconds *int64 `locationName:"maximumVideoBufferDelayMilliseconds" min:"1000" type:"integer"`
18116
18117	// Transport stream bit rate.
18118	//
18119	// TransportStreamBitrate is a required field
18120	TransportStreamBitrate *int64 `locationName:"transportStreamBitrate" min:"1e+06" type:"integer" required:"true"`
18121
18122	// Transport stream ID.
18123	//
18124	// TransportStreamId is a required field
18125	TransportStreamId *int64 `locationName:"transportStreamId" type:"integer" required:"true"`
18126
18127	// Transport stream reserved bit rate.
18128	TransportStreamReservedBitrate *int64 `locationName:"transportStreamReservedBitrate" type:"integer"`
18129}
18130
18131// String returns the string representation
18132func (s MultiplexSettings) String() string {
18133	return awsutil.Prettify(s)
18134}
18135
18136// GoString returns the string representation
18137func (s MultiplexSettings) GoString() string {
18138	return s.String()
18139}
18140
18141// Validate inspects the fields of the type to determine if they are valid.
18142func (s *MultiplexSettings) Validate() error {
18143	invalidParams := request.ErrInvalidParams{Context: "MultiplexSettings"}
18144	if s.MaximumVideoBufferDelayMilliseconds != nil && *s.MaximumVideoBufferDelayMilliseconds < 1000 {
18145		invalidParams.Add(request.NewErrParamMinValue("MaximumVideoBufferDelayMilliseconds", 1000))
18146	}
18147	if s.TransportStreamBitrate == nil {
18148		invalidParams.Add(request.NewErrParamRequired("TransportStreamBitrate"))
18149	}
18150	if s.TransportStreamBitrate != nil && *s.TransportStreamBitrate < 1e+06 {
18151		invalidParams.Add(request.NewErrParamMinValue("TransportStreamBitrate", 1e+06))
18152	}
18153	if s.TransportStreamId == nil {
18154		invalidParams.Add(request.NewErrParamRequired("TransportStreamId"))
18155	}
18156
18157	if invalidParams.Len() > 0 {
18158		return invalidParams
18159	}
18160	return nil
18161}
18162
18163// SetMaximumVideoBufferDelayMilliseconds sets the MaximumVideoBufferDelayMilliseconds field's value.
18164func (s *MultiplexSettings) SetMaximumVideoBufferDelayMilliseconds(v int64) *MultiplexSettings {
18165	s.MaximumVideoBufferDelayMilliseconds = &v
18166	return s
18167}
18168
18169// SetTransportStreamBitrate sets the TransportStreamBitrate field's value.
18170func (s *MultiplexSettings) SetTransportStreamBitrate(v int64) *MultiplexSettings {
18171	s.TransportStreamBitrate = &v
18172	return s
18173}
18174
18175// SetTransportStreamId sets the TransportStreamId field's value.
18176func (s *MultiplexSettings) SetTransportStreamId(v int64) *MultiplexSettings {
18177	s.TransportStreamId = &v
18178	return s
18179}
18180
18181// SetTransportStreamReservedBitrate sets the TransportStreamReservedBitrate field's value.
18182func (s *MultiplexSettings) SetTransportStreamReservedBitrate(v int64) *MultiplexSettings {
18183	s.TransportStreamReservedBitrate = &v
18184	return s
18185}
18186
18187// Contains summary configuration for a Multiplex event.
18188type MultiplexSettingsSummary struct {
18189	_ struct{} `type:"structure"`
18190
18191	// Transport stream bit rate.
18192	TransportStreamBitrate *int64 `locationName:"transportStreamBitrate" min:"1e+06" type:"integer"`
18193}
18194
18195// String returns the string representation
18196func (s MultiplexSettingsSummary) String() string {
18197	return awsutil.Prettify(s)
18198}
18199
18200// GoString returns the string representation
18201func (s MultiplexSettingsSummary) GoString() string {
18202	return s.String()
18203}
18204
18205// SetTransportStreamBitrate sets the TransportStreamBitrate field's value.
18206func (s *MultiplexSettingsSummary) SetTransportStreamBitrate(v int64) *MultiplexSettingsSummary {
18207	s.TransportStreamBitrate = &v
18208	return s
18209}
18210
18211// Statmux rate control settings
18212type MultiplexStatmuxVideoSettings struct {
18213	_ struct{} `type:"structure"`
18214
18215	// Maximum statmux bitrate.
18216	MaximumBitrate *int64 `locationName:"maximumBitrate" min:"100000" type:"integer"`
18217
18218	// Minimum statmux bitrate.
18219	MinimumBitrate *int64 `locationName:"minimumBitrate" min:"100000" type:"integer"`
18220}
18221
18222// String returns the string representation
18223func (s MultiplexStatmuxVideoSettings) String() string {
18224	return awsutil.Prettify(s)
18225}
18226
18227// GoString returns the string representation
18228func (s MultiplexStatmuxVideoSettings) GoString() string {
18229	return s.String()
18230}
18231
18232// Validate inspects the fields of the type to determine if they are valid.
18233func (s *MultiplexStatmuxVideoSettings) Validate() error {
18234	invalidParams := request.ErrInvalidParams{Context: "MultiplexStatmuxVideoSettings"}
18235	if s.MaximumBitrate != nil && *s.MaximumBitrate < 100000 {
18236		invalidParams.Add(request.NewErrParamMinValue("MaximumBitrate", 100000))
18237	}
18238	if s.MinimumBitrate != nil && *s.MinimumBitrate < 100000 {
18239		invalidParams.Add(request.NewErrParamMinValue("MinimumBitrate", 100000))
18240	}
18241
18242	if invalidParams.Len() > 0 {
18243		return invalidParams
18244	}
18245	return nil
18246}
18247
18248// SetMaximumBitrate sets the MaximumBitrate field's value.
18249func (s *MultiplexStatmuxVideoSettings) SetMaximumBitrate(v int64) *MultiplexStatmuxVideoSettings {
18250	s.MaximumBitrate = &v
18251	return s
18252}
18253
18254// SetMinimumBitrate sets the MinimumBitrate field's value.
18255func (s *MultiplexStatmuxVideoSettings) SetMinimumBitrate(v int64) *MultiplexStatmuxVideoSettings {
18256	s.MinimumBitrate = &v
18257	return s
18258}
18259
18260type MultiplexSummary struct {
18261	_ struct{} `type:"structure"`
18262
18263	// The unique arn of the multiplex.
18264	Arn *string `locationName:"arn" type:"string"`
18265
18266	// A list of availability zones for the multiplex.
18267	AvailabilityZones []*string `locationName:"availabilityZones" type:"list"`
18268
18269	// The unique id of the multiplex.
18270	Id *string `locationName:"id" type:"string"`
18271
18272	// Configuration for a multiplex event.
18273	MultiplexSettings *MultiplexSettingsSummary `locationName:"multiplexSettings" type:"structure"`
18274
18275	// The name of the multiplex.
18276	Name *string `locationName:"name" type:"string"`
18277
18278	// The number of currently healthy pipelines.
18279	PipelinesRunningCount *int64 `locationName:"pipelinesRunningCount" type:"integer"`
18280
18281	// The number of programs in the multiplex.
18282	ProgramCount *int64 `locationName:"programCount" type:"integer"`
18283
18284	// The current state of the multiplex.
18285	State *string `locationName:"state" type:"string" enum:"MultiplexState"`
18286
18287	// A collection of key-value pairs.
18288	Tags map[string]*string `locationName:"tags" type:"map"`
18289}
18290
18291// String returns the string representation
18292func (s MultiplexSummary) String() string {
18293	return awsutil.Prettify(s)
18294}
18295
18296// GoString returns the string representation
18297func (s MultiplexSummary) GoString() string {
18298	return s.String()
18299}
18300
18301// SetArn sets the Arn field's value.
18302func (s *MultiplexSummary) SetArn(v string) *MultiplexSummary {
18303	s.Arn = &v
18304	return s
18305}
18306
18307// SetAvailabilityZones sets the AvailabilityZones field's value.
18308func (s *MultiplexSummary) SetAvailabilityZones(v []*string) *MultiplexSummary {
18309	s.AvailabilityZones = v
18310	return s
18311}
18312
18313// SetId sets the Id field's value.
18314func (s *MultiplexSummary) SetId(v string) *MultiplexSummary {
18315	s.Id = &v
18316	return s
18317}
18318
18319// SetMultiplexSettings sets the MultiplexSettings field's value.
18320func (s *MultiplexSummary) SetMultiplexSettings(v *MultiplexSettingsSummary) *MultiplexSummary {
18321	s.MultiplexSettings = v
18322	return s
18323}
18324
18325// SetName sets the Name field's value.
18326func (s *MultiplexSummary) SetName(v string) *MultiplexSummary {
18327	s.Name = &v
18328	return s
18329}
18330
18331// SetPipelinesRunningCount sets the PipelinesRunningCount field's value.
18332func (s *MultiplexSummary) SetPipelinesRunningCount(v int64) *MultiplexSummary {
18333	s.PipelinesRunningCount = &v
18334	return s
18335}
18336
18337// SetProgramCount sets the ProgramCount field's value.
18338func (s *MultiplexSummary) SetProgramCount(v int64) *MultiplexSummary {
18339	s.ProgramCount = &v
18340	return s
18341}
18342
18343// SetState sets the State field's value.
18344func (s *MultiplexSummary) SetState(v string) *MultiplexSummary {
18345	s.State = &v
18346	return s
18347}
18348
18349// SetTags sets the Tags field's value.
18350func (s *MultiplexSummary) SetTags(v map[string]*string) *MultiplexSummary {
18351	s.Tags = v
18352	return s
18353}
18354
18355// The video configuration for each program in a multiplex.
18356type MultiplexVideoSettings struct {
18357	_ struct{} `type:"structure"`
18358
18359	// The constant bitrate configuration for the video encode.When this field is
18360	// defined, StatmuxSettings must be undefined.
18361	ConstantBitrate *int64 `locationName:"constantBitrate" min:"100000" type:"integer"`
18362
18363	// Statmux rate control settings.When this field is defined, ConstantBitrate
18364	// must be undefined.
18365	StatmuxSettings *MultiplexStatmuxVideoSettings `locationName:"statmuxSettings" type:"structure"`
18366}
18367
18368// String returns the string representation
18369func (s MultiplexVideoSettings) String() string {
18370	return awsutil.Prettify(s)
18371}
18372
18373// GoString returns the string representation
18374func (s MultiplexVideoSettings) GoString() string {
18375	return s.String()
18376}
18377
18378// Validate inspects the fields of the type to determine if they are valid.
18379func (s *MultiplexVideoSettings) Validate() error {
18380	invalidParams := request.ErrInvalidParams{Context: "MultiplexVideoSettings"}
18381	if s.ConstantBitrate != nil && *s.ConstantBitrate < 100000 {
18382		invalidParams.Add(request.NewErrParamMinValue("ConstantBitrate", 100000))
18383	}
18384	if s.StatmuxSettings != nil {
18385		if err := s.StatmuxSettings.Validate(); err != nil {
18386			invalidParams.AddNested("StatmuxSettings", err.(request.ErrInvalidParams))
18387		}
18388	}
18389
18390	if invalidParams.Len() > 0 {
18391		return invalidParams
18392	}
18393	return nil
18394}
18395
18396// SetConstantBitrate sets the ConstantBitrate field's value.
18397func (s *MultiplexVideoSettings) SetConstantBitrate(v int64) *MultiplexVideoSettings {
18398	s.ConstantBitrate = &v
18399	return s
18400}
18401
18402// SetStatmuxSettings sets the StatmuxSettings field's value.
18403func (s *MultiplexVideoSettings) SetStatmuxSettings(v *MultiplexStatmuxVideoSettings) *MultiplexVideoSettings {
18404	s.StatmuxSettings = v
18405	return s
18406}
18407
18408// Network source to transcode. Must be accessible to the Elemental Live node
18409// that is running the live event through a network connection.
18410type NetworkInputSettings struct {
18411	_ struct{} `type:"structure"`
18412
18413	// Specifies HLS input settings when the uri is for a HLS manifest.
18414	HlsInputSettings *HlsInputSettings `locationName:"hlsInputSettings" type:"structure"`
18415
18416	// Check HTTPS server certificates. When set to checkCryptographyOnly, cryptography
18417	// in the certificate will be checked, but not the server's name. Certain subdomains
18418	// (notably S3 buckets that use dots in the bucket name) do not strictly match
18419	// the corresponding certificate's wildcard pattern and would otherwise cause
18420	// the event to error. This setting is ignored for protocols that do not use
18421	// https.
18422	ServerValidation *string `locationName:"serverValidation" type:"string" enum:"NetworkInputServerValidation"`
18423}
18424
18425// String returns the string representation
18426func (s NetworkInputSettings) String() string {
18427	return awsutil.Prettify(s)
18428}
18429
18430// GoString returns the string representation
18431func (s NetworkInputSettings) GoString() string {
18432	return s.String()
18433}
18434
18435// SetHlsInputSettings sets the HlsInputSettings field's value.
18436func (s *NetworkInputSettings) SetHlsInputSettings(v *HlsInputSettings) *NetworkInputSettings {
18437	s.HlsInputSettings = v
18438	return s
18439}
18440
18441// SetServerValidation sets the ServerValidation field's value.
18442func (s *NetworkInputSettings) SetServerValidation(v string) *NetworkInputSettings {
18443	s.ServerValidation = &v
18444	return s
18445}
18446
18447// Nielsen Configuration
18448type NielsenConfiguration struct {
18449	_ struct{} `type:"structure"`
18450
18451	// Enter the Distributor ID assigned to your organization by Nielsen.
18452	DistributorId *string `locationName:"distributorId" type:"string"`
18453
18454	// Enables Nielsen PCM to ID3 tagging
18455	NielsenPcmToId3Tagging *string `locationName:"nielsenPcmToId3Tagging" type:"string" enum:"NielsenPcmToId3TaggingState"`
18456}
18457
18458// String returns the string representation
18459func (s NielsenConfiguration) String() string {
18460	return awsutil.Prettify(s)
18461}
18462
18463// GoString returns the string representation
18464func (s NielsenConfiguration) GoString() string {
18465	return s.String()
18466}
18467
18468// SetDistributorId sets the DistributorId field's value.
18469func (s *NielsenConfiguration) SetDistributorId(v string) *NielsenConfiguration {
18470	s.DistributorId = &v
18471	return s
18472}
18473
18474// SetNielsenPcmToId3Tagging sets the NielsenPcmToId3Tagging field's value.
18475func (s *NielsenConfiguration) SetNielsenPcmToId3Tagging(v string) *NielsenConfiguration {
18476	s.NielsenPcmToId3Tagging = &v
18477	return s
18478}
18479
18480type NotFoundException struct {
18481	_            struct{}                  `type:"structure"`
18482	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
18483
18484	Message_ *string `locationName:"message" type:"string"`
18485}
18486
18487// String returns the string representation
18488func (s NotFoundException) String() string {
18489	return awsutil.Prettify(s)
18490}
18491
18492// GoString returns the string representation
18493func (s NotFoundException) GoString() string {
18494	return s.String()
18495}
18496
18497func newErrorNotFoundException(v protocol.ResponseMetadata) error {
18498	return &NotFoundException{
18499		RespMetadata: v,
18500	}
18501}
18502
18503// Code returns the exception type name.
18504func (s *NotFoundException) Code() string {
18505	return "NotFoundException"
18506}
18507
18508// Message returns the exception's message.
18509func (s *NotFoundException) Message() string {
18510	if s.Message_ != nil {
18511		return *s.Message_
18512	}
18513	return ""
18514}
18515
18516// OrigErr always returns nil, satisfies awserr.Error interface.
18517func (s *NotFoundException) OrigErr() error {
18518	return nil
18519}
18520
18521func (s *NotFoundException) Error() string {
18522	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
18523}
18524
18525// Status code returns the HTTP status code for the request's response error.
18526func (s *NotFoundException) StatusCode() int {
18527	return s.RespMetadata.StatusCode
18528}
18529
18530// RequestID returns the service's response RequestID for request.
18531func (s *NotFoundException) RequestID() string {
18532	return s.RespMetadata.RequestID
18533}
18534
18535// Reserved resources available for purchase
18536type Offering struct {
18537	_ struct{} `type:"structure"`
18538
18539	// Unique offering ARN, e.g. 'arn:aws:medialive:us-west-2:123456789012:offering:87654321'
18540	Arn *string `locationName:"arn" type:"string"`
18541
18542	// Currency code for usagePrice and fixedPrice in ISO-4217 format, e.g. 'USD'
18543	CurrencyCode *string `locationName:"currencyCode" type:"string"`
18544
18545	// Lease duration, e.g. '12'
18546	Duration *int64 `locationName:"duration" type:"integer"`
18547
18548	// Units for duration, e.g. 'MONTHS'
18549	DurationUnits *string `locationName:"durationUnits" type:"string" enum:"OfferingDurationUnits"`
18550
18551	// One-time charge for each reserved resource, e.g. '0.0' for a NO_UPFRONT offering
18552	FixedPrice *float64 `locationName:"fixedPrice" type:"double"`
18553
18554	// Offering description, e.g. 'HD AVC output at 10-20 Mbps, 30 fps, and standard
18555	// VQ in US West (Oregon)'
18556	OfferingDescription *string `locationName:"offeringDescription" type:"string"`
18557
18558	// Unique offering ID, e.g. '87654321'
18559	OfferingId *string `locationName:"offeringId" type:"string"`
18560
18561	// Offering type, e.g. 'NO_UPFRONT'
18562	OfferingType *string `locationName:"offeringType" type:"string" enum:"OfferingType"`
18563
18564	// AWS region, e.g. 'us-west-2'
18565	Region *string `locationName:"region" type:"string"`
18566
18567	// Resource configuration details
18568	ResourceSpecification *ReservationResourceSpecification `locationName:"resourceSpecification" type:"structure"`
18569
18570	// Recurring usage charge for each reserved resource, e.g. '157.0'
18571	UsagePrice *float64 `locationName:"usagePrice" type:"double"`
18572}
18573
18574// String returns the string representation
18575func (s Offering) String() string {
18576	return awsutil.Prettify(s)
18577}
18578
18579// GoString returns the string representation
18580func (s Offering) GoString() string {
18581	return s.String()
18582}
18583
18584// SetArn sets the Arn field's value.
18585func (s *Offering) SetArn(v string) *Offering {
18586	s.Arn = &v
18587	return s
18588}
18589
18590// SetCurrencyCode sets the CurrencyCode field's value.
18591func (s *Offering) SetCurrencyCode(v string) *Offering {
18592	s.CurrencyCode = &v
18593	return s
18594}
18595
18596// SetDuration sets the Duration field's value.
18597func (s *Offering) SetDuration(v int64) *Offering {
18598	s.Duration = &v
18599	return s
18600}
18601
18602// SetDurationUnits sets the DurationUnits field's value.
18603func (s *Offering) SetDurationUnits(v string) *Offering {
18604	s.DurationUnits = &v
18605	return s
18606}
18607
18608// SetFixedPrice sets the FixedPrice field's value.
18609func (s *Offering) SetFixedPrice(v float64) *Offering {
18610	s.FixedPrice = &v
18611	return s
18612}
18613
18614// SetOfferingDescription sets the OfferingDescription field's value.
18615func (s *Offering) SetOfferingDescription(v string) *Offering {
18616	s.OfferingDescription = &v
18617	return s
18618}
18619
18620// SetOfferingId sets the OfferingId field's value.
18621func (s *Offering) SetOfferingId(v string) *Offering {
18622	s.OfferingId = &v
18623	return s
18624}
18625
18626// SetOfferingType sets the OfferingType field's value.
18627func (s *Offering) SetOfferingType(v string) *Offering {
18628	s.OfferingType = &v
18629	return s
18630}
18631
18632// SetRegion sets the Region field's value.
18633func (s *Offering) SetRegion(v string) *Offering {
18634	s.Region = &v
18635	return s
18636}
18637
18638// SetResourceSpecification sets the ResourceSpecification field's value.
18639func (s *Offering) SetResourceSpecification(v *ReservationResourceSpecification) *Offering {
18640	s.ResourceSpecification = v
18641	return s
18642}
18643
18644// SetUsagePrice sets the UsagePrice field's value.
18645func (s *Offering) SetUsagePrice(v float64) *Offering {
18646	s.UsagePrice = &v
18647	return s
18648}
18649
18650// Output settings. There can be multiple outputs within a group.
18651type Output struct {
18652	_ struct{} `type:"structure"`
18653
18654	// The names of the AudioDescriptions used as audio sources for this output.
18655	AudioDescriptionNames []*string `locationName:"audioDescriptionNames" type:"list"`
18656
18657	// The names of the CaptionDescriptions used as caption sources for this output.
18658	CaptionDescriptionNames []*string `locationName:"captionDescriptionNames" type:"list"`
18659
18660	// The name used to identify an output.
18661	OutputName *string `locationName:"outputName" min:"1" type:"string"`
18662
18663	// Output type-specific settings.
18664	//
18665	// OutputSettings is a required field
18666	OutputSettings *OutputSettings `locationName:"outputSettings" type:"structure" required:"true"`
18667
18668	// The name of the VideoDescription used as the source for this output.
18669	VideoDescriptionName *string `locationName:"videoDescriptionName" type:"string"`
18670}
18671
18672// String returns the string representation
18673func (s Output) String() string {
18674	return awsutil.Prettify(s)
18675}
18676
18677// GoString returns the string representation
18678func (s Output) GoString() string {
18679	return s.String()
18680}
18681
18682// Validate inspects the fields of the type to determine if they are valid.
18683func (s *Output) Validate() error {
18684	invalidParams := request.ErrInvalidParams{Context: "Output"}
18685	if s.OutputName != nil && len(*s.OutputName) < 1 {
18686		invalidParams.Add(request.NewErrParamMinLen("OutputName", 1))
18687	}
18688	if s.OutputSettings == nil {
18689		invalidParams.Add(request.NewErrParamRequired("OutputSettings"))
18690	}
18691	if s.OutputSettings != nil {
18692		if err := s.OutputSettings.Validate(); err != nil {
18693			invalidParams.AddNested("OutputSettings", err.(request.ErrInvalidParams))
18694		}
18695	}
18696
18697	if invalidParams.Len() > 0 {
18698		return invalidParams
18699	}
18700	return nil
18701}
18702
18703// SetAudioDescriptionNames sets the AudioDescriptionNames field's value.
18704func (s *Output) SetAudioDescriptionNames(v []*string) *Output {
18705	s.AudioDescriptionNames = v
18706	return s
18707}
18708
18709// SetCaptionDescriptionNames sets the CaptionDescriptionNames field's value.
18710func (s *Output) SetCaptionDescriptionNames(v []*string) *Output {
18711	s.CaptionDescriptionNames = v
18712	return s
18713}
18714
18715// SetOutputName sets the OutputName field's value.
18716func (s *Output) SetOutputName(v string) *Output {
18717	s.OutputName = &v
18718	return s
18719}
18720
18721// SetOutputSettings sets the OutputSettings field's value.
18722func (s *Output) SetOutputSettings(v *OutputSettings) *Output {
18723	s.OutputSettings = v
18724	return s
18725}
18726
18727// SetVideoDescriptionName sets the VideoDescriptionName field's value.
18728func (s *Output) SetVideoDescriptionName(v string) *Output {
18729	s.VideoDescriptionName = &v
18730	return s
18731}
18732
18733type OutputDestination struct {
18734	_ struct{} `type:"structure"`
18735
18736	// User-specified id. This is used in an output group or an output.
18737	Id *string `locationName:"id" type:"string"`
18738
18739	// Destination settings for a MediaPackage output; one destination for both
18740	// encoders.
18741	MediaPackageSettings []*MediaPackageOutputDestinationSettings `locationName:"mediaPackageSettings" type:"list"`
18742
18743	// Destination settings for a Multiplex output; one destination for both encoders.
18744	MultiplexSettings *MultiplexProgramChannelDestinationSettings `locationName:"multiplexSettings" type:"structure"`
18745
18746	// Destination settings for a standard output; one destination for each redundant
18747	// encoder.
18748	Settings []*OutputDestinationSettings `locationName:"settings" type:"list"`
18749}
18750
18751// String returns the string representation
18752func (s OutputDestination) String() string {
18753	return awsutil.Prettify(s)
18754}
18755
18756// GoString returns the string representation
18757func (s OutputDestination) GoString() string {
18758	return s.String()
18759}
18760
18761// Validate inspects the fields of the type to determine if they are valid.
18762func (s *OutputDestination) Validate() error {
18763	invalidParams := request.ErrInvalidParams{Context: "OutputDestination"}
18764	if s.MediaPackageSettings != nil {
18765		for i, v := range s.MediaPackageSettings {
18766			if v == nil {
18767				continue
18768			}
18769			if err := v.Validate(); err != nil {
18770				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MediaPackageSettings", i), err.(request.ErrInvalidParams))
18771			}
18772		}
18773	}
18774	if s.MultiplexSettings != nil {
18775		if err := s.MultiplexSettings.Validate(); err != nil {
18776			invalidParams.AddNested("MultiplexSettings", err.(request.ErrInvalidParams))
18777		}
18778	}
18779
18780	if invalidParams.Len() > 0 {
18781		return invalidParams
18782	}
18783	return nil
18784}
18785
18786// SetId sets the Id field's value.
18787func (s *OutputDestination) SetId(v string) *OutputDestination {
18788	s.Id = &v
18789	return s
18790}
18791
18792// SetMediaPackageSettings sets the MediaPackageSettings field's value.
18793func (s *OutputDestination) SetMediaPackageSettings(v []*MediaPackageOutputDestinationSettings) *OutputDestination {
18794	s.MediaPackageSettings = v
18795	return s
18796}
18797
18798// SetMultiplexSettings sets the MultiplexSettings field's value.
18799func (s *OutputDestination) SetMultiplexSettings(v *MultiplexProgramChannelDestinationSettings) *OutputDestination {
18800	s.MultiplexSettings = v
18801	return s
18802}
18803
18804// SetSettings sets the Settings field's value.
18805func (s *OutputDestination) SetSettings(v []*OutputDestinationSettings) *OutputDestination {
18806	s.Settings = v
18807	return s
18808}
18809
18810type OutputDestinationSettings struct {
18811	_ struct{} `type:"structure"`
18812
18813	// key used to extract the password from EC2 Parameter store
18814	PasswordParam *string `locationName:"passwordParam" type:"string"`
18815
18816	// Stream name for RTMP destinations (URLs of type rtmp://)
18817	StreamName *string `locationName:"streamName" type:"string"`
18818
18819	// A URL specifying a destination
18820	Url *string `locationName:"url" type:"string"`
18821
18822	// username for destination
18823	Username *string `locationName:"username" type:"string"`
18824}
18825
18826// String returns the string representation
18827func (s OutputDestinationSettings) String() string {
18828	return awsutil.Prettify(s)
18829}
18830
18831// GoString returns the string representation
18832func (s OutputDestinationSettings) GoString() string {
18833	return s.String()
18834}
18835
18836// SetPasswordParam sets the PasswordParam field's value.
18837func (s *OutputDestinationSettings) SetPasswordParam(v string) *OutputDestinationSettings {
18838	s.PasswordParam = &v
18839	return s
18840}
18841
18842// SetStreamName sets the StreamName field's value.
18843func (s *OutputDestinationSettings) SetStreamName(v string) *OutputDestinationSettings {
18844	s.StreamName = &v
18845	return s
18846}
18847
18848// SetUrl sets the Url field's value.
18849func (s *OutputDestinationSettings) SetUrl(v string) *OutputDestinationSettings {
18850	s.Url = &v
18851	return s
18852}
18853
18854// SetUsername sets the Username field's value.
18855func (s *OutputDestinationSettings) SetUsername(v string) *OutputDestinationSettings {
18856	s.Username = &v
18857	return s
18858}
18859
18860// Output groups for this Live Event. Output groups contain information about
18861// where streams should be distributed.
18862type OutputGroup struct {
18863	_ struct{} `type:"structure"`
18864
18865	// Custom output group name optionally defined by the user. Only letters, numbers,
18866	// and the underscore character allowed; only 32 characters allowed.
18867	Name *string `locationName:"name" type:"string"`
18868
18869	// Settings associated with the output group.
18870	//
18871	// OutputGroupSettings is a required field
18872	OutputGroupSettings *OutputGroupSettings `locationName:"outputGroupSettings" type:"structure" required:"true"`
18873
18874	// Outputs is a required field
18875	Outputs []*Output `locationName:"outputs" type:"list" required:"true"`
18876}
18877
18878// String returns the string representation
18879func (s OutputGroup) String() string {
18880	return awsutil.Prettify(s)
18881}
18882
18883// GoString returns the string representation
18884func (s OutputGroup) GoString() string {
18885	return s.String()
18886}
18887
18888// Validate inspects the fields of the type to determine if they are valid.
18889func (s *OutputGroup) Validate() error {
18890	invalidParams := request.ErrInvalidParams{Context: "OutputGroup"}
18891	if s.OutputGroupSettings == nil {
18892		invalidParams.Add(request.NewErrParamRequired("OutputGroupSettings"))
18893	}
18894	if s.Outputs == nil {
18895		invalidParams.Add(request.NewErrParamRequired("Outputs"))
18896	}
18897	if s.OutputGroupSettings != nil {
18898		if err := s.OutputGroupSettings.Validate(); err != nil {
18899			invalidParams.AddNested("OutputGroupSettings", err.(request.ErrInvalidParams))
18900		}
18901	}
18902	if s.Outputs != nil {
18903		for i, v := range s.Outputs {
18904			if v == nil {
18905				continue
18906			}
18907			if err := v.Validate(); err != nil {
18908				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Outputs", i), err.(request.ErrInvalidParams))
18909			}
18910		}
18911	}
18912
18913	if invalidParams.Len() > 0 {
18914		return invalidParams
18915	}
18916	return nil
18917}
18918
18919// SetName sets the Name field's value.
18920func (s *OutputGroup) SetName(v string) *OutputGroup {
18921	s.Name = &v
18922	return s
18923}
18924
18925// SetOutputGroupSettings sets the OutputGroupSettings field's value.
18926func (s *OutputGroup) SetOutputGroupSettings(v *OutputGroupSettings) *OutputGroup {
18927	s.OutputGroupSettings = v
18928	return s
18929}
18930
18931// SetOutputs sets the Outputs field's value.
18932func (s *OutputGroup) SetOutputs(v []*Output) *OutputGroup {
18933	s.Outputs = v
18934	return s
18935}
18936
18937// Output Group Settings
18938type OutputGroupSettings struct {
18939	_ struct{} `type:"structure"`
18940
18941	// Archive Group Settings
18942	ArchiveGroupSettings *ArchiveGroupSettings `locationName:"archiveGroupSettings" type:"structure"`
18943
18944	// Frame Capture Group Settings
18945	FrameCaptureGroupSettings *FrameCaptureGroupSettings `locationName:"frameCaptureGroupSettings" type:"structure"`
18946
18947	// Hls Group Settings
18948	HlsGroupSettings *HlsGroupSettings `locationName:"hlsGroupSettings" type:"structure"`
18949
18950	// Media Package Group Settings
18951	MediaPackageGroupSettings *MediaPackageGroupSettings `locationName:"mediaPackageGroupSettings" type:"structure"`
18952
18953	// Ms Smooth Group Settings
18954	MsSmoothGroupSettings *MsSmoothGroupSettings `locationName:"msSmoothGroupSettings" type:"structure"`
18955
18956	// Multiplex Group Settings
18957	MultiplexGroupSettings *MultiplexGroupSettings `locationName:"multiplexGroupSettings" type:"structure"`
18958
18959	// Rtmp Group Settings
18960	RtmpGroupSettings *RtmpGroupSettings `locationName:"rtmpGroupSettings" type:"structure"`
18961
18962	// Udp Group Settings
18963	UdpGroupSettings *UdpGroupSettings `locationName:"udpGroupSettings" type:"structure"`
18964}
18965
18966// String returns the string representation
18967func (s OutputGroupSettings) String() string {
18968	return awsutil.Prettify(s)
18969}
18970
18971// GoString returns the string representation
18972func (s OutputGroupSettings) GoString() string {
18973	return s.String()
18974}
18975
18976// Validate inspects the fields of the type to determine if they are valid.
18977func (s *OutputGroupSettings) Validate() error {
18978	invalidParams := request.ErrInvalidParams{Context: "OutputGroupSettings"}
18979	if s.ArchiveGroupSettings != nil {
18980		if err := s.ArchiveGroupSettings.Validate(); err != nil {
18981			invalidParams.AddNested("ArchiveGroupSettings", err.(request.ErrInvalidParams))
18982		}
18983	}
18984	if s.FrameCaptureGroupSettings != nil {
18985		if err := s.FrameCaptureGroupSettings.Validate(); err != nil {
18986			invalidParams.AddNested("FrameCaptureGroupSettings", err.(request.ErrInvalidParams))
18987		}
18988	}
18989	if s.HlsGroupSettings != nil {
18990		if err := s.HlsGroupSettings.Validate(); err != nil {
18991			invalidParams.AddNested("HlsGroupSettings", err.(request.ErrInvalidParams))
18992		}
18993	}
18994	if s.MediaPackageGroupSettings != nil {
18995		if err := s.MediaPackageGroupSettings.Validate(); err != nil {
18996			invalidParams.AddNested("MediaPackageGroupSettings", err.(request.ErrInvalidParams))
18997		}
18998	}
18999	if s.MsSmoothGroupSettings != nil {
19000		if err := s.MsSmoothGroupSettings.Validate(); err != nil {
19001			invalidParams.AddNested("MsSmoothGroupSettings", err.(request.ErrInvalidParams))
19002		}
19003	}
19004	if s.RtmpGroupSettings != nil {
19005		if err := s.RtmpGroupSettings.Validate(); err != nil {
19006			invalidParams.AddNested("RtmpGroupSettings", err.(request.ErrInvalidParams))
19007		}
19008	}
19009
19010	if invalidParams.Len() > 0 {
19011		return invalidParams
19012	}
19013	return nil
19014}
19015
19016// SetArchiveGroupSettings sets the ArchiveGroupSettings field's value.
19017func (s *OutputGroupSettings) SetArchiveGroupSettings(v *ArchiveGroupSettings) *OutputGroupSettings {
19018	s.ArchiveGroupSettings = v
19019	return s
19020}
19021
19022// SetFrameCaptureGroupSettings sets the FrameCaptureGroupSettings field's value.
19023func (s *OutputGroupSettings) SetFrameCaptureGroupSettings(v *FrameCaptureGroupSettings) *OutputGroupSettings {
19024	s.FrameCaptureGroupSettings = v
19025	return s
19026}
19027
19028// SetHlsGroupSettings sets the HlsGroupSettings field's value.
19029func (s *OutputGroupSettings) SetHlsGroupSettings(v *HlsGroupSettings) *OutputGroupSettings {
19030	s.HlsGroupSettings = v
19031	return s
19032}
19033
19034// SetMediaPackageGroupSettings sets the MediaPackageGroupSettings field's value.
19035func (s *OutputGroupSettings) SetMediaPackageGroupSettings(v *MediaPackageGroupSettings) *OutputGroupSettings {
19036	s.MediaPackageGroupSettings = v
19037	return s
19038}
19039
19040// SetMsSmoothGroupSettings sets the MsSmoothGroupSettings field's value.
19041func (s *OutputGroupSettings) SetMsSmoothGroupSettings(v *MsSmoothGroupSettings) *OutputGroupSettings {
19042	s.MsSmoothGroupSettings = v
19043	return s
19044}
19045
19046// SetMultiplexGroupSettings sets the MultiplexGroupSettings field's value.
19047func (s *OutputGroupSettings) SetMultiplexGroupSettings(v *MultiplexGroupSettings) *OutputGroupSettings {
19048	s.MultiplexGroupSettings = v
19049	return s
19050}
19051
19052// SetRtmpGroupSettings sets the RtmpGroupSettings field's value.
19053func (s *OutputGroupSettings) SetRtmpGroupSettings(v *RtmpGroupSettings) *OutputGroupSettings {
19054	s.RtmpGroupSettings = v
19055	return s
19056}
19057
19058// SetUdpGroupSettings sets the UdpGroupSettings field's value.
19059func (s *OutputGroupSettings) SetUdpGroupSettings(v *UdpGroupSettings) *OutputGroupSettings {
19060	s.UdpGroupSettings = v
19061	return s
19062}
19063
19064// Reference to an OutputDestination ID defined in the channel
19065type OutputLocationRef struct {
19066	_ struct{} `type:"structure"`
19067
19068	DestinationRefId *string `locationName:"destinationRefId" type:"string"`
19069}
19070
19071// String returns the string representation
19072func (s OutputLocationRef) String() string {
19073	return awsutil.Prettify(s)
19074}
19075
19076// GoString returns the string representation
19077func (s OutputLocationRef) GoString() string {
19078	return s.String()
19079}
19080
19081// SetDestinationRefId sets the DestinationRefId field's value.
19082func (s *OutputLocationRef) SetDestinationRefId(v string) *OutputLocationRef {
19083	s.DestinationRefId = &v
19084	return s
19085}
19086
19087// Output Settings
19088type OutputSettings struct {
19089	_ struct{} `type:"structure"`
19090
19091	// Archive Output Settings
19092	ArchiveOutputSettings *ArchiveOutputSettings `locationName:"archiveOutputSettings" type:"structure"`
19093
19094	// Frame Capture Output Settings
19095	FrameCaptureOutputSettings *FrameCaptureOutputSettings `locationName:"frameCaptureOutputSettings" type:"structure"`
19096
19097	// Hls Output Settings
19098	HlsOutputSettings *HlsOutputSettings `locationName:"hlsOutputSettings" type:"structure"`
19099
19100	// Media Package Output Settings
19101	MediaPackageOutputSettings *MediaPackageOutputSettings `locationName:"mediaPackageOutputSettings" type:"structure"`
19102
19103	// Ms Smooth Output Settings
19104	MsSmoothOutputSettings *MsSmoothOutputSettings `locationName:"msSmoothOutputSettings" type:"structure"`
19105
19106	// Multiplex Output Settings
19107	MultiplexOutputSettings *MultiplexOutputSettings `locationName:"multiplexOutputSettings" type:"structure"`
19108
19109	// Rtmp Output Settings
19110	RtmpOutputSettings *RtmpOutputSettings `locationName:"rtmpOutputSettings" type:"structure"`
19111
19112	// Udp Output Settings
19113	UdpOutputSettings *UdpOutputSettings `locationName:"udpOutputSettings" type:"structure"`
19114}
19115
19116// String returns the string representation
19117func (s OutputSettings) String() string {
19118	return awsutil.Prettify(s)
19119}
19120
19121// GoString returns the string representation
19122func (s OutputSettings) GoString() string {
19123	return s.String()
19124}
19125
19126// Validate inspects the fields of the type to determine if they are valid.
19127func (s *OutputSettings) Validate() error {
19128	invalidParams := request.ErrInvalidParams{Context: "OutputSettings"}
19129	if s.ArchiveOutputSettings != nil {
19130		if err := s.ArchiveOutputSettings.Validate(); err != nil {
19131			invalidParams.AddNested("ArchiveOutputSettings", err.(request.ErrInvalidParams))
19132		}
19133	}
19134	if s.HlsOutputSettings != nil {
19135		if err := s.HlsOutputSettings.Validate(); err != nil {
19136			invalidParams.AddNested("HlsOutputSettings", err.(request.ErrInvalidParams))
19137		}
19138	}
19139	if s.MultiplexOutputSettings != nil {
19140		if err := s.MultiplexOutputSettings.Validate(); err != nil {
19141			invalidParams.AddNested("MultiplexOutputSettings", err.(request.ErrInvalidParams))
19142		}
19143	}
19144	if s.RtmpOutputSettings != nil {
19145		if err := s.RtmpOutputSettings.Validate(); err != nil {
19146			invalidParams.AddNested("RtmpOutputSettings", err.(request.ErrInvalidParams))
19147		}
19148	}
19149	if s.UdpOutputSettings != nil {
19150		if err := s.UdpOutputSettings.Validate(); err != nil {
19151			invalidParams.AddNested("UdpOutputSettings", err.(request.ErrInvalidParams))
19152		}
19153	}
19154
19155	if invalidParams.Len() > 0 {
19156		return invalidParams
19157	}
19158	return nil
19159}
19160
19161// SetArchiveOutputSettings sets the ArchiveOutputSettings field's value.
19162func (s *OutputSettings) SetArchiveOutputSettings(v *ArchiveOutputSettings) *OutputSettings {
19163	s.ArchiveOutputSettings = v
19164	return s
19165}
19166
19167// SetFrameCaptureOutputSettings sets the FrameCaptureOutputSettings field's value.
19168func (s *OutputSettings) SetFrameCaptureOutputSettings(v *FrameCaptureOutputSettings) *OutputSettings {
19169	s.FrameCaptureOutputSettings = v
19170	return s
19171}
19172
19173// SetHlsOutputSettings sets the HlsOutputSettings field's value.
19174func (s *OutputSettings) SetHlsOutputSettings(v *HlsOutputSettings) *OutputSettings {
19175	s.HlsOutputSettings = v
19176	return s
19177}
19178
19179// SetMediaPackageOutputSettings sets the MediaPackageOutputSettings field's value.
19180func (s *OutputSettings) SetMediaPackageOutputSettings(v *MediaPackageOutputSettings) *OutputSettings {
19181	s.MediaPackageOutputSettings = v
19182	return s
19183}
19184
19185// SetMsSmoothOutputSettings sets the MsSmoothOutputSettings field's value.
19186func (s *OutputSettings) SetMsSmoothOutputSettings(v *MsSmoothOutputSettings) *OutputSettings {
19187	s.MsSmoothOutputSettings = v
19188	return s
19189}
19190
19191// SetMultiplexOutputSettings sets the MultiplexOutputSettings field's value.
19192func (s *OutputSettings) SetMultiplexOutputSettings(v *MultiplexOutputSettings) *OutputSettings {
19193	s.MultiplexOutputSettings = v
19194	return s
19195}
19196
19197// SetRtmpOutputSettings sets the RtmpOutputSettings field's value.
19198func (s *OutputSettings) SetRtmpOutputSettings(v *RtmpOutputSettings) *OutputSettings {
19199	s.RtmpOutputSettings = v
19200	return s
19201}
19202
19203// SetUdpOutputSettings sets the UdpOutputSettings field's value.
19204func (s *OutputSettings) SetUdpOutputSettings(v *UdpOutputSettings) *OutputSettings {
19205	s.UdpOutputSettings = v
19206	return s
19207}
19208
19209// Pass Through Settings
19210type PassThroughSettings struct {
19211	_ struct{} `type:"structure"`
19212}
19213
19214// String returns the string representation
19215func (s PassThroughSettings) String() string {
19216	return awsutil.Prettify(s)
19217}
19218
19219// GoString returns the string representation
19220func (s PassThroughSettings) GoString() string {
19221	return s.String()
19222}
19223
19224// Settings for the action to set pause state of a channel.
19225type PauseStateScheduleActionSettings struct {
19226	_ struct{} `type:"structure"`
19227
19228	Pipelines []*PipelinePauseStateSettings `locationName:"pipelines" type:"list"`
19229}
19230
19231// String returns the string representation
19232func (s PauseStateScheduleActionSettings) String() string {
19233	return awsutil.Prettify(s)
19234}
19235
19236// GoString returns the string representation
19237func (s PauseStateScheduleActionSettings) GoString() string {
19238	return s.String()
19239}
19240
19241// Validate inspects the fields of the type to determine if they are valid.
19242func (s *PauseStateScheduleActionSettings) Validate() error {
19243	invalidParams := request.ErrInvalidParams{Context: "PauseStateScheduleActionSettings"}
19244	if s.Pipelines != nil {
19245		for i, v := range s.Pipelines {
19246			if v == nil {
19247				continue
19248			}
19249			if err := v.Validate(); err != nil {
19250				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Pipelines", i), err.(request.ErrInvalidParams))
19251			}
19252		}
19253	}
19254
19255	if invalidParams.Len() > 0 {
19256		return invalidParams
19257	}
19258	return nil
19259}
19260
19261// SetPipelines sets the Pipelines field's value.
19262func (s *PauseStateScheduleActionSettings) SetPipelines(v []*PipelinePauseStateSettings) *PauseStateScheduleActionSettings {
19263	s.Pipelines = v
19264	return s
19265}
19266
19267// Runtime details of a pipeline when a channel is running.
19268type PipelineDetail struct {
19269	_ struct{} `type:"structure"`
19270
19271	// The name of the active input attachment currently being ingested by this
19272	// pipeline.
19273	ActiveInputAttachmentName *string `locationName:"activeInputAttachmentName" type:"string"`
19274
19275	// The name of the input switch schedule action that occurred most recently
19276	// and that resulted in the switch to the current input attachment for this
19277	// pipeline.
19278	ActiveInputSwitchActionName *string `locationName:"activeInputSwitchActionName" type:"string"`
19279
19280	// Pipeline ID
19281	PipelineId *string `locationName:"pipelineId" type:"string"`
19282}
19283
19284// String returns the string representation
19285func (s PipelineDetail) String() string {
19286	return awsutil.Prettify(s)
19287}
19288
19289// GoString returns the string representation
19290func (s PipelineDetail) GoString() string {
19291	return s.String()
19292}
19293
19294// SetActiveInputAttachmentName sets the ActiveInputAttachmentName field's value.
19295func (s *PipelineDetail) SetActiveInputAttachmentName(v string) *PipelineDetail {
19296	s.ActiveInputAttachmentName = &v
19297	return s
19298}
19299
19300// SetActiveInputSwitchActionName sets the ActiveInputSwitchActionName field's value.
19301func (s *PipelineDetail) SetActiveInputSwitchActionName(v string) *PipelineDetail {
19302	s.ActiveInputSwitchActionName = &v
19303	return s
19304}
19305
19306// SetPipelineId sets the PipelineId field's value.
19307func (s *PipelineDetail) SetPipelineId(v string) *PipelineDetail {
19308	s.PipelineId = &v
19309	return s
19310}
19311
19312// Settings for pausing a pipeline.
19313type PipelinePauseStateSettings struct {
19314	_ struct{} `type:"structure"`
19315
19316	// Pipeline ID to pause ("PIPELINE_0" or "PIPELINE_1").
19317	//
19318	// PipelineId is a required field
19319	PipelineId *string `locationName:"pipelineId" type:"string" required:"true" enum:"PipelineId"`
19320}
19321
19322// String returns the string representation
19323func (s PipelinePauseStateSettings) String() string {
19324	return awsutil.Prettify(s)
19325}
19326
19327// GoString returns the string representation
19328func (s PipelinePauseStateSettings) GoString() string {
19329	return s.String()
19330}
19331
19332// Validate inspects the fields of the type to determine if they are valid.
19333func (s *PipelinePauseStateSettings) Validate() error {
19334	invalidParams := request.ErrInvalidParams{Context: "PipelinePauseStateSettings"}
19335	if s.PipelineId == nil {
19336		invalidParams.Add(request.NewErrParamRequired("PipelineId"))
19337	}
19338
19339	if invalidParams.Len() > 0 {
19340		return invalidParams
19341	}
19342	return nil
19343}
19344
19345// SetPipelineId sets the PipelineId field's value.
19346func (s *PipelinePauseStateSettings) SetPipelineId(v string) *PipelinePauseStateSettings {
19347	s.PipelineId = &v
19348	return s
19349}
19350
19351type PurchaseOfferingInput struct {
19352	_ struct{} `type:"structure"`
19353
19354	// Count is a required field
19355	Count *int64 `locationName:"count" min:"1" type:"integer" required:"true"`
19356
19357	Name *string `locationName:"name" type:"string"`
19358
19359	// OfferingId is a required field
19360	OfferingId *string `location:"uri" locationName:"offeringId" type:"string" required:"true"`
19361
19362	RequestId *string `locationName:"requestId" type:"string" idempotencyToken:"true"`
19363
19364	Start *string `locationName:"start" type:"string"`
19365
19366	Tags map[string]*string `locationName:"tags" type:"map"`
19367}
19368
19369// String returns the string representation
19370func (s PurchaseOfferingInput) String() string {
19371	return awsutil.Prettify(s)
19372}
19373
19374// GoString returns the string representation
19375func (s PurchaseOfferingInput) GoString() string {
19376	return s.String()
19377}
19378
19379// Validate inspects the fields of the type to determine if they are valid.
19380func (s *PurchaseOfferingInput) Validate() error {
19381	invalidParams := request.ErrInvalidParams{Context: "PurchaseOfferingInput"}
19382	if s.Count == nil {
19383		invalidParams.Add(request.NewErrParamRequired("Count"))
19384	}
19385	if s.Count != nil && *s.Count < 1 {
19386		invalidParams.Add(request.NewErrParamMinValue("Count", 1))
19387	}
19388	if s.OfferingId == nil {
19389		invalidParams.Add(request.NewErrParamRequired("OfferingId"))
19390	}
19391	if s.OfferingId != nil && len(*s.OfferingId) < 1 {
19392		invalidParams.Add(request.NewErrParamMinLen("OfferingId", 1))
19393	}
19394
19395	if invalidParams.Len() > 0 {
19396		return invalidParams
19397	}
19398	return nil
19399}
19400
19401// SetCount sets the Count field's value.
19402func (s *PurchaseOfferingInput) SetCount(v int64) *PurchaseOfferingInput {
19403	s.Count = &v
19404	return s
19405}
19406
19407// SetName sets the Name field's value.
19408func (s *PurchaseOfferingInput) SetName(v string) *PurchaseOfferingInput {
19409	s.Name = &v
19410	return s
19411}
19412
19413// SetOfferingId sets the OfferingId field's value.
19414func (s *PurchaseOfferingInput) SetOfferingId(v string) *PurchaseOfferingInput {
19415	s.OfferingId = &v
19416	return s
19417}
19418
19419// SetRequestId sets the RequestId field's value.
19420func (s *PurchaseOfferingInput) SetRequestId(v string) *PurchaseOfferingInput {
19421	s.RequestId = &v
19422	return s
19423}
19424
19425// SetStart sets the Start field's value.
19426func (s *PurchaseOfferingInput) SetStart(v string) *PurchaseOfferingInput {
19427	s.Start = &v
19428	return s
19429}
19430
19431// SetTags sets the Tags field's value.
19432func (s *PurchaseOfferingInput) SetTags(v map[string]*string) *PurchaseOfferingInput {
19433	s.Tags = v
19434	return s
19435}
19436
19437type PurchaseOfferingOutput struct {
19438	_ struct{} `type:"structure"`
19439
19440	// Reserved resources available to use
19441	Reservation *Reservation `locationName:"reservation" type:"structure"`
19442}
19443
19444// String returns the string representation
19445func (s PurchaseOfferingOutput) String() string {
19446	return awsutil.Prettify(s)
19447}
19448
19449// GoString returns the string representation
19450func (s PurchaseOfferingOutput) GoString() string {
19451	return s.String()
19452}
19453
19454// SetReservation sets the Reservation field's value.
19455func (s *PurchaseOfferingOutput) SetReservation(v *Reservation) *PurchaseOfferingOutput {
19456	s.Reservation = v
19457	return s
19458}
19459
19460// Rec601 Settings
19461type Rec601Settings struct {
19462	_ struct{} `type:"structure"`
19463}
19464
19465// String returns the string representation
19466func (s Rec601Settings) String() string {
19467	return awsutil.Prettify(s)
19468}
19469
19470// GoString returns the string representation
19471func (s Rec601Settings) GoString() string {
19472	return s.String()
19473}
19474
19475// Rec709 Settings
19476type Rec709Settings struct {
19477	_ struct{} `type:"structure"`
19478}
19479
19480// String returns the string representation
19481func (s Rec709Settings) String() string {
19482	return awsutil.Prettify(s)
19483}
19484
19485// GoString returns the string representation
19486func (s Rec709Settings) GoString() string {
19487	return s.String()
19488}
19489
19490// Remix Settings
19491type RemixSettings struct {
19492	_ struct{} `type:"structure"`
19493
19494	// Mapping of input channels to output channels, with appropriate gain adjustments.
19495	//
19496	// ChannelMappings is a required field
19497	ChannelMappings []*AudioChannelMapping `locationName:"channelMappings" type:"list" required:"true"`
19498
19499	// Number of input channels to be used.
19500	ChannelsIn *int64 `locationName:"channelsIn" min:"1" type:"integer"`
19501
19502	// Number of output channels to be produced.Valid values: 1, 2, 4, 6, 8
19503	ChannelsOut *int64 `locationName:"channelsOut" min:"1" type:"integer"`
19504}
19505
19506// String returns the string representation
19507func (s RemixSettings) String() string {
19508	return awsutil.Prettify(s)
19509}
19510
19511// GoString returns the string representation
19512func (s RemixSettings) GoString() string {
19513	return s.String()
19514}
19515
19516// Validate inspects the fields of the type to determine if they are valid.
19517func (s *RemixSettings) Validate() error {
19518	invalidParams := request.ErrInvalidParams{Context: "RemixSettings"}
19519	if s.ChannelMappings == nil {
19520		invalidParams.Add(request.NewErrParamRequired("ChannelMappings"))
19521	}
19522	if s.ChannelsIn != nil && *s.ChannelsIn < 1 {
19523		invalidParams.Add(request.NewErrParamMinValue("ChannelsIn", 1))
19524	}
19525	if s.ChannelsOut != nil && *s.ChannelsOut < 1 {
19526		invalidParams.Add(request.NewErrParamMinValue("ChannelsOut", 1))
19527	}
19528	if s.ChannelMappings != nil {
19529		for i, v := range s.ChannelMappings {
19530			if v == nil {
19531				continue
19532			}
19533			if err := v.Validate(); err != nil {
19534				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ChannelMappings", i), err.(request.ErrInvalidParams))
19535			}
19536		}
19537	}
19538
19539	if invalidParams.Len() > 0 {
19540		return invalidParams
19541	}
19542	return nil
19543}
19544
19545// SetChannelMappings sets the ChannelMappings field's value.
19546func (s *RemixSettings) SetChannelMappings(v []*AudioChannelMapping) *RemixSettings {
19547	s.ChannelMappings = v
19548	return s
19549}
19550
19551// SetChannelsIn sets the ChannelsIn field's value.
19552func (s *RemixSettings) SetChannelsIn(v int64) *RemixSettings {
19553	s.ChannelsIn = &v
19554	return s
19555}
19556
19557// SetChannelsOut sets the ChannelsOut field's value.
19558func (s *RemixSettings) SetChannelsOut(v int64) *RemixSettings {
19559	s.ChannelsOut = &v
19560	return s
19561}
19562
19563// Reserved resources available to use
19564type Reservation struct {
19565	_ struct{} `type:"structure"`
19566
19567	// Unique reservation ARN, e.g. 'arn:aws:medialive:us-west-2:123456789012:reservation:1234567'
19568	Arn *string `locationName:"arn" type:"string"`
19569
19570	// Number of reserved resources
19571	Count *int64 `locationName:"count" type:"integer"`
19572
19573	// Currency code for usagePrice and fixedPrice in ISO-4217 format, e.g. 'USD'
19574	CurrencyCode *string `locationName:"currencyCode" type:"string"`
19575
19576	// Lease duration, e.g. '12'
19577	Duration *int64 `locationName:"duration" type:"integer"`
19578
19579	// Units for duration, e.g. 'MONTHS'
19580	DurationUnits *string `locationName:"durationUnits" type:"string" enum:"OfferingDurationUnits"`
19581
19582	// Reservation UTC end date and time in ISO-8601 format, e.g. '2019-03-01T00:00:00'
19583	End *string `locationName:"end" type:"string"`
19584
19585	// One-time charge for each reserved resource, e.g. '0.0' for a NO_UPFRONT offering
19586	FixedPrice *float64 `locationName:"fixedPrice" type:"double"`
19587
19588	// User specified reservation name
19589	Name *string `locationName:"name" type:"string"`
19590
19591	// Offering description, e.g. 'HD AVC output at 10-20 Mbps, 30 fps, and standard
19592	// VQ in US West (Oregon)'
19593	OfferingDescription *string `locationName:"offeringDescription" type:"string"`
19594
19595	// Unique offering ID, e.g. '87654321'
19596	OfferingId *string `locationName:"offeringId" type:"string"`
19597
19598	// Offering type, e.g. 'NO_UPFRONT'
19599	OfferingType *string `locationName:"offeringType" type:"string" enum:"OfferingType"`
19600
19601	// AWS region, e.g. 'us-west-2'
19602	Region *string `locationName:"region" type:"string"`
19603
19604	// Unique reservation ID, e.g. '1234567'
19605	ReservationId *string `locationName:"reservationId" type:"string"`
19606
19607	// Resource configuration details
19608	ResourceSpecification *ReservationResourceSpecification `locationName:"resourceSpecification" type:"structure"`
19609
19610	// Reservation UTC start date and time in ISO-8601 format, e.g. '2018-03-01T00:00:00'
19611	Start *string `locationName:"start" type:"string"`
19612
19613	// Current state of reservation, e.g. 'ACTIVE'
19614	State *string `locationName:"state" type:"string" enum:"ReservationState"`
19615
19616	// A collection of key-value pairs
19617	Tags map[string]*string `locationName:"tags" type:"map"`
19618
19619	// Recurring usage charge for each reserved resource, e.g. '157.0'
19620	UsagePrice *float64 `locationName:"usagePrice" type:"double"`
19621}
19622
19623// String returns the string representation
19624func (s Reservation) String() string {
19625	return awsutil.Prettify(s)
19626}
19627
19628// GoString returns the string representation
19629func (s Reservation) GoString() string {
19630	return s.String()
19631}
19632
19633// SetArn sets the Arn field's value.
19634func (s *Reservation) SetArn(v string) *Reservation {
19635	s.Arn = &v
19636	return s
19637}
19638
19639// SetCount sets the Count field's value.
19640func (s *Reservation) SetCount(v int64) *Reservation {
19641	s.Count = &v
19642	return s
19643}
19644
19645// SetCurrencyCode sets the CurrencyCode field's value.
19646func (s *Reservation) SetCurrencyCode(v string) *Reservation {
19647	s.CurrencyCode = &v
19648	return s
19649}
19650
19651// SetDuration sets the Duration field's value.
19652func (s *Reservation) SetDuration(v int64) *Reservation {
19653	s.Duration = &v
19654	return s
19655}
19656
19657// SetDurationUnits sets the DurationUnits field's value.
19658func (s *Reservation) SetDurationUnits(v string) *Reservation {
19659	s.DurationUnits = &v
19660	return s
19661}
19662
19663// SetEnd sets the End field's value.
19664func (s *Reservation) SetEnd(v string) *Reservation {
19665	s.End = &v
19666	return s
19667}
19668
19669// SetFixedPrice sets the FixedPrice field's value.
19670func (s *Reservation) SetFixedPrice(v float64) *Reservation {
19671	s.FixedPrice = &v
19672	return s
19673}
19674
19675// SetName sets the Name field's value.
19676func (s *Reservation) SetName(v string) *Reservation {
19677	s.Name = &v
19678	return s
19679}
19680
19681// SetOfferingDescription sets the OfferingDescription field's value.
19682func (s *Reservation) SetOfferingDescription(v string) *Reservation {
19683	s.OfferingDescription = &v
19684	return s
19685}
19686
19687// SetOfferingId sets the OfferingId field's value.
19688func (s *Reservation) SetOfferingId(v string) *Reservation {
19689	s.OfferingId = &v
19690	return s
19691}
19692
19693// SetOfferingType sets the OfferingType field's value.
19694func (s *Reservation) SetOfferingType(v string) *Reservation {
19695	s.OfferingType = &v
19696	return s
19697}
19698
19699// SetRegion sets the Region field's value.
19700func (s *Reservation) SetRegion(v string) *Reservation {
19701	s.Region = &v
19702	return s
19703}
19704
19705// SetReservationId sets the ReservationId field's value.
19706func (s *Reservation) SetReservationId(v string) *Reservation {
19707	s.ReservationId = &v
19708	return s
19709}
19710
19711// SetResourceSpecification sets the ResourceSpecification field's value.
19712func (s *Reservation) SetResourceSpecification(v *ReservationResourceSpecification) *Reservation {
19713	s.ResourceSpecification = v
19714	return s
19715}
19716
19717// SetStart sets the Start field's value.
19718func (s *Reservation) SetStart(v string) *Reservation {
19719	s.Start = &v
19720	return s
19721}
19722
19723// SetState sets the State field's value.
19724func (s *Reservation) SetState(v string) *Reservation {
19725	s.State = &v
19726	return s
19727}
19728
19729// SetTags sets the Tags field's value.
19730func (s *Reservation) SetTags(v map[string]*string) *Reservation {
19731	s.Tags = v
19732	return s
19733}
19734
19735// SetUsagePrice sets the UsagePrice field's value.
19736func (s *Reservation) SetUsagePrice(v float64) *Reservation {
19737	s.UsagePrice = &v
19738	return s
19739}
19740
19741// Resource configuration (codec, resolution, bitrate, ...)
19742type ReservationResourceSpecification struct {
19743	_ struct{} `type:"structure"`
19744
19745	// Channel class, e.g. 'STANDARD'
19746	ChannelClass *string `locationName:"channelClass" type:"string" enum:"ChannelClass"`
19747
19748	// Codec, e.g. 'AVC'
19749	Codec *string `locationName:"codec" type:"string" enum:"ReservationCodec"`
19750
19751	// Maximum bitrate, e.g. 'MAX_20_MBPS'
19752	MaximumBitrate *string `locationName:"maximumBitrate" type:"string" enum:"ReservationMaximumBitrate"`
19753
19754	// Maximum framerate, e.g. 'MAX_30_FPS' (Outputs only)
19755	MaximumFramerate *string `locationName:"maximumFramerate" type:"string" enum:"ReservationMaximumFramerate"`
19756
19757	// Resolution, e.g. 'HD'
19758	Resolution *string `locationName:"resolution" type:"string" enum:"ReservationResolution"`
19759
19760	// Resource type, 'INPUT', 'OUTPUT', 'MULTIPLEX', or 'CHANNEL'
19761	ResourceType *string `locationName:"resourceType" type:"string" enum:"ReservationResourceType"`
19762
19763	// Special feature, e.g. 'AUDIO_NORMALIZATION' (Channels only)
19764	SpecialFeature *string `locationName:"specialFeature" type:"string" enum:"ReservationSpecialFeature"`
19765
19766	// Video quality, e.g. 'STANDARD' (Outputs only)
19767	VideoQuality *string `locationName:"videoQuality" type:"string" enum:"ReservationVideoQuality"`
19768}
19769
19770// String returns the string representation
19771func (s ReservationResourceSpecification) String() string {
19772	return awsutil.Prettify(s)
19773}
19774
19775// GoString returns the string representation
19776func (s ReservationResourceSpecification) GoString() string {
19777	return s.String()
19778}
19779
19780// SetChannelClass sets the ChannelClass field's value.
19781func (s *ReservationResourceSpecification) SetChannelClass(v string) *ReservationResourceSpecification {
19782	s.ChannelClass = &v
19783	return s
19784}
19785
19786// SetCodec sets the Codec field's value.
19787func (s *ReservationResourceSpecification) SetCodec(v string) *ReservationResourceSpecification {
19788	s.Codec = &v
19789	return s
19790}
19791
19792// SetMaximumBitrate sets the MaximumBitrate field's value.
19793func (s *ReservationResourceSpecification) SetMaximumBitrate(v string) *ReservationResourceSpecification {
19794	s.MaximumBitrate = &v
19795	return s
19796}
19797
19798// SetMaximumFramerate sets the MaximumFramerate field's value.
19799func (s *ReservationResourceSpecification) SetMaximumFramerate(v string) *ReservationResourceSpecification {
19800	s.MaximumFramerate = &v
19801	return s
19802}
19803
19804// SetResolution sets the Resolution field's value.
19805func (s *ReservationResourceSpecification) SetResolution(v string) *ReservationResourceSpecification {
19806	s.Resolution = &v
19807	return s
19808}
19809
19810// SetResourceType sets the ResourceType field's value.
19811func (s *ReservationResourceSpecification) SetResourceType(v string) *ReservationResourceSpecification {
19812	s.ResourceType = &v
19813	return s
19814}
19815
19816// SetSpecialFeature sets the SpecialFeature field's value.
19817func (s *ReservationResourceSpecification) SetSpecialFeature(v string) *ReservationResourceSpecification {
19818	s.SpecialFeature = &v
19819	return s
19820}
19821
19822// SetVideoQuality sets the VideoQuality field's value.
19823func (s *ReservationResourceSpecification) SetVideoQuality(v string) *ReservationResourceSpecification {
19824	s.VideoQuality = &v
19825	return s
19826}
19827
19828// Rtmp Caption Info Destination Settings
19829type RtmpCaptionInfoDestinationSettings struct {
19830	_ struct{} `type:"structure"`
19831}
19832
19833// String returns the string representation
19834func (s RtmpCaptionInfoDestinationSettings) String() string {
19835	return awsutil.Prettify(s)
19836}
19837
19838// GoString returns the string representation
19839func (s RtmpCaptionInfoDestinationSettings) GoString() string {
19840	return s.String()
19841}
19842
19843// Rtmp Group Settings
19844type RtmpGroupSettings struct {
19845	_ struct{} `type:"structure"`
19846
19847	// Authentication scheme to use when connecting with CDN
19848	AuthenticationScheme *string `locationName:"authenticationScheme" type:"string" enum:"AuthenticationScheme"`
19849
19850	// Controls behavior when content cache fills up. If remote origin server stalls
19851	// the RTMP connection and does not accept content fast enough the 'Media Cache'
19852	// will fill up. When the cache reaches the duration specified by cacheLength
19853	// the cache will stop accepting new content. If set to disconnectImmediately,
19854	// the RTMP output will force a disconnect. Clear the media cache, and reconnect
19855	// after restartDelay seconds. If set to waitForServer, the RTMP output will
19856	// wait up to 5 minutes to allow the origin server to begin accepting data again.
19857	CacheFullBehavior *string `locationName:"cacheFullBehavior" type:"string" enum:"RtmpCacheFullBehavior"`
19858
19859	// Cache length, in seconds, is used to calculate buffer size.
19860	CacheLength *int64 `locationName:"cacheLength" min:"30" type:"integer"`
19861
19862	// Controls the types of data that passes to onCaptionInfo outputs. If set to
19863	// 'all' then 608 and 708 carried DTVCC data will be passed. If set to 'field1AndField2608'
19864	// then DTVCC data will be stripped out, but 608 data from both fields will
19865	// be passed. If set to 'field1608' then only the data carried in 608 from field
19866	// 1 video will be passed.
19867	CaptionData *string `locationName:"captionData" type:"string" enum:"RtmpCaptionData"`
19868
19869	// Controls the behavior of this RTMP group if input becomes unavailable.- emitOutput:
19870	// Emit a slate until input returns.- pauseOutput: Stop transmitting data until
19871	// input returns. This does not close the underlying RTMP connection.
19872	InputLossAction *string `locationName:"inputLossAction" type:"string" enum:"InputLossActionForRtmpOut"`
19873
19874	// If a streaming output fails, number of seconds to wait until a restart is
19875	// initiated. A value of 0 means never restart.
19876	RestartDelay *int64 `locationName:"restartDelay" type:"integer"`
19877}
19878
19879// String returns the string representation
19880func (s RtmpGroupSettings) String() string {
19881	return awsutil.Prettify(s)
19882}
19883
19884// GoString returns the string representation
19885func (s RtmpGroupSettings) GoString() string {
19886	return s.String()
19887}
19888
19889// Validate inspects the fields of the type to determine if they are valid.
19890func (s *RtmpGroupSettings) Validate() error {
19891	invalidParams := request.ErrInvalidParams{Context: "RtmpGroupSettings"}
19892	if s.CacheLength != nil && *s.CacheLength < 30 {
19893		invalidParams.Add(request.NewErrParamMinValue("CacheLength", 30))
19894	}
19895
19896	if invalidParams.Len() > 0 {
19897		return invalidParams
19898	}
19899	return nil
19900}
19901
19902// SetAuthenticationScheme sets the AuthenticationScheme field's value.
19903func (s *RtmpGroupSettings) SetAuthenticationScheme(v string) *RtmpGroupSettings {
19904	s.AuthenticationScheme = &v
19905	return s
19906}
19907
19908// SetCacheFullBehavior sets the CacheFullBehavior field's value.
19909func (s *RtmpGroupSettings) SetCacheFullBehavior(v string) *RtmpGroupSettings {
19910	s.CacheFullBehavior = &v
19911	return s
19912}
19913
19914// SetCacheLength sets the CacheLength field's value.
19915func (s *RtmpGroupSettings) SetCacheLength(v int64) *RtmpGroupSettings {
19916	s.CacheLength = &v
19917	return s
19918}
19919
19920// SetCaptionData sets the CaptionData field's value.
19921func (s *RtmpGroupSettings) SetCaptionData(v string) *RtmpGroupSettings {
19922	s.CaptionData = &v
19923	return s
19924}
19925
19926// SetInputLossAction sets the InputLossAction field's value.
19927func (s *RtmpGroupSettings) SetInputLossAction(v string) *RtmpGroupSettings {
19928	s.InputLossAction = &v
19929	return s
19930}
19931
19932// SetRestartDelay sets the RestartDelay field's value.
19933func (s *RtmpGroupSettings) SetRestartDelay(v int64) *RtmpGroupSettings {
19934	s.RestartDelay = &v
19935	return s
19936}
19937
19938// Rtmp Output Settings
19939type RtmpOutputSettings struct {
19940	_ struct{} `type:"structure"`
19941
19942	// If set to verifyAuthenticity, verify the tls certificate chain to a trusted
19943	// Certificate Authority (CA). This will cause rtmps outputs with self-signed
19944	// certificates to fail.
19945	CertificateMode *string `locationName:"certificateMode" type:"string" enum:"RtmpOutputCertificateMode"`
19946
19947	// Number of seconds to wait before retrying a connection to the Flash Media
19948	// server if the connection is lost.
19949	ConnectionRetryInterval *int64 `locationName:"connectionRetryInterval" min:"1" type:"integer"`
19950
19951	// The RTMP endpoint excluding the stream name (eg. rtmp://host/appname). For
19952	// connection to Akamai, a username and password must be supplied. URI fields
19953	// accept format identifiers.
19954	//
19955	// Destination is a required field
19956	Destination *OutputLocationRef `locationName:"destination" type:"structure" required:"true"`
19957
19958	// Number of retry attempts.
19959	NumRetries *int64 `locationName:"numRetries" type:"integer"`
19960}
19961
19962// String returns the string representation
19963func (s RtmpOutputSettings) String() string {
19964	return awsutil.Prettify(s)
19965}
19966
19967// GoString returns the string representation
19968func (s RtmpOutputSettings) GoString() string {
19969	return s.String()
19970}
19971
19972// Validate inspects the fields of the type to determine if they are valid.
19973func (s *RtmpOutputSettings) Validate() error {
19974	invalidParams := request.ErrInvalidParams{Context: "RtmpOutputSettings"}
19975	if s.ConnectionRetryInterval != nil && *s.ConnectionRetryInterval < 1 {
19976		invalidParams.Add(request.NewErrParamMinValue("ConnectionRetryInterval", 1))
19977	}
19978	if s.Destination == nil {
19979		invalidParams.Add(request.NewErrParamRequired("Destination"))
19980	}
19981
19982	if invalidParams.Len() > 0 {
19983		return invalidParams
19984	}
19985	return nil
19986}
19987
19988// SetCertificateMode sets the CertificateMode field's value.
19989func (s *RtmpOutputSettings) SetCertificateMode(v string) *RtmpOutputSettings {
19990	s.CertificateMode = &v
19991	return s
19992}
19993
19994// SetConnectionRetryInterval sets the ConnectionRetryInterval field's value.
19995func (s *RtmpOutputSettings) SetConnectionRetryInterval(v int64) *RtmpOutputSettings {
19996	s.ConnectionRetryInterval = &v
19997	return s
19998}
19999
20000// SetDestination sets the Destination field's value.
20001func (s *RtmpOutputSettings) SetDestination(v *OutputLocationRef) *RtmpOutputSettings {
20002	s.Destination = v
20003	return s
20004}
20005
20006// SetNumRetries sets the NumRetries field's value.
20007func (s *RtmpOutputSettings) SetNumRetries(v int64) *RtmpOutputSettings {
20008	s.NumRetries = &v
20009	return s
20010}
20011
20012// Contains information on a single schedule action.
20013type ScheduleAction struct {
20014	_ struct{} `type:"structure"`
20015
20016	// The name of the action, must be unique within the schedule. This name provides
20017	// the main reference to an action once it is added to the schedule. A name
20018	// is unique if it is no longer in the schedule. The schedule is automatically
20019	// cleaned up to remove actions with a start time of more than 1 hour ago (approximately)
20020	// so at that point a name can be reused.
20021	//
20022	// ActionName is a required field
20023	ActionName *string `locationName:"actionName" type:"string" required:"true"`
20024
20025	// Settings for this schedule action.
20026	//
20027	// ScheduleActionSettings is a required field
20028	ScheduleActionSettings *ScheduleActionSettings `locationName:"scheduleActionSettings" type:"structure" required:"true"`
20029
20030	// The time for the action to start in the channel.
20031	//
20032	// ScheduleActionStartSettings is a required field
20033	ScheduleActionStartSettings *ScheduleActionStartSettings `locationName:"scheduleActionStartSettings" type:"structure" required:"true"`
20034}
20035
20036// String returns the string representation
20037func (s ScheduleAction) String() string {
20038	return awsutil.Prettify(s)
20039}
20040
20041// GoString returns the string representation
20042func (s ScheduleAction) GoString() string {
20043	return s.String()
20044}
20045
20046// Validate inspects the fields of the type to determine if they are valid.
20047func (s *ScheduleAction) Validate() error {
20048	invalidParams := request.ErrInvalidParams{Context: "ScheduleAction"}
20049	if s.ActionName == nil {
20050		invalidParams.Add(request.NewErrParamRequired("ActionName"))
20051	}
20052	if s.ScheduleActionSettings == nil {
20053		invalidParams.Add(request.NewErrParamRequired("ScheduleActionSettings"))
20054	}
20055	if s.ScheduleActionStartSettings == nil {
20056		invalidParams.Add(request.NewErrParamRequired("ScheduleActionStartSettings"))
20057	}
20058	if s.ScheduleActionSettings != nil {
20059		if err := s.ScheduleActionSettings.Validate(); err != nil {
20060			invalidParams.AddNested("ScheduleActionSettings", err.(request.ErrInvalidParams))
20061		}
20062	}
20063	if s.ScheduleActionStartSettings != nil {
20064		if err := s.ScheduleActionStartSettings.Validate(); err != nil {
20065			invalidParams.AddNested("ScheduleActionStartSettings", err.(request.ErrInvalidParams))
20066		}
20067	}
20068
20069	if invalidParams.Len() > 0 {
20070		return invalidParams
20071	}
20072	return nil
20073}
20074
20075// SetActionName sets the ActionName field's value.
20076func (s *ScheduleAction) SetActionName(v string) *ScheduleAction {
20077	s.ActionName = &v
20078	return s
20079}
20080
20081// SetScheduleActionSettings sets the ScheduleActionSettings field's value.
20082func (s *ScheduleAction) SetScheduleActionSettings(v *ScheduleActionSettings) *ScheduleAction {
20083	s.ScheduleActionSettings = v
20084	return s
20085}
20086
20087// SetScheduleActionStartSettings sets the ScheduleActionStartSettings field's value.
20088func (s *ScheduleAction) SetScheduleActionStartSettings(v *ScheduleActionStartSettings) *ScheduleAction {
20089	s.ScheduleActionStartSettings = v
20090	return s
20091}
20092
20093// Holds the settings for a single schedule action.
20094type ScheduleActionSettings struct {
20095	_ struct{} `type:"structure"`
20096
20097	// Action to insert HLS ID3 segment tagging
20098	HlsId3SegmentTaggingSettings *HlsId3SegmentTaggingScheduleActionSettings `locationName:"hlsId3SegmentTaggingSettings" type:"structure"`
20099
20100	// Action to insert HLS metadata
20101	HlsTimedMetadataSettings *HlsTimedMetadataScheduleActionSettings `locationName:"hlsTimedMetadataSettings" type:"structure"`
20102
20103	// Action to prepare an input for a future immediate input switch
20104	InputPrepareSettings *InputPrepareScheduleActionSettings `locationName:"inputPrepareSettings" type:"structure"`
20105
20106	// Action to switch the input
20107	InputSwitchSettings *InputSwitchScheduleActionSettings `locationName:"inputSwitchSettings" type:"structure"`
20108
20109	// Action to pause or unpause one or both channel pipelines
20110	PauseStateSettings *PauseStateScheduleActionSettings `locationName:"pauseStateSettings" type:"structure"`
20111
20112	// Action to insert SCTE-35 return_to_network message
20113	Scte35ReturnToNetworkSettings *Scte35ReturnToNetworkScheduleActionSettings `locationName:"scte35ReturnToNetworkSettings" type:"structure"`
20114
20115	// Action to insert SCTE-35 splice_insert message
20116	Scte35SpliceInsertSettings *Scte35SpliceInsertScheduleActionSettings `locationName:"scte35SpliceInsertSettings" type:"structure"`
20117
20118	// Action to insert SCTE-35 time_signal message
20119	Scte35TimeSignalSettings *Scte35TimeSignalScheduleActionSettings `locationName:"scte35TimeSignalSettings" type:"structure"`
20120
20121	// Action to activate a static image overlay
20122	StaticImageActivateSettings *StaticImageActivateScheduleActionSettings `locationName:"staticImageActivateSettings" type:"structure"`
20123
20124	// Action to deactivate a static image overlay
20125	StaticImageDeactivateSettings *StaticImageDeactivateScheduleActionSettings `locationName:"staticImageDeactivateSettings" type:"structure"`
20126}
20127
20128// String returns the string representation
20129func (s ScheduleActionSettings) String() string {
20130	return awsutil.Prettify(s)
20131}
20132
20133// GoString returns the string representation
20134func (s ScheduleActionSettings) GoString() string {
20135	return s.String()
20136}
20137
20138// Validate inspects the fields of the type to determine if they are valid.
20139func (s *ScheduleActionSettings) Validate() error {
20140	invalidParams := request.ErrInvalidParams{Context: "ScheduleActionSettings"}
20141	if s.HlsId3SegmentTaggingSettings != nil {
20142		if err := s.HlsId3SegmentTaggingSettings.Validate(); err != nil {
20143			invalidParams.AddNested("HlsId3SegmentTaggingSettings", err.(request.ErrInvalidParams))
20144		}
20145	}
20146	if s.HlsTimedMetadataSettings != nil {
20147		if err := s.HlsTimedMetadataSettings.Validate(); err != nil {
20148			invalidParams.AddNested("HlsTimedMetadataSettings", err.(request.ErrInvalidParams))
20149		}
20150	}
20151	if s.InputPrepareSettings != nil {
20152		if err := s.InputPrepareSettings.Validate(); err != nil {
20153			invalidParams.AddNested("InputPrepareSettings", err.(request.ErrInvalidParams))
20154		}
20155	}
20156	if s.InputSwitchSettings != nil {
20157		if err := s.InputSwitchSettings.Validate(); err != nil {
20158			invalidParams.AddNested("InputSwitchSettings", err.(request.ErrInvalidParams))
20159		}
20160	}
20161	if s.PauseStateSettings != nil {
20162		if err := s.PauseStateSettings.Validate(); err != nil {
20163			invalidParams.AddNested("PauseStateSettings", err.(request.ErrInvalidParams))
20164		}
20165	}
20166	if s.Scte35ReturnToNetworkSettings != nil {
20167		if err := s.Scte35ReturnToNetworkSettings.Validate(); err != nil {
20168			invalidParams.AddNested("Scte35ReturnToNetworkSettings", err.(request.ErrInvalidParams))
20169		}
20170	}
20171	if s.Scte35SpliceInsertSettings != nil {
20172		if err := s.Scte35SpliceInsertSettings.Validate(); err != nil {
20173			invalidParams.AddNested("Scte35SpliceInsertSettings", err.(request.ErrInvalidParams))
20174		}
20175	}
20176	if s.Scte35TimeSignalSettings != nil {
20177		if err := s.Scte35TimeSignalSettings.Validate(); err != nil {
20178			invalidParams.AddNested("Scte35TimeSignalSettings", err.(request.ErrInvalidParams))
20179		}
20180	}
20181	if s.StaticImageActivateSettings != nil {
20182		if err := s.StaticImageActivateSettings.Validate(); err != nil {
20183			invalidParams.AddNested("StaticImageActivateSettings", err.(request.ErrInvalidParams))
20184		}
20185	}
20186
20187	if invalidParams.Len() > 0 {
20188		return invalidParams
20189	}
20190	return nil
20191}
20192
20193// SetHlsId3SegmentTaggingSettings sets the HlsId3SegmentTaggingSettings field's value.
20194func (s *ScheduleActionSettings) SetHlsId3SegmentTaggingSettings(v *HlsId3SegmentTaggingScheduleActionSettings) *ScheduleActionSettings {
20195	s.HlsId3SegmentTaggingSettings = v
20196	return s
20197}
20198
20199// SetHlsTimedMetadataSettings sets the HlsTimedMetadataSettings field's value.
20200func (s *ScheduleActionSettings) SetHlsTimedMetadataSettings(v *HlsTimedMetadataScheduleActionSettings) *ScheduleActionSettings {
20201	s.HlsTimedMetadataSettings = v
20202	return s
20203}
20204
20205// SetInputPrepareSettings sets the InputPrepareSettings field's value.
20206func (s *ScheduleActionSettings) SetInputPrepareSettings(v *InputPrepareScheduleActionSettings) *ScheduleActionSettings {
20207	s.InputPrepareSettings = v
20208	return s
20209}
20210
20211// SetInputSwitchSettings sets the InputSwitchSettings field's value.
20212func (s *ScheduleActionSettings) SetInputSwitchSettings(v *InputSwitchScheduleActionSettings) *ScheduleActionSettings {
20213	s.InputSwitchSettings = v
20214	return s
20215}
20216
20217// SetPauseStateSettings sets the PauseStateSettings field's value.
20218func (s *ScheduleActionSettings) SetPauseStateSettings(v *PauseStateScheduleActionSettings) *ScheduleActionSettings {
20219	s.PauseStateSettings = v
20220	return s
20221}
20222
20223// SetScte35ReturnToNetworkSettings sets the Scte35ReturnToNetworkSettings field's value.
20224func (s *ScheduleActionSettings) SetScte35ReturnToNetworkSettings(v *Scte35ReturnToNetworkScheduleActionSettings) *ScheduleActionSettings {
20225	s.Scte35ReturnToNetworkSettings = v
20226	return s
20227}
20228
20229// SetScte35SpliceInsertSettings sets the Scte35SpliceInsertSettings field's value.
20230func (s *ScheduleActionSettings) SetScte35SpliceInsertSettings(v *Scte35SpliceInsertScheduleActionSettings) *ScheduleActionSettings {
20231	s.Scte35SpliceInsertSettings = v
20232	return s
20233}
20234
20235// SetScte35TimeSignalSettings sets the Scte35TimeSignalSettings field's value.
20236func (s *ScheduleActionSettings) SetScte35TimeSignalSettings(v *Scte35TimeSignalScheduleActionSettings) *ScheduleActionSettings {
20237	s.Scte35TimeSignalSettings = v
20238	return s
20239}
20240
20241// SetStaticImageActivateSettings sets the StaticImageActivateSettings field's value.
20242func (s *ScheduleActionSettings) SetStaticImageActivateSettings(v *StaticImageActivateScheduleActionSettings) *ScheduleActionSettings {
20243	s.StaticImageActivateSettings = v
20244	return s
20245}
20246
20247// SetStaticImageDeactivateSettings sets the StaticImageDeactivateSettings field's value.
20248func (s *ScheduleActionSettings) SetStaticImageDeactivateSettings(v *StaticImageDeactivateScheduleActionSettings) *ScheduleActionSettings {
20249	s.StaticImageDeactivateSettings = v
20250	return s
20251}
20252
20253// Settings to specify when an action should occur. Only one of the options
20254// must be selected.
20255type ScheduleActionStartSettings struct {
20256	_ struct{} `type:"structure"`
20257
20258	// Option for specifying the start time for an action.
20259	FixedModeScheduleActionStartSettings *FixedModeScheduleActionStartSettings `locationName:"fixedModeScheduleActionStartSettings" type:"structure"`
20260
20261	// Option for specifying an action as relative to another action.
20262	FollowModeScheduleActionStartSettings *FollowModeScheduleActionStartSettings `locationName:"followModeScheduleActionStartSettings" type:"structure"`
20263
20264	// Option for specifying an action that should be applied immediately.
20265	ImmediateModeScheduleActionStartSettings *ImmediateModeScheduleActionStartSettings `locationName:"immediateModeScheduleActionStartSettings" type:"structure"`
20266}
20267
20268// String returns the string representation
20269func (s ScheduleActionStartSettings) String() string {
20270	return awsutil.Prettify(s)
20271}
20272
20273// GoString returns the string representation
20274func (s ScheduleActionStartSettings) GoString() string {
20275	return s.String()
20276}
20277
20278// Validate inspects the fields of the type to determine if they are valid.
20279func (s *ScheduleActionStartSettings) Validate() error {
20280	invalidParams := request.ErrInvalidParams{Context: "ScheduleActionStartSettings"}
20281	if s.FixedModeScheduleActionStartSettings != nil {
20282		if err := s.FixedModeScheduleActionStartSettings.Validate(); err != nil {
20283			invalidParams.AddNested("FixedModeScheduleActionStartSettings", err.(request.ErrInvalidParams))
20284		}
20285	}
20286	if s.FollowModeScheduleActionStartSettings != nil {
20287		if err := s.FollowModeScheduleActionStartSettings.Validate(); err != nil {
20288			invalidParams.AddNested("FollowModeScheduleActionStartSettings", err.(request.ErrInvalidParams))
20289		}
20290	}
20291
20292	if invalidParams.Len() > 0 {
20293		return invalidParams
20294	}
20295	return nil
20296}
20297
20298// SetFixedModeScheduleActionStartSettings sets the FixedModeScheduleActionStartSettings field's value.
20299func (s *ScheduleActionStartSettings) SetFixedModeScheduleActionStartSettings(v *FixedModeScheduleActionStartSettings) *ScheduleActionStartSettings {
20300	s.FixedModeScheduleActionStartSettings = v
20301	return s
20302}
20303
20304// SetFollowModeScheduleActionStartSettings sets the FollowModeScheduleActionStartSettings field's value.
20305func (s *ScheduleActionStartSettings) SetFollowModeScheduleActionStartSettings(v *FollowModeScheduleActionStartSettings) *ScheduleActionStartSettings {
20306	s.FollowModeScheduleActionStartSettings = v
20307	return s
20308}
20309
20310// SetImmediateModeScheduleActionStartSettings sets the ImmediateModeScheduleActionStartSettings field's value.
20311func (s *ScheduleActionStartSettings) SetImmediateModeScheduleActionStartSettings(v *ImmediateModeScheduleActionStartSettings) *ScheduleActionStartSettings {
20312	s.ImmediateModeScheduleActionStartSettings = v
20313	return s
20314}
20315
20316// Scte20 Plus Embedded Destination Settings
20317type Scte20PlusEmbeddedDestinationSettings struct {
20318	_ struct{} `type:"structure"`
20319}
20320
20321// String returns the string representation
20322func (s Scte20PlusEmbeddedDestinationSettings) String() string {
20323	return awsutil.Prettify(s)
20324}
20325
20326// GoString returns the string representation
20327func (s Scte20PlusEmbeddedDestinationSettings) GoString() string {
20328	return s.String()
20329}
20330
20331// Scte20 Source Settings
20332type Scte20SourceSettings struct {
20333	_ struct{} `type:"structure"`
20334
20335	// If upconvert, 608 data is both passed through via the "608 compatibility
20336	// bytes" fields of the 708 wrapper as well as translated into 708. 708 data
20337	// present in the source content will be discarded.
20338	Convert608To708 *string `locationName:"convert608To708" type:"string" enum:"Scte20Convert608To708"`
20339
20340	// Specifies the 608/708 channel number within the video track from which to
20341	// extract captions. Unused for passthrough.
20342	Source608ChannelNumber *int64 `locationName:"source608ChannelNumber" min:"1" type:"integer"`
20343}
20344
20345// String returns the string representation
20346func (s Scte20SourceSettings) String() string {
20347	return awsutil.Prettify(s)
20348}
20349
20350// GoString returns the string representation
20351func (s Scte20SourceSettings) GoString() string {
20352	return s.String()
20353}
20354
20355// Validate inspects the fields of the type to determine if they are valid.
20356func (s *Scte20SourceSettings) Validate() error {
20357	invalidParams := request.ErrInvalidParams{Context: "Scte20SourceSettings"}
20358	if s.Source608ChannelNumber != nil && *s.Source608ChannelNumber < 1 {
20359		invalidParams.Add(request.NewErrParamMinValue("Source608ChannelNumber", 1))
20360	}
20361
20362	if invalidParams.Len() > 0 {
20363		return invalidParams
20364	}
20365	return nil
20366}
20367
20368// SetConvert608To708 sets the Convert608To708 field's value.
20369func (s *Scte20SourceSettings) SetConvert608To708(v string) *Scte20SourceSettings {
20370	s.Convert608To708 = &v
20371	return s
20372}
20373
20374// SetSource608ChannelNumber sets the Source608ChannelNumber field's value.
20375func (s *Scte20SourceSettings) SetSource608ChannelNumber(v int64) *Scte20SourceSettings {
20376	s.Source608ChannelNumber = &v
20377	return s
20378}
20379
20380// Scte27 Destination Settings
20381type Scte27DestinationSettings struct {
20382	_ struct{} `type:"structure"`
20383}
20384
20385// String returns the string representation
20386func (s Scte27DestinationSettings) String() string {
20387	return awsutil.Prettify(s)
20388}
20389
20390// GoString returns the string representation
20391func (s Scte27DestinationSettings) GoString() string {
20392	return s.String()
20393}
20394
20395// Scte27 Source Settings
20396type Scte27SourceSettings struct {
20397	_ struct{} `type:"structure"`
20398
20399	// The pid field is used in conjunction with the caption selector languageCode
20400	// field as follows: - Specify PID and Language: Extracts captions from that
20401	// PID; the language is "informational". - Specify PID and omit Language: Extracts
20402	// the specified PID. - Omit PID and specify Language: Extracts the specified
20403	// language, whichever PID that happens to be. - Omit PID and omit Language:
20404	// Valid only if source is DVB-Sub that is being passed through; all languages
20405	// will be passed through.
20406	Pid *int64 `locationName:"pid" min:"1" type:"integer"`
20407}
20408
20409// String returns the string representation
20410func (s Scte27SourceSettings) String() string {
20411	return awsutil.Prettify(s)
20412}
20413
20414// GoString returns the string representation
20415func (s Scte27SourceSettings) GoString() string {
20416	return s.String()
20417}
20418
20419// Validate inspects the fields of the type to determine if they are valid.
20420func (s *Scte27SourceSettings) Validate() error {
20421	invalidParams := request.ErrInvalidParams{Context: "Scte27SourceSettings"}
20422	if s.Pid != nil && *s.Pid < 1 {
20423		invalidParams.Add(request.NewErrParamMinValue("Pid", 1))
20424	}
20425
20426	if invalidParams.Len() > 0 {
20427		return invalidParams
20428	}
20429	return nil
20430}
20431
20432// SetPid sets the Pid field's value.
20433func (s *Scte27SourceSettings) SetPid(v int64) *Scte27SourceSettings {
20434	s.Pid = &v
20435	return s
20436}
20437
20438// Corresponds to SCTE-35 delivery_not_restricted_flag parameter. To declare
20439// delivery restrictions, include this element and its four "restriction" flags.
20440// To declare that there are no restrictions, omit this element.
20441type Scte35DeliveryRestrictions struct {
20442	_ struct{} `type:"structure"`
20443
20444	// Corresponds to SCTE-35 archive_allowed_flag.
20445	//
20446	// ArchiveAllowedFlag is a required field
20447	ArchiveAllowedFlag *string `locationName:"archiveAllowedFlag" type:"string" required:"true" enum:"Scte35ArchiveAllowedFlag"`
20448
20449	// Corresponds to SCTE-35 device_restrictions parameter.
20450	//
20451	// DeviceRestrictions is a required field
20452	DeviceRestrictions *string `locationName:"deviceRestrictions" type:"string" required:"true" enum:"Scte35DeviceRestrictions"`
20453
20454	// Corresponds to SCTE-35 no_regional_blackout_flag parameter.
20455	//
20456	// NoRegionalBlackoutFlag is a required field
20457	NoRegionalBlackoutFlag *string `locationName:"noRegionalBlackoutFlag" type:"string" required:"true" enum:"Scte35NoRegionalBlackoutFlag"`
20458
20459	// Corresponds to SCTE-35 web_delivery_allowed_flag parameter.
20460	//
20461	// WebDeliveryAllowedFlag is a required field
20462	WebDeliveryAllowedFlag *string `locationName:"webDeliveryAllowedFlag" type:"string" required:"true" enum:"Scte35WebDeliveryAllowedFlag"`
20463}
20464
20465// String returns the string representation
20466func (s Scte35DeliveryRestrictions) String() string {
20467	return awsutil.Prettify(s)
20468}
20469
20470// GoString returns the string representation
20471func (s Scte35DeliveryRestrictions) GoString() string {
20472	return s.String()
20473}
20474
20475// Validate inspects the fields of the type to determine if they are valid.
20476func (s *Scte35DeliveryRestrictions) Validate() error {
20477	invalidParams := request.ErrInvalidParams{Context: "Scte35DeliveryRestrictions"}
20478	if s.ArchiveAllowedFlag == nil {
20479		invalidParams.Add(request.NewErrParamRequired("ArchiveAllowedFlag"))
20480	}
20481	if s.DeviceRestrictions == nil {
20482		invalidParams.Add(request.NewErrParamRequired("DeviceRestrictions"))
20483	}
20484	if s.NoRegionalBlackoutFlag == nil {
20485		invalidParams.Add(request.NewErrParamRequired("NoRegionalBlackoutFlag"))
20486	}
20487	if s.WebDeliveryAllowedFlag == nil {
20488		invalidParams.Add(request.NewErrParamRequired("WebDeliveryAllowedFlag"))
20489	}
20490
20491	if invalidParams.Len() > 0 {
20492		return invalidParams
20493	}
20494	return nil
20495}
20496
20497// SetArchiveAllowedFlag sets the ArchiveAllowedFlag field's value.
20498func (s *Scte35DeliveryRestrictions) SetArchiveAllowedFlag(v string) *Scte35DeliveryRestrictions {
20499	s.ArchiveAllowedFlag = &v
20500	return s
20501}
20502
20503// SetDeviceRestrictions sets the DeviceRestrictions field's value.
20504func (s *Scte35DeliveryRestrictions) SetDeviceRestrictions(v string) *Scte35DeliveryRestrictions {
20505	s.DeviceRestrictions = &v
20506	return s
20507}
20508
20509// SetNoRegionalBlackoutFlag sets the NoRegionalBlackoutFlag field's value.
20510func (s *Scte35DeliveryRestrictions) SetNoRegionalBlackoutFlag(v string) *Scte35DeliveryRestrictions {
20511	s.NoRegionalBlackoutFlag = &v
20512	return s
20513}
20514
20515// SetWebDeliveryAllowedFlag sets the WebDeliveryAllowedFlag field's value.
20516func (s *Scte35DeliveryRestrictions) SetWebDeliveryAllowedFlag(v string) *Scte35DeliveryRestrictions {
20517	s.WebDeliveryAllowedFlag = &v
20518	return s
20519}
20520
20521// Holds one set of SCTE-35 Descriptor Settings.
20522type Scte35Descriptor struct {
20523	_ struct{} `type:"structure"`
20524
20525	// SCTE-35 Descriptor Settings.
20526	//
20527	// Scte35DescriptorSettings is a required field
20528	Scte35DescriptorSettings *Scte35DescriptorSettings `locationName:"scte35DescriptorSettings" type:"structure" required:"true"`
20529}
20530
20531// String returns the string representation
20532func (s Scte35Descriptor) String() string {
20533	return awsutil.Prettify(s)
20534}
20535
20536// GoString returns the string representation
20537func (s Scte35Descriptor) GoString() string {
20538	return s.String()
20539}
20540
20541// Validate inspects the fields of the type to determine if they are valid.
20542func (s *Scte35Descriptor) Validate() error {
20543	invalidParams := request.ErrInvalidParams{Context: "Scte35Descriptor"}
20544	if s.Scte35DescriptorSettings == nil {
20545		invalidParams.Add(request.NewErrParamRequired("Scte35DescriptorSettings"))
20546	}
20547	if s.Scte35DescriptorSettings != nil {
20548		if err := s.Scte35DescriptorSettings.Validate(); err != nil {
20549			invalidParams.AddNested("Scte35DescriptorSettings", err.(request.ErrInvalidParams))
20550		}
20551	}
20552
20553	if invalidParams.Len() > 0 {
20554		return invalidParams
20555	}
20556	return nil
20557}
20558
20559// SetScte35DescriptorSettings sets the Scte35DescriptorSettings field's value.
20560func (s *Scte35Descriptor) SetScte35DescriptorSettings(v *Scte35DescriptorSettings) *Scte35Descriptor {
20561	s.Scte35DescriptorSettings = v
20562	return s
20563}
20564
20565// SCTE-35 Descriptor settings.
20566type Scte35DescriptorSettings struct {
20567	_ struct{} `type:"structure"`
20568
20569	// SCTE-35 Segmentation Descriptor.
20570	//
20571	// SegmentationDescriptorScte35DescriptorSettings is a required field
20572	SegmentationDescriptorScte35DescriptorSettings *Scte35SegmentationDescriptor `locationName:"segmentationDescriptorScte35DescriptorSettings" type:"structure" required:"true"`
20573}
20574
20575// String returns the string representation
20576func (s Scte35DescriptorSettings) String() string {
20577	return awsutil.Prettify(s)
20578}
20579
20580// GoString returns the string representation
20581func (s Scte35DescriptorSettings) GoString() string {
20582	return s.String()
20583}
20584
20585// Validate inspects the fields of the type to determine if they are valid.
20586func (s *Scte35DescriptorSettings) Validate() error {
20587	invalidParams := request.ErrInvalidParams{Context: "Scte35DescriptorSettings"}
20588	if s.SegmentationDescriptorScte35DescriptorSettings == nil {
20589		invalidParams.Add(request.NewErrParamRequired("SegmentationDescriptorScte35DescriptorSettings"))
20590	}
20591	if s.SegmentationDescriptorScte35DescriptorSettings != nil {
20592		if err := s.SegmentationDescriptorScte35DescriptorSettings.Validate(); err != nil {
20593			invalidParams.AddNested("SegmentationDescriptorScte35DescriptorSettings", err.(request.ErrInvalidParams))
20594		}
20595	}
20596
20597	if invalidParams.Len() > 0 {
20598		return invalidParams
20599	}
20600	return nil
20601}
20602
20603// SetSegmentationDescriptorScte35DescriptorSettings sets the SegmentationDescriptorScte35DescriptorSettings field's value.
20604func (s *Scte35DescriptorSettings) SetSegmentationDescriptorScte35DescriptorSettings(v *Scte35SegmentationDescriptor) *Scte35DescriptorSettings {
20605	s.SegmentationDescriptorScte35DescriptorSettings = v
20606	return s
20607}
20608
20609// Settings for a SCTE-35 return_to_network message.
20610type Scte35ReturnToNetworkScheduleActionSettings struct {
20611	_ struct{} `type:"structure"`
20612
20613	// The splice_event_id for the SCTE-35 splice_insert, as defined in SCTE-35.
20614	//
20615	// SpliceEventId is a required field
20616	SpliceEventId *int64 `locationName:"spliceEventId" type:"long" required:"true"`
20617}
20618
20619// String returns the string representation
20620func (s Scte35ReturnToNetworkScheduleActionSettings) String() string {
20621	return awsutil.Prettify(s)
20622}
20623
20624// GoString returns the string representation
20625func (s Scte35ReturnToNetworkScheduleActionSettings) GoString() string {
20626	return s.String()
20627}
20628
20629// Validate inspects the fields of the type to determine if they are valid.
20630func (s *Scte35ReturnToNetworkScheduleActionSettings) Validate() error {
20631	invalidParams := request.ErrInvalidParams{Context: "Scte35ReturnToNetworkScheduleActionSettings"}
20632	if s.SpliceEventId == nil {
20633		invalidParams.Add(request.NewErrParamRequired("SpliceEventId"))
20634	}
20635
20636	if invalidParams.Len() > 0 {
20637		return invalidParams
20638	}
20639	return nil
20640}
20641
20642// SetSpliceEventId sets the SpliceEventId field's value.
20643func (s *Scte35ReturnToNetworkScheduleActionSettings) SetSpliceEventId(v int64) *Scte35ReturnToNetworkScheduleActionSettings {
20644	s.SpliceEventId = &v
20645	return s
20646}
20647
20648// Corresponds to SCTE-35 segmentation_descriptor.
20649type Scte35SegmentationDescriptor struct {
20650	_ struct{} `type:"structure"`
20651
20652	// Holds the four SCTE-35 delivery restriction parameters.
20653	DeliveryRestrictions *Scte35DeliveryRestrictions `locationName:"deliveryRestrictions" type:"structure"`
20654
20655	// Corresponds to SCTE-35 segment_num. A value that is valid for the specified
20656	// segmentation_type_id.
20657	SegmentNum *int64 `locationName:"segmentNum" type:"integer"`
20658
20659	// Corresponds to SCTE-35 segmentation_event_cancel_indicator.
20660	//
20661	// SegmentationCancelIndicator is a required field
20662	SegmentationCancelIndicator *string `locationName:"segmentationCancelIndicator" type:"string" required:"true" enum:"Scte35SegmentationCancelIndicator"`
20663
20664	// Corresponds to SCTE-35 segmentation_duration. Optional. The duration for
20665	// the time_signal, in 90 KHz ticks. To convert seconds to ticks, multiple the
20666	// seconds by 90,000. Enter time in 90 KHz clock ticks. If you do not enter
20667	// a duration, the time_signal will continue until you insert a cancellation
20668	// message.
20669	SegmentationDuration *int64 `locationName:"segmentationDuration" type:"long"`
20670
20671	// Corresponds to SCTE-35 segmentation_event_id.
20672	//
20673	// SegmentationEventId is a required field
20674	SegmentationEventId *int64 `locationName:"segmentationEventId" type:"long" required:"true"`
20675
20676	// Corresponds to SCTE-35 segmentation_type_id. One of the segmentation_type_id
20677	// values listed in the SCTE-35 specification. On the console, enter the ID
20678	// in decimal (for example, "52"). In the CLI, API, or an SDK, enter the ID
20679	// in hex (for example, "0x34") or decimal (for example, "52").
20680	SegmentationTypeId *int64 `locationName:"segmentationTypeId" type:"integer"`
20681
20682	// Corresponds to SCTE-35 segmentation_upid. Enter a string containing the hexadecimal
20683	// representation of the characters that make up the SCTE-35 segmentation_upid
20684	// value. Must contain an even number of hex characters. Do not include spaces
20685	// between each hex pair. For example, the ASCII "ADS Information" becomes hex
20686	// "41445320496e666f726d6174696f6e.
20687	SegmentationUpid *string `locationName:"segmentationUpid" type:"string"`
20688
20689	// Corresponds to SCTE-35 segmentation_upid_type. On the console, enter one
20690	// of the types listed in the SCTE-35 specification, converted to a decimal.
20691	// For example, "0x0C" hex from the specification is "12" in decimal. In the
20692	// CLI, API, or an SDK, enter one of the types listed in the SCTE-35 specification,
20693	// in either hex (for example, "0x0C" ) or in decimal (for example, "12").
20694	SegmentationUpidType *int64 `locationName:"segmentationUpidType" type:"integer"`
20695
20696	// Corresponds to SCTE-35 segments_expected. A value that is valid for the specified
20697	// segmentation_type_id.
20698	SegmentsExpected *int64 `locationName:"segmentsExpected" type:"integer"`
20699
20700	// Corresponds to SCTE-35 sub_segment_num. A value that is valid for the specified
20701	// segmentation_type_id.
20702	SubSegmentNum *int64 `locationName:"subSegmentNum" type:"integer"`
20703
20704	// Corresponds to SCTE-35 sub_segments_expected. A value that is valid for the
20705	// specified segmentation_type_id.
20706	SubSegmentsExpected *int64 `locationName:"subSegmentsExpected" type:"integer"`
20707}
20708
20709// String returns the string representation
20710func (s Scte35SegmentationDescriptor) String() string {
20711	return awsutil.Prettify(s)
20712}
20713
20714// GoString returns the string representation
20715func (s Scte35SegmentationDescriptor) GoString() string {
20716	return s.String()
20717}
20718
20719// Validate inspects the fields of the type to determine if they are valid.
20720func (s *Scte35SegmentationDescriptor) Validate() error {
20721	invalidParams := request.ErrInvalidParams{Context: "Scte35SegmentationDescriptor"}
20722	if s.SegmentationCancelIndicator == nil {
20723		invalidParams.Add(request.NewErrParamRequired("SegmentationCancelIndicator"))
20724	}
20725	if s.SegmentationEventId == nil {
20726		invalidParams.Add(request.NewErrParamRequired("SegmentationEventId"))
20727	}
20728	if s.DeliveryRestrictions != nil {
20729		if err := s.DeliveryRestrictions.Validate(); err != nil {
20730			invalidParams.AddNested("DeliveryRestrictions", err.(request.ErrInvalidParams))
20731		}
20732	}
20733
20734	if invalidParams.Len() > 0 {
20735		return invalidParams
20736	}
20737	return nil
20738}
20739
20740// SetDeliveryRestrictions sets the DeliveryRestrictions field's value.
20741func (s *Scte35SegmentationDescriptor) SetDeliveryRestrictions(v *Scte35DeliveryRestrictions) *Scte35SegmentationDescriptor {
20742	s.DeliveryRestrictions = v
20743	return s
20744}
20745
20746// SetSegmentNum sets the SegmentNum field's value.
20747func (s *Scte35SegmentationDescriptor) SetSegmentNum(v int64) *Scte35SegmentationDescriptor {
20748	s.SegmentNum = &v
20749	return s
20750}
20751
20752// SetSegmentationCancelIndicator sets the SegmentationCancelIndicator field's value.
20753func (s *Scte35SegmentationDescriptor) SetSegmentationCancelIndicator(v string) *Scte35SegmentationDescriptor {
20754	s.SegmentationCancelIndicator = &v
20755	return s
20756}
20757
20758// SetSegmentationDuration sets the SegmentationDuration field's value.
20759func (s *Scte35SegmentationDescriptor) SetSegmentationDuration(v int64) *Scte35SegmentationDescriptor {
20760	s.SegmentationDuration = &v
20761	return s
20762}
20763
20764// SetSegmentationEventId sets the SegmentationEventId field's value.
20765func (s *Scte35SegmentationDescriptor) SetSegmentationEventId(v int64) *Scte35SegmentationDescriptor {
20766	s.SegmentationEventId = &v
20767	return s
20768}
20769
20770// SetSegmentationTypeId sets the SegmentationTypeId field's value.
20771func (s *Scte35SegmentationDescriptor) SetSegmentationTypeId(v int64) *Scte35SegmentationDescriptor {
20772	s.SegmentationTypeId = &v
20773	return s
20774}
20775
20776// SetSegmentationUpid sets the SegmentationUpid field's value.
20777func (s *Scte35SegmentationDescriptor) SetSegmentationUpid(v string) *Scte35SegmentationDescriptor {
20778	s.SegmentationUpid = &v
20779	return s
20780}
20781
20782// SetSegmentationUpidType sets the SegmentationUpidType field's value.
20783func (s *Scte35SegmentationDescriptor) SetSegmentationUpidType(v int64) *Scte35SegmentationDescriptor {
20784	s.SegmentationUpidType = &v
20785	return s
20786}
20787
20788// SetSegmentsExpected sets the SegmentsExpected field's value.
20789func (s *Scte35SegmentationDescriptor) SetSegmentsExpected(v int64) *Scte35SegmentationDescriptor {
20790	s.SegmentsExpected = &v
20791	return s
20792}
20793
20794// SetSubSegmentNum sets the SubSegmentNum field's value.
20795func (s *Scte35SegmentationDescriptor) SetSubSegmentNum(v int64) *Scte35SegmentationDescriptor {
20796	s.SubSegmentNum = &v
20797	return s
20798}
20799
20800// SetSubSegmentsExpected sets the SubSegmentsExpected field's value.
20801func (s *Scte35SegmentationDescriptor) SetSubSegmentsExpected(v int64) *Scte35SegmentationDescriptor {
20802	s.SubSegmentsExpected = &v
20803	return s
20804}
20805
20806// Scte35 Splice Insert
20807type Scte35SpliceInsert struct {
20808	_ struct{} `type:"structure"`
20809
20810	// When specified, this offset (in milliseconds) is added to the input Ad Avail
20811	// PTS time. This only applies to embedded SCTE 104/35 messages and does not
20812	// apply to OOB messages.
20813	AdAvailOffset *int64 `locationName:"adAvailOffset" type:"integer"`
20814
20815	// When set to ignore, Segment Descriptors with noRegionalBlackoutFlag set to
20816	// 0 will no longer trigger blackouts or Ad Avail slates
20817	NoRegionalBlackoutFlag *string `locationName:"noRegionalBlackoutFlag" type:"string" enum:"Scte35SpliceInsertNoRegionalBlackoutBehavior"`
20818
20819	// When set to ignore, Segment Descriptors with webDeliveryAllowedFlag set to
20820	// 0 will no longer trigger blackouts or Ad Avail slates
20821	WebDeliveryAllowedFlag *string `locationName:"webDeliveryAllowedFlag" type:"string" enum:"Scte35SpliceInsertWebDeliveryAllowedBehavior"`
20822}
20823
20824// String returns the string representation
20825func (s Scte35SpliceInsert) String() string {
20826	return awsutil.Prettify(s)
20827}
20828
20829// GoString returns the string representation
20830func (s Scte35SpliceInsert) GoString() string {
20831	return s.String()
20832}
20833
20834// Validate inspects the fields of the type to determine if they are valid.
20835func (s *Scte35SpliceInsert) Validate() error {
20836	invalidParams := request.ErrInvalidParams{Context: "Scte35SpliceInsert"}
20837	if s.AdAvailOffset != nil && *s.AdAvailOffset < -1000 {
20838		invalidParams.Add(request.NewErrParamMinValue("AdAvailOffset", -1000))
20839	}
20840
20841	if invalidParams.Len() > 0 {
20842		return invalidParams
20843	}
20844	return nil
20845}
20846
20847// SetAdAvailOffset sets the AdAvailOffset field's value.
20848func (s *Scte35SpliceInsert) SetAdAvailOffset(v int64) *Scte35SpliceInsert {
20849	s.AdAvailOffset = &v
20850	return s
20851}
20852
20853// SetNoRegionalBlackoutFlag sets the NoRegionalBlackoutFlag field's value.
20854func (s *Scte35SpliceInsert) SetNoRegionalBlackoutFlag(v string) *Scte35SpliceInsert {
20855	s.NoRegionalBlackoutFlag = &v
20856	return s
20857}
20858
20859// SetWebDeliveryAllowedFlag sets the WebDeliveryAllowedFlag field's value.
20860func (s *Scte35SpliceInsert) SetWebDeliveryAllowedFlag(v string) *Scte35SpliceInsert {
20861	s.WebDeliveryAllowedFlag = &v
20862	return s
20863}
20864
20865// Settings for a SCTE-35 splice_insert message.
20866type Scte35SpliceInsertScheduleActionSettings struct {
20867	_ struct{} `type:"structure"`
20868
20869	// Optional, the duration for the splice_insert, in 90 KHz ticks. To convert
20870	// seconds to ticks, multiple the seconds by 90,000. If you enter a duration,
20871	// there is an expectation that the downstream system can read the duration
20872	// and cue in at that time. If you do not enter a duration, the splice_insert
20873	// will continue indefinitely and there is an expectation that you will enter
20874	// a return_to_network to end the splice_insert at the appropriate time.
20875	Duration *int64 `locationName:"duration" type:"long"`
20876
20877	// The splice_event_id for the SCTE-35 splice_insert, as defined in SCTE-35.
20878	//
20879	// SpliceEventId is a required field
20880	SpliceEventId *int64 `locationName:"spliceEventId" type:"long" required:"true"`
20881}
20882
20883// String returns the string representation
20884func (s Scte35SpliceInsertScheduleActionSettings) String() string {
20885	return awsutil.Prettify(s)
20886}
20887
20888// GoString returns the string representation
20889func (s Scte35SpliceInsertScheduleActionSettings) GoString() string {
20890	return s.String()
20891}
20892
20893// Validate inspects the fields of the type to determine if they are valid.
20894func (s *Scte35SpliceInsertScheduleActionSettings) Validate() error {
20895	invalidParams := request.ErrInvalidParams{Context: "Scte35SpliceInsertScheduleActionSettings"}
20896	if s.SpliceEventId == nil {
20897		invalidParams.Add(request.NewErrParamRequired("SpliceEventId"))
20898	}
20899
20900	if invalidParams.Len() > 0 {
20901		return invalidParams
20902	}
20903	return nil
20904}
20905
20906// SetDuration sets the Duration field's value.
20907func (s *Scte35SpliceInsertScheduleActionSettings) SetDuration(v int64) *Scte35SpliceInsertScheduleActionSettings {
20908	s.Duration = &v
20909	return s
20910}
20911
20912// SetSpliceEventId sets the SpliceEventId field's value.
20913func (s *Scte35SpliceInsertScheduleActionSettings) SetSpliceEventId(v int64) *Scte35SpliceInsertScheduleActionSettings {
20914	s.SpliceEventId = &v
20915	return s
20916}
20917
20918// Scte35 Time Signal Apos
20919type Scte35TimeSignalApos struct {
20920	_ struct{} `type:"structure"`
20921
20922	// When specified, this offset (in milliseconds) is added to the input Ad Avail
20923	// PTS time. This only applies to embedded SCTE 104/35 messages and does not
20924	// apply to OOB messages.
20925	AdAvailOffset *int64 `locationName:"adAvailOffset" type:"integer"`
20926
20927	// When set to ignore, Segment Descriptors with noRegionalBlackoutFlag set to
20928	// 0 will no longer trigger blackouts or Ad Avail slates
20929	NoRegionalBlackoutFlag *string `locationName:"noRegionalBlackoutFlag" type:"string" enum:"Scte35AposNoRegionalBlackoutBehavior"`
20930
20931	// When set to ignore, Segment Descriptors with webDeliveryAllowedFlag set to
20932	// 0 will no longer trigger blackouts or Ad Avail slates
20933	WebDeliveryAllowedFlag *string `locationName:"webDeliveryAllowedFlag" type:"string" enum:"Scte35AposWebDeliveryAllowedBehavior"`
20934}
20935
20936// String returns the string representation
20937func (s Scte35TimeSignalApos) String() string {
20938	return awsutil.Prettify(s)
20939}
20940
20941// GoString returns the string representation
20942func (s Scte35TimeSignalApos) GoString() string {
20943	return s.String()
20944}
20945
20946// Validate inspects the fields of the type to determine if they are valid.
20947func (s *Scte35TimeSignalApos) Validate() error {
20948	invalidParams := request.ErrInvalidParams{Context: "Scte35TimeSignalApos"}
20949	if s.AdAvailOffset != nil && *s.AdAvailOffset < -1000 {
20950		invalidParams.Add(request.NewErrParamMinValue("AdAvailOffset", -1000))
20951	}
20952
20953	if invalidParams.Len() > 0 {
20954		return invalidParams
20955	}
20956	return nil
20957}
20958
20959// SetAdAvailOffset sets the AdAvailOffset field's value.
20960func (s *Scte35TimeSignalApos) SetAdAvailOffset(v int64) *Scte35TimeSignalApos {
20961	s.AdAvailOffset = &v
20962	return s
20963}
20964
20965// SetNoRegionalBlackoutFlag sets the NoRegionalBlackoutFlag field's value.
20966func (s *Scte35TimeSignalApos) SetNoRegionalBlackoutFlag(v string) *Scte35TimeSignalApos {
20967	s.NoRegionalBlackoutFlag = &v
20968	return s
20969}
20970
20971// SetWebDeliveryAllowedFlag sets the WebDeliveryAllowedFlag field's value.
20972func (s *Scte35TimeSignalApos) SetWebDeliveryAllowedFlag(v string) *Scte35TimeSignalApos {
20973	s.WebDeliveryAllowedFlag = &v
20974	return s
20975}
20976
20977// Settings for a SCTE-35 time_signal.
20978type Scte35TimeSignalScheduleActionSettings struct {
20979	_ struct{} `type:"structure"`
20980
20981	// The list of SCTE-35 descriptors accompanying the SCTE-35 time_signal.
20982	//
20983	// Scte35Descriptors is a required field
20984	Scte35Descriptors []*Scte35Descriptor `locationName:"scte35Descriptors" type:"list" required:"true"`
20985}
20986
20987// String returns the string representation
20988func (s Scte35TimeSignalScheduleActionSettings) String() string {
20989	return awsutil.Prettify(s)
20990}
20991
20992// GoString returns the string representation
20993func (s Scte35TimeSignalScheduleActionSettings) GoString() string {
20994	return s.String()
20995}
20996
20997// Validate inspects the fields of the type to determine if they are valid.
20998func (s *Scte35TimeSignalScheduleActionSettings) Validate() error {
20999	invalidParams := request.ErrInvalidParams{Context: "Scte35TimeSignalScheduleActionSettings"}
21000	if s.Scte35Descriptors == nil {
21001		invalidParams.Add(request.NewErrParamRequired("Scte35Descriptors"))
21002	}
21003	if s.Scte35Descriptors != nil {
21004		for i, v := range s.Scte35Descriptors {
21005			if v == nil {
21006				continue
21007			}
21008			if err := v.Validate(); err != nil {
21009				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Scte35Descriptors", i), err.(request.ErrInvalidParams))
21010			}
21011		}
21012	}
21013
21014	if invalidParams.Len() > 0 {
21015		return invalidParams
21016	}
21017	return nil
21018}
21019
21020// SetScte35Descriptors sets the Scte35Descriptors field's value.
21021func (s *Scte35TimeSignalScheduleActionSettings) SetScte35Descriptors(v []*Scte35Descriptor) *Scte35TimeSignalScheduleActionSettings {
21022	s.Scte35Descriptors = v
21023	return s
21024}
21025
21026// Smpte Tt Destination Settings
21027type SmpteTtDestinationSettings struct {
21028	_ struct{} `type:"structure"`
21029}
21030
21031// String returns the string representation
21032func (s SmpteTtDestinationSettings) String() string {
21033	return awsutil.Prettify(s)
21034}
21035
21036// GoString returns the string representation
21037func (s SmpteTtDestinationSettings) GoString() string {
21038	return s.String()
21039}
21040
21041// Standard Hls Settings
21042type StandardHlsSettings struct {
21043	_ struct{} `type:"structure"`
21044
21045	// List all the audio groups that are used with the video output stream. Input
21046	// all the audio GROUP-IDs that are associated to the video, separate by ','.
21047	AudioRenditionSets *string `locationName:"audioRenditionSets" type:"string"`
21048
21049	// Settings information for the .m3u8 container
21050	//
21051	// M3u8Settings is a required field
21052	M3u8Settings *M3u8Settings `locationName:"m3u8Settings" type:"structure" required:"true"`
21053}
21054
21055// String returns the string representation
21056func (s StandardHlsSettings) String() string {
21057	return awsutil.Prettify(s)
21058}
21059
21060// GoString returns the string representation
21061func (s StandardHlsSettings) GoString() string {
21062	return s.String()
21063}
21064
21065// Validate inspects the fields of the type to determine if they are valid.
21066func (s *StandardHlsSettings) Validate() error {
21067	invalidParams := request.ErrInvalidParams{Context: "StandardHlsSettings"}
21068	if s.M3u8Settings == nil {
21069		invalidParams.Add(request.NewErrParamRequired("M3u8Settings"))
21070	}
21071
21072	if invalidParams.Len() > 0 {
21073		return invalidParams
21074	}
21075	return nil
21076}
21077
21078// SetAudioRenditionSets sets the AudioRenditionSets field's value.
21079func (s *StandardHlsSettings) SetAudioRenditionSets(v string) *StandardHlsSettings {
21080	s.AudioRenditionSets = &v
21081	return s
21082}
21083
21084// SetM3u8Settings sets the M3u8Settings field's value.
21085func (s *StandardHlsSettings) SetM3u8Settings(v *M3u8Settings) *StandardHlsSettings {
21086	s.M3u8Settings = v
21087	return s
21088}
21089
21090type StartChannelInput struct {
21091	_ struct{} `type:"structure"`
21092
21093	// ChannelId is a required field
21094	ChannelId *string `location:"uri" locationName:"channelId" type:"string" required:"true"`
21095}
21096
21097// String returns the string representation
21098func (s StartChannelInput) String() string {
21099	return awsutil.Prettify(s)
21100}
21101
21102// GoString returns the string representation
21103func (s StartChannelInput) GoString() string {
21104	return s.String()
21105}
21106
21107// Validate inspects the fields of the type to determine if they are valid.
21108func (s *StartChannelInput) Validate() error {
21109	invalidParams := request.ErrInvalidParams{Context: "StartChannelInput"}
21110	if s.ChannelId == nil {
21111		invalidParams.Add(request.NewErrParamRequired("ChannelId"))
21112	}
21113	if s.ChannelId != nil && len(*s.ChannelId) < 1 {
21114		invalidParams.Add(request.NewErrParamMinLen("ChannelId", 1))
21115	}
21116
21117	if invalidParams.Len() > 0 {
21118		return invalidParams
21119	}
21120	return nil
21121}
21122
21123// SetChannelId sets the ChannelId field's value.
21124func (s *StartChannelInput) SetChannelId(v string) *StartChannelInput {
21125	s.ChannelId = &v
21126	return s
21127}
21128
21129type StartChannelOutput struct {
21130	_ struct{} `type:"structure"`
21131
21132	Arn *string `locationName:"arn" type:"string"`
21133
21134	// A standard channel has two encoding pipelines and a single pipeline channel
21135	// only has one.
21136	ChannelClass *string `locationName:"channelClass" type:"string" enum:"ChannelClass"`
21137
21138	Destinations []*OutputDestination `locationName:"destinations" type:"list"`
21139
21140	EgressEndpoints []*ChannelEgressEndpoint `locationName:"egressEndpoints" type:"list"`
21141
21142	// Encoder Settings
21143	EncoderSettings *EncoderSettings `locationName:"encoderSettings" type:"structure"`
21144
21145	Id *string `locationName:"id" type:"string"`
21146
21147	InputAttachments []*InputAttachment `locationName:"inputAttachments" type:"list"`
21148
21149	InputSpecification *InputSpecification `locationName:"inputSpecification" type:"structure"`
21150
21151	// The log level the user wants for their channel.
21152	LogLevel *string `locationName:"logLevel" type:"string" enum:"LogLevel"`
21153
21154	Name *string `locationName:"name" type:"string"`
21155
21156	PipelineDetails []*PipelineDetail `locationName:"pipelineDetails" type:"list"`
21157
21158	PipelinesRunningCount *int64 `locationName:"pipelinesRunningCount" type:"integer"`
21159
21160	RoleArn *string `locationName:"roleArn" type:"string"`
21161
21162	State *string `locationName:"state" type:"string" enum:"ChannelState"`
21163
21164	Tags map[string]*string `locationName:"tags" type:"map"`
21165}
21166
21167// String returns the string representation
21168func (s StartChannelOutput) String() string {
21169	return awsutil.Prettify(s)
21170}
21171
21172// GoString returns the string representation
21173func (s StartChannelOutput) GoString() string {
21174	return s.String()
21175}
21176
21177// SetArn sets the Arn field's value.
21178func (s *StartChannelOutput) SetArn(v string) *StartChannelOutput {
21179	s.Arn = &v
21180	return s
21181}
21182
21183// SetChannelClass sets the ChannelClass field's value.
21184func (s *StartChannelOutput) SetChannelClass(v string) *StartChannelOutput {
21185	s.ChannelClass = &v
21186	return s
21187}
21188
21189// SetDestinations sets the Destinations field's value.
21190func (s *StartChannelOutput) SetDestinations(v []*OutputDestination) *StartChannelOutput {
21191	s.Destinations = v
21192	return s
21193}
21194
21195// SetEgressEndpoints sets the EgressEndpoints field's value.
21196func (s *StartChannelOutput) SetEgressEndpoints(v []*ChannelEgressEndpoint) *StartChannelOutput {
21197	s.EgressEndpoints = v
21198	return s
21199}
21200
21201// SetEncoderSettings sets the EncoderSettings field's value.
21202func (s *StartChannelOutput) SetEncoderSettings(v *EncoderSettings) *StartChannelOutput {
21203	s.EncoderSettings = v
21204	return s
21205}
21206
21207// SetId sets the Id field's value.
21208func (s *StartChannelOutput) SetId(v string) *StartChannelOutput {
21209	s.Id = &v
21210	return s
21211}
21212
21213// SetInputAttachments sets the InputAttachments field's value.
21214func (s *StartChannelOutput) SetInputAttachments(v []*InputAttachment) *StartChannelOutput {
21215	s.InputAttachments = v
21216	return s
21217}
21218
21219// SetInputSpecification sets the InputSpecification field's value.
21220func (s *StartChannelOutput) SetInputSpecification(v *InputSpecification) *StartChannelOutput {
21221	s.InputSpecification = v
21222	return s
21223}
21224
21225// SetLogLevel sets the LogLevel field's value.
21226func (s *StartChannelOutput) SetLogLevel(v string) *StartChannelOutput {
21227	s.LogLevel = &v
21228	return s
21229}
21230
21231// SetName sets the Name field's value.
21232func (s *StartChannelOutput) SetName(v string) *StartChannelOutput {
21233	s.Name = &v
21234	return s
21235}
21236
21237// SetPipelineDetails sets the PipelineDetails field's value.
21238func (s *StartChannelOutput) SetPipelineDetails(v []*PipelineDetail) *StartChannelOutput {
21239	s.PipelineDetails = v
21240	return s
21241}
21242
21243// SetPipelinesRunningCount sets the PipelinesRunningCount field's value.
21244func (s *StartChannelOutput) SetPipelinesRunningCount(v int64) *StartChannelOutput {
21245	s.PipelinesRunningCount = &v
21246	return s
21247}
21248
21249// SetRoleArn sets the RoleArn field's value.
21250func (s *StartChannelOutput) SetRoleArn(v string) *StartChannelOutput {
21251	s.RoleArn = &v
21252	return s
21253}
21254
21255// SetState sets the State field's value.
21256func (s *StartChannelOutput) SetState(v string) *StartChannelOutput {
21257	s.State = &v
21258	return s
21259}
21260
21261// SetTags sets the Tags field's value.
21262func (s *StartChannelOutput) SetTags(v map[string]*string) *StartChannelOutput {
21263	s.Tags = v
21264	return s
21265}
21266
21267type StartMultiplexInput struct {
21268	_ struct{} `type:"structure"`
21269
21270	// MultiplexId is a required field
21271	MultiplexId *string `location:"uri" locationName:"multiplexId" type:"string" required:"true"`
21272}
21273
21274// String returns the string representation
21275func (s StartMultiplexInput) String() string {
21276	return awsutil.Prettify(s)
21277}
21278
21279// GoString returns the string representation
21280func (s StartMultiplexInput) GoString() string {
21281	return s.String()
21282}
21283
21284// Validate inspects the fields of the type to determine if they are valid.
21285func (s *StartMultiplexInput) Validate() error {
21286	invalidParams := request.ErrInvalidParams{Context: "StartMultiplexInput"}
21287	if s.MultiplexId == nil {
21288		invalidParams.Add(request.NewErrParamRequired("MultiplexId"))
21289	}
21290	if s.MultiplexId != nil && len(*s.MultiplexId) < 1 {
21291		invalidParams.Add(request.NewErrParamMinLen("MultiplexId", 1))
21292	}
21293
21294	if invalidParams.Len() > 0 {
21295		return invalidParams
21296	}
21297	return nil
21298}
21299
21300// SetMultiplexId sets the MultiplexId field's value.
21301func (s *StartMultiplexInput) SetMultiplexId(v string) *StartMultiplexInput {
21302	s.MultiplexId = &v
21303	return s
21304}
21305
21306type StartMultiplexOutput struct {
21307	_ struct{} `type:"structure"`
21308
21309	Arn *string `locationName:"arn" type:"string"`
21310
21311	AvailabilityZones []*string `locationName:"availabilityZones" type:"list"`
21312
21313	Destinations []*MultiplexOutputDestination `locationName:"destinations" type:"list"`
21314
21315	Id *string `locationName:"id" type:"string"`
21316
21317	// Contains configuration for a Multiplex event
21318	MultiplexSettings *MultiplexSettings `locationName:"multiplexSettings" type:"structure"`
21319
21320	Name *string `locationName:"name" type:"string"`
21321
21322	PipelinesRunningCount *int64 `locationName:"pipelinesRunningCount" type:"integer"`
21323
21324	ProgramCount *int64 `locationName:"programCount" type:"integer"`
21325
21326	// The current state of the multiplex.
21327	State *string `locationName:"state" type:"string" enum:"MultiplexState"`
21328
21329	Tags map[string]*string `locationName:"tags" type:"map"`
21330}
21331
21332// String returns the string representation
21333func (s StartMultiplexOutput) String() string {
21334	return awsutil.Prettify(s)
21335}
21336
21337// GoString returns the string representation
21338func (s StartMultiplexOutput) GoString() string {
21339	return s.String()
21340}
21341
21342// SetArn sets the Arn field's value.
21343func (s *StartMultiplexOutput) SetArn(v string) *StartMultiplexOutput {
21344	s.Arn = &v
21345	return s
21346}
21347
21348// SetAvailabilityZones sets the AvailabilityZones field's value.
21349func (s *StartMultiplexOutput) SetAvailabilityZones(v []*string) *StartMultiplexOutput {
21350	s.AvailabilityZones = v
21351	return s
21352}
21353
21354// SetDestinations sets the Destinations field's value.
21355func (s *StartMultiplexOutput) SetDestinations(v []*MultiplexOutputDestination) *StartMultiplexOutput {
21356	s.Destinations = v
21357	return s
21358}
21359
21360// SetId sets the Id field's value.
21361func (s *StartMultiplexOutput) SetId(v string) *StartMultiplexOutput {
21362	s.Id = &v
21363	return s
21364}
21365
21366// SetMultiplexSettings sets the MultiplexSettings field's value.
21367func (s *StartMultiplexOutput) SetMultiplexSettings(v *MultiplexSettings) *StartMultiplexOutput {
21368	s.MultiplexSettings = v
21369	return s
21370}
21371
21372// SetName sets the Name field's value.
21373func (s *StartMultiplexOutput) SetName(v string) *StartMultiplexOutput {
21374	s.Name = &v
21375	return s
21376}
21377
21378// SetPipelinesRunningCount sets the PipelinesRunningCount field's value.
21379func (s *StartMultiplexOutput) SetPipelinesRunningCount(v int64) *StartMultiplexOutput {
21380	s.PipelinesRunningCount = &v
21381	return s
21382}
21383
21384// SetProgramCount sets the ProgramCount field's value.
21385func (s *StartMultiplexOutput) SetProgramCount(v int64) *StartMultiplexOutput {
21386	s.ProgramCount = &v
21387	return s
21388}
21389
21390// SetState sets the State field's value.
21391func (s *StartMultiplexOutput) SetState(v string) *StartMultiplexOutput {
21392	s.State = &v
21393	return s
21394}
21395
21396// SetTags sets the Tags field's value.
21397func (s *StartMultiplexOutput) SetTags(v map[string]*string) *StartMultiplexOutput {
21398	s.Tags = v
21399	return s
21400}
21401
21402// Settings to identify the start of the clip.
21403type StartTimecode struct {
21404	_ struct{} `type:"structure"`
21405
21406	// The timecode for the frame where you want to start the clip. Optional; if
21407	// not specified, the clip starts at first frame in the file. Enter the timecode
21408	// as HH:MM:SS:FF or HH:MM:SS;FF.
21409	Timecode *string `locationName:"timecode" type:"string"`
21410}
21411
21412// String returns the string representation
21413func (s StartTimecode) String() string {
21414	return awsutil.Prettify(s)
21415}
21416
21417// GoString returns the string representation
21418func (s StartTimecode) GoString() string {
21419	return s.String()
21420}
21421
21422// SetTimecode sets the Timecode field's value.
21423func (s *StartTimecode) SetTimecode(v string) *StartTimecode {
21424	s.Timecode = &v
21425	return s
21426}
21427
21428// Settings for the action to activate a static image.
21429type StaticImageActivateScheduleActionSettings struct {
21430	_ struct{} `type:"structure"`
21431
21432	// The duration in milliseconds for the image to remain on the video. If omitted
21433	// or set to 0 the duration is unlimited and the image will remain until it
21434	// is explicitly deactivated.
21435	Duration *int64 `locationName:"duration" type:"integer"`
21436
21437	// The time in milliseconds for the image to fade in. The fade-in starts at
21438	// the start time of the overlay. Default is 0 (no fade-in).
21439	FadeIn *int64 `locationName:"fadeIn" type:"integer"`
21440
21441	// Applies only if a duration is specified. The time in milliseconds for the
21442	// image to fade out. The fade-out starts when the duration time is hit, so
21443	// it effectively extends the duration. Default is 0 (no fade-out).
21444	FadeOut *int64 `locationName:"fadeOut" type:"integer"`
21445
21446	// The height of the image when inserted into the video, in pixels. The overlay
21447	// will be scaled up or down to the specified height. Leave blank to use the
21448	// native height of the overlay.
21449	Height *int64 `locationName:"height" min:"1" type:"integer"`
21450
21451	// The location and filename of the image file to overlay on the video. The
21452	// file must be a 32-bit BMP, PNG, or TGA file, and must not be larger (in pixels)
21453	// than the input video.
21454	//
21455	// Image is a required field
21456	Image *InputLocation `locationName:"image" type:"structure" required:"true"`
21457
21458	// Placement of the left edge of the overlay relative to the left edge of the
21459	// video frame, in pixels. 0 (the default) is the left edge of the frame. If
21460	// the placement causes the overlay to extend beyond the right edge of the underlying
21461	// video, then the overlay is cropped on the right.
21462	ImageX *int64 `locationName:"imageX" type:"integer"`
21463
21464	// Placement of the top edge of the overlay relative to the top edge of the
21465	// video frame, in pixels. 0 (the default) is the top edge of the frame. If
21466	// the placement causes the overlay to extend beyond the bottom edge of the
21467	// underlying video, then the overlay is cropped on the bottom.
21468	ImageY *int64 `locationName:"imageY" type:"integer"`
21469
21470	// The number of the layer, 0 to 7. There are 8 layers that can be overlaid
21471	// on the video, each layer with a different image. The layers are in Z order,
21472	// which means that overlays with higher values of layer are inserted on top
21473	// of overlays with lower values of layer. Default is 0.
21474	Layer *int64 `locationName:"layer" type:"integer"`
21475
21476	// Opacity of image where 0 is transparent and 100 is fully opaque. Default
21477	// is 100.
21478	Opacity *int64 `locationName:"opacity" type:"integer"`
21479
21480	// The width of the image when inserted into the video, in pixels. The overlay
21481	// will be scaled up or down to the specified width. Leave blank to use the
21482	// native width of the overlay.
21483	Width *int64 `locationName:"width" min:"1" type:"integer"`
21484}
21485
21486// String returns the string representation
21487func (s StaticImageActivateScheduleActionSettings) String() string {
21488	return awsutil.Prettify(s)
21489}
21490
21491// GoString returns the string representation
21492func (s StaticImageActivateScheduleActionSettings) GoString() string {
21493	return s.String()
21494}
21495
21496// Validate inspects the fields of the type to determine if they are valid.
21497func (s *StaticImageActivateScheduleActionSettings) Validate() error {
21498	invalidParams := request.ErrInvalidParams{Context: "StaticImageActivateScheduleActionSettings"}
21499	if s.Height != nil && *s.Height < 1 {
21500		invalidParams.Add(request.NewErrParamMinValue("Height", 1))
21501	}
21502	if s.Image == nil {
21503		invalidParams.Add(request.NewErrParamRequired("Image"))
21504	}
21505	if s.Width != nil && *s.Width < 1 {
21506		invalidParams.Add(request.NewErrParamMinValue("Width", 1))
21507	}
21508	if s.Image != nil {
21509		if err := s.Image.Validate(); err != nil {
21510			invalidParams.AddNested("Image", err.(request.ErrInvalidParams))
21511		}
21512	}
21513
21514	if invalidParams.Len() > 0 {
21515		return invalidParams
21516	}
21517	return nil
21518}
21519
21520// SetDuration sets the Duration field's value.
21521func (s *StaticImageActivateScheduleActionSettings) SetDuration(v int64) *StaticImageActivateScheduleActionSettings {
21522	s.Duration = &v
21523	return s
21524}
21525
21526// SetFadeIn sets the FadeIn field's value.
21527func (s *StaticImageActivateScheduleActionSettings) SetFadeIn(v int64) *StaticImageActivateScheduleActionSettings {
21528	s.FadeIn = &v
21529	return s
21530}
21531
21532// SetFadeOut sets the FadeOut field's value.
21533func (s *StaticImageActivateScheduleActionSettings) SetFadeOut(v int64) *StaticImageActivateScheduleActionSettings {
21534	s.FadeOut = &v
21535	return s
21536}
21537
21538// SetHeight sets the Height field's value.
21539func (s *StaticImageActivateScheduleActionSettings) SetHeight(v int64) *StaticImageActivateScheduleActionSettings {
21540	s.Height = &v
21541	return s
21542}
21543
21544// SetImage sets the Image field's value.
21545func (s *StaticImageActivateScheduleActionSettings) SetImage(v *InputLocation) *StaticImageActivateScheduleActionSettings {
21546	s.Image = v
21547	return s
21548}
21549
21550// SetImageX sets the ImageX field's value.
21551func (s *StaticImageActivateScheduleActionSettings) SetImageX(v int64) *StaticImageActivateScheduleActionSettings {
21552	s.ImageX = &v
21553	return s
21554}
21555
21556// SetImageY sets the ImageY field's value.
21557func (s *StaticImageActivateScheduleActionSettings) SetImageY(v int64) *StaticImageActivateScheduleActionSettings {
21558	s.ImageY = &v
21559	return s
21560}
21561
21562// SetLayer sets the Layer field's value.
21563func (s *StaticImageActivateScheduleActionSettings) SetLayer(v int64) *StaticImageActivateScheduleActionSettings {
21564	s.Layer = &v
21565	return s
21566}
21567
21568// SetOpacity sets the Opacity field's value.
21569func (s *StaticImageActivateScheduleActionSettings) SetOpacity(v int64) *StaticImageActivateScheduleActionSettings {
21570	s.Opacity = &v
21571	return s
21572}
21573
21574// SetWidth sets the Width field's value.
21575func (s *StaticImageActivateScheduleActionSettings) SetWidth(v int64) *StaticImageActivateScheduleActionSettings {
21576	s.Width = &v
21577	return s
21578}
21579
21580// Settings for the action to deactivate the image in a specific layer.
21581type StaticImageDeactivateScheduleActionSettings struct {
21582	_ struct{} `type:"structure"`
21583
21584	// The time in milliseconds for the image to fade out. Default is 0 (no fade-out).
21585	FadeOut *int64 `locationName:"fadeOut" type:"integer"`
21586
21587	// The image overlay layer to deactivate, 0 to 7. Default is 0.
21588	Layer *int64 `locationName:"layer" type:"integer"`
21589}
21590
21591// String returns the string representation
21592func (s StaticImageDeactivateScheduleActionSettings) String() string {
21593	return awsutil.Prettify(s)
21594}
21595
21596// GoString returns the string representation
21597func (s StaticImageDeactivateScheduleActionSettings) GoString() string {
21598	return s.String()
21599}
21600
21601// SetFadeOut sets the FadeOut field's value.
21602func (s *StaticImageDeactivateScheduleActionSettings) SetFadeOut(v int64) *StaticImageDeactivateScheduleActionSettings {
21603	s.FadeOut = &v
21604	return s
21605}
21606
21607// SetLayer sets the Layer field's value.
21608func (s *StaticImageDeactivateScheduleActionSettings) SetLayer(v int64) *StaticImageDeactivateScheduleActionSettings {
21609	s.Layer = &v
21610	return s
21611}
21612
21613// Static Key Settings
21614type StaticKeySettings struct {
21615	_ struct{} `type:"structure"`
21616
21617	// The URL of the license server used for protecting content.
21618	KeyProviderServer *InputLocation `locationName:"keyProviderServer" type:"structure"`
21619
21620	// Static key value as a 32 character hexadecimal string.
21621	//
21622	// StaticKeyValue is a required field
21623	StaticKeyValue *string `locationName:"staticKeyValue" min:"32" type:"string" required:"true"`
21624}
21625
21626// String returns the string representation
21627func (s StaticKeySettings) String() string {
21628	return awsutil.Prettify(s)
21629}
21630
21631// GoString returns the string representation
21632func (s StaticKeySettings) GoString() string {
21633	return s.String()
21634}
21635
21636// Validate inspects the fields of the type to determine if they are valid.
21637func (s *StaticKeySettings) Validate() error {
21638	invalidParams := request.ErrInvalidParams{Context: "StaticKeySettings"}
21639	if s.StaticKeyValue == nil {
21640		invalidParams.Add(request.NewErrParamRequired("StaticKeyValue"))
21641	}
21642	if s.StaticKeyValue != nil && len(*s.StaticKeyValue) < 32 {
21643		invalidParams.Add(request.NewErrParamMinLen("StaticKeyValue", 32))
21644	}
21645	if s.KeyProviderServer != nil {
21646		if err := s.KeyProviderServer.Validate(); err != nil {
21647			invalidParams.AddNested("KeyProviderServer", err.(request.ErrInvalidParams))
21648		}
21649	}
21650
21651	if invalidParams.Len() > 0 {
21652		return invalidParams
21653	}
21654	return nil
21655}
21656
21657// SetKeyProviderServer sets the KeyProviderServer field's value.
21658func (s *StaticKeySettings) SetKeyProviderServer(v *InputLocation) *StaticKeySettings {
21659	s.KeyProviderServer = v
21660	return s
21661}
21662
21663// SetStaticKeyValue sets the StaticKeyValue field's value.
21664func (s *StaticKeySettings) SetStaticKeyValue(v string) *StaticKeySettings {
21665	s.StaticKeyValue = &v
21666	return s
21667}
21668
21669type StopChannelInput struct {
21670	_ struct{} `type:"structure"`
21671
21672	// ChannelId is a required field
21673	ChannelId *string `location:"uri" locationName:"channelId" type:"string" required:"true"`
21674}
21675
21676// String returns the string representation
21677func (s StopChannelInput) String() string {
21678	return awsutil.Prettify(s)
21679}
21680
21681// GoString returns the string representation
21682func (s StopChannelInput) GoString() string {
21683	return s.String()
21684}
21685
21686// Validate inspects the fields of the type to determine if they are valid.
21687func (s *StopChannelInput) Validate() error {
21688	invalidParams := request.ErrInvalidParams{Context: "StopChannelInput"}
21689	if s.ChannelId == nil {
21690		invalidParams.Add(request.NewErrParamRequired("ChannelId"))
21691	}
21692	if s.ChannelId != nil && len(*s.ChannelId) < 1 {
21693		invalidParams.Add(request.NewErrParamMinLen("ChannelId", 1))
21694	}
21695
21696	if invalidParams.Len() > 0 {
21697		return invalidParams
21698	}
21699	return nil
21700}
21701
21702// SetChannelId sets the ChannelId field's value.
21703func (s *StopChannelInput) SetChannelId(v string) *StopChannelInput {
21704	s.ChannelId = &v
21705	return s
21706}
21707
21708type StopChannelOutput struct {
21709	_ struct{} `type:"structure"`
21710
21711	Arn *string `locationName:"arn" type:"string"`
21712
21713	// A standard channel has two encoding pipelines and a single pipeline channel
21714	// only has one.
21715	ChannelClass *string `locationName:"channelClass" type:"string" enum:"ChannelClass"`
21716
21717	Destinations []*OutputDestination `locationName:"destinations" type:"list"`
21718
21719	EgressEndpoints []*ChannelEgressEndpoint `locationName:"egressEndpoints" type:"list"`
21720
21721	// Encoder Settings
21722	EncoderSettings *EncoderSettings `locationName:"encoderSettings" type:"structure"`
21723
21724	Id *string `locationName:"id" type:"string"`
21725
21726	InputAttachments []*InputAttachment `locationName:"inputAttachments" type:"list"`
21727
21728	InputSpecification *InputSpecification `locationName:"inputSpecification" type:"structure"`
21729
21730	// The log level the user wants for their channel.
21731	LogLevel *string `locationName:"logLevel" type:"string" enum:"LogLevel"`
21732
21733	Name *string `locationName:"name" type:"string"`
21734
21735	PipelineDetails []*PipelineDetail `locationName:"pipelineDetails" type:"list"`
21736
21737	PipelinesRunningCount *int64 `locationName:"pipelinesRunningCount" type:"integer"`
21738
21739	RoleArn *string `locationName:"roleArn" type:"string"`
21740
21741	State *string `locationName:"state" type:"string" enum:"ChannelState"`
21742
21743	Tags map[string]*string `locationName:"tags" type:"map"`
21744}
21745
21746// String returns the string representation
21747func (s StopChannelOutput) String() string {
21748	return awsutil.Prettify(s)
21749}
21750
21751// GoString returns the string representation
21752func (s StopChannelOutput) GoString() string {
21753	return s.String()
21754}
21755
21756// SetArn sets the Arn field's value.
21757func (s *StopChannelOutput) SetArn(v string) *StopChannelOutput {
21758	s.Arn = &v
21759	return s
21760}
21761
21762// SetChannelClass sets the ChannelClass field's value.
21763func (s *StopChannelOutput) SetChannelClass(v string) *StopChannelOutput {
21764	s.ChannelClass = &v
21765	return s
21766}
21767
21768// SetDestinations sets the Destinations field's value.
21769func (s *StopChannelOutput) SetDestinations(v []*OutputDestination) *StopChannelOutput {
21770	s.Destinations = v
21771	return s
21772}
21773
21774// SetEgressEndpoints sets the EgressEndpoints field's value.
21775func (s *StopChannelOutput) SetEgressEndpoints(v []*ChannelEgressEndpoint) *StopChannelOutput {
21776	s.EgressEndpoints = v
21777	return s
21778}
21779
21780// SetEncoderSettings sets the EncoderSettings field's value.
21781func (s *StopChannelOutput) SetEncoderSettings(v *EncoderSettings) *StopChannelOutput {
21782	s.EncoderSettings = v
21783	return s
21784}
21785
21786// SetId sets the Id field's value.
21787func (s *StopChannelOutput) SetId(v string) *StopChannelOutput {
21788	s.Id = &v
21789	return s
21790}
21791
21792// SetInputAttachments sets the InputAttachments field's value.
21793func (s *StopChannelOutput) SetInputAttachments(v []*InputAttachment) *StopChannelOutput {
21794	s.InputAttachments = v
21795	return s
21796}
21797
21798// SetInputSpecification sets the InputSpecification field's value.
21799func (s *StopChannelOutput) SetInputSpecification(v *InputSpecification) *StopChannelOutput {
21800	s.InputSpecification = v
21801	return s
21802}
21803
21804// SetLogLevel sets the LogLevel field's value.
21805func (s *StopChannelOutput) SetLogLevel(v string) *StopChannelOutput {
21806	s.LogLevel = &v
21807	return s
21808}
21809
21810// SetName sets the Name field's value.
21811func (s *StopChannelOutput) SetName(v string) *StopChannelOutput {
21812	s.Name = &v
21813	return s
21814}
21815
21816// SetPipelineDetails sets the PipelineDetails field's value.
21817func (s *StopChannelOutput) SetPipelineDetails(v []*PipelineDetail) *StopChannelOutput {
21818	s.PipelineDetails = v
21819	return s
21820}
21821
21822// SetPipelinesRunningCount sets the PipelinesRunningCount field's value.
21823func (s *StopChannelOutput) SetPipelinesRunningCount(v int64) *StopChannelOutput {
21824	s.PipelinesRunningCount = &v
21825	return s
21826}
21827
21828// SetRoleArn sets the RoleArn field's value.
21829func (s *StopChannelOutput) SetRoleArn(v string) *StopChannelOutput {
21830	s.RoleArn = &v
21831	return s
21832}
21833
21834// SetState sets the State field's value.
21835func (s *StopChannelOutput) SetState(v string) *StopChannelOutput {
21836	s.State = &v
21837	return s
21838}
21839
21840// SetTags sets the Tags field's value.
21841func (s *StopChannelOutput) SetTags(v map[string]*string) *StopChannelOutput {
21842	s.Tags = v
21843	return s
21844}
21845
21846type StopMultiplexInput struct {
21847	_ struct{} `type:"structure"`
21848
21849	// MultiplexId is a required field
21850	MultiplexId *string `location:"uri" locationName:"multiplexId" type:"string" required:"true"`
21851}
21852
21853// String returns the string representation
21854func (s StopMultiplexInput) String() string {
21855	return awsutil.Prettify(s)
21856}
21857
21858// GoString returns the string representation
21859func (s StopMultiplexInput) GoString() string {
21860	return s.String()
21861}
21862
21863// Validate inspects the fields of the type to determine if they are valid.
21864func (s *StopMultiplexInput) Validate() error {
21865	invalidParams := request.ErrInvalidParams{Context: "StopMultiplexInput"}
21866	if s.MultiplexId == nil {
21867		invalidParams.Add(request.NewErrParamRequired("MultiplexId"))
21868	}
21869	if s.MultiplexId != nil && len(*s.MultiplexId) < 1 {
21870		invalidParams.Add(request.NewErrParamMinLen("MultiplexId", 1))
21871	}
21872
21873	if invalidParams.Len() > 0 {
21874		return invalidParams
21875	}
21876	return nil
21877}
21878
21879// SetMultiplexId sets the MultiplexId field's value.
21880func (s *StopMultiplexInput) SetMultiplexId(v string) *StopMultiplexInput {
21881	s.MultiplexId = &v
21882	return s
21883}
21884
21885type StopMultiplexOutput struct {
21886	_ struct{} `type:"structure"`
21887
21888	Arn *string `locationName:"arn" type:"string"`
21889
21890	AvailabilityZones []*string `locationName:"availabilityZones" type:"list"`
21891
21892	Destinations []*MultiplexOutputDestination `locationName:"destinations" type:"list"`
21893
21894	Id *string `locationName:"id" type:"string"`
21895
21896	// Contains configuration for a Multiplex event
21897	MultiplexSettings *MultiplexSettings `locationName:"multiplexSettings" type:"structure"`
21898
21899	Name *string `locationName:"name" type:"string"`
21900
21901	PipelinesRunningCount *int64 `locationName:"pipelinesRunningCount" type:"integer"`
21902
21903	ProgramCount *int64 `locationName:"programCount" type:"integer"`
21904
21905	// The current state of the multiplex.
21906	State *string `locationName:"state" type:"string" enum:"MultiplexState"`
21907
21908	Tags map[string]*string `locationName:"tags" type:"map"`
21909}
21910
21911// String returns the string representation
21912func (s StopMultiplexOutput) String() string {
21913	return awsutil.Prettify(s)
21914}
21915
21916// GoString returns the string representation
21917func (s StopMultiplexOutput) GoString() string {
21918	return s.String()
21919}
21920
21921// SetArn sets the Arn field's value.
21922func (s *StopMultiplexOutput) SetArn(v string) *StopMultiplexOutput {
21923	s.Arn = &v
21924	return s
21925}
21926
21927// SetAvailabilityZones sets the AvailabilityZones field's value.
21928func (s *StopMultiplexOutput) SetAvailabilityZones(v []*string) *StopMultiplexOutput {
21929	s.AvailabilityZones = v
21930	return s
21931}
21932
21933// SetDestinations sets the Destinations field's value.
21934func (s *StopMultiplexOutput) SetDestinations(v []*MultiplexOutputDestination) *StopMultiplexOutput {
21935	s.Destinations = v
21936	return s
21937}
21938
21939// SetId sets the Id field's value.
21940func (s *StopMultiplexOutput) SetId(v string) *StopMultiplexOutput {
21941	s.Id = &v
21942	return s
21943}
21944
21945// SetMultiplexSettings sets the MultiplexSettings field's value.
21946func (s *StopMultiplexOutput) SetMultiplexSettings(v *MultiplexSettings) *StopMultiplexOutput {
21947	s.MultiplexSettings = v
21948	return s
21949}
21950
21951// SetName sets the Name field's value.
21952func (s *StopMultiplexOutput) SetName(v string) *StopMultiplexOutput {
21953	s.Name = &v
21954	return s
21955}
21956
21957// SetPipelinesRunningCount sets the PipelinesRunningCount field's value.
21958func (s *StopMultiplexOutput) SetPipelinesRunningCount(v int64) *StopMultiplexOutput {
21959	s.PipelinesRunningCount = &v
21960	return s
21961}
21962
21963// SetProgramCount sets the ProgramCount field's value.
21964func (s *StopMultiplexOutput) SetProgramCount(v int64) *StopMultiplexOutput {
21965	s.ProgramCount = &v
21966	return s
21967}
21968
21969// SetState sets the State field's value.
21970func (s *StopMultiplexOutput) SetState(v string) *StopMultiplexOutput {
21971	s.State = &v
21972	return s
21973}
21974
21975// SetTags sets the Tags field's value.
21976func (s *StopMultiplexOutput) SetTags(v map[string]*string) *StopMultiplexOutput {
21977	s.Tags = v
21978	return s
21979}
21980
21981// Settings to identify the end of the clip.
21982type StopTimecode struct {
21983	_ struct{} `type:"structure"`
21984
21985	// If you specify a StopTimecode in an input (in order to clip the file), you
21986	// can specify if you want the clip to exclude (the default) or include the
21987	// frame specified by the timecode.
21988	LastFrameClippingBehavior *string `locationName:"lastFrameClippingBehavior" type:"string" enum:"LastFrameClippingBehavior"`
21989
21990	// The timecode for the frame where you want to stop the clip. Optional; if
21991	// not specified, the clip continues to the end of the file. Enter the timecode
21992	// as HH:MM:SS:FF or HH:MM:SS;FF.
21993	Timecode *string `locationName:"timecode" type:"string"`
21994}
21995
21996// String returns the string representation
21997func (s StopTimecode) String() string {
21998	return awsutil.Prettify(s)
21999}
22000
22001// GoString returns the string representation
22002func (s StopTimecode) GoString() string {
22003	return s.String()
22004}
22005
22006// SetLastFrameClippingBehavior sets the LastFrameClippingBehavior field's value.
22007func (s *StopTimecode) SetLastFrameClippingBehavior(v string) *StopTimecode {
22008	s.LastFrameClippingBehavior = &v
22009	return s
22010}
22011
22012// SetTimecode sets the Timecode field's value.
22013func (s *StopTimecode) SetTimecode(v string) *StopTimecode {
22014	s.Timecode = &v
22015	return s
22016}
22017
22018// Teletext Destination Settings
22019type TeletextDestinationSettings struct {
22020	_ struct{} `type:"structure"`
22021}
22022
22023// String returns the string representation
22024func (s TeletextDestinationSettings) String() string {
22025	return awsutil.Prettify(s)
22026}
22027
22028// GoString returns the string representation
22029func (s TeletextDestinationSettings) GoString() string {
22030	return s.String()
22031}
22032
22033// Teletext Source Settings
22034type TeletextSourceSettings struct {
22035	_ struct{} `type:"structure"`
22036
22037	// Specifies the teletext page number within the data stream from which to extract
22038	// captions. Range of 0x100 (256) to 0x8FF (2303). Unused for passthrough. Should
22039	// be specified as a hexadecimal string with no "0x" prefix.
22040	PageNumber *string `locationName:"pageNumber" type:"string"`
22041}
22042
22043// String returns the string representation
22044func (s TeletextSourceSettings) String() string {
22045	return awsutil.Prettify(s)
22046}
22047
22048// GoString returns the string representation
22049func (s TeletextSourceSettings) GoString() string {
22050	return s.String()
22051}
22052
22053// SetPageNumber sets the PageNumber field's value.
22054func (s *TeletextSourceSettings) SetPageNumber(v string) *TeletextSourceSettings {
22055	s.PageNumber = &v
22056	return s
22057}
22058
22059// Temporal Filter Settings
22060type TemporalFilterSettings struct {
22061	_ struct{} `type:"structure"`
22062
22063	// If you enable this filter, the results are the following:- If the source
22064	// content is noisy (it contains excessive digital artifacts), the filter cleans
22065	// up the source.- If the source content is already clean, the filter tends
22066	// to decrease the bitrate, especially when the rate control mode is QVBR.
22067	PostFilterSharpening *string `locationName:"postFilterSharpening" type:"string" enum:"TemporalFilterPostFilterSharpening"`
22068
22069	// Choose a filter strength. We recommend a strength of 1 or 2. A higher strength
22070	// might take out good information, resulting in an image that is overly soft.
22071	Strength *string `locationName:"strength" type:"string" enum:"TemporalFilterStrength"`
22072}
22073
22074// String returns the string representation
22075func (s TemporalFilterSettings) String() string {
22076	return awsutil.Prettify(s)
22077}
22078
22079// GoString returns the string representation
22080func (s TemporalFilterSettings) GoString() string {
22081	return s.String()
22082}
22083
22084// SetPostFilterSharpening sets the PostFilterSharpening field's value.
22085func (s *TemporalFilterSettings) SetPostFilterSharpening(v string) *TemporalFilterSettings {
22086	s.PostFilterSharpening = &v
22087	return s
22088}
22089
22090// SetStrength sets the Strength field's value.
22091func (s *TemporalFilterSettings) SetStrength(v string) *TemporalFilterSettings {
22092	s.Strength = &v
22093	return s
22094}
22095
22096// Timecode Config
22097type TimecodeConfig struct {
22098	_ struct{} `type:"structure"`
22099
22100	// Identifies the source for the timecode that will be associated with the events
22101	// outputs.-Embedded (embedded): Initialize the output timecode with timecode
22102	// from the the source. If no embedded timecode is detected in the source, the
22103	// system falls back to using "Start at 0" (zerobased).-System Clock (systemclock):
22104	// Use the UTC time.-Start at 0 (zerobased): The time of the first frame of
22105	// the event will be 00:00:00:00.
22106	//
22107	// Source is a required field
22108	Source *string `locationName:"source" type:"string" required:"true" enum:"TimecodeConfigSource"`
22109
22110	// Threshold in frames beyond which output timecode is resynchronized to the
22111	// input timecode. Discrepancies below this threshold are permitted to avoid
22112	// unnecessary discontinuities in the output timecode. No timecode sync when
22113	// this is not specified.
22114	SyncThreshold *int64 `locationName:"syncThreshold" min:"1" type:"integer"`
22115}
22116
22117// String returns the string representation
22118func (s TimecodeConfig) String() string {
22119	return awsutil.Prettify(s)
22120}
22121
22122// GoString returns the string representation
22123func (s TimecodeConfig) GoString() string {
22124	return s.String()
22125}
22126
22127// Validate inspects the fields of the type to determine if they are valid.
22128func (s *TimecodeConfig) Validate() error {
22129	invalidParams := request.ErrInvalidParams{Context: "TimecodeConfig"}
22130	if s.Source == nil {
22131		invalidParams.Add(request.NewErrParamRequired("Source"))
22132	}
22133	if s.SyncThreshold != nil && *s.SyncThreshold < 1 {
22134		invalidParams.Add(request.NewErrParamMinValue("SyncThreshold", 1))
22135	}
22136
22137	if invalidParams.Len() > 0 {
22138		return invalidParams
22139	}
22140	return nil
22141}
22142
22143// SetSource sets the Source field's value.
22144func (s *TimecodeConfig) SetSource(v string) *TimecodeConfig {
22145	s.Source = &v
22146	return s
22147}
22148
22149// SetSyncThreshold sets the SyncThreshold field's value.
22150func (s *TimecodeConfig) SetSyncThreshold(v int64) *TimecodeConfig {
22151	s.SyncThreshold = &v
22152	return s
22153}
22154
22155type TooManyRequestsException struct {
22156	_            struct{}                  `type:"structure"`
22157	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
22158
22159	Message_ *string `locationName:"message" type:"string"`
22160}
22161
22162// String returns the string representation
22163func (s TooManyRequestsException) String() string {
22164	return awsutil.Prettify(s)
22165}
22166
22167// GoString returns the string representation
22168func (s TooManyRequestsException) GoString() string {
22169	return s.String()
22170}
22171
22172func newErrorTooManyRequestsException(v protocol.ResponseMetadata) error {
22173	return &TooManyRequestsException{
22174		RespMetadata: v,
22175	}
22176}
22177
22178// Code returns the exception type name.
22179func (s *TooManyRequestsException) Code() string {
22180	return "TooManyRequestsException"
22181}
22182
22183// Message returns the exception's message.
22184func (s *TooManyRequestsException) Message() string {
22185	if s.Message_ != nil {
22186		return *s.Message_
22187	}
22188	return ""
22189}
22190
22191// OrigErr always returns nil, satisfies awserr.Error interface.
22192func (s *TooManyRequestsException) OrigErr() error {
22193	return nil
22194}
22195
22196func (s *TooManyRequestsException) Error() string {
22197	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
22198}
22199
22200// Status code returns the HTTP status code for the request's response error.
22201func (s *TooManyRequestsException) StatusCode() int {
22202	return s.RespMetadata.StatusCode
22203}
22204
22205// RequestID returns the service's response RequestID for request.
22206func (s *TooManyRequestsException) RequestID() string {
22207	return s.RespMetadata.RequestID
22208}
22209
22210// Ttml Destination Settings
22211type TtmlDestinationSettings struct {
22212	_ struct{} `type:"structure"`
22213
22214	// When set to passthrough, passes through style and position information from
22215	// a TTML-like input source (TTML, SMPTE-TT, CFF-TT) to the CFF-TT output or
22216	// TTML output.
22217	StyleControl *string `locationName:"styleControl" type:"string" enum:"TtmlDestinationStyleControl"`
22218}
22219
22220// String returns the string representation
22221func (s TtmlDestinationSettings) String() string {
22222	return awsutil.Prettify(s)
22223}
22224
22225// GoString returns the string representation
22226func (s TtmlDestinationSettings) GoString() string {
22227	return s.String()
22228}
22229
22230// SetStyleControl sets the StyleControl field's value.
22231func (s *TtmlDestinationSettings) SetStyleControl(v string) *TtmlDestinationSettings {
22232	s.StyleControl = &v
22233	return s
22234}
22235
22236// Udp Container Settings
22237type UdpContainerSettings struct {
22238	_ struct{} `type:"structure"`
22239
22240	// M2ts Settings
22241	M2tsSettings *M2tsSettings `locationName:"m2tsSettings" type:"structure"`
22242}
22243
22244// String returns the string representation
22245func (s UdpContainerSettings) String() string {
22246	return awsutil.Prettify(s)
22247}
22248
22249// GoString returns the string representation
22250func (s UdpContainerSettings) GoString() string {
22251	return s.String()
22252}
22253
22254// Validate inspects the fields of the type to determine if they are valid.
22255func (s *UdpContainerSettings) Validate() error {
22256	invalidParams := request.ErrInvalidParams{Context: "UdpContainerSettings"}
22257	if s.M2tsSettings != nil {
22258		if err := s.M2tsSettings.Validate(); err != nil {
22259			invalidParams.AddNested("M2tsSettings", err.(request.ErrInvalidParams))
22260		}
22261	}
22262
22263	if invalidParams.Len() > 0 {
22264		return invalidParams
22265	}
22266	return nil
22267}
22268
22269// SetM2tsSettings sets the M2tsSettings field's value.
22270func (s *UdpContainerSettings) SetM2tsSettings(v *M2tsSettings) *UdpContainerSettings {
22271	s.M2tsSettings = v
22272	return s
22273}
22274
22275// Udp Group Settings
22276type UdpGroupSettings struct {
22277	_ struct{} `type:"structure"`
22278
22279	// Specifies behavior of last resort when input video is lost, and no more backup
22280	// inputs are available. When dropTs is selected the entire transport stream
22281	// will stop being emitted. When dropProgram is selected the program can be
22282	// dropped from the transport stream (and replaced with null packets to meet
22283	// the TS bitrate requirement). Or, when emitProgram is chosen the transport
22284	// stream will continue to be produced normally with repeat frames, black frames,
22285	// or slate frames substituted for the absent input video.
22286	InputLossAction *string `locationName:"inputLossAction" type:"string" enum:"InputLossActionForUdpOut"`
22287
22288	// Indicates ID3 frame that has the timecode.
22289	TimedMetadataId3Frame *string `locationName:"timedMetadataId3Frame" type:"string" enum:"UdpTimedMetadataId3Frame"`
22290
22291	// Timed Metadata interval in seconds.
22292	TimedMetadataId3Period *int64 `locationName:"timedMetadataId3Period" type:"integer"`
22293}
22294
22295// String returns the string representation
22296func (s UdpGroupSettings) String() string {
22297	return awsutil.Prettify(s)
22298}
22299
22300// GoString returns the string representation
22301func (s UdpGroupSettings) GoString() string {
22302	return s.String()
22303}
22304
22305// SetInputLossAction sets the InputLossAction field's value.
22306func (s *UdpGroupSettings) SetInputLossAction(v string) *UdpGroupSettings {
22307	s.InputLossAction = &v
22308	return s
22309}
22310
22311// SetTimedMetadataId3Frame sets the TimedMetadataId3Frame field's value.
22312func (s *UdpGroupSettings) SetTimedMetadataId3Frame(v string) *UdpGroupSettings {
22313	s.TimedMetadataId3Frame = &v
22314	return s
22315}
22316
22317// SetTimedMetadataId3Period sets the TimedMetadataId3Period field's value.
22318func (s *UdpGroupSettings) SetTimedMetadataId3Period(v int64) *UdpGroupSettings {
22319	s.TimedMetadataId3Period = &v
22320	return s
22321}
22322
22323// Udp Output Settings
22324type UdpOutputSettings struct {
22325	_ struct{} `type:"structure"`
22326
22327	// UDP output buffering in milliseconds. Larger values increase latency through
22328	// the transcoder but simultaneously assist the transcoder in maintaining a
22329	// constant, low-jitter UDP/RTP output while accommodating clock recovery, input
22330	// switching, input disruptions, picture reordering, etc.
22331	BufferMsec *int64 `locationName:"bufferMsec" type:"integer"`
22332
22333	// Udp Container Settings
22334	//
22335	// ContainerSettings is a required field
22336	ContainerSettings *UdpContainerSettings `locationName:"containerSettings" type:"structure" required:"true"`
22337
22338	// Destination address and port number for RTP or UDP packets. Can be unicast
22339	// or multicast RTP or UDP (eg. rtp://239.10.10.10:5001 or udp://10.100.100.100:5002).
22340	//
22341	// Destination is a required field
22342	Destination *OutputLocationRef `locationName:"destination" type:"structure" required:"true"`
22343
22344	// Settings for enabling and adjusting Forward Error Correction on UDP outputs.
22345	FecOutputSettings *FecOutputSettings `locationName:"fecOutputSettings" type:"structure"`
22346}
22347
22348// String returns the string representation
22349func (s UdpOutputSettings) String() string {
22350	return awsutil.Prettify(s)
22351}
22352
22353// GoString returns the string representation
22354func (s UdpOutputSettings) GoString() string {
22355	return s.String()
22356}
22357
22358// Validate inspects the fields of the type to determine if they are valid.
22359func (s *UdpOutputSettings) Validate() error {
22360	invalidParams := request.ErrInvalidParams{Context: "UdpOutputSettings"}
22361	if s.ContainerSettings == nil {
22362		invalidParams.Add(request.NewErrParamRequired("ContainerSettings"))
22363	}
22364	if s.Destination == nil {
22365		invalidParams.Add(request.NewErrParamRequired("Destination"))
22366	}
22367	if s.ContainerSettings != nil {
22368		if err := s.ContainerSettings.Validate(); err != nil {
22369			invalidParams.AddNested("ContainerSettings", err.(request.ErrInvalidParams))
22370		}
22371	}
22372	if s.FecOutputSettings != nil {
22373		if err := s.FecOutputSettings.Validate(); err != nil {
22374			invalidParams.AddNested("FecOutputSettings", err.(request.ErrInvalidParams))
22375		}
22376	}
22377
22378	if invalidParams.Len() > 0 {
22379		return invalidParams
22380	}
22381	return nil
22382}
22383
22384// SetBufferMsec sets the BufferMsec field's value.
22385func (s *UdpOutputSettings) SetBufferMsec(v int64) *UdpOutputSettings {
22386	s.BufferMsec = &v
22387	return s
22388}
22389
22390// SetContainerSettings sets the ContainerSettings field's value.
22391func (s *UdpOutputSettings) SetContainerSettings(v *UdpContainerSettings) *UdpOutputSettings {
22392	s.ContainerSettings = v
22393	return s
22394}
22395
22396// SetDestination sets the Destination field's value.
22397func (s *UdpOutputSettings) SetDestination(v *OutputLocationRef) *UdpOutputSettings {
22398	s.Destination = v
22399	return s
22400}
22401
22402// SetFecOutputSettings sets the FecOutputSettings field's value.
22403func (s *UdpOutputSettings) SetFecOutputSettings(v *FecOutputSettings) *UdpOutputSettings {
22404	s.FecOutputSettings = v
22405	return s
22406}
22407
22408type UnprocessableEntityException struct {
22409	_            struct{}                  `type:"structure"`
22410	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
22411
22412	Message_ *string `locationName:"message" type:"string"`
22413
22414	ValidationErrors []*ValidationError `locationName:"validationErrors" type:"list"`
22415}
22416
22417// String returns the string representation
22418func (s UnprocessableEntityException) String() string {
22419	return awsutil.Prettify(s)
22420}
22421
22422// GoString returns the string representation
22423func (s UnprocessableEntityException) GoString() string {
22424	return s.String()
22425}
22426
22427func newErrorUnprocessableEntityException(v protocol.ResponseMetadata) error {
22428	return &UnprocessableEntityException{
22429		RespMetadata: v,
22430	}
22431}
22432
22433// Code returns the exception type name.
22434func (s *UnprocessableEntityException) Code() string {
22435	return "UnprocessableEntityException"
22436}
22437
22438// Message returns the exception's message.
22439func (s *UnprocessableEntityException) Message() string {
22440	if s.Message_ != nil {
22441		return *s.Message_
22442	}
22443	return ""
22444}
22445
22446// OrigErr always returns nil, satisfies awserr.Error interface.
22447func (s *UnprocessableEntityException) OrigErr() error {
22448	return nil
22449}
22450
22451func (s *UnprocessableEntityException) Error() string {
22452	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
22453}
22454
22455// Status code returns the HTTP status code for the request's response error.
22456func (s *UnprocessableEntityException) StatusCode() int {
22457	return s.RespMetadata.StatusCode
22458}
22459
22460// RequestID returns the service's response RequestID for request.
22461func (s *UnprocessableEntityException) RequestID() string {
22462	return s.RespMetadata.RequestID
22463}
22464
22465type UpdateChannelClassInput struct {
22466	_ struct{} `type:"structure"`
22467
22468	// A standard channel has two encoding pipelines and a single pipeline channel
22469	// only has one.
22470	//
22471	// ChannelClass is a required field
22472	ChannelClass *string `locationName:"channelClass" type:"string" required:"true" enum:"ChannelClass"`
22473
22474	// ChannelId is a required field
22475	ChannelId *string `location:"uri" locationName:"channelId" type:"string" required:"true"`
22476
22477	Destinations []*OutputDestination `locationName:"destinations" type:"list"`
22478}
22479
22480// String returns the string representation
22481func (s UpdateChannelClassInput) String() string {
22482	return awsutil.Prettify(s)
22483}
22484
22485// GoString returns the string representation
22486func (s UpdateChannelClassInput) GoString() string {
22487	return s.String()
22488}
22489
22490// Validate inspects the fields of the type to determine if they are valid.
22491func (s *UpdateChannelClassInput) Validate() error {
22492	invalidParams := request.ErrInvalidParams{Context: "UpdateChannelClassInput"}
22493	if s.ChannelClass == nil {
22494		invalidParams.Add(request.NewErrParamRequired("ChannelClass"))
22495	}
22496	if s.ChannelId == nil {
22497		invalidParams.Add(request.NewErrParamRequired("ChannelId"))
22498	}
22499	if s.ChannelId != nil && len(*s.ChannelId) < 1 {
22500		invalidParams.Add(request.NewErrParamMinLen("ChannelId", 1))
22501	}
22502	if s.Destinations != nil {
22503		for i, v := range s.Destinations {
22504			if v == nil {
22505				continue
22506			}
22507			if err := v.Validate(); err != nil {
22508				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Destinations", i), err.(request.ErrInvalidParams))
22509			}
22510		}
22511	}
22512
22513	if invalidParams.Len() > 0 {
22514		return invalidParams
22515	}
22516	return nil
22517}
22518
22519// SetChannelClass sets the ChannelClass field's value.
22520func (s *UpdateChannelClassInput) SetChannelClass(v string) *UpdateChannelClassInput {
22521	s.ChannelClass = &v
22522	return s
22523}
22524
22525// SetChannelId sets the ChannelId field's value.
22526func (s *UpdateChannelClassInput) SetChannelId(v string) *UpdateChannelClassInput {
22527	s.ChannelId = &v
22528	return s
22529}
22530
22531// SetDestinations sets the Destinations field's value.
22532func (s *UpdateChannelClassInput) SetDestinations(v []*OutputDestination) *UpdateChannelClassInput {
22533	s.Destinations = v
22534	return s
22535}
22536
22537type UpdateChannelClassOutput struct {
22538	_ struct{} `type:"structure"`
22539
22540	Channel *Channel `locationName:"channel" type:"structure"`
22541}
22542
22543// String returns the string representation
22544func (s UpdateChannelClassOutput) String() string {
22545	return awsutil.Prettify(s)
22546}
22547
22548// GoString returns the string representation
22549func (s UpdateChannelClassOutput) GoString() string {
22550	return s.String()
22551}
22552
22553// SetChannel sets the Channel field's value.
22554func (s *UpdateChannelClassOutput) SetChannel(v *Channel) *UpdateChannelClassOutput {
22555	s.Channel = v
22556	return s
22557}
22558
22559type UpdateChannelInput struct {
22560	_ struct{} `type:"structure"`
22561
22562	// ChannelId is a required field
22563	ChannelId *string `location:"uri" locationName:"channelId" type:"string" required:"true"`
22564
22565	Destinations []*OutputDestination `locationName:"destinations" type:"list"`
22566
22567	// Encoder Settings
22568	EncoderSettings *EncoderSettings `locationName:"encoderSettings" type:"structure"`
22569
22570	InputAttachments []*InputAttachment `locationName:"inputAttachments" type:"list"`
22571
22572	InputSpecification *InputSpecification `locationName:"inputSpecification" type:"structure"`
22573
22574	// The log level the user wants for their channel.
22575	LogLevel *string `locationName:"logLevel" type:"string" enum:"LogLevel"`
22576
22577	Name *string `locationName:"name" type:"string"`
22578
22579	RoleArn *string `locationName:"roleArn" type:"string"`
22580}
22581
22582// String returns the string representation
22583func (s UpdateChannelInput) String() string {
22584	return awsutil.Prettify(s)
22585}
22586
22587// GoString returns the string representation
22588func (s UpdateChannelInput) GoString() string {
22589	return s.String()
22590}
22591
22592// Validate inspects the fields of the type to determine if they are valid.
22593func (s *UpdateChannelInput) Validate() error {
22594	invalidParams := request.ErrInvalidParams{Context: "UpdateChannelInput"}
22595	if s.ChannelId == nil {
22596		invalidParams.Add(request.NewErrParamRequired("ChannelId"))
22597	}
22598	if s.ChannelId != nil && len(*s.ChannelId) < 1 {
22599		invalidParams.Add(request.NewErrParamMinLen("ChannelId", 1))
22600	}
22601	if s.Destinations != nil {
22602		for i, v := range s.Destinations {
22603			if v == nil {
22604				continue
22605			}
22606			if err := v.Validate(); err != nil {
22607				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Destinations", i), err.(request.ErrInvalidParams))
22608			}
22609		}
22610	}
22611	if s.EncoderSettings != nil {
22612		if err := s.EncoderSettings.Validate(); err != nil {
22613			invalidParams.AddNested("EncoderSettings", err.(request.ErrInvalidParams))
22614		}
22615	}
22616	if s.InputAttachments != nil {
22617		for i, v := range s.InputAttachments {
22618			if v == nil {
22619				continue
22620			}
22621			if err := v.Validate(); err != nil {
22622				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputAttachments", i), err.(request.ErrInvalidParams))
22623			}
22624		}
22625	}
22626
22627	if invalidParams.Len() > 0 {
22628		return invalidParams
22629	}
22630	return nil
22631}
22632
22633// SetChannelId sets the ChannelId field's value.
22634func (s *UpdateChannelInput) SetChannelId(v string) *UpdateChannelInput {
22635	s.ChannelId = &v
22636	return s
22637}
22638
22639// SetDestinations sets the Destinations field's value.
22640func (s *UpdateChannelInput) SetDestinations(v []*OutputDestination) *UpdateChannelInput {
22641	s.Destinations = v
22642	return s
22643}
22644
22645// SetEncoderSettings sets the EncoderSettings field's value.
22646func (s *UpdateChannelInput) SetEncoderSettings(v *EncoderSettings) *UpdateChannelInput {
22647	s.EncoderSettings = v
22648	return s
22649}
22650
22651// SetInputAttachments sets the InputAttachments field's value.
22652func (s *UpdateChannelInput) SetInputAttachments(v []*InputAttachment) *UpdateChannelInput {
22653	s.InputAttachments = v
22654	return s
22655}
22656
22657// SetInputSpecification sets the InputSpecification field's value.
22658func (s *UpdateChannelInput) SetInputSpecification(v *InputSpecification) *UpdateChannelInput {
22659	s.InputSpecification = v
22660	return s
22661}
22662
22663// SetLogLevel sets the LogLevel field's value.
22664func (s *UpdateChannelInput) SetLogLevel(v string) *UpdateChannelInput {
22665	s.LogLevel = &v
22666	return s
22667}
22668
22669// SetName sets the Name field's value.
22670func (s *UpdateChannelInput) SetName(v string) *UpdateChannelInput {
22671	s.Name = &v
22672	return s
22673}
22674
22675// SetRoleArn sets the RoleArn field's value.
22676func (s *UpdateChannelInput) SetRoleArn(v string) *UpdateChannelInput {
22677	s.RoleArn = &v
22678	return s
22679}
22680
22681type UpdateChannelOutput struct {
22682	_ struct{} `type:"structure"`
22683
22684	Channel *Channel `locationName:"channel" type:"structure"`
22685}
22686
22687// String returns the string representation
22688func (s UpdateChannelOutput) String() string {
22689	return awsutil.Prettify(s)
22690}
22691
22692// GoString returns the string representation
22693func (s UpdateChannelOutput) GoString() string {
22694	return s.String()
22695}
22696
22697// SetChannel sets the Channel field's value.
22698func (s *UpdateChannelOutput) SetChannel(v *Channel) *UpdateChannelOutput {
22699	s.Channel = v
22700	return s
22701}
22702
22703type UpdateInputDeviceInput struct {
22704	_ struct{} `type:"structure"`
22705
22706	// Configurable settings for the input device.
22707	HdDeviceSettings *InputDeviceConfigurableSettings `locationName:"hdDeviceSettings" type:"structure"`
22708
22709	// InputDeviceId is a required field
22710	InputDeviceId *string `location:"uri" locationName:"inputDeviceId" type:"string" required:"true"`
22711
22712	Name *string `locationName:"name" type:"string"`
22713}
22714
22715// String returns the string representation
22716func (s UpdateInputDeviceInput) String() string {
22717	return awsutil.Prettify(s)
22718}
22719
22720// GoString returns the string representation
22721func (s UpdateInputDeviceInput) GoString() string {
22722	return s.String()
22723}
22724
22725// Validate inspects the fields of the type to determine if they are valid.
22726func (s *UpdateInputDeviceInput) Validate() error {
22727	invalidParams := request.ErrInvalidParams{Context: "UpdateInputDeviceInput"}
22728	if s.InputDeviceId == nil {
22729		invalidParams.Add(request.NewErrParamRequired("InputDeviceId"))
22730	}
22731	if s.InputDeviceId != nil && len(*s.InputDeviceId) < 1 {
22732		invalidParams.Add(request.NewErrParamMinLen("InputDeviceId", 1))
22733	}
22734
22735	if invalidParams.Len() > 0 {
22736		return invalidParams
22737	}
22738	return nil
22739}
22740
22741// SetHdDeviceSettings sets the HdDeviceSettings field's value.
22742func (s *UpdateInputDeviceInput) SetHdDeviceSettings(v *InputDeviceConfigurableSettings) *UpdateInputDeviceInput {
22743	s.HdDeviceSettings = v
22744	return s
22745}
22746
22747// SetInputDeviceId sets the InputDeviceId field's value.
22748func (s *UpdateInputDeviceInput) SetInputDeviceId(v string) *UpdateInputDeviceInput {
22749	s.InputDeviceId = &v
22750	return s
22751}
22752
22753// SetName sets the Name field's value.
22754func (s *UpdateInputDeviceInput) SetName(v string) *UpdateInputDeviceInput {
22755	s.Name = &v
22756	return s
22757}
22758
22759type UpdateInputDeviceOutput struct {
22760	_ struct{} `type:"structure"`
22761
22762	Arn *string `locationName:"arn" type:"string"`
22763
22764	// The state of the connection between the input device and AWS.
22765	ConnectionState *string `locationName:"connectionState" type:"string" enum:"InputDeviceConnectionState"`
22766
22767	// The status of the action to synchronize the device configuration. If you
22768	// change the configuration of the input device (for example, the maximum bitrate),
22769	// MediaLive sends the new data to the device. The device might not update itself
22770	// immediately. SYNCED means the device has updated its configuration. SYNCING
22771	// means that it has not updated its configuration.
22772	DeviceSettingsSyncState *string `locationName:"deviceSettingsSyncState" type:"string" enum:"DeviceSettingsSyncState"`
22773
22774	// Settings that describe the active source from the input device, and the video
22775	// characteristics of that source.
22776	HdDeviceSettings *InputDeviceHdSettings `locationName:"hdDeviceSettings" type:"structure"`
22777
22778	Id *string `locationName:"id" type:"string"`
22779
22780	MacAddress *string `locationName:"macAddress" type:"string"`
22781
22782	Name *string `locationName:"name" type:"string"`
22783
22784	// The network settings for the input device.
22785	NetworkSettings *InputDeviceNetworkSettings `locationName:"networkSettings" type:"structure"`
22786
22787	SerialNumber *string `locationName:"serialNumber" type:"string"`
22788
22789	// The type of the input device. For an AWS Elemental Link device that outputs
22790	// resolutions up to 1080, choose "HD".
22791	Type *string `locationName:"type" type:"string" enum:"InputDeviceType"`
22792}
22793
22794// String returns the string representation
22795func (s UpdateInputDeviceOutput) String() string {
22796	return awsutil.Prettify(s)
22797}
22798
22799// GoString returns the string representation
22800func (s UpdateInputDeviceOutput) GoString() string {
22801	return s.String()
22802}
22803
22804// SetArn sets the Arn field's value.
22805func (s *UpdateInputDeviceOutput) SetArn(v string) *UpdateInputDeviceOutput {
22806	s.Arn = &v
22807	return s
22808}
22809
22810// SetConnectionState sets the ConnectionState field's value.
22811func (s *UpdateInputDeviceOutput) SetConnectionState(v string) *UpdateInputDeviceOutput {
22812	s.ConnectionState = &v
22813	return s
22814}
22815
22816// SetDeviceSettingsSyncState sets the DeviceSettingsSyncState field's value.
22817func (s *UpdateInputDeviceOutput) SetDeviceSettingsSyncState(v string) *UpdateInputDeviceOutput {
22818	s.DeviceSettingsSyncState = &v
22819	return s
22820}
22821
22822// SetHdDeviceSettings sets the HdDeviceSettings field's value.
22823func (s *UpdateInputDeviceOutput) SetHdDeviceSettings(v *InputDeviceHdSettings) *UpdateInputDeviceOutput {
22824	s.HdDeviceSettings = v
22825	return s
22826}
22827
22828// SetId sets the Id field's value.
22829func (s *UpdateInputDeviceOutput) SetId(v string) *UpdateInputDeviceOutput {
22830	s.Id = &v
22831	return s
22832}
22833
22834// SetMacAddress sets the MacAddress field's value.
22835func (s *UpdateInputDeviceOutput) SetMacAddress(v string) *UpdateInputDeviceOutput {
22836	s.MacAddress = &v
22837	return s
22838}
22839
22840// SetName sets the Name field's value.
22841func (s *UpdateInputDeviceOutput) SetName(v string) *UpdateInputDeviceOutput {
22842	s.Name = &v
22843	return s
22844}
22845
22846// SetNetworkSettings sets the NetworkSettings field's value.
22847func (s *UpdateInputDeviceOutput) SetNetworkSettings(v *InputDeviceNetworkSettings) *UpdateInputDeviceOutput {
22848	s.NetworkSettings = v
22849	return s
22850}
22851
22852// SetSerialNumber sets the SerialNumber field's value.
22853func (s *UpdateInputDeviceOutput) SetSerialNumber(v string) *UpdateInputDeviceOutput {
22854	s.SerialNumber = &v
22855	return s
22856}
22857
22858// SetType sets the Type field's value.
22859func (s *UpdateInputDeviceOutput) SetType(v string) *UpdateInputDeviceOutput {
22860	s.Type = &v
22861	return s
22862}
22863
22864type UpdateInputInput struct {
22865	_ struct{} `type:"structure"`
22866
22867	Destinations []*InputDestinationRequest `locationName:"destinations" type:"list"`
22868
22869	InputDevices []*InputDeviceRequest `locationName:"inputDevices" type:"list"`
22870
22871	// InputId is a required field
22872	InputId *string `location:"uri" locationName:"inputId" type:"string" required:"true"`
22873
22874	InputSecurityGroups []*string `locationName:"inputSecurityGroups" type:"list"`
22875
22876	MediaConnectFlows []*MediaConnectFlowRequest `locationName:"mediaConnectFlows" type:"list"`
22877
22878	Name *string `locationName:"name" type:"string"`
22879
22880	RoleArn *string `locationName:"roleArn" type:"string"`
22881
22882	Sources []*InputSourceRequest `locationName:"sources" type:"list"`
22883}
22884
22885// String returns the string representation
22886func (s UpdateInputInput) String() string {
22887	return awsutil.Prettify(s)
22888}
22889
22890// GoString returns the string representation
22891func (s UpdateInputInput) GoString() string {
22892	return s.String()
22893}
22894
22895// Validate inspects the fields of the type to determine if they are valid.
22896func (s *UpdateInputInput) Validate() error {
22897	invalidParams := request.ErrInvalidParams{Context: "UpdateInputInput"}
22898	if s.InputId == nil {
22899		invalidParams.Add(request.NewErrParamRequired("InputId"))
22900	}
22901	if s.InputId != nil && len(*s.InputId) < 1 {
22902		invalidParams.Add(request.NewErrParamMinLen("InputId", 1))
22903	}
22904
22905	if invalidParams.Len() > 0 {
22906		return invalidParams
22907	}
22908	return nil
22909}
22910
22911// SetDestinations sets the Destinations field's value.
22912func (s *UpdateInputInput) SetDestinations(v []*InputDestinationRequest) *UpdateInputInput {
22913	s.Destinations = v
22914	return s
22915}
22916
22917// SetInputDevices sets the InputDevices field's value.
22918func (s *UpdateInputInput) SetInputDevices(v []*InputDeviceRequest) *UpdateInputInput {
22919	s.InputDevices = v
22920	return s
22921}
22922
22923// SetInputId sets the InputId field's value.
22924func (s *UpdateInputInput) SetInputId(v string) *UpdateInputInput {
22925	s.InputId = &v
22926	return s
22927}
22928
22929// SetInputSecurityGroups sets the InputSecurityGroups field's value.
22930func (s *UpdateInputInput) SetInputSecurityGroups(v []*string) *UpdateInputInput {
22931	s.InputSecurityGroups = v
22932	return s
22933}
22934
22935// SetMediaConnectFlows sets the MediaConnectFlows field's value.
22936func (s *UpdateInputInput) SetMediaConnectFlows(v []*MediaConnectFlowRequest) *UpdateInputInput {
22937	s.MediaConnectFlows = v
22938	return s
22939}
22940
22941// SetName sets the Name field's value.
22942func (s *UpdateInputInput) SetName(v string) *UpdateInputInput {
22943	s.Name = &v
22944	return s
22945}
22946
22947// SetRoleArn sets the RoleArn field's value.
22948func (s *UpdateInputInput) SetRoleArn(v string) *UpdateInputInput {
22949	s.RoleArn = &v
22950	return s
22951}
22952
22953// SetSources sets the Sources field's value.
22954func (s *UpdateInputInput) SetSources(v []*InputSourceRequest) *UpdateInputInput {
22955	s.Sources = v
22956	return s
22957}
22958
22959type UpdateInputOutput struct {
22960	_ struct{} `type:"structure"`
22961
22962	Input *Input `locationName:"input" type:"structure"`
22963}
22964
22965// String returns the string representation
22966func (s UpdateInputOutput) String() string {
22967	return awsutil.Prettify(s)
22968}
22969
22970// GoString returns the string representation
22971func (s UpdateInputOutput) GoString() string {
22972	return s.String()
22973}
22974
22975// SetInput sets the Input field's value.
22976func (s *UpdateInputOutput) SetInput(v *Input) *UpdateInputOutput {
22977	s.Input = v
22978	return s
22979}
22980
22981type UpdateInputSecurityGroupInput struct {
22982	_ struct{} `type:"structure"`
22983
22984	// InputSecurityGroupId is a required field
22985	InputSecurityGroupId *string `location:"uri" locationName:"inputSecurityGroupId" type:"string" required:"true"`
22986
22987	Tags map[string]*string `locationName:"tags" type:"map"`
22988
22989	WhitelistRules []*InputWhitelistRuleCidr `locationName:"whitelistRules" type:"list"`
22990}
22991
22992// String returns the string representation
22993func (s UpdateInputSecurityGroupInput) String() string {
22994	return awsutil.Prettify(s)
22995}
22996
22997// GoString returns the string representation
22998func (s UpdateInputSecurityGroupInput) GoString() string {
22999	return s.String()
23000}
23001
23002// Validate inspects the fields of the type to determine if they are valid.
23003func (s *UpdateInputSecurityGroupInput) Validate() error {
23004	invalidParams := request.ErrInvalidParams{Context: "UpdateInputSecurityGroupInput"}
23005	if s.InputSecurityGroupId == nil {
23006		invalidParams.Add(request.NewErrParamRequired("InputSecurityGroupId"))
23007	}
23008	if s.InputSecurityGroupId != nil && len(*s.InputSecurityGroupId) < 1 {
23009		invalidParams.Add(request.NewErrParamMinLen("InputSecurityGroupId", 1))
23010	}
23011
23012	if invalidParams.Len() > 0 {
23013		return invalidParams
23014	}
23015	return nil
23016}
23017
23018// SetInputSecurityGroupId sets the InputSecurityGroupId field's value.
23019func (s *UpdateInputSecurityGroupInput) SetInputSecurityGroupId(v string) *UpdateInputSecurityGroupInput {
23020	s.InputSecurityGroupId = &v
23021	return s
23022}
23023
23024// SetTags sets the Tags field's value.
23025func (s *UpdateInputSecurityGroupInput) SetTags(v map[string]*string) *UpdateInputSecurityGroupInput {
23026	s.Tags = v
23027	return s
23028}
23029
23030// SetWhitelistRules sets the WhitelistRules field's value.
23031func (s *UpdateInputSecurityGroupInput) SetWhitelistRules(v []*InputWhitelistRuleCidr) *UpdateInputSecurityGroupInput {
23032	s.WhitelistRules = v
23033	return s
23034}
23035
23036type UpdateInputSecurityGroupOutput struct {
23037	_ struct{} `type:"structure"`
23038
23039	// An Input Security Group
23040	SecurityGroup *InputSecurityGroup `locationName:"securityGroup" type:"structure"`
23041}
23042
23043// String returns the string representation
23044func (s UpdateInputSecurityGroupOutput) String() string {
23045	return awsutil.Prettify(s)
23046}
23047
23048// GoString returns the string representation
23049func (s UpdateInputSecurityGroupOutput) GoString() string {
23050	return s.String()
23051}
23052
23053// SetSecurityGroup sets the SecurityGroup field's value.
23054func (s *UpdateInputSecurityGroupOutput) SetSecurityGroup(v *InputSecurityGroup) *UpdateInputSecurityGroupOutput {
23055	s.SecurityGroup = v
23056	return s
23057}
23058
23059type UpdateMultiplexInput struct {
23060	_ struct{} `type:"structure"`
23061
23062	// MultiplexId is a required field
23063	MultiplexId *string `location:"uri" locationName:"multiplexId" type:"string" required:"true"`
23064
23065	// Contains configuration for a Multiplex event
23066	MultiplexSettings *MultiplexSettings `locationName:"multiplexSettings" type:"structure"`
23067
23068	Name *string `locationName:"name" type:"string"`
23069}
23070
23071// String returns the string representation
23072func (s UpdateMultiplexInput) String() string {
23073	return awsutil.Prettify(s)
23074}
23075
23076// GoString returns the string representation
23077func (s UpdateMultiplexInput) GoString() string {
23078	return s.String()
23079}
23080
23081// Validate inspects the fields of the type to determine if they are valid.
23082func (s *UpdateMultiplexInput) Validate() error {
23083	invalidParams := request.ErrInvalidParams{Context: "UpdateMultiplexInput"}
23084	if s.MultiplexId == nil {
23085		invalidParams.Add(request.NewErrParamRequired("MultiplexId"))
23086	}
23087	if s.MultiplexId != nil && len(*s.MultiplexId) < 1 {
23088		invalidParams.Add(request.NewErrParamMinLen("MultiplexId", 1))
23089	}
23090	if s.MultiplexSettings != nil {
23091		if err := s.MultiplexSettings.Validate(); err != nil {
23092			invalidParams.AddNested("MultiplexSettings", err.(request.ErrInvalidParams))
23093		}
23094	}
23095
23096	if invalidParams.Len() > 0 {
23097		return invalidParams
23098	}
23099	return nil
23100}
23101
23102// SetMultiplexId sets the MultiplexId field's value.
23103func (s *UpdateMultiplexInput) SetMultiplexId(v string) *UpdateMultiplexInput {
23104	s.MultiplexId = &v
23105	return s
23106}
23107
23108// SetMultiplexSettings sets the MultiplexSettings field's value.
23109func (s *UpdateMultiplexInput) SetMultiplexSettings(v *MultiplexSettings) *UpdateMultiplexInput {
23110	s.MultiplexSettings = v
23111	return s
23112}
23113
23114// SetName sets the Name field's value.
23115func (s *UpdateMultiplexInput) SetName(v string) *UpdateMultiplexInput {
23116	s.Name = &v
23117	return s
23118}
23119
23120type UpdateMultiplexOutput struct {
23121	_ struct{} `type:"structure"`
23122
23123	// The multiplex object.
23124	Multiplex *Multiplex `locationName:"multiplex" type:"structure"`
23125}
23126
23127// String returns the string representation
23128func (s UpdateMultiplexOutput) String() string {
23129	return awsutil.Prettify(s)
23130}
23131
23132// GoString returns the string representation
23133func (s UpdateMultiplexOutput) GoString() string {
23134	return s.String()
23135}
23136
23137// SetMultiplex sets the Multiplex field's value.
23138func (s *UpdateMultiplexOutput) SetMultiplex(v *Multiplex) *UpdateMultiplexOutput {
23139	s.Multiplex = v
23140	return s
23141}
23142
23143type UpdateMultiplexProgramInput struct {
23144	_ struct{} `type:"structure"`
23145
23146	// MultiplexId is a required field
23147	MultiplexId *string `location:"uri" locationName:"multiplexId" type:"string" required:"true"`
23148
23149	// Multiplex Program settings configuration.
23150	MultiplexProgramSettings *MultiplexProgramSettings `locationName:"multiplexProgramSettings" type:"structure"`
23151
23152	// ProgramName is a required field
23153	ProgramName *string `location:"uri" locationName:"programName" type:"string" required:"true"`
23154}
23155
23156// String returns the string representation
23157func (s UpdateMultiplexProgramInput) String() string {
23158	return awsutil.Prettify(s)
23159}
23160
23161// GoString returns the string representation
23162func (s UpdateMultiplexProgramInput) GoString() string {
23163	return s.String()
23164}
23165
23166// Validate inspects the fields of the type to determine if they are valid.
23167func (s *UpdateMultiplexProgramInput) Validate() error {
23168	invalidParams := request.ErrInvalidParams{Context: "UpdateMultiplexProgramInput"}
23169	if s.MultiplexId == nil {
23170		invalidParams.Add(request.NewErrParamRequired("MultiplexId"))
23171	}
23172	if s.MultiplexId != nil && len(*s.MultiplexId) < 1 {
23173		invalidParams.Add(request.NewErrParamMinLen("MultiplexId", 1))
23174	}
23175	if s.ProgramName == nil {
23176		invalidParams.Add(request.NewErrParamRequired("ProgramName"))
23177	}
23178	if s.ProgramName != nil && len(*s.ProgramName) < 1 {
23179		invalidParams.Add(request.NewErrParamMinLen("ProgramName", 1))
23180	}
23181	if s.MultiplexProgramSettings != nil {
23182		if err := s.MultiplexProgramSettings.Validate(); err != nil {
23183			invalidParams.AddNested("MultiplexProgramSettings", err.(request.ErrInvalidParams))
23184		}
23185	}
23186
23187	if invalidParams.Len() > 0 {
23188		return invalidParams
23189	}
23190	return nil
23191}
23192
23193// SetMultiplexId sets the MultiplexId field's value.
23194func (s *UpdateMultiplexProgramInput) SetMultiplexId(v string) *UpdateMultiplexProgramInput {
23195	s.MultiplexId = &v
23196	return s
23197}
23198
23199// SetMultiplexProgramSettings sets the MultiplexProgramSettings field's value.
23200func (s *UpdateMultiplexProgramInput) SetMultiplexProgramSettings(v *MultiplexProgramSettings) *UpdateMultiplexProgramInput {
23201	s.MultiplexProgramSettings = v
23202	return s
23203}
23204
23205// SetProgramName sets the ProgramName field's value.
23206func (s *UpdateMultiplexProgramInput) SetProgramName(v string) *UpdateMultiplexProgramInput {
23207	s.ProgramName = &v
23208	return s
23209}
23210
23211type UpdateMultiplexProgramOutput struct {
23212	_ struct{} `type:"structure"`
23213
23214	// The multiplex program object.
23215	MultiplexProgram *MultiplexProgram `locationName:"multiplexProgram" type:"structure"`
23216}
23217
23218// String returns the string representation
23219func (s UpdateMultiplexProgramOutput) String() string {
23220	return awsutil.Prettify(s)
23221}
23222
23223// GoString returns the string representation
23224func (s UpdateMultiplexProgramOutput) GoString() string {
23225	return s.String()
23226}
23227
23228// SetMultiplexProgram sets the MultiplexProgram field's value.
23229func (s *UpdateMultiplexProgramOutput) SetMultiplexProgram(v *MultiplexProgram) *UpdateMultiplexProgramOutput {
23230	s.MultiplexProgram = v
23231	return s
23232}
23233
23234type UpdateReservationInput struct {
23235	_ struct{} `type:"structure"`
23236
23237	Name *string `locationName:"name" type:"string"`
23238
23239	// ReservationId is a required field
23240	ReservationId *string `location:"uri" locationName:"reservationId" type:"string" required:"true"`
23241}
23242
23243// String returns the string representation
23244func (s UpdateReservationInput) String() string {
23245	return awsutil.Prettify(s)
23246}
23247
23248// GoString returns the string representation
23249func (s UpdateReservationInput) GoString() string {
23250	return s.String()
23251}
23252
23253// Validate inspects the fields of the type to determine if they are valid.
23254func (s *UpdateReservationInput) Validate() error {
23255	invalidParams := request.ErrInvalidParams{Context: "UpdateReservationInput"}
23256	if s.ReservationId == nil {
23257		invalidParams.Add(request.NewErrParamRequired("ReservationId"))
23258	}
23259	if s.ReservationId != nil && len(*s.ReservationId) < 1 {
23260		invalidParams.Add(request.NewErrParamMinLen("ReservationId", 1))
23261	}
23262
23263	if invalidParams.Len() > 0 {
23264		return invalidParams
23265	}
23266	return nil
23267}
23268
23269// SetName sets the Name field's value.
23270func (s *UpdateReservationInput) SetName(v string) *UpdateReservationInput {
23271	s.Name = &v
23272	return s
23273}
23274
23275// SetReservationId sets the ReservationId field's value.
23276func (s *UpdateReservationInput) SetReservationId(v string) *UpdateReservationInput {
23277	s.ReservationId = &v
23278	return s
23279}
23280
23281type UpdateReservationOutput struct {
23282	_ struct{} `type:"structure"`
23283
23284	// Reserved resources available to use
23285	Reservation *Reservation `locationName:"reservation" type:"structure"`
23286}
23287
23288// String returns the string representation
23289func (s UpdateReservationOutput) String() string {
23290	return awsutil.Prettify(s)
23291}
23292
23293// GoString returns the string representation
23294func (s UpdateReservationOutput) GoString() string {
23295	return s.String()
23296}
23297
23298// SetReservation sets the Reservation field's value.
23299func (s *UpdateReservationOutput) SetReservation(v *Reservation) *UpdateReservationOutput {
23300	s.Reservation = v
23301	return s
23302}
23303
23304type ValidationError struct {
23305	_ struct{} `type:"structure"`
23306
23307	// Path to the source of the error.
23308	ElementPath *string `locationName:"elementPath" type:"string"`
23309
23310	// The error message.
23311	ErrorMessage *string `locationName:"errorMessage" type:"string"`
23312}
23313
23314// String returns the string representation
23315func (s ValidationError) String() string {
23316	return awsutil.Prettify(s)
23317}
23318
23319// GoString returns the string representation
23320func (s ValidationError) GoString() string {
23321	return s.String()
23322}
23323
23324// SetElementPath sets the ElementPath field's value.
23325func (s *ValidationError) SetElementPath(v string) *ValidationError {
23326	s.ElementPath = &v
23327	return s
23328}
23329
23330// SetErrorMessage sets the ErrorMessage field's value.
23331func (s *ValidationError) SetErrorMessage(v string) *ValidationError {
23332	s.ErrorMessage = &v
23333	return s
23334}
23335
23336// Video Codec Settings
23337type VideoCodecSettings struct {
23338	_ struct{} `type:"structure"`
23339
23340	// Frame Capture Settings
23341	FrameCaptureSettings *FrameCaptureSettings `locationName:"frameCaptureSettings" type:"structure"`
23342
23343	// H264 Settings
23344	H264Settings *H264Settings `locationName:"h264Settings" type:"structure"`
23345
23346	// H265 Settings
23347	H265Settings *H265Settings `locationName:"h265Settings" type:"structure"`
23348}
23349
23350// String returns the string representation
23351func (s VideoCodecSettings) String() string {
23352	return awsutil.Prettify(s)
23353}
23354
23355// GoString returns the string representation
23356func (s VideoCodecSettings) GoString() string {
23357	return s.String()
23358}
23359
23360// Validate inspects the fields of the type to determine if they are valid.
23361func (s *VideoCodecSettings) Validate() error {
23362	invalidParams := request.ErrInvalidParams{Context: "VideoCodecSettings"}
23363	if s.FrameCaptureSettings != nil {
23364		if err := s.FrameCaptureSettings.Validate(); err != nil {
23365			invalidParams.AddNested("FrameCaptureSettings", err.(request.ErrInvalidParams))
23366		}
23367	}
23368	if s.H264Settings != nil {
23369		if err := s.H264Settings.Validate(); err != nil {
23370			invalidParams.AddNested("H264Settings", err.(request.ErrInvalidParams))
23371		}
23372	}
23373	if s.H265Settings != nil {
23374		if err := s.H265Settings.Validate(); err != nil {
23375			invalidParams.AddNested("H265Settings", err.(request.ErrInvalidParams))
23376		}
23377	}
23378
23379	if invalidParams.Len() > 0 {
23380		return invalidParams
23381	}
23382	return nil
23383}
23384
23385// SetFrameCaptureSettings sets the FrameCaptureSettings field's value.
23386func (s *VideoCodecSettings) SetFrameCaptureSettings(v *FrameCaptureSettings) *VideoCodecSettings {
23387	s.FrameCaptureSettings = v
23388	return s
23389}
23390
23391// SetH264Settings sets the H264Settings field's value.
23392func (s *VideoCodecSettings) SetH264Settings(v *H264Settings) *VideoCodecSettings {
23393	s.H264Settings = v
23394	return s
23395}
23396
23397// SetH265Settings sets the H265Settings field's value.
23398func (s *VideoCodecSettings) SetH265Settings(v *H265Settings) *VideoCodecSettings {
23399	s.H265Settings = v
23400	return s
23401}
23402
23403// Video settings for this stream.
23404type VideoDescription struct {
23405	_ struct{} `type:"structure"`
23406
23407	// Video codec settings.
23408	CodecSettings *VideoCodecSettings `locationName:"codecSettings" type:"structure"`
23409
23410	// Output video height, in pixels. Must be an even number. For most codecs,
23411	// you can leave this field and width blank in order to use the height and width
23412	// (resolution) from the source. Note, however, that leaving blank is not recommended.
23413	// For the Frame Capture codec, height and width are required.
23414	Height *int64 `locationName:"height" type:"integer"`
23415
23416	// The name of this VideoDescription. Outputs will use this name to uniquely
23417	// identify this Description. Description names should be unique within this
23418	// Live Event.
23419	//
23420	// Name is a required field
23421	Name *string `locationName:"name" type:"string" required:"true"`
23422
23423	// Indicates how to respond to the AFD values in the input stream. RESPOND causes
23424	// input video to be clipped, depending on the AFD value, input display aspect
23425	// ratio, and output display aspect ratio, and (except for FRAME_CAPTURE codec)
23426	// includes the values in the output. PASSTHROUGH (does not apply to FRAME_CAPTURE
23427	// codec) ignores the AFD values and includes the values in the output, so input
23428	// video is not clipped. NONE ignores the AFD values and does not include the
23429	// values through to the output, so input video is not clipped.
23430	RespondToAfd *string `locationName:"respondToAfd" type:"string" enum:"VideoDescriptionRespondToAfd"`
23431
23432	// STRETCH_TO_OUTPUT configures the output position to stretch the video to
23433	// the specified output resolution (height and width). This option will override
23434	// any position value. DEFAULT may insert black boxes (pillar boxes or letter
23435	// boxes) around the video to provide the specified output resolution.
23436	ScalingBehavior *string `locationName:"scalingBehavior" type:"string" enum:"VideoDescriptionScalingBehavior"`
23437
23438	// Changes the strength of the anti-alias filter used for scaling. 0 is the
23439	// softest setting, 100 is the sharpest. A setting of 50 is recommended for
23440	// most content.
23441	Sharpness *int64 `locationName:"sharpness" type:"integer"`
23442
23443	// Output video width, in pixels. Must be an even number. For most codecs, you
23444	// can leave this field and height blank in order to use the height and width
23445	// (resolution) from the source. Note, however, that leaving blank is not recommended.
23446	// For the Frame Capture codec, height and width are required.
23447	Width *int64 `locationName:"width" type:"integer"`
23448}
23449
23450// String returns the string representation
23451func (s VideoDescription) String() string {
23452	return awsutil.Prettify(s)
23453}
23454
23455// GoString returns the string representation
23456func (s VideoDescription) GoString() string {
23457	return s.String()
23458}
23459
23460// Validate inspects the fields of the type to determine if they are valid.
23461func (s *VideoDescription) Validate() error {
23462	invalidParams := request.ErrInvalidParams{Context: "VideoDescription"}
23463	if s.Name == nil {
23464		invalidParams.Add(request.NewErrParamRequired("Name"))
23465	}
23466	if s.CodecSettings != nil {
23467		if err := s.CodecSettings.Validate(); err != nil {
23468			invalidParams.AddNested("CodecSettings", err.(request.ErrInvalidParams))
23469		}
23470	}
23471
23472	if invalidParams.Len() > 0 {
23473		return invalidParams
23474	}
23475	return nil
23476}
23477
23478// SetCodecSettings sets the CodecSettings field's value.
23479func (s *VideoDescription) SetCodecSettings(v *VideoCodecSettings) *VideoDescription {
23480	s.CodecSettings = v
23481	return s
23482}
23483
23484// SetHeight sets the Height field's value.
23485func (s *VideoDescription) SetHeight(v int64) *VideoDescription {
23486	s.Height = &v
23487	return s
23488}
23489
23490// SetName sets the Name field's value.
23491func (s *VideoDescription) SetName(v string) *VideoDescription {
23492	s.Name = &v
23493	return s
23494}
23495
23496// SetRespondToAfd sets the RespondToAfd field's value.
23497func (s *VideoDescription) SetRespondToAfd(v string) *VideoDescription {
23498	s.RespondToAfd = &v
23499	return s
23500}
23501
23502// SetScalingBehavior sets the ScalingBehavior field's value.
23503func (s *VideoDescription) SetScalingBehavior(v string) *VideoDescription {
23504	s.ScalingBehavior = &v
23505	return s
23506}
23507
23508// SetSharpness sets the Sharpness field's value.
23509func (s *VideoDescription) SetSharpness(v int64) *VideoDescription {
23510	s.Sharpness = &v
23511	return s
23512}
23513
23514// SetWidth sets the Width field's value.
23515func (s *VideoDescription) SetWidth(v int64) *VideoDescription {
23516	s.Width = &v
23517	return s
23518}
23519
23520// Specifies a particular video stream within an input source. An input may
23521// have only a single video selector.
23522type VideoSelector struct {
23523	_ struct{} `type:"structure"`
23524
23525	// Specifies the color space of an input. This setting works in tandem with
23526	// colorSpaceUsage and a video description's colorSpaceSettingsChoice to determine
23527	// if any conversion will be performed.
23528	ColorSpace *string `locationName:"colorSpace" type:"string" enum:"VideoSelectorColorSpace"`
23529
23530	// Applies only if colorSpace is a value other than follow. This field controls
23531	// how the value in the colorSpace field will be used. fallback means that when
23532	// the input does include color space data, that data will be used, but when
23533	// the input has no color space data, the value in colorSpace will be used.
23534	// Choose fallback if your input is sometimes missing color space data, but
23535	// when it does have color space data, that data is correct. force means to
23536	// always use the value in colorSpace. Choose force if your input usually has
23537	// no color space data or might have unreliable color space data.
23538	ColorSpaceUsage *string `locationName:"colorSpaceUsage" type:"string" enum:"VideoSelectorColorSpaceUsage"`
23539
23540	// The video selector settings.
23541	SelectorSettings *VideoSelectorSettings `locationName:"selectorSettings" type:"structure"`
23542}
23543
23544// String returns the string representation
23545func (s VideoSelector) String() string {
23546	return awsutil.Prettify(s)
23547}
23548
23549// GoString returns the string representation
23550func (s VideoSelector) GoString() string {
23551	return s.String()
23552}
23553
23554// SetColorSpace sets the ColorSpace field's value.
23555func (s *VideoSelector) SetColorSpace(v string) *VideoSelector {
23556	s.ColorSpace = &v
23557	return s
23558}
23559
23560// SetColorSpaceUsage sets the ColorSpaceUsage field's value.
23561func (s *VideoSelector) SetColorSpaceUsage(v string) *VideoSelector {
23562	s.ColorSpaceUsage = &v
23563	return s
23564}
23565
23566// SetSelectorSettings sets the SelectorSettings field's value.
23567func (s *VideoSelector) SetSelectorSettings(v *VideoSelectorSettings) *VideoSelector {
23568	s.SelectorSettings = v
23569	return s
23570}
23571
23572// Video Selector Pid
23573type VideoSelectorPid struct {
23574	_ struct{} `type:"structure"`
23575
23576	// Selects a specific PID from within a video source.
23577	Pid *int64 `locationName:"pid" type:"integer"`
23578}
23579
23580// String returns the string representation
23581func (s VideoSelectorPid) String() string {
23582	return awsutil.Prettify(s)
23583}
23584
23585// GoString returns the string representation
23586func (s VideoSelectorPid) GoString() string {
23587	return s.String()
23588}
23589
23590// SetPid sets the Pid field's value.
23591func (s *VideoSelectorPid) SetPid(v int64) *VideoSelectorPid {
23592	s.Pid = &v
23593	return s
23594}
23595
23596// Video Selector Program Id
23597type VideoSelectorProgramId struct {
23598	_ struct{} `type:"structure"`
23599
23600	// Selects a specific program from within a multi-program transport stream.
23601	// If the program doesn't exist, the first program within the transport stream
23602	// will be selected by default.
23603	ProgramId *int64 `locationName:"programId" type:"integer"`
23604}
23605
23606// String returns the string representation
23607func (s VideoSelectorProgramId) String() string {
23608	return awsutil.Prettify(s)
23609}
23610
23611// GoString returns the string representation
23612func (s VideoSelectorProgramId) GoString() string {
23613	return s.String()
23614}
23615
23616// SetProgramId sets the ProgramId field's value.
23617func (s *VideoSelectorProgramId) SetProgramId(v int64) *VideoSelectorProgramId {
23618	s.ProgramId = &v
23619	return s
23620}
23621
23622// Video Selector Settings
23623type VideoSelectorSettings struct {
23624	_ struct{} `type:"structure"`
23625
23626	// Video Selector Pid
23627	VideoSelectorPid *VideoSelectorPid `locationName:"videoSelectorPid" type:"structure"`
23628
23629	// Video Selector Program Id
23630	VideoSelectorProgramId *VideoSelectorProgramId `locationName:"videoSelectorProgramId" type:"structure"`
23631}
23632
23633// String returns the string representation
23634func (s VideoSelectorSettings) String() string {
23635	return awsutil.Prettify(s)
23636}
23637
23638// GoString returns the string representation
23639func (s VideoSelectorSettings) GoString() string {
23640	return s.String()
23641}
23642
23643// SetVideoSelectorPid sets the VideoSelectorPid field's value.
23644func (s *VideoSelectorSettings) SetVideoSelectorPid(v *VideoSelectorPid) *VideoSelectorSettings {
23645	s.VideoSelectorPid = v
23646	return s
23647}
23648
23649// SetVideoSelectorProgramId sets the VideoSelectorProgramId field's value.
23650func (s *VideoSelectorSettings) SetVideoSelectorProgramId(v *VideoSelectorProgramId) *VideoSelectorSettings {
23651	s.VideoSelectorProgramId = v
23652	return s
23653}
23654
23655// Webvtt Destination Settings
23656type WebvttDestinationSettings struct {
23657	_ struct{} `type:"structure"`
23658}
23659
23660// String returns the string representation
23661func (s WebvttDestinationSettings) String() string {
23662	return awsutil.Prettify(s)
23663}
23664
23665// GoString returns the string representation
23666func (s WebvttDestinationSettings) GoString() string {
23667	return s.String()
23668}
23669
23670// Aac Coding Mode
23671const (
23672	// AacCodingModeAdReceiverMix is a AacCodingMode enum value
23673	AacCodingModeAdReceiverMix = "AD_RECEIVER_MIX"
23674
23675	// AacCodingModeCodingMode10 is a AacCodingMode enum value
23676	AacCodingModeCodingMode10 = "CODING_MODE_1_0"
23677
23678	// AacCodingModeCodingMode11 is a AacCodingMode enum value
23679	AacCodingModeCodingMode11 = "CODING_MODE_1_1"
23680
23681	// AacCodingModeCodingMode20 is a AacCodingMode enum value
23682	AacCodingModeCodingMode20 = "CODING_MODE_2_0"
23683
23684	// AacCodingModeCodingMode51 is a AacCodingMode enum value
23685	AacCodingModeCodingMode51 = "CODING_MODE_5_1"
23686)
23687
23688// Aac Input Type
23689const (
23690	// AacInputTypeBroadcasterMixedAd is a AacInputType enum value
23691	AacInputTypeBroadcasterMixedAd = "BROADCASTER_MIXED_AD"
23692
23693	// AacInputTypeNormal is a AacInputType enum value
23694	AacInputTypeNormal = "NORMAL"
23695)
23696
23697// Aac Profile
23698const (
23699	// AacProfileHev1 is a AacProfile enum value
23700	AacProfileHev1 = "HEV1"
23701
23702	// AacProfileHev2 is a AacProfile enum value
23703	AacProfileHev2 = "HEV2"
23704
23705	// AacProfileLc is a AacProfile enum value
23706	AacProfileLc = "LC"
23707)
23708
23709// Aac Rate Control Mode
23710const (
23711	// AacRateControlModeCbr is a AacRateControlMode enum value
23712	AacRateControlModeCbr = "CBR"
23713
23714	// AacRateControlModeVbr is a AacRateControlMode enum value
23715	AacRateControlModeVbr = "VBR"
23716)
23717
23718// Aac Raw Format
23719const (
23720	// AacRawFormatLatmLoas is a AacRawFormat enum value
23721	AacRawFormatLatmLoas = "LATM_LOAS"
23722
23723	// AacRawFormatNone is a AacRawFormat enum value
23724	AacRawFormatNone = "NONE"
23725)
23726
23727// Aac Spec
23728const (
23729	// AacSpecMpeg2 is a AacSpec enum value
23730	AacSpecMpeg2 = "MPEG2"
23731
23732	// AacSpecMpeg4 is a AacSpec enum value
23733	AacSpecMpeg4 = "MPEG4"
23734)
23735
23736// Aac Vbr Quality
23737const (
23738	// AacVbrQualityHigh is a AacVbrQuality enum value
23739	AacVbrQualityHigh = "HIGH"
23740
23741	// AacVbrQualityLow is a AacVbrQuality enum value
23742	AacVbrQualityLow = "LOW"
23743
23744	// AacVbrQualityMediumHigh is a AacVbrQuality enum value
23745	AacVbrQualityMediumHigh = "MEDIUM_HIGH"
23746
23747	// AacVbrQualityMediumLow is a AacVbrQuality enum value
23748	AacVbrQualityMediumLow = "MEDIUM_LOW"
23749)
23750
23751// Ac3 Bitstream Mode
23752const (
23753	// Ac3BitstreamModeCommentary is a Ac3BitstreamMode enum value
23754	Ac3BitstreamModeCommentary = "COMMENTARY"
23755
23756	// Ac3BitstreamModeCompleteMain is a Ac3BitstreamMode enum value
23757	Ac3BitstreamModeCompleteMain = "COMPLETE_MAIN"
23758
23759	// Ac3BitstreamModeDialogue is a Ac3BitstreamMode enum value
23760	Ac3BitstreamModeDialogue = "DIALOGUE"
23761
23762	// Ac3BitstreamModeEmergency is a Ac3BitstreamMode enum value
23763	Ac3BitstreamModeEmergency = "EMERGENCY"
23764
23765	// Ac3BitstreamModeHearingImpaired is a Ac3BitstreamMode enum value
23766	Ac3BitstreamModeHearingImpaired = "HEARING_IMPAIRED"
23767
23768	// Ac3BitstreamModeMusicAndEffects is a Ac3BitstreamMode enum value
23769	Ac3BitstreamModeMusicAndEffects = "MUSIC_AND_EFFECTS"
23770
23771	// Ac3BitstreamModeVisuallyImpaired is a Ac3BitstreamMode enum value
23772	Ac3BitstreamModeVisuallyImpaired = "VISUALLY_IMPAIRED"
23773
23774	// Ac3BitstreamModeVoiceOver is a Ac3BitstreamMode enum value
23775	Ac3BitstreamModeVoiceOver = "VOICE_OVER"
23776)
23777
23778// Ac3 Coding Mode
23779const (
23780	// Ac3CodingModeCodingMode10 is a Ac3CodingMode enum value
23781	Ac3CodingModeCodingMode10 = "CODING_MODE_1_0"
23782
23783	// Ac3CodingModeCodingMode11 is a Ac3CodingMode enum value
23784	Ac3CodingModeCodingMode11 = "CODING_MODE_1_1"
23785
23786	// Ac3CodingModeCodingMode20 is a Ac3CodingMode enum value
23787	Ac3CodingModeCodingMode20 = "CODING_MODE_2_0"
23788
23789	// Ac3CodingModeCodingMode32Lfe is a Ac3CodingMode enum value
23790	Ac3CodingModeCodingMode32Lfe = "CODING_MODE_3_2_LFE"
23791)
23792
23793// Ac3 Drc Profile
23794const (
23795	// Ac3DrcProfileFilmStandard is a Ac3DrcProfile enum value
23796	Ac3DrcProfileFilmStandard = "FILM_STANDARD"
23797
23798	// Ac3DrcProfileNone is a Ac3DrcProfile enum value
23799	Ac3DrcProfileNone = "NONE"
23800)
23801
23802// Ac3 Lfe Filter
23803const (
23804	// Ac3LfeFilterDisabled is a Ac3LfeFilter enum value
23805	Ac3LfeFilterDisabled = "DISABLED"
23806
23807	// Ac3LfeFilterEnabled is a Ac3LfeFilter enum value
23808	Ac3LfeFilterEnabled = "ENABLED"
23809)
23810
23811// Ac3 Metadata Control
23812const (
23813	// Ac3MetadataControlFollowInput is a Ac3MetadataControl enum value
23814	Ac3MetadataControlFollowInput = "FOLLOW_INPUT"
23815
23816	// Ac3MetadataControlUseConfigured is a Ac3MetadataControl enum value
23817	Ac3MetadataControlUseConfigured = "USE_CONFIGURED"
23818)
23819
23820// Afd Signaling
23821const (
23822	// AfdSignalingAuto is a AfdSignaling enum value
23823	AfdSignalingAuto = "AUTO"
23824
23825	// AfdSignalingFixed is a AfdSignaling enum value
23826	AfdSignalingFixed = "FIXED"
23827
23828	// AfdSignalingNone is a AfdSignaling enum value
23829	AfdSignalingNone = "NONE"
23830)
23831
23832// Audio Description Audio Type Control
23833const (
23834	// AudioDescriptionAudioTypeControlFollowInput is a AudioDescriptionAudioTypeControl enum value
23835	AudioDescriptionAudioTypeControlFollowInput = "FOLLOW_INPUT"
23836
23837	// AudioDescriptionAudioTypeControlUseConfigured is a AudioDescriptionAudioTypeControl enum value
23838	AudioDescriptionAudioTypeControlUseConfigured = "USE_CONFIGURED"
23839)
23840
23841// Audio Description Language Code Control
23842const (
23843	// AudioDescriptionLanguageCodeControlFollowInput is a AudioDescriptionLanguageCodeControl enum value
23844	AudioDescriptionLanguageCodeControlFollowInput = "FOLLOW_INPUT"
23845
23846	// AudioDescriptionLanguageCodeControlUseConfigured is a AudioDescriptionLanguageCodeControl enum value
23847	AudioDescriptionLanguageCodeControlUseConfigured = "USE_CONFIGURED"
23848)
23849
23850// Audio Language Selection Policy
23851const (
23852	// AudioLanguageSelectionPolicyLoose is a AudioLanguageSelectionPolicy enum value
23853	AudioLanguageSelectionPolicyLoose = "LOOSE"
23854
23855	// AudioLanguageSelectionPolicyStrict is a AudioLanguageSelectionPolicy enum value
23856	AudioLanguageSelectionPolicyStrict = "STRICT"
23857)
23858
23859// Audio Normalization Algorithm
23860const (
23861	// AudioNormalizationAlgorithmItu17701 is a AudioNormalizationAlgorithm enum value
23862	AudioNormalizationAlgorithmItu17701 = "ITU_1770_1"
23863
23864	// AudioNormalizationAlgorithmItu17702 is a AudioNormalizationAlgorithm enum value
23865	AudioNormalizationAlgorithmItu17702 = "ITU_1770_2"
23866)
23867
23868// Audio Normalization Algorithm Control
23869const (
23870	// AudioNormalizationAlgorithmControlCorrectAudio is a AudioNormalizationAlgorithmControl enum value
23871	AudioNormalizationAlgorithmControlCorrectAudio = "CORRECT_AUDIO"
23872)
23873
23874// Audio Only Hls Segment Type
23875const (
23876	// AudioOnlyHlsSegmentTypeAac is a AudioOnlyHlsSegmentType enum value
23877	AudioOnlyHlsSegmentTypeAac = "AAC"
23878
23879	// AudioOnlyHlsSegmentTypeFmp4 is a AudioOnlyHlsSegmentType enum value
23880	AudioOnlyHlsSegmentTypeFmp4 = "FMP4"
23881)
23882
23883// Audio Only Hls Track Type
23884const (
23885	// AudioOnlyHlsTrackTypeAlternateAudioAutoSelect is a AudioOnlyHlsTrackType enum value
23886	AudioOnlyHlsTrackTypeAlternateAudioAutoSelect = "ALTERNATE_AUDIO_AUTO_SELECT"
23887
23888	// AudioOnlyHlsTrackTypeAlternateAudioAutoSelectDefault is a AudioOnlyHlsTrackType enum value
23889	AudioOnlyHlsTrackTypeAlternateAudioAutoSelectDefault = "ALTERNATE_AUDIO_AUTO_SELECT_DEFAULT"
23890
23891	// AudioOnlyHlsTrackTypeAlternateAudioNotAutoSelect is a AudioOnlyHlsTrackType enum value
23892	AudioOnlyHlsTrackTypeAlternateAudioNotAutoSelect = "ALTERNATE_AUDIO_NOT_AUTO_SELECT"
23893
23894	// AudioOnlyHlsTrackTypeAudioOnlyVariantStream is a AudioOnlyHlsTrackType enum value
23895	AudioOnlyHlsTrackTypeAudioOnlyVariantStream = "AUDIO_ONLY_VARIANT_STREAM"
23896)
23897
23898// Audio Type
23899const (
23900	// AudioTypeCleanEffects is a AudioType enum value
23901	AudioTypeCleanEffects = "CLEAN_EFFECTS"
23902
23903	// AudioTypeHearingImpaired is a AudioType enum value
23904	AudioTypeHearingImpaired = "HEARING_IMPAIRED"
23905
23906	// AudioTypeUndefined is a AudioType enum value
23907	AudioTypeUndefined = "UNDEFINED"
23908
23909	// AudioTypeVisualImpairedCommentary is a AudioType enum value
23910	AudioTypeVisualImpairedCommentary = "VISUAL_IMPAIRED_COMMENTARY"
23911)
23912
23913// Authentication Scheme
23914const (
23915	// AuthenticationSchemeAkamai is a AuthenticationScheme enum value
23916	AuthenticationSchemeAkamai = "AKAMAI"
23917
23918	// AuthenticationSchemeCommon is a AuthenticationScheme enum value
23919	AuthenticationSchemeCommon = "COMMON"
23920)
23921
23922// Avail Blanking State
23923const (
23924	// AvailBlankingStateDisabled is a AvailBlankingState enum value
23925	AvailBlankingStateDisabled = "DISABLED"
23926
23927	// AvailBlankingStateEnabled is a AvailBlankingState enum value
23928	AvailBlankingStateEnabled = "ENABLED"
23929)
23930
23931// Blackout Slate Network End Blackout
23932const (
23933	// BlackoutSlateNetworkEndBlackoutDisabled is a BlackoutSlateNetworkEndBlackout enum value
23934	BlackoutSlateNetworkEndBlackoutDisabled = "DISABLED"
23935
23936	// BlackoutSlateNetworkEndBlackoutEnabled is a BlackoutSlateNetworkEndBlackout enum value
23937	BlackoutSlateNetworkEndBlackoutEnabled = "ENABLED"
23938)
23939
23940// Blackout Slate State
23941const (
23942	// BlackoutSlateStateDisabled is a BlackoutSlateState enum value
23943	BlackoutSlateStateDisabled = "DISABLED"
23944
23945	// BlackoutSlateStateEnabled is a BlackoutSlateState enum value
23946	BlackoutSlateStateEnabled = "ENABLED"
23947)
23948
23949// Burn In Alignment
23950const (
23951	// BurnInAlignmentCentered is a BurnInAlignment enum value
23952	BurnInAlignmentCentered = "CENTERED"
23953
23954	// BurnInAlignmentLeft is a BurnInAlignment enum value
23955	BurnInAlignmentLeft = "LEFT"
23956
23957	// BurnInAlignmentSmart is a BurnInAlignment enum value
23958	BurnInAlignmentSmart = "SMART"
23959)
23960
23961// Burn In Background Color
23962const (
23963	// BurnInBackgroundColorBlack is a BurnInBackgroundColor enum value
23964	BurnInBackgroundColorBlack = "BLACK"
23965
23966	// BurnInBackgroundColorNone is a BurnInBackgroundColor enum value
23967	BurnInBackgroundColorNone = "NONE"
23968
23969	// BurnInBackgroundColorWhite is a BurnInBackgroundColor enum value
23970	BurnInBackgroundColorWhite = "WHITE"
23971)
23972
23973// Burn In Font Color
23974const (
23975	// BurnInFontColorBlack is a BurnInFontColor enum value
23976	BurnInFontColorBlack = "BLACK"
23977
23978	// BurnInFontColorBlue is a BurnInFontColor enum value
23979	BurnInFontColorBlue = "BLUE"
23980
23981	// BurnInFontColorGreen is a BurnInFontColor enum value
23982	BurnInFontColorGreen = "GREEN"
23983
23984	// BurnInFontColorRed is a BurnInFontColor enum value
23985	BurnInFontColorRed = "RED"
23986
23987	// BurnInFontColorWhite is a BurnInFontColor enum value
23988	BurnInFontColorWhite = "WHITE"
23989
23990	// BurnInFontColorYellow is a BurnInFontColor enum value
23991	BurnInFontColorYellow = "YELLOW"
23992)
23993
23994// Burn In Outline Color
23995const (
23996	// BurnInOutlineColorBlack is a BurnInOutlineColor enum value
23997	BurnInOutlineColorBlack = "BLACK"
23998
23999	// BurnInOutlineColorBlue is a BurnInOutlineColor enum value
24000	BurnInOutlineColorBlue = "BLUE"
24001
24002	// BurnInOutlineColorGreen is a BurnInOutlineColor enum value
24003	BurnInOutlineColorGreen = "GREEN"
24004
24005	// BurnInOutlineColorRed is a BurnInOutlineColor enum value
24006	BurnInOutlineColorRed = "RED"
24007
24008	// BurnInOutlineColorWhite is a BurnInOutlineColor enum value
24009	BurnInOutlineColorWhite = "WHITE"
24010
24011	// BurnInOutlineColorYellow is a BurnInOutlineColor enum value
24012	BurnInOutlineColorYellow = "YELLOW"
24013)
24014
24015// Burn In Shadow Color
24016const (
24017	// BurnInShadowColorBlack is a BurnInShadowColor enum value
24018	BurnInShadowColorBlack = "BLACK"
24019
24020	// BurnInShadowColorNone is a BurnInShadowColor enum value
24021	BurnInShadowColorNone = "NONE"
24022
24023	// BurnInShadowColorWhite is a BurnInShadowColor enum value
24024	BurnInShadowColorWhite = "WHITE"
24025)
24026
24027// Burn In Teletext Grid Control
24028const (
24029	// BurnInTeletextGridControlFixed is a BurnInTeletextGridControl enum value
24030	BurnInTeletextGridControlFixed = "FIXED"
24031
24032	// BurnInTeletextGridControlScaled is a BurnInTeletextGridControl enum value
24033	BurnInTeletextGridControlScaled = "SCALED"
24034)
24035
24036// A standard channel has two encoding pipelines and a single pipeline channel
24037// only has one.
24038const (
24039	// ChannelClassStandard is a ChannelClass enum value
24040	ChannelClassStandard = "STANDARD"
24041
24042	// ChannelClassSinglePipeline is a ChannelClass enum value
24043	ChannelClassSinglePipeline = "SINGLE_PIPELINE"
24044)
24045
24046const (
24047	// ChannelStateCreating is a ChannelState enum value
24048	ChannelStateCreating = "CREATING"
24049
24050	// ChannelStateCreateFailed is a ChannelState enum value
24051	ChannelStateCreateFailed = "CREATE_FAILED"
24052
24053	// ChannelStateIdle is a ChannelState enum value
24054	ChannelStateIdle = "IDLE"
24055
24056	// ChannelStateStarting is a ChannelState enum value
24057	ChannelStateStarting = "STARTING"
24058
24059	// ChannelStateRunning is a ChannelState enum value
24060	ChannelStateRunning = "RUNNING"
24061
24062	// ChannelStateRecovering is a ChannelState enum value
24063	ChannelStateRecovering = "RECOVERING"
24064
24065	// ChannelStateStopping is a ChannelState enum value
24066	ChannelStateStopping = "STOPPING"
24067
24068	// ChannelStateDeleting is a ChannelState enum value
24069	ChannelStateDeleting = "DELETING"
24070
24071	// ChannelStateDeleted is a ChannelState enum value
24072	ChannelStateDeleted = "DELETED"
24073
24074	// ChannelStateUpdating is a ChannelState enum value
24075	ChannelStateUpdating = "UPDATING"
24076
24077	// ChannelStateUpdateFailed is a ChannelState enum value
24078	ChannelStateUpdateFailed = "UPDATE_FAILED"
24079)
24080
24081// The status of the action to synchronize the device configuration. If you
24082// change the configuration of the input device (for example, the maximum bitrate),
24083// MediaLive sends the new data to the device. The device might not update itself
24084// immediately. SYNCED means the device has updated its configuration. SYNCING
24085// means that it has not updated its configuration.
24086const (
24087	// DeviceSettingsSyncStateSynced is a DeviceSettingsSyncState enum value
24088	DeviceSettingsSyncStateSynced = "SYNCED"
24089
24090	// DeviceSettingsSyncStateSyncing is a DeviceSettingsSyncState enum value
24091	DeviceSettingsSyncStateSyncing = "SYNCING"
24092)
24093
24094// Dvb Sdt Output Sdt
24095const (
24096	// DvbSdtOutputSdtSdtFollow is a DvbSdtOutputSdt enum value
24097	DvbSdtOutputSdtSdtFollow = "SDT_FOLLOW"
24098
24099	// DvbSdtOutputSdtSdtFollowIfPresent is a DvbSdtOutputSdt enum value
24100	DvbSdtOutputSdtSdtFollowIfPresent = "SDT_FOLLOW_IF_PRESENT"
24101
24102	// DvbSdtOutputSdtSdtManual is a DvbSdtOutputSdt enum value
24103	DvbSdtOutputSdtSdtManual = "SDT_MANUAL"
24104
24105	// DvbSdtOutputSdtSdtNone is a DvbSdtOutputSdt enum value
24106	DvbSdtOutputSdtSdtNone = "SDT_NONE"
24107)
24108
24109// Dvb Sub Destination Alignment
24110const (
24111	// DvbSubDestinationAlignmentCentered is a DvbSubDestinationAlignment enum value
24112	DvbSubDestinationAlignmentCentered = "CENTERED"
24113
24114	// DvbSubDestinationAlignmentLeft is a DvbSubDestinationAlignment enum value
24115	DvbSubDestinationAlignmentLeft = "LEFT"
24116
24117	// DvbSubDestinationAlignmentSmart is a DvbSubDestinationAlignment enum value
24118	DvbSubDestinationAlignmentSmart = "SMART"
24119)
24120
24121// Dvb Sub Destination Background Color
24122const (
24123	// DvbSubDestinationBackgroundColorBlack is a DvbSubDestinationBackgroundColor enum value
24124	DvbSubDestinationBackgroundColorBlack = "BLACK"
24125
24126	// DvbSubDestinationBackgroundColorNone is a DvbSubDestinationBackgroundColor enum value
24127	DvbSubDestinationBackgroundColorNone = "NONE"
24128
24129	// DvbSubDestinationBackgroundColorWhite is a DvbSubDestinationBackgroundColor enum value
24130	DvbSubDestinationBackgroundColorWhite = "WHITE"
24131)
24132
24133// Dvb Sub Destination Font Color
24134const (
24135	// DvbSubDestinationFontColorBlack is a DvbSubDestinationFontColor enum value
24136	DvbSubDestinationFontColorBlack = "BLACK"
24137
24138	// DvbSubDestinationFontColorBlue is a DvbSubDestinationFontColor enum value
24139	DvbSubDestinationFontColorBlue = "BLUE"
24140
24141	// DvbSubDestinationFontColorGreen is a DvbSubDestinationFontColor enum value
24142	DvbSubDestinationFontColorGreen = "GREEN"
24143
24144	// DvbSubDestinationFontColorRed is a DvbSubDestinationFontColor enum value
24145	DvbSubDestinationFontColorRed = "RED"
24146
24147	// DvbSubDestinationFontColorWhite is a DvbSubDestinationFontColor enum value
24148	DvbSubDestinationFontColorWhite = "WHITE"
24149
24150	// DvbSubDestinationFontColorYellow is a DvbSubDestinationFontColor enum value
24151	DvbSubDestinationFontColorYellow = "YELLOW"
24152)
24153
24154// Dvb Sub Destination Outline Color
24155const (
24156	// DvbSubDestinationOutlineColorBlack is a DvbSubDestinationOutlineColor enum value
24157	DvbSubDestinationOutlineColorBlack = "BLACK"
24158
24159	// DvbSubDestinationOutlineColorBlue is a DvbSubDestinationOutlineColor enum value
24160	DvbSubDestinationOutlineColorBlue = "BLUE"
24161
24162	// DvbSubDestinationOutlineColorGreen is a DvbSubDestinationOutlineColor enum value
24163	DvbSubDestinationOutlineColorGreen = "GREEN"
24164
24165	// DvbSubDestinationOutlineColorRed is a DvbSubDestinationOutlineColor enum value
24166	DvbSubDestinationOutlineColorRed = "RED"
24167
24168	// DvbSubDestinationOutlineColorWhite is a DvbSubDestinationOutlineColor enum value
24169	DvbSubDestinationOutlineColorWhite = "WHITE"
24170
24171	// DvbSubDestinationOutlineColorYellow is a DvbSubDestinationOutlineColor enum value
24172	DvbSubDestinationOutlineColorYellow = "YELLOW"
24173)
24174
24175// Dvb Sub Destination Shadow Color
24176const (
24177	// DvbSubDestinationShadowColorBlack is a DvbSubDestinationShadowColor enum value
24178	DvbSubDestinationShadowColorBlack = "BLACK"
24179
24180	// DvbSubDestinationShadowColorNone is a DvbSubDestinationShadowColor enum value
24181	DvbSubDestinationShadowColorNone = "NONE"
24182
24183	// DvbSubDestinationShadowColorWhite is a DvbSubDestinationShadowColor enum value
24184	DvbSubDestinationShadowColorWhite = "WHITE"
24185)
24186
24187// Dvb Sub Destination Teletext Grid Control
24188const (
24189	// DvbSubDestinationTeletextGridControlFixed is a DvbSubDestinationTeletextGridControl enum value
24190	DvbSubDestinationTeletextGridControlFixed = "FIXED"
24191
24192	// DvbSubDestinationTeletextGridControlScaled is a DvbSubDestinationTeletextGridControl enum value
24193	DvbSubDestinationTeletextGridControlScaled = "SCALED"
24194)
24195
24196// Eac3 Attenuation Control
24197const (
24198	// Eac3AttenuationControlAttenuate3Db is a Eac3AttenuationControl enum value
24199	Eac3AttenuationControlAttenuate3Db = "ATTENUATE_3_DB"
24200
24201	// Eac3AttenuationControlNone is a Eac3AttenuationControl enum value
24202	Eac3AttenuationControlNone = "NONE"
24203)
24204
24205// Eac3 Bitstream Mode
24206const (
24207	// Eac3BitstreamModeCommentary is a Eac3BitstreamMode enum value
24208	Eac3BitstreamModeCommentary = "COMMENTARY"
24209
24210	// Eac3BitstreamModeCompleteMain is a Eac3BitstreamMode enum value
24211	Eac3BitstreamModeCompleteMain = "COMPLETE_MAIN"
24212
24213	// Eac3BitstreamModeEmergency is a Eac3BitstreamMode enum value
24214	Eac3BitstreamModeEmergency = "EMERGENCY"
24215
24216	// Eac3BitstreamModeHearingImpaired is a Eac3BitstreamMode enum value
24217	Eac3BitstreamModeHearingImpaired = "HEARING_IMPAIRED"
24218
24219	// Eac3BitstreamModeVisuallyImpaired is a Eac3BitstreamMode enum value
24220	Eac3BitstreamModeVisuallyImpaired = "VISUALLY_IMPAIRED"
24221)
24222
24223// Eac3 Coding Mode
24224const (
24225	// Eac3CodingModeCodingMode10 is a Eac3CodingMode enum value
24226	Eac3CodingModeCodingMode10 = "CODING_MODE_1_0"
24227
24228	// Eac3CodingModeCodingMode20 is a Eac3CodingMode enum value
24229	Eac3CodingModeCodingMode20 = "CODING_MODE_2_0"
24230
24231	// Eac3CodingModeCodingMode32 is a Eac3CodingMode enum value
24232	Eac3CodingModeCodingMode32 = "CODING_MODE_3_2"
24233)
24234
24235// Eac3 Dc Filter
24236const (
24237	// Eac3DcFilterDisabled is a Eac3DcFilter enum value
24238	Eac3DcFilterDisabled = "DISABLED"
24239
24240	// Eac3DcFilterEnabled is a Eac3DcFilter enum value
24241	Eac3DcFilterEnabled = "ENABLED"
24242)
24243
24244// Eac3 Drc Line
24245const (
24246	// Eac3DrcLineFilmLight is a Eac3DrcLine enum value
24247	Eac3DrcLineFilmLight = "FILM_LIGHT"
24248
24249	// Eac3DrcLineFilmStandard is a Eac3DrcLine enum value
24250	Eac3DrcLineFilmStandard = "FILM_STANDARD"
24251
24252	// Eac3DrcLineMusicLight is a Eac3DrcLine enum value
24253	Eac3DrcLineMusicLight = "MUSIC_LIGHT"
24254
24255	// Eac3DrcLineMusicStandard is a Eac3DrcLine enum value
24256	Eac3DrcLineMusicStandard = "MUSIC_STANDARD"
24257
24258	// Eac3DrcLineNone is a Eac3DrcLine enum value
24259	Eac3DrcLineNone = "NONE"
24260
24261	// Eac3DrcLineSpeech is a Eac3DrcLine enum value
24262	Eac3DrcLineSpeech = "SPEECH"
24263)
24264
24265// Eac3 Drc Rf
24266const (
24267	// Eac3DrcRfFilmLight is a Eac3DrcRf enum value
24268	Eac3DrcRfFilmLight = "FILM_LIGHT"
24269
24270	// Eac3DrcRfFilmStandard is a Eac3DrcRf enum value
24271	Eac3DrcRfFilmStandard = "FILM_STANDARD"
24272
24273	// Eac3DrcRfMusicLight is a Eac3DrcRf enum value
24274	Eac3DrcRfMusicLight = "MUSIC_LIGHT"
24275
24276	// Eac3DrcRfMusicStandard is a Eac3DrcRf enum value
24277	Eac3DrcRfMusicStandard = "MUSIC_STANDARD"
24278
24279	// Eac3DrcRfNone is a Eac3DrcRf enum value
24280	Eac3DrcRfNone = "NONE"
24281
24282	// Eac3DrcRfSpeech is a Eac3DrcRf enum value
24283	Eac3DrcRfSpeech = "SPEECH"
24284)
24285
24286// Eac3 Lfe Control
24287const (
24288	// Eac3LfeControlLfe is a Eac3LfeControl enum value
24289	Eac3LfeControlLfe = "LFE"
24290
24291	// Eac3LfeControlNoLfe is a Eac3LfeControl enum value
24292	Eac3LfeControlNoLfe = "NO_LFE"
24293)
24294
24295// Eac3 Lfe Filter
24296const (
24297	// Eac3LfeFilterDisabled is a Eac3LfeFilter enum value
24298	Eac3LfeFilterDisabled = "DISABLED"
24299
24300	// Eac3LfeFilterEnabled is a Eac3LfeFilter enum value
24301	Eac3LfeFilterEnabled = "ENABLED"
24302)
24303
24304// Eac3 Metadata Control
24305const (
24306	// Eac3MetadataControlFollowInput is a Eac3MetadataControl enum value
24307	Eac3MetadataControlFollowInput = "FOLLOW_INPUT"
24308
24309	// Eac3MetadataControlUseConfigured is a Eac3MetadataControl enum value
24310	Eac3MetadataControlUseConfigured = "USE_CONFIGURED"
24311)
24312
24313// Eac3 Passthrough Control
24314const (
24315	// Eac3PassthroughControlNoPassthrough is a Eac3PassthroughControl enum value
24316	Eac3PassthroughControlNoPassthrough = "NO_PASSTHROUGH"
24317
24318	// Eac3PassthroughControlWhenPossible is a Eac3PassthroughControl enum value
24319	Eac3PassthroughControlWhenPossible = "WHEN_POSSIBLE"
24320)
24321
24322// Eac3 Phase Control
24323const (
24324	// Eac3PhaseControlNoShift is a Eac3PhaseControl enum value
24325	Eac3PhaseControlNoShift = "NO_SHIFT"
24326
24327	// Eac3PhaseControlShift90Degrees is a Eac3PhaseControl enum value
24328	Eac3PhaseControlShift90Degrees = "SHIFT_90_DEGREES"
24329)
24330
24331// Eac3 Stereo Downmix
24332const (
24333	// Eac3StereoDownmixDpl2 is a Eac3StereoDownmix enum value
24334	Eac3StereoDownmixDpl2 = "DPL2"
24335
24336	// Eac3StereoDownmixLoRo is a Eac3StereoDownmix enum value
24337	Eac3StereoDownmixLoRo = "LO_RO"
24338
24339	// Eac3StereoDownmixLtRt is a Eac3StereoDownmix enum value
24340	Eac3StereoDownmixLtRt = "LT_RT"
24341
24342	// Eac3StereoDownmixNotIndicated is a Eac3StereoDownmix enum value
24343	Eac3StereoDownmixNotIndicated = "NOT_INDICATED"
24344)
24345
24346// Eac3 Surround Ex Mode
24347const (
24348	// Eac3SurroundExModeDisabled is a Eac3SurroundExMode enum value
24349	Eac3SurroundExModeDisabled = "DISABLED"
24350
24351	// Eac3SurroundExModeEnabled is a Eac3SurroundExMode enum value
24352	Eac3SurroundExModeEnabled = "ENABLED"
24353
24354	// Eac3SurroundExModeNotIndicated is a Eac3SurroundExMode enum value
24355	Eac3SurroundExModeNotIndicated = "NOT_INDICATED"
24356)
24357
24358// Eac3 Surround Mode
24359const (
24360	// Eac3SurroundModeDisabled is a Eac3SurroundMode enum value
24361	Eac3SurroundModeDisabled = "DISABLED"
24362
24363	// Eac3SurroundModeEnabled is a Eac3SurroundMode enum value
24364	Eac3SurroundModeEnabled = "ENABLED"
24365
24366	// Eac3SurroundModeNotIndicated is a Eac3SurroundMode enum value
24367	Eac3SurroundModeNotIndicated = "NOT_INDICATED"
24368)
24369
24370// Embedded Convert608 To708
24371const (
24372	// EmbeddedConvert608To708Disabled is a EmbeddedConvert608To708 enum value
24373	EmbeddedConvert608To708Disabled = "DISABLED"
24374
24375	// EmbeddedConvert608To708Upconvert is a EmbeddedConvert608To708 enum value
24376	EmbeddedConvert608To708Upconvert = "UPCONVERT"
24377)
24378
24379// Embedded Scte20 Detection
24380const (
24381	// EmbeddedScte20DetectionAuto is a EmbeddedScte20Detection enum value
24382	EmbeddedScte20DetectionAuto = "AUTO"
24383
24384	// EmbeddedScte20DetectionOff is a EmbeddedScte20Detection enum value
24385	EmbeddedScte20DetectionOff = "OFF"
24386)
24387
24388// Feature Activations Input Prepare Schedule Actions
24389const (
24390	// FeatureActivationsInputPrepareScheduleActionsDisabled is a FeatureActivationsInputPrepareScheduleActions enum value
24391	FeatureActivationsInputPrepareScheduleActionsDisabled = "DISABLED"
24392
24393	// FeatureActivationsInputPrepareScheduleActionsEnabled is a FeatureActivationsInputPrepareScheduleActions enum value
24394	FeatureActivationsInputPrepareScheduleActionsEnabled = "ENABLED"
24395)
24396
24397// Fec Output Include Fec
24398const (
24399	// FecOutputIncludeFecColumn is a FecOutputIncludeFec enum value
24400	FecOutputIncludeFecColumn = "COLUMN"
24401
24402	// FecOutputIncludeFecColumnAndRow is a FecOutputIncludeFec enum value
24403	FecOutputIncludeFecColumnAndRow = "COLUMN_AND_ROW"
24404)
24405
24406// Fixed Afd
24407const (
24408	// FixedAfdAfd0000 is a FixedAfd enum value
24409	FixedAfdAfd0000 = "AFD_0000"
24410
24411	// FixedAfdAfd0010 is a FixedAfd enum value
24412	FixedAfdAfd0010 = "AFD_0010"
24413
24414	// FixedAfdAfd0011 is a FixedAfd enum value
24415	FixedAfdAfd0011 = "AFD_0011"
24416
24417	// FixedAfdAfd0100 is a FixedAfd enum value
24418	FixedAfdAfd0100 = "AFD_0100"
24419
24420	// FixedAfdAfd1000 is a FixedAfd enum value
24421	FixedAfdAfd1000 = "AFD_1000"
24422
24423	// FixedAfdAfd1001 is a FixedAfd enum value
24424	FixedAfdAfd1001 = "AFD_1001"
24425
24426	// FixedAfdAfd1010 is a FixedAfd enum value
24427	FixedAfdAfd1010 = "AFD_1010"
24428
24429	// FixedAfdAfd1011 is a FixedAfd enum value
24430	FixedAfdAfd1011 = "AFD_1011"
24431
24432	// FixedAfdAfd1101 is a FixedAfd enum value
24433	FixedAfdAfd1101 = "AFD_1101"
24434
24435	// FixedAfdAfd1110 is a FixedAfd enum value
24436	FixedAfdAfd1110 = "AFD_1110"
24437
24438	// FixedAfdAfd1111 is a FixedAfd enum value
24439	FixedAfdAfd1111 = "AFD_1111"
24440)
24441
24442// Fmp4 Nielsen Id3 Behavior
24443const (
24444	// Fmp4NielsenId3BehaviorNoPassthrough is a Fmp4NielsenId3Behavior enum value
24445	Fmp4NielsenId3BehaviorNoPassthrough = "NO_PASSTHROUGH"
24446
24447	// Fmp4NielsenId3BehaviorPassthrough is a Fmp4NielsenId3Behavior enum value
24448	Fmp4NielsenId3BehaviorPassthrough = "PASSTHROUGH"
24449)
24450
24451// Fmp4 Timed Metadata Behavior
24452const (
24453	// Fmp4TimedMetadataBehaviorNoPassthrough is a Fmp4TimedMetadataBehavior enum value
24454	Fmp4TimedMetadataBehaviorNoPassthrough = "NO_PASSTHROUGH"
24455
24456	// Fmp4TimedMetadataBehaviorPassthrough is a Fmp4TimedMetadataBehavior enum value
24457	Fmp4TimedMetadataBehaviorPassthrough = "PASSTHROUGH"
24458)
24459
24460// Follow reference point.
24461const (
24462	// FollowPointEnd is a FollowPoint enum value
24463	FollowPointEnd = "END"
24464
24465	// FollowPointStart is a FollowPoint enum value
24466	FollowPointStart = "START"
24467)
24468
24469// Frame Capture Interval Unit
24470const (
24471	// FrameCaptureIntervalUnitMilliseconds is a FrameCaptureIntervalUnit enum value
24472	FrameCaptureIntervalUnitMilliseconds = "MILLISECONDS"
24473
24474	// FrameCaptureIntervalUnitSeconds is a FrameCaptureIntervalUnit enum value
24475	FrameCaptureIntervalUnitSeconds = "SECONDS"
24476)
24477
24478// Global Configuration Input End Action
24479const (
24480	// GlobalConfigurationInputEndActionNone is a GlobalConfigurationInputEndAction enum value
24481	GlobalConfigurationInputEndActionNone = "NONE"
24482
24483	// GlobalConfigurationInputEndActionSwitchAndLoopInputs is a GlobalConfigurationInputEndAction enum value
24484	GlobalConfigurationInputEndActionSwitchAndLoopInputs = "SWITCH_AND_LOOP_INPUTS"
24485)
24486
24487// Global Configuration Low Framerate Inputs
24488const (
24489	// GlobalConfigurationLowFramerateInputsDisabled is a GlobalConfigurationLowFramerateInputs enum value
24490	GlobalConfigurationLowFramerateInputsDisabled = "DISABLED"
24491
24492	// GlobalConfigurationLowFramerateInputsEnabled is a GlobalConfigurationLowFramerateInputs enum value
24493	GlobalConfigurationLowFramerateInputsEnabled = "ENABLED"
24494)
24495
24496// Global Configuration Output Locking Mode
24497const (
24498	// GlobalConfigurationOutputLockingModeEpochLocking is a GlobalConfigurationOutputLockingMode enum value
24499	GlobalConfigurationOutputLockingModeEpochLocking = "EPOCH_LOCKING"
24500
24501	// GlobalConfigurationOutputLockingModePipelineLocking is a GlobalConfigurationOutputLockingMode enum value
24502	GlobalConfigurationOutputLockingModePipelineLocking = "PIPELINE_LOCKING"
24503)
24504
24505// Global Configuration Output Timing Source
24506const (
24507	// GlobalConfigurationOutputTimingSourceInputClock is a GlobalConfigurationOutputTimingSource enum value
24508	GlobalConfigurationOutputTimingSourceInputClock = "INPUT_CLOCK"
24509
24510	// GlobalConfigurationOutputTimingSourceSystemClock is a GlobalConfigurationOutputTimingSource enum value
24511	GlobalConfigurationOutputTimingSourceSystemClock = "SYSTEM_CLOCK"
24512)
24513
24514// H264 Adaptive Quantization
24515const (
24516	// H264AdaptiveQuantizationHigh is a H264AdaptiveQuantization enum value
24517	H264AdaptiveQuantizationHigh = "HIGH"
24518
24519	// H264AdaptiveQuantizationHigher is a H264AdaptiveQuantization enum value
24520	H264AdaptiveQuantizationHigher = "HIGHER"
24521
24522	// H264AdaptiveQuantizationLow is a H264AdaptiveQuantization enum value
24523	H264AdaptiveQuantizationLow = "LOW"
24524
24525	// H264AdaptiveQuantizationMax is a H264AdaptiveQuantization enum value
24526	H264AdaptiveQuantizationMax = "MAX"
24527
24528	// H264AdaptiveQuantizationMedium is a H264AdaptiveQuantization enum value
24529	H264AdaptiveQuantizationMedium = "MEDIUM"
24530
24531	// H264AdaptiveQuantizationOff is a H264AdaptiveQuantization enum value
24532	H264AdaptiveQuantizationOff = "OFF"
24533)
24534
24535// H264 Color Metadata
24536const (
24537	// H264ColorMetadataIgnore is a H264ColorMetadata enum value
24538	H264ColorMetadataIgnore = "IGNORE"
24539
24540	// H264ColorMetadataInsert is a H264ColorMetadata enum value
24541	H264ColorMetadataInsert = "INSERT"
24542)
24543
24544// H264 Entropy Encoding
24545const (
24546	// H264EntropyEncodingCabac is a H264EntropyEncoding enum value
24547	H264EntropyEncodingCabac = "CABAC"
24548
24549	// H264EntropyEncodingCavlc is a H264EntropyEncoding enum value
24550	H264EntropyEncodingCavlc = "CAVLC"
24551)
24552
24553// H264 Flicker Aq
24554const (
24555	// H264FlickerAqDisabled is a H264FlickerAq enum value
24556	H264FlickerAqDisabled = "DISABLED"
24557
24558	// H264FlickerAqEnabled is a H264FlickerAq enum value
24559	H264FlickerAqEnabled = "ENABLED"
24560)
24561
24562// H264 Force Field Pictures
24563const (
24564	// H264ForceFieldPicturesDisabled is a H264ForceFieldPictures enum value
24565	H264ForceFieldPicturesDisabled = "DISABLED"
24566
24567	// H264ForceFieldPicturesEnabled is a H264ForceFieldPictures enum value
24568	H264ForceFieldPicturesEnabled = "ENABLED"
24569)
24570
24571// H264 Framerate Control
24572const (
24573	// H264FramerateControlInitializeFromSource is a H264FramerateControl enum value
24574	H264FramerateControlInitializeFromSource = "INITIALIZE_FROM_SOURCE"
24575
24576	// H264FramerateControlSpecified is a H264FramerateControl enum value
24577	H264FramerateControlSpecified = "SPECIFIED"
24578)
24579
24580// H264 Gop BReference
24581const (
24582	// H264GopBReferenceDisabled is a H264GopBReference enum value
24583	H264GopBReferenceDisabled = "DISABLED"
24584
24585	// H264GopBReferenceEnabled is a H264GopBReference enum value
24586	H264GopBReferenceEnabled = "ENABLED"
24587)
24588
24589// H264 Gop Size Units
24590const (
24591	// H264GopSizeUnitsFrames is a H264GopSizeUnits enum value
24592	H264GopSizeUnitsFrames = "FRAMES"
24593
24594	// H264GopSizeUnitsSeconds is a H264GopSizeUnits enum value
24595	H264GopSizeUnitsSeconds = "SECONDS"
24596)
24597
24598// H264 Level
24599const (
24600	// H264LevelH264Level1 is a H264Level enum value
24601	H264LevelH264Level1 = "H264_LEVEL_1"
24602
24603	// H264LevelH264Level11 is a H264Level enum value
24604	H264LevelH264Level11 = "H264_LEVEL_1_1"
24605
24606	// H264LevelH264Level12 is a H264Level enum value
24607	H264LevelH264Level12 = "H264_LEVEL_1_2"
24608
24609	// H264LevelH264Level13 is a H264Level enum value
24610	H264LevelH264Level13 = "H264_LEVEL_1_3"
24611
24612	// H264LevelH264Level2 is a H264Level enum value
24613	H264LevelH264Level2 = "H264_LEVEL_2"
24614
24615	// H264LevelH264Level21 is a H264Level enum value
24616	H264LevelH264Level21 = "H264_LEVEL_2_1"
24617
24618	// H264LevelH264Level22 is a H264Level enum value
24619	H264LevelH264Level22 = "H264_LEVEL_2_2"
24620
24621	// H264LevelH264Level3 is a H264Level enum value
24622	H264LevelH264Level3 = "H264_LEVEL_3"
24623
24624	// H264LevelH264Level31 is a H264Level enum value
24625	H264LevelH264Level31 = "H264_LEVEL_3_1"
24626
24627	// H264LevelH264Level32 is a H264Level enum value
24628	H264LevelH264Level32 = "H264_LEVEL_3_2"
24629
24630	// H264LevelH264Level4 is a H264Level enum value
24631	H264LevelH264Level4 = "H264_LEVEL_4"
24632
24633	// H264LevelH264Level41 is a H264Level enum value
24634	H264LevelH264Level41 = "H264_LEVEL_4_1"
24635
24636	// H264LevelH264Level42 is a H264Level enum value
24637	H264LevelH264Level42 = "H264_LEVEL_4_2"
24638
24639	// H264LevelH264Level5 is a H264Level enum value
24640	H264LevelH264Level5 = "H264_LEVEL_5"
24641
24642	// H264LevelH264Level51 is a H264Level enum value
24643	H264LevelH264Level51 = "H264_LEVEL_5_1"
24644
24645	// H264LevelH264Level52 is a H264Level enum value
24646	H264LevelH264Level52 = "H264_LEVEL_5_2"
24647
24648	// H264LevelH264LevelAuto is a H264Level enum value
24649	H264LevelH264LevelAuto = "H264_LEVEL_AUTO"
24650)
24651
24652// H264 Look Ahead Rate Control
24653const (
24654	// H264LookAheadRateControlHigh is a H264LookAheadRateControl enum value
24655	H264LookAheadRateControlHigh = "HIGH"
24656
24657	// H264LookAheadRateControlLow is a H264LookAheadRateControl enum value
24658	H264LookAheadRateControlLow = "LOW"
24659
24660	// H264LookAheadRateControlMedium is a H264LookAheadRateControl enum value
24661	H264LookAheadRateControlMedium = "MEDIUM"
24662)
24663
24664// H264 Par Control
24665const (
24666	// H264ParControlInitializeFromSource is a H264ParControl enum value
24667	H264ParControlInitializeFromSource = "INITIALIZE_FROM_SOURCE"
24668
24669	// H264ParControlSpecified is a H264ParControl enum value
24670	H264ParControlSpecified = "SPECIFIED"
24671)
24672
24673// H264 Profile
24674const (
24675	// H264ProfileBaseline is a H264Profile enum value
24676	H264ProfileBaseline = "BASELINE"
24677
24678	// H264ProfileHigh is a H264Profile enum value
24679	H264ProfileHigh = "HIGH"
24680
24681	// H264ProfileHigh10bit is a H264Profile enum value
24682	H264ProfileHigh10bit = "HIGH_10BIT"
24683
24684	// H264ProfileHigh422 is a H264Profile enum value
24685	H264ProfileHigh422 = "HIGH_422"
24686
24687	// H264ProfileHigh42210bit is a H264Profile enum value
24688	H264ProfileHigh42210bit = "HIGH_422_10BIT"
24689
24690	// H264ProfileMain is a H264Profile enum value
24691	H264ProfileMain = "MAIN"
24692)
24693
24694// H264 Quality Level
24695const (
24696	// H264QualityLevelEnhancedQuality is a H264QualityLevel enum value
24697	H264QualityLevelEnhancedQuality = "ENHANCED_QUALITY"
24698
24699	// H264QualityLevelStandardQuality is a H264QualityLevel enum value
24700	H264QualityLevelStandardQuality = "STANDARD_QUALITY"
24701)
24702
24703// H264 Rate Control Mode
24704const (
24705	// H264RateControlModeCbr is a H264RateControlMode enum value
24706	H264RateControlModeCbr = "CBR"
24707
24708	// H264RateControlModeMultiplex is a H264RateControlMode enum value
24709	H264RateControlModeMultiplex = "MULTIPLEX"
24710
24711	// H264RateControlModeQvbr is a H264RateControlMode enum value
24712	H264RateControlModeQvbr = "QVBR"
24713
24714	// H264RateControlModeVbr is a H264RateControlMode enum value
24715	H264RateControlModeVbr = "VBR"
24716)
24717
24718// H264 Scan Type
24719const (
24720	// H264ScanTypeInterlaced is a H264ScanType enum value
24721	H264ScanTypeInterlaced = "INTERLACED"
24722
24723	// H264ScanTypeProgressive is a H264ScanType enum value
24724	H264ScanTypeProgressive = "PROGRESSIVE"
24725)
24726
24727// H264 Scene Change Detect
24728const (
24729	// H264SceneChangeDetectDisabled is a H264SceneChangeDetect enum value
24730	H264SceneChangeDetectDisabled = "DISABLED"
24731
24732	// H264SceneChangeDetectEnabled is a H264SceneChangeDetect enum value
24733	H264SceneChangeDetectEnabled = "ENABLED"
24734)
24735
24736// H264 Spatial Aq
24737const (
24738	// H264SpatialAqDisabled is a H264SpatialAq enum value
24739	H264SpatialAqDisabled = "DISABLED"
24740
24741	// H264SpatialAqEnabled is a H264SpatialAq enum value
24742	H264SpatialAqEnabled = "ENABLED"
24743)
24744
24745// H264 Sub Gop Length
24746const (
24747	// H264SubGopLengthDynamic is a H264SubGopLength enum value
24748	H264SubGopLengthDynamic = "DYNAMIC"
24749
24750	// H264SubGopLengthFixed is a H264SubGopLength enum value
24751	H264SubGopLengthFixed = "FIXED"
24752)
24753
24754// H264 Syntax
24755const (
24756	// H264SyntaxDefault is a H264Syntax enum value
24757	H264SyntaxDefault = "DEFAULT"
24758
24759	// H264SyntaxRp2027 is a H264Syntax enum value
24760	H264SyntaxRp2027 = "RP2027"
24761)
24762
24763// H264 Temporal Aq
24764const (
24765	// H264TemporalAqDisabled is a H264TemporalAq enum value
24766	H264TemporalAqDisabled = "DISABLED"
24767
24768	// H264TemporalAqEnabled is a H264TemporalAq enum value
24769	H264TemporalAqEnabled = "ENABLED"
24770)
24771
24772// H264 Timecode Insertion Behavior
24773const (
24774	// H264TimecodeInsertionBehaviorDisabled is a H264TimecodeInsertionBehavior enum value
24775	H264TimecodeInsertionBehaviorDisabled = "DISABLED"
24776
24777	// H264TimecodeInsertionBehaviorPicTimingSei is a H264TimecodeInsertionBehavior enum value
24778	H264TimecodeInsertionBehaviorPicTimingSei = "PIC_TIMING_SEI"
24779)
24780
24781// H265 Adaptive Quantization
24782const (
24783	// H265AdaptiveQuantizationHigh is a H265AdaptiveQuantization enum value
24784	H265AdaptiveQuantizationHigh = "HIGH"
24785
24786	// H265AdaptiveQuantizationHigher is a H265AdaptiveQuantization enum value
24787	H265AdaptiveQuantizationHigher = "HIGHER"
24788
24789	// H265AdaptiveQuantizationLow is a H265AdaptiveQuantization enum value
24790	H265AdaptiveQuantizationLow = "LOW"
24791
24792	// H265AdaptiveQuantizationMax is a H265AdaptiveQuantization enum value
24793	H265AdaptiveQuantizationMax = "MAX"
24794
24795	// H265AdaptiveQuantizationMedium is a H265AdaptiveQuantization enum value
24796	H265AdaptiveQuantizationMedium = "MEDIUM"
24797
24798	// H265AdaptiveQuantizationOff is a H265AdaptiveQuantization enum value
24799	H265AdaptiveQuantizationOff = "OFF"
24800)
24801
24802// H265 Alternative Transfer Function
24803const (
24804	// H265AlternativeTransferFunctionInsert is a H265AlternativeTransferFunction enum value
24805	H265AlternativeTransferFunctionInsert = "INSERT"
24806
24807	// H265AlternativeTransferFunctionOmit is a H265AlternativeTransferFunction enum value
24808	H265AlternativeTransferFunctionOmit = "OMIT"
24809)
24810
24811// H265 Color Metadata
24812const (
24813	// H265ColorMetadataIgnore is a H265ColorMetadata enum value
24814	H265ColorMetadataIgnore = "IGNORE"
24815
24816	// H265ColorMetadataInsert is a H265ColorMetadata enum value
24817	H265ColorMetadataInsert = "INSERT"
24818)
24819
24820// H265 Flicker Aq
24821const (
24822	// H265FlickerAqDisabled is a H265FlickerAq enum value
24823	H265FlickerAqDisabled = "DISABLED"
24824
24825	// H265FlickerAqEnabled is a H265FlickerAq enum value
24826	H265FlickerAqEnabled = "ENABLED"
24827)
24828
24829// H265 Gop Size Units
24830const (
24831	// H265GopSizeUnitsFrames is a H265GopSizeUnits enum value
24832	H265GopSizeUnitsFrames = "FRAMES"
24833
24834	// H265GopSizeUnitsSeconds is a H265GopSizeUnits enum value
24835	H265GopSizeUnitsSeconds = "SECONDS"
24836)
24837
24838// H265 Level
24839const (
24840	// H265LevelH265Level1 is a H265Level enum value
24841	H265LevelH265Level1 = "H265_LEVEL_1"
24842
24843	// H265LevelH265Level2 is a H265Level enum value
24844	H265LevelH265Level2 = "H265_LEVEL_2"
24845
24846	// H265LevelH265Level21 is a H265Level enum value
24847	H265LevelH265Level21 = "H265_LEVEL_2_1"
24848
24849	// H265LevelH265Level3 is a H265Level enum value
24850	H265LevelH265Level3 = "H265_LEVEL_3"
24851
24852	// H265LevelH265Level31 is a H265Level enum value
24853	H265LevelH265Level31 = "H265_LEVEL_3_1"
24854
24855	// H265LevelH265Level4 is a H265Level enum value
24856	H265LevelH265Level4 = "H265_LEVEL_4"
24857
24858	// H265LevelH265Level41 is a H265Level enum value
24859	H265LevelH265Level41 = "H265_LEVEL_4_1"
24860
24861	// H265LevelH265Level5 is a H265Level enum value
24862	H265LevelH265Level5 = "H265_LEVEL_5"
24863
24864	// H265LevelH265Level51 is a H265Level enum value
24865	H265LevelH265Level51 = "H265_LEVEL_5_1"
24866
24867	// H265LevelH265Level52 is a H265Level enum value
24868	H265LevelH265Level52 = "H265_LEVEL_5_2"
24869
24870	// H265LevelH265Level6 is a H265Level enum value
24871	H265LevelH265Level6 = "H265_LEVEL_6"
24872
24873	// H265LevelH265Level61 is a H265Level enum value
24874	H265LevelH265Level61 = "H265_LEVEL_6_1"
24875
24876	// H265LevelH265Level62 is a H265Level enum value
24877	H265LevelH265Level62 = "H265_LEVEL_6_2"
24878
24879	// H265LevelH265LevelAuto is a H265Level enum value
24880	H265LevelH265LevelAuto = "H265_LEVEL_AUTO"
24881)
24882
24883// H265 Look Ahead Rate Control
24884const (
24885	// H265LookAheadRateControlHigh is a H265LookAheadRateControl enum value
24886	H265LookAheadRateControlHigh = "HIGH"
24887
24888	// H265LookAheadRateControlLow is a H265LookAheadRateControl enum value
24889	H265LookAheadRateControlLow = "LOW"
24890
24891	// H265LookAheadRateControlMedium is a H265LookAheadRateControl enum value
24892	H265LookAheadRateControlMedium = "MEDIUM"
24893)
24894
24895// H265 Profile
24896const (
24897	// H265ProfileMain is a H265Profile enum value
24898	H265ProfileMain = "MAIN"
24899
24900	// H265ProfileMain10bit is a H265Profile enum value
24901	H265ProfileMain10bit = "MAIN_10BIT"
24902)
24903
24904// H265 Rate Control Mode
24905const (
24906	// H265RateControlModeCbr is a H265RateControlMode enum value
24907	H265RateControlModeCbr = "CBR"
24908
24909	// H265RateControlModeMultiplex is a H265RateControlMode enum value
24910	H265RateControlModeMultiplex = "MULTIPLEX"
24911
24912	// H265RateControlModeQvbr is a H265RateControlMode enum value
24913	H265RateControlModeQvbr = "QVBR"
24914)
24915
24916// H265 Scan Type
24917const (
24918	// H265ScanTypeProgressive is a H265ScanType enum value
24919	H265ScanTypeProgressive = "PROGRESSIVE"
24920)
24921
24922// H265 Scene Change Detect
24923const (
24924	// H265SceneChangeDetectDisabled is a H265SceneChangeDetect enum value
24925	H265SceneChangeDetectDisabled = "DISABLED"
24926
24927	// H265SceneChangeDetectEnabled is a H265SceneChangeDetect enum value
24928	H265SceneChangeDetectEnabled = "ENABLED"
24929)
24930
24931// H265 Tier
24932const (
24933	// H265TierHigh is a H265Tier enum value
24934	H265TierHigh = "HIGH"
24935
24936	// H265TierMain is a H265Tier enum value
24937	H265TierMain = "MAIN"
24938)
24939
24940// H265 Timecode Insertion Behavior
24941const (
24942	// H265TimecodeInsertionBehaviorDisabled is a H265TimecodeInsertionBehavior enum value
24943	H265TimecodeInsertionBehaviorDisabled = "DISABLED"
24944
24945	// H265TimecodeInsertionBehaviorPicTimingSei is a H265TimecodeInsertionBehavior enum value
24946	H265TimecodeInsertionBehaviorPicTimingSei = "PIC_TIMING_SEI"
24947)
24948
24949// Hls Ad Markers
24950const (
24951	// HlsAdMarkersAdobe is a HlsAdMarkers enum value
24952	HlsAdMarkersAdobe = "ADOBE"
24953
24954	// HlsAdMarkersElemental is a HlsAdMarkers enum value
24955	HlsAdMarkersElemental = "ELEMENTAL"
24956
24957	// HlsAdMarkersElementalScte35 is a HlsAdMarkers enum value
24958	HlsAdMarkersElementalScte35 = "ELEMENTAL_SCTE35"
24959)
24960
24961// Hls Akamai Http Transfer Mode
24962const (
24963	// HlsAkamaiHttpTransferModeChunked is a HlsAkamaiHttpTransferMode enum value
24964	HlsAkamaiHttpTransferModeChunked = "CHUNKED"
24965
24966	// HlsAkamaiHttpTransferModeNonChunked is a HlsAkamaiHttpTransferMode enum value
24967	HlsAkamaiHttpTransferModeNonChunked = "NON_CHUNKED"
24968)
24969
24970// Hls Caption Language Setting
24971const (
24972	// HlsCaptionLanguageSettingInsert is a HlsCaptionLanguageSetting enum value
24973	HlsCaptionLanguageSettingInsert = "INSERT"
24974
24975	// HlsCaptionLanguageSettingNone is a HlsCaptionLanguageSetting enum value
24976	HlsCaptionLanguageSettingNone = "NONE"
24977
24978	// HlsCaptionLanguageSettingOmit is a HlsCaptionLanguageSetting enum value
24979	HlsCaptionLanguageSettingOmit = "OMIT"
24980)
24981
24982// Hls Client Cache
24983const (
24984	// HlsClientCacheDisabled is a HlsClientCache enum value
24985	HlsClientCacheDisabled = "DISABLED"
24986
24987	// HlsClientCacheEnabled is a HlsClientCache enum value
24988	HlsClientCacheEnabled = "ENABLED"
24989)
24990
24991// Hls Codec Specification
24992const (
24993	// HlsCodecSpecificationRfc4281 is a HlsCodecSpecification enum value
24994	HlsCodecSpecificationRfc4281 = "RFC_4281"
24995
24996	// HlsCodecSpecificationRfc6381 is a HlsCodecSpecification enum value
24997	HlsCodecSpecificationRfc6381 = "RFC_6381"
24998)
24999
25000// Hls Directory Structure
25001const (
25002	// HlsDirectoryStructureSingleDirectory is a HlsDirectoryStructure enum value
25003	HlsDirectoryStructureSingleDirectory = "SINGLE_DIRECTORY"
25004
25005	// HlsDirectoryStructureSubdirectoryPerStream is a HlsDirectoryStructure enum value
25006	HlsDirectoryStructureSubdirectoryPerStream = "SUBDIRECTORY_PER_STREAM"
25007)
25008
25009// Hls Encryption Type
25010const (
25011	// HlsEncryptionTypeAes128 is a HlsEncryptionType enum value
25012	HlsEncryptionTypeAes128 = "AES128"
25013
25014	// HlsEncryptionTypeSampleAes is a HlsEncryptionType enum value
25015	HlsEncryptionTypeSampleAes = "SAMPLE_AES"
25016)
25017
25018// Hls H265 Packaging Type
25019const (
25020	// HlsH265PackagingTypeHev1 is a HlsH265PackagingType enum value
25021	HlsH265PackagingTypeHev1 = "HEV1"
25022
25023	// HlsH265PackagingTypeHvc1 is a HlsH265PackagingType enum value
25024	HlsH265PackagingTypeHvc1 = "HVC1"
25025)
25026
25027// State of HLS ID3 Segment Tagging
25028const (
25029	// HlsId3SegmentTaggingStateDisabled is a HlsId3SegmentTaggingState enum value
25030	HlsId3SegmentTaggingStateDisabled = "DISABLED"
25031
25032	// HlsId3SegmentTaggingStateEnabled is a HlsId3SegmentTaggingState enum value
25033	HlsId3SegmentTaggingStateEnabled = "ENABLED"
25034)
25035
25036// Hls Iv In Manifest
25037const (
25038	// HlsIvInManifestExclude is a HlsIvInManifest enum value
25039	HlsIvInManifestExclude = "EXCLUDE"
25040
25041	// HlsIvInManifestInclude is a HlsIvInManifest enum value
25042	HlsIvInManifestInclude = "INCLUDE"
25043)
25044
25045// Hls Iv Source
25046const (
25047	// HlsIvSourceExplicit is a HlsIvSource enum value
25048	HlsIvSourceExplicit = "EXPLICIT"
25049
25050	// HlsIvSourceFollowsSegmentNumber is a HlsIvSource enum value
25051	HlsIvSourceFollowsSegmentNumber = "FOLLOWS_SEGMENT_NUMBER"
25052)
25053
25054// Hls Manifest Compression
25055const (
25056	// HlsManifestCompressionGzip is a HlsManifestCompression enum value
25057	HlsManifestCompressionGzip = "GZIP"
25058
25059	// HlsManifestCompressionNone is a HlsManifestCompression enum value
25060	HlsManifestCompressionNone = "NONE"
25061)
25062
25063// Hls Manifest Duration Format
25064const (
25065	// HlsManifestDurationFormatFloatingPoint is a HlsManifestDurationFormat enum value
25066	HlsManifestDurationFormatFloatingPoint = "FLOATING_POINT"
25067
25068	// HlsManifestDurationFormatInteger is a HlsManifestDurationFormat enum value
25069	HlsManifestDurationFormatInteger = "INTEGER"
25070)
25071
25072// Hls Media Store Storage Class
25073const (
25074	// HlsMediaStoreStorageClassTemporal is a HlsMediaStoreStorageClass enum value
25075	HlsMediaStoreStorageClassTemporal = "TEMPORAL"
25076)
25077
25078// Hls Mode
25079const (
25080	// HlsModeLive is a HlsMode enum value
25081	HlsModeLive = "LIVE"
25082
25083	// HlsModeVod is a HlsMode enum value
25084	HlsModeVod = "VOD"
25085)
25086
25087// Hls Output Selection
25088const (
25089	// HlsOutputSelectionManifestsAndSegments is a HlsOutputSelection enum value
25090	HlsOutputSelectionManifestsAndSegments = "MANIFESTS_AND_SEGMENTS"
25091
25092	// HlsOutputSelectionSegmentsOnly is a HlsOutputSelection enum value
25093	HlsOutputSelectionSegmentsOnly = "SEGMENTS_ONLY"
25094)
25095
25096// Hls Program Date Time
25097const (
25098	// HlsProgramDateTimeExclude is a HlsProgramDateTime enum value
25099	HlsProgramDateTimeExclude = "EXCLUDE"
25100
25101	// HlsProgramDateTimeInclude is a HlsProgramDateTime enum value
25102	HlsProgramDateTimeInclude = "INCLUDE"
25103)
25104
25105// Hls Redundant Manifest
25106const (
25107	// HlsRedundantManifestDisabled is a HlsRedundantManifest enum value
25108	HlsRedundantManifestDisabled = "DISABLED"
25109
25110	// HlsRedundantManifestEnabled is a HlsRedundantManifest enum value
25111	HlsRedundantManifestEnabled = "ENABLED"
25112)
25113
25114// Hls Segmentation Mode
25115const (
25116	// HlsSegmentationModeUseInputSegmentation is a HlsSegmentationMode enum value
25117	HlsSegmentationModeUseInputSegmentation = "USE_INPUT_SEGMENTATION"
25118
25119	// HlsSegmentationModeUseSegmentDuration is a HlsSegmentationMode enum value
25120	HlsSegmentationModeUseSegmentDuration = "USE_SEGMENT_DURATION"
25121)
25122
25123// Hls Stream Inf Resolution
25124const (
25125	// HlsStreamInfResolutionExclude is a HlsStreamInfResolution enum value
25126	HlsStreamInfResolutionExclude = "EXCLUDE"
25127
25128	// HlsStreamInfResolutionInclude is a HlsStreamInfResolution enum value
25129	HlsStreamInfResolutionInclude = "INCLUDE"
25130)
25131
25132// Hls Timed Metadata Id3 Frame
25133const (
25134	// HlsTimedMetadataId3FrameNone is a HlsTimedMetadataId3Frame enum value
25135	HlsTimedMetadataId3FrameNone = "NONE"
25136
25137	// HlsTimedMetadataId3FramePriv is a HlsTimedMetadataId3Frame enum value
25138	HlsTimedMetadataId3FramePriv = "PRIV"
25139
25140	// HlsTimedMetadataId3FrameTdrl is a HlsTimedMetadataId3Frame enum value
25141	HlsTimedMetadataId3FrameTdrl = "TDRL"
25142)
25143
25144// Hls Ts File Mode
25145const (
25146	// HlsTsFileModeSegmentedFiles is a HlsTsFileMode enum value
25147	HlsTsFileModeSegmentedFiles = "SEGMENTED_FILES"
25148
25149	// HlsTsFileModeSingleFile is a HlsTsFileMode enum value
25150	HlsTsFileModeSingleFile = "SINGLE_FILE"
25151)
25152
25153// Hls Webdav Http Transfer Mode
25154const (
25155	// HlsWebdavHttpTransferModeChunked is a HlsWebdavHttpTransferMode enum value
25156	HlsWebdavHttpTransferModeChunked = "CHUNKED"
25157
25158	// HlsWebdavHttpTransferModeNonChunked is a HlsWebdavHttpTransferMode enum value
25159	HlsWebdavHttpTransferModeNonChunked = "NON_CHUNKED"
25160)
25161
25162// When set to "standard", an I-Frame only playlist will be written out for
25163// each video output in the output group. This I-Frame only playlist will contain
25164// byte range offsets pointing to the I-frame(s) in each segment.
25165const (
25166	// IFrameOnlyPlaylistTypeDisabled is a IFrameOnlyPlaylistType enum value
25167	IFrameOnlyPlaylistTypeDisabled = "DISABLED"
25168
25169	// IFrameOnlyPlaylistTypeStandard is a IFrameOnlyPlaylistType enum value
25170	IFrameOnlyPlaylistTypeStandard = "STANDARD"
25171)
25172
25173// A standard input has two sources and a single pipeline input only has one.
25174const (
25175	// InputClassStandard is a InputClass enum value
25176	InputClassStandard = "STANDARD"
25177
25178	// InputClassSinglePipeline is a InputClass enum value
25179	InputClassSinglePipeline = "SINGLE_PIPELINE"
25180)
25181
25182// codec in increasing order of complexity
25183const (
25184	// InputCodecMpeg2 is a InputCodec enum value
25185	InputCodecMpeg2 = "MPEG2"
25186
25187	// InputCodecAvc is a InputCodec enum value
25188	InputCodecAvc = "AVC"
25189
25190	// InputCodecHevc is a InputCodec enum value
25191	InputCodecHevc = "HEVC"
25192)
25193
25194// Input Deblock Filter
25195const (
25196	// InputDeblockFilterDisabled is a InputDeblockFilter enum value
25197	InputDeblockFilterDisabled = "DISABLED"
25198
25199	// InputDeblockFilterEnabled is a InputDeblockFilter enum value
25200	InputDeblockFilterEnabled = "ENABLED"
25201)
25202
25203// Input Denoise Filter
25204const (
25205	// InputDenoiseFilterDisabled is a InputDenoiseFilter enum value
25206	InputDenoiseFilterDisabled = "DISABLED"
25207
25208	// InputDenoiseFilterEnabled is a InputDenoiseFilter enum value
25209	InputDenoiseFilterEnabled = "ENABLED"
25210)
25211
25212// The source at the input device that is currently active.
25213const (
25214	// InputDeviceActiveInputHdmi is a InputDeviceActiveInput enum value
25215	InputDeviceActiveInputHdmi = "HDMI"
25216
25217	// InputDeviceActiveInputSdi is a InputDeviceActiveInput enum value
25218	InputDeviceActiveInputSdi = "SDI"
25219)
25220
25221// The source to activate (use) from the input device.
25222const (
25223	// InputDeviceConfiguredInputAuto is a InputDeviceConfiguredInput enum value
25224	InputDeviceConfiguredInputAuto = "AUTO"
25225
25226	// InputDeviceConfiguredInputHdmi is a InputDeviceConfiguredInput enum value
25227	InputDeviceConfiguredInputHdmi = "HDMI"
25228
25229	// InputDeviceConfiguredInputSdi is a InputDeviceConfiguredInput enum value
25230	InputDeviceConfiguredInputSdi = "SDI"
25231)
25232
25233// The state of the connection between the input device and AWS.
25234const (
25235	// InputDeviceConnectionStateDisconnected is a InputDeviceConnectionState enum value
25236	InputDeviceConnectionStateDisconnected = "DISCONNECTED"
25237
25238	// InputDeviceConnectionStateConnected is a InputDeviceConnectionState enum value
25239	InputDeviceConnectionStateConnected = "CONNECTED"
25240)
25241
25242// Specifies whether the input device has been configured (outside of MediaLive)
25243// to use a dynamic IP address assignment (DHCP) or a static IP address.
25244const (
25245	// InputDeviceIpSchemeStatic is a InputDeviceIpScheme enum value
25246	InputDeviceIpSchemeStatic = "STATIC"
25247
25248	// InputDeviceIpSchemeDhcp is a InputDeviceIpScheme enum value
25249	InputDeviceIpSchemeDhcp = "DHCP"
25250)
25251
25252// The scan type of the video source.
25253const (
25254	// InputDeviceScanTypeInterlaced is a InputDeviceScanType enum value
25255	InputDeviceScanTypeInterlaced = "INTERLACED"
25256
25257	// InputDeviceScanTypeProgressive is a InputDeviceScanType enum value
25258	InputDeviceScanTypeProgressive = "PROGRESSIVE"
25259)
25260
25261// The state of the input device.
25262const (
25263	// InputDeviceStateIdle is a InputDeviceState enum value
25264	InputDeviceStateIdle = "IDLE"
25265
25266	// InputDeviceStateStreaming is a InputDeviceState enum value
25267	InputDeviceStateStreaming = "STREAMING"
25268)
25269
25270// The type of the input device. For an AWS Elemental Link device that outputs
25271// resolutions up to 1080, choose "HD".
25272const (
25273	// InputDeviceTypeHd is a InputDeviceType enum value
25274	InputDeviceTypeHd = "HD"
25275)
25276
25277// Input Filter
25278const (
25279	// InputFilterAuto is a InputFilter enum value
25280	InputFilterAuto = "AUTO"
25281
25282	// InputFilterDisabled is a InputFilter enum value
25283	InputFilterDisabled = "DISABLED"
25284
25285	// InputFilterForced is a InputFilter enum value
25286	InputFilterForced = "FORCED"
25287)
25288
25289// Input Loss Action For Hls Out
25290const (
25291	// InputLossActionForHlsOutEmitOutput is a InputLossActionForHlsOut enum value
25292	InputLossActionForHlsOutEmitOutput = "EMIT_OUTPUT"
25293
25294	// InputLossActionForHlsOutPauseOutput is a InputLossActionForHlsOut enum value
25295	InputLossActionForHlsOutPauseOutput = "PAUSE_OUTPUT"
25296)
25297
25298// Input Loss Action For Ms Smooth Out
25299const (
25300	// InputLossActionForMsSmoothOutEmitOutput is a InputLossActionForMsSmoothOut enum value
25301	InputLossActionForMsSmoothOutEmitOutput = "EMIT_OUTPUT"
25302
25303	// InputLossActionForMsSmoothOutPauseOutput is a InputLossActionForMsSmoothOut enum value
25304	InputLossActionForMsSmoothOutPauseOutput = "PAUSE_OUTPUT"
25305)
25306
25307// Input Loss Action For Rtmp Out
25308const (
25309	// InputLossActionForRtmpOutEmitOutput is a InputLossActionForRtmpOut enum value
25310	InputLossActionForRtmpOutEmitOutput = "EMIT_OUTPUT"
25311
25312	// InputLossActionForRtmpOutPauseOutput is a InputLossActionForRtmpOut enum value
25313	InputLossActionForRtmpOutPauseOutput = "PAUSE_OUTPUT"
25314)
25315
25316// Input Loss Action For Udp Out
25317const (
25318	// InputLossActionForUdpOutDropProgram is a InputLossActionForUdpOut enum value
25319	InputLossActionForUdpOutDropProgram = "DROP_PROGRAM"
25320
25321	// InputLossActionForUdpOutDropTs is a InputLossActionForUdpOut enum value
25322	InputLossActionForUdpOutDropTs = "DROP_TS"
25323
25324	// InputLossActionForUdpOutEmitProgram is a InputLossActionForUdpOut enum value
25325	InputLossActionForUdpOutEmitProgram = "EMIT_PROGRAM"
25326)
25327
25328// Input Loss Image Type
25329const (
25330	// InputLossImageTypeColor is a InputLossImageType enum value
25331	InputLossImageTypeColor = "COLOR"
25332
25333	// InputLossImageTypeSlate is a InputLossImageType enum value
25334	InputLossImageTypeSlate = "SLATE"
25335)
25336
25337// Maximum input bitrate in megabits per second. Bitrates up to 50 Mbps are
25338// supported currently.
25339const (
25340	// InputMaximumBitrateMax10Mbps is a InputMaximumBitrate enum value
25341	InputMaximumBitrateMax10Mbps = "MAX_10_MBPS"
25342
25343	// InputMaximumBitrateMax20Mbps is a InputMaximumBitrate enum value
25344	InputMaximumBitrateMax20Mbps = "MAX_20_MBPS"
25345
25346	// InputMaximumBitrateMax50Mbps is a InputMaximumBitrate enum value
25347	InputMaximumBitrateMax50Mbps = "MAX_50_MBPS"
25348)
25349
25350// Input preference when deciding which input to make active when a previously
25351// failed input has recovered.If \"EQUAL_INPUT_PREFERENCE\", then the active
25352// input will stay active as long as it is healthy.If \"PRIMARY_INPUT_PREFERRED\",
25353// then always switch back to the primary input when it is healthy.
25354const (
25355	// InputPreferenceEqualInputPreference is a InputPreference enum value
25356	InputPreferenceEqualInputPreference = "EQUAL_INPUT_PREFERENCE"
25357
25358	// InputPreferencePrimaryInputPreferred is a InputPreference enum value
25359	InputPreferencePrimaryInputPreferred = "PRIMARY_INPUT_PREFERRED"
25360)
25361
25362// Input resolution based on lines of vertical resolution in the input; SD is
25363// less than 720 lines, HD is 720 to 1080 lines, UHD is greater than 1080 lines
25364const (
25365	// InputResolutionSd is a InputResolution enum value
25366	InputResolutionSd = "SD"
25367
25368	// InputResolutionHd is a InputResolution enum value
25369	InputResolutionHd = "HD"
25370
25371	// InputResolutionUhd is a InputResolution enum value
25372	InputResolutionUhd = "UHD"
25373)
25374
25375const (
25376	// InputSecurityGroupStateIdle is a InputSecurityGroupState enum value
25377	InputSecurityGroupStateIdle = "IDLE"
25378
25379	// InputSecurityGroupStateInUse is a InputSecurityGroupState enum value
25380	InputSecurityGroupStateInUse = "IN_USE"
25381
25382	// InputSecurityGroupStateUpdating is a InputSecurityGroupState enum value
25383	InputSecurityGroupStateUpdating = "UPDATING"
25384
25385	// InputSecurityGroupStateDeleted is a InputSecurityGroupState enum value
25386	InputSecurityGroupStateDeleted = "DELETED"
25387)
25388
25389// Input Source End Behavior
25390const (
25391	// InputSourceEndBehaviorContinue is a InputSourceEndBehavior enum value
25392	InputSourceEndBehaviorContinue = "CONTINUE"
25393
25394	// InputSourceEndBehaviorLoop is a InputSourceEndBehavior enum value
25395	InputSourceEndBehaviorLoop = "LOOP"
25396)
25397
25398// There are two types of input sources, static and dynamic. If an input source
25399// is dynamic you canchange the source url of the input dynamically using an
25400// input switch action. However, the only input typeto support a dynamic url
25401// at this time is MP4_FILE. By default all input sources are static.
25402const (
25403	// InputSourceTypeStatic is a InputSourceType enum value
25404	InputSourceTypeStatic = "STATIC"
25405
25406	// InputSourceTypeDynamic is a InputSourceType enum value
25407	InputSourceTypeDynamic = "DYNAMIC"
25408)
25409
25410const (
25411	// InputStateCreating is a InputState enum value
25412	InputStateCreating = "CREATING"
25413
25414	// InputStateDetached is a InputState enum value
25415	InputStateDetached = "DETACHED"
25416
25417	// InputStateAttached is a InputState enum value
25418	InputStateAttached = "ATTACHED"
25419
25420	// InputStateDeleting is a InputState enum value
25421	InputStateDeleting = "DELETING"
25422
25423	// InputStateDeleted is a InputState enum value
25424	InputStateDeleted = "DELETED"
25425)
25426
25427// To clip the file, you must specify the timecode for the start and end of
25428// the clip. Specify EMBEDDED to use the timecode embedded in the source content.
25429// The embedded timecode must exist in the source content, otherwise MediaLive
25430// will output black frames until it reaches the end of the source. Specify
25431// ZEROBASED to use a timecode that assumes that the first frame in the file
25432// has the timestamp 00:00:00.00. There is no default for this field, you must
25433// specify a value.
25434const (
25435	// InputTimecodeSourceZerobased is a InputTimecodeSource enum value
25436	InputTimecodeSourceZerobased = "ZEROBASED"
25437
25438	// InputTimecodeSourceEmbedded is a InputTimecodeSource enum value
25439	InputTimecodeSourceEmbedded = "EMBEDDED"
25440)
25441
25442const (
25443	// InputTypeUdpPush is a InputType enum value
25444	InputTypeUdpPush = "UDP_PUSH"
25445
25446	// InputTypeRtpPush is a InputType enum value
25447	InputTypeRtpPush = "RTP_PUSH"
25448
25449	// InputTypeRtmpPush is a InputType enum value
25450	InputTypeRtmpPush = "RTMP_PUSH"
25451
25452	// InputTypeRtmpPull is a InputType enum value
25453	InputTypeRtmpPull = "RTMP_PULL"
25454
25455	// InputTypeUrlPull is a InputType enum value
25456	InputTypeUrlPull = "URL_PULL"
25457
25458	// InputTypeMp4File is a InputType enum value
25459	InputTypeMp4File = "MP4_FILE"
25460
25461	// InputTypeMediaconnect is a InputType enum value
25462	InputTypeMediaconnect = "MEDIACONNECT"
25463
25464	// InputTypeInputDevice is a InputType enum value
25465	InputTypeInputDevice = "INPUT_DEVICE"
25466)
25467
25468// If you specify a StopTimecode in an input (in order to clip the file), you
25469// can specify if you want the clip to exclude (the default) or include the
25470// frame specified by the timecode.
25471const (
25472	// LastFrameClippingBehaviorExcludeLastFrame is a LastFrameClippingBehavior enum value
25473	LastFrameClippingBehaviorExcludeLastFrame = "EXCLUDE_LAST_FRAME"
25474
25475	// LastFrameClippingBehaviorIncludeLastFrame is a LastFrameClippingBehavior enum value
25476	LastFrameClippingBehaviorIncludeLastFrame = "INCLUDE_LAST_FRAME"
25477)
25478
25479// The log level the user wants for their channel.
25480const (
25481	// LogLevelError is a LogLevel enum value
25482	LogLevelError = "ERROR"
25483
25484	// LogLevelWarning is a LogLevel enum value
25485	LogLevelWarning = "WARNING"
25486
25487	// LogLevelInfo is a LogLevel enum value
25488	LogLevelInfo = "INFO"
25489
25490	// LogLevelDebug is a LogLevel enum value
25491	LogLevelDebug = "DEBUG"
25492
25493	// LogLevelDisabled is a LogLevel enum value
25494	LogLevelDisabled = "DISABLED"
25495)
25496
25497// M2ts Absent Input Audio Behavior
25498const (
25499	// M2tsAbsentInputAudioBehaviorDrop is a M2tsAbsentInputAudioBehavior enum value
25500	M2tsAbsentInputAudioBehaviorDrop = "DROP"
25501
25502	// M2tsAbsentInputAudioBehaviorEncodeSilence is a M2tsAbsentInputAudioBehavior enum value
25503	M2tsAbsentInputAudioBehaviorEncodeSilence = "ENCODE_SILENCE"
25504)
25505
25506// M2ts Arib
25507const (
25508	// M2tsAribDisabled is a M2tsArib enum value
25509	M2tsAribDisabled = "DISABLED"
25510
25511	// M2tsAribEnabled is a M2tsArib enum value
25512	M2tsAribEnabled = "ENABLED"
25513)
25514
25515// M2ts Arib Captions Pid Control
25516const (
25517	// M2tsAribCaptionsPidControlAuto is a M2tsAribCaptionsPidControl enum value
25518	M2tsAribCaptionsPidControlAuto = "AUTO"
25519
25520	// M2tsAribCaptionsPidControlUseConfigured is a M2tsAribCaptionsPidControl enum value
25521	M2tsAribCaptionsPidControlUseConfigured = "USE_CONFIGURED"
25522)
25523
25524// M2ts Audio Buffer Model
25525const (
25526	// M2tsAudioBufferModelAtsc is a M2tsAudioBufferModel enum value
25527	M2tsAudioBufferModelAtsc = "ATSC"
25528
25529	// M2tsAudioBufferModelDvb is a M2tsAudioBufferModel enum value
25530	M2tsAudioBufferModelDvb = "DVB"
25531)
25532
25533// M2ts Audio Interval
25534const (
25535	// M2tsAudioIntervalVideoAndFixedIntervals is a M2tsAudioInterval enum value
25536	M2tsAudioIntervalVideoAndFixedIntervals = "VIDEO_AND_FIXED_INTERVALS"
25537
25538	// M2tsAudioIntervalVideoInterval is a M2tsAudioInterval enum value
25539	M2tsAudioIntervalVideoInterval = "VIDEO_INTERVAL"
25540)
25541
25542// M2ts Audio Stream Type
25543const (
25544	// M2tsAudioStreamTypeAtsc is a M2tsAudioStreamType enum value
25545	M2tsAudioStreamTypeAtsc = "ATSC"
25546
25547	// M2tsAudioStreamTypeDvb is a M2tsAudioStreamType enum value
25548	M2tsAudioStreamTypeDvb = "DVB"
25549)
25550
25551// M2ts Buffer Model
25552const (
25553	// M2tsBufferModelMultiplex is a M2tsBufferModel enum value
25554	M2tsBufferModelMultiplex = "MULTIPLEX"
25555
25556	// M2tsBufferModelNone is a M2tsBufferModel enum value
25557	M2tsBufferModelNone = "NONE"
25558)
25559
25560// M2ts Cc Descriptor
25561const (
25562	// M2tsCcDescriptorDisabled is a M2tsCcDescriptor enum value
25563	M2tsCcDescriptorDisabled = "DISABLED"
25564
25565	// M2tsCcDescriptorEnabled is a M2tsCcDescriptor enum value
25566	M2tsCcDescriptorEnabled = "ENABLED"
25567)
25568
25569// M2ts Ebif Control
25570const (
25571	// M2tsEbifControlNone is a M2tsEbifControl enum value
25572	M2tsEbifControlNone = "NONE"
25573
25574	// M2tsEbifControlPassthrough is a M2tsEbifControl enum value
25575	M2tsEbifControlPassthrough = "PASSTHROUGH"
25576)
25577
25578// M2ts Ebp Placement
25579const (
25580	// M2tsEbpPlacementVideoAndAudioPids is a M2tsEbpPlacement enum value
25581	M2tsEbpPlacementVideoAndAudioPids = "VIDEO_AND_AUDIO_PIDS"
25582
25583	// M2tsEbpPlacementVideoPid is a M2tsEbpPlacement enum value
25584	M2tsEbpPlacementVideoPid = "VIDEO_PID"
25585)
25586
25587// M2ts Es Rate In Pes
25588const (
25589	// M2tsEsRateInPesExclude is a M2tsEsRateInPes enum value
25590	M2tsEsRateInPesExclude = "EXCLUDE"
25591
25592	// M2tsEsRateInPesInclude is a M2tsEsRateInPes enum value
25593	M2tsEsRateInPesInclude = "INCLUDE"
25594)
25595
25596// M2ts Klv
25597const (
25598	// M2tsKlvNone is a M2tsKlv enum value
25599	M2tsKlvNone = "NONE"
25600
25601	// M2tsKlvPassthrough is a M2tsKlv enum value
25602	M2tsKlvPassthrough = "PASSTHROUGH"
25603)
25604
25605// M2ts Nielsen Id3 Behavior
25606const (
25607	// M2tsNielsenId3BehaviorNoPassthrough is a M2tsNielsenId3Behavior enum value
25608	M2tsNielsenId3BehaviorNoPassthrough = "NO_PASSTHROUGH"
25609
25610	// M2tsNielsenId3BehaviorPassthrough is a M2tsNielsenId3Behavior enum value
25611	M2tsNielsenId3BehaviorPassthrough = "PASSTHROUGH"
25612)
25613
25614// M2ts Pcr Control
25615const (
25616	// M2tsPcrControlConfiguredPcrPeriod is a M2tsPcrControl enum value
25617	M2tsPcrControlConfiguredPcrPeriod = "CONFIGURED_PCR_PERIOD"
25618
25619	// M2tsPcrControlPcrEveryPesPacket is a M2tsPcrControl enum value
25620	M2tsPcrControlPcrEveryPesPacket = "PCR_EVERY_PES_PACKET"
25621)
25622
25623// M2ts Rate Mode
25624const (
25625	// M2tsRateModeCbr is a M2tsRateMode enum value
25626	M2tsRateModeCbr = "CBR"
25627
25628	// M2tsRateModeVbr is a M2tsRateMode enum value
25629	M2tsRateModeVbr = "VBR"
25630)
25631
25632// M2ts Scte35 Control
25633const (
25634	// M2tsScte35ControlNone is a M2tsScte35Control enum value
25635	M2tsScte35ControlNone = "NONE"
25636
25637	// M2tsScte35ControlPassthrough is a M2tsScte35Control enum value
25638	M2tsScte35ControlPassthrough = "PASSTHROUGH"
25639)
25640
25641// M2ts Segmentation Markers
25642const (
25643	// M2tsSegmentationMarkersEbp is a M2tsSegmentationMarkers enum value
25644	M2tsSegmentationMarkersEbp = "EBP"
25645
25646	// M2tsSegmentationMarkersEbpLegacy is a M2tsSegmentationMarkers enum value
25647	M2tsSegmentationMarkersEbpLegacy = "EBP_LEGACY"
25648
25649	// M2tsSegmentationMarkersNone is a M2tsSegmentationMarkers enum value
25650	M2tsSegmentationMarkersNone = "NONE"
25651
25652	// M2tsSegmentationMarkersPsiSegstart is a M2tsSegmentationMarkers enum value
25653	M2tsSegmentationMarkersPsiSegstart = "PSI_SEGSTART"
25654
25655	// M2tsSegmentationMarkersRaiAdapt is a M2tsSegmentationMarkers enum value
25656	M2tsSegmentationMarkersRaiAdapt = "RAI_ADAPT"
25657
25658	// M2tsSegmentationMarkersRaiSegstart is a M2tsSegmentationMarkers enum value
25659	M2tsSegmentationMarkersRaiSegstart = "RAI_SEGSTART"
25660)
25661
25662// M2ts Segmentation Style
25663const (
25664	// M2tsSegmentationStyleMaintainCadence is a M2tsSegmentationStyle enum value
25665	M2tsSegmentationStyleMaintainCadence = "MAINTAIN_CADENCE"
25666
25667	// M2tsSegmentationStyleResetCadence is a M2tsSegmentationStyle enum value
25668	M2tsSegmentationStyleResetCadence = "RESET_CADENCE"
25669)
25670
25671// M2ts Timed Metadata Behavior
25672const (
25673	// M2tsTimedMetadataBehaviorNoPassthrough is a M2tsTimedMetadataBehavior enum value
25674	M2tsTimedMetadataBehaviorNoPassthrough = "NO_PASSTHROUGH"
25675
25676	// M2tsTimedMetadataBehaviorPassthrough is a M2tsTimedMetadataBehavior enum value
25677	M2tsTimedMetadataBehaviorPassthrough = "PASSTHROUGH"
25678)
25679
25680// M3u8 Nielsen Id3 Behavior
25681const (
25682	// M3u8NielsenId3BehaviorNoPassthrough is a M3u8NielsenId3Behavior enum value
25683	M3u8NielsenId3BehaviorNoPassthrough = "NO_PASSTHROUGH"
25684
25685	// M3u8NielsenId3BehaviorPassthrough is a M3u8NielsenId3Behavior enum value
25686	M3u8NielsenId3BehaviorPassthrough = "PASSTHROUGH"
25687)
25688
25689// M3u8 Pcr Control
25690const (
25691	// M3u8PcrControlConfiguredPcrPeriod is a M3u8PcrControl enum value
25692	M3u8PcrControlConfiguredPcrPeriod = "CONFIGURED_PCR_PERIOD"
25693
25694	// M3u8PcrControlPcrEveryPesPacket is a M3u8PcrControl enum value
25695	M3u8PcrControlPcrEveryPesPacket = "PCR_EVERY_PES_PACKET"
25696)
25697
25698// M3u8 Scte35 Behavior
25699const (
25700	// M3u8Scte35BehaviorNoPassthrough is a M3u8Scte35Behavior enum value
25701	M3u8Scte35BehaviorNoPassthrough = "NO_PASSTHROUGH"
25702
25703	// M3u8Scte35BehaviorPassthrough is a M3u8Scte35Behavior enum value
25704	M3u8Scte35BehaviorPassthrough = "PASSTHROUGH"
25705)
25706
25707// M3u8 Timed Metadata Behavior
25708const (
25709	// M3u8TimedMetadataBehaviorNoPassthrough is a M3u8TimedMetadataBehavior enum value
25710	M3u8TimedMetadataBehaviorNoPassthrough = "NO_PASSTHROUGH"
25711
25712	// M3u8TimedMetadataBehaviorPassthrough is a M3u8TimedMetadataBehavior enum value
25713	M3u8TimedMetadataBehaviorPassthrough = "PASSTHROUGH"
25714)
25715
25716// Mp2 Coding Mode
25717const (
25718	// Mp2CodingModeCodingMode10 is a Mp2CodingMode enum value
25719	Mp2CodingModeCodingMode10 = "CODING_MODE_1_0"
25720
25721	// Mp2CodingModeCodingMode20 is a Mp2CodingMode enum value
25722	Mp2CodingModeCodingMode20 = "CODING_MODE_2_0"
25723)
25724
25725// Ms Smooth H265 Packaging Type
25726const (
25727	// MsSmoothH265PackagingTypeHev1 is a MsSmoothH265PackagingType enum value
25728	MsSmoothH265PackagingTypeHev1 = "HEV1"
25729
25730	// MsSmoothH265PackagingTypeHvc1 is a MsSmoothH265PackagingType enum value
25731	MsSmoothH265PackagingTypeHvc1 = "HVC1"
25732)
25733
25734// The current state of the multiplex.
25735const (
25736	// MultiplexStateCreating is a MultiplexState enum value
25737	MultiplexStateCreating = "CREATING"
25738
25739	// MultiplexStateCreateFailed is a MultiplexState enum value
25740	MultiplexStateCreateFailed = "CREATE_FAILED"
25741
25742	// MultiplexStateIdle is a MultiplexState enum value
25743	MultiplexStateIdle = "IDLE"
25744
25745	// MultiplexStateStarting is a MultiplexState enum value
25746	MultiplexStateStarting = "STARTING"
25747
25748	// MultiplexStateRunning is a MultiplexState enum value
25749	MultiplexStateRunning = "RUNNING"
25750
25751	// MultiplexStateRecovering is a MultiplexState enum value
25752	MultiplexStateRecovering = "RECOVERING"
25753
25754	// MultiplexStateStopping is a MultiplexState enum value
25755	MultiplexStateStopping = "STOPPING"
25756
25757	// MultiplexStateDeleting is a MultiplexState enum value
25758	MultiplexStateDeleting = "DELETING"
25759
25760	// MultiplexStateDeleted is a MultiplexState enum value
25761	MultiplexStateDeleted = "DELETED"
25762)
25763
25764// Network Input Server Validation
25765const (
25766	// NetworkInputServerValidationCheckCryptographyAndValidateName is a NetworkInputServerValidation enum value
25767	NetworkInputServerValidationCheckCryptographyAndValidateName = "CHECK_CRYPTOGRAPHY_AND_VALIDATE_NAME"
25768
25769	// NetworkInputServerValidationCheckCryptographyOnly is a NetworkInputServerValidation enum value
25770	NetworkInputServerValidationCheckCryptographyOnly = "CHECK_CRYPTOGRAPHY_ONLY"
25771)
25772
25773// State of Nielsen PCM to ID3 tagging
25774const (
25775	// NielsenPcmToId3TaggingStateDisabled is a NielsenPcmToId3TaggingState enum value
25776	NielsenPcmToId3TaggingStateDisabled = "DISABLED"
25777
25778	// NielsenPcmToId3TaggingStateEnabled is a NielsenPcmToId3TaggingState enum value
25779	NielsenPcmToId3TaggingStateEnabled = "ENABLED"
25780)
25781
25782// Units for duration, e.g. 'MONTHS'
25783const (
25784	// OfferingDurationUnitsMonths is a OfferingDurationUnits enum value
25785	OfferingDurationUnitsMonths = "MONTHS"
25786)
25787
25788// Offering type, e.g. 'NO_UPFRONT'
25789const (
25790	// OfferingTypeNoUpfront is a OfferingType enum value
25791	OfferingTypeNoUpfront = "NO_UPFRONT"
25792)
25793
25794// Pipeline ID
25795const (
25796	// PipelineIdPipeline0 is a PipelineId enum value
25797	PipelineIdPipeline0 = "PIPELINE_0"
25798
25799	// PipelineIdPipeline1 is a PipelineId enum value
25800	PipelineIdPipeline1 = "PIPELINE_1"
25801)
25802
25803// Indicates which pipeline is preferred by the multiplex for program ingest.If
25804// set to \"PIPELINE_0\" or \"PIPELINE_1\" and an unhealthy ingest causes the
25805// multiplex to switch to the non-preferred pipeline,it will switch back once
25806// that ingest is healthy again. If set to \"CURRENTLY_ACTIVE\",it will not
25807// switch back to the other pipeline based on it recovering to a healthy state,it
25808// will only switch if the active pipeline becomes unhealthy.
25809const (
25810	// PreferredChannelPipelineCurrentlyActive is a PreferredChannelPipeline enum value
25811	PreferredChannelPipelineCurrentlyActive = "CURRENTLY_ACTIVE"
25812
25813	// PreferredChannelPipelinePipeline0 is a PreferredChannelPipeline enum value
25814	PreferredChannelPipelinePipeline0 = "PIPELINE_0"
25815
25816	// PreferredChannelPipelinePipeline1 is a PreferredChannelPipeline enum value
25817	PreferredChannelPipelinePipeline1 = "PIPELINE_1"
25818)
25819
25820// Codec, 'MPEG2', 'AVC', 'HEVC', or 'AUDIO'
25821const (
25822	// ReservationCodecMpeg2 is a ReservationCodec enum value
25823	ReservationCodecMpeg2 = "MPEG2"
25824
25825	// ReservationCodecAvc is a ReservationCodec enum value
25826	ReservationCodecAvc = "AVC"
25827
25828	// ReservationCodecHevc is a ReservationCodec enum value
25829	ReservationCodecHevc = "HEVC"
25830
25831	// ReservationCodecAudio is a ReservationCodec enum value
25832	ReservationCodecAudio = "AUDIO"
25833)
25834
25835// Maximum bitrate in megabits per second
25836const (
25837	// ReservationMaximumBitrateMax10Mbps is a ReservationMaximumBitrate enum value
25838	ReservationMaximumBitrateMax10Mbps = "MAX_10_MBPS"
25839
25840	// ReservationMaximumBitrateMax20Mbps is a ReservationMaximumBitrate enum value
25841	ReservationMaximumBitrateMax20Mbps = "MAX_20_MBPS"
25842
25843	// ReservationMaximumBitrateMax50Mbps is a ReservationMaximumBitrate enum value
25844	ReservationMaximumBitrateMax50Mbps = "MAX_50_MBPS"
25845)
25846
25847// Maximum framerate in frames per second (Outputs only)
25848const (
25849	// ReservationMaximumFramerateMax30Fps is a ReservationMaximumFramerate enum value
25850	ReservationMaximumFramerateMax30Fps = "MAX_30_FPS"
25851
25852	// ReservationMaximumFramerateMax60Fps is a ReservationMaximumFramerate enum value
25853	ReservationMaximumFramerateMax60Fps = "MAX_60_FPS"
25854)
25855
25856// Resolution based on lines of vertical resolution; SD is less than 720 lines,
25857// HD is 720 to 1080 lines, FHD is 1080 lines, UHD is greater than 1080 lines
25858const (
25859	// ReservationResolutionSd is a ReservationResolution enum value
25860	ReservationResolutionSd = "SD"
25861
25862	// ReservationResolutionHd is a ReservationResolution enum value
25863	ReservationResolutionHd = "HD"
25864
25865	// ReservationResolutionFhd is a ReservationResolution enum value
25866	ReservationResolutionFhd = "FHD"
25867
25868	// ReservationResolutionUhd is a ReservationResolution enum value
25869	ReservationResolutionUhd = "UHD"
25870)
25871
25872// Resource type, 'INPUT', 'OUTPUT', 'MULTIPLEX', or 'CHANNEL'
25873const (
25874	// ReservationResourceTypeInput is a ReservationResourceType enum value
25875	ReservationResourceTypeInput = "INPUT"
25876
25877	// ReservationResourceTypeOutput is a ReservationResourceType enum value
25878	ReservationResourceTypeOutput = "OUTPUT"
25879
25880	// ReservationResourceTypeMultiplex is a ReservationResourceType enum value
25881	ReservationResourceTypeMultiplex = "MULTIPLEX"
25882
25883	// ReservationResourceTypeChannel is a ReservationResourceType enum value
25884	ReservationResourceTypeChannel = "CHANNEL"
25885)
25886
25887// Special features, 'ADVANCED_AUDIO' or 'AUDIO_NORMALIZATION'
25888const (
25889	// ReservationSpecialFeatureAdvancedAudio is a ReservationSpecialFeature enum value
25890	ReservationSpecialFeatureAdvancedAudio = "ADVANCED_AUDIO"
25891
25892	// ReservationSpecialFeatureAudioNormalization is a ReservationSpecialFeature enum value
25893	ReservationSpecialFeatureAudioNormalization = "AUDIO_NORMALIZATION"
25894)
25895
25896// Current reservation state
25897const (
25898	// ReservationStateActive is a ReservationState enum value
25899	ReservationStateActive = "ACTIVE"
25900
25901	// ReservationStateExpired is a ReservationState enum value
25902	ReservationStateExpired = "EXPIRED"
25903
25904	// ReservationStateCanceled is a ReservationState enum value
25905	ReservationStateCanceled = "CANCELED"
25906
25907	// ReservationStateDeleted is a ReservationState enum value
25908	ReservationStateDeleted = "DELETED"
25909)
25910
25911// Video quality, e.g. 'STANDARD' (Outputs only)
25912const (
25913	// ReservationVideoQualityStandard is a ReservationVideoQuality enum value
25914	ReservationVideoQualityStandard = "STANDARD"
25915
25916	// ReservationVideoQualityEnhanced is a ReservationVideoQuality enum value
25917	ReservationVideoQualityEnhanced = "ENHANCED"
25918
25919	// ReservationVideoQualityPremium is a ReservationVideoQuality enum value
25920	ReservationVideoQualityPremium = "PREMIUM"
25921)
25922
25923// Rtmp Cache Full Behavior
25924const (
25925	// RtmpCacheFullBehaviorDisconnectImmediately is a RtmpCacheFullBehavior enum value
25926	RtmpCacheFullBehaviorDisconnectImmediately = "DISCONNECT_IMMEDIATELY"
25927
25928	// RtmpCacheFullBehaviorWaitForServer is a RtmpCacheFullBehavior enum value
25929	RtmpCacheFullBehaviorWaitForServer = "WAIT_FOR_SERVER"
25930)
25931
25932// Rtmp Caption Data
25933const (
25934	// RtmpCaptionDataAll is a RtmpCaptionData enum value
25935	RtmpCaptionDataAll = "ALL"
25936
25937	// RtmpCaptionDataField1608 is a RtmpCaptionData enum value
25938	RtmpCaptionDataField1608 = "FIELD1_608"
25939
25940	// RtmpCaptionDataField1AndField2608 is a RtmpCaptionData enum value
25941	RtmpCaptionDataField1AndField2608 = "FIELD1_AND_FIELD2_608"
25942)
25943
25944// Rtmp Output Certificate Mode
25945const (
25946	// RtmpOutputCertificateModeSelfSigned is a RtmpOutputCertificateMode enum value
25947	RtmpOutputCertificateModeSelfSigned = "SELF_SIGNED"
25948
25949	// RtmpOutputCertificateModeVerifyAuthenticity is a RtmpOutputCertificateMode enum value
25950	RtmpOutputCertificateModeVerifyAuthenticity = "VERIFY_AUTHENTICITY"
25951)
25952
25953// Scte20 Convert608 To708
25954const (
25955	// Scte20Convert608To708Disabled is a Scte20Convert608To708 enum value
25956	Scte20Convert608To708Disabled = "DISABLED"
25957
25958	// Scte20Convert608To708Upconvert is a Scte20Convert608To708 enum value
25959	Scte20Convert608To708Upconvert = "UPCONVERT"
25960)
25961
25962// Scte35 Apos No Regional Blackout Behavior
25963const (
25964	// Scte35AposNoRegionalBlackoutBehaviorFollow is a Scte35AposNoRegionalBlackoutBehavior enum value
25965	Scte35AposNoRegionalBlackoutBehaviorFollow = "FOLLOW"
25966
25967	// Scte35AposNoRegionalBlackoutBehaviorIgnore is a Scte35AposNoRegionalBlackoutBehavior enum value
25968	Scte35AposNoRegionalBlackoutBehaviorIgnore = "IGNORE"
25969)
25970
25971// Scte35 Apos Web Delivery Allowed Behavior
25972const (
25973	// Scte35AposWebDeliveryAllowedBehaviorFollow is a Scte35AposWebDeliveryAllowedBehavior enum value
25974	Scte35AposWebDeliveryAllowedBehaviorFollow = "FOLLOW"
25975
25976	// Scte35AposWebDeliveryAllowedBehaviorIgnore is a Scte35AposWebDeliveryAllowedBehavior enum value
25977	Scte35AposWebDeliveryAllowedBehaviorIgnore = "IGNORE"
25978)
25979
25980// Corresponds to the archive_allowed parameter. A value of ARCHIVE_NOT_ALLOWED
25981// corresponds to 0 (false) in the SCTE-35 specification. If you include one
25982// of the "restriction" flags then you must include all four of them.
25983const (
25984	// Scte35ArchiveAllowedFlagArchiveNotAllowed is a Scte35ArchiveAllowedFlag enum value
25985	Scte35ArchiveAllowedFlagArchiveNotAllowed = "ARCHIVE_NOT_ALLOWED"
25986
25987	// Scte35ArchiveAllowedFlagArchiveAllowed is a Scte35ArchiveAllowedFlag enum value
25988	Scte35ArchiveAllowedFlagArchiveAllowed = "ARCHIVE_ALLOWED"
25989)
25990
25991// Corresponds to the device_restrictions parameter in a segmentation_descriptor.
25992// If you include one of the "restriction" flags then you must include all four
25993// of them.
25994const (
25995	// Scte35DeviceRestrictionsNone is a Scte35DeviceRestrictions enum value
25996	Scte35DeviceRestrictionsNone = "NONE"
25997
25998	// Scte35DeviceRestrictionsRestrictGroup0 is a Scte35DeviceRestrictions enum value
25999	Scte35DeviceRestrictionsRestrictGroup0 = "RESTRICT_GROUP0"
26000
26001	// Scte35DeviceRestrictionsRestrictGroup1 is a Scte35DeviceRestrictions enum value
26002	Scte35DeviceRestrictionsRestrictGroup1 = "RESTRICT_GROUP1"
26003
26004	// Scte35DeviceRestrictionsRestrictGroup2 is a Scte35DeviceRestrictions enum value
26005	Scte35DeviceRestrictionsRestrictGroup2 = "RESTRICT_GROUP2"
26006)
26007
26008// Corresponds to the no_regional_blackout_flag parameter. A value of REGIONAL_BLACKOUT
26009// corresponds to 0 (false) in the SCTE-35 specification. If you include one
26010// of the "restriction" flags then you must include all four of them.
26011const (
26012	// Scte35NoRegionalBlackoutFlagRegionalBlackout is a Scte35NoRegionalBlackoutFlag enum value
26013	Scte35NoRegionalBlackoutFlagRegionalBlackout = "REGIONAL_BLACKOUT"
26014
26015	// Scte35NoRegionalBlackoutFlagNoRegionalBlackout is a Scte35NoRegionalBlackoutFlag enum value
26016	Scte35NoRegionalBlackoutFlagNoRegionalBlackout = "NO_REGIONAL_BLACKOUT"
26017)
26018
26019// Corresponds to SCTE-35 segmentation_event_cancel_indicator. SEGMENTATION_EVENT_NOT_CANCELED
26020// corresponds to 0 in the SCTE-35 specification and indicates that this is
26021// an insertion request. SEGMENTATION_EVENT_CANCELED corresponds to 1 in the
26022// SCTE-35 specification and indicates that this is a cancelation request, in
26023// which case complete this field and the existing event ID to cancel.
26024const (
26025	// Scte35SegmentationCancelIndicatorSegmentationEventNotCanceled is a Scte35SegmentationCancelIndicator enum value
26026	Scte35SegmentationCancelIndicatorSegmentationEventNotCanceled = "SEGMENTATION_EVENT_NOT_CANCELED"
26027
26028	// Scte35SegmentationCancelIndicatorSegmentationEventCanceled is a Scte35SegmentationCancelIndicator enum value
26029	Scte35SegmentationCancelIndicatorSegmentationEventCanceled = "SEGMENTATION_EVENT_CANCELED"
26030)
26031
26032// Scte35 Splice Insert No Regional Blackout Behavior
26033const (
26034	// Scte35SpliceInsertNoRegionalBlackoutBehaviorFollow is a Scte35SpliceInsertNoRegionalBlackoutBehavior enum value
26035	Scte35SpliceInsertNoRegionalBlackoutBehaviorFollow = "FOLLOW"
26036
26037	// Scte35SpliceInsertNoRegionalBlackoutBehaviorIgnore is a Scte35SpliceInsertNoRegionalBlackoutBehavior enum value
26038	Scte35SpliceInsertNoRegionalBlackoutBehaviorIgnore = "IGNORE"
26039)
26040
26041// Scte35 Splice Insert Web Delivery Allowed Behavior
26042const (
26043	// Scte35SpliceInsertWebDeliveryAllowedBehaviorFollow is a Scte35SpliceInsertWebDeliveryAllowedBehavior enum value
26044	Scte35SpliceInsertWebDeliveryAllowedBehaviorFollow = "FOLLOW"
26045
26046	// Scte35SpliceInsertWebDeliveryAllowedBehaviorIgnore is a Scte35SpliceInsertWebDeliveryAllowedBehavior enum value
26047	Scte35SpliceInsertWebDeliveryAllowedBehaviorIgnore = "IGNORE"
26048)
26049
26050// Corresponds to the web_delivery_allowed_flag parameter. A value of WEB_DELIVERY_NOT_ALLOWED
26051// corresponds to 0 (false) in the SCTE-35 specification. If you include one
26052// of the "restriction" flags then you must include all four of them.
26053const (
26054	// Scte35WebDeliveryAllowedFlagWebDeliveryNotAllowed is a Scte35WebDeliveryAllowedFlag enum value
26055	Scte35WebDeliveryAllowedFlagWebDeliveryNotAllowed = "WEB_DELIVERY_NOT_ALLOWED"
26056
26057	// Scte35WebDeliveryAllowedFlagWebDeliveryAllowed is a Scte35WebDeliveryAllowedFlag enum value
26058	Scte35WebDeliveryAllowedFlagWebDeliveryAllowed = "WEB_DELIVERY_ALLOWED"
26059)
26060
26061// Smooth Group Audio Only Timecode Control
26062const (
26063	// SmoothGroupAudioOnlyTimecodeControlPassthrough is a SmoothGroupAudioOnlyTimecodeControl enum value
26064	SmoothGroupAudioOnlyTimecodeControlPassthrough = "PASSTHROUGH"
26065
26066	// SmoothGroupAudioOnlyTimecodeControlUseConfiguredClock is a SmoothGroupAudioOnlyTimecodeControl enum value
26067	SmoothGroupAudioOnlyTimecodeControlUseConfiguredClock = "USE_CONFIGURED_CLOCK"
26068)
26069
26070// Smooth Group Certificate Mode
26071const (
26072	// SmoothGroupCertificateModeSelfSigned is a SmoothGroupCertificateMode enum value
26073	SmoothGroupCertificateModeSelfSigned = "SELF_SIGNED"
26074
26075	// SmoothGroupCertificateModeVerifyAuthenticity is a SmoothGroupCertificateMode enum value
26076	SmoothGroupCertificateModeVerifyAuthenticity = "VERIFY_AUTHENTICITY"
26077)
26078
26079// Smooth Group Event Id Mode
26080const (
26081	// SmoothGroupEventIdModeNoEventId is a SmoothGroupEventIdMode enum value
26082	SmoothGroupEventIdModeNoEventId = "NO_EVENT_ID"
26083
26084	// SmoothGroupEventIdModeUseConfigured is a SmoothGroupEventIdMode enum value
26085	SmoothGroupEventIdModeUseConfigured = "USE_CONFIGURED"
26086
26087	// SmoothGroupEventIdModeUseTimestamp is a SmoothGroupEventIdMode enum value
26088	SmoothGroupEventIdModeUseTimestamp = "USE_TIMESTAMP"
26089)
26090
26091// Smooth Group Event Stop Behavior
26092const (
26093	// SmoothGroupEventStopBehaviorNone is a SmoothGroupEventStopBehavior enum value
26094	SmoothGroupEventStopBehaviorNone = "NONE"
26095
26096	// SmoothGroupEventStopBehaviorSendEos is a SmoothGroupEventStopBehavior enum value
26097	SmoothGroupEventStopBehaviorSendEos = "SEND_EOS"
26098)
26099
26100// Smooth Group Segmentation Mode
26101const (
26102	// SmoothGroupSegmentationModeUseInputSegmentation is a SmoothGroupSegmentationMode enum value
26103	SmoothGroupSegmentationModeUseInputSegmentation = "USE_INPUT_SEGMENTATION"
26104
26105	// SmoothGroupSegmentationModeUseSegmentDuration is a SmoothGroupSegmentationMode enum value
26106	SmoothGroupSegmentationModeUseSegmentDuration = "USE_SEGMENT_DURATION"
26107)
26108
26109// Smooth Group Sparse Track Type
26110const (
26111	// SmoothGroupSparseTrackTypeNone is a SmoothGroupSparseTrackType enum value
26112	SmoothGroupSparseTrackTypeNone = "NONE"
26113
26114	// SmoothGroupSparseTrackTypeScte35 is a SmoothGroupSparseTrackType enum value
26115	SmoothGroupSparseTrackTypeScte35 = "SCTE_35"
26116
26117	// SmoothGroupSparseTrackTypeScte35WithoutSegmentation is a SmoothGroupSparseTrackType enum value
26118	SmoothGroupSparseTrackTypeScte35WithoutSegmentation = "SCTE_35_WITHOUT_SEGMENTATION"
26119)
26120
26121// Smooth Group Stream Manifest Behavior
26122const (
26123	// SmoothGroupStreamManifestBehaviorDoNotSend is a SmoothGroupStreamManifestBehavior enum value
26124	SmoothGroupStreamManifestBehaviorDoNotSend = "DO_NOT_SEND"
26125
26126	// SmoothGroupStreamManifestBehaviorSend is a SmoothGroupStreamManifestBehavior enum value
26127	SmoothGroupStreamManifestBehaviorSend = "SEND"
26128)
26129
26130// Smooth Group Timestamp Offset Mode
26131const (
26132	// SmoothGroupTimestampOffsetModeUseConfiguredOffset is a SmoothGroupTimestampOffsetMode enum value
26133	SmoothGroupTimestampOffsetModeUseConfiguredOffset = "USE_CONFIGURED_OFFSET"
26134
26135	// SmoothGroupTimestampOffsetModeUseEventStartDate is a SmoothGroupTimestampOffsetMode enum value
26136	SmoothGroupTimestampOffsetModeUseEventStartDate = "USE_EVENT_START_DATE"
26137)
26138
26139// Smpte2038 Data Preference
26140const (
26141	// Smpte2038DataPreferenceIgnore is a Smpte2038DataPreference enum value
26142	Smpte2038DataPreferenceIgnore = "IGNORE"
26143
26144	// Smpte2038DataPreferencePrefer is a Smpte2038DataPreference enum value
26145	Smpte2038DataPreferencePrefer = "PREFER"
26146)
26147
26148// Temporal Filter Post Filter Sharpening
26149const (
26150	// TemporalFilterPostFilterSharpeningAuto is a TemporalFilterPostFilterSharpening enum value
26151	TemporalFilterPostFilterSharpeningAuto = "AUTO"
26152
26153	// TemporalFilterPostFilterSharpeningDisabled is a TemporalFilterPostFilterSharpening enum value
26154	TemporalFilterPostFilterSharpeningDisabled = "DISABLED"
26155
26156	// TemporalFilterPostFilterSharpeningEnabled is a TemporalFilterPostFilterSharpening enum value
26157	TemporalFilterPostFilterSharpeningEnabled = "ENABLED"
26158)
26159
26160// Temporal Filter Strength
26161const (
26162	// TemporalFilterStrengthAuto is a TemporalFilterStrength enum value
26163	TemporalFilterStrengthAuto = "AUTO"
26164
26165	// TemporalFilterStrengthStrength1 is a TemporalFilterStrength enum value
26166	TemporalFilterStrengthStrength1 = "STRENGTH_1"
26167
26168	// TemporalFilterStrengthStrength2 is a TemporalFilterStrength enum value
26169	TemporalFilterStrengthStrength2 = "STRENGTH_2"
26170
26171	// TemporalFilterStrengthStrength3 is a TemporalFilterStrength enum value
26172	TemporalFilterStrengthStrength3 = "STRENGTH_3"
26173
26174	// TemporalFilterStrengthStrength4 is a TemporalFilterStrength enum value
26175	TemporalFilterStrengthStrength4 = "STRENGTH_4"
26176
26177	// TemporalFilterStrengthStrength5 is a TemporalFilterStrength enum value
26178	TemporalFilterStrengthStrength5 = "STRENGTH_5"
26179
26180	// TemporalFilterStrengthStrength6 is a TemporalFilterStrength enum value
26181	TemporalFilterStrengthStrength6 = "STRENGTH_6"
26182
26183	// TemporalFilterStrengthStrength7 is a TemporalFilterStrength enum value
26184	TemporalFilterStrengthStrength7 = "STRENGTH_7"
26185
26186	// TemporalFilterStrengthStrength8 is a TemporalFilterStrength enum value
26187	TemporalFilterStrengthStrength8 = "STRENGTH_8"
26188
26189	// TemporalFilterStrengthStrength9 is a TemporalFilterStrength enum value
26190	TemporalFilterStrengthStrength9 = "STRENGTH_9"
26191
26192	// TemporalFilterStrengthStrength10 is a TemporalFilterStrength enum value
26193	TemporalFilterStrengthStrength10 = "STRENGTH_10"
26194
26195	// TemporalFilterStrengthStrength11 is a TemporalFilterStrength enum value
26196	TemporalFilterStrengthStrength11 = "STRENGTH_11"
26197
26198	// TemporalFilterStrengthStrength12 is a TemporalFilterStrength enum value
26199	TemporalFilterStrengthStrength12 = "STRENGTH_12"
26200
26201	// TemporalFilterStrengthStrength13 is a TemporalFilterStrength enum value
26202	TemporalFilterStrengthStrength13 = "STRENGTH_13"
26203
26204	// TemporalFilterStrengthStrength14 is a TemporalFilterStrength enum value
26205	TemporalFilterStrengthStrength14 = "STRENGTH_14"
26206
26207	// TemporalFilterStrengthStrength15 is a TemporalFilterStrength enum value
26208	TemporalFilterStrengthStrength15 = "STRENGTH_15"
26209
26210	// TemporalFilterStrengthStrength16 is a TemporalFilterStrength enum value
26211	TemporalFilterStrengthStrength16 = "STRENGTH_16"
26212)
26213
26214// Timecode Config Source
26215const (
26216	// TimecodeConfigSourceEmbedded is a TimecodeConfigSource enum value
26217	TimecodeConfigSourceEmbedded = "EMBEDDED"
26218
26219	// TimecodeConfigSourceSystemclock is a TimecodeConfigSource enum value
26220	TimecodeConfigSourceSystemclock = "SYSTEMCLOCK"
26221
26222	// TimecodeConfigSourceZerobased is a TimecodeConfigSource enum value
26223	TimecodeConfigSourceZerobased = "ZEROBASED"
26224)
26225
26226// Ttml Destination Style Control
26227const (
26228	// TtmlDestinationStyleControlPassthrough is a TtmlDestinationStyleControl enum value
26229	TtmlDestinationStyleControlPassthrough = "PASSTHROUGH"
26230
26231	// TtmlDestinationStyleControlUseConfigured is a TtmlDestinationStyleControl enum value
26232	TtmlDestinationStyleControlUseConfigured = "USE_CONFIGURED"
26233)
26234
26235// Udp Timed Metadata Id3 Frame
26236const (
26237	// UdpTimedMetadataId3FrameNone is a UdpTimedMetadataId3Frame enum value
26238	UdpTimedMetadataId3FrameNone = "NONE"
26239
26240	// UdpTimedMetadataId3FramePriv is a UdpTimedMetadataId3Frame enum value
26241	UdpTimedMetadataId3FramePriv = "PRIV"
26242
26243	// UdpTimedMetadataId3FrameTdrl is a UdpTimedMetadataId3Frame enum value
26244	UdpTimedMetadataId3FrameTdrl = "TDRL"
26245)
26246
26247// Video Description Respond To Afd
26248const (
26249	// VideoDescriptionRespondToAfdNone is a VideoDescriptionRespondToAfd enum value
26250	VideoDescriptionRespondToAfdNone = "NONE"
26251
26252	// VideoDescriptionRespondToAfdPassthrough is a VideoDescriptionRespondToAfd enum value
26253	VideoDescriptionRespondToAfdPassthrough = "PASSTHROUGH"
26254
26255	// VideoDescriptionRespondToAfdRespond is a VideoDescriptionRespondToAfd enum value
26256	VideoDescriptionRespondToAfdRespond = "RESPOND"
26257)
26258
26259// Video Description Scaling Behavior
26260const (
26261	// VideoDescriptionScalingBehaviorDefault is a VideoDescriptionScalingBehavior enum value
26262	VideoDescriptionScalingBehaviorDefault = "DEFAULT"
26263
26264	// VideoDescriptionScalingBehaviorStretchToOutput is a VideoDescriptionScalingBehavior enum value
26265	VideoDescriptionScalingBehaviorStretchToOutput = "STRETCH_TO_OUTPUT"
26266)
26267
26268// Video Selector Color Space
26269const (
26270	// VideoSelectorColorSpaceFollow is a VideoSelectorColorSpace enum value
26271	VideoSelectorColorSpaceFollow = "FOLLOW"
26272
26273	// VideoSelectorColorSpaceRec601 is a VideoSelectorColorSpace enum value
26274	VideoSelectorColorSpaceRec601 = "REC_601"
26275
26276	// VideoSelectorColorSpaceRec709 is a VideoSelectorColorSpace enum value
26277	VideoSelectorColorSpaceRec709 = "REC_709"
26278)
26279
26280// Video Selector Color Space Usage
26281const (
26282	// VideoSelectorColorSpaceUsageFallback is a VideoSelectorColorSpaceUsage enum value
26283	VideoSelectorColorSpaceUsageFallback = "FALLBACK"
26284
26285	// VideoSelectorColorSpaceUsageForce is a VideoSelectorColorSpaceUsage enum value
26286	VideoSelectorColorSpaceUsageForce = "FORCE"
26287)
26288