-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Amazon Elastic Transcoder SDK.
--
-- The types from this library are intended to be used with
-- amazonka, which provides mechanisms for specifying AuthN/AuthZ
-- information, sending requests, and receiving responses.
--
-- Lenses are used for constructing and manipulating types, due to the
-- depth of nesting of AWS types and transparency regarding
-- de/serialisation into more palatable Haskell values. The provided
-- lenses should be compatible with any of the major lens libraries such
-- as lens or lens-family-core.
--
-- See Network.AWS.ElasticTranscoder or the AWS
-- documentation to get started.
@package amazonka-elastictranscoder
@version 1.6.0
module Network.AWS.ElasticTranscoder.Types
-- | API version 2012-09-25 of the Amazon Elastic Transcoder SDK
-- configuration.
elasticTranscoder :: Service
-- | Prism for IncompatibleVersionException' errors.
_IncompatibleVersionException :: AsError a => Getting (First ServiceError) a ServiceError
-- | One or more required parameter values were not provided in the
-- request.
_ValidationException :: AsError a => Getting (First ServiceError) a ServiceError
-- | General authentication failure. The request was not signed correctly.
_AccessDeniedException :: AsError a => Getting (First ServiceError) a ServiceError
-- | Elastic Transcoder encountered an unexpected exception while trying to
-- fulfill the request.
_InternalServiceException :: AsError a => Getting (First ServiceError) a ServiceError
-- | The requested resource does not exist or is not available. For
-- example, the pipeline to which you're trying to add a job doesn't
-- exist or is still being created.
_ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
-- | Too many operations for a given AWS account. For example, the number
-- of pipelines exceeds the maximum allowed.
_LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError
-- | The resource you are attempting to change is in use. For example, you
-- are attempting to delete a pipeline that is currently in use.
_ResourceInUseException :: AsError a => Getting (First ServiceError) a ServiceError
-- | The file to be used as album art. There can be multiple artworks
-- associated with an audio file, to a maximum of 20.
--
-- To remove artwork or leave the artwork empty, you can either set
-- Artwork to null, or set the Merge Policy to
-- Replace and use an empty Artwork array.
--
-- To pass through existing artwork unchanged, set the Merge
-- Policy to Prepend, Append, or Fallback, and
-- use an empty Artwork array.
--
-- See: artwork smart constructor.
data Artwork
-- | Creates a value of Artwork with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - aSizingPolicy - Specify one of the following values to
-- control scaling of the output album art: * Fit: Elastic
-- Transcoder scales the output art so it matches the value that you
-- specified in either MaxWidth or MaxHeight without
-- exceeding the other value. * Fill: Elastic Transcoder scales
-- the output art so it matches the value that you specified in either
-- MaxWidth or MaxHeight and matches or exceeds the
-- other value. Elastic Transcoder centers the output art and then crops
-- it in the dimension (if any) that exceeds the maximum value. *
-- Stretch: Elastic Transcoder stretches the output art to match
-- the values that you specified for MaxWidth and
-- MaxHeight . If the relative proportions of the input art and
-- the output art are different, the output art will be distorted. *
-- Keep: Elastic Transcoder does not scale the output art. If
-- either dimension of the input art exceeds the values that you
-- specified for MaxWidth and MaxHeight , Elastic
-- Transcoder crops the output art. * ShrinkToFit: Elastic
-- Transcoder scales the output art down so that its dimensions match the
-- values that you specified for at least one of MaxWidth and
-- MaxHeight without exceeding either value. If you specify this
-- option, Elastic Transcoder does not scale the art up. *
-- ShrinkToFill Elastic Transcoder scales the output art down so
-- that its dimensions match the values that you specified for at least
-- one of MaxWidth and MaxHeight without dropping below
-- either value. If you specify this option, Elastic Transcoder does not
-- scale the art up.
-- - aAlbumArtFormat - The format of album art, if any. Valid
-- formats are .jpg and .png .
-- - aMaxHeight - The maximum height of the output album art in
-- pixels. If you specify auto , Elastic Transcoder uses 600 as
-- the default value. If you specify a numeric value, enter an even
-- integer between 32 and 3072, inclusive.
-- - aInputKey - The name of the file to be used as album art.
-- To determine which Amazon S3 bucket contains the specified file,
-- Elastic Transcoder checks the pipeline specified by
-- PipelineId ; the InputBucket object in that pipeline
-- identifies the bucket. If the file name includes a prefix, for
-- example, cooking/pie.jpg , include the prefix in the key. If
-- the file isn't in the specified bucket, Elastic Transcoder returns an
-- error.
-- - aPaddingPolicy - When you set PaddingPolicy to
-- Pad , Elastic Transcoder may add white bars to the top and
-- bottom and/or left and right sides of the output album art to make the
-- total size of the output art match the values that you specified for
-- MaxWidth and MaxHeight .
-- - aEncryption - The encryption settings, if any, that you
-- want Elastic Transcoder to apply to your artwork.
-- - aMaxWidth - The maximum width of the output album art in
-- pixels. If you specify auto , Elastic Transcoder uses 600 as
-- the default value. If you specify a numeric value, enter an even
-- integer between 32 and 4096, inclusive.
--
artwork :: Artwork
-- | Specify one of the following values to control scaling of the output
-- album art: * Fit: Elastic Transcoder scales the output art so
-- it matches the value that you specified in either MaxWidth or
-- MaxHeight without exceeding the other value. * Fill:
-- Elastic Transcoder scales the output art so it matches the value that
-- you specified in either MaxWidth or MaxHeight and
-- matches or exceeds the other value. Elastic Transcoder centers the
-- output art and then crops it in the dimension (if any) that exceeds
-- the maximum value. * Stretch: Elastic Transcoder stretches
-- the output art to match the values that you specified for
-- MaxWidth and MaxHeight . If the relative proportions
-- of the input art and the output art are different, the output art will
-- be distorted. * Keep: Elastic Transcoder does not scale the
-- output art. If either dimension of the input art exceeds the values
-- that you specified for MaxWidth and MaxHeight ,
-- Elastic Transcoder crops the output art. * ShrinkToFit:
-- Elastic Transcoder scales the output art down so that its dimensions
-- match the values that you specified for at least one of
-- MaxWidth and MaxHeight without exceeding either
-- value. If you specify this option, Elastic Transcoder does not scale
-- the art up. * ShrinkToFill Elastic Transcoder scales the
-- output art down so that its dimensions match the values that you
-- specified for at least one of MaxWidth and MaxHeight
-- without dropping below either value. If you specify this option,
-- Elastic Transcoder does not scale the art up.
aSizingPolicy :: Lens' Artwork (Maybe Text)
-- | The format of album art, if any. Valid formats are .jpg and
-- .png .
aAlbumArtFormat :: Lens' Artwork (Maybe Text)
-- | The maximum height of the output album art in pixels. If you specify
-- auto , Elastic Transcoder uses 600 as the default value. If
-- you specify a numeric value, enter an even integer between 32 and
-- 3072, inclusive.
aMaxHeight :: Lens' Artwork (Maybe Text)
-- | The name of the file to be used as album art. To determine which
-- Amazon S3 bucket contains the specified file, Elastic Transcoder
-- checks the pipeline specified by PipelineId ; the
-- InputBucket object in that pipeline identifies the bucket. If
-- the file name includes a prefix, for example, cooking/pie.jpg
-- , include the prefix in the key. If the file isn't in the specified
-- bucket, Elastic Transcoder returns an error.
aInputKey :: Lens' Artwork (Maybe Text)
-- | When you set PaddingPolicy to Pad , Elastic
-- Transcoder may add white bars to the top and bottom and/or left and
-- right sides of the output album art to make the total size of the
-- output art match the values that you specified for MaxWidth
-- and MaxHeight .
aPaddingPolicy :: Lens' Artwork (Maybe Text)
-- | The encryption settings, if any, that you want Elastic Transcoder to
-- apply to your artwork.
aEncryption :: Lens' Artwork (Maybe Encryption)
-- | The maximum width of the output album art in pixels. If you specify
-- auto , Elastic Transcoder uses 600 as the default value. If
-- you specify a numeric value, enter an even integer between 32 and
-- 4096, inclusive.
aMaxWidth :: Lens' Artwork (Maybe Text)
-- | Options associated with your audio codec.
--
-- See: audioCodecOptions smart constructor.
data AudioCodecOptions
-- | Creates a value of AudioCodecOptions with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - acoSigned - You can only choose whether an audio sample is
-- signed when you specify pcm for the value of Audio:Codec.
-- Whether audio samples are represented with negative and positive
-- numbers (signed) or only positive numbers (unsigned). The supported
-- value is Signed .
-- - acoBitDepth - You can only choose an audio bit depth when
-- you specify flac or pcm for the value of
-- Audio:Codec. The bit depth of a sample is how many bits of information
-- are included in the audio samples. The higher the bit depth, the
-- better the audio, but the larger the file. Valid values are
-- 16 and 24 . The most common bit depth is 24
-- .
-- - acoProfile - You can only choose an audio profile when you
-- specify AAC for the value of Audio:Codec. Specify the AAC profile for
-- the output file. Elastic Transcoder supports the following profiles: *
-- auto : If you specify auto , Elastic Transcoder
-- selects the profile based on the bit rate selected for the output
-- file. * AAC-LC : The most common AAC profile. Use for bit
-- rates larger than 64 kbps. * HE-AAC : Not supported on some
-- older players and devices. Use for bit rates between 40 and 80 kbps. *
-- HE-AACv2 : Not supported on some players and devices. Use for
-- bit rates less than 48 kbps. All outputs in a Smooth playlist
-- must have the same value for Profile .
-- - acoBitOrder - You can only choose an audio bit order when
-- you specify pcm for the value of Audio:Codec. The order the
-- bits of a PCM sample are stored in. The supported value is
-- LittleEndian .
--
audioCodecOptions :: AudioCodecOptions
-- | You can only choose whether an audio sample is signed when you specify
-- pcm for the value of Audio:Codec. Whether audio samples are
-- represented with negative and positive numbers (signed) or only
-- positive numbers (unsigned). The supported value is Signed .
acoSigned :: Lens' AudioCodecOptions (Maybe Text)
-- | You can only choose an audio bit depth when you specify flac
-- or pcm for the value of Audio:Codec. The bit depth of a
-- sample is how many bits of information are included in the audio
-- samples. The higher the bit depth, the better the audio, but the
-- larger the file. Valid values are 16 and 24 . The
-- most common bit depth is 24 .
acoBitDepth :: Lens' AudioCodecOptions (Maybe Text)
-- | You can only choose an audio profile when you specify AAC for the
-- value of Audio:Codec. Specify the AAC profile for the output file.
-- Elastic Transcoder supports the following profiles: * auto :
-- If you specify auto , Elastic Transcoder selects the profile
-- based on the bit rate selected for the output file. * AAC-LC
-- : The most common AAC profile. Use for bit rates larger than 64 kbps.
-- * HE-AAC : Not supported on some older players and devices.
-- Use for bit rates between 40 and 80 kbps. * HE-AACv2 : Not
-- supported on some players and devices. Use for bit rates less than 48
-- kbps. All outputs in a Smooth playlist must have the same
-- value for Profile .
acoProfile :: Lens' AudioCodecOptions (Maybe Text)
-- | You can only choose an audio bit order when you specify pcm
-- for the value of Audio:Codec. The order the bits of a PCM sample are
-- stored in. The supported value is LittleEndian .
acoBitOrder :: Lens' AudioCodecOptions (Maybe Text)
-- | Parameters required for transcoding audio.
--
-- See: audioParameters smart constructor.
data AudioParameters
-- | Creates a value of AudioParameters with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - apChannels - The number of audio channels in the output
-- file. The following values are valid: auto , 0 ,
-- 1 , 2 One channel carries the information played by
-- a single speaker. For example, a stereo track with two channels sends
-- one channel to the left speaker, and the other channel to the right
-- speaker. The output channels are organized into tracks. If you want
-- Elastic Transcoder to automatically detect the number of audio
-- channels in the input file and use that value for the output file,
-- select auto . The output of a specific channel value and
-- inputs are as follows: * auto channel specified, with any
-- input: Pass through up to eight input channels. * 0
-- channels specified, with any input: Audio omitted from the
-- output. * 1 channel specified, with at least one input
-- channel: Mono sound. * 2 channels specified, with any
-- input: Two identical mono channels or stereo. For more information
-- about tracks, see Audio:AudioPackingMode. For more
-- information about how Elastic Transcoder organizes channels and
-- tracks, see Audio:AudioPackingMode .
-- - apCodec - The audio codec for the output file. Valid values
-- include aac , flac , mp2 , mp3 ,
-- pcm , and vorbis .
-- - apAudioPackingMode - The method of organizing audio
-- channels and tracks. Use Audio:Channels to specify the number
-- of channels in your output, and Audio:AudioPackingMode to
-- specify the number of tracks and their relation to the channels. If
-- you do not specify an Audio:AudioPackingMode , Elastic
-- Transcoder uses SingleTrack . The following values are valid:
-- SingleTrack , OneChannelPerTrack , and
-- OneChannelPerTrackWithMosTo8Tracks When you specify
-- SingleTrack , Elastic Transcoder creates a single track for
-- your output. The track can have up to eight channels. Use
-- SingleTrack for all non-mxf containers. The outputs
-- of SingleTrack for a specific channel value and inputs are as
-- follows: * 0 channels with any input: Audio omitted
-- from the output * 1, 2, or auto channels with no audio
-- input: Audio omitted from the output * 1 channel with
-- any input with audio: One track with one channel, downmixed if
-- necessary * 2 channels with one track with one
-- channel: One track with two identical channels * 2 or auto
-- channels with two tracks with one channel each: One track
-- with two channels * 2 or auto channels with one track
-- with two channels: One track with two channels * 2
-- channels with one track with multiple channels: One track with
-- two channels * auto channels with one track with one
-- channel: One track with one channel * auto channels
-- with one track with multiple channels: One track with multiple
-- channels When you specify OneChannelPerTrack , Elastic
-- Transcoder creates a new track for every channel in your output. Your
-- output can have up to eight single-channel tracks. The outputs of
-- OneChannelPerTrack for a specific channel value and inputs
-- are as follows: * 0 channels with any input: Audio
-- omitted from the output * 1, 2, or auto channels with no
-- audio input: Audio omitted from the output * 1
-- channel with any input with audio: One track with one channel,
-- downmixed if necessary * 2 channels with one track with
-- one channel: Two tracks with one identical channel each * 2 or
-- auto channels with two tracks with one channel each: Two
-- tracks with one channel each * 2 or auto channels with
-- one track with two channels: Two tracks with one channel each *
-- 2 channels with one track with multiple channels: Two
-- tracks with one channel each * auto channels with one
-- track with one channel: One track with one channel * auto
-- channels with one track with multiple channels: Up to
-- eight tracks with one channel each When you specify
-- OneChannelPerTrackWithMosTo8Tracks , Elastic Transcoder
-- creates eight single-channel tracks for your output. All tracks that
-- do not contain audio data from an input channel are MOS, or Mit Out
-- Sound, tracks. The outputs of
-- OneChannelPerTrackWithMosTo8Tracks for a specific channel
-- value and inputs are as follows: * 0 channels with any
-- input: Audio omitted from the output * 1, 2, or auto
-- channels with no audio input: Audio omitted from the output *
-- 1 channel with any input with audio: One track with
-- one channel, downmixed if necessary, plus six MOS tracks * 2
-- channels with one track with one channel: Two tracks with one
-- identical channel each, plus six MOS tracks * 2 or auto
-- channels with two tracks with one channel each: Two tracks with
-- one channel each, plus six MOS tracks * 2 or auto
-- channels with one track with two channels: Two tracks with one
-- channel each, plus six MOS tracks * 2 channels with one
-- track with multiple channels: Two tracks with one channel each,
-- plus six MOS tracks * auto channels with one track with
-- one channel: One track with one channel, plus seven MOS tracks *
-- auto channels with one track with multiple channels:
-- Up to eight tracks with one channel each, plus MOS tracks until there
-- are eight tracks in all
-- - apSampleRate - The sample rate of the audio stream in the
-- output file, in Hertz. Valid values include: auto ,
-- 22050 , 32000 , 44100 , 48000 ,
-- 96000 If you specify auto , Elastic Transcoder
-- automatically detects the sample rate.
-- - apBitRate - The bit rate of the audio stream in the output
-- file, in kilobits/second. Enter an integer between 64 and 320,
-- inclusive.
-- - apCodecOptions - If you specified AAC for
-- Audio:Codec , this is the AAC compression profile to
-- use. Valid values include: auto , AAC-LC ,
-- HE-AAC , HE-AACv2 If you specify auto ,
-- Elastic Transcoder chooses a profile based on the bit rate of the
-- output file.
--
audioParameters :: AudioParameters
-- | The number of audio channels in the output file. The following values
-- are valid: auto , 0 , 1 , 2 One
-- channel carries the information played by a single speaker. For
-- example, a stereo track with two channels sends one channel to the
-- left speaker, and the other channel to the right speaker. The output
-- channels are organized into tracks. If you want Elastic Transcoder to
-- automatically detect the number of audio channels in the input file
-- and use that value for the output file, select auto . The
-- output of a specific channel value and inputs are as follows: *
-- auto channel specified, with any input: Pass through
-- up to eight input channels. * 0 channels specified, with
-- any input: Audio omitted from the output. * 1 channel
-- specified, with at least one input channel: Mono sound. *
-- 2 channels specified, with any input: Two identical
-- mono channels or stereo. For more information about tracks, see
-- Audio:AudioPackingMode. For more information about how
-- Elastic Transcoder organizes channels and tracks, see
-- Audio:AudioPackingMode .
apChannels :: Lens' AudioParameters (Maybe Text)
-- | The audio codec for the output file. Valid values include aac
-- , flac , mp2 , mp3 , pcm , and
-- vorbis .
apCodec :: Lens' AudioParameters (Maybe Text)
-- | The method of organizing audio channels and tracks. Use
-- Audio:Channels to specify the number of channels in your
-- output, and Audio:AudioPackingMode to specify the number of
-- tracks and their relation to the channels. If you do not specify an
-- Audio:AudioPackingMode , Elastic Transcoder uses
-- SingleTrack . The following values are valid:
-- SingleTrack , OneChannelPerTrack , and
-- OneChannelPerTrackWithMosTo8Tracks When you specify
-- SingleTrack , Elastic Transcoder creates a single track for
-- your output. The track can have up to eight channels. Use
-- SingleTrack for all non-mxf containers. The outputs
-- of SingleTrack for a specific channel value and inputs are as
-- follows: * 0 channels with any input: Audio omitted
-- from the output * 1, 2, or auto channels with no audio
-- input: Audio omitted from the output * 1 channel with
-- any input with audio: One track with one channel, downmixed if
-- necessary * 2 channels with one track with one
-- channel: One track with two identical channels * 2 or auto
-- channels with two tracks with one channel each: One track
-- with two channels * 2 or auto channels with one track
-- with two channels: One track with two channels * 2
-- channels with one track with multiple channels: One track with
-- two channels * auto channels with one track with one
-- channel: One track with one channel * auto channels
-- with one track with multiple channels: One track with multiple
-- channels When you specify OneChannelPerTrack , Elastic
-- Transcoder creates a new track for every channel in your output. Your
-- output can have up to eight single-channel tracks. The outputs of
-- OneChannelPerTrack for a specific channel value and inputs
-- are as follows: * 0 channels with any input: Audio
-- omitted from the output * 1, 2, or auto channels with no
-- audio input: Audio omitted from the output * 1
-- channel with any input with audio: One track with one channel,
-- downmixed if necessary * 2 channels with one track with
-- one channel: Two tracks with one identical channel each * 2 or
-- auto channels with two tracks with one channel each: Two
-- tracks with one channel each * 2 or auto channels with
-- one track with two channels: Two tracks with one channel each *
-- 2 channels with one track with multiple channels: Two
-- tracks with one channel each * auto channels with one
-- track with one channel: One track with one channel * auto
-- channels with one track with multiple channels: Up to
-- eight tracks with one channel each When you specify
-- OneChannelPerTrackWithMosTo8Tracks , Elastic Transcoder
-- creates eight single-channel tracks for your output. All tracks that
-- do not contain audio data from an input channel are MOS, or Mit Out
-- Sound, tracks. The outputs of
-- OneChannelPerTrackWithMosTo8Tracks for a specific channel
-- value and inputs are as follows: * 0 channels with any
-- input: Audio omitted from the output * 1, 2, or auto
-- channels with no audio input: Audio omitted from the output *
-- 1 channel with any input with audio: One track with
-- one channel, downmixed if necessary, plus six MOS tracks * 2
-- channels with one track with one channel: Two tracks with one
-- identical channel each, plus six MOS tracks * 2 or auto
-- channels with two tracks with one channel each: Two tracks with
-- one channel each, plus six MOS tracks * 2 or auto
-- channels with one track with two channels: Two tracks with one
-- channel each, plus six MOS tracks * 2 channels with one
-- track with multiple channels: Two tracks with one channel each,
-- plus six MOS tracks * auto channels with one track with
-- one channel: One track with one channel, plus seven MOS tracks *
-- auto channels with one track with multiple channels:
-- Up to eight tracks with one channel each, plus MOS tracks until there
-- are eight tracks in all
apAudioPackingMode :: Lens' AudioParameters (Maybe Text)
-- | The sample rate of the audio stream in the output file, in Hertz.
-- Valid values include: auto , 22050 , 32000
-- , 44100 , 48000 , 96000 If you specify
-- auto , Elastic Transcoder automatically detects the sample
-- rate.
apSampleRate :: Lens' AudioParameters (Maybe Text)
-- | The bit rate of the audio stream in the output file, in
-- kilobits/second. Enter an integer between 64 and 320, inclusive.
apBitRate :: Lens' AudioParameters (Maybe Text)
-- | If you specified AAC for Audio:Codec , this is the
-- AAC compression profile to use. Valid values include:
-- auto , AAC-LC , HE-AAC , HE-AACv2
-- If you specify auto , Elastic Transcoder chooses a profile
-- based on the bit rate of the output file.
apCodecOptions :: Lens' AudioParameters (Maybe AudioCodecOptions)
-- | The file format of the output captions. If you leave this value blank,
-- Elastic Transcoder returns an error.
--
-- See: captionFormat smart constructor.
data CaptionFormat
-- | Creates a value of CaptionFormat with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cfPattern - The prefix for caption filenames, in the form
-- description -{language} , where: * description
-- is a description of the video. * {language} is a literal
-- value that Elastic Transcoder replaces with the two- or three-letter
-- code for the language of the caption in the output file names. If you
-- don't include {language} in the file name pattern, Elastic
-- Transcoder automatically appends "{language} " to the value
-- that you specify for the description. In addition, Elastic Transcoder
-- automatically appends the count to the end of the segment files. For
-- example, suppose you're transcoding into srt format. When you enter
-- "Sydney-{language}-sunrise", and the language of the captions is
-- English (en), the name of the first caption file is be
-- Sydney-en-sunrise00000.srt.
-- - cfFormat - The format you specify determines whether
-- Elastic Transcoder generates an embedded or sidecar caption for this
-- output. * Valid Embedded Caption Formats: * for FLAC :
-- None * For MP3 : None * For MP4 : mov-text * For
-- MPEG-TS : None * For ogg : None * For webm : None *
-- Valid Sidecar Caption Formats: Elastic Transcoder supports dfxp
-- (first div element only), scc, srt, and webvtt. If you want ttml or
-- smpte-tt compatible captions, specify dfxp as your output format. *
-- For FMP4 : dfxp * Non-FMP4 outputs : All sidecar types
-- fmp4 captions have an extension of .ismt
-- - cfEncryption - The encryption settings, if any, that you
-- want Elastic Transcoder to apply to your caption formats.
--
captionFormat :: CaptionFormat
-- | The prefix for caption filenames, in the form description
-- -{language} , where: * description is a description of
-- the video. * {language} is a literal value that Elastic
-- Transcoder replaces with the two- or three-letter code for the
-- language of the caption in the output file names. If you don't include
-- {language} in the file name pattern, Elastic Transcoder
-- automatically appends "{language} " to the value that you
-- specify for the description. In addition, Elastic Transcoder
-- automatically appends the count to the end of the segment files. For
-- example, suppose you're transcoding into srt format. When you enter
-- "Sydney-{language}-sunrise", and the language of the captions is
-- English (en), the name of the first caption file is be
-- Sydney-en-sunrise00000.srt.
cfPattern :: Lens' CaptionFormat (Maybe Text)
-- | The format you specify determines whether Elastic Transcoder generates
-- an embedded or sidecar caption for this output. * Valid Embedded
-- Caption Formats: * for FLAC : None * For MP3 : None
-- * For MP4 : mov-text * For MPEG-TS : None * For
-- ogg : None * For webm : None * Valid Sidecar Caption
-- Formats: Elastic Transcoder supports dfxp (first div element
-- only), scc, srt, and webvtt. If you want ttml or smpte-tt compatible
-- captions, specify dfxp as your output format. * For FMP4 : dfxp
-- * Non-FMP4 outputs : All sidecar types fmp4 captions
-- have an extension of .ismt
cfFormat :: Lens' CaptionFormat (Maybe Text)
-- | The encryption settings, if any, that you want Elastic Transcoder to
-- apply to your caption formats.
cfEncryption :: Lens' CaptionFormat (Maybe Encryption)
-- | A source file for the input sidecar captions used during the
-- transcoding process.
--
-- See: captionSource smart constructor.
data CaptionSource
-- | Creates a value of CaptionSource with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - csTimeOffset - For clip generation or captions that do not
-- start at the same time as the associated video file, the
-- TimeOffset tells Elastic Transcoder how much of the video to
-- encode before including captions. Specify the TimeOffset in the form
-- [+-]SS.sss or [+-]HH:mm:SS.ss.
-- - csEncryption - The encryption settings, if any, that
-- Elastic Transcoder needs to decyrpt your caption sources, or that you
-- want Elastic Transcoder to apply to your caption sources.
-- - csKey - The name of the sidecar caption file that you want
-- Elastic Transcoder to include in the output file.
-- - csLanguage - A string that specifies the language of the
-- caption. If you specified multiple inputs with captions, the caption
-- language must match in order to be included in the output. Specify
-- this as one of: * 2-character ISO 639-1 code * 3-character ISO 639-2
-- code For more information on ISO language codes and language names,
-- see the List of ISO 639-1 codes.
-- - csLabel - The label of the caption shown in the player when
-- choosing a language. We recommend that you put the caption language
-- name here, in the language of the captions.
--
captionSource :: CaptionSource
-- | For clip generation or captions that do not start at the same time as
-- the associated video file, the TimeOffset tells Elastic
-- Transcoder how much of the video to encode before including captions.
-- Specify the TimeOffset in the form [+-]SS.sss or [+-]HH:mm:SS.ss.
csTimeOffset :: Lens' CaptionSource (Maybe Text)
-- | The encryption settings, if any, that Elastic Transcoder needs to
-- decyrpt your caption sources, or that you want Elastic Transcoder to
-- apply to your caption sources.
csEncryption :: Lens' CaptionSource (Maybe Encryption)
-- | The name of the sidecar caption file that you want Elastic Transcoder
-- to include in the output file.
csKey :: Lens' CaptionSource (Maybe Text)
-- | A string that specifies the language of the caption. If you specified
-- multiple inputs with captions, the caption language must match in
-- order to be included in the output. Specify this as one of: *
-- 2-character ISO 639-1 code * 3-character ISO 639-2 code For more
-- information on ISO language codes and language names, see the List of
-- ISO 639-1 codes.
csLanguage :: Lens' CaptionSource (Maybe Text)
-- | The label of the caption shown in the player when choosing a language.
-- We recommend that you put the caption language name here, in the
-- language of the captions.
csLabel :: Lens' CaptionSource (Maybe Text)
-- | The captions to be created, if any.
--
-- See: captions smart constructor.
data Captions
-- | Creates a value of Captions with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cMergePolicy - A policy that determines how Elastic
-- Transcoder handles the existence of multiple captions. *
-- MergeOverride: Elastic Transcoder transcodes both embedded and
-- sidecar captions into outputs. If captions for a language are embedded
-- in the input file and also appear in a sidecar file, Elastic
-- Transcoder uses the sidecar captions and ignores the embedded captions
-- for that language. * MergeRetain: Elastic Transcoder transcodes
-- both embedded and sidecar captions into outputs. If captions for a
-- language are embedded in the input file and also appear in a sidecar
-- file, Elastic Transcoder uses the embedded captions and ignores the
-- sidecar captions for that language. If CaptionSources is
-- empty, Elastic Transcoder omits all sidecar captions from the output
-- files. * Override: Elastic Transcoder transcodes only the
-- sidecar captions that you specify in CaptionSources .
-- MergePolicy cannot be null.
-- - cCaptionSources - Source files for the input sidecar
-- captions used during the transcoding process. To omit all sidecar
-- captions, leave CaptionSources blank.
-- - cCaptionFormats - The array of file formats for the output
-- captions. If you leave this value blank, Elastic Transcoder returns an
-- error.
--
captions :: Captions
-- | A policy that determines how Elastic Transcoder handles the existence
-- of multiple captions. * MergeOverride: Elastic Transcoder
-- transcodes both embedded and sidecar captions into outputs. If
-- captions for a language are embedded in the input file and also appear
-- in a sidecar file, Elastic Transcoder uses the sidecar captions and
-- ignores the embedded captions for that language. * MergeRetain:
-- Elastic Transcoder transcodes both embedded and sidecar captions into
-- outputs. If captions for a language are embedded in the input file and
-- also appear in a sidecar file, Elastic Transcoder uses the embedded
-- captions and ignores the sidecar captions for that language. If
-- CaptionSources is empty, Elastic Transcoder omits all sidecar
-- captions from the output files. * Override: Elastic Transcoder
-- transcodes only the sidecar captions that you specify in
-- CaptionSources . MergePolicy cannot be null.
cMergePolicy :: Lens' Captions (Maybe Text)
-- | Source files for the input sidecar captions used during the
-- transcoding process. To omit all sidecar captions, leave
-- CaptionSources blank.
cCaptionSources :: Lens' Captions [CaptionSource]
-- | The array of file formats for the output captions. If you leave this
-- value blank, Elastic Transcoder returns an error.
cCaptionFormats :: Lens' Captions [CaptionFormat]
-- | Settings for one clip in a composition. All jobs in a playlist must
-- have the same clip settings.
--
-- See: clip smart constructor.
data Clip
-- | Creates a value of Clip with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cTimeSpan - Settings that determine when a clip begins and
-- how long it lasts.
--
clip :: Clip
-- | Settings that determine when a clip begins and how long it lasts.
cTimeSpan :: Lens' Clip (Maybe TimeSpan)
-- | The CreateJobOutput structure.
--
-- See: createJobOutput smart constructor.
data CreateJobOutput
-- | Creates a value of CreateJobOutput with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cjoThumbnailPattern - Whether you want Elastic Transcoder
-- to create thumbnails for your videos and, if so, how you want Elastic
-- Transcoder to name the files. If you don't want Elastic Transcoder to
-- create thumbnails, specify "". If you do want Elastic Transcoder to
-- create thumbnails, specify the information that you want to include in
-- the file name for each thumbnail. You can specify the following values
-- in any sequence: * {count} (Required) : If you want to
-- create thumbnails, you must include {count} in the
-- ThumbnailPattern object. Wherever you specify
-- {count} , Elastic Transcoder adds a five-digit sequence
-- number (beginning with 00001 ) to thumbnail file names. The
-- number indicates where a given thumbnail appears in the sequence of
-- thumbnails for a transcoded file. Important: If you specify a
-- literal value and/or {resolution} but you omit
-- {count} , Elastic Transcoder returns a validation error and
-- does not create the job. * Literal values (Optional) : You can
-- specify literal values anywhere in the ThumbnailPattern
-- object. For example, you can include them as a file name prefix or as
-- a delimiter between {resolution} and {count} . *
-- {resolution} (Optional) : If you want Elastic
-- Transcoder to include the resolution in the file name, include
-- {resolution} in the ThumbnailPattern object. When
-- creating thumbnails, Elastic Transcoder automatically saves the files
-- in the format (.jpg or .png) that appears in the preset that you
-- specified in the PresetID value of CreateJobOutput .
-- Elastic Transcoder also appends the applicable file name
-- extension.
-- - cjoCaptions - You can configure Elastic Transcoder to
-- transcode captions, or subtitles, from one format to another. All
-- captions must be in UTF-8. Elastic Transcoder supports two types of
-- captions: * Embedded: Embedded captions are included in the
-- same file as the audio and video. Elastic Transcoder supports only one
-- embedded caption per language, to a maximum of 300 embedded captions
-- per file. Valid input values include: CEA-608 (EIA-608 ,
-- first non-empty channel only), CEA-708 (EIA-708 , first
-- non-empty channel only), and mov-text Valid outputs include:
-- mov-text Elastic Transcoder supports a maximum of one
-- embedded format per output. * Sidecar: Sidecar captions are
-- kept in a separate metadata file from the audio and video data.
-- Sidecar captions require a player that is capable of understanding the
-- relationship between the video file and the sidecar file. Elastic
-- Transcoder supports only one sidecar caption per language, to a
-- maximum of 20 sidecar captions per file. Valid input values include:
-- dfxp (first div element only), ebu-tt , scc
-- , smpt , srt , ttml (first div element
-- only), and webvtt Valid outputs include: dfxp (first
-- div element only), scc , srt , and webvtt .
-- If you want ttml or smpte-tt compatible captions, specify dfxp as your
-- output format. Elastic Transcoder does not support OCR (Optical
-- Character Recognition), does not accept pictures as a valid input for
-- captions, and is not available for audio-only transcoding. Elastic
-- Transcoder does not preserve text formatting (for example, italics)
-- during the transcoding process. To remove captions or leave the
-- captions empty, set Captions to null. To pass through
-- existing captions unchanged, set the MergePolicy to
-- MergeRetain , and pass in a null CaptionSources
-- array. For more information on embedded files, see the Subtitles
-- Wikipedia page. For more information on sidecar files, see the
-- Extensible Metadata Platform and Sidecar file Wikipedia pages.
-- - cjoPresetId - The Id of the preset to use for this
-- job. The preset determines the audio, video, and thumbnail settings
-- that Elastic Transcoder uses for transcoding.
-- - cjoComposition - You can create an output file that
-- contains an excerpt from the input file. This excerpt, called a clip,
-- can come from the beginning, middle, or end of the file. The
-- Composition object contains settings for the clips that make up an
-- output file. For the current release, you can only specify settings
-- for a single clip per output file. The Composition object cannot be
-- null.
-- - cjoAlbumArt - Information about the album art that you want
-- Elastic Transcoder to add to the file during transcoding. You can
-- specify up to twenty album artworks for each output. Settings for each
-- artwork must be defined in the job for the current output.
-- - cjoWatermarks - Information about the watermarks that you
-- want Elastic Transcoder to add to the video during transcoding. You
-- can specify up to four watermarks for each output. Settings for each
-- watermark must be defined in the preset for the current output.
-- - cjoEncryption - You can specify encryption settings for any
-- output files that you want to use for a transcoding job. This includes
-- the output file and any watermarks, thumbnails, album art, or captions
-- that you want to use. You must specify encryption settings for each
-- file individually.
-- - cjoKey - The name to assign to the transcoded file. Elastic
-- Transcoder saves the file in the Amazon S3 bucket specified by the
-- OutputBucket object in the pipeline that is specified by the
-- pipeline ID. If a file with the specified name already exists in the
-- output bucket, the job fails.
-- - cjoSegmentDuration - Important: (Outputs in
-- Fragmented MP4 or MPEG-TS format only. If you specify a preset in
-- PresetId for which the value of Container is
-- fmp4 (Fragmented MP4) or ts (MPEG-TS),
-- SegmentDuration is the target maximum duration of each
-- segment in seconds. For HLSv3 format playlists, each media
-- segment is stored in a separate .ts file. For HLSv4
-- and Smooth playlists, all media segments for an output are
-- stored in a single file. Each segment is approximately the length of
-- the SegmentDuration , though individual segments might be
-- shorter or longer. The range of valid values is 1 to 60 seconds. If
-- the duration of the video is not evenly divisible by
-- SegmentDuration , the duration of the last segment is the
-- remainder of total length/SegmentDuration. Elastic Transcoder creates
-- an output-specific playlist for each output HLS output that
-- you specify in OutputKeys. To add an output to the master playlist for
-- this job, include it in the OutputKeys of the associated
-- playlist.
-- - cjoThumbnailEncryption - The encryption settings, if any,
-- that you want Elastic Transcoder to apply to your thumbnail.
-- - cjoRotate - The number of degrees clockwise by which you
-- want Elastic Transcoder to rotate the output relative to the input.
-- Enter one of the following values: auto , 0 ,
-- 90 , 180 , 270 . The value auto
-- generally works only if the file that you're transcoding contains
-- rotation metadata.
--
createJobOutput :: CreateJobOutput
-- | Whether you want Elastic Transcoder to create thumbnails for your
-- videos and, if so, how you want Elastic Transcoder to name the files.
-- If you don't want Elastic Transcoder to create thumbnails, specify "".
-- If you do want Elastic Transcoder to create thumbnails, specify the
-- information that you want to include in the file name for each
-- thumbnail. You can specify the following values in any sequence: *
-- {count} (Required) : If you want to create thumbnails,
-- you must include {count} in the ThumbnailPattern
-- object. Wherever you specify {count} , Elastic Transcoder
-- adds a five-digit sequence number (beginning with 00001 ) to
-- thumbnail file names. The number indicates where a given thumbnail
-- appears in the sequence of thumbnails for a transcoded file.
-- Important: If you specify a literal value and/or
-- {resolution} but you omit {count} , Elastic
-- Transcoder returns a validation error and does not create the job. *
-- Literal values (Optional) : You can specify literal values
-- anywhere in the ThumbnailPattern object. For example, you can
-- include them as a file name prefix or as a delimiter between
-- {resolution} and {count} . *
-- {resolution} (Optional) : If you want Elastic
-- Transcoder to include the resolution in the file name, include
-- {resolution} in the ThumbnailPattern object. When
-- creating thumbnails, Elastic Transcoder automatically saves the files
-- in the format (.jpg or .png) that appears in the preset that you
-- specified in the PresetID value of CreateJobOutput .
-- Elastic Transcoder also appends the applicable file name extension.
cjoThumbnailPattern :: Lens' CreateJobOutput (Maybe Text)
-- | You can configure Elastic Transcoder to transcode captions, or
-- subtitles, from one format to another. All captions must be in UTF-8.
-- Elastic Transcoder supports two types of captions: * Embedded:
-- Embedded captions are included in the same file as the audio and
-- video. Elastic Transcoder supports only one embedded caption per
-- language, to a maximum of 300 embedded captions per file. Valid input
-- values include: CEA-608 (EIA-608 , first non-empty channel
-- only), CEA-708 (EIA-708 , first non-empty channel only), and
-- mov-text Valid outputs include: mov-text Elastic
-- Transcoder supports a maximum of one embedded format per output. *
-- Sidecar: Sidecar captions are kept in a separate metadata file
-- from the audio and video data. Sidecar captions require a player that
-- is capable of understanding the relationship between the video file
-- and the sidecar file. Elastic Transcoder supports only one sidecar
-- caption per language, to a maximum of 20 sidecar captions per file.
-- Valid input values include: dfxp (first div element only),
-- ebu-tt , scc , smpt , srt ,
-- ttml (first div element only), and webvtt Valid
-- outputs include: dfxp (first div element only), scc
-- , srt , and webvtt . If you want ttml or smpte-tt
-- compatible captions, specify dfxp as your output format. Elastic
-- Transcoder does not support OCR (Optical Character Recognition), does
-- not accept pictures as a valid input for captions, and is not
-- available for audio-only transcoding. Elastic Transcoder does not
-- preserve text formatting (for example, italics) during the transcoding
-- process. To remove captions or leave the captions empty, set
-- Captions to null. To pass through existing captions
-- unchanged, set the MergePolicy to MergeRetain , and
-- pass in a null CaptionSources array. For more information on
-- embedded files, see the Subtitles Wikipedia page. For more information
-- on sidecar files, see the Extensible Metadata Platform and Sidecar
-- file Wikipedia pages.
cjoCaptions :: Lens' CreateJobOutput (Maybe Captions)
-- | The Id of the preset to use for this job. The preset
-- determines the audio, video, and thumbnail settings that Elastic
-- Transcoder uses for transcoding.
cjoPresetId :: Lens' CreateJobOutput (Maybe Text)
-- | You can create an output file that contains an excerpt from the input
-- file. This excerpt, called a clip, can come from the beginning,
-- middle, or end of the file. The Composition object contains settings
-- for the clips that make up an output file. For the current release,
-- you can only specify settings for a single clip per output file. The
-- Composition object cannot be null.
cjoComposition :: Lens' CreateJobOutput [Clip]
-- | Information about the album art that you want Elastic Transcoder to
-- add to the file during transcoding. You can specify up to twenty album
-- artworks for each output. Settings for each artwork must be defined in
-- the job for the current output.
cjoAlbumArt :: Lens' CreateJobOutput (Maybe JobAlbumArt)
-- | Information about the watermarks that you want Elastic Transcoder to
-- add to the video during transcoding. You can specify up to four
-- watermarks for each output. Settings for each watermark must be
-- defined in the preset for the current output.
cjoWatermarks :: Lens' CreateJobOutput [JobWatermark]
-- | You can specify encryption settings for any output files that you want
-- to use for a transcoding job. This includes the output file and any
-- watermarks, thumbnails, album art, or captions that you want to use.
-- You must specify encryption settings for each file individually.
cjoEncryption :: Lens' CreateJobOutput (Maybe Encryption)
-- | The name to assign to the transcoded file. Elastic Transcoder saves
-- the file in the Amazon S3 bucket specified by the
-- OutputBucket object in the pipeline that is specified by the
-- pipeline ID. If a file with the specified name already exists in the
-- output bucket, the job fails.
cjoKey :: Lens' CreateJobOutput (Maybe Text)
-- | Important: (Outputs in Fragmented MP4 or MPEG-TS format only.
-- If you specify a preset in PresetId for which the value of
-- Container is fmp4 (Fragmented MP4) or ts
-- (MPEG-TS), SegmentDuration is the target maximum duration of
-- each segment in seconds. For HLSv3 format playlists, each
-- media segment is stored in a separate .ts file. For
-- HLSv4 and Smooth playlists, all media segments for
-- an output are stored in a single file. Each segment is approximately
-- the length of the SegmentDuration , though individual
-- segments might be shorter or longer. The range of valid values is 1 to
-- 60 seconds. If the duration of the video is not evenly divisible by
-- SegmentDuration , the duration of the last segment is the
-- remainder of total length/SegmentDuration. Elastic Transcoder creates
-- an output-specific playlist for each output HLS output that
-- you specify in OutputKeys. To add an output to the master playlist for
-- this job, include it in the OutputKeys of the associated
-- playlist.
cjoSegmentDuration :: Lens' CreateJobOutput (Maybe Text)
-- | The encryption settings, if any, that you want Elastic Transcoder to
-- apply to your thumbnail.
cjoThumbnailEncryption :: Lens' CreateJobOutput (Maybe Encryption)
-- | The number of degrees clockwise by which you want Elastic Transcoder
-- to rotate the output relative to the input. Enter one of the following
-- values: auto , 0 , 90 , 180 ,
-- 270 . The value auto generally works only if the
-- file that you're transcoding contains rotation metadata.
cjoRotate :: Lens' CreateJobOutput (Maybe Text)
-- | Information about the master playlist.
--
-- See: createJobPlaylist smart constructor.
data CreateJobPlaylist
-- | Creates a value of CreateJobPlaylist with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cjpPlayReadyDrm - The DRM settings, if any, that you want
-- Elastic Transcoder to apply to the output files associated with this
-- playlist.
-- - cjpFormat - The format of the output playlist. Valid
-- formats include HLSv3 , HLSv4 , and Smooth
-- .
-- - cjpOutputKeys - For each output in this job that you want
-- to include in a master playlist, the value of the Outputs:Key
-- object. * If your output is not HLS or does not have a
-- segment duration set, the name of the output file is a concatenation
-- of OutputKeyPrefix and Outputs:Key :
-- OutputKeyPrefixOutputs:Key * If your output is HLSv3
-- and has a segment duration set, or is not included in a playlist,
-- Elastic Transcoder creates an output playlist file with a file
-- extension of .m3u8 , and a series of .ts files that
-- include a five-digit sequential counter beginning with 00000:
-- OutputKeyPrefixOutputs:Key .m3u8
-- OutputKeyPrefixOutputs:Key 00000.ts * If your output is
-- HLSv4 , has a segment duration set, and is included in an
-- HLSv4 playlist, Elastic Transcoder creates an output playlist
-- file with a file extension of _v4.m3u8 . If the output is
-- video, Elastic Transcoder also creates an output file with an
-- extension of _iframe.m3u8 :
-- OutputKeyPrefixOutputs:Key _v4.m3u8
-- OutputKeyPrefixOutputs:Key _iframe.m3u8
-- OutputKeyPrefixOutputs:Key .ts Elastic Transcoder
-- automatically appends the relevant file extension to the file name. If
-- you include a file extension in Output Key, the file name will have
-- two extensions. If you include more than one output in a playlist, any
-- segment duration settings, clip settings, or caption settings must be
-- the same for all outputs in the playlist. For Smooth
-- playlists, the Audio:Profile , Video:Profile , and
-- Video:FrameRate to Video:KeyframesMaxDist ratio must
-- be the same for all outputs.
-- - cjpName - The name that you want Elastic Transcoder to
-- assign to the master playlist, for example, nyc-vacation.m3u8. If the
-- name includes a / character, the section of the name before
-- the last / must be identical for all Name objects.
-- If you create more than one master playlist, the values of all
-- Name objects must be unique.
-- - cjpHlsContentProtection - The HLS content protection
-- settings, if any, that you want Elastic Transcoder to apply to the
-- output files associated with this playlist.
--
createJobPlaylist :: CreateJobPlaylist
-- | The DRM settings, if any, that you want Elastic Transcoder to apply to
-- the output files associated with this playlist.
cjpPlayReadyDrm :: Lens' CreateJobPlaylist (Maybe PlayReadyDrm)
-- | The format of the output playlist. Valid formats include
-- HLSv3 , HLSv4 , and Smooth .
cjpFormat :: Lens' CreateJobPlaylist (Maybe Text)
-- | For each output in this job that you want to include in a master
-- playlist, the value of the Outputs:Key object. * If your
-- output is not HLS or does not have a segment duration set,
-- the name of the output file is a concatenation of
-- OutputKeyPrefix and Outputs:Key :
-- OutputKeyPrefixOutputs:Key * If your output is HLSv3
-- and has a segment duration set, or is not included in a playlist,
-- Elastic Transcoder creates an output playlist file with a file
-- extension of .m3u8 , and a series of .ts files that
-- include a five-digit sequential counter beginning with 00000:
-- OutputKeyPrefixOutputs:Key .m3u8
-- OutputKeyPrefixOutputs:Key 00000.ts * If your output is
-- HLSv4 , has a segment duration set, and is included in an
-- HLSv4 playlist, Elastic Transcoder creates an output playlist
-- file with a file extension of _v4.m3u8 . If the output is
-- video, Elastic Transcoder also creates an output file with an
-- extension of _iframe.m3u8 :
-- OutputKeyPrefixOutputs:Key _v4.m3u8
-- OutputKeyPrefixOutputs:Key _iframe.m3u8
-- OutputKeyPrefixOutputs:Key .ts Elastic Transcoder
-- automatically appends the relevant file extension to the file name. If
-- you include a file extension in Output Key, the file name will have
-- two extensions. If you include more than one output in a playlist, any
-- segment duration settings, clip settings, or caption settings must be
-- the same for all outputs in the playlist. For Smooth
-- playlists, the Audio:Profile , Video:Profile , and
-- Video:FrameRate to Video:KeyframesMaxDist ratio must
-- be the same for all outputs.
cjpOutputKeys :: Lens' CreateJobPlaylist [Text]
-- | The name that you want Elastic Transcoder to assign to the master
-- playlist, for example, nyc-vacation.m3u8. If the name includes a
-- / character, the section of the name before the last
-- / must be identical for all Name objects. If you
-- create more than one master playlist, the values of all Name
-- objects must be unique.
cjpName :: Lens' CreateJobPlaylist (Maybe Text)
-- | The HLS content protection settings, if any, that you want Elastic
-- Transcoder to apply to the output files associated with this playlist.
cjpHlsContentProtection :: Lens' CreateJobPlaylist (Maybe HlsContentProtection)
-- | The detected properties of the input file. Elastic Transcoder
-- identifies these values from the input file.
--
-- See: detectedProperties smart constructor.
data DetectedProperties
-- | Creates a value of DetectedProperties with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - dpHeight - The detected height of the input file, in
-- pixels.
-- - dpFrameRate - The detected frame rate of the input file, in
-- frames per second.
-- - dpFileSize - The detected file size of the input file, in
-- bytes.
-- - dpWidth - The detected width of the input file, in
-- pixels.
-- - dpDurationMillis - The detected duration of the input file,
-- in milliseconds.
--
detectedProperties :: DetectedProperties
-- | The detected height of the input file, in pixels.
dpHeight :: Lens' DetectedProperties (Maybe Int)
-- | The detected frame rate of the input file, in frames per second.
dpFrameRate :: Lens' DetectedProperties (Maybe Text)
-- | The detected file size of the input file, in bytes.
dpFileSize :: Lens' DetectedProperties (Maybe Integer)
-- | The detected width of the input file, in pixels.
dpWidth :: Lens' DetectedProperties (Maybe Int)
-- | The detected duration of the input file, in milliseconds.
dpDurationMillis :: Lens' DetectedProperties (Maybe Integer)
-- | The encryption settings, if any, that are used for decrypting your
-- input files or encrypting your output files. If your input file is
-- encrypted, you must specify the mode that Elastic Transcoder uses to
-- decrypt your file, otherwise you must specify the mode you want
-- Elastic Transcoder to use to encrypt your output files.
--
-- See: encryption smart constructor.
data Encryption
-- | Creates a value of Encryption with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - eMode - The specific server-side encryption mode that you
-- want Elastic Transcoder to use when decrypting your input files or
-- encrypting your output files. Elastic Transcoder supports the
-- following options: * S3: Amazon S3 creates and manages the keys
-- used for encrypting your files. * S3-AWS-KMS: Amazon S3 calls
-- the Amazon Key Management Service, which creates and manages the keys
-- that are used for encrypting your files. If you specify
-- S3-AWS-KMS and you don't want to use the default key, you
-- must add the AWS-KMS key that you want to use to your pipeline. *
-- AES-CBC-PKCS7: A padded cipher-block mode of operation
-- originally used for HLS files. * AES-CTR: AES Counter Mode. *
-- AES-GCM: AES Galois Counter Mode, a mode of operation that is
-- an authenticated encryption format, meaning that a file, key, or
-- initialization vector that has been tampered with fails the decryption
-- process. For all three AES options, you must provide the following
-- settings, which must be base64-encoded: * Key * Key MD5
-- * Initialization Vector Important: For the AES modes,
-- your private encryption keys and your unencrypted data are never
-- stored by AWS; therefore, it is important that you safely manage your
-- encryption keys. If you lose them, you won't be able to unencrypt your
-- data.
-- - eKeyMD5 - The MD5 digest of the key that you used to
-- encrypt your input file, or that you want Elastic Transcoder to use to
-- encrypt your output file. Elastic Transcoder uses the key digest as a
-- checksum to make sure your key was not corrupted in transit. The key
-- MD5 must be base64-encoded, and it must be exactly 16 bytes long
-- before being base64-encoded.
-- - eKey - The data encryption key that you want Elastic
-- Transcoder to use to encrypt your output file, or that was used to
-- encrypt your input file. The key must be base64-encoded and it must be
-- one of the following bit lengths before being base64-encoded:
-- 128 , 192 , or 256 . The key must also be
-- encrypted by using the Amazon Key Management Service.
-- - eInitializationVector - The series of random bits created
-- by a random bit generator, unique for every encryption operation, that
-- you used to encrypt your input files or that you want Elastic
-- Transcoder to use to encrypt your output files. The initialization
-- vector must be base64-encoded, and it must be exactly 16 bytes long
-- before being base64-encoded.
--
encryption :: Encryption
-- | The specific server-side encryption mode that you want Elastic
-- Transcoder to use when decrypting your input files or encrypting your
-- output files. Elastic Transcoder supports the following options: *
-- S3: Amazon S3 creates and manages the keys used for encrypting
-- your files. * S3-AWS-KMS: Amazon S3 calls the Amazon Key
-- Management Service, which creates and manages the keys that are used
-- for encrypting your files. If you specify S3-AWS-KMS and you
-- don't want to use the default key, you must add the AWS-KMS key that
-- you want to use to your pipeline. * AES-CBC-PKCS7: A padded
-- cipher-block mode of operation originally used for HLS files. *
-- AES-CTR: AES Counter Mode. * AES-GCM: AES Galois Counter
-- Mode, a mode of operation that is an authenticated encryption format,
-- meaning that a file, key, or initialization vector that has been
-- tampered with fails the decryption process. For all three AES options,
-- you must provide the following settings, which must be base64-encoded:
-- * Key * Key MD5 * Initialization Vector
-- Important: For the AES modes, your private encryption keys and
-- your unencrypted data are never stored by AWS; therefore, it is
-- important that you safely manage your encryption keys. If you lose
-- them, you won't be able to unencrypt your data.
eMode :: Lens' Encryption (Maybe Text)
-- | The MD5 digest of the key that you used to encrypt your input file, or
-- that you want Elastic Transcoder to use to encrypt your output file.
-- Elastic Transcoder uses the key digest as a checksum to make sure your
-- key was not corrupted in transit. The key MD5 must be base64-encoded,
-- and it must be exactly 16 bytes long before being base64-encoded.
eKeyMD5 :: Lens' Encryption (Maybe Text)
-- | The data encryption key that you want Elastic Transcoder to use to
-- encrypt your output file, or that was used to encrypt your input file.
-- The key must be base64-encoded and it must be one of the following bit
-- lengths before being base64-encoded: 128 , 192 , or
-- 256 . The key must also be encrypted by using the Amazon Key
-- Management Service.
eKey :: Lens' Encryption (Maybe Text)
-- | The series of random bits created by a random bit generator, unique
-- for every encryption operation, that you used to encrypt your input
-- files or that you want Elastic Transcoder to use to encrypt your
-- output files. The initialization vector must be base64-encoded, and it
-- must be exactly 16 bytes long before being base64-encoded.
eInitializationVector :: Lens' Encryption (Maybe Text)
-- | The HLS content protection settings, if any, that you want Elastic
-- Transcoder to apply to your output files.
--
-- See: hlsContentProtection smart constructor.
data HlsContentProtection
-- | Creates a value of HlsContentProtection with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - hcpKeyMD5 - If Elastic Transcoder is generating your key
-- for you, you must leave this field blank. The MD5 digest of the key
-- that you want Elastic Transcoder to use to encrypt your output file,
-- and that you want Elastic Transcoder to use as a checksum to make sure
-- your key was not corrupted in transit. The key MD5 must be
-- base64-encoded, and it must be exactly 16 bytes before being base64-
-- encoded.
-- - hcpKeyStoragePolicy - Specify whether you want Elastic
-- Transcoder to write your HLS license key to an Amazon S3 bucket. If
-- you choose WithVariantPlaylists ,
-- LicenseAcquisitionUrl must be left blank and Elastic
-- Transcoder writes your data key into the same bucket as the associated
-- playlist.
-- - hcpKey - If you want Elastic Transcoder to generate a key
-- for you, leave this field blank. If you choose to supply your own key,
-- you must encrypt the key by using AWS KMS. The key must be
-- base64-encoded, and it must be one of the following bit lengths before
-- being base64-encoded: 128 , 192 , or 256
-- .
-- - hcpMethod - The content protection method for your output.
-- The only valid value is: aes-128 . This value is written into
-- the method attribute of the EXT-X-KEY metadata tag in the
-- output playlist.
-- - hcpInitializationVector - If Elastic Transcoder is
-- generating your key for you, you must leave this field blank. The
-- series of random bits created by a random bit generator, unique for
-- every encryption operation, that you want Elastic Transcoder to use to
-- encrypt your output files. The initialization vector must be
-- base64-encoded, and it must be exactly 16 bytes before being
-- base64-encoded.
-- - hcpLicenseAcquisitionURL - The location of the license key
-- required to decrypt your HLS playlist. The URL must be an absolute
-- path, and is referenced in the URI attribute of the EXT-X-KEY metadata
-- tag in the playlist file.
--
hlsContentProtection :: HlsContentProtection
-- | If Elastic Transcoder is generating your key for you, you must leave
-- this field blank. The MD5 digest of the key that you want Elastic
-- Transcoder to use to encrypt your output file, and that you want
-- Elastic Transcoder to use as a checksum to make sure your key was not
-- corrupted in transit. The key MD5 must be base64-encoded, and it must
-- be exactly 16 bytes before being base64- encoded.
hcpKeyMD5 :: Lens' HlsContentProtection (Maybe Text)
-- | Specify whether you want Elastic Transcoder to write your HLS license
-- key to an Amazon S3 bucket. If you choose
-- WithVariantPlaylists , LicenseAcquisitionUrl must be
-- left blank and Elastic Transcoder writes your data key into the same
-- bucket as the associated playlist.
hcpKeyStoragePolicy :: Lens' HlsContentProtection (Maybe Text)
-- | If you want Elastic Transcoder to generate a key for you, leave this
-- field blank. If you choose to supply your own key, you must encrypt
-- the key by using AWS KMS. The key must be base64-encoded, and it must
-- be one of the following bit lengths before being base64-encoded:
-- 128 , 192 , or 256 .
hcpKey :: Lens' HlsContentProtection (Maybe Text)
-- | The content protection method for your output. The only valid value
-- is: aes-128 . This value is written into the method attribute
-- of the EXT-X-KEY metadata tag in the output playlist.
hcpMethod :: Lens' HlsContentProtection (Maybe Text)
-- | If Elastic Transcoder is generating your key for you, you must leave
-- this field blank. The series of random bits created by a random bit
-- generator, unique for every encryption operation, that you want
-- Elastic Transcoder to use to encrypt your output files. The
-- initialization vector must be base64-encoded, and it must be exactly
-- 16 bytes before being base64-encoded.
hcpInitializationVector :: Lens' HlsContentProtection (Maybe Text)
-- | The location of the license key required to decrypt your HLS playlist.
-- The URL must be an absolute path, and is referenced in the URI
-- attribute of the EXT-X-KEY metadata tag in the playlist file.
hcpLicenseAcquisitionURL :: Lens' HlsContentProtection (Maybe Text)
-- | The captions to be created, if any.
--
-- See: inputCaptions smart constructor.
data InputCaptions
-- | Creates a value of InputCaptions with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - icMergePolicy - A policy that determines how Elastic
-- Transcoder handles the existence of multiple captions. *
-- MergeOverride: Elastic Transcoder transcodes both embedded and
-- sidecar captions into outputs. If captions for a language are embedded
-- in the input file and also appear in a sidecar file, Elastic
-- Transcoder uses the sidecar captions and ignores the embedded captions
-- for that language. * MergeRetain: Elastic Transcoder transcodes
-- both embedded and sidecar captions into outputs. If captions for a
-- language are embedded in the input file and also appear in a sidecar
-- file, Elastic Transcoder uses the embedded captions and ignores the
-- sidecar captions for that language. If CaptionSources is
-- empty, Elastic Transcoder omits all sidecar captions from the output
-- files. * Override: Elastic Transcoder transcodes only the
-- sidecar captions that you specify in CaptionSources .
-- MergePolicy cannot be null.
-- - icCaptionSources - Source files for the input sidecar
-- captions used during the transcoding process. To omit all sidecar
-- captions, leave CaptionSources blank.
--
inputCaptions :: InputCaptions
-- | A policy that determines how Elastic Transcoder handles the existence
-- of multiple captions. * MergeOverride: Elastic Transcoder
-- transcodes both embedded and sidecar captions into outputs. If
-- captions for a language are embedded in the input file and also appear
-- in a sidecar file, Elastic Transcoder uses the sidecar captions and
-- ignores the embedded captions for that language. * MergeRetain:
-- Elastic Transcoder transcodes both embedded and sidecar captions into
-- outputs. If captions for a language are embedded in the input file and
-- also appear in a sidecar file, Elastic Transcoder uses the embedded
-- captions and ignores the sidecar captions for that language. If
-- CaptionSources is empty, Elastic Transcoder omits all sidecar
-- captions from the output files. * Override: Elastic Transcoder
-- transcodes only the sidecar captions that you specify in
-- CaptionSources . MergePolicy cannot be null.
icMergePolicy :: Lens' InputCaptions (Maybe Text)
-- | Source files for the input sidecar captions used during the
-- transcoding process. To omit all sidecar captions, leave
-- CaptionSources blank.
icCaptionSources :: Lens' InputCaptions [CaptionSource]
-- | A section of the response body that provides information about the job
-- that is created.
--
-- See: job' smart constructor.
data Job'
-- | Creates a value of Job' with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - jStatus - The status of the job: Submitted ,
-- Progressing , Complete , Canceled , or
-- Error .
-- - jPipelineId - The Id of the pipeline that you want
-- Elastic Transcoder to use for transcoding. The pipeline determines
-- several settings, including the Amazon S3 bucket from which Elastic
-- Transcoder gets the files to transcode and the bucket into which
-- Elastic Transcoder puts the transcoded files.
-- - jARN - The Amazon Resource Name (ARN) for the job.
-- - jInputs - Information about the files that you're
-- transcoding. If you specified multiple files for this job, Elastic
-- Transcoder stitches the files together to make one output.
-- - jInput - A section of the request or response body that
-- provides information about the file that is being transcoded.
-- - jUserMetadata - User-defined metadata that you want to
-- associate with an Elastic Transcoder job. You specify metadata in
-- key/value pairs, and you can add up to 10 key/value
-- pairs per job. Elastic Transcoder does not guarantee that
-- key/value pairs are returned in the same order in which you
-- specify them. Metadata keys and values must use
-- characters from the following list: * 0-9 * A-Z and
-- a-z * Space * The following symbols:
-- _.:/=+-%@
-- - jOutputs - Information about the output files. We recommend
-- that you use the Outputs syntax for all jobs, even when you
-- want Elastic Transcoder to transcode a file into only one format. Do
-- not use both the Outputs and Output syntaxes in the
-- same request. You can create a maximum of 30 outputs per job. If you
-- specify more than one output for a job, Elastic Transcoder creates the
-- files for each output in the order in which you specify them in the
-- job.
-- - jOutput - If you specified one output for a job,
-- information about that output. If you specified multiple outputs for a
-- job, the Output object lists information about the first output. This
-- duplicates the information that is listed for the first output in the
-- Outputs object. Important: Outputs recommended instead. A
-- section of the request or response body that provides information
-- about the transcoded (target) file.
-- - jId - The identifier that Elastic Transcoder assigned to
-- the job. You use this value to get settings for the job or to delete
-- the job.
-- - jPlaylists - Important: Outputs in Fragmented MP4 or
-- MPEG-TS format only. If you specify a preset in PresetId for
-- which the value of Container is fmp4 (Fragmented MP4) or ts
-- (MPEG-TS), Playlists contains information about the master
-- playlists that you want Elastic Transcoder to create. The maximum
-- number of master playlists in a job is 30.
-- - jOutputKeyPrefix - The value, if any, that you want Elastic
-- Transcoder to prepend to the names of all files that this job creates,
-- including output files, thumbnails, and playlists. We recommend that
-- you add a / or some other delimiter to the end of the
-- OutputKeyPrefix .
-- - jTiming - Details about the timing of a job.
--
job' :: Job'
-- | The status of the job: Submitted , Progressing ,
-- Complete , Canceled , or Error .
jStatus :: Lens' Job' (Maybe Text)
-- | The Id of the pipeline that you want Elastic Transcoder to
-- use for transcoding. The pipeline determines several settings,
-- including the Amazon S3 bucket from which Elastic Transcoder gets the
-- files to transcode and the bucket into which Elastic Transcoder puts
-- the transcoded files.
jPipelineId :: Lens' Job' (Maybe Text)
-- | The Amazon Resource Name (ARN) for the job.
jARN :: Lens' Job' (Maybe Text)
-- | Information about the files that you're transcoding. If you specified
-- multiple files for this job, Elastic Transcoder stitches the files
-- together to make one output.
jInputs :: Lens' Job' [JobInput]
-- | A section of the request or response body that provides information
-- about the file that is being transcoded.
jInput :: Lens' Job' (Maybe JobInput)
-- | User-defined metadata that you want to associate with an Elastic
-- Transcoder job. You specify metadata in key/value pairs, and
-- you can add up to 10 key/value pairs per job. Elastic
-- Transcoder does not guarantee that key/value pairs are
-- returned in the same order in which you specify them. Metadata
-- keys and values must use characters from the
-- following list: * 0-9 * A-Z and a-z *
-- Space * The following symbols: _.:/=+-%@
jUserMetadata :: Lens' Job' (HashMap Text Text)
-- | Information about the output files. We recommend that you use the
-- Outputs syntax for all jobs, even when you want Elastic
-- Transcoder to transcode a file into only one format. Do not use both
-- the Outputs and Output syntaxes in the same request.
-- You can create a maximum of 30 outputs per job. If you specify more
-- than one output for a job, Elastic Transcoder creates the files for
-- each output in the order in which you specify them in the job.
jOutputs :: Lens' Job' [JobOutput]
-- | If you specified one output for a job, information about that output.
-- If you specified multiple outputs for a job, the Output object lists
-- information about the first output. This duplicates the information
-- that is listed for the first output in the Outputs object.
-- Important: Outputs recommended instead. A section of the
-- request or response body that provides information about the
-- transcoded (target) file.
jOutput :: Lens' Job' (Maybe JobOutput)
-- | The identifier that Elastic Transcoder assigned to the job. You use
-- this value to get settings for the job or to delete the job.
jId :: Lens' Job' (Maybe Text)
-- | Important: Outputs in Fragmented MP4 or MPEG-TS format only. If
-- you specify a preset in PresetId for which the value of
-- Container is fmp4 (Fragmented MP4) or ts (MPEG-TS),
-- Playlists contains information about the master playlists
-- that you want Elastic Transcoder to create. The maximum number of
-- master playlists in a job is 30.
jPlaylists :: Lens' Job' [Playlist]
-- | The value, if any, that you want Elastic Transcoder to prepend to the
-- names of all files that this job creates, including output files,
-- thumbnails, and playlists. We recommend that you add a / or some other
-- delimiter to the end of the OutputKeyPrefix .
jOutputKeyPrefix :: Lens' Job' (Maybe Text)
-- | Details about the timing of a job.
jTiming :: Lens' Job' (Maybe Timing)
-- | The .jpg or .png file associated with an audio file.
--
-- See: jobAlbumArt smart constructor.
data JobAlbumArt
-- | Creates a value of JobAlbumArt with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - jaaMergePolicy - A policy that determines how Elastic
-- Transcoder handles the existence of multiple album artwork files. *
-- Replace: The specified album art replaces any existing album
-- art. * Prepend: The specified album art is placed in front of
-- any existing album art. * Append: The specified album art is
-- placed after any existing album art. * Fallback: If the
-- original input file contains artwork, Elastic Transcoder uses that
-- artwork for the output. If the original input does not contain
-- artwork, Elastic Transcoder uses the specified album art file.
-- - jaaArtwork - The file to be used as album art. There can be
-- multiple artworks associated with an audio file, to a maximum of 20.
-- Valid formats are .jpg and .png
--
jobAlbumArt :: JobAlbumArt
-- | A policy that determines how Elastic Transcoder handles the existence
-- of multiple album artwork files. * Replace: The specified
-- album art replaces any existing album art. * Prepend: The
-- specified album art is placed in front of any existing album art. *
-- Append: The specified album art is placed after any existing
-- album art. * Fallback: If the original input file contains
-- artwork, Elastic Transcoder uses that artwork for the output. If the
-- original input does not contain artwork, Elastic Transcoder uses the
-- specified album art file.
jaaMergePolicy :: Lens' JobAlbumArt (Maybe Text)
-- | The file to be used as album art. There can be multiple artworks
-- associated with an audio file, to a maximum of 20. Valid formats are
-- .jpg and .png
jaaArtwork :: Lens' JobAlbumArt [Artwork]
-- | Information about the file that you're transcoding.
--
-- See: jobInput smart constructor.
data JobInput
-- | Creates a value of JobInput with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - jiFrameRate - The frame rate of the input file. If you want
-- Elastic Transcoder to automatically detect the frame rate of the input
-- file, specify auto . If you want to specify the frame rate
-- for the input file, enter one of the following values: 10 ,
-- 15 , 23.97 , 24 , 25 ,
-- 29.97 , 30 , 60 If you specify a value
-- other than auto , Elastic Transcoder disables automatic
-- detection of the frame rate.
-- - jiResolution - This value must be auto , which
-- causes Elastic Transcoder to automatically detect the resolution of
-- the input file.
-- - jiAspectRatio - The aspect ratio of the input file. If you
-- want Elastic Transcoder to automatically detect the aspect ratio of
-- the input file, specify auto . If you want to specify the
-- aspect ratio for the output file, enter one of the following values:
-- 1:1 , 4:3 , 3:2 , 16:9 If you
-- specify a value other than auto , Elastic Transcoder disables
-- automatic detection of the aspect ratio.
-- - jiTimeSpan - Settings for clipping an input. Each input can
-- have different clip settings.
-- - jiEncryption - The encryption settings, if any, that are
-- used for decrypting your input files. If your input file is encrypted,
-- you must specify the mode that Elastic Transcoder uses to decrypt your
-- file.
-- - jiKey - The name of the file to transcode. Elsewhere in the
-- body of the JSON block is the the ID of the pipeline to use for
-- processing the job. The InputBucket object in that pipeline
-- tells Elastic Transcoder which Amazon S3 bucket to get the file from.
-- If the file name includes a prefix, such as
-- cooking/lasagna.mpg , include the prefix in the key. If the
-- file isn't in the specified bucket, Elastic Transcoder returns an
-- error.
-- - jiDetectedProperties - The detected properties of the input
-- file.
-- - jiContainer - The container type for the input file. If you
-- want Elastic Transcoder to automatically detect the container type of
-- the input file, specify auto . If you want to specify the
-- container type for the input file, enter one of the following values:
-- 3gp , aac , asf , avi ,
-- divx , flv , m4a , mkv ,
-- mov , mp3 , mp4 , mpeg ,
-- mpeg-ps , mpeg-ts , mxf , ogg ,
-- vob , wav , webm
-- - jiInterlaced - Whether the input file is interlaced. If you
-- want Elastic Transcoder to automatically detect whether the input file
-- is interlaced, specify auto . If you want to specify whether
-- the input file is interlaced, enter one of the following values:
-- true , false If you specify a value other than
-- auto , Elastic Transcoder disables automatic detection of
-- interlacing.
-- - jiInputCaptions - You can configure Elastic Transcoder to
-- transcode captions, or subtitles, from one format to another. All
-- captions must be in UTF-8. Elastic Transcoder supports two types of
-- captions: * Embedded: Embedded captions are included in the
-- same file as the audio and video. Elastic Transcoder supports only one
-- embedded caption per language, to a maximum of 300 embedded captions
-- per file. Valid input values include: CEA-608 (EIA-608 ,
-- first non-empty channel only), CEA-708 (EIA-708 , first
-- non-empty channel only), and mov-text Valid outputs include:
-- mov-text Elastic Transcoder supports a maximum of one
-- embedded format per output. * Sidecar: Sidecar captions are
-- kept in a separate metadata file from the audio and video data.
-- Sidecar captions require a player that is capable of understanding the
-- relationship between the video file and the sidecar file. Elastic
-- Transcoder supports only one sidecar caption per language, to a
-- maximum of 20 sidecar captions per file. Valid input values include:
-- dfxp (first div element only), ebu-tt , scc
-- , smpt , srt , ttml (first div element
-- only), and webvtt Valid outputs include: dfxp (first
-- div element only), scc , srt , and webvtt .
-- If you want ttml or smpte-tt compatible captions, specify dfxp as your
-- output format. Elastic Transcoder does not support OCR (Optical
-- Character Recognition), does not accept pictures as a valid input for
-- captions, and is not available for audio-only transcoding. Elastic
-- Transcoder does not preserve text formatting (for example, italics)
-- during the transcoding process. To remove captions or leave the
-- captions empty, set Captions to null. To pass through
-- existing captions unchanged, set the MergePolicy to
-- MergeRetain , and pass in a null CaptionSources
-- array. For more information on embedded files, see the Subtitles
-- Wikipedia page. For more information on sidecar files, see the
-- Extensible Metadata Platform and Sidecar file Wikipedia pages.
--
jobInput :: JobInput
-- | The frame rate of the input file. If you want Elastic Transcoder to
-- automatically detect the frame rate of the input file, specify
-- auto . If you want to specify the frame rate for the input
-- file, enter one of the following values: 10 , 15 ,
-- 23.97 , 24 , 25 , 29.97 ,
-- 30 , 60 If you specify a value other than
-- auto , Elastic Transcoder disables automatic detection of the
-- frame rate.
jiFrameRate :: Lens' JobInput (Maybe Text)
-- | This value must be auto , which causes Elastic Transcoder to
-- automatically detect the resolution of the input file.
jiResolution :: Lens' JobInput (Maybe Text)
-- | The aspect ratio of the input file. If you want Elastic Transcoder to
-- automatically detect the aspect ratio of the input file, specify
-- auto . If you want to specify the aspect ratio for the output
-- file, enter one of the following values: 1:1 , 4:3 ,
-- 3:2 , 16:9 If you specify a value other than
-- auto , Elastic Transcoder disables automatic detection of the
-- aspect ratio.
jiAspectRatio :: Lens' JobInput (Maybe Text)
-- | Settings for clipping an input. Each input can have different clip
-- settings.
jiTimeSpan :: Lens' JobInput (Maybe TimeSpan)
-- | The encryption settings, if any, that are used for decrypting your
-- input files. If your input file is encrypted, you must specify the
-- mode that Elastic Transcoder uses to decrypt your file.
jiEncryption :: Lens' JobInput (Maybe Encryption)
-- | The name of the file to transcode. Elsewhere in the body of the JSON
-- block is the the ID of the pipeline to use for processing the job. The
-- InputBucket object in that pipeline tells Elastic Transcoder
-- which Amazon S3 bucket to get the file from. If the file name includes
-- a prefix, such as cooking/lasagna.mpg , include the prefix in
-- the key. If the file isn't in the specified bucket, Elastic Transcoder
-- returns an error.
jiKey :: Lens' JobInput (Maybe Text)
-- | The detected properties of the input file.
jiDetectedProperties :: Lens' JobInput (Maybe DetectedProperties)
-- | The container type for the input file. If you want Elastic Transcoder
-- to automatically detect the container type of the input file, specify
-- auto . If you want to specify the container type for the
-- input file, enter one of the following values: 3gp ,
-- aac , asf , avi , divx ,
-- flv , m4a , mkv , mov ,
-- mp3 , mp4 , mpeg , mpeg-ps ,
-- mpeg-ts , mxf , ogg , vob ,
-- wav , webm
jiContainer :: Lens' JobInput (Maybe Text)
-- | Whether the input file is interlaced. If you want Elastic Transcoder
-- to automatically detect whether the input file is interlaced, specify
-- auto . If you want to specify whether the input file is
-- interlaced, enter one of the following values: true ,
-- false If you specify a value other than auto ,
-- Elastic Transcoder disables automatic detection of interlacing.
jiInterlaced :: Lens' JobInput (Maybe Text)
-- | You can configure Elastic Transcoder to transcode captions, or
-- subtitles, from one format to another. All captions must be in UTF-8.
-- Elastic Transcoder supports two types of captions: * Embedded:
-- Embedded captions are included in the same file as the audio and
-- video. Elastic Transcoder supports only one embedded caption per
-- language, to a maximum of 300 embedded captions per file. Valid input
-- values include: CEA-608 (EIA-608 , first non-empty channel
-- only), CEA-708 (EIA-708 , first non-empty channel only), and
-- mov-text Valid outputs include: mov-text Elastic
-- Transcoder supports a maximum of one embedded format per output. *
-- Sidecar: Sidecar captions are kept in a separate metadata file
-- from the audio and video data. Sidecar captions require a player that
-- is capable of understanding the relationship between the video file
-- and the sidecar file. Elastic Transcoder supports only one sidecar
-- caption per language, to a maximum of 20 sidecar captions per file.
-- Valid input values include: dfxp (first div element only),
-- ebu-tt , scc , smpt , srt ,
-- ttml (first div element only), and webvtt Valid
-- outputs include: dfxp (first div element only), scc
-- , srt , and webvtt . If you want ttml or smpte-tt
-- compatible captions, specify dfxp as your output format. Elastic
-- Transcoder does not support OCR (Optical Character Recognition), does
-- not accept pictures as a valid input for captions, and is not
-- available for audio-only transcoding. Elastic Transcoder does not
-- preserve text formatting (for example, italics) during the transcoding
-- process. To remove captions or leave the captions empty, set
-- Captions to null. To pass through existing captions
-- unchanged, set the MergePolicy to MergeRetain , and
-- pass in a null CaptionSources array. For more information on
-- embedded files, see the Subtitles Wikipedia page. For more information
-- on sidecar files, see the Extensible Metadata Platform and Sidecar
-- file Wikipedia pages.
jiInputCaptions :: Lens' JobInput (Maybe InputCaptions)
-- | Important: Outputs recommended instead.
--
-- If you specified one output for a job, information about that output.
-- If you specified multiple outputs for a job, the Output
-- object lists information about the first output. This duplicates the
-- information that is listed for the first output in the
-- Outputs object.
--
-- See: jobOutput smart constructor.
data JobOutput
-- | Creates a value of JobOutput with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - joAppliedColorSpaceConversion - If Elastic Transcoder used
-- a preset with a ColorSpaceConversionMode to transcode the
-- output file, the AppliedColorSpaceConversion parameter shows
-- the conversion used. If no ColorSpaceConversionMode was
-- defined in the preset, this parameter is not be included in the job
-- response.
-- - joThumbnailPattern - Whether you want Elastic Transcoder to
-- create thumbnails for your videos and, if so, how you want Elastic
-- Transcoder to name the files. If you don't want Elastic Transcoder to
-- create thumbnails, specify "". If you do want Elastic Transcoder to
-- create thumbnails, specify the information that you want to include in
-- the file name for each thumbnail. You can specify the following values
-- in any sequence: * {count} (Required) : If you want to
-- create thumbnails, you must include {count} in the
-- ThumbnailPattern object. Wherever you specify
-- {count} , Elastic Transcoder adds a five-digit sequence
-- number (beginning with 00001 ) to thumbnail file names. The
-- number indicates where a given thumbnail appears in the sequence of
-- thumbnails for a transcoded file. Important: If you specify a
-- literal value and/or {resolution} but you omit
-- {count} , Elastic Transcoder returns a validation error and
-- does not create the job. * Literal values (Optional) : You can
-- specify literal values anywhere in the ThumbnailPattern
-- object. For example, you can include them as a file name prefix or as
-- a delimiter between {resolution} and {count} . *
-- {resolution} (Optional) : If you want Elastic
-- Transcoder to include the resolution in the file name, include
-- {resolution} in the ThumbnailPattern object. When
-- creating thumbnails, Elastic Transcoder automatically saves the files
-- in the format (.jpg or .png) that appears in the preset that you
-- specified in the PresetID value of CreateJobOutput .
-- Elastic Transcoder also appends the applicable file name
-- extension.
-- - joStatus - The status of one output in a job. If you
-- specified only one output for the job, Outputs:Status is
-- always the same as Job:Status . If you specified more than
-- one output: * Job:Status and Outputs:Status for all
-- of the outputs is Submitted until Elastic Transcoder starts to process
-- the first output. * When Elastic Transcoder starts to process the
-- first output, Outputs:Status for that output and
-- Job:Status both change to Progressing. For each output, the
-- value of Outputs:Status remains Submitted until Elastic
-- Transcoder starts to process the output. * Job:Status remains
-- Progressing until all of the outputs reach a terminal status, either
-- Complete or Error. * When all of the outputs reach a terminal status,
-- Job:Status changes to Complete only if
-- Outputs:Status for all of the outputs is Complete .
-- If Outputs:Status for one or more outputs is Error ,
-- the terminal status for Job:Status is also Error .
-- The value of Status is one of the following:
-- Submitted , Progressing , Complete ,
-- Canceled , or Error .
-- - joHeight - Height of the output file, in pixels.
-- - joFrameRate - Frame rate of the output file, in frames per
-- second.
-- - joCaptions - You can configure Elastic Transcoder to
-- transcode captions, or subtitles, from one format to another. All
-- captions must be in UTF-8. Elastic Transcoder supports two types of
-- captions: * Embedded: Embedded captions are included in the
-- same file as the audio and video. Elastic Transcoder supports only one
-- embedded caption per language, to a maximum of 300 embedded captions
-- per file. Valid input values include: CEA-608 (EIA-608 ,
-- first non-empty channel only), CEA-708 (EIA-708 , first
-- non-empty channel only), and mov-text Valid outputs include:
-- mov-text Elastic Transcoder supports a maximum of one
-- embedded format per output. * Sidecar: Sidecar captions are
-- kept in a separate metadata file from the audio and video data.
-- Sidecar captions require a player that is capable of understanding the
-- relationship between the video file and the sidecar file. Elastic
-- Transcoder supports only one sidecar caption per language, to a
-- maximum of 20 sidecar captions per file. Valid input values include:
-- dfxp (first div element only), ebu-tt , scc
-- , smpt , srt , ttml (first div element
-- only), and webvtt Valid outputs include: dfxp (first
-- div element only), scc , srt , and webvtt .
-- If you want ttml or smpte-tt compatible captions, specify dfxp as your
-- output format. Elastic Transcoder does not support OCR (Optical
-- Character Recognition), does not accept pictures as a valid input for
-- captions, and is not available for audio-only transcoding. Elastic
-- Transcoder does not preserve text formatting (for example, italics)
-- during the transcoding process. To remove captions or leave the
-- captions empty, set Captions to null. To pass through
-- existing captions unchanged, set the MergePolicy to
-- MergeRetain , and pass in a null CaptionSources
-- array. For more information on embedded files, see the Subtitles
-- Wikipedia page. For more information on sidecar files, see the
-- Extensible Metadata Platform and Sidecar file Wikipedia pages.
-- - joPresetId - The value of the Id object for the
-- preset that you want to use for this job. The preset determines the
-- audio, video, and thumbnail settings that Elastic Transcoder uses for
-- transcoding. To use a preset that you created, specify the preset ID
-- that Elastic Transcoder returned in the response when you created the
-- preset. You can also use the Elastic Transcoder system presets, which
-- you can get with ListPresets .
-- - joComposition - You can create an output file that contains
-- an excerpt from the input file. This excerpt, called a clip, can come
-- from the beginning, middle, or end of the file. The Composition object
-- contains settings for the clips that make up an output file. For the
-- current release, you can only specify settings for a single clip per
-- output file. The Composition object cannot be null.
-- - joAlbumArt - The album art to be associated with the output
-- file, if any.
-- - joFileSize - File size of the output file, in bytes.
-- - joWatermarks - Information about the watermarks that you
-- want Elastic Transcoder to add to the video during transcoding. You
-- can specify up to four watermarks for each output. Settings for each
-- watermark must be defined in the preset that you specify in
-- Preset for the current output. Watermarks are added to the
-- output video in the sequence in which you list them in the job
-- output—the first watermark in the list is added to the output video
-- first, the second watermark in the list is added next, and so on. As a
-- result, if the settings in a preset cause Elastic Transcoder to place
-- all watermarks in the same location, the second watermark that you add
-- covers the first one, the third one covers the second, and the fourth
-- one covers the third.
-- - joWidth - Specifies the width of the output file in
-- pixels.
-- - joEncryption - The encryption settings, if any, that you
-- want Elastic Transcoder to apply to your output files. If you choose
-- to use encryption, you must specify a mode to use. If you choose not
-- to use encryption, Elastic Transcoder writes an unencrypted file to
-- your Amazon S3 bucket.
-- - joKey - The name to assign to the transcoded file. Elastic
-- Transcoder saves the file in the Amazon S3 bucket specified by the
-- OutputBucket object in the pipeline that is specified by the
-- pipeline ID.
-- - joStatusDetail - Information that further explains
-- Status .
-- - joId - A sequential counter, starting with 1, that
-- identifies an output among the outputs from the current job. In the
-- Output syntax, this value is always 1.
-- - joSegmentDuration - Important: (Outputs in
-- Fragmented MP4 or MPEG-TS format only. If you specify a preset in
-- PresetId for which the value of Container is
-- fmp4 (Fragmented MP4) or ts (MPEG-TS),
-- SegmentDuration is the target maximum duration of each
-- segment in seconds. For HLSv3 format playlists, each media
-- segment is stored in a separate .ts file. For HLSv4
-- , MPEG-DASH , and Smooth playlists, all media
-- segments for an output are stored in a single file. Each segment is
-- approximately the length of the SegmentDuration , though
-- individual segments might be shorter or longer. The range of valid
-- values is 1 to 60 seconds. If the duration of the video is not evenly
-- divisible by SegmentDuration , the duration of the last
-- segment is the remainder of total length/SegmentDuration. Elastic
-- Transcoder creates an output-specific playlist for each output
-- HLS output that you specify in OutputKeys. To add an output
-- to the master playlist for this job, include it in the
-- OutputKeys of the associated playlist.
-- - joDurationMillis - Duration of the output file, in
-- milliseconds.
-- - joThumbnailEncryption - The encryption settings, if any,
-- that you want Elastic Transcoder to apply to your thumbnail.
-- - joDuration - Duration of the output file, in seconds.
-- - joRotate - The number of degrees clockwise by which you
-- want Elastic Transcoder to rotate the output relative to the input.
-- Enter one of the following values: auto , 0 ,
-- 90 , 180 , 270 The value auto
-- generally works only if the file that you're transcoding contains
-- rotation metadata.
--
jobOutput :: JobOutput
-- | If Elastic Transcoder used a preset with a
-- ColorSpaceConversionMode to transcode the output file, the
-- AppliedColorSpaceConversion parameter shows the conversion
-- used. If no ColorSpaceConversionMode was defined in the
-- preset, this parameter is not be included in the job response.
joAppliedColorSpaceConversion :: Lens' JobOutput (Maybe Text)
-- | Whether you want Elastic Transcoder to create thumbnails for your
-- videos and, if so, how you want Elastic Transcoder to name the files.
-- If you don't want Elastic Transcoder to create thumbnails, specify "".
-- If you do want Elastic Transcoder to create thumbnails, specify the
-- information that you want to include in the file name for each
-- thumbnail. You can specify the following values in any sequence: *
-- {count} (Required) : If you want to create thumbnails,
-- you must include {count} in the ThumbnailPattern
-- object. Wherever you specify {count} , Elastic Transcoder
-- adds a five-digit sequence number (beginning with 00001 ) to
-- thumbnail file names. The number indicates where a given thumbnail
-- appears in the sequence of thumbnails for a transcoded file.
-- Important: If you specify a literal value and/or
-- {resolution} but you omit {count} , Elastic
-- Transcoder returns a validation error and does not create the job. *
-- Literal values (Optional) : You can specify literal values
-- anywhere in the ThumbnailPattern object. For example, you can
-- include them as a file name prefix or as a delimiter between
-- {resolution} and {count} . *
-- {resolution} (Optional) : If you want Elastic
-- Transcoder to include the resolution in the file name, include
-- {resolution} in the ThumbnailPattern object. When
-- creating thumbnails, Elastic Transcoder automatically saves the files
-- in the format (.jpg or .png) that appears in the preset that you
-- specified in the PresetID value of CreateJobOutput .
-- Elastic Transcoder also appends the applicable file name extension.
joThumbnailPattern :: Lens' JobOutput (Maybe Text)
-- | The status of one output in a job. If you specified only one output
-- for the job, Outputs:Status is always the same as
-- Job:Status . If you specified more than one output: *
-- Job:Status and Outputs:Status for all of the outputs
-- is Submitted until Elastic Transcoder starts to process the first
-- output. * When Elastic Transcoder starts to process the first output,
-- Outputs:Status for that output and Job:Status both
-- change to Progressing. For each output, the value of
-- Outputs:Status remains Submitted until Elastic Transcoder
-- starts to process the output. * Job:Status remains Progressing until
-- all of the outputs reach a terminal status, either Complete or Error.
-- * When all of the outputs reach a terminal status, Job:Status
-- changes to Complete only if Outputs:Status for all of the
-- outputs is Complete . If Outputs:Status for one or
-- more outputs is Error , the terminal status for
-- Job:Status is also Error . The value of
-- Status is one of the following: Submitted ,
-- Progressing , Complete , Canceled , or
-- Error .
joStatus :: Lens' JobOutput (Maybe Text)
-- | Height of the output file, in pixels.
joHeight :: Lens' JobOutput (Maybe Int)
-- | Frame rate of the output file, in frames per second.
joFrameRate :: Lens' JobOutput (Maybe Text)
-- | You can configure Elastic Transcoder to transcode captions, or
-- subtitles, from one format to another. All captions must be in UTF-8.
-- Elastic Transcoder supports two types of captions: * Embedded:
-- Embedded captions are included in the same file as the audio and
-- video. Elastic Transcoder supports only one embedded caption per
-- language, to a maximum of 300 embedded captions per file. Valid input
-- values include: CEA-608 (EIA-608 , first non-empty channel
-- only), CEA-708 (EIA-708 , first non-empty channel only), and
-- mov-text Valid outputs include: mov-text Elastic
-- Transcoder supports a maximum of one embedded format per output. *
-- Sidecar: Sidecar captions are kept in a separate metadata file
-- from the audio and video data. Sidecar captions require a player that
-- is capable of understanding the relationship between the video file
-- and the sidecar file. Elastic Transcoder supports only one sidecar
-- caption per language, to a maximum of 20 sidecar captions per file.
-- Valid input values include: dfxp (first div element only),
-- ebu-tt , scc , smpt , srt ,
-- ttml (first div element only), and webvtt Valid
-- outputs include: dfxp (first div element only), scc
-- , srt , and webvtt . If you want ttml or smpte-tt
-- compatible captions, specify dfxp as your output format. Elastic
-- Transcoder does not support OCR (Optical Character Recognition), does
-- not accept pictures as a valid input for captions, and is not
-- available for audio-only transcoding. Elastic Transcoder does not
-- preserve text formatting (for example, italics) during the transcoding
-- process. To remove captions or leave the captions empty, set
-- Captions to null. To pass through existing captions
-- unchanged, set the MergePolicy to MergeRetain , and
-- pass in a null CaptionSources array. For more information on
-- embedded files, see the Subtitles Wikipedia page. For more information
-- on sidecar files, see the Extensible Metadata Platform and Sidecar
-- file Wikipedia pages.
joCaptions :: Lens' JobOutput (Maybe Captions)
-- | The value of the Id object for the preset that you want to
-- use for this job. The preset determines the audio, video, and
-- thumbnail settings that Elastic Transcoder uses for transcoding. To
-- use a preset that you created, specify the preset ID that Elastic
-- Transcoder returned in the response when you created the preset. You
-- can also use the Elastic Transcoder system presets, which you can get
-- with ListPresets .
joPresetId :: Lens' JobOutput (Maybe Text)
-- | You can create an output file that contains an excerpt from the input
-- file. This excerpt, called a clip, can come from the beginning,
-- middle, or end of the file. The Composition object contains settings
-- for the clips that make up an output file. For the current release,
-- you can only specify settings for a single clip per output file. The
-- Composition object cannot be null.
joComposition :: Lens' JobOutput [Clip]
-- | The album art to be associated with the output file, if any.
joAlbumArt :: Lens' JobOutput (Maybe JobAlbumArt)
-- | File size of the output file, in bytes.
joFileSize :: Lens' JobOutput (Maybe Integer)
-- | Information about the watermarks that you want Elastic Transcoder to
-- add to the video during transcoding. You can specify up to four
-- watermarks for each output. Settings for each watermark must be
-- defined in the preset that you specify in Preset for the
-- current output. Watermarks are added to the output video in the
-- sequence in which you list them in the job output—the first watermark
-- in the list is added to the output video first, the second watermark
-- in the list is added next, and so on. As a result, if the settings in
-- a preset cause Elastic Transcoder to place all watermarks in the same
-- location, the second watermark that you add covers the first one, the
-- third one covers the second, and the fourth one covers the third.
joWatermarks :: Lens' JobOutput [JobWatermark]
-- | Specifies the width of the output file in pixels.
joWidth :: Lens' JobOutput (Maybe Int)
-- | The encryption settings, if any, that you want Elastic Transcoder to
-- apply to your output files. If you choose to use encryption, you must
-- specify a mode to use. If you choose not to use encryption, Elastic
-- Transcoder writes an unencrypted file to your Amazon S3 bucket.
joEncryption :: Lens' JobOutput (Maybe Encryption)
-- | The name to assign to the transcoded file. Elastic Transcoder saves
-- the file in the Amazon S3 bucket specified by the
-- OutputBucket object in the pipeline that is specified by the
-- pipeline ID.
joKey :: Lens' JobOutput (Maybe Text)
-- | Information that further explains Status .
joStatusDetail :: Lens' JobOutput (Maybe Text)
-- | A sequential counter, starting with 1, that identifies an output among
-- the outputs from the current job. In the Output syntax, this value is
-- always 1.
joId :: Lens' JobOutput (Maybe Text)
-- | Important: (Outputs in Fragmented MP4 or MPEG-TS format only.
-- If you specify a preset in PresetId for which the value of
-- Container is fmp4 (Fragmented MP4) or ts
-- (MPEG-TS), SegmentDuration is the target maximum duration of
-- each segment in seconds. For HLSv3 format playlists, each
-- media segment is stored in a separate .ts file. For
-- HLSv4 , MPEG-DASH , and Smooth playlists,
-- all media segments for an output are stored in a single file. Each
-- segment is approximately the length of the SegmentDuration ,
-- though individual segments might be shorter or longer. The range of
-- valid values is 1 to 60 seconds. If the duration of the video is not
-- evenly divisible by SegmentDuration , the duration of the
-- last segment is the remainder of total length/SegmentDuration. Elastic
-- Transcoder creates an output-specific playlist for each output
-- HLS output that you specify in OutputKeys. To add an output
-- to the master playlist for this job, include it in the
-- OutputKeys of the associated playlist.
joSegmentDuration :: Lens' JobOutput (Maybe Text)
-- | Duration of the output file, in milliseconds.
joDurationMillis :: Lens' JobOutput (Maybe Integer)
-- | The encryption settings, if any, that you want Elastic Transcoder to
-- apply to your thumbnail.
joThumbnailEncryption :: Lens' JobOutput (Maybe Encryption)
-- | Duration of the output file, in seconds.
joDuration :: Lens' JobOutput (Maybe Integer)
-- | The number of degrees clockwise by which you want Elastic Transcoder
-- to rotate the output relative to the input. Enter one of the following
-- values: auto , 0 , 90 , 180 ,
-- 270 The value auto generally works only if the file
-- that you're transcoding contains rotation metadata.
joRotate :: Lens' JobOutput (Maybe Text)
-- | Watermarks can be in .png or .jpg format. If you want to display a
-- watermark that is not rectangular, use the .png format, which supports
-- transparency.
--
-- See: jobWatermark smart constructor.
data JobWatermark
-- | Creates a value of JobWatermark with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - jwPresetWatermarkId - The ID of the watermark settings that
-- Elastic Transcoder uses to add watermarks to the video during
-- transcoding. The settings are in the preset specified by Preset for
-- the current output. In that preset, the value of Watermarks Id tells
-- Elastic Transcoder which settings to use.
-- - jwInputKey - The name of the .png or .jpg file that you
-- want to use for the watermark. To determine which Amazon S3 bucket
-- contains the specified file, Elastic Transcoder checks the pipeline
-- specified by Pipeline ; the Input Bucket object in
-- that pipeline identifies the bucket. If the file name includes a
-- prefix, for example, logos/128x64.png , include the prefix in
-- the key. If the file isn't in the specified bucket, Elastic Transcoder
-- returns an error.
-- - jwEncryption - The encryption settings, if any, that you
-- want Elastic Transcoder to apply to your watermarks.
--
jobWatermark :: JobWatermark
-- | The ID of the watermark settings that Elastic Transcoder uses to add
-- watermarks to the video during transcoding. The settings are in the
-- preset specified by Preset for the current output. In that preset, the
-- value of Watermarks Id tells Elastic Transcoder which settings to use.
jwPresetWatermarkId :: Lens' JobWatermark (Maybe Text)
-- | The name of the .png or .jpg file that you want to use for the
-- watermark. To determine which Amazon S3 bucket contains the specified
-- file, Elastic Transcoder checks the pipeline specified by
-- Pipeline ; the Input Bucket object in that pipeline
-- identifies the bucket. If the file name includes a prefix, for
-- example, logos/128x64.png , include the prefix in the key. If
-- the file isn't in the specified bucket, Elastic Transcoder returns an
-- error.
jwInputKey :: Lens' JobWatermark (Maybe Text)
-- | The encryption settings, if any, that you want Elastic Transcoder to
-- apply to your watermarks.
jwEncryption :: Lens' JobWatermark (Maybe Encryption)
-- | The Amazon Simple Notification Service (Amazon SNS) topic or topics to
-- notify in order to report job status.
--
-- Important: To receive notifications, you must also subscribe to
-- the new topic in the Amazon SNS console.
--
-- See: notifications smart constructor.
data Notifications
-- | Creates a value of Notifications with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - nError - The Amazon SNS topic that you want to notify when
-- Elastic Transcoder encounters an error condition.
-- - nWarning - The Amazon SNS topic that you want to notify
-- when Elastic Transcoder encounters a warning condition.
-- - nProgressing - The Amazon Simple Notification Service
-- (Amazon SNS) topic that you want to notify when Elastic Transcoder has
-- started to process the job.
-- - nCompleted - The Amazon SNS topic that you want to notify
-- when Elastic Transcoder has finished processing the job.
--
notifications :: Notifications
-- | The Amazon SNS topic that you want to notify when Elastic Transcoder
-- encounters an error condition.
nError :: Lens' Notifications (Maybe Text)
-- | The Amazon SNS topic that you want to notify when Elastic Transcoder
-- encounters a warning condition.
nWarning :: Lens' Notifications (Maybe Text)
-- | The Amazon Simple Notification Service (Amazon SNS) topic that you
-- want to notify when Elastic Transcoder has started to process the job.
nProgressing :: Lens' Notifications (Maybe Text)
-- | The Amazon SNS topic that you want to notify when Elastic Transcoder
-- has finished processing the job.
nCompleted :: Lens' Notifications (Maybe Text)
-- | The Permission structure.
--
-- See: permission smart constructor.
data Permission
-- | Creates a value of Permission with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - pAccess - The permission that you want to give to the AWS
-- user that is listed in Grantee. Valid values include: * READ
-- : The grantee can read the thumbnails and metadata for thumbnails that
-- Elastic Transcoder adds to the Amazon S3 bucket. * READ_ACP :
-- The grantee can read the object ACL for thumbnails that Elastic
-- Transcoder adds to the Amazon S3 bucket. * WRITE_ACP : The
-- grantee can write the ACL for the thumbnails that Elastic Transcoder
-- adds to the Amazon S3 bucket. * FULL_CONTROL : The grantee
-- has READ, READ_ACP, and WRITE_ACP permissions for the thumbnails that
-- Elastic Transcoder adds to the Amazon S3 bucket.
-- - pGranteeType - The type of value that appears in the
-- Grantee object: * Canonical : Either the canonical user ID
-- for an AWS account or an origin access identity for an Amazon
-- CloudFront distribution. Important: A canonical user ID is not
-- the same as an AWS account number. * Email : The registered
-- email address of an AWS account. * Group : One of the
-- following predefined Amazon S3 groups: AllUsers ,
-- AuthenticatedUsers , or LogDelivery .
-- - pGrantee - The AWS user or group that you want to have
-- access to transcoded files and playlists. To identify the user or
-- group, you can specify the canonical user ID for an AWS account, an
-- origin access identity for a CloudFront distribution, the registered
-- email address of an AWS account, or a predefined Amazon S3 group.
--
permission :: Permission
-- | The permission that you want to give to the AWS user that is listed in
-- Grantee. Valid values include: * READ : The grantee can read
-- the thumbnails and metadata for thumbnails that Elastic Transcoder
-- adds to the Amazon S3 bucket. * READ_ACP : The grantee can
-- read the object ACL for thumbnails that Elastic Transcoder adds to the
-- Amazon S3 bucket. * WRITE_ACP : The grantee can write the ACL
-- for the thumbnails that Elastic Transcoder adds to the Amazon S3
-- bucket. * FULL_CONTROL : The grantee has READ, READ_ACP, and
-- WRITE_ACP permissions for the thumbnails that Elastic Transcoder adds
-- to the Amazon S3 bucket.
pAccess :: Lens' Permission [Text]
-- | The type of value that appears in the Grantee object: *
-- Canonical : Either the canonical user ID for an AWS account
-- or an origin access identity for an Amazon CloudFront distribution.
-- Important: A canonical user ID is not the same as an AWS
-- account number. * Email : The registered email address of an
-- AWS account. * Group : One of the following predefined Amazon
-- S3 groups: AllUsers , AuthenticatedUsers , or
-- LogDelivery .
pGranteeType :: Lens' Permission (Maybe Text)
-- | The AWS user or group that you want to have access to transcoded files
-- and playlists. To identify the user or group, you can specify the
-- canonical user ID for an AWS account, an origin access identity for a
-- CloudFront distribution, the registered email address of an AWS
-- account, or a predefined Amazon S3 group.
pGrantee :: Lens' Permission (Maybe Text)
-- | The pipeline (queue) that is used to manage jobs.
--
-- See: pipeline smart constructor.
data Pipeline
-- | Creates a value of Pipeline with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - pipStatus - The current status of the pipeline: *
-- Active : The pipeline is processing jobs. * Paused :
-- The pipeline is not currently processing jobs.
-- - pipARN - The Amazon Resource Name (ARN) for the
-- pipeline.
-- - pipInputBucket - The Amazon S3 bucket from which Elastic
-- Transcoder gets media files for transcoding and the graphics files, if
-- any, that you want to use for watermarks.
-- - pipContentConfig - Information about the Amazon S3 bucket
-- in which you want Elastic Transcoder to save transcoded files and
-- playlists. Either you specify both ContentConfig and
-- ThumbnailConfig , or you specify OutputBucket . *
-- Bucket : The Amazon S3 bucket in which you want Elastic
-- Transcoder to save transcoded files and playlists. *
-- Permissions : A list of the users and/or predefined Amazon S3
-- groups you want to have access to transcoded files and playlists, and
-- the type of access that you want them to have. * GranteeType: The type
-- of value that appears in the Grantee object: *
-- Canonical : Either the canonical user ID for an AWS account
-- or an origin access identity for an Amazon CloudFront distribution. *
-- Email : The registered email address of an AWS account. *
-- Group : One of the following predefined Amazon S3 groups:
-- AllUsers , AuthenticatedUsers , or
-- LogDelivery . * Grantee : The AWS user or group that
-- you want to have access to transcoded files and playlists. *
-- Access : The permission that you want to give to the AWS user
-- that is listed in Grantee . Valid values include: *
-- READ : The grantee can read the objects and metadata for
-- objects that Elastic Transcoder adds to the Amazon S3 bucket. *
-- READ_ACP : The grantee can read the object ACL for objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- WRITE_ACP : The grantee can write the ACL for the objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- FULL_CONTROL : The grantee has READ ,
-- READ_ACP , and WRITE_ACP permissions for the objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- StorageClass : The Amazon S3 storage class, Standard or
-- ReducedRedundancy, that you want Elastic Transcoder to assign to the
-- video files and playlists that it stores in your Amazon S3
-- bucket.
-- - pipOutputBucket - The Amazon S3 bucket in which you want
-- Elastic Transcoder to save transcoded files, thumbnails, and
-- playlists. Either you specify this value, or you specify both
-- ContentConfig and ThumbnailConfig .
-- - pipRole - The IAM Amazon Resource Name (ARN) for the role
-- that Elastic Transcoder uses to transcode jobs for this pipeline.
-- - pipName - The name of the pipeline. We recommend that the
-- name be unique within the AWS account, but uniqueness is not enforced.
-- Constraints: Maximum 40 characters
-- - pipAWSKMSKeyARN - The AWS Key Management Service (AWS KMS)
-- key that you want to use with this pipeline. If you use either
-- S3 or S3-AWS-KMS as your Encryption:Mode ,
-- you don't need to provide a key with your job because a default key,
-- known as an AWS-KMS key, is created for you automatically. You need to
-- provide an AWS-KMS key only if you want to use a non-default AWS-KMS
-- key, or if you are using an Encryption:Mode of
-- AES-PKCS7 , AES-CTR , or AES-GCM .
-- - pipId - The identifier for the pipeline. You use this value
-- to identify the pipeline in which you want to perform a variety of
-- operations, such as creating a job or a preset.
-- - pipNotifications - The Amazon Simple Notification Service
-- (Amazon SNS) topic that you want to notify to report job status.
-- Important: To receive notifications, you must also subscribe to
-- the new topic in the Amazon SNS console. * Progressing
-- (optional): The Amazon Simple Notification Service (Amazon SNS) topic
-- that you want to notify when Elastic Transcoder has started to process
-- the job. * Completed (optional): The Amazon SNS topic that you
-- want to notify when Elastic Transcoder has finished processing the
-- job. * Warning (optional): The Amazon SNS topic that you want
-- to notify when Elastic Transcoder encounters a warning condition. *
-- Error (optional): The Amazon SNS topic that you want to notify
-- when Elastic Transcoder encounters an error condition.
-- - pipThumbnailConfig - Information about the Amazon S3 bucket
-- in which you want Elastic Transcoder to save thumbnail files. Either
-- you specify both ContentConfig and ThumbnailConfig ,
-- or you specify OutputBucket . * Bucket : The Amazon
-- S3 bucket in which you want Elastic Transcoder to save thumbnail
-- files. * Permissions : A list of the users andor
-- predefined Amazon S3 groups you want to have access to thumbnail
-- files, and the type of access that you want them to have. *
-- GranteeType: The type of value that appears in the Grantee object: *
-- Canonical : Either the canonical user ID for an AWS account
-- or an origin access identity for an Amazon CloudFront distribution.
-- Important:/ A canonical user ID is not the same as an AWS account
-- number. * Email : The registered email address of an AWS
-- account. * Group : One of the following predefined Amazon S3
-- groups: AllUsers , AuthenticatedUsers , or
-- LogDelivery . * Grantee : The AWS user or group that
-- you want to have access to thumbnail files. * Access: The permission
-- that you want to give to the AWS user that is listed in Grantee. Valid
-- values include: * READ : The grantee can read the thumbnails
-- and metadata for thumbnails that Elastic Transcoder adds to the Amazon
-- S3 bucket. * READ_ACP : The grantee can read the object ACL
-- for thumbnails that Elastic Transcoder adds to the Amazon S3 bucket. *
-- WRITE_ACP : The grantee can write the ACL for the thumbnails
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- FULL_CONTROL : The grantee has READ, READ_ACP, and WRITE_ACP
-- permissions for the thumbnails that Elastic Transcoder adds to the
-- Amazon S3 bucket. * StorageClass : The Amazon S3 storage
-- class, Standard or ReducedRedundancy , that you want
-- Elastic Transcoder to assign to the thumbnails that it stores in your
-- Amazon S3 bucket.
--
pipeline :: Pipeline
-- | The current status of the pipeline: * Active : The pipeline
-- is processing jobs. * Paused : The pipeline is not currently
-- processing jobs.
pipStatus :: Lens' Pipeline (Maybe Text)
-- | The Amazon Resource Name (ARN) for the pipeline.
pipARN :: Lens' Pipeline (Maybe Text)
-- | The Amazon S3 bucket from which Elastic Transcoder gets media files
-- for transcoding and the graphics files, if any, that you want to use
-- for watermarks.
pipInputBucket :: Lens' Pipeline (Maybe Text)
-- | Information about the Amazon S3 bucket in which you want Elastic
-- Transcoder to save transcoded files and playlists. Either you specify
-- both ContentConfig and ThumbnailConfig , or you
-- specify OutputBucket . * Bucket : The Amazon S3 bucket
-- in which you want Elastic Transcoder to save transcoded files and
-- playlists. * Permissions : A list of the users and/or
-- predefined Amazon S3 groups you want to have access to transcoded
-- files and playlists, and the type of access that you want them to
-- have. * GranteeType: The type of value that appears in the
-- Grantee object: * Canonical : Either the canonical
-- user ID for an AWS account or an origin access identity for an Amazon
-- CloudFront distribution. * Email : The registered email
-- address of an AWS account. * Group : One of the following
-- predefined Amazon S3 groups: AllUsers ,
-- AuthenticatedUsers , or LogDelivery . *
-- Grantee : The AWS user or group that you want to have access
-- to transcoded files and playlists. * Access : The permission
-- that you want to give to the AWS user that is listed in
-- Grantee . Valid values include: * READ : The grantee
-- can read the objects and metadata for objects that Elastic Transcoder
-- adds to the Amazon S3 bucket. * READ_ACP : The grantee can
-- read the object ACL for objects that Elastic Transcoder adds to the
-- Amazon S3 bucket. * WRITE_ACP : The grantee can write the ACL
-- for the objects that Elastic Transcoder adds to the Amazon S3 bucket.
-- * FULL_CONTROL : The grantee has READ ,
-- READ_ACP , and WRITE_ACP permissions for the objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- StorageClass : The Amazon S3 storage class, Standard or
-- ReducedRedundancy, that you want Elastic Transcoder to assign to the
-- video files and playlists that it stores in your Amazon S3 bucket.
pipContentConfig :: Lens' Pipeline (Maybe PipelineOutputConfig)
-- | The Amazon S3 bucket in which you want Elastic Transcoder to save
-- transcoded files, thumbnails, and playlists. Either you specify this
-- value, or you specify both ContentConfig and
-- ThumbnailConfig .
pipOutputBucket :: Lens' Pipeline (Maybe Text)
-- | The IAM Amazon Resource Name (ARN) for the role that Elastic
-- Transcoder uses to transcode jobs for this pipeline.
pipRole :: Lens' Pipeline (Maybe Text)
-- | The name of the pipeline. We recommend that the name be unique within
-- the AWS account, but uniqueness is not enforced. Constraints: Maximum
-- 40 characters
pipName :: Lens' Pipeline (Maybe Text)
-- | The AWS Key Management Service (AWS KMS) key that you want to use with
-- this pipeline. If you use either S3 or S3-AWS-KMS as
-- your Encryption:Mode , you don't need to provide a key with
-- your job because a default key, known as an AWS-KMS key, is created
-- for you automatically. You need to provide an AWS-KMS key only if you
-- want to use a non-default AWS-KMS key, or if you are using an
-- Encryption:Mode of AES-PKCS7 , AES-CTR , or
-- AES-GCM .
pipAWSKMSKeyARN :: Lens' Pipeline (Maybe Text)
-- | The identifier for the pipeline. You use this value to identify the
-- pipeline in which you want to perform a variety of operations, such as
-- creating a job or a preset.
pipId :: Lens' Pipeline (Maybe Text)
-- | The Amazon Simple Notification Service (Amazon SNS) topic that you
-- want to notify to report job status. Important: To receive
-- notifications, you must also subscribe to the new topic in the Amazon
-- SNS console. * Progressing (optional): The Amazon Simple
-- Notification Service (Amazon SNS) topic that you want to notify when
-- Elastic Transcoder has started to process the job. * Completed
-- (optional): The Amazon SNS topic that you want to notify when Elastic
-- Transcoder has finished processing the job. * Warning
-- (optional): The Amazon SNS topic that you want to notify when Elastic
-- Transcoder encounters a warning condition. * Error (optional):
-- The Amazon SNS topic that you want to notify when Elastic Transcoder
-- encounters an error condition.
pipNotifications :: Lens' Pipeline (Maybe Notifications)
-- | Information about the Amazon S3 bucket in which you want Elastic
-- Transcoder to save thumbnail files. Either you specify both
-- ContentConfig and ThumbnailConfig , or you specify
-- OutputBucket . * Bucket : The Amazon S3 bucket in
-- which you want Elastic Transcoder to save thumbnail files. *
-- Permissions : A list of the users andor predefined Amazon
-- S3 groups you want to have access to thumbnail files, and the type of
-- access that you want them to have. * GranteeType: The type of value
-- that appears in the Grantee object: * Canonical : Either the
-- canonical user ID for an AWS account or an origin access identity for
-- an Amazon CloudFront distribution. Important:/ A canonical user ID
-- is not the same as an AWS account number. * Email : The
-- registered email address of an AWS account. * Group : One of
-- the following predefined Amazon S3 groups: AllUsers ,
-- AuthenticatedUsers , or LogDelivery . *
-- Grantee : The AWS user or group that you want to have access
-- to thumbnail files. * Access: The permission that you want to give to
-- the AWS user that is listed in Grantee. Valid values include: *
-- READ : The grantee can read the thumbnails and metadata for
-- thumbnails that Elastic Transcoder adds to the Amazon S3 bucket. *
-- READ_ACP : The grantee can read the object ACL for thumbnails
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- WRITE_ACP : The grantee can write the ACL for the thumbnails
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- FULL_CONTROL : The grantee has READ, READ_ACP, and WRITE_ACP
-- permissions for the thumbnails that Elastic Transcoder adds to the
-- Amazon S3 bucket. * StorageClass : The Amazon S3 storage
-- class, Standard or ReducedRedundancy , that you want
-- Elastic Transcoder to assign to the thumbnails that it stores in your
-- Amazon S3 bucket.
pipThumbnailConfig :: Lens' Pipeline (Maybe PipelineOutputConfig)
-- | The PipelineOutputConfig structure.
--
-- See: pipelineOutputConfig smart constructor.
data PipelineOutputConfig
-- | Creates a value of PipelineOutputConfig with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - pocBucket - The Amazon S3 bucket in which you want Elastic
-- Transcoder to save the transcoded files. Specify this value when all
-- of the following are true: * You want to save transcoded files,
-- thumbnails (if any), and playlists (if any) together in one bucket. *
-- You do not want to specify the users or groups who have access to the
-- transcoded files, thumbnails, and playlists. * You do not want to
-- specify the permissions that Elastic Transcoder grants to the files. *
-- You want to associate the transcoded files and thumbnails with the
-- Amazon S3 Standard storage class. If you want to save transcoded files
-- and playlists in one bucket and thumbnails in another bucket, specify
-- which users can access the transcoded files or the permissions the
-- users have, or change the Amazon S3 storage class, omit OutputBucket
-- and specify values for ContentConfig and
-- ThumbnailConfig instead.
-- - pocStorageClass - The Amazon S3 storage class,
-- Standard or ReducedRedundancy , that you want
-- Elastic Transcoder to assign to the video files and playlists that it
-- stores in your Amazon S3 bucket.
-- - pocPermissions - Optional. The Permissions object
-- specifies which users andor predefined Amazon S3 groups you want to
-- have access to transcoded files and playlists, and the type of access
-- you want them to have. You can grant permissions to a maximum of 30
-- users andor predefined Amazon S3 groups. If you include
-- Permissions , Elastic Transcoder grants only the permissions
-- that you specify. It does not grant full permissions to the owner of
-- the role specified by Role . If you want that user to have
-- full control, you must explicitly grant full control to the user. If
-- you omit Permissions , Elastic Transcoder grants full control
-- over the transcoded files and playlists to the owner of the role
-- specified by Role , and grants no other permissions to any
-- other user or group.
--
pipelineOutputConfig :: PipelineOutputConfig
-- | The Amazon S3 bucket in which you want Elastic Transcoder to save the
-- transcoded files. Specify this value when all of the following are
-- true: * You want to save transcoded files, thumbnails (if any), and
-- playlists (if any) together in one bucket. * You do not want to
-- specify the users or groups who have access to the transcoded files,
-- thumbnails, and playlists. * You do not want to specify the
-- permissions that Elastic Transcoder grants to the files. * You want to
-- associate the transcoded files and thumbnails with the Amazon S3
-- Standard storage class. If you want to save transcoded files and
-- playlists in one bucket and thumbnails in another bucket, specify
-- which users can access the transcoded files or the permissions the
-- users have, or change the Amazon S3 storage class, omit OutputBucket
-- and specify values for ContentConfig and
-- ThumbnailConfig instead.
pocBucket :: Lens' PipelineOutputConfig (Maybe Text)
-- | The Amazon S3 storage class, Standard or
-- ReducedRedundancy , that you want Elastic Transcoder to
-- assign to the video files and playlists that it stores in your Amazon
-- S3 bucket.
pocStorageClass :: Lens' PipelineOutputConfig (Maybe Text)
-- | Optional. The Permissions object specifies which users
-- andor predefined Amazon S3 groups you want to have access to
-- transcoded files and playlists, and the type of access you want them
-- to have. You can grant permissions to a maximum of 30 users andor
-- predefined Amazon S3 groups. If you include Permissions ,
-- Elastic Transcoder grants only the permissions that you specify. It
-- does not grant full permissions to the owner of the role specified by
-- Role . If you want that user to have full control, you must
-- explicitly grant full control to the user. If you omit
-- Permissions , Elastic Transcoder grants full control over the
-- transcoded files and playlists to the owner of the role specified by
-- Role , and grants no other permissions to any other user or
-- group.
pocPermissions :: Lens' PipelineOutputConfig [Permission]
-- | The PlayReady DRM settings, if any, that you want Elastic Transcoder
-- to apply to the output files associated with this playlist.
--
-- PlayReady DRM encrypts your media files using AES-CTR
-- encryption.
--
-- If you use DRM for an HLSv3 playlist, your outputs must have
-- a master playlist.
--
-- See: playReadyDrm smart constructor.
data PlayReadyDrm
-- | Creates a value of PlayReadyDrm with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - prdKeyId - The ID for your DRM key, so that your DRM
-- license provider knows which key to provide. The key ID must be
-- provided in big endian, and Elastic Transcoder converts it to little
-- endian before inserting it into the PlayReady DRM headers. If you are
-- unsure whether your license server provides your key ID in big or
-- little endian, check with your DRM provider.
-- - prdFormat - The type of DRM, if any, that you want Elastic
-- Transcoder to apply to the output files associated with this
-- playlist.
-- - prdKeyMD5 - The MD5 digest of the key used for DRM on your
-- file, and that you want Elastic Transcoder to use as a checksum to
-- make sure your key was not corrupted in transit. The key MD5 must be
-- base64-encoded, and it must be exactly 16 bytes before being
-- base64-encoded.
-- - prdKey - The DRM key for your file, provided by your DRM
-- license provider. The key must be base64-encoded, and it must be one
-- of the following bit lengths before being base64-encoded: 128
-- , 192 , or 256 . The key must also be encrypted by
-- using AWS KMS.
-- - prdInitializationVector - The series of random bits created
-- by a random bit generator, unique for every encryption operation, that
-- you want Elastic Transcoder to use to encrypt your files. The
-- initialization vector must be base64-encoded, and it must be exactly 8
-- bytes long before being base64-encoded. If no initialization vector is
-- provided, Elastic Transcoder generates one for you.
-- - prdLicenseAcquisitionURL - The location of the license key
-- required to play DRM content. The URL must be an absolute path, and is
-- referenced by the PlayReady header. The PlayReady header is referenced
-- in the protection header of the client manifest for Smooth Streaming
-- outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for
-- HLS playlist outputs. An example URL looks like this:
-- https://www.example.com/exampleKey/
--
playReadyDrm :: PlayReadyDrm
-- | The ID for your DRM key, so that your DRM license provider knows which
-- key to provide. The key ID must be provided in big endian, and Elastic
-- Transcoder converts it to little endian before inserting it into the
-- PlayReady DRM headers. If you are unsure whether your license server
-- provides your key ID in big or little endian, check with your DRM
-- provider.
prdKeyId :: Lens' PlayReadyDrm (Maybe Text)
-- | The type of DRM, if any, that you want Elastic Transcoder to apply to
-- the output files associated with this playlist.
prdFormat :: Lens' PlayReadyDrm (Maybe Text)
-- | The MD5 digest of the key used for DRM on your file, and that you want
-- Elastic Transcoder to use as a checksum to make sure your key was not
-- corrupted in transit. The key MD5 must be base64-encoded, and it must
-- be exactly 16 bytes before being base64-encoded.
prdKeyMD5 :: Lens' PlayReadyDrm (Maybe Text)
-- | The DRM key for your file, provided by your DRM license provider. The
-- key must be base64-encoded, and it must be one of the following bit
-- lengths before being base64-encoded: 128 , 192 , or
-- 256 . The key must also be encrypted by using AWS KMS.
prdKey :: Lens' PlayReadyDrm (Maybe Text)
-- | The series of random bits created by a random bit generator, unique
-- for every encryption operation, that you want Elastic Transcoder to
-- use to encrypt your files. The initialization vector must be
-- base64-encoded, and it must be exactly 8 bytes long before being
-- base64-encoded. If no initialization vector is provided, Elastic
-- Transcoder generates one for you.
prdInitializationVector :: Lens' PlayReadyDrm (Maybe Text)
-- | The location of the license key required to play DRM content. The URL
-- must be an absolute path, and is referenced by the PlayReady header.
-- The PlayReady header is referenced in the protection header of the
-- client manifest for Smooth Streaming outputs, and in the EXT-X-DXDRM
-- and EXT-XDXDRMINFO metadata tags for HLS playlist outputs. An example
-- URL looks like this:
-- https://www.example.com/exampleKey/
prdLicenseAcquisitionURL :: Lens' PlayReadyDrm (Maybe Text)
-- | Use Only for Fragmented MP4 or MPEG-TS Outputs. If you specify a
-- preset for which the value of Container is fmp4 (Fragmented
-- MP4) or ts (MPEG-TS), Playlists contains information about
-- the master playlists that you want Elastic Transcoder to create. We
-- recommend that you create only one master playlist per output format.
-- The maximum number of master playlists in a job is 30.
--
-- See: playlist smart constructor.
data Playlist
-- | Creates a value of Playlist with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - pStatus - The status of the job with which the playlist is
-- associated.
-- - pPlayReadyDrm - The DRM settings, if any, that you want
-- Elastic Transcoder to apply to the output files associated with this
-- playlist.
-- - pFormat - The format of the output playlist. Valid formats
-- include HLSv3 , HLSv4 , and Smooth .
-- - pOutputKeys - For each output in this job that you want to
-- include in a master playlist, the value of the Outputs:Key object. *
-- If your output is not HLS or does not have a segment duration
-- set, the name of the output file is a concatenation of
-- OutputKeyPrefix and Outputs:Key :
-- OutputKeyPrefixOutputs:Key * If your output is HLSv3
-- and has a segment duration set, or is not included in a playlist,
-- Elastic Transcoder creates an output playlist file with a file
-- extension of .m3u8 , and a series of .ts files that
-- include a five-digit sequential counter beginning with 00000:
-- OutputKeyPrefixOutputs:Key .m3u8
-- OutputKeyPrefixOutputs:Key 00000.ts * If your output is
-- HLSv4 , has a segment duration set, and is included in an
-- HLSv4 playlist, Elastic Transcoder creates an output playlist
-- file with a file extension of _v4.m3u8 . If the output is
-- video, Elastic Transcoder also creates an output file with an
-- extension of _iframe.m3u8 :
-- OutputKeyPrefixOutputs:Key _v4.m3u8
-- OutputKeyPrefixOutputs:Key _iframe.m3u8
-- OutputKeyPrefixOutputs:Key .ts Elastic Transcoder
-- automatically appends the relevant file extension to the file name. If
-- you include a file extension in Output Key, the file name will have
-- two extensions. If you include more than one output in a playlist, any
-- segment duration settings, clip settings, or caption settings must be
-- the same for all outputs in the playlist. For Smooth
-- playlists, the Audio:Profile , Video:Profile , and
-- Video:FrameRate to Video:KeyframesMaxDist ratio must
-- be the same for all outputs.
-- - pName - The name that you want Elastic Transcoder to assign
-- to the master playlist, for example, nyc-vacation.m3u8. If the name
-- includes a / character, the section of the name before the
-- last / must be identical for all Name objects. If
-- you create more than one master playlist, the values of all
-- Name objects must be unique.
-- - pStatusDetail - Information that further explains the
-- status.
-- - pHlsContentProtection - The HLS content protection
-- settings, if any, that you want Elastic Transcoder to apply to the
-- output files associated with this playlist.
--
playlist :: Playlist
-- | The status of the job with which the playlist is associated.
pStatus :: Lens' Playlist (Maybe Text)
-- | The DRM settings, if any, that you want Elastic Transcoder to apply to
-- the output files associated with this playlist.
pPlayReadyDrm :: Lens' Playlist (Maybe PlayReadyDrm)
-- | The format of the output playlist. Valid formats include
-- HLSv3 , HLSv4 , and Smooth .
pFormat :: Lens' Playlist (Maybe Text)
-- | For each output in this job that you want to include in a master
-- playlist, the value of the Outputs:Key object. * If your output is not
-- HLS or does not have a segment duration set, the name of the
-- output file is a concatenation of OutputKeyPrefix and
-- Outputs:Key : OutputKeyPrefixOutputs:Key * If your
-- output is HLSv3 and has a segment duration set, or is not
-- included in a playlist, Elastic Transcoder creates an output playlist
-- file with a file extension of .m3u8 , and a series of
-- .ts files that include a five-digit sequential counter
-- beginning with 00000: OutputKeyPrefixOutputs:Key .m3u8
-- OutputKeyPrefixOutputs:Key 00000.ts * If your output is
-- HLSv4 , has a segment duration set, and is included in an
-- HLSv4 playlist, Elastic Transcoder creates an output playlist
-- file with a file extension of _v4.m3u8 . If the output is
-- video, Elastic Transcoder also creates an output file with an
-- extension of _iframe.m3u8 :
-- OutputKeyPrefixOutputs:Key _v4.m3u8
-- OutputKeyPrefixOutputs:Key _iframe.m3u8
-- OutputKeyPrefixOutputs:Key .ts Elastic Transcoder
-- automatically appends the relevant file extension to the file name. If
-- you include a file extension in Output Key, the file name will have
-- two extensions. If you include more than one output in a playlist, any
-- segment duration settings, clip settings, or caption settings must be
-- the same for all outputs in the playlist. For Smooth
-- playlists, the Audio:Profile , Video:Profile , and
-- Video:FrameRate to Video:KeyframesMaxDist ratio must
-- be the same for all outputs.
pOutputKeys :: Lens' Playlist [Text]
-- | The name that you want Elastic Transcoder to assign to the master
-- playlist, for example, nyc-vacation.m3u8. If the name includes a
-- / character, the section of the name before the last
-- / must be identical for all Name objects. If you
-- create more than one master playlist, the values of all Name
-- objects must be unique.
pName :: Lens' Playlist (Maybe Text)
-- | Information that further explains the status.
pStatusDetail :: Lens' Playlist (Maybe Text)
-- | The HLS content protection settings, if any, that you want Elastic
-- Transcoder to apply to the output files associated with this playlist.
pHlsContentProtection :: Lens' Playlist (Maybe HlsContentProtection)
-- | Presets are templates that contain most of the settings for
-- transcoding media files from one format to another. Elastic Transcoder
-- includes some default presets for common formats, for example, several
-- iPod and iPhone versions. You can also create your own presets for
-- formats that aren't included among the default presets. You specify
-- which preset you want to use when you create a job.
--
-- See: preset smart constructor.
data Preset
-- | Creates a value of Preset with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - preARN - The Amazon Resource Name (ARN) for the
-- preset.
-- - preVideo - A section of the response body that provides
-- information about the video preset values.
-- - preThumbnails - A section of the response body that
-- provides information about the thumbnail preset values, if any.
-- - preName - The name of the preset.
-- - preContainer - The container type for the output file.
-- Valid values include flac , flv , fmp4 ,
-- gif , mp3 , mp4 , mpg ,
-- mxf , oga , ogg , ts , and
-- webm .
-- - preId - Identifier for the new preset. You use this value
-- to get settings for the preset or to delete it.
-- - preType - Whether the preset is a default preset provided
-- by Elastic Transcoder (System ) or a preset that you have
-- defined (Custom ).
-- - preDescription - A description of the preset.
-- - preAudio - A section of the response body that provides
-- information about the audio preset values.
--
preset :: Preset
-- | The Amazon Resource Name (ARN) for the preset.
preARN :: Lens' Preset (Maybe Text)
-- | A section of the response body that provides information about the
-- video preset values.
preVideo :: Lens' Preset (Maybe VideoParameters)
-- | A section of the response body that provides information about the
-- thumbnail preset values, if any.
preThumbnails :: Lens' Preset (Maybe Thumbnails)
-- | The name of the preset.
preName :: Lens' Preset (Maybe Text)
-- | The container type for the output file. Valid values include
-- flac , flv , fmp4 , gif ,
-- mp3 , mp4 , mpg , mxf ,
-- oga , ogg , ts , and webm .
preContainer :: Lens' Preset (Maybe Text)
-- | Identifier for the new preset. You use this value to get settings for
-- the preset or to delete it.
preId :: Lens' Preset (Maybe Text)
-- | Whether the preset is a default preset provided by Elastic Transcoder
-- (System ) or a preset that you have defined (Custom
-- ).
preType :: Lens' Preset (Maybe Text)
-- | A description of the preset.
preDescription :: Lens' Preset (Maybe Text)
-- | A section of the response body that provides information about the
-- audio preset values.
preAudio :: Lens' Preset (Maybe AudioParameters)
-- | Settings for the size, location, and opacity of graphics that you want
-- Elastic Transcoder to overlay over videos that are transcoded using
-- this preset. You can specify settings for up to four watermarks.
-- Watermarks appear in the specified size and location, and with the
-- specified opacity for the duration of the transcoded video.
--
-- Watermarks can be in .png or .jpg format. If you want to display a
-- watermark that is not rectangular, use the .png format, which supports
-- transparency.
--
-- When you create a job that uses this preset, you specify the .png or
-- .jpg graphics that you want Elastic Transcoder to include in the
-- transcoded videos. You can specify fewer graphics in the job than you
-- specify watermark settings in the preset, which allows you to use the
-- same preset for up to four watermarks that have different dimensions.
--
-- See: presetWatermark smart constructor.
data PresetWatermark
-- | Creates a value of PresetWatermark with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - pwVerticalAlign - The vertical position of the watermark
-- unless you specify a non-zero value for VerticalOffset : *
-- Top : The top edge of the watermark is aligned with the top
-- border of the video. * Bottom : The bottom edge of the
-- watermark is aligned with the bottom border of the video. *
-- Center : The watermark is centered between the top and bottom
-- borders.
-- - pwSizingPolicy - A value that controls scaling of the
-- watermark: * Fit : Elastic Transcoder scales the watermark so
-- it matches the value that you specified in either MaxWidth or
-- MaxHeight without exceeding the other value. * Stretch
-- : Elastic Transcoder stretches the watermark to match the values that
-- you specified for MaxWidth and MaxHeight . If the
-- relative proportions of the watermark and the values of
-- MaxWidth and MaxHeight are different, the watermark
-- will be distorted. * ShrinkToFit : Elastic Transcoder scales
-- the watermark down so that its dimensions match the values that you
-- specified for at least one of MaxWidth and MaxHeight
-- without exceeding either value. If you specify this option, Elastic
-- Transcoder does not scale the watermark up.
-- - pwHorizontalOffset - The amount by which you want the
-- horizontal position of the watermark to be offset from the position
-- specified by HorizontalAlign: * number of pixels (px): The minimum
-- value is 0 pixels, and the maximum value is the value of MaxWidth. *
-- integer percentage (%): The range of valid values is 0 to 100. For
-- example, if you specify Left for HorizontalAlign and 5px for
-- HorizontalOffset , the left side of the watermark appears 5
-- pixels from the left border of the output video.
-- HorizontalOffset is only valid when the value of
-- HorizontalAlign is Left or Right . If you
-- specify an offset that causes the watermark to extend beyond the left
-- or right border and Elastic Transcoder has not added black bars, the
-- watermark is cropped. If Elastic Transcoder has added black bars, the
-- watermark extends into the black bars. If the watermark extends beyond
-- the black bars, it is cropped. Use the value of Target to
-- specify whether you want to include the black bars that are added by
-- Elastic Transcoder, if any, in the offset calculation.
-- - pwMaxHeight - The maximum height of the watermark in one of
-- the following formats: * number of pixels (px): The minimum value is
-- 16 pixels, and the maximum value is the value of MaxHeight .
-- * integer percentage (%): The range of valid values is 0 to 100. Use
-- the value of Target to specify whether you want Elastic
-- Transcoder to include the black bars that are added by Elastic
-- Transcoder, if any, in the calculation. If you specify the value in
-- pixels, it must be less than or equal to the value of
-- MaxHeight .
-- - pwOpacity - A percentage that indicates how much you want a
-- watermark to obscure the video in the location where it appears. Valid
-- values are 0 (the watermark is invisible) to 100 (the watermark
-- completely obscures the video in the specified location). The datatype
-- of Opacity is float. Elastic Transcoder supports transparent
-- .png graphics. If you use a transparent .png, the transparent portion
-- of the video appears as if you had specified a value of 0 for
-- Opacity . The .jpg file format doesn't support
-- transparency.
-- - pwVerticalOffset - VerticalOffset The amount by
-- which you want the vertical position of the watermark to be offset
-- from the position specified by VerticalAlign: * number of pixels (px):
-- The minimum value is 0 pixels, and the maximum value is the value of
-- MaxHeight . * integer percentage (%): The range of valid
-- values is 0 to 100. For example, if you specify Top for
-- VerticalAlign and 5px for VerticalOffset ,
-- the top of the watermark appears 5 pixels from the top border of the
-- output video. VerticalOffset is only valid when the value of
-- VerticalAlign is Top or Bottom. If you specify an offset that causes
-- the watermark to extend beyond the top or bottom border and Elastic
-- Transcoder has not added black bars, the watermark is cropped. If
-- Elastic Transcoder has added black bars, the watermark extends into
-- the black bars. If the watermark extends beyond the black bars, it is
-- cropped. Use the value of Target to specify whether you want
-- Elastic Transcoder to include the black bars that are added by Elastic
-- Transcoder, if any, in the offset calculation.
-- - pwMaxWidth - The maximum width of the watermark in one of
-- the following formats: * number of pixels (px): The minimum value is
-- 16 pixels, and the maximum value is the value of MaxWidth . *
-- integer percentage (%): The range of valid values is 0 to 100. Use the
-- value of Target to specify whether you want Elastic
-- Transcoder to include the black bars that are added by Elastic
-- Transcoder, if any, in the calculation. If you specify the value in
-- pixels, it must be less than or equal to the value of
-- MaxWidth .
-- - pwId - A unique identifier for the settings for one
-- watermark. The value of Id can be up to 40 characters
-- long.
-- - pwHorizontalAlign - The horizontal position of the
-- watermark unless you specify a non-zero value for
-- HorizontalOffset : * Left : The left edge of the
-- watermark is aligned with the left border of the video. * Right
-- : The right edge of the watermark is aligned with the right border of
-- the video. * Center : The watermark is centered between the
-- left and right borders.
-- - pwTarget - A value that determines how Elastic Transcoder
-- interprets values that you specified for HorizontalOffset ,
-- VerticalOffset , MaxWidth , and MaxHeight :
-- * Content : HorizontalOffset and
-- VerticalOffset values are calculated based on the borders of
-- the video excluding black bars added by Elastic Transcoder, if any. In
-- addition, MaxWidth and MaxHeight , if specified as a
-- percentage, are calculated based on the borders of the video excluding
-- black bars added by Elastic Transcoder, if any. * Frame :
-- HorizontalOffset and VerticalOffset values are
-- calculated based on the borders of the video including black bars
-- added by Elastic Transcoder, if any. In addition, MaxWidth
-- and MaxHeight , if specified as a percentage, are calculated
-- based on the borders of the video including black bars added by
-- Elastic Transcoder, if any.
--
presetWatermark :: PresetWatermark
-- | The vertical position of the watermark unless you specify a non-zero
-- value for VerticalOffset : * Top : The top edge of the
-- watermark is aligned with the top border of the video. * Bottom
-- : The bottom edge of the watermark is aligned with the bottom border
-- of the video. * Center : The watermark is centered between the
-- top and bottom borders.
pwVerticalAlign :: Lens' PresetWatermark (Maybe Text)
-- | A value that controls scaling of the watermark: * Fit : Elastic
-- Transcoder scales the watermark so it matches the value that you
-- specified in either MaxWidth or MaxHeight without
-- exceeding the other value. * Stretch : Elastic Transcoder
-- stretches the watermark to match the values that you specified for
-- MaxWidth and MaxHeight . If the relative proportions
-- of the watermark and the values of MaxWidth and
-- MaxHeight are different, the watermark will be distorted. *
-- ShrinkToFit : Elastic Transcoder scales the watermark down so
-- that its dimensions match the values that you specified for at least
-- one of MaxWidth and MaxHeight without exceeding
-- either value. If you specify this option, Elastic Transcoder does not
-- scale the watermark up.
pwSizingPolicy :: Lens' PresetWatermark (Maybe Text)
-- | The amount by which you want the horizontal position of the watermark
-- to be offset from the position specified by HorizontalAlign: * number
-- of pixels (px): The minimum value is 0 pixels, and the maximum value
-- is the value of MaxWidth. * integer percentage (%): The range of valid
-- values is 0 to 100. For example, if you specify Left for
-- HorizontalAlign and 5px for HorizontalOffset , the
-- left side of the watermark appears 5 pixels from the left border of
-- the output video. HorizontalOffset is only valid when the
-- value of HorizontalAlign is Left or Right .
-- If you specify an offset that causes the watermark to extend beyond
-- the left or right border and Elastic Transcoder has not added black
-- bars, the watermark is cropped. If Elastic Transcoder has added black
-- bars, the watermark extends into the black bars. If the watermark
-- extends beyond the black bars, it is cropped. Use the value of
-- Target to specify whether you want to include the black bars
-- that are added by Elastic Transcoder, if any, in the offset
-- calculation.
pwHorizontalOffset :: Lens' PresetWatermark (Maybe Text)
-- | The maximum height of the watermark in one of the following formats: *
-- number of pixels (px): The minimum value is 16 pixels, and the maximum
-- value is the value of MaxHeight . * integer percentage (%):
-- The range of valid values is 0 to 100. Use the value of
-- Target to specify whether you want Elastic Transcoder to
-- include the black bars that are added by Elastic Transcoder, if any,
-- in the calculation. If you specify the value in pixels, it must be
-- less than or equal to the value of MaxHeight .
pwMaxHeight :: Lens' PresetWatermark (Maybe Text)
-- | A percentage that indicates how much you want a watermark to obscure
-- the video in the location where it appears. Valid values are 0 (the
-- watermark is invisible) to 100 (the watermark completely obscures the
-- video in the specified location). The datatype of Opacity is
-- float. Elastic Transcoder supports transparent .png graphics. If you
-- use a transparent .png, the transparent portion of the video appears
-- as if you had specified a value of 0 for Opacity . The .jpg
-- file format doesn't support transparency.
pwOpacity :: Lens' PresetWatermark (Maybe Text)
-- | VerticalOffset The amount by which you want the vertical
-- position of the watermark to be offset from the position specified by
-- VerticalAlign: * number of pixels (px): The minimum value is 0 pixels,
-- and the maximum value is the value of MaxHeight . * integer
-- percentage (%): The range of valid values is 0 to 100. For example, if
-- you specify Top for VerticalAlign and 5px
-- for VerticalOffset , the top of the watermark appears 5
-- pixels from the top border of the output video.
-- VerticalOffset is only valid when the value of VerticalAlign
-- is Top or Bottom. If you specify an offset that causes the watermark
-- to extend beyond the top or bottom border and Elastic Transcoder has
-- not added black bars, the watermark is cropped. If Elastic Transcoder
-- has added black bars, the watermark extends into the black bars. If
-- the watermark extends beyond the black bars, it is cropped. Use the
-- value of Target to specify whether you want Elastic
-- Transcoder to include the black bars that are added by Elastic
-- Transcoder, if any, in the offset calculation.
pwVerticalOffset :: Lens' PresetWatermark (Maybe Text)
-- | The maximum width of the watermark in one of the following formats: *
-- number of pixels (px): The minimum value is 16 pixels, and the maximum
-- value is the value of MaxWidth . * integer percentage (%):
-- The range of valid values is 0 to 100. Use the value of
-- Target to specify whether you want Elastic Transcoder to
-- include the black bars that are added by Elastic Transcoder, if any,
-- in the calculation. If you specify the value in pixels, it must be
-- less than or equal to the value of MaxWidth .
pwMaxWidth :: Lens' PresetWatermark (Maybe Text)
-- | A unique identifier for the settings for one watermark. The value of
-- Id can be up to 40 characters long.
pwId :: Lens' PresetWatermark (Maybe Text)
-- | The horizontal position of the watermark unless you specify a non-zero
-- value for HorizontalOffset : * Left : The left edge of
-- the watermark is aligned with the left border of the video. *
-- Right : The right edge of the watermark is aligned with the
-- right border of the video. * Center : The watermark is centered
-- between the left and right borders.
pwHorizontalAlign :: Lens' PresetWatermark (Maybe Text)
-- | A value that determines how Elastic Transcoder interprets values that
-- you specified for HorizontalOffset , VerticalOffset
-- , MaxWidth , and MaxHeight : * Content :
-- HorizontalOffset and VerticalOffset values are
-- calculated based on the borders of the video excluding black bars
-- added by Elastic Transcoder, if any. In addition, MaxWidth
-- and MaxHeight , if specified as a percentage, are calculated
-- based on the borders of the video excluding black bars added by
-- Elastic Transcoder, if any. * Frame : HorizontalOffset
-- and VerticalOffset values are calculated based on the borders
-- of the video including black bars added by Elastic Transcoder, if any.
-- In addition, MaxWidth and MaxHeight , if specified
-- as a percentage, are calculated based on the borders of the video
-- including black bars added by Elastic Transcoder, if any.
pwTarget :: Lens' PresetWatermark (Maybe Text)
-- | Thumbnails for videos.
--
-- See: thumbnails smart constructor.
data Thumbnails
-- | Creates a value of Thumbnails with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - tSizingPolicy - Specify one of the following values to
-- control scaling of thumbnails: * Fit : Elastic Transcoder
-- scales thumbnails so they match the value that you specified in
-- thumbnail MaxWidth or MaxHeight settings without exceeding the other
-- value. * Fill : Elastic Transcoder scales thumbnails so they
-- match the value that you specified in thumbnail MaxWidth or
-- MaxHeight settings and matches or exceeds the other value.
-- Elastic Transcoder centers the image in thumbnails and then crops in
-- the dimension (if any) that exceeds the maximum value. *
-- Stretch : Elastic Transcoder stretches thumbnails to match
-- the values that you specified for thumbnail MaxWidth and
-- MaxHeight settings. If the relative proportions of the input
-- video and thumbnails are different, the thumbnails will be distorted.
-- * Keep : Elastic Transcoder does not scale thumbnails. If
-- either dimension of the input video exceeds the values that you
-- specified for thumbnail MaxWidth and MaxHeight
-- settings, Elastic Transcoder crops the thumbnails. *
-- ShrinkToFit : Elastic Transcoder scales thumbnails down so
-- that their dimensions match the values that you specified for at least
-- one of thumbnail MaxWidth and MaxHeight without
-- exceeding either value. If you specify this option, Elastic Transcoder
-- does not scale thumbnails up. * ShrinkToFill : Elastic
-- Transcoder scales thumbnails down so that their dimensions match the
-- values that you specified for at least one of MaxWidth and
-- MaxHeight without dropping below either value. If you specify
-- this option, Elastic Transcoder does not scale thumbnails up.
-- - tFormat - The format of thumbnails, if any. Valid values
-- are jpg and png . You specify whether you want
-- Elastic Transcoder to create thumbnails when you create a job.
-- - tMaxHeight - The maximum height of thumbnails in pixels. If
-- you specify auto, Elastic Transcoder uses 1080 (Full HD) as the
-- default value. If you specify a numeric value, enter an even integer
-- between 32 and 3072.
-- - tResolution - Important: To better control
-- resolution and aspect ratio of thumbnails, we recommend that you use
-- the values MaxWidth , MaxHeight ,
-- SizingPolicy , and PaddingPolicy instead of
-- Resolution and AspectRatio . The two groups of
-- settings are mutually exclusive. Do not use them together. The width
-- and height of thumbnail files in pixels. Specify a value in the format
-- width x height where both values are
-- even integers. The values cannot exceed the width and height that you
-- specified in the Video:Resolution object.
-- - tAspectRatio - Important: To better control
-- resolution and aspect ratio of thumbnails, we recommend that you use
-- the values MaxWidth , MaxHeight ,
-- SizingPolicy , and PaddingPolicy instead of
-- Resolution and AspectRatio . The two groups of
-- settings are mutually exclusive. Do not use them together. The aspect
-- ratio of thumbnails. Valid values include: auto ,
-- 1:1 , 4:3 , 3:2 , 16:9 If you
-- specify auto , Elastic Transcoder tries to preserve the
-- aspect ratio of the video in the output file.
-- - tPaddingPolicy - When you set PaddingPolicy to
-- Pad , Elastic Transcoder may add black bars to the top and
-- bottom and/or left and right sides of thumbnails to make the total
-- size of the thumbnails match the values that you specified for
-- thumbnail MaxWidth and MaxHeight settings.
-- - tInterval - The approximate number of seconds between
-- thumbnails. Specify an integer value.
-- - tMaxWidth - The maximum width of thumbnails in pixels. If
-- you specify auto, Elastic Transcoder uses 1920 (Full HD) as the
-- default value. If you specify a numeric value, enter an even integer
-- between 32 and 4096.
--
thumbnails :: Thumbnails
-- | Specify one of the following values to control scaling of thumbnails:
-- * Fit : Elastic Transcoder scales thumbnails so they match
-- the value that you specified in thumbnail MaxWidth or MaxHeight
-- settings without exceeding the other value. * Fill : Elastic
-- Transcoder scales thumbnails so they match the value that you
-- specified in thumbnail MaxWidth or MaxHeight
-- settings and matches or exceeds the other value. Elastic Transcoder
-- centers the image in thumbnails and then crops in the dimension (if
-- any) that exceeds the maximum value. * Stretch : Elastic
-- Transcoder stretches thumbnails to match the values that you specified
-- for thumbnail MaxWidth and MaxHeight settings. If
-- the relative proportions of the input video and thumbnails are
-- different, the thumbnails will be distorted. * Keep : Elastic
-- Transcoder does not scale thumbnails. If either dimension of the input
-- video exceeds the values that you specified for thumbnail
-- MaxWidth and MaxHeight settings, Elastic Transcoder
-- crops the thumbnails. * ShrinkToFit : Elastic Transcoder
-- scales thumbnails down so that their dimensions match the values that
-- you specified for at least one of thumbnail MaxWidth and
-- MaxHeight without exceeding either value. If you specify this
-- option, Elastic Transcoder does not scale thumbnails up. *
-- ShrinkToFill : Elastic Transcoder scales thumbnails down so
-- that their dimensions match the values that you specified for at least
-- one of MaxWidth and MaxHeight without dropping below
-- either value. If you specify this option, Elastic Transcoder does not
-- scale thumbnails up.
tSizingPolicy :: Lens' Thumbnails (Maybe Text)
-- | The format of thumbnails, if any. Valid values are jpg and
-- png . You specify whether you want Elastic Transcoder to
-- create thumbnails when you create a job.
tFormat :: Lens' Thumbnails (Maybe Text)
-- | The maximum height of thumbnails in pixels. If you specify auto,
-- Elastic Transcoder uses 1080 (Full HD) as the default value. If you
-- specify a numeric value, enter an even integer between 32 and 3072.
tMaxHeight :: Lens' Thumbnails (Maybe Text)
-- | Important: To better control resolution and aspect ratio of
-- thumbnails, we recommend that you use the values MaxWidth ,
-- MaxHeight , SizingPolicy , and
-- PaddingPolicy instead of Resolution and
-- AspectRatio . The two groups of settings are mutually
-- exclusive. Do not use them together. The width and height of thumbnail
-- files in pixels. Specify a value in the format width
-- x height where both values are even integers. The
-- values cannot exceed the width and height that you specified in the
-- Video:Resolution object.
tResolution :: Lens' Thumbnails (Maybe Text)
-- | Important: To better control resolution and aspect ratio of
-- thumbnails, we recommend that you use the values MaxWidth ,
-- MaxHeight , SizingPolicy , and
-- PaddingPolicy instead of Resolution and
-- AspectRatio . The two groups of settings are mutually
-- exclusive. Do not use them together. The aspect ratio of thumbnails.
-- Valid values include: auto , 1:1 , 4:3 ,
-- 3:2 , 16:9 If you specify auto , Elastic
-- Transcoder tries to preserve the aspect ratio of the video in the
-- output file.
tAspectRatio :: Lens' Thumbnails (Maybe Text)
-- | When you set PaddingPolicy to Pad , Elastic
-- Transcoder may add black bars to the top and bottom and/or left and
-- right sides of thumbnails to make the total size of the thumbnails
-- match the values that you specified for thumbnail MaxWidth
-- and MaxHeight settings.
tPaddingPolicy :: Lens' Thumbnails (Maybe Text)
-- | The approximate number of seconds between thumbnails. Specify an
-- integer value.
tInterval :: Lens' Thumbnails (Maybe Text)
-- | The maximum width of thumbnails in pixels. If you specify auto,
-- Elastic Transcoder uses 1920 (Full HD) as the default value. If you
-- specify a numeric value, enter an even integer between 32 and 4096.
tMaxWidth :: Lens' Thumbnails (Maybe Text)
-- | Settings that determine when a clip begins and how long it lasts.
--
-- See: timeSpan smart constructor.
data TimeSpan
-- | Creates a value of TimeSpan with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - tsStartTime - The place in the input file where you want a
-- clip to start. The format can be either HH:mm:ss.SSS (maximum value:
-- 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum
-- value: 86399.999). If you don't specify a value, Elastic Transcoder
-- starts at the beginning of the input file.
-- - tsDuration - The duration of the clip. The format can be
-- either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths
-- of a second) or sssss.SSS (maximum value: 86399.999). If you don't
-- specify a value, Elastic Transcoder creates an output file from
-- StartTime to the end of the file. If you specify a value longer than
-- the duration of the input file, Elastic Transcoder transcodes the file
-- and returns a warning message.
--
timeSpan :: TimeSpan
-- | The place in the input file where you want a clip to start. The format
-- can be either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is
-- thousandths of a second) or sssss.SSS (maximum value: 86399.999). If
-- you don't specify a value, Elastic Transcoder starts at the beginning
-- of the input file.
tsStartTime :: Lens' TimeSpan (Maybe Text)
-- | The duration of the clip. The format can be either HH:mm:ss.SSS
-- (maximum value: 23:59:59.999; SSS is thousandths of a second) or
-- sssss.SSS (maximum value: 86399.999). If you don't specify a value,
-- Elastic Transcoder creates an output file from StartTime to the end of
-- the file. If you specify a value longer than the duration of the input
-- file, Elastic Transcoder transcodes the file and returns a warning
-- message.
tsDuration :: Lens' TimeSpan (Maybe Text)
-- | Details about the timing of a job.
--
-- See: timing smart constructor.
data Timing
-- | Creates a value of Timing with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - tSubmitTimeMillis - The time the job was submitted to
-- Elastic Transcoder, in epoch milliseconds.
-- - tFinishTimeMillis - The time the job finished transcoding,
-- in epoch milliseconds.
-- - tStartTimeMillis - The time the job began transcoding, in
-- epoch milliseconds.
--
timing :: Timing
-- | The time the job was submitted to Elastic Transcoder, in epoch
-- milliseconds.
tSubmitTimeMillis :: Lens' Timing (Maybe Integer)
-- | The time the job finished transcoding, in epoch milliseconds.
tFinishTimeMillis :: Lens' Timing (Maybe Integer)
-- | The time the job began transcoding, in epoch milliseconds.
tStartTimeMillis :: Lens' Timing (Maybe Integer)
-- | The VideoParameters structure.
--
-- See: videoParameters smart constructor.
data VideoParameters
-- | Creates a value of VideoParameters with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - vpKeyframesMaxDist - Applicable only when the value of
-- Video:Codec is one of H.264 , MPEG2 , or
-- VP8 . The maximum number of frames between key frames. Key
-- frames are fully encoded frames; the frames between key frames are
-- encoded based, in part, on the content of the key frames. The value is
-- an integer formatted as a string; valid values are between 1 (every
-- frame is a key frame) and 100000, inclusive. A higher value results in
-- higher compression but may also discernibly decrease video quality.
-- For Smooth outputs, the FrameRate must have a
-- constant ratio to the KeyframesMaxDist . This allows
-- Smooth playlists to switch between different quality levels
-- while the file is being played. For example, an input file can have a
-- FrameRate of 30 with a KeyframesMaxDist of 90. The
-- output file then needs to have a ratio of 1:3. Valid outputs would
-- have FrameRate of 30, 25, and 10, and
-- KeyframesMaxDist of 90, 75, and 30, respectively.
-- Alternately, this can be achieved by setting FrameRate to
-- auto and having the same values for MaxFrameRate and
-- KeyframesMaxDist .
-- - vpFrameRate - The frames per second for the video stream in
-- the output file. Valid values include: auto , 10 ,
-- 15 , 23.97 , 24 , 25 ,
-- 29.97 , 30 , 60 If you specify
-- auto , Elastic Transcoder uses the detected frame rate of the
-- input source. If you specify a frame rate, we recommend that you
-- perform the following calculation: Frame rate = maximum
-- recommended decoding speed in luma samplessecond (width in
-- pixels * height in pixels) where: * width in pixels and
-- height in pixels represent the Resolution of the output video.
-- * maximum recommended decoding speed in Luma samples/second is
-- less than or equal to the maximum value listed in the following table,
-- based on the value that you specified for Level. The maximum
-- recommended decoding speed in Luma samplessecond for each level is
-- described in the following list (Level - Decoding speed/ ): * 1 -
-- 380160 * 1b - 380160 * 1.1 - 76800 * 1.2 - 1536000 * 1.3 - 3041280 * 2
-- - 3041280 * 2.1 - 5068800 * 2.2 - 5184000 * 3 - 10368000 * 3.1 -
-- 27648000 * 3.2 - 55296000 * 4 - 62914560 * 4.1 - 62914560
-- - vpSizingPolicy - Specify one of the following values to
-- control scaling of the output video: * Fit : Elastic
-- Transcoder scales the output video so it matches the value that you
-- specified in either MaxWidth or MaxHeight without
-- exceeding the other value. * Fill : Elastic Transcoder scales
-- the output video so it matches the value that you specified in either
-- MaxWidth or MaxHeight and matches or exceeds the
-- other value. Elastic Transcoder centers the output video and then
-- crops it in the dimension (if any) that exceeds the maximum value. *
-- Stretch : Elastic Transcoder stretches the output video to
-- match the values that you specified for MaxWidth and
-- MaxHeight . If the relative proportions of the input video
-- and the output video are different, the output video will be
-- distorted. * Keep : Elastic Transcoder does not scale the
-- output video. If either dimension of the input video exceeds the
-- values that you specified for MaxWidth and MaxHeight
-- , Elastic Transcoder crops the output video. * ShrinkToFit :
-- Elastic Transcoder scales the output video down so that its dimensions
-- match the values that you specified for at least one of
-- MaxWidth and MaxHeight without exceeding either
-- value. If you specify this option, Elastic Transcoder does not scale
-- the video up. * ShrinkToFill : Elastic Transcoder scales the
-- output video down so that its dimensions match the values that you
-- specified for at least one of MaxWidth and MaxHeight
-- without dropping below either value. If you specify this option,
-- Elastic Transcoder does not scale the video up.
-- - vpMaxFrameRate - If you specify auto for
-- FrameRate , Elastic Transcoder uses the frame rate of the
-- input video for the frame rate of the output video. Specify the
-- maximum frame rate that you want Elastic Transcoder to use when the
-- frame rate of the input video is greater than the desired maximum
-- frame rate of the output video. Valid values include: 10 ,
-- 15 , 23.97 , 24 , 25 ,
-- 29.97 , 30 , 60 .
-- - vpMaxHeight - The maximum height of the output video in
-- pixels. If you specify auto , Elastic Transcoder uses 1080
-- (Full HD) as the default value. If you specify a numeric value, enter
-- an even integer between 96 and 3072.
-- - vpWatermarks - Settings for the size, location, and opacity
-- of graphics that you want Elastic Transcoder to overlay over videos
-- that are transcoded using this preset. You can specify settings for up
-- to four watermarks. Watermarks appear in the specified size and
-- location, and with the specified opacity for the duration of the
-- transcoded video. Watermarks can be in .png or .jpg format. If you
-- want to display a watermark that is not rectangular, use the .png
-- format, which supports transparency. When you create a job that uses
-- this preset, you specify the .png or .jpg graphics that you want
-- Elastic Transcoder to include in the transcoded videos. You can
-- specify fewer graphics in the job than you specify watermark settings
-- in the preset, which allows you to use the same preset for up to four
-- watermarks that have different dimensions.
-- - vpDisplayAspectRatio - The value that Elastic Transcoder
-- adds to the metadata in the output file.
-- - vpResolution - Important: To better control
-- resolution and aspect ratio of output videos, we recommend that you
-- use the values MaxWidth , MaxHeight ,
-- SizingPolicy , PaddingPolicy , and
-- DisplayAspectRatio instead of Resolution and
-- AspectRatio . The two groups of settings are mutually
-- exclusive. Do not use them together. The width and height of the video
-- in the output file, in pixels. Valid values are auto and
-- width x height : * auto : Elastic Transcoder
-- attempts to preserve the width and height of the input file, subject
-- to the following rules. * width x height : The
-- width and height of the output video in pixels. Note the following
-- about specifying the width and height: * The width must be an even
-- integer between 128 and 4096, inclusive. * The height must be an even
-- integer between 96 and 3072, inclusive. * If you specify a resolution
-- that is less than the resolution of the input file, Elastic Transcoder
-- rescales the output file to the lower resolution. * If you specify a
-- resolution that is greater than the resolution of the input file,
-- Elastic Transcoder rescales the output to the higher resolution. * We
-- recommend that you specify a resolution for which the product of width
-- and height is less than or equal to the applicable value in the
-- following list (List - Max width x height value ): * 1 - 25344
-- * 1b - 25344 * 1.1 - 101376 * 1.2 - 101376 * 1.3 - 101376 * 2 - 101376
-- * 2.1 - 202752 * 2.2 - 404720 * 3 - 404720 * 3.1 - 921600 * 3.2 -
-- 1310720 * 4 - 2097152 * 4.1 - 2097152
-- - vpCodec - The video codec for the output file. Valid values
-- include gif , H.264 , mpeg2 , vp8
-- , and vp9 . You can only specify vp8 and
-- vp9 when the container type is webm , gif
-- when the container type is gif , and mpeg2 when the
-- container type is mpg .
-- - vpAspectRatio - Important: To better control
-- resolution and aspect ratio of output videos, we recommend that you
-- use the values MaxWidth , MaxHeight ,
-- SizingPolicy , PaddingPolicy , and
-- DisplayAspectRatio instead of Resolution and
-- AspectRatio . The two groups of settings are mutually
-- exclusive. Do not use them together. The display aspect ratio of the
-- video in the output file. Valid values include: auto ,
-- 1:1 , 4:3 , 3:2 , 16:9 If you
-- specify auto , Elastic Transcoder tries to preserve the
-- aspect ratio of the input file. If you specify an aspect ratio for the
-- output file that differs from aspect ratio of the input file, Elastic
-- Transcoder adds pillarboxing (black bars on the sides) or letterboxing
-- (black bars on the top and bottom) to maintain the aspect ratio of the
-- active region of the video.
-- - vpPaddingPolicy - When you set PaddingPolicy to
-- Pad , Elastic Transcoder may add black bars to the top and
-- bottom and/or left and right sides of the output video to make the
-- total size of the output video match the values that you specified for
-- MaxWidth and MaxHeight .
-- - vpMaxWidth - The maximum width of the output video in
-- pixels. If you specify auto , Elastic Transcoder uses 1920
-- (Full HD) as the default value. If you specify a numeric value, enter
-- an even integer between 128 and 4096.
-- - vpBitRate - The bit rate of the video stream in the output
-- file, in kilobitssecond. Valid values depend on the values of
-- Level and Profile . If you specify auto ,
-- Elastic Transcoder uses the detected bit rate of the input source. If
-- you specify a value other than auto , we recommend that you
-- specify a value less than or equal to the maximum H.264-compliant
-- value listed for your level and profile: Level - Maximum video bit
-- rate in kilobits/second (baseline and main Profile) : maximum video
-- bit rate in kilobits/second (high Profile)/ * 1 - 64 : 80 * 1b - 128 :
-- 160 * 1.1 - 192 : 240 * 1.2 - 384 : 480 * 1.3 - 768 : 960 * 2 - 2000 :
-- 2500 * 3 - 10000 : 12500 * 3.1 - 14000 : 17500 * 3.2 - 20000 : 25000 *
-- 4 - 20000 : 25000 * 4.1 - 50000 : 62500
-- - vpFixedGOP - Applicable only when the value of Video:Codec
-- is one of H.264 , MPEG2 , or VP8 . Whether
-- to use a fixed value for FixedGOP . Valid values are
-- true and false : * true : Elastic
-- Transcoder uses the value of KeyframesMaxDist for the
-- distance between key frames (the number of frames in a group of
-- pictures, or GOP). * false : The distance between key frames
-- can vary. Important: FixedGOP must be set to
-- true for fmp4 containers.
-- - vpCodecOptions - Profile (H.264VP8VP9 Only)
-- The H.264 profile that you want to use for the output file. Elastic
-- Transcoder supports the following profiles: * baseline : The
-- profile most commonly used for videoconferencing and for mobile
-- applications. * main : The profile used for
-- standard-definition digital TV broadcasts. * high : The
-- profile used for high-definition digital TV broadcasts and for Blu-ray
-- discs. Level (H.264 Only) The H.264 level that you want to use
-- for the output file. Elastic Transcoder supports the following levels:
-- 1 , 1b , 1.1 , 1.2 , 1.3
-- , 2 , 2.1 , 2.2 , 3 , 3.1
-- , 3.2 , 4 , 4.1 MaxReferenceFrames
-- (H.264 Only) Applicable only when the value of Video:Codec is
-- H.264. The maximum number of previously decoded frames to use as a
-- reference for decoding future frames. Valid values are integers 0
-- through 16, but we recommend that you not use a value greater than the
-- following: Min(Floor(Maximum decoded picture buffer in macroblocks
-- * 256 / (Width in pixels * Height in pixels)), 16) where Width
-- in pixels and Height in pixels represent either MaxWidth
-- and MaxHeight, or Resolution. Maximum decoded picture buffer in
-- macroblocks depends on the value of the Level object. See
-- the list below. (A macroblock is a block of pixels measuring 16x16.) *
-- 1 - 396 * 1b - 396 * 1.1 - 900 * 1.2 - 2376 * 1.3 - 2376 * 2 - 2376 *
-- 2.1 - 4752 * 2.2 - 8100 * 3 - 8100 * 3.1 - 18000 * 3.2 - 20480 * 4 -
-- 32768 * 4.1 - 32768 MaxBitRate (Optional, H.264MPEG2VP8/VP9
-- only) The maximum number of bits per second in a video buffer; the
-- size of the buffer is specified by BufferSize . Specify a
-- value between 16 and 62,500. You can reduce the bandwidth required to
-- stream a video by reducing the maximum bit rate, but this also reduces
-- the quality of the video. BufferSize (Optional,
-- H.264MPEG2VP8/VP9 only) The maximum number of bits in any x
-- seconds of the output video. This window is commonly 10 seconds, the
-- standard segment duration when you're using FMP4 or MPEG-TS for the
-- container type of the output video. Specify an integer greater than 0.
-- If you specify MaxBitRate and omit BufferSize ,
-- Elastic Transcoder sets BufferSize to 10 times the value of
-- MaxBitRate . InterlacedMode (Optional, H.264/MPEG2
-- Only) The interlace mode for the output video. Interlaced video is
-- used to double the perceived frame rate for a video by interlacing two
-- fields (one field on every other line, the other field on the other
-- lines) so that the human eye registers multiple pictures per frame.
-- Interlacing reduces the bandwidth required for transmitting a video,
-- but can result in blurred images and flickering. Valid values include
-- Progressive (no interlacing, top to bottom),
-- TopFirst (top field first), BottomFirst (bottom
-- field first), and Auto . If InterlaceMode is not
-- specified, Elastic Transcoder uses Progressive for the
-- output. If Auto is specified, Elastic Transcoder interlaces
-- the output. ColorSpaceConversionMode (Optional, H.264/MPEG2
-- Only) The color space conversion Elastic Transcoder applies to the
-- output video. Color spaces are the algorithms used by the computer to
-- store information about how to render color. Bt.601 is the
-- standard for standard definition video, while Bt.709 is the
-- standard for high definition video. Valid values include None
-- , Bt709toBt601 , Bt601toBt709 , and Auto .
-- If you chose Auto for ColorSpaceConversionMode and
-- your output is interlaced, your frame rate is one of 23.97 ,
-- 24 , 25 , 29.97 , 50 , or
-- 60 , your SegmentDuration is null, and you are using
-- one of the resolution changes from the list below, Elastic Transcoder
-- applies the following color space conversions: * Standard to HD,
-- 720x480 to 1920x1080 - Elastic Transcoder applies
-- Bt601ToBt709 * Standard to HD, 720x576 to 1920x1080 -
-- Elastic Transcoder applies Bt601ToBt709 * HD to Standard,
-- 1920x1080 to 720x480 - Elastic Transcoder applies
-- Bt709ToBt601 * HD to Standard, 1920x1080 to 720x576 -
-- Elastic Transcoder applies Bt709ToBt601 If you do not specify
-- a ColorSpaceConversionMode , Elastic Transcoder does not
-- change the color space of a file. If you are unsure what
-- ColorSpaceConversionMode was applied to your output file, you
-- can check the AppliedColorSpaceConversion parameter included
-- in your job response. If your job does not have an
-- AppliedColorSpaceConversion in its response, no
-- ColorSpaceConversionMode was applied.
-- ChromaSubsampling The sampling pattern for the chroma (color)
-- channels of the output video. Valid values include yuv420p
-- and yuv422p . yuv420p samples the chroma information
-- of every other horizontal and every other vertical line,
-- yuv422p samples the color information of every horizontal
-- line and every other vertical line. LoopCount (Gif Only) The
-- number of times you want the output gif to loop. Valid values include
-- Infinite and integers between 0 and 100 ,
-- inclusive.
--
videoParameters :: VideoParameters
-- | Applicable only when the value of Video:Codec is one of H.264
-- , MPEG2 , or VP8 . The maximum number of frames
-- between key frames. Key frames are fully encoded frames; the frames
-- between key frames are encoded based, in part, on the content of the
-- key frames. The value is an integer formatted as a string; valid
-- values are between 1 (every frame is a key frame) and 100000,
-- inclusive. A higher value results in higher compression but may also
-- discernibly decrease video quality. For Smooth outputs, the
-- FrameRate must have a constant ratio to the
-- KeyframesMaxDist . This allows Smooth playlists to
-- switch between different quality levels while the file is being
-- played. For example, an input file can have a FrameRate of 30
-- with a KeyframesMaxDist of 90. The output file then needs to
-- have a ratio of 1:3. Valid outputs would have FrameRate of
-- 30, 25, and 10, and KeyframesMaxDist of 90, 75, and 30,
-- respectively. Alternately, this can be achieved by setting
-- FrameRate to auto and having the same values for
-- MaxFrameRate and KeyframesMaxDist .
vpKeyframesMaxDist :: Lens' VideoParameters (Maybe Text)
-- | The frames per second for the video stream in the output file. Valid
-- values include: auto , 10 , 15 ,
-- 23.97 , 24 , 25 , 29.97 ,
-- 30 , 60 If you specify auto , Elastic
-- Transcoder uses the detected frame rate of the input source. If you
-- specify a frame rate, we recommend that you perform the following
-- calculation: Frame rate = maximum recommended decoding speed in
-- luma samplessecond (width in pixels * height in pixels)
-- where: * width in pixels and height in pixels represent
-- the Resolution of the output video. * maximum recommended decoding
-- speed in Luma samples/second is less than or equal to the maximum
-- value listed in the following table, based on the value that you
-- specified for Level. The maximum recommended decoding speed in Luma
-- samplessecond for each level is described in the following list
-- (Level - Decoding speed/ ): * 1 - 380160 * 1b - 380160 * 1.1 -
-- 76800 * 1.2 - 1536000 * 1.3 - 3041280 * 2 - 3041280 * 2.1 - 5068800 *
-- 2.2 - 5184000 * 3 - 10368000 * 3.1 - 27648000 * 3.2 - 55296000 * 4 -
-- 62914560 * 4.1 - 62914560
vpFrameRate :: Lens' VideoParameters (Maybe Text)
-- | Specify one of the following values to control scaling of the output
-- video: * Fit : Elastic Transcoder scales the output video so
-- it matches the value that you specified in either MaxWidth or
-- MaxHeight without exceeding the other value. * Fill
-- : Elastic Transcoder scales the output video so it matches the value
-- that you specified in either MaxWidth or MaxHeight
-- and matches or exceeds the other value. Elastic Transcoder centers the
-- output video and then crops it in the dimension (if any) that exceeds
-- the maximum value. * Stretch : Elastic Transcoder stretches
-- the output video to match the values that you specified for
-- MaxWidth and MaxHeight . If the relative proportions
-- of the input video and the output video are different, the output
-- video will be distorted. * Keep : Elastic Transcoder does not
-- scale the output video. If either dimension of the input video exceeds
-- the values that you specified for MaxWidth and
-- MaxHeight , Elastic Transcoder crops the output video. *
-- ShrinkToFit : Elastic Transcoder scales the output video down
-- so that its dimensions match the values that you specified for at
-- least one of MaxWidth and MaxHeight without
-- exceeding either value. If you specify this option, Elastic Transcoder
-- does not scale the video up. * ShrinkToFill : Elastic
-- Transcoder scales the output video down so that its dimensions match
-- the values that you specified for at least one of MaxWidth
-- and MaxHeight without dropping below either value. If you
-- specify this option, Elastic Transcoder does not scale the video up.
vpSizingPolicy :: Lens' VideoParameters (Maybe Text)
-- | If you specify auto for FrameRate , Elastic
-- Transcoder uses the frame rate of the input video for the frame rate
-- of the output video. Specify the maximum frame rate that you want
-- Elastic Transcoder to use when the frame rate of the input video is
-- greater than the desired maximum frame rate of the output video. Valid
-- values include: 10 , 15 , 23.97 ,
-- 24 , 25 , 29.97 , 30 , 60
-- .
vpMaxFrameRate :: Lens' VideoParameters (Maybe Text)
-- | The maximum height of the output video in pixels. If you specify
-- auto , Elastic Transcoder uses 1080 (Full HD) as the default
-- value. If you specify a numeric value, enter an even integer between
-- 96 and 3072.
vpMaxHeight :: Lens' VideoParameters (Maybe Text)
-- | Settings for the size, location, and opacity of graphics that you want
-- Elastic Transcoder to overlay over videos that are transcoded using
-- this preset. You can specify settings for up to four watermarks.
-- Watermarks appear in the specified size and location, and with the
-- specified opacity for the duration of the transcoded video. Watermarks
-- can be in .png or .jpg format. If you want to display a watermark that
-- is not rectangular, use the .png format, which supports transparency.
-- When you create a job that uses this preset, you specify the .png or
-- .jpg graphics that you want Elastic Transcoder to include in the
-- transcoded videos. You can specify fewer graphics in the job than you
-- specify watermark settings in the preset, which allows you to use the
-- same preset for up to four watermarks that have different dimensions.
vpWatermarks :: Lens' VideoParameters [PresetWatermark]
-- | The value that Elastic Transcoder adds to the metadata in the output
-- file.
vpDisplayAspectRatio :: Lens' VideoParameters (Maybe Text)
-- | Important: To better control resolution and aspect ratio of
-- output videos, we recommend that you use the values MaxWidth
-- , MaxHeight , SizingPolicy , PaddingPolicy
-- , and DisplayAspectRatio instead of Resolution and
-- AspectRatio . The two groups of settings are mutually
-- exclusive. Do not use them together. The width and height of the video
-- in the output file, in pixels. Valid values are auto and
-- width x height : * auto : Elastic Transcoder
-- attempts to preserve the width and height of the input file, subject
-- to the following rules. * width x height : The
-- width and height of the output video in pixels. Note the following
-- about specifying the width and height: * The width must be an even
-- integer between 128 and 4096, inclusive. * The height must be an even
-- integer between 96 and 3072, inclusive. * If you specify a resolution
-- that is less than the resolution of the input file, Elastic Transcoder
-- rescales the output file to the lower resolution. * If you specify a
-- resolution that is greater than the resolution of the input file,
-- Elastic Transcoder rescales the output to the higher resolution. * We
-- recommend that you specify a resolution for which the product of width
-- and height is less than or equal to the applicable value in the
-- following list (List - Max width x height value ): * 1 - 25344
-- * 1b - 25344 * 1.1 - 101376 * 1.2 - 101376 * 1.3 - 101376 * 2 - 101376
-- * 2.1 - 202752 * 2.2 - 404720 * 3 - 404720 * 3.1 - 921600 * 3.2 -
-- 1310720 * 4 - 2097152 * 4.1 - 2097152
vpResolution :: Lens' VideoParameters (Maybe Text)
-- | The video codec for the output file. Valid values include gif
-- , H.264 , mpeg2 , vp8 , and vp9 .
-- You can only specify vp8 and vp9 when the container
-- type is webm , gif when the container type is
-- gif , and mpeg2 when the container type is
-- mpg .
vpCodec :: Lens' VideoParameters (Maybe Text)
-- | Important: To better control resolution and aspect ratio of
-- output videos, we recommend that you use the values MaxWidth
-- , MaxHeight , SizingPolicy , PaddingPolicy
-- , and DisplayAspectRatio instead of Resolution and
-- AspectRatio . The two groups of settings are mutually
-- exclusive. Do not use them together. The display aspect ratio of the
-- video in the output file. Valid values include: auto ,
-- 1:1 , 4:3 , 3:2 , 16:9 If you
-- specify auto , Elastic Transcoder tries to preserve the
-- aspect ratio of the input file. If you specify an aspect ratio for the
-- output file that differs from aspect ratio of the input file, Elastic
-- Transcoder adds pillarboxing (black bars on the sides) or letterboxing
-- (black bars on the top and bottom) to maintain the aspect ratio of the
-- active region of the video.
vpAspectRatio :: Lens' VideoParameters (Maybe Text)
-- | When you set PaddingPolicy to Pad , Elastic
-- Transcoder may add black bars to the top and bottom and/or left and
-- right sides of the output video to make the total size of the output
-- video match the values that you specified for MaxWidth and
-- MaxHeight .
vpPaddingPolicy :: Lens' VideoParameters (Maybe Text)
-- | The maximum width of the output video in pixels. If you specify
-- auto , Elastic Transcoder uses 1920 (Full HD) as the default
-- value. If you specify a numeric value, enter an even integer between
-- 128 and 4096.
vpMaxWidth :: Lens' VideoParameters (Maybe Text)
-- | The bit rate of the video stream in the output file, in
-- kilobitssecond. Valid values depend on the values of Level
-- and Profile . If you specify auto , Elastic
-- Transcoder uses the detected bit rate of the input source. If you
-- specify a value other than auto , we recommend that you
-- specify a value less than or equal to the maximum H.264-compliant
-- value listed for your level and profile: Level - Maximum video bit
-- rate in kilobits/second (baseline and main Profile) : maximum video
-- bit rate in kilobits/second (high Profile)/ * 1 - 64 : 80 * 1b - 128 :
-- 160 * 1.1 - 192 : 240 * 1.2 - 384 : 480 * 1.3 - 768 : 960 * 2 - 2000 :
-- 2500 * 3 - 10000 : 12500 * 3.1 - 14000 : 17500 * 3.2 - 20000 : 25000 *
-- 4 - 20000 : 25000 * 4.1 - 50000 : 62500
vpBitRate :: Lens' VideoParameters (Maybe Text)
-- | Applicable only when the value of Video:Codec is one of H.264
-- , MPEG2 , or VP8 . Whether to use a fixed value for
-- FixedGOP . Valid values are true and false
-- : * true : Elastic Transcoder uses the value of
-- KeyframesMaxDist for the distance between key frames (the
-- number of frames in a group of pictures, or GOP). * false :
-- The distance between key frames can vary. Important:
-- FixedGOP must be set to true for fmp4
-- containers.
vpFixedGOP :: Lens' VideoParameters (Maybe Text)
-- | Profile (H.264VP8VP9 Only) The H.264 profile that you
-- want to use for the output file. Elastic Transcoder supports the
-- following profiles: * baseline : The profile most commonly
-- used for videoconferencing and for mobile applications. *
-- main : The profile used for standard-definition digital TV
-- broadcasts. * high : The profile used for high-definition
-- digital TV broadcasts and for Blu-ray discs. Level (H.264 Only)
-- The H.264 level that you want to use for the output file. Elastic
-- Transcoder supports the following levels: 1 , 1b ,
-- 1.1 , 1.2 , 1.3 , 2 , 2.1
-- , 2.2 , 3 , 3.1 , 3.2 , 4
-- , 4.1 MaxReferenceFrames (H.264 Only) Applicable only
-- when the value of Video:Codec is H.264. The maximum number of
-- previously decoded frames to use as a reference for decoding future
-- frames. Valid values are integers 0 through 16, but we recommend that
-- you not use a value greater than the following: Min(Floor(Maximum
-- decoded picture buffer in macroblocks * 256 / (Width in pixels *
-- Height in pixels)), 16) where Width in pixels and
-- Height in pixels represent either MaxWidth and MaxHeight, or
-- Resolution. Maximum decoded picture buffer in macroblocks
-- depends on the value of the Level object. See the list below.
-- (A macroblock is a block of pixels measuring 16x16.) * 1 - 396 * 1b -
-- 396 * 1.1 - 900 * 1.2 - 2376 * 1.3 - 2376 * 2 - 2376 * 2.1 - 4752 *
-- 2.2 - 8100 * 3 - 8100 * 3.1 - 18000 * 3.2 - 20480 * 4 - 32768 * 4.1 -
-- 32768 MaxBitRate (Optional, H.264MPEG2VP8/VP9 only) The
-- maximum number of bits per second in a video buffer; the size of the
-- buffer is specified by BufferSize . Specify a value between
-- 16 and 62,500. You can reduce the bandwidth required to stream a video
-- by reducing the maximum bit rate, but this also reduces the quality of
-- the video. BufferSize (Optional, H.264MPEG2VP8/VP9 only)
-- The maximum number of bits in any x seconds of the output video. This
-- window is commonly 10 seconds, the standard segment duration when
-- you're using FMP4 or MPEG-TS for the container type of the output
-- video. Specify an integer greater than 0. If you specify
-- MaxBitRate and omit BufferSize , Elastic Transcoder
-- sets BufferSize to 10 times the value of MaxBitRate
-- . InterlacedMode (Optional, H.264/MPEG2 Only) The interlace
-- mode for the output video. Interlaced video is used to double the
-- perceived frame rate for a video by interlacing two fields (one field
-- on every other line, the other field on the other lines) so that the
-- human eye registers multiple pictures per frame. Interlacing reduces
-- the bandwidth required for transmitting a video, but can result in
-- blurred images and flickering. Valid values include
-- Progressive (no interlacing, top to bottom),
-- TopFirst (top field first), BottomFirst (bottom
-- field first), and Auto . If InterlaceMode is not
-- specified, Elastic Transcoder uses Progressive for the
-- output. If Auto is specified, Elastic Transcoder interlaces
-- the output. ColorSpaceConversionMode (Optional, H.264/MPEG2
-- Only) The color space conversion Elastic Transcoder applies to the
-- output video. Color spaces are the algorithms used by the computer to
-- store information about how to render color. Bt.601 is the
-- standard for standard definition video, while Bt.709 is the
-- standard for high definition video. Valid values include None
-- , Bt709toBt601 , Bt601toBt709 , and Auto .
-- If you chose Auto for ColorSpaceConversionMode and
-- your output is interlaced, your frame rate is one of 23.97 ,
-- 24 , 25 , 29.97 , 50 , or
-- 60 , your SegmentDuration is null, and you are using
-- one of the resolution changes from the list below, Elastic Transcoder
-- applies the following color space conversions: * Standard to HD,
-- 720x480 to 1920x1080 - Elastic Transcoder applies
-- Bt601ToBt709 * Standard to HD, 720x576 to 1920x1080 -
-- Elastic Transcoder applies Bt601ToBt709 * HD to Standard,
-- 1920x1080 to 720x480 - Elastic Transcoder applies
-- Bt709ToBt601 * HD to Standard, 1920x1080 to 720x576 -
-- Elastic Transcoder applies Bt709ToBt601 If you do not specify
-- a ColorSpaceConversionMode , Elastic Transcoder does not
-- change the color space of a file. If you are unsure what
-- ColorSpaceConversionMode was applied to your output file, you
-- can check the AppliedColorSpaceConversion parameter included
-- in your job response. If your job does not have an
-- AppliedColorSpaceConversion in its response, no
-- ColorSpaceConversionMode was applied.
-- ChromaSubsampling The sampling pattern for the chroma (color)
-- channels of the output video. Valid values include yuv420p
-- and yuv422p . yuv420p samples the chroma information
-- of every other horizontal and every other vertical line,
-- yuv422p samples the color information of every horizontal
-- line and every other vertical line. LoopCount (Gif Only) The
-- number of times you want the output gif to loop. Valid values include
-- Infinite and integers between 0 and 100 ,
-- inclusive.
vpCodecOptions :: Lens' VideoParameters (HashMap Text Text)
-- | Elastic Transcoder returns a warning if the resources used by your
-- pipeline are not in the same region as the pipeline.
--
-- Using resources in the same region, such as your Amazon S3 buckets,
-- Amazon SNS notification topics, and AWS KMS key, reduces processing
-- time and prevents cross-regional charges.
--
-- See: warning smart constructor.
data Warning
-- | Creates a value of Warning with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - wCode - The code of the cross-regional warning.
-- - wMessage - The message explaining what resources are in a
-- different region from the pipeline.
--
warning :: Warning
-- | The code of the cross-regional warning.
wCode :: Lens' Warning (Maybe Text)
-- | The message explaining what resources are in a different region from
-- the pipeline.
wMessage :: Lens' Warning (Maybe Text)
-- | The ReadPreset operation gets detailed information about a preset.
module Network.AWS.ElasticTranscoder.ReadPreset
-- | Creates a value of ReadPreset with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - rpId - The identifier of the preset for which you want to
-- get detailed information.
--
readPreset :: Text -> ReadPreset
-- | The ReadPresetRequest structure.
--
-- See: readPreset smart constructor.
data ReadPreset
-- | The identifier of the preset for which you want to get detailed
-- information.
rpId :: Lens' ReadPreset Text
-- | Creates a value of ReadPresetResponse with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - rprsPreset - A section of the response body that provides
-- information about the preset.
-- - rprsResponseStatus - -- | The response status code.
--
readPresetResponse :: Int -> ReadPresetResponse
-- | The ReadPresetResponse structure.
--
-- See: readPresetResponse smart constructor.
data ReadPresetResponse
-- | A section of the response body that provides information about the
-- preset.
rprsPreset :: Lens' ReadPresetResponse (Maybe Preset)
-- |
-- - - | The response status code.
--
rprsResponseStatus :: Lens' ReadPresetResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.ReadPreset.ReadPresetResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.ReadPreset.ReadPresetResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.ReadPreset.ReadPresetResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.ReadPreset.ReadPresetResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.ReadPreset.ReadPresetResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.ReadPreset.ReadPreset
instance Data.Data.Data Network.AWS.ElasticTranscoder.ReadPreset.ReadPreset
instance GHC.Show.Show Network.AWS.ElasticTranscoder.ReadPreset.ReadPreset
instance GHC.Read.Read Network.AWS.ElasticTranscoder.ReadPreset.ReadPreset
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.ReadPreset.ReadPreset
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.ReadPreset.ReadPreset
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.ReadPreset.ReadPresetResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.ReadPreset.ReadPreset
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.ReadPreset.ReadPreset
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.ReadPreset.ReadPreset
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.ReadPreset.ReadPreset
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.ReadPreset.ReadPreset
-- | The ReadPipeline operation gets detailed information about a pipeline.
module Network.AWS.ElasticTranscoder.ReadPipeline
-- | Creates a value of ReadPipeline with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - rId - The identifier of the pipeline to read.
--
readPipeline :: Text -> ReadPipeline
-- | The ReadPipelineRequest structure.
--
-- See: readPipeline smart constructor.
data ReadPipeline
-- | The identifier of the pipeline to read.
rId :: Lens' ReadPipeline Text
-- | Creates a value of ReadPipelineResponse with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - rrsWarnings - Elastic Transcoder returns a warning if the
-- resources used by your pipeline are not in the same region as the
-- pipeline. Using resources in the same region, such as your Amazon S3
-- buckets, Amazon SNS notification topics, and AWS KMS key, reduces
-- processing time and prevents cross-regional charges.
-- - rrsPipeline - A section of the response body that provides
-- information about the pipeline.
-- - rrsResponseStatus - -- | The response status code.
--
readPipelineResponse :: Int -> ReadPipelineResponse
-- | The ReadPipelineResponse structure.
--
-- See: readPipelineResponse smart constructor.
data ReadPipelineResponse
-- | Elastic Transcoder returns a warning if the resources used by your
-- pipeline are not in the same region as the pipeline. Using resources
-- in the same region, such as your Amazon S3 buckets, Amazon SNS
-- notification topics, and AWS KMS key, reduces processing time and
-- prevents cross-regional charges.
rrsWarnings :: Lens' ReadPipelineResponse [Warning]
-- | A section of the response body that provides information about the
-- pipeline.
rrsPipeline :: Lens' ReadPipelineResponse (Maybe Pipeline)
-- |
-- - - | The response status code.
--
rrsResponseStatus :: Lens' ReadPipelineResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipelineResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipelineResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipelineResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipelineResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipelineResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipeline
instance Data.Data.Data Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipeline
instance GHC.Show.Show Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipeline
instance GHC.Read.Read Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipeline
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipeline
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipeline
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipelineResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipeline
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipeline
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipeline
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipeline
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.ReadPipeline.ReadPipeline
-- | The ReadJob operation returns detailed information about a job.
module Network.AWS.ElasticTranscoder.ReadJob
-- | Creates a value of ReadJob with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - rjId - The identifier of the job for which you want to get
-- detailed information.
--
readJob :: Text -> ReadJob
-- | The ReadJobRequest structure.
--
-- See: readJob smart constructor.
data ReadJob
-- | The identifier of the job for which you want to get detailed
-- information.
rjId :: Lens' ReadJob Text
-- | Creates a value of ReadJobResponse with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - rjrsResponseStatus - -- | The response status code.
-- - rjrsJob - A section of the response body that provides
-- information about the job.
--
readJobResponse :: Int -> Job' -> ReadJobResponse
-- | The ReadJobResponse structure.
--
-- See: readJobResponse smart constructor.
data ReadJobResponse
-- |
-- - - | The response status code.
--
rjrsResponseStatus :: Lens' ReadJobResponse Int
-- | A section of the response body that provides information about the
-- job.
rjrsJob :: Lens' ReadJobResponse Job'
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.ReadJob.ReadJobResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.ReadJob.ReadJobResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.ReadJob.ReadJobResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.ReadJob.ReadJobResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.ReadJob.ReadJobResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.ReadJob.ReadJob
instance Data.Data.Data Network.AWS.ElasticTranscoder.ReadJob.ReadJob
instance GHC.Show.Show Network.AWS.ElasticTranscoder.ReadJob.ReadJob
instance GHC.Read.Read Network.AWS.ElasticTranscoder.ReadJob.ReadJob
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.ReadJob.ReadJob
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.ReadJob.ReadJob
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.ReadJob.ReadJobResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.ReadJob.ReadJob
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.ReadJob.ReadJob
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.ReadJob.ReadJob
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.ReadJob.ReadJob
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.ReadJob.ReadJob
-- | The ListPresets operation gets a list of the default presets included
-- with Elastic Transcoder and the presets that you've added in an AWS
-- region.
--
-- This operation returns paginated results.
module Network.AWS.ElasticTranscoder.ListPresets
-- | Creates a value of ListPresets with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - lAscending - To list presets in chronological order by the
-- date and time that they were created, enter true . To list
-- presets in reverse chronological order, enter false .
-- - lPageToken - When Elastic Transcoder returns more than one
-- page of results, use pageToken in subsequent GET
-- requests to get each successive page of results.
--
listPresets :: ListPresets
-- | The ListPresetsRequest structure.
--
-- See: listPresets smart constructor.
data ListPresets
-- | To list presets in chronological order by the date and time that they
-- were created, enter true . To list presets in reverse
-- chronological order, enter false .
lAscending :: Lens' ListPresets (Maybe Text)
-- | When Elastic Transcoder returns more than one page of results, use
-- pageToken in subsequent GET requests to get each
-- successive page of results.
lPageToken :: Lens' ListPresets (Maybe Text)
-- | Creates a value of ListPresetsResponse with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - lrsNextPageToken - A value that you use to access the
-- second and subsequent pages of results, if any. When the presets fit
-- on one page or when you've reached the last page of results, the value
-- of NextPageToken is null .
-- - lrsPresets - An array of Preset objects.
-- - lrsResponseStatus - -- | The response status code.
--
listPresetsResponse :: Int -> ListPresetsResponse
-- | The ListPresetsResponse structure.
--
-- See: listPresetsResponse smart constructor.
data ListPresetsResponse
-- | A value that you use to access the second and subsequent pages of
-- results, if any. When the presets fit on one page or when you've
-- reached the last page of results, the value of NextPageToken
-- is null .
lrsNextPageToken :: Lens' ListPresetsResponse (Maybe Text)
-- | An array of Preset objects.
lrsPresets :: Lens' ListPresetsResponse [Preset]
-- |
-- - - | The response status code.
--
lrsResponseStatus :: Lens' ListPresetsResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.ListPresets.ListPresetsResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.ListPresets.ListPresetsResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.ListPresets.ListPresetsResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.ListPresets.ListPresetsResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.ListPresets.ListPresetsResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.ListPresets.ListPresets
instance Data.Data.Data Network.AWS.ElasticTranscoder.ListPresets.ListPresets
instance GHC.Show.Show Network.AWS.ElasticTranscoder.ListPresets.ListPresets
instance GHC.Read.Read Network.AWS.ElasticTranscoder.ListPresets.ListPresets
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.ListPresets.ListPresets
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.ListPresets.ListPresets
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.ListPresets.ListPresetsResponse
instance Network.AWS.Pager.AWSPager Network.AWS.ElasticTranscoder.ListPresets.ListPresets
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.ListPresets.ListPresets
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.ListPresets.ListPresets
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.ListPresets.ListPresets
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.ListPresets.ListPresets
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.ListPresets.ListPresets
-- | The ListPipelines operation gets a list of the pipelines associated
-- with the current AWS account.
--
-- This operation returns paginated results.
module Network.AWS.ElasticTranscoder.ListPipelines
-- | Creates a value of ListPipelines with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - lpAscending - To list pipelines in chronological order by
-- the date and time that they were created, enter true . To
-- list pipelines in reverse chronological order, enter false
-- .
-- - lpPageToken - When Elastic Transcoder returns more than one
-- page of results, use pageToken in subsequent GET
-- requests to get each successive page of results.
--
listPipelines :: ListPipelines
-- | The ListPipelineRequest structure.
--
-- See: listPipelines smart constructor.
data ListPipelines
-- | To list pipelines in chronological order by the date and time that
-- they were created, enter true . To list pipelines in reverse
-- chronological order, enter false .
lpAscending :: Lens' ListPipelines (Maybe Text)
-- | When Elastic Transcoder returns more than one page of results, use
-- pageToken in subsequent GET requests to get each
-- successive page of results.
lpPageToken :: Lens' ListPipelines (Maybe Text)
-- | Creates a value of ListPipelinesResponse with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - lprsNextPageToken - A value that you use to access the
-- second and subsequent pages of results, if any. When the pipelines fit
-- on one page or when you've reached the last page of results, the value
-- of NextPageToken is null .
-- - lprsPipelines - An array of Pipeline objects.
-- - lprsResponseStatus - -- | The response status code.
--
listPipelinesResponse :: Int -> ListPipelinesResponse
-- | A list of the pipelines associated with the current AWS account.
--
-- See: listPipelinesResponse smart constructor.
data ListPipelinesResponse
-- | A value that you use to access the second and subsequent pages of
-- results, if any. When the pipelines fit on one page or when you've
-- reached the last page of results, the value of NextPageToken
-- is null .
lprsNextPageToken :: Lens' ListPipelinesResponse (Maybe Text)
-- | An array of Pipeline objects.
lprsPipelines :: Lens' ListPipelinesResponse [Pipeline]
-- |
-- - - | The response status code.
--
lprsResponseStatus :: Lens' ListPipelinesResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.ListPipelines.ListPipelinesResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.ListPipelines.ListPipelinesResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.ListPipelines.ListPipelinesResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.ListPipelines.ListPipelinesResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.ListPipelines.ListPipelinesResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.ListPipelines.ListPipelines
instance Data.Data.Data Network.AWS.ElasticTranscoder.ListPipelines.ListPipelines
instance GHC.Show.Show Network.AWS.ElasticTranscoder.ListPipelines.ListPipelines
instance GHC.Read.Read Network.AWS.ElasticTranscoder.ListPipelines.ListPipelines
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.ListPipelines.ListPipelines
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.ListPipelines.ListPipelines
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.ListPipelines.ListPipelinesResponse
instance Network.AWS.Pager.AWSPager Network.AWS.ElasticTranscoder.ListPipelines.ListPipelines
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.ListPipelines.ListPipelines
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.ListPipelines.ListPipelines
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.ListPipelines.ListPipelines
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.ListPipelines.ListPipelines
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.ListPipelines.ListPipelines
-- | The ListJobsByStatus operation gets a list of jobs that have a
-- specified status. The response body contains one element for each job
-- that satisfies the search criteria.
--
-- This operation returns paginated results.
module Network.AWS.ElasticTranscoder.ListJobsByStatus
-- | Creates a value of ListJobsByStatus with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - ljbsAscending - To list jobs in chronological order by the
-- date and time that they were submitted, enter true . To list
-- jobs in reverse chronological order, enter false .
-- - ljbsPageToken - When Elastic Transcoder returns more than
-- one page of results, use pageToken in subsequent GET
-- requests to get each successive page of results.
-- - ljbsStatus - To get information about all of the jobs
-- associated with the current AWS account that have a given status,
-- specify the following status: Submitted ,
-- Progressing , Complete , Canceled , or
-- Error .
--
listJobsByStatus :: Text -> ListJobsByStatus
-- | The ListJobsByStatusRequest structure.
--
-- See: listJobsByStatus smart constructor.
data ListJobsByStatus
-- | To list jobs in chronological order by the date and time that they
-- were submitted, enter true . To list jobs in reverse
-- chronological order, enter false .
ljbsAscending :: Lens' ListJobsByStatus (Maybe Text)
-- | When Elastic Transcoder returns more than one page of results, use
-- pageToken in subsequent GET requests to get each
-- successive page of results.
ljbsPageToken :: Lens' ListJobsByStatus (Maybe Text)
-- | To get information about all of the jobs associated with the current
-- AWS account that have a given status, specify the following status:
-- Submitted , Progressing , Complete ,
-- Canceled , or Error .
ljbsStatus :: Lens' ListJobsByStatus Text
-- | Creates a value of ListJobsByStatusResponse with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - ljbsrsNextPageToken - A value that you use to access the
-- second and subsequent pages of results, if any. When the jobs in the
-- specified pipeline fit on one page or when you've reached the last
-- page of results, the value of NextPageToken is null
-- .
-- - ljbsrsJobs - An array of Job objects that have the
-- specified status.
-- - ljbsrsResponseStatus - -- | The response status code.
--
listJobsByStatusResponse :: Int -> ListJobsByStatusResponse
-- | The ListJobsByStatusResponse structure.
--
-- See: listJobsByStatusResponse smart constructor.
data ListJobsByStatusResponse
-- | A value that you use to access the second and subsequent pages of
-- results, if any. When the jobs in the specified pipeline fit on one
-- page or when you've reached the last page of results, the value of
-- NextPageToken is null .
ljbsrsNextPageToken :: Lens' ListJobsByStatusResponse (Maybe Text)
-- | An array of Job objects that have the specified status.
ljbsrsJobs :: Lens' ListJobsByStatusResponse [Job']
-- |
-- - - | The response status code.
--
ljbsrsResponseStatus :: Lens' ListJobsByStatusResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatusResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatusResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatusResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatusResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatusResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatus
instance Data.Data.Data Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatus
instance GHC.Show.Show Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatus
instance GHC.Read.Read Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatus
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatus
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatus
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatusResponse
instance Network.AWS.Pager.AWSPager Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatus
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatus
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatus
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatus
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatus
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.ListJobsByStatus.ListJobsByStatus
-- | The ListJobsByPipeline operation gets a list of the jobs currently in
-- a pipeline.
--
-- Elastic Transcoder returns all of the jobs currently in the specified
-- pipeline. The response body contains one element for each job that
-- satisfies the search criteria.
--
-- This operation returns paginated results.
module Network.AWS.ElasticTranscoder.ListJobsByPipeline
-- | Creates a value of ListJobsByPipeline with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - ljbpAscending - To list jobs in chronological order by the
-- date and time that they were submitted, enter true . To list
-- jobs in reverse chronological order, enter false .
-- - ljbpPageToken - When Elastic Transcoder returns more than
-- one page of results, use pageToken in subsequent GET
-- requests to get each successive page of results.
-- - ljbpPipelineId - The ID of the pipeline for which you want
-- to get job information.
--
listJobsByPipeline :: Text -> ListJobsByPipeline
-- | The ListJobsByPipelineRequest structure.
--
-- See: listJobsByPipeline smart constructor.
data ListJobsByPipeline
-- | To list jobs in chronological order by the date and time that they
-- were submitted, enter true . To list jobs in reverse
-- chronological order, enter false .
ljbpAscending :: Lens' ListJobsByPipeline (Maybe Text)
-- | When Elastic Transcoder returns more than one page of results, use
-- pageToken in subsequent GET requests to get each
-- successive page of results.
ljbpPageToken :: Lens' ListJobsByPipeline (Maybe Text)
-- | The ID of the pipeline for which you want to get job information.
ljbpPipelineId :: Lens' ListJobsByPipeline Text
-- | Creates a value of ListJobsByPipelineResponse with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - ljbprsNextPageToken - A value that you use to access the
-- second and subsequent pages of results, if any. When the jobs in the
-- specified pipeline fit on one page or when you've reached the last
-- page of results, the value of NextPageToken is null
-- .
-- - ljbprsJobs - An array of Job objects that are in
-- the specified pipeline.
-- - ljbprsResponseStatus - -- | The response status code.
--
listJobsByPipelineResponse :: Int -> ListJobsByPipelineResponse
-- | The ListJobsByPipelineResponse structure.
--
-- See: listJobsByPipelineResponse smart constructor.
data ListJobsByPipelineResponse
-- | A value that you use to access the second and subsequent pages of
-- results, if any. When the jobs in the specified pipeline fit on one
-- page or when you've reached the last page of results, the value of
-- NextPageToken is null .
ljbprsNextPageToken :: Lens' ListJobsByPipelineResponse (Maybe Text)
-- | An array of Job objects that are in the specified pipeline.
ljbprsJobs :: Lens' ListJobsByPipelineResponse [Job']
-- |
-- - - | The response status code.
--
ljbprsResponseStatus :: Lens' ListJobsByPipelineResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipelineResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipelineResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipelineResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipelineResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipelineResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipeline
instance Data.Data.Data Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipeline
instance GHC.Show.Show Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipeline
instance GHC.Read.Read Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipeline
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipeline
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipeline
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipelineResponse
instance Network.AWS.Pager.AWSPager Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipeline
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipeline
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipeline
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipeline
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipeline
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.ListJobsByPipeline.ListJobsByPipeline
-- | The DeletePreset operation removes a preset that you've added in an
-- AWS region.
module Network.AWS.ElasticTranscoder.DeletePreset
-- | Creates a value of DeletePreset with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - dpId - The identifier of the preset for which you want to
-- get detailed information.
--
deletePreset :: Text -> DeletePreset
-- | The DeletePresetRequest structure.
--
-- See: deletePreset smart constructor.
data DeletePreset
-- | The identifier of the preset for which you want to get detailed
-- information.
dpId :: Lens' DeletePreset Text
-- | Creates a value of DeletePresetResponse with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
deletePresetResponse :: Int -> DeletePresetResponse
-- | The DeletePresetResponse structure.
--
-- See: deletePresetResponse smart constructor.
data DeletePresetResponse
-- |
-- - - | The response status code.
--
dprsResponseStatus :: Lens' DeletePresetResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.DeletePreset.DeletePresetResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.DeletePreset.DeletePresetResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.DeletePreset.DeletePresetResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.DeletePreset.DeletePresetResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.DeletePreset.DeletePresetResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.DeletePreset.DeletePreset
instance Data.Data.Data Network.AWS.ElasticTranscoder.DeletePreset.DeletePreset
instance GHC.Show.Show Network.AWS.ElasticTranscoder.DeletePreset.DeletePreset
instance GHC.Read.Read Network.AWS.ElasticTranscoder.DeletePreset.DeletePreset
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.DeletePreset.DeletePreset
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.DeletePreset.DeletePreset
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.DeletePreset.DeletePresetResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.DeletePreset.DeletePreset
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.DeletePreset.DeletePreset
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.DeletePreset.DeletePreset
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.DeletePreset.DeletePreset
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.DeletePreset.DeletePreset
-- | The DeletePipeline operation removes a pipeline.
--
-- You can only delete a pipeline that has never been used or that is not
-- currently in use (doesn't contain any active jobs). If the pipeline is
-- currently in use, DeletePipeline returns an error.
module Network.AWS.ElasticTranscoder.DeletePipeline
-- | Creates a value of DeletePipeline with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - dId - The identifier of the pipeline that you want to
-- delete.
--
deletePipeline :: Text -> DeletePipeline
-- | The DeletePipelineRequest structure.
--
-- See: deletePipeline smart constructor.
data DeletePipeline
-- | The identifier of the pipeline that you want to delete.
dId :: Lens' DeletePipeline Text
-- | Creates a value of DeletePipelineResponse with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
deletePipelineResponse :: Int -> DeletePipelineResponse
-- | The DeletePipelineResponse structure.
--
-- See: deletePipelineResponse smart constructor.
data DeletePipelineResponse
-- |
-- - - | The response status code.
--
drsResponseStatus :: Lens' DeletePipelineResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipelineResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipelineResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipelineResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipelineResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipelineResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipeline
instance Data.Data.Data Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipeline
instance GHC.Show.Show Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipeline
instance GHC.Read.Read Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipeline
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipeline
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipeline
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipelineResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipeline
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipeline
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipeline
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipeline
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.DeletePipeline.DeletePipeline
-- | The CreatePreset operation creates a preset with settings that you
-- specify.
--
-- Important: Elastic Transcoder checks the CreatePreset settings
-- to ensure that they meet Elastic Transcoder requirements and to
-- determine whether they comply with H.264 standards. If your settings
-- are not valid for Elastic Transcoder, Elastic Transcoder returns an
-- HTTP 400 response (ValidationException ) and does not create
-- the preset. If the settings are valid for Elastic Transcoder but
-- aren't strictly compliant with the H.264 standard, Elastic Transcoder
-- creates the preset and returns a warning message in the response. This
-- helps you determine whether your settings comply with the H.264
-- standard while giving you greater flexibility with respect to the
-- video that Elastic Transcoder produces.
--
-- Elastic Transcoder uses the H.264 video-compression format. For more
-- information, see the International Telecommunication Union publication
-- Recommendation ITU-T H.264: Advanced video coding for generic
-- audiovisual services .
module Network.AWS.ElasticTranscoder.CreatePreset
-- | Creates a value of CreatePreset with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cpVideo - A section of the request body that specifies the
-- video parameters.
-- - cpThumbnails - A section of the request body that specifies
-- the thumbnail parameters, if any.
-- - cpDescription - A description of the preset.
-- - cpAudio - A section of the request body that specifies the
-- audio parameters.
-- - cpName - The name of the preset. We recommend that the name
-- be unique within the AWS account, but uniqueness is not enforced.
-- - cpContainer - The container type for the output file. Valid
-- values include flac , flv , fmp4 ,
-- gif , mp3 , mp4 , mpg ,
-- mxf , oga , ogg , ts , and
-- webm .
--
createPreset :: Text -> Text -> CreatePreset
-- | The CreatePresetRequest structure.
--
-- See: createPreset smart constructor.
data CreatePreset
-- | A section of the request body that specifies the video parameters.
cpVideo :: Lens' CreatePreset (Maybe VideoParameters)
-- | A section of the request body that specifies the thumbnail parameters,
-- if any.
cpThumbnails :: Lens' CreatePreset (Maybe Thumbnails)
-- | A description of the preset.
cpDescription :: Lens' CreatePreset (Maybe Text)
-- | A section of the request body that specifies the audio parameters.
cpAudio :: Lens' CreatePreset (Maybe AudioParameters)
-- | The name of the preset. We recommend that the name be unique within
-- the AWS account, but uniqueness is not enforced.
cpName :: Lens' CreatePreset Text
-- | The container type for the output file. Valid values include
-- flac , flv , fmp4 , gif ,
-- mp3 , mp4 , mpg , mxf ,
-- oga , ogg , ts , and webm .
cpContainer :: Lens' CreatePreset Text
-- | Creates a value of CreatePresetResponse with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cprsWarning - If the preset settings don't comply with the
-- standards for the video codec but Elastic Transcoder created the
-- preset, this message explains the reason the preset settings don't
-- meet the standard. Elastic Transcoder created the preset because the
-- settings might produce acceptable output.
-- - cprsPreset - A section of the response body that provides
-- information about the preset that is created.
-- - cprsResponseStatus - -- | The response status code.
--
createPresetResponse :: Int -> CreatePresetResponse
-- | The CreatePresetResponse structure.
--
-- See: createPresetResponse smart constructor.
data CreatePresetResponse
-- | If the preset settings don't comply with the standards for the video
-- codec but Elastic Transcoder created the preset, this message explains
-- the reason the preset settings don't meet the standard. Elastic
-- Transcoder created the preset because the settings might produce
-- acceptable output.
cprsWarning :: Lens' CreatePresetResponse (Maybe Text)
-- | A section of the response body that provides information about the
-- preset that is created.
cprsPreset :: Lens' CreatePresetResponse (Maybe Preset)
-- |
-- - - | The response status code.
--
cprsResponseStatus :: Lens' CreatePresetResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.CreatePreset.CreatePresetResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.CreatePreset.CreatePresetResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.CreatePreset.CreatePresetResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.CreatePreset.CreatePresetResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.CreatePreset.CreatePresetResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.CreatePreset.CreatePreset
instance Data.Data.Data Network.AWS.ElasticTranscoder.CreatePreset.CreatePreset
instance GHC.Show.Show Network.AWS.ElasticTranscoder.CreatePreset.CreatePreset
instance GHC.Read.Read Network.AWS.ElasticTranscoder.CreatePreset.CreatePreset
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.CreatePreset.CreatePreset
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.CreatePreset.CreatePreset
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.CreatePreset.CreatePresetResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.CreatePreset.CreatePreset
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.CreatePreset.CreatePreset
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.CreatePreset.CreatePreset
instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.ElasticTranscoder.CreatePreset.CreatePreset
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.CreatePreset.CreatePreset
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.CreatePreset.CreatePreset
-- | The CreatePipeline operation creates a pipeline with settings that you
-- specify.
module Network.AWS.ElasticTranscoder.CreatePipeline
-- | Creates a value of CreatePipeline with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cContentConfig - The optional ContentConfig object
-- specifies information about the Amazon S3 bucket in which you want
-- Elastic Transcoder to save transcoded files and playlists: which
-- bucket to use, which users you want to have access to the files, the
-- type of access you want users to have, and the storage class that you
-- want to assign to the files. If you specify values for
-- ContentConfig , you must also specify values for
-- ThumbnailConfig . If you specify values for
-- ContentConfig and ThumbnailConfig , omit the
-- OutputBucket object. * Bucket : The Amazon S3 bucket
-- in which you want Elastic Transcoder to save transcoded files and
-- playlists. * Permissions (Optional): The Permissions object
-- specifies which users you want to have access to transcoded files and
-- the type of access you want them to have. You can grant permissions to
-- a maximum of 30 users andor predefined Amazon S3 groups. *
-- Grantee Type : Specify the type of value that appears in the
-- Grantee object: * Canonical : The value in the
-- Grantee object is either the canonical user ID for an AWS
-- account or an origin access identity for an Amazon CloudFront
-- distribution. For more information about canonical user IDs, see
-- Access Control List (ACL) Overview in the Amazon Simple Storage
-- Service Developer Guide. For more information about using CloudFront
-- origin access identities to require that users use CloudFront URLs
-- instead of Amazon S3 URLs, see Using an Origin Access Identity to
-- Restrict Access to Your Amazon S3 Content. Important:/ A canonical
-- user ID is not the same as an AWS account number. * Email : The
-- value in the Grantee object is the registered email address
-- of an AWS account. * Group : The value in the Grantee
-- object is one of the following predefined Amazon S3 groups:
-- AllUsers , AuthenticatedUsers , or
-- LogDelivery . * Grantee : The AWS user or group that
-- you want to have access to transcoded files and playlists. To identify
-- the user or group, you can specify the canonical user ID for an AWS
-- account, an origin access identity for a CloudFront distribution, the
-- registered email address of an AWS account, or a predefined Amazon S3
-- group * Access : The permission that you want to give to the
-- AWS user that you specified in Grantee . Permissions are
-- granted on the files that Elastic Transcoder adds to the bucket,
-- including playlists and video files. Valid values include: *
-- READ : The grantee can read the objects and metadata for
-- objects that Elastic Transcoder adds to the Amazon S3 bucket. *
-- READ_ACP : The grantee can read the object ACL for objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- WRITE_ACP : The grantee can write the ACL for the objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- FULL_CONTROL : The grantee has READ ,
-- READ_ACP , and WRITE_ACP permissions for the objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- StorageClass : The Amazon S3 storage class, Standard
-- or ReducedRedundancy , that you want Elastic Transcoder to
-- assign to the video files and playlists that it stores in your Amazon
-- S3 bucket.
-- - cOutputBucket - The Amazon S3 bucket in which you want
-- Elastic Transcoder to save the transcoded files. (Use this, or use
-- ContentConfig:Bucket plus ThumbnailConfig:Bucket.) Specify this value
-- when all of the following are true: * You want to save transcoded
-- files, thumbnails (if any), and playlists (if any) together in one
-- bucket. * You do not want to specify the users or groups who have
-- access to the transcoded files, thumbnails, and playlists. * You do
-- not want to specify the permissions that Elastic Transcoder grants to
-- the files. Important: When Elastic Transcoder saves files in
-- OutputBucket , it grants full control over the files only to
-- the AWS account that owns the role that is specified by Role
-- . * You want to associate the transcoded files and thumbnails with the
-- Amazon S3 Standard storage class. If you want to save transcoded files
-- and playlists in one bucket and thumbnails in another bucket, specify
-- which users can access the transcoded files or the permissions the
-- users have, or change the Amazon S3 storage class, omit
-- OutputBucket and specify values for ContentConfig
-- and ThumbnailConfig instead.
-- - cAWSKMSKeyARN - The AWS Key Management Service (AWS KMS)
-- key that you want to use with this pipeline. If you use either
-- S3 or S3-AWS-KMS as your Encryption:Mode ,
-- you don't need to provide a key with your job because a default key,
-- known as an AWS-KMS key, is created for you automatically. You need to
-- provide an AWS-KMS key only if you want to use a non-default AWS-KMS
-- key, or if you are using an Encryption:Mode of
-- AES-PKCS7 , AES-CTR , or AES-GCM .
-- - cNotifications - The Amazon Simple Notification Service
-- (Amazon SNS) topic that you want to notify to report job status.
-- Important: To receive notifications, you must also subscribe to
-- the new topic in the Amazon SNS console. * Progressing : The
-- topic ARN for the Amazon Simple Notification Service (Amazon SNS)
-- topic that you want to notify when Elastic Transcoder has started to
-- process a job in this pipeline. This is the ARN that Amazon SNS
-- returned when you created the topic. For more information, see Create
-- a Topic in the Amazon Simple Notification Service Developer Guide. *
-- Completed : The topic ARN for the Amazon SNS topic that you
-- want to notify when Elastic Transcoder has finished processing a job
-- in this pipeline. This is the ARN that Amazon SNS returned when you
-- created the topic. * Warning : The topic ARN for the Amazon SNS
-- topic that you want to notify when Elastic Transcoder encounters a
-- warning condition while processing a job in this pipeline. This is the
-- ARN that Amazon SNS returned when you created the topic. *
-- Error : The topic ARN for the Amazon SNS topic that you want to
-- notify when Elastic Transcoder encounters an error condition while
-- processing a job in this pipeline. This is the ARN that Amazon SNS
-- returned when you created the topic.
-- - cThumbnailConfig - The ThumbnailConfig object
-- specifies several values, including the Amazon S3 bucket in which you
-- want Elastic Transcoder to save thumbnail files, which users you want
-- to have access to the files, the type of access you want users to
-- have, and the storage class that you want to assign to the files. If
-- you specify values for ContentConfig , you must also specify
-- values for ThumbnailConfig even if you don't want to create
-- thumbnails. If you specify values for ContentConfig and
-- ThumbnailConfig , omit the OutputBucket object. *
-- Bucket : The Amazon S3 bucket in which you want Elastic
-- Transcoder to save thumbnail files. * Permissions (Optional):
-- The Permissions object specifies which users andor
-- predefined Amazon S3 groups you want to have access to thumbnail
-- files, and the type of access you want them to have. You can grant
-- permissions to a maximum of 30 users andor predefined Amazon S3
-- groups. * GranteeType : Specify the type of value that appears
-- in the Grantee object: * Canonical : The value in the
-- Grantee object is either the canonical user ID for an AWS
-- account or an origin access identity for an Amazon CloudFront
-- distribution. Important: A canonical user ID is not the same as
-- an AWS account number. * Email : The value in the
-- Grantee object is the registered email address of an AWS
-- account. * Group : The value in the Grantee object is
-- one of the following predefined Amazon S3 groups: AllUsers ,
-- AuthenticatedUsers , or LogDelivery . *
-- Grantee : The AWS user or group that you want to have access to
-- thumbnail files. To identify the user or group, you can specify the
-- canonical user ID for an AWS account, an origin access identity for a
-- CloudFront distribution, the registered email address of an AWS
-- account, or a predefined Amazon S3 group. * Access : The
-- permission that you want to give to the AWS user that you specified in
-- Grantee . Permissions are granted on the thumbnail files that
-- Elastic Transcoder adds to the bucket. Valid values include: *
-- READ : The grantee can read the thumbnails and metadata for
-- objects that Elastic Transcoder adds to the Amazon S3 bucket. *
-- READ_ACP : The grantee can read the object ACL for thumbnails
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- WRITE_ACP : The grantee can write the ACL for the thumbnails
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- FULL_CONTROL : The grantee has READ ,
-- READ_ACP , and WRITE_ACP permissions for the
-- thumbnails that Elastic Transcoder adds to the Amazon S3 bucket. *
-- StorageClass : The Amazon S3 storage class, Standard
-- or ReducedRedundancy , that you want Elastic Transcoder to
-- assign to the thumbnails that it stores in your Amazon S3 bucket.
-- - cName - The name of the pipeline. We recommend that the
-- name be unique within the AWS account, but uniqueness is not enforced.
-- Constraints: Maximum 40 characters.
-- - cInputBucket - The Amazon S3 bucket in which you saved the
-- media files that you want to transcode.
-- - cRole - The IAM Amazon Resource Name (ARN) for the role
-- that you want Elastic Transcoder to use to create the pipeline.
--
createPipeline :: Text -> Text -> Text -> CreatePipeline
-- | The CreatePipelineRequest structure.
--
-- See: createPipeline smart constructor.
data CreatePipeline
-- | The optional ContentConfig object specifies information about
-- the Amazon S3 bucket in which you want Elastic Transcoder to save
-- transcoded files and playlists: which bucket to use, which users you
-- want to have access to the files, the type of access you want users to
-- have, and the storage class that you want to assign to the files. If
-- you specify values for ContentConfig , you must also specify
-- values for ThumbnailConfig . If you specify values for
-- ContentConfig and ThumbnailConfig , omit the
-- OutputBucket object. * Bucket : The Amazon S3 bucket
-- in which you want Elastic Transcoder to save transcoded files and
-- playlists. * Permissions (Optional): The Permissions object
-- specifies which users you want to have access to transcoded files and
-- the type of access you want them to have. You can grant permissions to
-- a maximum of 30 users andor predefined Amazon S3 groups. *
-- Grantee Type : Specify the type of value that appears in the
-- Grantee object: * Canonical : The value in the
-- Grantee object is either the canonical user ID for an AWS
-- account or an origin access identity for an Amazon CloudFront
-- distribution. For more information about canonical user IDs, see
-- Access Control List (ACL) Overview in the Amazon Simple Storage
-- Service Developer Guide. For more information about using CloudFront
-- origin access identities to require that users use CloudFront URLs
-- instead of Amazon S3 URLs, see Using an Origin Access Identity to
-- Restrict Access to Your Amazon S3 Content. Important:/ A canonical
-- user ID is not the same as an AWS account number. * Email : The
-- value in the Grantee object is the registered email address
-- of an AWS account. * Group : The value in the Grantee
-- object is one of the following predefined Amazon S3 groups:
-- AllUsers , AuthenticatedUsers , or
-- LogDelivery . * Grantee : The AWS user or group that
-- you want to have access to transcoded files and playlists. To identify
-- the user or group, you can specify the canonical user ID for an AWS
-- account, an origin access identity for a CloudFront distribution, the
-- registered email address of an AWS account, or a predefined Amazon S3
-- group * Access : The permission that you want to give to the
-- AWS user that you specified in Grantee . Permissions are
-- granted on the files that Elastic Transcoder adds to the bucket,
-- including playlists and video files. Valid values include: *
-- READ : The grantee can read the objects and metadata for
-- objects that Elastic Transcoder adds to the Amazon S3 bucket. *
-- READ_ACP : The grantee can read the object ACL for objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- WRITE_ACP : The grantee can write the ACL for the objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- FULL_CONTROL : The grantee has READ ,
-- READ_ACP , and WRITE_ACP permissions for the objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- StorageClass : The Amazon S3 storage class, Standard
-- or ReducedRedundancy , that you want Elastic Transcoder to
-- assign to the video files and playlists that it stores in your Amazon
-- S3 bucket.
cContentConfig :: Lens' CreatePipeline (Maybe PipelineOutputConfig)
-- | The Amazon S3 bucket in which you want Elastic Transcoder to save the
-- transcoded files. (Use this, or use ContentConfig:Bucket plus
-- ThumbnailConfig:Bucket.) Specify this value when all of the following
-- are true: * You want to save transcoded files, thumbnails (if any),
-- and playlists (if any) together in one bucket. * You do not want to
-- specify the users or groups who have access to the transcoded files,
-- thumbnails, and playlists. * You do not want to specify the
-- permissions that Elastic Transcoder grants to the files.
-- Important: When Elastic Transcoder saves files in
-- OutputBucket , it grants full control over the files only to
-- the AWS account that owns the role that is specified by Role
-- . * You want to associate the transcoded files and thumbnails with the
-- Amazon S3 Standard storage class. If you want to save transcoded files
-- and playlists in one bucket and thumbnails in another bucket, specify
-- which users can access the transcoded files or the permissions the
-- users have, or change the Amazon S3 storage class, omit
-- OutputBucket and specify values for ContentConfig
-- and ThumbnailConfig instead.
cOutputBucket :: Lens' CreatePipeline (Maybe Text)
-- | The AWS Key Management Service (AWS KMS) key that you want to use with
-- this pipeline. If you use either S3 or S3-AWS-KMS as
-- your Encryption:Mode , you don't need to provide a key with
-- your job because a default key, known as an AWS-KMS key, is created
-- for you automatically. You need to provide an AWS-KMS key only if you
-- want to use a non-default AWS-KMS key, or if you are using an
-- Encryption:Mode of AES-PKCS7 , AES-CTR , or
-- AES-GCM .
cAWSKMSKeyARN :: Lens' CreatePipeline (Maybe Text)
-- | The Amazon Simple Notification Service (Amazon SNS) topic that you
-- want to notify to report job status. Important: To receive
-- notifications, you must also subscribe to the new topic in the Amazon
-- SNS console. * Progressing : The topic ARN for the Amazon
-- Simple Notification Service (Amazon SNS) topic that you want to notify
-- when Elastic Transcoder has started to process a job in this pipeline.
-- This is the ARN that Amazon SNS returned when you created the topic.
-- For more information, see Create a Topic in the Amazon Simple
-- Notification Service Developer Guide. * Completed : The topic
-- ARN for the Amazon SNS topic that you want to notify when Elastic
-- Transcoder has finished processing a job in this pipeline. This is the
-- ARN that Amazon SNS returned when you created the topic. *
-- Warning : The topic ARN for the Amazon SNS topic that you want
-- to notify when Elastic Transcoder encounters a warning condition while
-- processing a job in this pipeline. This is the ARN that Amazon SNS
-- returned when you created the topic. * Error : The topic ARN
-- for the Amazon SNS topic that you want to notify when Elastic
-- Transcoder encounters an error condition while processing a job in
-- this pipeline. This is the ARN that Amazon SNS returned when you
-- created the topic.
cNotifications :: Lens' CreatePipeline (Maybe Notifications)
-- | The ThumbnailConfig object specifies several values,
-- including the Amazon S3 bucket in which you want Elastic Transcoder to
-- save thumbnail files, which users you want to have access to the
-- files, the type of access you want users to have, and the storage
-- class that you want to assign to the files. If you specify values for
-- ContentConfig , you must also specify values for
-- ThumbnailConfig even if you don't want to create thumbnails.
-- If you specify values for ContentConfig and
-- ThumbnailConfig , omit the OutputBucket object. *
-- Bucket : The Amazon S3 bucket in which you want Elastic
-- Transcoder to save thumbnail files. * Permissions (Optional):
-- The Permissions object specifies which users andor
-- predefined Amazon S3 groups you want to have access to thumbnail
-- files, and the type of access you want them to have. You can grant
-- permissions to a maximum of 30 users andor predefined Amazon S3
-- groups. * GranteeType : Specify the type of value that appears
-- in the Grantee object: * Canonical : The value in the
-- Grantee object is either the canonical user ID for an AWS
-- account or an origin access identity for an Amazon CloudFront
-- distribution. Important: A canonical user ID is not the same as
-- an AWS account number. * Email : The value in the
-- Grantee object is the registered email address of an AWS
-- account. * Group : The value in the Grantee object is
-- one of the following predefined Amazon S3 groups: AllUsers ,
-- AuthenticatedUsers , or LogDelivery . *
-- Grantee : The AWS user or group that you want to have access to
-- thumbnail files. To identify the user or group, you can specify the
-- canonical user ID for an AWS account, an origin access identity for a
-- CloudFront distribution, the registered email address of an AWS
-- account, or a predefined Amazon S3 group. * Access : The
-- permission that you want to give to the AWS user that you specified in
-- Grantee . Permissions are granted on the thumbnail files that
-- Elastic Transcoder adds to the bucket. Valid values include: *
-- READ : The grantee can read the thumbnails and metadata for
-- objects that Elastic Transcoder adds to the Amazon S3 bucket. *
-- READ_ACP : The grantee can read the object ACL for thumbnails
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- WRITE_ACP : The grantee can write the ACL for the thumbnails
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- FULL_CONTROL : The grantee has READ ,
-- READ_ACP , and WRITE_ACP permissions for the
-- thumbnails that Elastic Transcoder adds to the Amazon S3 bucket. *
-- StorageClass : The Amazon S3 storage class, Standard
-- or ReducedRedundancy , that you want Elastic Transcoder to
-- assign to the thumbnails that it stores in your Amazon S3 bucket.
cThumbnailConfig :: Lens' CreatePipeline (Maybe PipelineOutputConfig)
-- | The name of the pipeline. We recommend that the name be unique within
-- the AWS account, but uniqueness is not enforced. Constraints: Maximum
-- 40 characters.
cName :: Lens' CreatePipeline Text
-- | The Amazon S3 bucket in which you saved the media files that you want
-- to transcode.
cInputBucket :: Lens' CreatePipeline Text
-- | The IAM Amazon Resource Name (ARN) for the role that you want Elastic
-- Transcoder to use to create the pipeline.
cRole :: Lens' CreatePipeline Text
-- | Creates a value of CreatePipelineResponse with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - crsWarnings - Elastic Transcoder returns a warning if the
-- resources used by your pipeline are not in the same region as the
-- pipeline. Using resources in the same region, such as your Amazon S3
-- buckets, Amazon SNS notification topics, and AWS KMS key, reduces
-- processing time and prevents cross-regional charges.
-- - crsPipeline - A section of the response body that provides
-- information about the pipeline that is created.
-- - crsResponseStatus - -- | The response status code.
--
createPipelineResponse :: Int -> CreatePipelineResponse
-- | When you create a pipeline, Elastic Transcoder returns the values that
-- you specified in the request.
--
-- See: createPipelineResponse smart constructor.
data CreatePipelineResponse
-- | Elastic Transcoder returns a warning if the resources used by your
-- pipeline are not in the same region as the pipeline. Using resources
-- in the same region, such as your Amazon S3 buckets, Amazon SNS
-- notification topics, and AWS KMS key, reduces processing time and
-- prevents cross-regional charges.
crsWarnings :: Lens' CreatePipelineResponse [Warning]
-- | A section of the response body that provides information about the
-- pipeline that is created.
crsPipeline :: Lens' CreatePipelineResponse (Maybe Pipeline)
-- |
-- - - | The response status code.
--
crsResponseStatus :: Lens' CreatePipelineResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipelineResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipelineResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipelineResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipelineResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipelineResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipeline
instance Data.Data.Data Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipeline
instance GHC.Show.Show Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipeline
instance GHC.Read.Read Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipeline
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipeline
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipeline
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipelineResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipeline
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipeline
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipeline
instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipeline
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipeline
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.CreatePipeline.CreatePipeline
-- | When you create a job, Elastic Transcoder returns JSON data that
-- includes the values that you specified plus information about the job
-- that is created.
--
-- If you have specified more than one output for your jobs (for example,
-- one output for the Kindle Fire and another output for the Apple iPhone
-- 4s), you currently must use the Elastic Transcoder API to list the
-- jobs (as opposed to the AWS Console).
module Network.AWS.ElasticTranscoder.CreateJob
-- | Creates a value of CreateJob with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cjInputs - A section of the request body that provides
-- information about the files that are being transcoded.
-- - cjInput - A section of the request body that provides
-- information about the file that is being transcoded.
-- - cjUserMetadata - User-defined metadata that you want to
-- associate with an Elastic Transcoder job. You specify metadata in
-- key/value pairs, and you can add up to 10 key/value
-- pairs per job. Elastic Transcoder does not guarantee that
-- key/value pairs are returned in the same order in which you
-- specify them.
-- - cjOutputs - A section of the request body that provides
-- information about the transcoded (target) files. We recommend that you
-- use the Outputs syntax instead of the Output
-- syntax.
-- - cjOutput - A section of the request body that provides
-- information about the transcoded (target) file. We strongly recommend
-- that you use the Outputs syntax instead of the
-- Output syntax.
-- - cjPlaylists - If you specify a preset in PresetId
-- for which the value of Container is fmp4 (Fragmented MP4) or
-- ts (MPEG-TS), Playlists contains information about the master
-- playlists that you want Elastic Transcoder to create. The maximum
-- number of master playlists in a job is 30.
-- - cjOutputKeyPrefix - The value, if any, that you want
-- Elastic Transcoder to prepend to the names of all files that this job
-- creates, including output files, thumbnails, and playlists.
-- - cjPipelineId - The Id of the pipeline that you
-- want Elastic Transcoder to use for transcoding. The pipeline
-- determines several settings, including the Amazon S3 bucket from which
-- Elastic Transcoder gets the files to transcode and the bucket into
-- which Elastic Transcoder puts the transcoded files.
--
createJob :: Text -> CreateJob
-- | The CreateJobRequest structure.
--
-- See: createJob smart constructor.
data CreateJob
-- | A section of the request body that provides information about the
-- files that are being transcoded.
cjInputs :: Lens' CreateJob [JobInput]
-- | A section of the request body that provides information about the file
-- that is being transcoded.
cjInput :: Lens' CreateJob (Maybe JobInput)
-- | User-defined metadata that you want to associate with an Elastic
-- Transcoder job. You specify metadata in key/value pairs, and
-- you can add up to 10 key/value pairs per job. Elastic
-- Transcoder does not guarantee that key/value pairs are
-- returned in the same order in which you specify them.
cjUserMetadata :: Lens' CreateJob (HashMap Text Text)
-- | A section of the request body that provides information about the
-- transcoded (target) files. We recommend that you use the
-- Outputs syntax instead of the Output syntax.
cjOutputs :: Lens' CreateJob [CreateJobOutput]
-- | A section of the request body that provides information about the
-- transcoded (target) file. We strongly recommend that you use the
-- Outputs syntax instead of the Output syntax.
cjOutput :: Lens' CreateJob (Maybe CreateJobOutput)
-- | If you specify a preset in PresetId for which the value of
-- Container is fmp4 (Fragmented MP4) or ts (MPEG-TS), Playlists
-- contains information about the master playlists that you want Elastic
-- Transcoder to create. The maximum number of master playlists in a job
-- is 30.
cjPlaylists :: Lens' CreateJob [CreateJobPlaylist]
-- | The value, if any, that you want Elastic Transcoder to prepend to the
-- names of all files that this job creates, including output files,
-- thumbnails, and playlists.
cjOutputKeyPrefix :: Lens' CreateJob (Maybe Text)
-- | The Id of the pipeline that you want Elastic Transcoder to
-- use for transcoding. The pipeline determines several settings,
-- including the Amazon S3 bucket from which Elastic Transcoder gets the
-- files to transcode and the bucket into which Elastic Transcoder puts
-- the transcoded files.
cjPipelineId :: Lens' CreateJob Text
-- | Creates a value of CreateJobResponse with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cjrsJob - A section of the response body that provides
-- information about the job that is created.
-- - cjrsResponseStatus - -- | The response status code.
--
createJobResponse :: Int -> CreateJobResponse
-- | The CreateJobResponse structure.
--
-- See: createJobResponse smart constructor.
data CreateJobResponse
-- | A section of the response body that provides information about the job
-- that is created.
cjrsJob :: Lens' CreateJobResponse (Maybe Job')
-- |
-- - - | The response status code.
--
cjrsResponseStatus :: Lens' CreateJobResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.CreateJob.CreateJobResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.CreateJob.CreateJobResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.CreateJob.CreateJobResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.CreateJob.CreateJobResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.CreateJob.CreateJobResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.CreateJob.CreateJob
instance Data.Data.Data Network.AWS.ElasticTranscoder.CreateJob.CreateJob
instance GHC.Show.Show Network.AWS.ElasticTranscoder.CreateJob.CreateJob
instance GHC.Read.Read Network.AWS.ElasticTranscoder.CreateJob.CreateJob
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.CreateJob.CreateJob
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.CreateJob.CreateJob
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.CreateJob.CreateJobResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.CreateJob.CreateJob
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.CreateJob.CreateJob
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.CreateJob.CreateJob
instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.ElasticTranscoder.CreateJob.CreateJob
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.CreateJob.CreateJob
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.CreateJob.CreateJob
-- | The CancelJob operation cancels an unfinished job.
module Network.AWS.ElasticTranscoder.CancelJob
-- | Creates a value of CancelJob with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cjId - The identifier of the job that you want to cancel.
-- To get a list of the jobs (including their jobId ) that have
-- a status of Submitted , use the ListJobsByStatus API
-- action.
--
cancelJob :: Text -> CancelJob
-- | The CancelJobRequest structure.
--
-- See: cancelJob smart constructor.
data CancelJob
-- | The identifier of the job that you want to cancel. To get a list of
-- the jobs (including their jobId ) that have a status of
-- Submitted , use the ListJobsByStatus API action.
cjId :: Lens' CancelJob Text
-- | Creates a value of CancelJobResponse with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
cancelJobResponse :: Int -> CancelJobResponse
-- | The response body contains a JSON object. If the job is successfully
-- canceled, the value of Success is true .
--
-- See: cancelJobResponse smart constructor.
data CancelJobResponse
-- |
-- - - | The response status code.
--
canrsResponseStatus :: Lens' CancelJobResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.CancelJob.CancelJobResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.CancelJob.CancelJobResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.CancelJob.CancelJobResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.CancelJob.CancelJobResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.CancelJob.CancelJobResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.CancelJob.CancelJob
instance Data.Data.Data Network.AWS.ElasticTranscoder.CancelJob.CancelJob
instance GHC.Show.Show Network.AWS.ElasticTranscoder.CancelJob.CancelJob
instance GHC.Read.Read Network.AWS.ElasticTranscoder.CancelJob.CancelJob
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.CancelJob.CancelJob
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.CancelJob.CancelJob
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.CancelJob.CancelJobResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.CancelJob.CancelJob
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.CancelJob.CancelJob
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.CancelJob.CancelJob
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.CancelJob.CancelJob
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.CancelJob.CancelJob
-- | Use the UpdatePipeline operation to update settings for a
-- pipeline.
--
-- Important: When you change pipeline settings, your changes take
-- effect immediately. Jobs that you have already submitted and that
-- Elastic Transcoder has not started to process are affected in addition
-- to jobs that you submit after you change settings.
module Network.AWS.ElasticTranscoder.UpdatePipeline
-- | Creates a value of UpdatePipeline with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - upInputBucket - The Amazon S3 bucket in which you saved the
-- media files that you want to transcode and the graphics that you want
-- to use as watermarks.
-- - upContentConfig - The optional ContentConfig
-- object specifies information about the Amazon S3 bucket in which you
-- want Elastic Transcoder to save transcoded files and playlists: which
-- bucket to use, which users you want to have access to the files, the
-- type of access you want users to have, and the storage class that you
-- want to assign to the files. If you specify values for
-- ContentConfig , you must also specify values for
-- ThumbnailConfig . If you specify values for
-- ContentConfig and ThumbnailConfig , omit the
-- OutputBucket object. * Bucket : The Amazon S3 bucket
-- in which you want Elastic Transcoder to save transcoded files and
-- playlists. * Permissions (Optional): The Permissions object
-- specifies which users you want to have access to transcoded files and
-- the type of access you want them to have. You can grant permissions to
-- a maximum of 30 users andor predefined Amazon S3 groups. *
-- Grantee Type : Specify the type of value that appears in the
-- Grantee object: * Canonical : The value in the
-- Grantee object is either the canonical user ID for an AWS
-- account or an origin access identity for an Amazon CloudFront
-- distribution. For more information about canonical user IDs, see
-- Access Control List (ACL) Overview in the Amazon Simple Storage
-- Service Developer Guide. For more information about using CloudFront
-- origin access identities to require that users use CloudFront URLs
-- instead of Amazon S3 URLs, see Using an Origin Access Identity to
-- Restrict Access to Your Amazon S3 Content. Important:/ A canonical
-- user ID is not the same as an AWS account number. * Email : The
-- value in the Grantee object is the registered email address
-- of an AWS account. * Group : The value in the Grantee
-- object is one of the following predefined Amazon S3 groups:
-- AllUsers , AuthenticatedUsers , or
-- LogDelivery . * Grantee : The AWS user or group that
-- you want to have access to transcoded files and playlists. To identify
-- the user or group, you can specify the canonical user ID for an AWS
-- account, an origin access identity for a CloudFront distribution, the
-- registered email address of an AWS account, or a predefined Amazon S3
-- group * Access : The permission that you want to give to the
-- AWS user that you specified in Grantee . Permissions are
-- granted on the files that Elastic Transcoder adds to the bucket,
-- including playlists and video files. Valid values include: *
-- READ : The grantee can read the objects and metadata for
-- objects that Elastic Transcoder adds to the Amazon S3 bucket. *
-- READ_ACP : The grantee can read the object ACL for objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- WRITE_ACP : The grantee can write the ACL for the objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- FULL_CONTROL : The grantee has READ ,
-- READ_ACP , and WRITE_ACP permissions for the objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- StorageClass : The Amazon S3 storage class, Standard
-- or ReducedRedundancy , that you want Elastic Transcoder to
-- assign to the video files and playlists that it stores in your Amazon
-- S3 bucket.
-- - upRole - The IAM Amazon Resource Name (ARN) for the role
-- that you want Elastic Transcoder to use to transcode jobs for this
-- pipeline.
-- - upName - The name of the pipeline. We recommend that the
-- name be unique within the AWS account, but uniqueness is not enforced.
-- Constraints: Maximum 40 characters
-- - upAWSKMSKeyARN - The AWS Key Management Service (AWS KMS)
-- key that you want to use with this pipeline. If you use either
-- S3 or S3-AWS-KMS as your Encryption:Mode ,
-- you don't need to provide a key with your job because a default key,
-- known as an AWS-KMS key, is created for you automatically. You need to
-- provide an AWS-KMS key only if you want to use a non-default AWS-KMS
-- key, or if you are using an Encryption:Mode of
-- AES-PKCS7 , AES-CTR , or AES-GCM .
-- - upNotifications - The topic ARN for the Amazon Simple
-- Notification Service (Amazon SNS) topic that you want to notify to
-- report job status. Important: To receive notifications, you
-- must also subscribe to the new topic in the Amazon SNS console. *
-- Progressing : The topic ARN for the Amazon Simple Notification
-- Service (Amazon SNS) topic that you want to notify when Elastic
-- Transcoder has started to process jobs that are added to this
-- pipeline. This is the ARN that Amazon SNS returned when you created
-- the topic. * Completed : The topic ARN for the Amazon SNS topic
-- that you want to notify when Elastic Transcoder has finished
-- processing a job. This is the ARN that Amazon SNS returned when you
-- created the topic. * Warning : The topic ARN for the Amazon SNS
-- topic that you want to notify when Elastic Transcoder encounters a
-- warning condition. This is the ARN that Amazon SNS returned when you
-- created the topic. * Error : The topic ARN for the Amazon SNS
-- topic that you want to notify when Elastic Transcoder encounters an
-- error condition. This is the ARN that Amazon SNS returned when you
-- created the topic.
-- - upThumbnailConfig - The ThumbnailConfig object
-- specifies several values, including the Amazon S3 bucket in which you
-- want Elastic Transcoder to save thumbnail files, which users you want
-- to have access to the files, the type of access you want users to
-- have, and the storage class that you want to assign to the files. If
-- you specify values for ContentConfig , you must also specify
-- values for ThumbnailConfig even if you don't want to create
-- thumbnails. If you specify values for ContentConfig and
-- ThumbnailConfig , omit the OutputBucket object. *
-- Bucket : The Amazon S3 bucket in which you want Elastic
-- Transcoder to save thumbnail files. * Permissions (Optional):
-- The Permissions object specifies which users andor
-- predefined Amazon S3 groups you want to have access to thumbnail
-- files, and the type of access you want them to have. You can grant
-- permissions to a maximum of 30 users andor predefined Amazon S3
-- groups. * GranteeType : Specify the type of value that appears
-- in the Grantee object: * Canonical : The value in the
-- Grantee object is either the canonical user ID for an AWS
-- account or an origin access identity for an Amazon CloudFront
-- distribution. Important: A canonical user ID is not the same as
-- an AWS account number. * Email : The value in the
-- Grantee object is the registered email address of an AWS
-- account. * Group : The value in the Grantee object is
-- one of the following predefined Amazon S3 groups: AllUsers ,
-- AuthenticatedUsers , or LogDelivery . *
-- Grantee : The AWS user or group that you want to have access to
-- thumbnail files. To identify the user or group, you can specify the
-- canonical user ID for an AWS account, an origin access identity for a
-- CloudFront distribution, the registered email address of an AWS
-- account, or a predefined Amazon S3 group. * Access : The
-- permission that you want to give to the AWS user that you specified in
-- Grantee . Permissions are granted on the thumbnail files that
-- Elastic Transcoder adds to the bucket. Valid values include: *
-- READ : The grantee can read the thumbnails and metadata for
-- objects that Elastic Transcoder adds to the Amazon S3 bucket. *
-- READ_ACP : The grantee can read the object ACL for thumbnails
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- WRITE_ACP : The grantee can write the ACL for the thumbnails
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- FULL_CONTROL : The grantee has READ ,
-- READ_ACP , and WRITE_ACP permissions for the
-- thumbnails that Elastic Transcoder adds to the Amazon S3 bucket. *
-- StorageClass : The Amazon S3 storage class, Standard
-- or ReducedRedundancy , that you want Elastic Transcoder to
-- assign to the thumbnails that it stores in your Amazon S3 bucket.
-- - upId - The ID of the pipeline that you want to update.
--
updatePipeline :: Text -> UpdatePipeline
-- | The UpdatePipelineRequest structure.
--
-- See: updatePipeline smart constructor.
data UpdatePipeline
-- | The Amazon S3 bucket in which you saved the media files that you want
-- to transcode and the graphics that you want to use as watermarks.
upInputBucket :: Lens' UpdatePipeline (Maybe Text)
-- | The optional ContentConfig object specifies information about
-- the Amazon S3 bucket in which you want Elastic Transcoder to save
-- transcoded files and playlists: which bucket to use, which users you
-- want to have access to the files, the type of access you want users to
-- have, and the storage class that you want to assign to the files. If
-- you specify values for ContentConfig , you must also specify
-- values for ThumbnailConfig . If you specify values for
-- ContentConfig and ThumbnailConfig , omit the
-- OutputBucket object. * Bucket : The Amazon S3 bucket
-- in which you want Elastic Transcoder to save transcoded files and
-- playlists. * Permissions (Optional): The Permissions object
-- specifies which users you want to have access to transcoded files and
-- the type of access you want them to have. You can grant permissions to
-- a maximum of 30 users andor predefined Amazon S3 groups. *
-- Grantee Type : Specify the type of value that appears in the
-- Grantee object: * Canonical : The value in the
-- Grantee object is either the canonical user ID for an AWS
-- account or an origin access identity for an Amazon CloudFront
-- distribution. For more information about canonical user IDs, see
-- Access Control List (ACL) Overview in the Amazon Simple Storage
-- Service Developer Guide. For more information about using CloudFront
-- origin access identities to require that users use CloudFront URLs
-- instead of Amazon S3 URLs, see Using an Origin Access Identity to
-- Restrict Access to Your Amazon S3 Content. Important:/ A canonical
-- user ID is not the same as an AWS account number. * Email : The
-- value in the Grantee object is the registered email address
-- of an AWS account. * Group : The value in the Grantee
-- object is one of the following predefined Amazon S3 groups:
-- AllUsers , AuthenticatedUsers , or
-- LogDelivery . * Grantee : The AWS user or group that
-- you want to have access to transcoded files and playlists. To identify
-- the user or group, you can specify the canonical user ID for an AWS
-- account, an origin access identity for a CloudFront distribution, the
-- registered email address of an AWS account, or a predefined Amazon S3
-- group * Access : The permission that you want to give to the
-- AWS user that you specified in Grantee . Permissions are
-- granted on the files that Elastic Transcoder adds to the bucket,
-- including playlists and video files. Valid values include: *
-- READ : The grantee can read the objects and metadata for
-- objects that Elastic Transcoder adds to the Amazon S3 bucket. *
-- READ_ACP : The grantee can read the object ACL for objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- WRITE_ACP : The grantee can write the ACL for the objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- FULL_CONTROL : The grantee has READ ,
-- READ_ACP , and WRITE_ACP permissions for the objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- StorageClass : The Amazon S3 storage class, Standard
-- or ReducedRedundancy , that you want Elastic Transcoder to
-- assign to the video files and playlists that it stores in your Amazon
-- S3 bucket.
upContentConfig :: Lens' UpdatePipeline (Maybe PipelineOutputConfig)
-- | The IAM Amazon Resource Name (ARN) for the role that you want Elastic
-- Transcoder to use to transcode jobs for this pipeline.
upRole :: Lens' UpdatePipeline (Maybe Text)
-- | The name of the pipeline. We recommend that the name be unique within
-- the AWS account, but uniqueness is not enforced. Constraints: Maximum
-- 40 characters
upName :: Lens' UpdatePipeline (Maybe Text)
-- | The AWS Key Management Service (AWS KMS) key that you want to use with
-- this pipeline. If you use either S3 or S3-AWS-KMS as
-- your Encryption:Mode , you don't need to provide a key with
-- your job because a default key, known as an AWS-KMS key, is created
-- for you automatically. You need to provide an AWS-KMS key only if you
-- want to use a non-default AWS-KMS key, or if you are using an
-- Encryption:Mode of AES-PKCS7 , AES-CTR , or
-- AES-GCM .
upAWSKMSKeyARN :: Lens' UpdatePipeline (Maybe Text)
-- | The topic ARN for the Amazon Simple Notification Service (Amazon SNS)
-- topic that you want to notify to report job status. Important:
-- To receive notifications, you must also subscribe to the new topic in
-- the Amazon SNS console. * Progressing : The topic ARN for the
-- Amazon Simple Notification Service (Amazon SNS) topic that you want to
-- notify when Elastic Transcoder has started to process jobs that are
-- added to this pipeline. This is the ARN that Amazon SNS returned when
-- you created the topic. * Completed : The topic ARN for the
-- Amazon SNS topic that you want to notify when Elastic Transcoder has
-- finished processing a job. This is the ARN that Amazon SNS returned
-- when you created the topic. * Warning : The topic ARN for the
-- Amazon SNS topic that you want to notify when Elastic Transcoder
-- encounters a warning condition. This is the ARN that Amazon SNS
-- returned when you created the topic. * Error : The topic ARN
-- for the Amazon SNS topic that you want to notify when Elastic
-- Transcoder encounters an error condition. This is the ARN that Amazon
-- SNS returned when you created the topic.
upNotifications :: Lens' UpdatePipeline (Maybe Notifications)
-- | The ThumbnailConfig object specifies several values,
-- including the Amazon S3 bucket in which you want Elastic Transcoder to
-- save thumbnail files, which users you want to have access to the
-- files, the type of access you want users to have, and the storage
-- class that you want to assign to the files. If you specify values for
-- ContentConfig , you must also specify values for
-- ThumbnailConfig even if you don't want to create thumbnails.
-- If you specify values for ContentConfig and
-- ThumbnailConfig , omit the OutputBucket object. *
-- Bucket : The Amazon S3 bucket in which you want Elastic
-- Transcoder to save thumbnail files. * Permissions (Optional):
-- The Permissions object specifies which users andor
-- predefined Amazon S3 groups you want to have access to thumbnail
-- files, and the type of access you want them to have. You can grant
-- permissions to a maximum of 30 users andor predefined Amazon S3
-- groups. * GranteeType : Specify the type of value that appears
-- in the Grantee object: * Canonical : The value in the
-- Grantee object is either the canonical user ID for an AWS
-- account or an origin access identity for an Amazon CloudFront
-- distribution. Important: A canonical user ID is not the same as
-- an AWS account number. * Email : The value in the
-- Grantee object is the registered email address of an AWS
-- account. * Group : The value in the Grantee object is
-- one of the following predefined Amazon S3 groups: AllUsers ,
-- AuthenticatedUsers , or LogDelivery . *
-- Grantee : The AWS user or group that you want to have access to
-- thumbnail files. To identify the user or group, you can specify the
-- canonical user ID for an AWS account, an origin access identity for a
-- CloudFront distribution, the registered email address of an AWS
-- account, or a predefined Amazon S3 group. * Access : The
-- permission that you want to give to the AWS user that you specified in
-- Grantee . Permissions are granted on the thumbnail files that
-- Elastic Transcoder adds to the bucket. Valid values include: *
-- READ : The grantee can read the thumbnails and metadata for
-- objects that Elastic Transcoder adds to the Amazon S3 bucket. *
-- READ_ACP : The grantee can read the object ACL for thumbnails
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- WRITE_ACP : The grantee can write the ACL for the thumbnails
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- FULL_CONTROL : The grantee has READ ,
-- READ_ACP , and WRITE_ACP permissions for the
-- thumbnails that Elastic Transcoder adds to the Amazon S3 bucket. *
-- StorageClass : The Amazon S3 storage class, Standard
-- or ReducedRedundancy , that you want Elastic Transcoder to
-- assign to the thumbnails that it stores in your Amazon S3 bucket.
upThumbnailConfig :: Lens' UpdatePipeline (Maybe PipelineOutputConfig)
-- | The ID of the pipeline that you want to update.
upId :: Lens' UpdatePipeline Text
-- | Creates a value of UpdatePipelineResponse with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - uprsWarnings - Elastic Transcoder returns a warning if the
-- resources used by your pipeline are not in the same region as the
-- pipeline. Using resources in the same region, such as your Amazon S3
-- buckets, Amazon SNS notification topics, and AWS KMS key, reduces
-- processing time and prevents cross-regional charges.
-- - uprsPipeline - The pipeline updated by this
-- UpdatePipelineResponse call.
-- - uprsResponseStatus - -- | The response status code.
--
updatePipelineResponse :: Int -> UpdatePipelineResponse
-- | When you update a pipeline, Elastic Transcoder returns the values that
-- you specified in the request.
--
-- See: updatePipelineResponse smart constructor.
data UpdatePipelineResponse
-- | Elastic Transcoder returns a warning if the resources used by your
-- pipeline are not in the same region as the pipeline. Using resources
-- in the same region, such as your Amazon S3 buckets, Amazon SNS
-- notification topics, and AWS KMS key, reduces processing time and
-- prevents cross-regional charges.
uprsWarnings :: Lens' UpdatePipelineResponse [Warning]
-- | The pipeline updated by this UpdatePipelineResponse call.
uprsPipeline :: Lens' UpdatePipelineResponse (Maybe Pipeline)
-- |
-- - - | The response status code.
--
uprsResponseStatus :: Lens' UpdatePipelineResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipelineResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipelineResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipelineResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipelineResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipelineResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipeline
instance Data.Data.Data Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipeline
instance GHC.Show.Show Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipeline
instance GHC.Read.Read Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipeline
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipeline
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipeline
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipelineResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipeline
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipeline
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipeline
instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipeline
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipeline
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.UpdatePipeline.UpdatePipeline
-- | With the UpdatePipelineNotifications operation, you can update Amazon
-- Simple Notification Service (Amazon SNS) notifications for a pipeline.
--
-- When you update notifications for a pipeline, Elastic Transcoder
-- returns the values that you specified in the request.
module Network.AWS.ElasticTranscoder.UpdatePipelineNotifications
-- | Creates a value of UpdatePipelineNotifications with the minimum
-- fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - upnId - The identifier of the pipeline for which you want
-- to change notification settings.
-- - upnNotifications - The topic ARN for the Amazon Simple
-- Notification Service (Amazon SNS) topic that you want to notify to
-- report job status. Important: To receive notifications, you
-- must also subscribe to the new topic in the Amazon SNS console. *
-- Progressing : The topic ARN for the Amazon Simple Notification
-- Service (Amazon SNS) topic that you want to notify when Elastic
-- Transcoder has started to process jobs that are added to this
-- pipeline. This is the ARN that Amazon SNS returned when you created
-- the topic. * Completed : The topic ARN for the Amazon SNS topic
-- that you want to notify when Elastic Transcoder has finished
-- processing a job. This is the ARN that Amazon SNS returned when you
-- created the topic. * Warning : The topic ARN for the Amazon SNS
-- topic that you want to notify when Elastic Transcoder encounters a
-- warning condition. This is the ARN that Amazon SNS returned when you
-- created the topic. * Error : The topic ARN for the Amazon SNS
-- topic that you want to notify when Elastic Transcoder encounters an
-- error condition. This is the ARN that Amazon SNS returned when you
-- created the topic.
--
updatePipelineNotifications :: Text -> Notifications -> UpdatePipelineNotifications
-- | The UpdatePipelineNotificationsRequest structure.
--
-- See: updatePipelineNotifications smart constructor.
data UpdatePipelineNotifications
-- | The identifier of the pipeline for which you want to change
-- notification settings.
upnId :: Lens' UpdatePipelineNotifications Text
-- | The topic ARN for the Amazon Simple Notification Service (Amazon SNS)
-- topic that you want to notify to report job status. Important:
-- To receive notifications, you must also subscribe to the new topic in
-- the Amazon SNS console. * Progressing : The topic ARN for the
-- Amazon Simple Notification Service (Amazon SNS) topic that you want to
-- notify when Elastic Transcoder has started to process jobs that are
-- added to this pipeline. This is the ARN that Amazon SNS returned when
-- you created the topic. * Completed : The topic ARN for the
-- Amazon SNS topic that you want to notify when Elastic Transcoder has
-- finished processing a job. This is the ARN that Amazon SNS returned
-- when you created the topic. * Warning : The topic ARN for the
-- Amazon SNS topic that you want to notify when Elastic Transcoder
-- encounters a warning condition. This is the ARN that Amazon SNS
-- returned when you created the topic. * Error : The topic ARN
-- for the Amazon SNS topic that you want to notify when Elastic
-- Transcoder encounters an error condition. This is the ARN that Amazon
-- SNS returned when you created the topic.
upnNotifications :: Lens' UpdatePipelineNotifications Notifications
-- | Creates a value of UpdatePipelineNotificationsResponse with the
-- minimum fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - upnrsPipeline - A section of the response body that
-- provides information about the pipeline associated with this
-- notification.
-- - upnrsResponseStatus - -- | The response status code.
--
updatePipelineNotificationsResponse :: Int -> UpdatePipelineNotificationsResponse
-- | The UpdatePipelineNotificationsResponse structure.
--
-- See: updatePipelineNotificationsResponse smart
-- constructor.
data UpdatePipelineNotificationsResponse
-- | A section of the response body that provides information about the
-- pipeline associated with this notification.
upnrsPipeline :: Lens' UpdatePipelineNotificationsResponse (Maybe Pipeline)
-- |
-- - - | The response status code.
--
upnrsResponseStatus :: Lens' UpdatePipelineNotificationsResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotificationsResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotificationsResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotificationsResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotificationsResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotificationsResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotifications
instance Data.Data.Data Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotifications
instance GHC.Show.Show Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotifications
instance GHC.Read.Read Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotifications
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotifications
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotifications
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotificationsResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotifications
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotifications
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotifications
instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotifications
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotifications
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.UpdatePipelineNotifications.UpdatePipelineNotifications
-- | The UpdatePipelineStatus operation pauses or reactivates a pipeline,
-- so that the pipeline stops or restarts the processing of jobs.
--
-- Changing the pipeline status is useful if you want to cancel one or
-- more jobs. You can't cancel jobs after Elastic Transcoder has started
-- processing them; if you pause the pipeline to which you submitted the
-- jobs, you have more time to get the job IDs for the jobs that you want
-- to cancel, and to send a CancelJob request.
module Network.AWS.ElasticTranscoder.UpdatePipelineStatus
-- | Creates a value of UpdatePipelineStatus with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - upsId - The identifier of the pipeline to update.
-- - upsStatus - The desired status of the pipeline: *
-- Active : The pipeline is processing jobs. * Paused :
-- The pipeline is not currently processing jobs.
--
updatePipelineStatus :: Text -> Text -> UpdatePipelineStatus
-- | The UpdatePipelineStatusRequest structure.
--
-- See: updatePipelineStatus smart constructor.
data UpdatePipelineStatus
-- | The identifier of the pipeline to update.
upsId :: Lens' UpdatePipelineStatus Text
-- | The desired status of the pipeline: * Active : The pipeline
-- is processing jobs. * Paused : The pipeline is not currently
-- processing jobs.
upsStatus :: Lens' UpdatePipelineStatus Text
-- | Creates a value of UpdatePipelineStatusResponse with the
-- minimum fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
updatePipelineStatusResponse :: Int -> UpdatePipelineStatusResponse
-- | When you update status for a pipeline, Elastic Transcoder returns the
-- values that you specified in the request.
--
-- See: updatePipelineStatusResponse smart constructor.
data UpdatePipelineStatusResponse
-- | A section of the response body that provides information about the
-- pipeline.
upsrsPipeline :: Lens' UpdatePipelineStatusResponse (Maybe Pipeline)
-- |
-- - - | The response status code.
--
upsrsResponseStatus :: Lens' UpdatePipelineStatusResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatusResponse
instance Data.Data.Data Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatusResponse
instance GHC.Show.Show Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatusResponse
instance GHC.Read.Read Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatusResponse
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatusResponse
instance GHC.Generics.Generic Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatus
instance Data.Data.Data Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatus
instance GHC.Show.Show Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatus
instance GHC.Read.Read Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatus
instance GHC.Classes.Eq Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatus
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatus
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatusResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatus
instance Control.DeepSeq.NFData Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatus
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatus
instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatus
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatus
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticTranscoder.UpdatePipelineStatus.UpdatePipelineStatus
module Network.AWS.ElasticTranscoder.Waiters
-- | Polls ReadJob every 30 seconds until a successful state is
-- reached. An error is returned after 120 failed checks.
jobComplete :: Wait ReadJob
-- | AWS Elastic Transcoder Service
--
-- The AWS Elastic Transcoder Service.
module Network.AWS.ElasticTranscoder
-- | API version 2012-09-25 of the Amazon Elastic Transcoder SDK
-- configuration.
elasticTranscoder :: Service
-- | Prism for IncompatibleVersionException' errors.
_IncompatibleVersionException :: AsError a => Getting (First ServiceError) a ServiceError
-- | One or more required parameter values were not provided in the
-- request.
_ValidationException :: AsError a => Getting (First ServiceError) a ServiceError
-- | General authentication failure. The request was not signed correctly.
_AccessDeniedException :: AsError a => Getting (First ServiceError) a ServiceError
-- | Elastic Transcoder encountered an unexpected exception while trying to
-- fulfill the request.
_InternalServiceException :: AsError a => Getting (First ServiceError) a ServiceError
-- | The requested resource does not exist or is not available. For
-- example, the pipeline to which you're trying to add a job doesn't
-- exist or is still being created.
_ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
-- | Too many operations for a given AWS account. For example, the number
-- of pipelines exceeds the maximum allowed.
_LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError
-- | The resource you are attempting to change is in use. For example, you
-- are attempting to delete a pipeline that is currently in use.
_ResourceInUseException :: AsError a => Getting (First ServiceError) a ServiceError
-- | Polls ReadJob every 30 seconds until a successful state is
-- reached. An error is returned after 120 failed checks.
jobComplete :: Wait ReadJob
-- | The file to be used as album art. There can be multiple artworks
-- associated with an audio file, to a maximum of 20.
--
-- To remove artwork or leave the artwork empty, you can either set
-- Artwork to null, or set the Merge Policy to
-- Replace and use an empty Artwork array.
--
-- To pass through existing artwork unchanged, set the Merge
-- Policy to Prepend, Append, or Fallback, and
-- use an empty Artwork array.
--
-- See: artwork smart constructor.
data Artwork
-- | Creates a value of Artwork with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - aSizingPolicy - Specify one of the following values to
-- control scaling of the output album art: * Fit: Elastic
-- Transcoder scales the output art so it matches the value that you
-- specified in either MaxWidth or MaxHeight without
-- exceeding the other value. * Fill: Elastic Transcoder scales
-- the output art so it matches the value that you specified in either
-- MaxWidth or MaxHeight and matches or exceeds the
-- other value. Elastic Transcoder centers the output art and then crops
-- it in the dimension (if any) that exceeds the maximum value. *
-- Stretch: Elastic Transcoder stretches the output art to match
-- the values that you specified for MaxWidth and
-- MaxHeight . If the relative proportions of the input art and
-- the output art are different, the output art will be distorted. *
-- Keep: Elastic Transcoder does not scale the output art. If
-- either dimension of the input art exceeds the values that you
-- specified for MaxWidth and MaxHeight , Elastic
-- Transcoder crops the output art. * ShrinkToFit: Elastic
-- Transcoder scales the output art down so that its dimensions match the
-- values that you specified for at least one of MaxWidth and
-- MaxHeight without exceeding either value. If you specify this
-- option, Elastic Transcoder does not scale the art up. *
-- ShrinkToFill Elastic Transcoder scales the output art down so
-- that its dimensions match the values that you specified for at least
-- one of MaxWidth and MaxHeight without dropping below
-- either value. If you specify this option, Elastic Transcoder does not
-- scale the art up.
-- - aAlbumArtFormat - The format of album art, if any. Valid
-- formats are .jpg and .png .
-- - aMaxHeight - The maximum height of the output album art in
-- pixels. If you specify auto , Elastic Transcoder uses 600 as
-- the default value. If you specify a numeric value, enter an even
-- integer between 32 and 3072, inclusive.
-- - aInputKey - The name of the file to be used as album art.
-- To determine which Amazon S3 bucket contains the specified file,
-- Elastic Transcoder checks the pipeline specified by
-- PipelineId ; the InputBucket object in that pipeline
-- identifies the bucket. If the file name includes a prefix, for
-- example, cooking/pie.jpg , include the prefix in the key. If
-- the file isn't in the specified bucket, Elastic Transcoder returns an
-- error.
-- - aPaddingPolicy - When you set PaddingPolicy to
-- Pad , Elastic Transcoder may add white bars to the top and
-- bottom and/or left and right sides of the output album art to make the
-- total size of the output art match the values that you specified for
-- MaxWidth and MaxHeight .
-- - aEncryption - The encryption settings, if any, that you
-- want Elastic Transcoder to apply to your artwork.
-- - aMaxWidth - The maximum width of the output album art in
-- pixels. If you specify auto , Elastic Transcoder uses 600 as
-- the default value. If you specify a numeric value, enter an even
-- integer between 32 and 4096, inclusive.
--
artwork :: Artwork
-- | Specify one of the following values to control scaling of the output
-- album art: * Fit: Elastic Transcoder scales the output art so
-- it matches the value that you specified in either MaxWidth or
-- MaxHeight without exceeding the other value. * Fill:
-- Elastic Transcoder scales the output art so it matches the value that
-- you specified in either MaxWidth or MaxHeight and
-- matches or exceeds the other value. Elastic Transcoder centers the
-- output art and then crops it in the dimension (if any) that exceeds
-- the maximum value. * Stretch: Elastic Transcoder stretches
-- the output art to match the values that you specified for
-- MaxWidth and MaxHeight . If the relative proportions
-- of the input art and the output art are different, the output art will
-- be distorted. * Keep: Elastic Transcoder does not scale the
-- output art. If either dimension of the input art exceeds the values
-- that you specified for MaxWidth and MaxHeight ,
-- Elastic Transcoder crops the output art. * ShrinkToFit:
-- Elastic Transcoder scales the output art down so that its dimensions
-- match the values that you specified for at least one of
-- MaxWidth and MaxHeight without exceeding either
-- value. If you specify this option, Elastic Transcoder does not scale
-- the art up. * ShrinkToFill Elastic Transcoder scales the
-- output art down so that its dimensions match the values that you
-- specified for at least one of MaxWidth and MaxHeight
-- without dropping below either value. If you specify this option,
-- Elastic Transcoder does not scale the art up.
aSizingPolicy :: Lens' Artwork (Maybe Text)
-- | The format of album art, if any. Valid formats are .jpg and
-- .png .
aAlbumArtFormat :: Lens' Artwork (Maybe Text)
-- | The maximum height of the output album art in pixels. If you specify
-- auto , Elastic Transcoder uses 600 as the default value. If
-- you specify a numeric value, enter an even integer between 32 and
-- 3072, inclusive.
aMaxHeight :: Lens' Artwork (Maybe Text)
-- | The name of the file to be used as album art. To determine which
-- Amazon S3 bucket contains the specified file, Elastic Transcoder
-- checks the pipeline specified by PipelineId ; the
-- InputBucket object in that pipeline identifies the bucket. If
-- the file name includes a prefix, for example, cooking/pie.jpg
-- , include the prefix in the key. If the file isn't in the specified
-- bucket, Elastic Transcoder returns an error.
aInputKey :: Lens' Artwork (Maybe Text)
-- | When you set PaddingPolicy to Pad , Elastic
-- Transcoder may add white bars to the top and bottom and/or left and
-- right sides of the output album art to make the total size of the
-- output art match the values that you specified for MaxWidth
-- and MaxHeight .
aPaddingPolicy :: Lens' Artwork (Maybe Text)
-- | The encryption settings, if any, that you want Elastic Transcoder to
-- apply to your artwork.
aEncryption :: Lens' Artwork (Maybe Encryption)
-- | The maximum width of the output album art in pixels. If you specify
-- auto , Elastic Transcoder uses 600 as the default value. If
-- you specify a numeric value, enter an even integer between 32 and
-- 4096, inclusive.
aMaxWidth :: Lens' Artwork (Maybe Text)
-- | Options associated with your audio codec.
--
-- See: audioCodecOptions smart constructor.
data AudioCodecOptions
-- | Creates a value of AudioCodecOptions with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - acoSigned - You can only choose whether an audio sample is
-- signed when you specify pcm for the value of Audio:Codec.
-- Whether audio samples are represented with negative and positive
-- numbers (signed) or only positive numbers (unsigned). The supported
-- value is Signed .
-- - acoBitDepth - You can only choose an audio bit depth when
-- you specify flac or pcm for the value of
-- Audio:Codec. The bit depth of a sample is how many bits of information
-- are included in the audio samples. The higher the bit depth, the
-- better the audio, but the larger the file. Valid values are
-- 16 and 24 . The most common bit depth is 24
-- .
-- - acoProfile - You can only choose an audio profile when you
-- specify AAC for the value of Audio:Codec. Specify the AAC profile for
-- the output file. Elastic Transcoder supports the following profiles: *
-- auto : If you specify auto , Elastic Transcoder
-- selects the profile based on the bit rate selected for the output
-- file. * AAC-LC : The most common AAC profile. Use for bit
-- rates larger than 64 kbps. * HE-AAC : Not supported on some
-- older players and devices. Use for bit rates between 40 and 80 kbps. *
-- HE-AACv2 : Not supported on some players and devices. Use for
-- bit rates less than 48 kbps. All outputs in a Smooth playlist
-- must have the same value for Profile .
-- - acoBitOrder - You can only choose an audio bit order when
-- you specify pcm for the value of Audio:Codec. The order the
-- bits of a PCM sample are stored in. The supported value is
-- LittleEndian .
--
audioCodecOptions :: AudioCodecOptions
-- | You can only choose whether an audio sample is signed when you specify
-- pcm for the value of Audio:Codec. Whether audio samples are
-- represented with negative and positive numbers (signed) or only
-- positive numbers (unsigned). The supported value is Signed .
acoSigned :: Lens' AudioCodecOptions (Maybe Text)
-- | You can only choose an audio bit depth when you specify flac
-- or pcm for the value of Audio:Codec. The bit depth of a
-- sample is how many bits of information are included in the audio
-- samples. The higher the bit depth, the better the audio, but the
-- larger the file. Valid values are 16 and 24 . The
-- most common bit depth is 24 .
acoBitDepth :: Lens' AudioCodecOptions (Maybe Text)
-- | You can only choose an audio profile when you specify AAC for the
-- value of Audio:Codec. Specify the AAC profile for the output file.
-- Elastic Transcoder supports the following profiles: * auto :
-- If you specify auto , Elastic Transcoder selects the profile
-- based on the bit rate selected for the output file. * AAC-LC
-- : The most common AAC profile. Use for bit rates larger than 64 kbps.
-- * HE-AAC : Not supported on some older players and devices.
-- Use for bit rates between 40 and 80 kbps. * HE-AACv2 : Not
-- supported on some players and devices. Use for bit rates less than 48
-- kbps. All outputs in a Smooth playlist must have the same
-- value for Profile .
acoProfile :: Lens' AudioCodecOptions (Maybe Text)
-- | You can only choose an audio bit order when you specify pcm
-- for the value of Audio:Codec. The order the bits of a PCM sample are
-- stored in. The supported value is LittleEndian .
acoBitOrder :: Lens' AudioCodecOptions (Maybe Text)
-- | Parameters required for transcoding audio.
--
-- See: audioParameters smart constructor.
data AudioParameters
-- | Creates a value of AudioParameters with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - apChannels - The number of audio channels in the output
-- file. The following values are valid: auto , 0 ,
-- 1 , 2 One channel carries the information played by
-- a single speaker. For example, a stereo track with two channels sends
-- one channel to the left speaker, and the other channel to the right
-- speaker. The output channels are organized into tracks. If you want
-- Elastic Transcoder to automatically detect the number of audio
-- channels in the input file and use that value for the output file,
-- select auto . The output of a specific channel value and
-- inputs are as follows: * auto channel specified, with any
-- input: Pass through up to eight input channels. * 0
-- channels specified, with any input: Audio omitted from the
-- output. * 1 channel specified, with at least one input
-- channel: Mono sound. * 2 channels specified, with any
-- input: Two identical mono channels or stereo. For more information
-- about tracks, see Audio:AudioPackingMode. For more
-- information about how Elastic Transcoder organizes channels and
-- tracks, see Audio:AudioPackingMode .
-- - apCodec - The audio codec for the output file. Valid values
-- include aac , flac , mp2 , mp3 ,
-- pcm , and vorbis .
-- - apAudioPackingMode - The method of organizing audio
-- channels and tracks. Use Audio:Channels to specify the number
-- of channels in your output, and Audio:AudioPackingMode to
-- specify the number of tracks and their relation to the channels. If
-- you do not specify an Audio:AudioPackingMode , Elastic
-- Transcoder uses SingleTrack . The following values are valid:
-- SingleTrack , OneChannelPerTrack , and
-- OneChannelPerTrackWithMosTo8Tracks When you specify
-- SingleTrack , Elastic Transcoder creates a single track for
-- your output. The track can have up to eight channels. Use
-- SingleTrack for all non-mxf containers. The outputs
-- of SingleTrack for a specific channel value and inputs are as
-- follows: * 0 channels with any input: Audio omitted
-- from the output * 1, 2, or auto channels with no audio
-- input: Audio omitted from the output * 1 channel with
-- any input with audio: One track with one channel, downmixed if
-- necessary * 2 channels with one track with one
-- channel: One track with two identical channels * 2 or auto
-- channels with two tracks with one channel each: One track
-- with two channels * 2 or auto channels with one track
-- with two channels: One track with two channels * 2
-- channels with one track with multiple channels: One track with
-- two channels * auto channels with one track with one
-- channel: One track with one channel * auto channels
-- with one track with multiple channels: One track with multiple
-- channels When you specify OneChannelPerTrack , Elastic
-- Transcoder creates a new track for every channel in your output. Your
-- output can have up to eight single-channel tracks. The outputs of
-- OneChannelPerTrack for a specific channel value and inputs
-- are as follows: * 0 channels with any input: Audio
-- omitted from the output * 1, 2, or auto channels with no
-- audio input: Audio omitted from the output * 1
-- channel with any input with audio: One track with one channel,
-- downmixed if necessary * 2 channels with one track with
-- one channel: Two tracks with one identical channel each * 2 or
-- auto channels with two tracks with one channel each: Two
-- tracks with one channel each * 2 or auto channels with
-- one track with two channels: Two tracks with one channel each *
-- 2 channels with one track with multiple channels: Two
-- tracks with one channel each * auto channels with one
-- track with one channel: One track with one channel * auto
-- channels with one track with multiple channels: Up to
-- eight tracks with one channel each When you specify
-- OneChannelPerTrackWithMosTo8Tracks , Elastic Transcoder
-- creates eight single-channel tracks for your output. All tracks that
-- do not contain audio data from an input channel are MOS, or Mit Out
-- Sound, tracks. The outputs of
-- OneChannelPerTrackWithMosTo8Tracks for a specific channel
-- value and inputs are as follows: * 0 channels with any
-- input: Audio omitted from the output * 1, 2, or auto
-- channels with no audio input: Audio omitted from the output *
-- 1 channel with any input with audio: One track with
-- one channel, downmixed if necessary, plus six MOS tracks * 2
-- channels with one track with one channel: Two tracks with one
-- identical channel each, plus six MOS tracks * 2 or auto
-- channels with two tracks with one channel each: Two tracks with
-- one channel each, plus six MOS tracks * 2 or auto
-- channels with one track with two channels: Two tracks with one
-- channel each, plus six MOS tracks * 2 channels with one
-- track with multiple channels: Two tracks with one channel each,
-- plus six MOS tracks * auto channels with one track with
-- one channel: One track with one channel, plus seven MOS tracks *
-- auto channels with one track with multiple channels:
-- Up to eight tracks with one channel each, plus MOS tracks until there
-- are eight tracks in all
-- - apSampleRate - The sample rate of the audio stream in the
-- output file, in Hertz. Valid values include: auto ,
-- 22050 , 32000 , 44100 , 48000 ,
-- 96000 If you specify auto , Elastic Transcoder
-- automatically detects the sample rate.
-- - apBitRate - The bit rate of the audio stream in the output
-- file, in kilobits/second. Enter an integer between 64 and 320,
-- inclusive.
-- - apCodecOptions - If you specified AAC for
-- Audio:Codec , this is the AAC compression profile to
-- use. Valid values include: auto , AAC-LC ,
-- HE-AAC , HE-AACv2 If you specify auto ,
-- Elastic Transcoder chooses a profile based on the bit rate of the
-- output file.
--
audioParameters :: AudioParameters
-- | The number of audio channels in the output file. The following values
-- are valid: auto , 0 , 1 , 2 One
-- channel carries the information played by a single speaker. For
-- example, a stereo track with two channels sends one channel to the
-- left speaker, and the other channel to the right speaker. The output
-- channels are organized into tracks. If you want Elastic Transcoder to
-- automatically detect the number of audio channels in the input file
-- and use that value for the output file, select auto . The
-- output of a specific channel value and inputs are as follows: *
-- auto channel specified, with any input: Pass through
-- up to eight input channels. * 0 channels specified, with
-- any input: Audio omitted from the output. * 1 channel
-- specified, with at least one input channel: Mono sound. *
-- 2 channels specified, with any input: Two identical
-- mono channels or stereo. For more information about tracks, see
-- Audio:AudioPackingMode. For more information about how
-- Elastic Transcoder organizes channels and tracks, see
-- Audio:AudioPackingMode .
apChannels :: Lens' AudioParameters (Maybe Text)
-- | The audio codec for the output file. Valid values include aac
-- , flac , mp2 , mp3 , pcm , and
-- vorbis .
apCodec :: Lens' AudioParameters (Maybe Text)
-- | The method of organizing audio channels and tracks. Use
-- Audio:Channels to specify the number of channels in your
-- output, and Audio:AudioPackingMode to specify the number of
-- tracks and their relation to the channels. If you do not specify an
-- Audio:AudioPackingMode , Elastic Transcoder uses
-- SingleTrack . The following values are valid:
-- SingleTrack , OneChannelPerTrack , and
-- OneChannelPerTrackWithMosTo8Tracks When you specify
-- SingleTrack , Elastic Transcoder creates a single track for
-- your output. The track can have up to eight channels. Use
-- SingleTrack for all non-mxf containers. The outputs
-- of SingleTrack for a specific channel value and inputs are as
-- follows: * 0 channels with any input: Audio omitted
-- from the output * 1, 2, or auto channels with no audio
-- input: Audio omitted from the output * 1 channel with
-- any input with audio: One track with one channel, downmixed if
-- necessary * 2 channels with one track with one
-- channel: One track with two identical channels * 2 or auto
-- channels with two tracks with one channel each: One track
-- with two channels * 2 or auto channels with one track
-- with two channels: One track with two channels * 2
-- channels with one track with multiple channels: One track with
-- two channels * auto channels with one track with one
-- channel: One track with one channel * auto channels
-- with one track with multiple channels: One track with multiple
-- channels When you specify OneChannelPerTrack , Elastic
-- Transcoder creates a new track for every channel in your output. Your
-- output can have up to eight single-channel tracks. The outputs of
-- OneChannelPerTrack for a specific channel value and inputs
-- are as follows: * 0 channels with any input: Audio
-- omitted from the output * 1, 2, or auto channels with no
-- audio input: Audio omitted from the output * 1
-- channel with any input with audio: One track with one channel,
-- downmixed if necessary * 2 channels with one track with
-- one channel: Two tracks with one identical channel each * 2 or
-- auto channels with two tracks with one channel each: Two
-- tracks with one channel each * 2 or auto channels with
-- one track with two channels: Two tracks with one channel each *
-- 2 channels with one track with multiple channels: Two
-- tracks with one channel each * auto channels with one
-- track with one channel: One track with one channel * auto
-- channels with one track with multiple channels: Up to
-- eight tracks with one channel each When you specify
-- OneChannelPerTrackWithMosTo8Tracks , Elastic Transcoder
-- creates eight single-channel tracks for your output. All tracks that
-- do not contain audio data from an input channel are MOS, or Mit Out
-- Sound, tracks. The outputs of
-- OneChannelPerTrackWithMosTo8Tracks for a specific channel
-- value and inputs are as follows: * 0 channels with any
-- input: Audio omitted from the output * 1, 2, or auto
-- channels with no audio input: Audio omitted from the output *
-- 1 channel with any input with audio: One track with
-- one channel, downmixed if necessary, plus six MOS tracks * 2
-- channels with one track with one channel: Two tracks with one
-- identical channel each, plus six MOS tracks * 2 or auto
-- channels with two tracks with one channel each: Two tracks with
-- one channel each, plus six MOS tracks * 2 or auto
-- channels with one track with two channels: Two tracks with one
-- channel each, plus six MOS tracks * 2 channels with one
-- track with multiple channels: Two tracks with one channel each,
-- plus six MOS tracks * auto channels with one track with
-- one channel: One track with one channel, plus seven MOS tracks *
-- auto channels with one track with multiple channels:
-- Up to eight tracks with one channel each, plus MOS tracks until there
-- are eight tracks in all
apAudioPackingMode :: Lens' AudioParameters (Maybe Text)
-- | The sample rate of the audio stream in the output file, in Hertz.
-- Valid values include: auto , 22050 , 32000
-- , 44100 , 48000 , 96000 If you specify
-- auto , Elastic Transcoder automatically detects the sample
-- rate.
apSampleRate :: Lens' AudioParameters (Maybe Text)
-- | The bit rate of the audio stream in the output file, in
-- kilobits/second. Enter an integer between 64 and 320, inclusive.
apBitRate :: Lens' AudioParameters (Maybe Text)
-- | If you specified AAC for Audio:Codec , this is the
-- AAC compression profile to use. Valid values include:
-- auto , AAC-LC , HE-AAC , HE-AACv2
-- If you specify auto , Elastic Transcoder chooses a profile
-- based on the bit rate of the output file.
apCodecOptions :: Lens' AudioParameters (Maybe AudioCodecOptions)
-- | The file format of the output captions. If you leave this value blank,
-- Elastic Transcoder returns an error.
--
-- See: captionFormat smart constructor.
data CaptionFormat
-- | Creates a value of CaptionFormat with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cfPattern - The prefix for caption filenames, in the form
-- description -{language} , where: * description
-- is a description of the video. * {language} is a literal
-- value that Elastic Transcoder replaces with the two- or three-letter
-- code for the language of the caption in the output file names. If you
-- don't include {language} in the file name pattern, Elastic
-- Transcoder automatically appends "{language} " to the value
-- that you specify for the description. In addition, Elastic Transcoder
-- automatically appends the count to the end of the segment files. For
-- example, suppose you're transcoding into srt format. When you enter
-- "Sydney-{language}-sunrise", and the language of the captions is
-- English (en), the name of the first caption file is be
-- Sydney-en-sunrise00000.srt.
-- - cfFormat - The format you specify determines whether
-- Elastic Transcoder generates an embedded or sidecar caption for this
-- output. * Valid Embedded Caption Formats: * for FLAC :
-- None * For MP3 : None * For MP4 : mov-text * For
-- MPEG-TS : None * For ogg : None * For webm : None *
-- Valid Sidecar Caption Formats: Elastic Transcoder supports dfxp
-- (first div element only), scc, srt, and webvtt. If you want ttml or
-- smpte-tt compatible captions, specify dfxp as your output format. *
-- For FMP4 : dfxp * Non-FMP4 outputs : All sidecar types
-- fmp4 captions have an extension of .ismt
-- - cfEncryption - The encryption settings, if any, that you
-- want Elastic Transcoder to apply to your caption formats.
--
captionFormat :: CaptionFormat
-- | The prefix for caption filenames, in the form description
-- -{language} , where: * description is a description of
-- the video. * {language} is a literal value that Elastic
-- Transcoder replaces with the two- or three-letter code for the
-- language of the caption in the output file names. If you don't include
-- {language} in the file name pattern, Elastic Transcoder
-- automatically appends "{language} " to the value that you
-- specify for the description. In addition, Elastic Transcoder
-- automatically appends the count to the end of the segment files. For
-- example, suppose you're transcoding into srt format. When you enter
-- "Sydney-{language}-sunrise", and the language of the captions is
-- English (en), the name of the first caption file is be
-- Sydney-en-sunrise00000.srt.
cfPattern :: Lens' CaptionFormat (Maybe Text)
-- | The format you specify determines whether Elastic Transcoder generates
-- an embedded or sidecar caption for this output. * Valid Embedded
-- Caption Formats: * for FLAC : None * For MP3 : None
-- * For MP4 : mov-text * For MPEG-TS : None * For
-- ogg : None * For webm : None * Valid Sidecar Caption
-- Formats: Elastic Transcoder supports dfxp (first div element
-- only), scc, srt, and webvtt. If you want ttml or smpte-tt compatible
-- captions, specify dfxp as your output format. * For FMP4 : dfxp
-- * Non-FMP4 outputs : All sidecar types fmp4 captions
-- have an extension of .ismt
cfFormat :: Lens' CaptionFormat (Maybe Text)
-- | The encryption settings, if any, that you want Elastic Transcoder to
-- apply to your caption formats.
cfEncryption :: Lens' CaptionFormat (Maybe Encryption)
-- | A source file for the input sidecar captions used during the
-- transcoding process.
--
-- See: captionSource smart constructor.
data CaptionSource
-- | Creates a value of CaptionSource with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - csTimeOffset - For clip generation or captions that do not
-- start at the same time as the associated video file, the
-- TimeOffset tells Elastic Transcoder how much of the video to
-- encode before including captions. Specify the TimeOffset in the form
-- [+-]SS.sss or [+-]HH:mm:SS.ss.
-- - csEncryption - The encryption settings, if any, that
-- Elastic Transcoder needs to decyrpt your caption sources, or that you
-- want Elastic Transcoder to apply to your caption sources.
-- - csKey - The name of the sidecar caption file that you want
-- Elastic Transcoder to include in the output file.
-- - csLanguage - A string that specifies the language of the
-- caption. If you specified multiple inputs with captions, the caption
-- language must match in order to be included in the output. Specify
-- this as one of: * 2-character ISO 639-1 code * 3-character ISO 639-2
-- code For more information on ISO language codes and language names,
-- see the List of ISO 639-1 codes.
-- - csLabel - The label of the caption shown in the player when
-- choosing a language. We recommend that you put the caption language
-- name here, in the language of the captions.
--
captionSource :: CaptionSource
-- | For clip generation or captions that do not start at the same time as
-- the associated video file, the TimeOffset tells Elastic
-- Transcoder how much of the video to encode before including captions.
-- Specify the TimeOffset in the form [+-]SS.sss or [+-]HH:mm:SS.ss.
csTimeOffset :: Lens' CaptionSource (Maybe Text)
-- | The encryption settings, if any, that Elastic Transcoder needs to
-- decyrpt your caption sources, or that you want Elastic Transcoder to
-- apply to your caption sources.
csEncryption :: Lens' CaptionSource (Maybe Encryption)
-- | The name of the sidecar caption file that you want Elastic Transcoder
-- to include in the output file.
csKey :: Lens' CaptionSource (Maybe Text)
-- | A string that specifies the language of the caption. If you specified
-- multiple inputs with captions, the caption language must match in
-- order to be included in the output. Specify this as one of: *
-- 2-character ISO 639-1 code * 3-character ISO 639-2 code For more
-- information on ISO language codes and language names, see the List of
-- ISO 639-1 codes.
csLanguage :: Lens' CaptionSource (Maybe Text)
-- | The label of the caption shown in the player when choosing a language.
-- We recommend that you put the caption language name here, in the
-- language of the captions.
csLabel :: Lens' CaptionSource (Maybe Text)
-- | The captions to be created, if any.
--
-- See: captions smart constructor.
data Captions
-- | Creates a value of Captions with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cMergePolicy - A policy that determines how Elastic
-- Transcoder handles the existence of multiple captions. *
-- MergeOverride: Elastic Transcoder transcodes both embedded and
-- sidecar captions into outputs. If captions for a language are embedded
-- in the input file and also appear in a sidecar file, Elastic
-- Transcoder uses the sidecar captions and ignores the embedded captions
-- for that language. * MergeRetain: Elastic Transcoder transcodes
-- both embedded and sidecar captions into outputs. If captions for a
-- language are embedded in the input file and also appear in a sidecar
-- file, Elastic Transcoder uses the embedded captions and ignores the
-- sidecar captions for that language. If CaptionSources is
-- empty, Elastic Transcoder omits all sidecar captions from the output
-- files. * Override: Elastic Transcoder transcodes only the
-- sidecar captions that you specify in CaptionSources .
-- MergePolicy cannot be null.
-- - cCaptionSources - Source files for the input sidecar
-- captions used during the transcoding process. To omit all sidecar
-- captions, leave CaptionSources blank.
-- - cCaptionFormats - The array of file formats for the output
-- captions. If you leave this value blank, Elastic Transcoder returns an
-- error.
--
captions :: Captions
-- | A policy that determines how Elastic Transcoder handles the existence
-- of multiple captions. * MergeOverride: Elastic Transcoder
-- transcodes both embedded and sidecar captions into outputs. If
-- captions for a language are embedded in the input file and also appear
-- in a sidecar file, Elastic Transcoder uses the sidecar captions and
-- ignores the embedded captions for that language. * MergeRetain:
-- Elastic Transcoder transcodes both embedded and sidecar captions into
-- outputs. If captions for a language are embedded in the input file and
-- also appear in a sidecar file, Elastic Transcoder uses the embedded
-- captions and ignores the sidecar captions for that language. If
-- CaptionSources is empty, Elastic Transcoder omits all sidecar
-- captions from the output files. * Override: Elastic Transcoder
-- transcodes only the sidecar captions that you specify in
-- CaptionSources . MergePolicy cannot be null.
cMergePolicy :: Lens' Captions (Maybe Text)
-- | Source files for the input sidecar captions used during the
-- transcoding process. To omit all sidecar captions, leave
-- CaptionSources blank.
cCaptionSources :: Lens' Captions [CaptionSource]
-- | The array of file formats for the output captions. If you leave this
-- value blank, Elastic Transcoder returns an error.
cCaptionFormats :: Lens' Captions [CaptionFormat]
-- | Settings for one clip in a composition. All jobs in a playlist must
-- have the same clip settings.
--
-- See: clip smart constructor.
data Clip
-- | Creates a value of Clip with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cTimeSpan - Settings that determine when a clip begins and
-- how long it lasts.
--
clip :: Clip
-- | Settings that determine when a clip begins and how long it lasts.
cTimeSpan :: Lens' Clip (Maybe TimeSpan)
-- | The CreateJobOutput structure.
--
-- See: createJobOutput smart constructor.
data CreateJobOutput
-- | Creates a value of CreateJobOutput with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cjoThumbnailPattern - Whether you want Elastic Transcoder
-- to create thumbnails for your videos and, if so, how you want Elastic
-- Transcoder to name the files. If you don't want Elastic Transcoder to
-- create thumbnails, specify "". If you do want Elastic Transcoder to
-- create thumbnails, specify the information that you want to include in
-- the file name for each thumbnail. You can specify the following values
-- in any sequence: * {count} (Required) : If you want to
-- create thumbnails, you must include {count} in the
-- ThumbnailPattern object. Wherever you specify
-- {count} , Elastic Transcoder adds a five-digit sequence
-- number (beginning with 00001 ) to thumbnail file names. The
-- number indicates where a given thumbnail appears in the sequence of
-- thumbnails for a transcoded file. Important: If you specify a
-- literal value and/or {resolution} but you omit
-- {count} , Elastic Transcoder returns a validation error and
-- does not create the job. * Literal values (Optional) : You can
-- specify literal values anywhere in the ThumbnailPattern
-- object. For example, you can include them as a file name prefix or as
-- a delimiter between {resolution} and {count} . *
-- {resolution} (Optional) : If you want Elastic
-- Transcoder to include the resolution in the file name, include
-- {resolution} in the ThumbnailPattern object. When
-- creating thumbnails, Elastic Transcoder automatically saves the files
-- in the format (.jpg or .png) that appears in the preset that you
-- specified in the PresetID value of CreateJobOutput .
-- Elastic Transcoder also appends the applicable file name
-- extension.
-- - cjoCaptions - You can configure Elastic Transcoder to
-- transcode captions, or subtitles, from one format to another. All
-- captions must be in UTF-8. Elastic Transcoder supports two types of
-- captions: * Embedded: Embedded captions are included in the
-- same file as the audio and video. Elastic Transcoder supports only one
-- embedded caption per language, to a maximum of 300 embedded captions
-- per file. Valid input values include: CEA-608 (EIA-608 ,
-- first non-empty channel only), CEA-708 (EIA-708 , first
-- non-empty channel only), and mov-text Valid outputs include:
-- mov-text Elastic Transcoder supports a maximum of one
-- embedded format per output. * Sidecar: Sidecar captions are
-- kept in a separate metadata file from the audio and video data.
-- Sidecar captions require a player that is capable of understanding the
-- relationship between the video file and the sidecar file. Elastic
-- Transcoder supports only one sidecar caption per language, to a
-- maximum of 20 sidecar captions per file. Valid input values include:
-- dfxp (first div element only), ebu-tt , scc
-- , smpt , srt , ttml (first div element
-- only), and webvtt Valid outputs include: dfxp (first
-- div element only), scc , srt , and webvtt .
-- If you want ttml or smpte-tt compatible captions, specify dfxp as your
-- output format. Elastic Transcoder does not support OCR (Optical
-- Character Recognition), does not accept pictures as a valid input for
-- captions, and is not available for audio-only transcoding. Elastic
-- Transcoder does not preserve text formatting (for example, italics)
-- during the transcoding process. To remove captions or leave the
-- captions empty, set Captions to null. To pass through
-- existing captions unchanged, set the MergePolicy to
-- MergeRetain , and pass in a null CaptionSources
-- array. For more information on embedded files, see the Subtitles
-- Wikipedia page. For more information on sidecar files, see the
-- Extensible Metadata Platform and Sidecar file Wikipedia pages.
-- - cjoPresetId - The Id of the preset to use for this
-- job. The preset determines the audio, video, and thumbnail settings
-- that Elastic Transcoder uses for transcoding.
-- - cjoComposition - You can create an output file that
-- contains an excerpt from the input file. This excerpt, called a clip,
-- can come from the beginning, middle, or end of the file. The
-- Composition object contains settings for the clips that make up an
-- output file. For the current release, you can only specify settings
-- for a single clip per output file. The Composition object cannot be
-- null.
-- - cjoAlbumArt - Information about the album art that you want
-- Elastic Transcoder to add to the file during transcoding. You can
-- specify up to twenty album artworks for each output. Settings for each
-- artwork must be defined in the job for the current output.
-- - cjoWatermarks - Information about the watermarks that you
-- want Elastic Transcoder to add to the video during transcoding. You
-- can specify up to four watermarks for each output. Settings for each
-- watermark must be defined in the preset for the current output.
-- - cjoEncryption - You can specify encryption settings for any
-- output files that you want to use for a transcoding job. This includes
-- the output file and any watermarks, thumbnails, album art, or captions
-- that you want to use. You must specify encryption settings for each
-- file individually.
-- - cjoKey - The name to assign to the transcoded file. Elastic
-- Transcoder saves the file in the Amazon S3 bucket specified by the
-- OutputBucket object in the pipeline that is specified by the
-- pipeline ID. If a file with the specified name already exists in the
-- output bucket, the job fails.
-- - cjoSegmentDuration - Important: (Outputs in
-- Fragmented MP4 or MPEG-TS format only. If you specify a preset in
-- PresetId for which the value of Container is
-- fmp4 (Fragmented MP4) or ts (MPEG-TS),
-- SegmentDuration is the target maximum duration of each
-- segment in seconds. For HLSv3 format playlists, each media
-- segment is stored in a separate .ts file. For HLSv4
-- and Smooth playlists, all media segments for an output are
-- stored in a single file. Each segment is approximately the length of
-- the SegmentDuration , though individual segments might be
-- shorter or longer. The range of valid values is 1 to 60 seconds. If
-- the duration of the video is not evenly divisible by
-- SegmentDuration , the duration of the last segment is the
-- remainder of total length/SegmentDuration. Elastic Transcoder creates
-- an output-specific playlist for each output HLS output that
-- you specify in OutputKeys. To add an output to the master playlist for
-- this job, include it in the OutputKeys of the associated
-- playlist.
-- - cjoThumbnailEncryption - The encryption settings, if any,
-- that you want Elastic Transcoder to apply to your thumbnail.
-- - cjoRotate - The number of degrees clockwise by which you
-- want Elastic Transcoder to rotate the output relative to the input.
-- Enter one of the following values: auto , 0 ,
-- 90 , 180 , 270 . The value auto
-- generally works only if the file that you're transcoding contains
-- rotation metadata.
--
createJobOutput :: CreateJobOutput
-- | Whether you want Elastic Transcoder to create thumbnails for your
-- videos and, if so, how you want Elastic Transcoder to name the files.
-- If you don't want Elastic Transcoder to create thumbnails, specify "".
-- If you do want Elastic Transcoder to create thumbnails, specify the
-- information that you want to include in the file name for each
-- thumbnail. You can specify the following values in any sequence: *
-- {count} (Required) : If you want to create thumbnails,
-- you must include {count} in the ThumbnailPattern
-- object. Wherever you specify {count} , Elastic Transcoder
-- adds a five-digit sequence number (beginning with 00001 ) to
-- thumbnail file names. The number indicates where a given thumbnail
-- appears in the sequence of thumbnails for a transcoded file.
-- Important: If you specify a literal value and/or
-- {resolution} but you omit {count} , Elastic
-- Transcoder returns a validation error and does not create the job. *
-- Literal values (Optional) : You can specify literal values
-- anywhere in the ThumbnailPattern object. For example, you can
-- include them as a file name prefix or as a delimiter between
-- {resolution} and {count} . *
-- {resolution} (Optional) : If you want Elastic
-- Transcoder to include the resolution in the file name, include
-- {resolution} in the ThumbnailPattern object. When
-- creating thumbnails, Elastic Transcoder automatically saves the files
-- in the format (.jpg or .png) that appears in the preset that you
-- specified in the PresetID value of CreateJobOutput .
-- Elastic Transcoder also appends the applicable file name extension.
cjoThumbnailPattern :: Lens' CreateJobOutput (Maybe Text)
-- | You can configure Elastic Transcoder to transcode captions, or
-- subtitles, from one format to another. All captions must be in UTF-8.
-- Elastic Transcoder supports two types of captions: * Embedded:
-- Embedded captions are included in the same file as the audio and
-- video. Elastic Transcoder supports only one embedded caption per
-- language, to a maximum of 300 embedded captions per file. Valid input
-- values include: CEA-608 (EIA-608 , first non-empty channel
-- only), CEA-708 (EIA-708 , first non-empty channel only), and
-- mov-text Valid outputs include: mov-text Elastic
-- Transcoder supports a maximum of one embedded format per output. *
-- Sidecar: Sidecar captions are kept in a separate metadata file
-- from the audio and video data. Sidecar captions require a player that
-- is capable of understanding the relationship between the video file
-- and the sidecar file. Elastic Transcoder supports only one sidecar
-- caption per language, to a maximum of 20 sidecar captions per file.
-- Valid input values include: dfxp (first div element only),
-- ebu-tt , scc , smpt , srt ,
-- ttml (first div element only), and webvtt Valid
-- outputs include: dfxp (first div element only), scc
-- , srt , and webvtt . If you want ttml or smpte-tt
-- compatible captions, specify dfxp as your output format. Elastic
-- Transcoder does not support OCR (Optical Character Recognition), does
-- not accept pictures as a valid input for captions, and is not
-- available for audio-only transcoding. Elastic Transcoder does not
-- preserve text formatting (for example, italics) during the transcoding
-- process. To remove captions or leave the captions empty, set
-- Captions to null. To pass through existing captions
-- unchanged, set the MergePolicy to MergeRetain , and
-- pass in a null CaptionSources array. For more information on
-- embedded files, see the Subtitles Wikipedia page. For more information
-- on sidecar files, see the Extensible Metadata Platform and Sidecar
-- file Wikipedia pages.
cjoCaptions :: Lens' CreateJobOutput (Maybe Captions)
-- | The Id of the preset to use for this job. The preset
-- determines the audio, video, and thumbnail settings that Elastic
-- Transcoder uses for transcoding.
cjoPresetId :: Lens' CreateJobOutput (Maybe Text)
-- | You can create an output file that contains an excerpt from the input
-- file. This excerpt, called a clip, can come from the beginning,
-- middle, or end of the file. The Composition object contains settings
-- for the clips that make up an output file. For the current release,
-- you can only specify settings for a single clip per output file. The
-- Composition object cannot be null.
cjoComposition :: Lens' CreateJobOutput [Clip]
-- | Information about the album art that you want Elastic Transcoder to
-- add to the file during transcoding. You can specify up to twenty album
-- artworks for each output. Settings for each artwork must be defined in
-- the job for the current output.
cjoAlbumArt :: Lens' CreateJobOutput (Maybe JobAlbumArt)
-- | Information about the watermarks that you want Elastic Transcoder to
-- add to the video during transcoding. You can specify up to four
-- watermarks for each output. Settings for each watermark must be
-- defined in the preset for the current output.
cjoWatermarks :: Lens' CreateJobOutput [JobWatermark]
-- | You can specify encryption settings for any output files that you want
-- to use for a transcoding job. This includes the output file and any
-- watermarks, thumbnails, album art, or captions that you want to use.
-- You must specify encryption settings for each file individually.
cjoEncryption :: Lens' CreateJobOutput (Maybe Encryption)
-- | The name to assign to the transcoded file. Elastic Transcoder saves
-- the file in the Amazon S3 bucket specified by the
-- OutputBucket object in the pipeline that is specified by the
-- pipeline ID. If a file with the specified name already exists in the
-- output bucket, the job fails.
cjoKey :: Lens' CreateJobOutput (Maybe Text)
-- | Important: (Outputs in Fragmented MP4 or MPEG-TS format only.
-- If you specify a preset in PresetId for which the value of
-- Container is fmp4 (Fragmented MP4) or ts
-- (MPEG-TS), SegmentDuration is the target maximum duration of
-- each segment in seconds. For HLSv3 format playlists, each
-- media segment is stored in a separate .ts file. For
-- HLSv4 and Smooth playlists, all media segments for
-- an output are stored in a single file. Each segment is approximately
-- the length of the SegmentDuration , though individual
-- segments might be shorter or longer. The range of valid values is 1 to
-- 60 seconds. If the duration of the video is not evenly divisible by
-- SegmentDuration , the duration of the last segment is the
-- remainder of total length/SegmentDuration. Elastic Transcoder creates
-- an output-specific playlist for each output HLS output that
-- you specify in OutputKeys. To add an output to the master playlist for
-- this job, include it in the OutputKeys of the associated
-- playlist.
cjoSegmentDuration :: Lens' CreateJobOutput (Maybe Text)
-- | The encryption settings, if any, that you want Elastic Transcoder to
-- apply to your thumbnail.
cjoThumbnailEncryption :: Lens' CreateJobOutput (Maybe Encryption)
-- | The number of degrees clockwise by which you want Elastic Transcoder
-- to rotate the output relative to the input. Enter one of the following
-- values: auto , 0 , 90 , 180 ,
-- 270 . The value auto generally works only if the
-- file that you're transcoding contains rotation metadata.
cjoRotate :: Lens' CreateJobOutput (Maybe Text)
-- | Information about the master playlist.
--
-- See: createJobPlaylist smart constructor.
data CreateJobPlaylist
-- | Creates a value of CreateJobPlaylist with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - cjpPlayReadyDrm - The DRM settings, if any, that you want
-- Elastic Transcoder to apply to the output files associated with this
-- playlist.
-- - cjpFormat - The format of the output playlist. Valid
-- formats include HLSv3 , HLSv4 , and Smooth
-- .
-- - cjpOutputKeys - For each output in this job that you want
-- to include in a master playlist, the value of the Outputs:Key
-- object. * If your output is not HLS or does not have a
-- segment duration set, the name of the output file is a concatenation
-- of OutputKeyPrefix and Outputs:Key :
-- OutputKeyPrefixOutputs:Key * If your output is HLSv3
-- and has a segment duration set, or is not included in a playlist,
-- Elastic Transcoder creates an output playlist file with a file
-- extension of .m3u8 , and a series of .ts files that
-- include a five-digit sequential counter beginning with 00000:
-- OutputKeyPrefixOutputs:Key .m3u8
-- OutputKeyPrefixOutputs:Key 00000.ts * If your output is
-- HLSv4 , has a segment duration set, and is included in an
-- HLSv4 playlist, Elastic Transcoder creates an output playlist
-- file with a file extension of _v4.m3u8 . If the output is
-- video, Elastic Transcoder also creates an output file with an
-- extension of _iframe.m3u8 :
-- OutputKeyPrefixOutputs:Key _v4.m3u8
-- OutputKeyPrefixOutputs:Key _iframe.m3u8
-- OutputKeyPrefixOutputs:Key .ts Elastic Transcoder
-- automatically appends the relevant file extension to the file name. If
-- you include a file extension in Output Key, the file name will have
-- two extensions. If you include more than one output in a playlist, any
-- segment duration settings, clip settings, or caption settings must be
-- the same for all outputs in the playlist. For Smooth
-- playlists, the Audio:Profile , Video:Profile , and
-- Video:FrameRate to Video:KeyframesMaxDist ratio must
-- be the same for all outputs.
-- - cjpName - The name that you want Elastic Transcoder to
-- assign to the master playlist, for example, nyc-vacation.m3u8. If the
-- name includes a / character, the section of the name before
-- the last / must be identical for all Name objects.
-- If you create more than one master playlist, the values of all
-- Name objects must be unique.
-- - cjpHlsContentProtection - The HLS content protection
-- settings, if any, that you want Elastic Transcoder to apply to the
-- output files associated with this playlist.
--
createJobPlaylist :: CreateJobPlaylist
-- | The DRM settings, if any, that you want Elastic Transcoder to apply to
-- the output files associated with this playlist.
cjpPlayReadyDrm :: Lens' CreateJobPlaylist (Maybe PlayReadyDrm)
-- | The format of the output playlist. Valid formats include
-- HLSv3 , HLSv4 , and Smooth .
cjpFormat :: Lens' CreateJobPlaylist (Maybe Text)
-- | For each output in this job that you want to include in a master
-- playlist, the value of the Outputs:Key object. * If your
-- output is not HLS or does not have a segment duration set,
-- the name of the output file is a concatenation of
-- OutputKeyPrefix and Outputs:Key :
-- OutputKeyPrefixOutputs:Key * If your output is HLSv3
-- and has a segment duration set, or is not included in a playlist,
-- Elastic Transcoder creates an output playlist file with a file
-- extension of .m3u8 , and a series of .ts files that
-- include a five-digit sequential counter beginning with 00000:
-- OutputKeyPrefixOutputs:Key .m3u8
-- OutputKeyPrefixOutputs:Key 00000.ts * If your output is
-- HLSv4 , has a segment duration set, and is included in an
-- HLSv4 playlist, Elastic Transcoder creates an output playlist
-- file with a file extension of _v4.m3u8 . If the output is
-- video, Elastic Transcoder also creates an output file with an
-- extension of _iframe.m3u8 :
-- OutputKeyPrefixOutputs:Key _v4.m3u8
-- OutputKeyPrefixOutputs:Key _iframe.m3u8
-- OutputKeyPrefixOutputs:Key .ts Elastic Transcoder
-- automatically appends the relevant file extension to the file name. If
-- you include a file extension in Output Key, the file name will have
-- two extensions. If you include more than one output in a playlist, any
-- segment duration settings, clip settings, or caption settings must be
-- the same for all outputs in the playlist. For Smooth
-- playlists, the Audio:Profile , Video:Profile , and
-- Video:FrameRate to Video:KeyframesMaxDist ratio must
-- be the same for all outputs.
cjpOutputKeys :: Lens' CreateJobPlaylist [Text]
-- | The name that you want Elastic Transcoder to assign to the master
-- playlist, for example, nyc-vacation.m3u8. If the name includes a
-- / character, the section of the name before the last
-- / must be identical for all Name objects. If you
-- create more than one master playlist, the values of all Name
-- objects must be unique.
cjpName :: Lens' CreateJobPlaylist (Maybe Text)
-- | The HLS content protection settings, if any, that you want Elastic
-- Transcoder to apply to the output files associated with this playlist.
cjpHlsContentProtection :: Lens' CreateJobPlaylist (Maybe HlsContentProtection)
-- | The detected properties of the input file. Elastic Transcoder
-- identifies these values from the input file.
--
-- See: detectedProperties smart constructor.
data DetectedProperties
-- | Creates a value of DetectedProperties with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - dpHeight - The detected height of the input file, in
-- pixels.
-- - dpFrameRate - The detected frame rate of the input file, in
-- frames per second.
-- - dpFileSize - The detected file size of the input file, in
-- bytes.
-- - dpWidth - The detected width of the input file, in
-- pixels.
-- - dpDurationMillis - The detected duration of the input file,
-- in milliseconds.
--
detectedProperties :: DetectedProperties
-- | The detected height of the input file, in pixels.
dpHeight :: Lens' DetectedProperties (Maybe Int)
-- | The detected frame rate of the input file, in frames per second.
dpFrameRate :: Lens' DetectedProperties (Maybe Text)
-- | The detected file size of the input file, in bytes.
dpFileSize :: Lens' DetectedProperties (Maybe Integer)
-- | The detected width of the input file, in pixels.
dpWidth :: Lens' DetectedProperties (Maybe Int)
-- | The detected duration of the input file, in milliseconds.
dpDurationMillis :: Lens' DetectedProperties (Maybe Integer)
-- | The encryption settings, if any, that are used for decrypting your
-- input files or encrypting your output files. If your input file is
-- encrypted, you must specify the mode that Elastic Transcoder uses to
-- decrypt your file, otherwise you must specify the mode you want
-- Elastic Transcoder to use to encrypt your output files.
--
-- See: encryption smart constructor.
data Encryption
-- | Creates a value of Encryption with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - eMode - The specific server-side encryption mode that you
-- want Elastic Transcoder to use when decrypting your input files or
-- encrypting your output files. Elastic Transcoder supports the
-- following options: * S3: Amazon S3 creates and manages the keys
-- used for encrypting your files. * S3-AWS-KMS: Amazon S3 calls
-- the Amazon Key Management Service, which creates and manages the keys
-- that are used for encrypting your files. If you specify
-- S3-AWS-KMS and you don't want to use the default key, you
-- must add the AWS-KMS key that you want to use to your pipeline. *
-- AES-CBC-PKCS7: A padded cipher-block mode of operation
-- originally used for HLS files. * AES-CTR: AES Counter Mode. *
-- AES-GCM: AES Galois Counter Mode, a mode of operation that is
-- an authenticated encryption format, meaning that a file, key, or
-- initialization vector that has been tampered with fails the decryption
-- process. For all three AES options, you must provide the following
-- settings, which must be base64-encoded: * Key * Key MD5
-- * Initialization Vector Important: For the AES modes,
-- your private encryption keys and your unencrypted data are never
-- stored by AWS; therefore, it is important that you safely manage your
-- encryption keys. If you lose them, you won't be able to unencrypt your
-- data.
-- - eKeyMD5 - The MD5 digest of the key that you used to
-- encrypt your input file, or that you want Elastic Transcoder to use to
-- encrypt your output file. Elastic Transcoder uses the key digest as a
-- checksum to make sure your key was not corrupted in transit. The key
-- MD5 must be base64-encoded, and it must be exactly 16 bytes long
-- before being base64-encoded.
-- - eKey - The data encryption key that you want Elastic
-- Transcoder to use to encrypt your output file, or that was used to
-- encrypt your input file. The key must be base64-encoded and it must be
-- one of the following bit lengths before being base64-encoded:
-- 128 , 192 , or 256 . The key must also be
-- encrypted by using the Amazon Key Management Service.
-- - eInitializationVector - The series of random bits created
-- by a random bit generator, unique for every encryption operation, that
-- you used to encrypt your input files or that you want Elastic
-- Transcoder to use to encrypt your output files. The initialization
-- vector must be base64-encoded, and it must be exactly 16 bytes long
-- before being base64-encoded.
--
encryption :: Encryption
-- | The specific server-side encryption mode that you want Elastic
-- Transcoder to use when decrypting your input files or encrypting your
-- output files. Elastic Transcoder supports the following options: *
-- S3: Amazon S3 creates and manages the keys used for encrypting
-- your files. * S3-AWS-KMS: Amazon S3 calls the Amazon Key
-- Management Service, which creates and manages the keys that are used
-- for encrypting your files. If you specify S3-AWS-KMS and you
-- don't want to use the default key, you must add the AWS-KMS key that
-- you want to use to your pipeline. * AES-CBC-PKCS7: A padded
-- cipher-block mode of operation originally used for HLS files. *
-- AES-CTR: AES Counter Mode. * AES-GCM: AES Galois Counter
-- Mode, a mode of operation that is an authenticated encryption format,
-- meaning that a file, key, or initialization vector that has been
-- tampered with fails the decryption process. For all three AES options,
-- you must provide the following settings, which must be base64-encoded:
-- * Key * Key MD5 * Initialization Vector
-- Important: For the AES modes, your private encryption keys and
-- your unencrypted data are never stored by AWS; therefore, it is
-- important that you safely manage your encryption keys. If you lose
-- them, you won't be able to unencrypt your data.
eMode :: Lens' Encryption (Maybe Text)
-- | The MD5 digest of the key that you used to encrypt your input file, or
-- that you want Elastic Transcoder to use to encrypt your output file.
-- Elastic Transcoder uses the key digest as a checksum to make sure your
-- key was not corrupted in transit. The key MD5 must be base64-encoded,
-- and it must be exactly 16 bytes long before being base64-encoded.
eKeyMD5 :: Lens' Encryption (Maybe Text)
-- | The data encryption key that you want Elastic Transcoder to use to
-- encrypt your output file, or that was used to encrypt your input file.
-- The key must be base64-encoded and it must be one of the following bit
-- lengths before being base64-encoded: 128 , 192 , or
-- 256 . The key must also be encrypted by using the Amazon Key
-- Management Service.
eKey :: Lens' Encryption (Maybe Text)
-- | The series of random bits created by a random bit generator, unique
-- for every encryption operation, that you used to encrypt your input
-- files or that you want Elastic Transcoder to use to encrypt your
-- output files. The initialization vector must be base64-encoded, and it
-- must be exactly 16 bytes long before being base64-encoded.
eInitializationVector :: Lens' Encryption (Maybe Text)
-- | The HLS content protection settings, if any, that you want Elastic
-- Transcoder to apply to your output files.
--
-- See: hlsContentProtection smart constructor.
data HlsContentProtection
-- | Creates a value of HlsContentProtection with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - hcpKeyMD5 - If Elastic Transcoder is generating your key
-- for you, you must leave this field blank. The MD5 digest of the key
-- that you want Elastic Transcoder to use to encrypt your output file,
-- and that you want Elastic Transcoder to use as a checksum to make sure
-- your key was not corrupted in transit. The key MD5 must be
-- base64-encoded, and it must be exactly 16 bytes before being base64-
-- encoded.
-- - hcpKeyStoragePolicy - Specify whether you want Elastic
-- Transcoder to write your HLS license key to an Amazon S3 bucket. If
-- you choose WithVariantPlaylists ,
-- LicenseAcquisitionUrl must be left blank and Elastic
-- Transcoder writes your data key into the same bucket as the associated
-- playlist.
-- - hcpKey - If you want Elastic Transcoder to generate a key
-- for you, leave this field blank. If you choose to supply your own key,
-- you must encrypt the key by using AWS KMS. The key must be
-- base64-encoded, and it must be one of the following bit lengths before
-- being base64-encoded: 128 , 192 , or 256
-- .
-- - hcpMethod - The content protection method for your output.
-- The only valid value is: aes-128 . This value is written into
-- the method attribute of the EXT-X-KEY metadata tag in the
-- output playlist.
-- - hcpInitializationVector - If Elastic Transcoder is
-- generating your key for you, you must leave this field blank. The
-- series of random bits created by a random bit generator, unique for
-- every encryption operation, that you want Elastic Transcoder to use to
-- encrypt your output files. The initialization vector must be
-- base64-encoded, and it must be exactly 16 bytes before being
-- base64-encoded.
-- - hcpLicenseAcquisitionURL - The location of the license key
-- required to decrypt your HLS playlist. The URL must be an absolute
-- path, and is referenced in the URI attribute of the EXT-X-KEY metadata
-- tag in the playlist file.
--
hlsContentProtection :: HlsContentProtection
-- | If Elastic Transcoder is generating your key for you, you must leave
-- this field blank. The MD5 digest of the key that you want Elastic
-- Transcoder to use to encrypt your output file, and that you want
-- Elastic Transcoder to use as a checksum to make sure your key was not
-- corrupted in transit. The key MD5 must be base64-encoded, and it must
-- be exactly 16 bytes before being base64- encoded.
hcpKeyMD5 :: Lens' HlsContentProtection (Maybe Text)
-- | Specify whether you want Elastic Transcoder to write your HLS license
-- key to an Amazon S3 bucket. If you choose
-- WithVariantPlaylists , LicenseAcquisitionUrl must be
-- left blank and Elastic Transcoder writes your data key into the same
-- bucket as the associated playlist.
hcpKeyStoragePolicy :: Lens' HlsContentProtection (Maybe Text)
-- | If you want Elastic Transcoder to generate a key for you, leave this
-- field blank. If you choose to supply your own key, you must encrypt
-- the key by using AWS KMS. The key must be base64-encoded, and it must
-- be one of the following bit lengths before being base64-encoded:
-- 128 , 192 , or 256 .
hcpKey :: Lens' HlsContentProtection (Maybe Text)
-- | The content protection method for your output. The only valid value
-- is: aes-128 . This value is written into the method attribute
-- of the EXT-X-KEY metadata tag in the output playlist.
hcpMethod :: Lens' HlsContentProtection (Maybe Text)
-- | If Elastic Transcoder is generating your key for you, you must leave
-- this field blank. The series of random bits created by a random bit
-- generator, unique for every encryption operation, that you want
-- Elastic Transcoder to use to encrypt your output files. The
-- initialization vector must be base64-encoded, and it must be exactly
-- 16 bytes before being base64-encoded.
hcpInitializationVector :: Lens' HlsContentProtection (Maybe Text)
-- | The location of the license key required to decrypt your HLS playlist.
-- The URL must be an absolute path, and is referenced in the URI
-- attribute of the EXT-X-KEY metadata tag in the playlist file.
hcpLicenseAcquisitionURL :: Lens' HlsContentProtection (Maybe Text)
-- | The captions to be created, if any.
--
-- See: inputCaptions smart constructor.
data InputCaptions
-- | Creates a value of InputCaptions with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - icMergePolicy - A policy that determines how Elastic
-- Transcoder handles the existence of multiple captions. *
-- MergeOverride: Elastic Transcoder transcodes both embedded and
-- sidecar captions into outputs. If captions for a language are embedded
-- in the input file and also appear in a sidecar file, Elastic
-- Transcoder uses the sidecar captions and ignores the embedded captions
-- for that language. * MergeRetain: Elastic Transcoder transcodes
-- both embedded and sidecar captions into outputs. If captions for a
-- language are embedded in the input file and also appear in a sidecar
-- file, Elastic Transcoder uses the embedded captions and ignores the
-- sidecar captions for that language. If CaptionSources is
-- empty, Elastic Transcoder omits all sidecar captions from the output
-- files. * Override: Elastic Transcoder transcodes only the
-- sidecar captions that you specify in CaptionSources .
-- MergePolicy cannot be null.
-- - icCaptionSources - Source files for the input sidecar
-- captions used during the transcoding process. To omit all sidecar
-- captions, leave CaptionSources blank.
--
inputCaptions :: InputCaptions
-- | A policy that determines how Elastic Transcoder handles the existence
-- of multiple captions. * MergeOverride: Elastic Transcoder
-- transcodes both embedded and sidecar captions into outputs. If
-- captions for a language are embedded in the input file and also appear
-- in a sidecar file, Elastic Transcoder uses the sidecar captions and
-- ignores the embedded captions for that language. * MergeRetain:
-- Elastic Transcoder transcodes both embedded and sidecar captions into
-- outputs. If captions for a language are embedded in the input file and
-- also appear in a sidecar file, Elastic Transcoder uses the embedded
-- captions and ignores the sidecar captions for that language. If
-- CaptionSources is empty, Elastic Transcoder omits all sidecar
-- captions from the output files. * Override: Elastic Transcoder
-- transcodes only the sidecar captions that you specify in
-- CaptionSources . MergePolicy cannot be null.
icMergePolicy :: Lens' InputCaptions (Maybe Text)
-- | Source files for the input sidecar captions used during the
-- transcoding process. To omit all sidecar captions, leave
-- CaptionSources blank.
icCaptionSources :: Lens' InputCaptions [CaptionSource]
-- | A section of the response body that provides information about the job
-- that is created.
--
-- See: job' smart constructor.
data Job'
-- | Creates a value of Job' with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - jStatus - The status of the job: Submitted ,
-- Progressing , Complete , Canceled , or
-- Error .
-- - jPipelineId - The Id of the pipeline that you want
-- Elastic Transcoder to use for transcoding. The pipeline determines
-- several settings, including the Amazon S3 bucket from which Elastic
-- Transcoder gets the files to transcode and the bucket into which
-- Elastic Transcoder puts the transcoded files.
-- - jARN - The Amazon Resource Name (ARN) for the job.
-- - jInputs - Information about the files that you're
-- transcoding. If you specified multiple files for this job, Elastic
-- Transcoder stitches the files together to make one output.
-- - jInput - A section of the request or response body that
-- provides information about the file that is being transcoded.
-- - jUserMetadata - User-defined metadata that you want to
-- associate with an Elastic Transcoder job. You specify metadata in
-- key/value pairs, and you can add up to 10 key/value
-- pairs per job. Elastic Transcoder does not guarantee that
-- key/value pairs are returned in the same order in which you
-- specify them. Metadata keys and values must use
-- characters from the following list: * 0-9 * A-Z and
-- a-z * Space * The following symbols:
-- _.:/=+-%@
-- - jOutputs - Information about the output files. We recommend
-- that you use the Outputs syntax for all jobs, even when you
-- want Elastic Transcoder to transcode a file into only one format. Do
-- not use both the Outputs and Output syntaxes in the
-- same request. You can create a maximum of 30 outputs per job. If you
-- specify more than one output for a job, Elastic Transcoder creates the
-- files for each output in the order in which you specify them in the
-- job.
-- - jOutput - If you specified one output for a job,
-- information about that output. If you specified multiple outputs for a
-- job, the Output object lists information about the first output. This
-- duplicates the information that is listed for the first output in the
-- Outputs object. Important: Outputs recommended instead. A
-- section of the request or response body that provides information
-- about the transcoded (target) file.
-- - jId - The identifier that Elastic Transcoder assigned to
-- the job. You use this value to get settings for the job or to delete
-- the job.
-- - jPlaylists - Important: Outputs in Fragmented MP4 or
-- MPEG-TS format only. If you specify a preset in PresetId for
-- which the value of Container is fmp4 (Fragmented MP4) or ts
-- (MPEG-TS), Playlists contains information about the master
-- playlists that you want Elastic Transcoder to create. The maximum
-- number of master playlists in a job is 30.
-- - jOutputKeyPrefix - The value, if any, that you want Elastic
-- Transcoder to prepend to the names of all files that this job creates,
-- including output files, thumbnails, and playlists. We recommend that
-- you add a / or some other delimiter to the end of the
-- OutputKeyPrefix .
-- - jTiming - Details about the timing of a job.
--
job' :: Job'
-- | The status of the job: Submitted , Progressing ,
-- Complete , Canceled , or Error .
jStatus :: Lens' Job' (Maybe Text)
-- | The Id of the pipeline that you want Elastic Transcoder to
-- use for transcoding. The pipeline determines several settings,
-- including the Amazon S3 bucket from which Elastic Transcoder gets the
-- files to transcode and the bucket into which Elastic Transcoder puts
-- the transcoded files.
jPipelineId :: Lens' Job' (Maybe Text)
-- | The Amazon Resource Name (ARN) for the job.
jARN :: Lens' Job' (Maybe Text)
-- | Information about the files that you're transcoding. If you specified
-- multiple files for this job, Elastic Transcoder stitches the files
-- together to make one output.
jInputs :: Lens' Job' [JobInput]
-- | A section of the request or response body that provides information
-- about the file that is being transcoded.
jInput :: Lens' Job' (Maybe JobInput)
-- | User-defined metadata that you want to associate with an Elastic
-- Transcoder job. You specify metadata in key/value pairs, and
-- you can add up to 10 key/value pairs per job. Elastic
-- Transcoder does not guarantee that key/value pairs are
-- returned in the same order in which you specify them. Metadata
-- keys and values must use characters from the
-- following list: * 0-9 * A-Z and a-z *
-- Space * The following symbols: _.:/=+-%@
jUserMetadata :: Lens' Job' (HashMap Text Text)
-- | Information about the output files. We recommend that you use the
-- Outputs syntax for all jobs, even when you want Elastic
-- Transcoder to transcode a file into only one format. Do not use both
-- the Outputs and Output syntaxes in the same request.
-- You can create a maximum of 30 outputs per job. If you specify more
-- than one output for a job, Elastic Transcoder creates the files for
-- each output in the order in which you specify them in the job.
jOutputs :: Lens' Job' [JobOutput]
-- | If you specified one output for a job, information about that output.
-- If you specified multiple outputs for a job, the Output object lists
-- information about the first output. This duplicates the information
-- that is listed for the first output in the Outputs object.
-- Important: Outputs recommended instead. A section of the
-- request or response body that provides information about the
-- transcoded (target) file.
jOutput :: Lens' Job' (Maybe JobOutput)
-- | The identifier that Elastic Transcoder assigned to the job. You use
-- this value to get settings for the job or to delete the job.
jId :: Lens' Job' (Maybe Text)
-- | Important: Outputs in Fragmented MP4 or MPEG-TS format only. If
-- you specify a preset in PresetId for which the value of
-- Container is fmp4 (Fragmented MP4) or ts (MPEG-TS),
-- Playlists contains information about the master playlists
-- that you want Elastic Transcoder to create. The maximum number of
-- master playlists in a job is 30.
jPlaylists :: Lens' Job' [Playlist]
-- | The value, if any, that you want Elastic Transcoder to prepend to the
-- names of all files that this job creates, including output files,
-- thumbnails, and playlists. We recommend that you add a / or some other
-- delimiter to the end of the OutputKeyPrefix .
jOutputKeyPrefix :: Lens' Job' (Maybe Text)
-- | Details about the timing of a job.
jTiming :: Lens' Job' (Maybe Timing)
-- | The .jpg or .png file associated with an audio file.
--
-- See: jobAlbumArt smart constructor.
data JobAlbumArt
-- | Creates a value of JobAlbumArt with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - jaaMergePolicy - A policy that determines how Elastic
-- Transcoder handles the existence of multiple album artwork files. *
-- Replace: The specified album art replaces any existing album
-- art. * Prepend: The specified album art is placed in front of
-- any existing album art. * Append: The specified album art is
-- placed after any existing album art. * Fallback: If the
-- original input file contains artwork, Elastic Transcoder uses that
-- artwork for the output. If the original input does not contain
-- artwork, Elastic Transcoder uses the specified album art file.
-- - jaaArtwork - The file to be used as album art. There can be
-- multiple artworks associated with an audio file, to a maximum of 20.
-- Valid formats are .jpg and .png
--
jobAlbumArt :: JobAlbumArt
-- | A policy that determines how Elastic Transcoder handles the existence
-- of multiple album artwork files. * Replace: The specified
-- album art replaces any existing album art. * Prepend: The
-- specified album art is placed in front of any existing album art. *
-- Append: The specified album art is placed after any existing
-- album art. * Fallback: If the original input file contains
-- artwork, Elastic Transcoder uses that artwork for the output. If the
-- original input does not contain artwork, Elastic Transcoder uses the
-- specified album art file.
jaaMergePolicy :: Lens' JobAlbumArt (Maybe Text)
-- | The file to be used as album art. There can be multiple artworks
-- associated with an audio file, to a maximum of 20. Valid formats are
-- .jpg and .png
jaaArtwork :: Lens' JobAlbumArt [Artwork]
-- | Information about the file that you're transcoding.
--
-- See: jobInput smart constructor.
data JobInput
-- | Creates a value of JobInput with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - jiFrameRate - The frame rate of the input file. If you want
-- Elastic Transcoder to automatically detect the frame rate of the input
-- file, specify auto . If you want to specify the frame rate
-- for the input file, enter one of the following values: 10 ,
-- 15 , 23.97 , 24 , 25 ,
-- 29.97 , 30 , 60 If you specify a value
-- other than auto , Elastic Transcoder disables automatic
-- detection of the frame rate.
-- - jiResolution - This value must be auto , which
-- causes Elastic Transcoder to automatically detect the resolution of
-- the input file.
-- - jiAspectRatio - The aspect ratio of the input file. If you
-- want Elastic Transcoder to automatically detect the aspect ratio of
-- the input file, specify auto . If you want to specify the
-- aspect ratio for the output file, enter one of the following values:
-- 1:1 , 4:3 , 3:2 , 16:9 If you
-- specify a value other than auto , Elastic Transcoder disables
-- automatic detection of the aspect ratio.
-- - jiTimeSpan - Settings for clipping an input. Each input can
-- have different clip settings.
-- - jiEncryption - The encryption settings, if any, that are
-- used for decrypting your input files. If your input file is encrypted,
-- you must specify the mode that Elastic Transcoder uses to decrypt your
-- file.
-- - jiKey - The name of the file to transcode. Elsewhere in the
-- body of the JSON block is the the ID of the pipeline to use for
-- processing the job. The InputBucket object in that pipeline
-- tells Elastic Transcoder which Amazon S3 bucket to get the file from.
-- If the file name includes a prefix, such as
-- cooking/lasagna.mpg , include the prefix in the key. If the
-- file isn't in the specified bucket, Elastic Transcoder returns an
-- error.
-- - jiDetectedProperties - The detected properties of the input
-- file.
-- - jiContainer - The container type for the input file. If you
-- want Elastic Transcoder to automatically detect the container type of
-- the input file, specify auto . If you want to specify the
-- container type for the input file, enter one of the following values:
-- 3gp , aac , asf , avi ,
-- divx , flv , m4a , mkv ,
-- mov , mp3 , mp4 , mpeg ,
-- mpeg-ps , mpeg-ts , mxf , ogg ,
-- vob , wav , webm
-- - jiInterlaced - Whether the input file is interlaced. If you
-- want Elastic Transcoder to automatically detect whether the input file
-- is interlaced, specify auto . If you want to specify whether
-- the input file is interlaced, enter one of the following values:
-- true , false If you specify a value other than
-- auto , Elastic Transcoder disables automatic detection of
-- interlacing.
-- - jiInputCaptions - You can configure Elastic Transcoder to
-- transcode captions, or subtitles, from one format to another. All
-- captions must be in UTF-8. Elastic Transcoder supports two types of
-- captions: * Embedded: Embedded captions are included in the
-- same file as the audio and video. Elastic Transcoder supports only one
-- embedded caption per language, to a maximum of 300 embedded captions
-- per file. Valid input values include: CEA-608 (EIA-608 ,
-- first non-empty channel only), CEA-708 (EIA-708 , first
-- non-empty channel only), and mov-text Valid outputs include:
-- mov-text Elastic Transcoder supports a maximum of one
-- embedded format per output. * Sidecar: Sidecar captions are
-- kept in a separate metadata file from the audio and video data.
-- Sidecar captions require a player that is capable of understanding the
-- relationship between the video file and the sidecar file. Elastic
-- Transcoder supports only one sidecar caption per language, to a
-- maximum of 20 sidecar captions per file. Valid input values include:
-- dfxp (first div element only), ebu-tt , scc
-- , smpt , srt , ttml (first div element
-- only), and webvtt Valid outputs include: dfxp (first
-- div element only), scc , srt , and webvtt .
-- If you want ttml or smpte-tt compatible captions, specify dfxp as your
-- output format. Elastic Transcoder does not support OCR (Optical
-- Character Recognition), does not accept pictures as a valid input for
-- captions, and is not available for audio-only transcoding. Elastic
-- Transcoder does not preserve text formatting (for example, italics)
-- during the transcoding process. To remove captions or leave the
-- captions empty, set Captions to null. To pass through
-- existing captions unchanged, set the MergePolicy to
-- MergeRetain , and pass in a null CaptionSources
-- array. For more information on embedded files, see the Subtitles
-- Wikipedia page. For more information on sidecar files, see the
-- Extensible Metadata Platform and Sidecar file Wikipedia pages.
--
jobInput :: JobInput
-- | The frame rate of the input file. If you want Elastic Transcoder to
-- automatically detect the frame rate of the input file, specify
-- auto . If you want to specify the frame rate for the input
-- file, enter one of the following values: 10 , 15 ,
-- 23.97 , 24 , 25 , 29.97 ,
-- 30 , 60 If you specify a value other than
-- auto , Elastic Transcoder disables automatic detection of the
-- frame rate.
jiFrameRate :: Lens' JobInput (Maybe Text)
-- | This value must be auto , which causes Elastic Transcoder to
-- automatically detect the resolution of the input file.
jiResolution :: Lens' JobInput (Maybe Text)
-- | The aspect ratio of the input file. If you want Elastic Transcoder to
-- automatically detect the aspect ratio of the input file, specify
-- auto . If you want to specify the aspect ratio for the output
-- file, enter one of the following values: 1:1 , 4:3 ,
-- 3:2 , 16:9 If you specify a value other than
-- auto , Elastic Transcoder disables automatic detection of the
-- aspect ratio.
jiAspectRatio :: Lens' JobInput (Maybe Text)
-- | Settings for clipping an input. Each input can have different clip
-- settings.
jiTimeSpan :: Lens' JobInput (Maybe TimeSpan)
-- | The encryption settings, if any, that are used for decrypting your
-- input files. If your input file is encrypted, you must specify the
-- mode that Elastic Transcoder uses to decrypt your file.
jiEncryption :: Lens' JobInput (Maybe Encryption)
-- | The name of the file to transcode. Elsewhere in the body of the JSON
-- block is the the ID of the pipeline to use for processing the job. The
-- InputBucket object in that pipeline tells Elastic Transcoder
-- which Amazon S3 bucket to get the file from. If the file name includes
-- a prefix, such as cooking/lasagna.mpg , include the prefix in
-- the key. If the file isn't in the specified bucket, Elastic Transcoder
-- returns an error.
jiKey :: Lens' JobInput (Maybe Text)
-- | The detected properties of the input file.
jiDetectedProperties :: Lens' JobInput (Maybe DetectedProperties)
-- | The container type for the input file. If you want Elastic Transcoder
-- to automatically detect the container type of the input file, specify
-- auto . If you want to specify the container type for the
-- input file, enter one of the following values: 3gp ,
-- aac , asf , avi , divx ,
-- flv , m4a , mkv , mov ,
-- mp3 , mp4 , mpeg , mpeg-ps ,
-- mpeg-ts , mxf , ogg , vob ,
-- wav , webm
jiContainer :: Lens' JobInput (Maybe Text)
-- | Whether the input file is interlaced. If you want Elastic Transcoder
-- to automatically detect whether the input file is interlaced, specify
-- auto . If you want to specify whether the input file is
-- interlaced, enter one of the following values: true ,
-- false If you specify a value other than auto ,
-- Elastic Transcoder disables automatic detection of interlacing.
jiInterlaced :: Lens' JobInput (Maybe Text)
-- | You can configure Elastic Transcoder to transcode captions, or
-- subtitles, from one format to another. All captions must be in UTF-8.
-- Elastic Transcoder supports two types of captions: * Embedded:
-- Embedded captions are included in the same file as the audio and
-- video. Elastic Transcoder supports only one embedded caption per
-- language, to a maximum of 300 embedded captions per file. Valid input
-- values include: CEA-608 (EIA-608 , first non-empty channel
-- only), CEA-708 (EIA-708 , first non-empty channel only), and
-- mov-text Valid outputs include: mov-text Elastic
-- Transcoder supports a maximum of one embedded format per output. *
-- Sidecar: Sidecar captions are kept in a separate metadata file
-- from the audio and video data. Sidecar captions require a player that
-- is capable of understanding the relationship between the video file
-- and the sidecar file. Elastic Transcoder supports only one sidecar
-- caption per language, to a maximum of 20 sidecar captions per file.
-- Valid input values include: dfxp (first div element only),
-- ebu-tt , scc , smpt , srt ,
-- ttml (first div element only), and webvtt Valid
-- outputs include: dfxp (first div element only), scc
-- , srt , and webvtt . If you want ttml or smpte-tt
-- compatible captions, specify dfxp as your output format. Elastic
-- Transcoder does not support OCR (Optical Character Recognition), does
-- not accept pictures as a valid input for captions, and is not
-- available for audio-only transcoding. Elastic Transcoder does not
-- preserve text formatting (for example, italics) during the transcoding
-- process. To remove captions or leave the captions empty, set
-- Captions to null. To pass through existing captions
-- unchanged, set the MergePolicy to MergeRetain , and
-- pass in a null CaptionSources array. For more information on
-- embedded files, see the Subtitles Wikipedia page. For more information
-- on sidecar files, see the Extensible Metadata Platform and Sidecar
-- file Wikipedia pages.
jiInputCaptions :: Lens' JobInput (Maybe InputCaptions)
-- | Important: Outputs recommended instead.
--
-- If you specified one output for a job, information about that output.
-- If you specified multiple outputs for a job, the Output
-- object lists information about the first output. This duplicates the
-- information that is listed for the first output in the
-- Outputs object.
--
-- See: jobOutput smart constructor.
data JobOutput
-- | Creates a value of JobOutput with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - joAppliedColorSpaceConversion - If Elastic Transcoder used
-- a preset with a ColorSpaceConversionMode to transcode the
-- output file, the AppliedColorSpaceConversion parameter shows
-- the conversion used. If no ColorSpaceConversionMode was
-- defined in the preset, this parameter is not be included in the job
-- response.
-- - joThumbnailPattern - Whether you want Elastic Transcoder to
-- create thumbnails for your videos and, if so, how you want Elastic
-- Transcoder to name the files. If you don't want Elastic Transcoder to
-- create thumbnails, specify "". If you do want Elastic Transcoder to
-- create thumbnails, specify the information that you want to include in
-- the file name for each thumbnail. You can specify the following values
-- in any sequence: * {count} (Required) : If you want to
-- create thumbnails, you must include {count} in the
-- ThumbnailPattern object. Wherever you specify
-- {count} , Elastic Transcoder adds a five-digit sequence
-- number (beginning with 00001 ) to thumbnail file names. The
-- number indicates where a given thumbnail appears in the sequence of
-- thumbnails for a transcoded file. Important: If you specify a
-- literal value and/or {resolution} but you omit
-- {count} , Elastic Transcoder returns a validation error and
-- does not create the job. * Literal values (Optional) : You can
-- specify literal values anywhere in the ThumbnailPattern
-- object. For example, you can include them as a file name prefix or as
-- a delimiter between {resolution} and {count} . *
-- {resolution} (Optional) : If you want Elastic
-- Transcoder to include the resolution in the file name, include
-- {resolution} in the ThumbnailPattern object. When
-- creating thumbnails, Elastic Transcoder automatically saves the files
-- in the format (.jpg or .png) that appears in the preset that you
-- specified in the PresetID value of CreateJobOutput .
-- Elastic Transcoder also appends the applicable file name
-- extension.
-- - joStatus - The status of one output in a job. If you
-- specified only one output for the job, Outputs:Status is
-- always the same as Job:Status . If you specified more than
-- one output: * Job:Status and Outputs:Status for all
-- of the outputs is Submitted until Elastic Transcoder starts to process
-- the first output. * When Elastic Transcoder starts to process the
-- first output, Outputs:Status for that output and
-- Job:Status both change to Progressing. For each output, the
-- value of Outputs:Status remains Submitted until Elastic
-- Transcoder starts to process the output. * Job:Status remains
-- Progressing until all of the outputs reach a terminal status, either
-- Complete or Error. * When all of the outputs reach a terminal status,
-- Job:Status changes to Complete only if
-- Outputs:Status for all of the outputs is Complete .
-- If Outputs:Status for one or more outputs is Error ,
-- the terminal status for Job:Status is also Error .
-- The value of Status is one of the following:
-- Submitted , Progressing , Complete ,
-- Canceled , or Error .
-- - joHeight - Height of the output file, in pixels.
-- - joFrameRate - Frame rate of the output file, in frames per
-- second.
-- - joCaptions - You can configure Elastic Transcoder to
-- transcode captions, or subtitles, from one format to another. All
-- captions must be in UTF-8. Elastic Transcoder supports two types of
-- captions: * Embedded: Embedded captions are included in the
-- same file as the audio and video. Elastic Transcoder supports only one
-- embedded caption per language, to a maximum of 300 embedded captions
-- per file. Valid input values include: CEA-608 (EIA-608 ,
-- first non-empty channel only), CEA-708 (EIA-708 , first
-- non-empty channel only), and mov-text Valid outputs include:
-- mov-text Elastic Transcoder supports a maximum of one
-- embedded format per output. * Sidecar: Sidecar captions are
-- kept in a separate metadata file from the audio and video data.
-- Sidecar captions require a player that is capable of understanding the
-- relationship between the video file and the sidecar file. Elastic
-- Transcoder supports only one sidecar caption per language, to a
-- maximum of 20 sidecar captions per file. Valid input values include:
-- dfxp (first div element only), ebu-tt , scc
-- , smpt , srt , ttml (first div element
-- only), and webvtt Valid outputs include: dfxp (first
-- div element only), scc , srt , and webvtt .
-- If you want ttml or smpte-tt compatible captions, specify dfxp as your
-- output format. Elastic Transcoder does not support OCR (Optical
-- Character Recognition), does not accept pictures as a valid input for
-- captions, and is not available for audio-only transcoding. Elastic
-- Transcoder does not preserve text formatting (for example, italics)
-- during the transcoding process. To remove captions or leave the
-- captions empty, set Captions to null. To pass through
-- existing captions unchanged, set the MergePolicy to
-- MergeRetain , and pass in a null CaptionSources
-- array. For more information on embedded files, see the Subtitles
-- Wikipedia page. For more information on sidecar files, see the
-- Extensible Metadata Platform and Sidecar file Wikipedia pages.
-- - joPresetId - The value of the Id object for the
-- preset that you want to use for this job. The preset determines the
-- audio, video, and thumbnail settings that Elastic Transcoder uses for
-- transcoding. To use a preset that you created, specify the preset ID
-- that Elastic Transcoder returned in the response when you created the
-- preset. You can also use the Elastic Transcoder system presets, which
-- you can get with ListPresets .
-- - joComposition - You can create an output file that contains
-- an excerpt from the input file. This excerpt, called a clip, can come
-- from the beginning, middle, or end of the file. The Composition object
-- contains settings for the clips that make up an output file. For the
-- current release, you can only specify settings for a single clip per
-- output file. The Composition object cannot be null.
-- - joAlbumArt - The album art to be associated with the output
-- file, if any.
-- - joFileSize - File size of the output file, in bytes.
-- - joWatermarks - Information about the watermarks that you
-- want Elastic Transcoder to add to the video during transcoding. You
-- can specify up to four watermarks for each output. Settings for each
-- watermark must be defined in the preset that you specify in
-- Preset for the current output. Watermarks are added to the
-- output video in the sequence in which you list them in the job
-- output—the first watermark in the list is added to the output video
-- first, the second watermark in the list is added next, and so on. As a
-- result, if the settings in a preset cause Elastic Transcoder to place
-- all watermarks in the same location, the second watermark that you add
-- covers the first one, the third one covers the second, and the fourth
-- one covers the third.
-- - joWidth - Specifies the width of the output file in
-- pixels.
-- - joEncryption - The encryption settings, if any, that you
-- want Elastic Transcoder to apply to your output files. If you choose
-- to use encryption, you must specify a mode to use. If you choose not
-- to use encryption, Elastic Transcoder writes an unencrypted file to
-- your Amazon S3 bucket.
-- - joKey - The name to assign to the transcoded file. Elastic
-- Transcoder saves the file in the Amazon S3 bucket specified by the
-- OutputBucket object in the pipeline that is specified by the
-- pipeline ID.
-- - joStatusDetail - Information that further explains
-- Status .
-- - joId - A sequential counter, starting with 1, that
-- identifies an output among the outputs from the current job. In the
-- Output syntax, this value is always 1.
-- - joSegmentDuration - Important: (Outputs in
-- Fragmented MP4 or MPEG-TS format only. If you specify a preset in
-- PresetId for which the value of Container is
-- fmp4 (Fragmented MP4) or ts (MPEG-TS),
-- SegmentDuration is the target maximum duration of each
-- segment in seconds. For HLSv3 format playlists, each media
-- segment is stored in a separate .ts file. For HLSv4
-- , MPEG-DASH , and Smooth playlists, all media
-- segments for an output are stored in a single file. Each segment is
-- approximately the length of the SegmentDuration , though
-- individual segments might be shorter or longer. The range of valid
-- values is 1 to 60 seconds. If the duration of the video is not evenly
-- divisible by SegmentDuration , the duration of the last
-- segment is the remainder of total length/SegmentDuration. Elastic
-- Transcoder creates an output-specific playlist for each output
-- HLS output that you specify in OutputKeys. To add an output
-- to the master playlist for this job, include it in the
-- OutputKeys of the associated playlist.
-- - joDurationMillis - Duration of the output file, in
-- milliseconds.
-- - joThumbnailEncryption - The encryption settings, if any,
-- that you want Elastic Transcoder to apply to your thumbnail.
-- - joDuration - Duration of the output file, in seconds.
-- - joRotate - The number of degrees clockwise by which you
-- want Elastic Transcoder to rotate the output relative to the input.
-- Enter one of the following values: auto , 0 ,
-- 90 , 180 , 270 The value auto
-- generally works only if the file that you're transcoding contains
-- rotation metadata.
--
jobOutput :: JobOutput
-- | If Elastic Transcoder used a preset with a
-- ColorSpaceConversionMode to transcode the output file, the
-- AppliedColorSpaceConversion parameter shows the conversion
-- used. If no ColorSpaceConversionMode was defined in the
-- preset, this parameter is not be included in the job response.
joAppliedColorSpaceConversion :: Lens' JobOutput (Maybe Text)
-- | Whether you want Elastic Transcoder to create thumbnails for your
-- videos and, if so, how you want Elastic Transcoder to name the files.
-- If you don't want Elastic Transcoder to create thumbnails, specify "".
-- If you do want Elastic Transcoder to create thumbnails, specify the
-- information that you want to include in the file name for each
-- thumbnail. You can specify the following values in any sequence: *
-- {count} (Required) : If you want to create thumbnails,
-- you must include {count} in the ThumbnailPattern
-- object. Wherever you specify {count} , Elastic Transcoder
-- adds a five-digit sequence number (beginning with 00001 ) to
-- thumbnail file names. The number indicates where a given thumbnail
-- appears in the sequence of thumbnails for a transcoded file.
-- Important: If you specify a literal value and/or
-- {resolution} but you omit {count} , Elastic
-- Transcoder returns a validation error and does not create the job. *
-- Literal values (Optional) : You can specify literal values
-- anywhere in the ThumbnailPattern object. For example, you can
-- include them as a file name prefix or as a delimiter between
-- {resolution} and {count} . *
-- {resolution} (Optional) : If you want Elastic
-- Transcoder to include the resolution in the file name, include
-- {resolution} in the ThumbnailPattern object. When
-- creating thumbnails, Elastic Transcoder automatically saves the files
-- in the format (.jpg or .png) that appears in the preset that you
-- specified in the PresetID value of CreateJobOutput .
-- Elastic Transcoder also appends the applicable file name extension.
joThumbnailPattern :: Lens' JobOutput (Maybe Text)
-- | The status of one output in a job. If you specified only one output
-- for the job, Outputs:Status is always the same as
-- Job:Status . If you specified more than one output: *
-- Job:Status and Outputs:Status for all of the outputs
-- is Submitted until Elastic Transcoder starts to process the first
-- output. * When Elastic Transcoder starts to process the first output,
-- Outputs:Status for that output and Job:Status both
-- change to Progressing. For each output, the value of
-- Outputs:Status remains Submitted until Elastic Transcoder
-- starts to process the output. * Job:Status remains Progressing until
-- all of the outputs reach a terminal status, either Complete or Error.
-- * When all of the outputs reach a terminal status, Job:Status
-- changes to Complete only if Outputs:Status for all of the
-- outputs is Complete . If Outputs:Status for one or
-- more outputs is Error , the terminal status for
-- Job:Status is also Error . The value of
-- Status is one of the following: Submitted ,
-- Progressing , Complete , Canceled , or
-- Error .
joStatus :: Lens' JobOutput (Maybe Text)
-- | Height of the output file, in pixels.
joHeight :: Lens' JobOutput (Maybe Int)
-- | Frame rate of the output file, in frames per second.
joFrameRate :: Lens' JobOutput (Maybe Text)
-- | You can configure Elastic Transcoder to transcode captions, or
-- subtitles, from one format to another. All captions must be in UTF-8.
-- Elastic Transcoder supports two types of captions: * Embedded:
-- Embedded captions are included in the same file as the audio and
-- video. Elastic Transcoder supports only one embedded caption per
-- language, to a maximum of 300 embedded captions per file. Valid input
-- values include: CEA-608 (EIA-608 , first non-empty channel
-- only), CEA-708 (EIA-708 , first non-empty channel only), and
-- mov-text Valid outputs include: mov-text Elastic
-- Transcoder supports a maximum of one embedded format per output. *
-- Sidecar: Sidecar captions are kept in a separate metadata file
-- from the audio and video data. Sidecar captions require a player that
-- is capable of understanding the relationship between the video file
-- and the sidecar file. Elastic Transcoder supports only one sidecar
-- caption per language, to a maximum of 20 sidecar captions per file.
-- Valid input values include: dfxp (first div element only),
-- ebu-tt , scc , smpt , srt ,
-- ttml (first div element only), and webvtt Valid
-- outputs include: dfxp (first div element only), scc
-- , srt , and webvtt . If you want ttml or smpte-tt
-- compatible captions, specify dfxp as your output format. Elastic
-- Transcoder does not support OCR (Optical Character Recognition), does
-- not accept pictures as a valid input for captions, and is not
-- available for audio-only transcoding. Elastic Transcoder does not
-- preserve text formatting (for example, italics) during the transcoding
-- process. To remove captions or leave the captions empty, set
-- Captions to null. To pass through existing captions
-- unchanged, set the MergePolicy to MergeRetain , and
-- pass in a null CaptionSources array. For more information on
-- embedded files, see the Subtitles Wikipedia page. For more information
-- on sidecar files, see the Extensible Metadata Platform and Sidecar
-- file Wikipedia pages.
joCaptions :: Lens' JobOutput (Maybe Captions)
-- | The value of the Id object for the preset that you want to
-- use for this job. The preset determines the audio, video, and
-- thumbnail settings that Elastic Transcoder uses for transcoding. To
-- use a preset that you created, specify the preset ID that Elastic
-- Transcoder returned in the response when you created the preset. You
-- can also use the Elastic Transcoder system presets, which you can get
-- with ListPresets .
joPresetId :: Lens' JobOutput (Maybe Text)
-- | You can create an output file that contains an excerpt from the input
-- file. This excerpt, called a clip, can come from the beginning,
-- middle, or end of the file. The Composition object contains settings
-- for the clips that make up an output file. For the current release,
-- you can only specify settings for a single clip per output file. The
-- Composition object cannot be null.
joComposition :: Lens' JobOutput [Clip]
-- | The album art to be associated with the output file, if any.
joAlbumArt :: Lens' JobOutput (Maybe JobAlbumArt)
-- | File size of the output file, in bytes.
joFileSize :: Lens' JobOutput (Maybe Integer)
-- | Information about the watermarks that you want Elastic Transcoder to
-- add to the video during transcoding. You can specify up to four
-- watermarks for each output. Settings for each watermark must be
-- defined in the preset that you specify in Preset for the
-- current output. Watermarks are added to the output video in the
-- sequence in which you list them in the job output—the first watermark
-- in the list is added to the output video first, the second watermark
-- in the list is added next, and so on. As a result, if the settings in
-- a preset cause Elastic Transcoder to place all watermarks in the same
-- location, the second watermark that you add covers the first one, the
-- third one covers the second, and the fourth one covers the third.
joWatermarks :: Lens' JobOutput [JobWatermark]
-- | Specifies the width of the output file in pixels.
joWidth :: Lens' JobOutput (Maybe Int)
-- | The encryption settings, if any, that you want Elastic Transcoder to
-- apply to your output files. If you choose to use encryption, you must
-- specify a mode to use. If you choose not to use encryption, Elastic
-- Transcoder writes an unencrypted file to your Amazon S3 bucket.
joEncryption :: Lens' JobOutput (Maybe Encryption)
-- | The name to assign to the transcoded file. Elastic Transcoder saves
-- the file in the Amazon S3 bucket specified by the
-- OutputBucket object in the pipeline that is specified by the
-- pipeline ID.
joKey :: Lens' JobOutput (Maybe Text)
-- | Information that further explains Status .
joStatusDetail :: Lens' JobOutput (Maybe Text)
-- | A sequential counter, starting with 1, that identifies an output among
-- the outputs from the current job. In the Output syntax, this value is
-- always 1.
joId :: Lens' JobOutput (Maybe Text)
-- | Important: (Outputs in Fragmented MP4 or MPEG-TS format only.
-- If you specify a preset in PresetId for which the value of
-- Container is fmp4 (Fragmented MP4) or ts
-- (MPEG-TS), SegmentDuration is the target maximum duration of
-- each segment in seconds. For HLSv3 format playlists, each
-- media segment is stored in a separate .ts file. For
-- HLSv4 , MPEG-DASH , and Smooth playlists,
-- all media segments for an output are stored in a single file. Each
-- segment is approximately the length of the SegmentDuration ,
-- though individual segments might be shorter or longer. The range of
-- valid values is 1 to 60 seconds. If the duration of the video is not
-- evenly divisible by SegmentDuration , the duration of the
-- last segment is the remainder of total length/SegmentDuration. Elastic
-- Transcoder creates an output-specific playlist for each output
-- HLS output that you specify in OutputKeys. To add an output
-- to the master playlist for this job, include it in the
-- OutputKeys of the associated playlist.
joSegmentDuration :: Lens' JobOutput (Maybe Text)
-- | Duration of the output file, in milliseconds.
joDurationMillis :: Lens' JobOutput (Maybe Integer)
-- | The encryption settings, if any, that you want Elastic Transcoder to
-- apply to your thumbnail.
joThumbnailEncryption :: Lens' JobOutput (Maybe Encryption)
-- | Duration of the output file, in seconds.
joDuration :: Lens' JobOutput (Maybe Integer)
-- | The number of degrees clockwise by which you want Elastic Transcoder
-- to rotate the output relative to the input. Enter one of the following
-- values: auto , 0 , 90 , 180 ,
-- 270 The value auto generally works only if the file
-- that you're transcoding contains rotation metadata.
joRotate :: Lens' JobOutput (Maybe Text)
-- | Watermarks can be in .png or .jpg format. If you want to display a
-- watermark that is not rectangular, use the .png format, which supports
-- transparency.
--
-- See: jobWatermark smart constructor.
data JobWatermark
-- | Creates a value of JobWatermark with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - jwPresetWatermarkId - The ID of the watermark settings that
-- Elastic Transcoder uses to add watermarks to the video during
-- transcoding. The settings are in the preset specified by Preset for
-- the current output. In that preset, the value of Watermarks Id tells
-- Elastic Transcoder which settings to use.
-- - jwInputKey - The name of the .png or .jpg file that you
-- want to use for the watermark. To determine which Amazon S3 bucket
-- contains the specified file, Elastic Transcoder checks the pipeline
-- specified by Pipeline ; the Input Bucket object in
-- that pipeline identifies the bucket. If the file name includes a
-- prefix, for example, logos/128x64.png , include the prefix in
-- the key. If the file isn't in the specified bucket, Elastic Transcoder
-- returns an error.
-- - jwEncryption - The encryption settings, if any, that you
-- want Elastic Transcoder to apply to your watermarks.
--
jobWatermark :: JobWatermark
-- | The ID of the watermark settings that Elastic Transcoder uses to add
-- watermarks to the video during transcoding. The settings are in the
-- preset specified by Preset for the current output. In that preset, the
-- value of Watermarks Id tells Elastic Transcoder which settings to use.
jwPresetWatermarkId :: Lens' JobWatermark (Maybe Text)
-- | The name of the .png or .jpg file that you want to use for the
-- watermark. To determine which Amazon S3 bucket contains the specified
-- file, Elastic Transcoder checks the pipeline specified by
-- Pipeline ; the Input Bucket object in that pipeline
-- identifies the bucket. If the file name includes a prefix, for
-- example, logos/128x64.png , include the prefix in the key. If
-- the file isn't in the specified bucket, Elastic Transcoder returns an
-- error.
jwInputKey :: Lens' JobWatermark (Maybe Text)
-- | The encryption settings, if any, that you want Elastic Transcoder to
-- apply to your watermarks.
jwEncryption :: Lens' JobWatermark (Maybe Encryption)
-- | The Amazon Simple Notification Service (Amazon SNS) topic or topics to
-- notify in order to report job status.
--
-- Important: To receive notifications, you must also subscribe to
-- the new topic in the Amazon SNS console.
--
-- See: notifications smart constructor.
data Notifications
-- | Creates a value of Notifications with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - nError - The Amazon SNS topic that you want to notify when
-- Elastic Transcoder encounters an error condition.
-- - nWarning - The Amazon SNS topic that you want to notify
-- when Elastic Transcoder encounters a warning condition.
-- - nProgressing - The Amazon Simple Notification Service
-- (Amazon SNS) topic that you want to notify when Elastic Transcoder has
-- started to process the job.
-- - nCompleted - The Amazon SNS topic that you want to notify
-- when Elastic Transcoder has finished processing the job.
--
notifications :: Notifications
-- | The Amazon SNS topic that you want to notify when Elastic Transcoder
-- encounters an error condition.
nError :: Lens' Notifications (Maybe Text)
-- | The Amazon SNS topic that you want to notify when Elastic Transcoder
-- encounters a warning condition.
nWarning :: Lens' Notifications (Maybe Text)
-- | The Amazon Simple Notification Service (Amazon SNS) topic that you
-- want to notify when Elastic Transcoder has started to process the job.
nProgressing :: Lens' Notifications (Maybe Text)
-- | The Amazon SNS topic that you want to notify when Elastic Transcoder
-- has finished processing the job.
nCompleted :: Lens' Notifications (Maybe Text)
-- | The Permission structure.
--
-- See: permission smart constructor.
data Permission
-- | Creates a value of Permission with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - pAccess - The permission that you want to give to the AWS
-- user that is listed in Grantee. Valid values include: * READ
-- : The grantee can read the thumbnails and metadata for thumbnails that
-- Elastic Transcoder adds to the Amazon S3 bucket. * READ_ACP :
-- The grantee can read the object ACL for thumbnails that Elastic
-- Transcoder adds to the Amazon S3 bucket. * WRITE_ACP : The
-- grantee can write the ACL for the thumbnails that Elastic Transcoder
-- adds to the Amazon S3 bucket. * FULL_CONTROL : The grantee
-- has READ, READ_ACP, and WRITE_ACP permissions for the thumbnails that
-- Elastic Transcoder adds to the Amazon S3 bucket.
-- - pGranteeType - The type of value that appears in the
-- Grantee object: * Canonical : Either the canonical user ID
-- for an AWS account or an origin access identity for an Amazon
-- CloudFront distribution. Important: A canonical user ID is not
-- the same as an AWS account number. * Email : The registered
-- email address of an AWS account. * Group : One of the
-- following predefined Amazon S3 groups: AllUsers ,
-- AuthenticatedUsers , or LogDelivery .
-- - pGrantee - The AWS user or group that you want to have
-- access to transcoded files and playlists. To identify the user or
-- group, you can specify the canonical user ID for an AWS account, an
-- origin access identity for a CloudFront distribution, the registered
-- email address of an AWS account, or a predefined Amazon S3 group.
--
permission :: Permission
-- | The permission that you want to give to the AWS user that is listed in
-- Grantee. Valid values include: * READ : The grantee can read
-- the thumbnails and metadata for thumbnails that Elastic Transcoder
-- adds to the Amazon S3 bucket. * READ_ACP : The grantee can
-- read the object ACL for thumbnails that Elastic Transcoder adds to the
-- Amazon S3 bucket. * WRITE_ACP : The grantee can write the ACL
-- for the thumbnails that Elastic Transcoder adds to the Amazon S3
-- bucket. * FULL_CONTROL : The grantee has READ, READ_ACP, and
-- WRITE_ACP permissions for the thumbnails that Elastic Transcoder adds
-- to the Amazon S3 bucket.
pAccess :: Lens' Permission [Text]
-- | The type of value that appears in the Grantee object: *
-- Canonical : Either the canonical user ID for an AWS account
-- or an origin access identity for an Amazon CloudFront distribution.
-- Important: A canonical user ID is not the same as an AWS
-- account number. * Email : The registered email address of an
-- AWS account. * Group : One of the following predefined Amazon
-- S3 groups: AllUsers , AuthenticatedUsers , or
-- LogDelivery .
pGranteeType :: Lens' Permission (Maybe Text)
-- | The AWS user or group that you want to have access to transcoded files
-- and playlists. To identify the user or group, you can specify the
-- canonical user ID for an AWS account, an origin access identity for a
-- CloudFront distribution, the registered email address of an AWS
-- account, or a predefined Amazon S3 group.
pGrantee :: Lens' Permission (Maybe Text)
-- | The pipeline (queue) that is used to manage jobs.
--
-- See: pipeline smart constructor.
data Pipeline
-- | Creates a value of Pipeline with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - pipStatus - The current status of the pipeline: *
-- Active : The pipeline is processing jobs. * Paused :
-- The pipeline is not currently processing jobs.
-- - pipARN - The Amazon Resource Name (ARN) for the
-- pipeline.
-- - pipInputBucket - The Amazon S3 bucket from which Elastic
-- Transcoder gets media files for transcoding and the graphics files, if
-- any, that you want to use for watermarks.
-- - pipContentConfig - Information about the Amazon S3 bucket
-- in which you want Elastic Transcoder to save transcoded files and
-- playlists. Either you specify both ContentConfig and
-- ThumbnailConfig , or you specify OutputBucket . *
-- Bucket : The Amazon S3 bucket in which you want Elastic
-- Transcoder to save transcoded files and playlists. *
-- Permissions : A list of the users and/or predefined Amazon S3
-- groups you want to have access to transcoded files and playlists, and
-- the type of access that you want them to have. * GranteeType: The type
-- of value that appears in the Grantee object: *
-- Canonical : Either the canonical user ID for an AWS account
-- or an origin access identity for an Amazon CloudFront distribution. *
-- Email : The registered email address of an AWS account. *
-- Group : One of the following predefined Amazon S3 groups:
-- AllUsers , AuthenticatedUsers , or
-- LogDelivery . * Grantee : The AWS user or group that
-- you want to have access to transcoded files and playlists. *
-- Access : The permission that you want to give to the AWS user
-- that is listed in Grantee . Valid values include: *
-- READ : The grantee can read the objects and metadata for
-- objects that Elastic Transcoder adds to the Amazon S3 bucket. *
-- READ_ACP : The grantee can read the object ACL for objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- WRITE_ACP : The grantee can write the ACL for the objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- FULL_CONTROL : The grantee has READ ,
-- READ_ACP , and WRITE_ACP permissions for the objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- StorageClass : The Amazon S3 storage class, Standard or
-- ReducedRedundancy, that you want Elastic Transcoder to assign to the
-- video files and playlists that it stores in your Amazon S3
-- bucket.
-- - pipOutputBucket - The Amazon S3 bucket in which you want
-- Elastic Transcoder to save transcoded files, thumbnails, and
-- playlists. Either you specify this value, or you specify both
-- ContentConfig and ThumbnailConfig .
-- - pipRole - The IAM Amazon Resource Name (ARN) for the role
-- that Elastic Transcoder uses to transcode jobs for this pipeline.
-- - pipName - The name of the pipeline. We recommend that the
-- name be unique within the AWS account, but uniqueness is not enforced.
-- Constraints: Maximum 40 characters
-- - pipAWSKMSKeyARN - The AWS Key Management Service (AWS KMS)
-- key that you want to use with this pipeline. If you use either
-- S3 or S3-AWS-KMS as your Encryption:Mode ,
-- you don't need to provide a key with your job because a default key,
-- known as an AWS-KMS key, is created for you automatically. You need to
-- provide an AWS-KMS key only if you want to use a non-default AWS-KMS
-- key, or if you are using an Encryption:Mode of
-- AES-PKCS7 , AES-CTR , or AES-GCM .
-- - pipId - The identifier for the pipeline. You use this value
-- to identify the pipeline in which you want to perform a variety of
-- operations, such as creating a job or a preset.
-- - pipNotifications - The Amazon Simple Notification Service
-- (Amazon SNS) topic that you want to notify to report job status.
-- Important: To receive notifications, you must also subscribe to
-- the new topic in the Amazon SNS console. * Progressing
-- (optional): The Amazon Simple Notification Service (Amazon SNS) topic
-- that you want to notify when Elastic Transcoder has started to process
-- the job. * Completed (optional): The Amazon SNS topic that you
-- want to notify when Elastic Transcoder has finished processing the
-- job. * Warning (optional): The Amazon SNS topic that you want
-- to notify when Elastic Transcoder encounters a warning condition. *
-- Error (optional): The Amazon SNS topic that you want to notify
-- when Elastic Transcoder encounters an error condition.
-- - pipThumbnailConfig - Information about the Amazon S3 bucket
-- in which you want Elastic Transcoder to save thumbnail files. Either
-- you specify both ContentConfig and ThumbnailConfig ,
-- or you specify OutputBucket . * Bucket : The Amazon
-- S3 bucket in which you want Elastic Transcoder to save thumbnail
-- files. * Permissions : A list of the users andor
-- predefined Amazon S3 groups you want to have access to thumbnail
-- files, and the type of access that you want them to have. *
-- GranteeType: The type of value that appears in the Grantee object: *
-- Canonical : Either the canonical user ID for an AWS account
-- or an origin access identity for an Amazon CloudFront distribution.
-- Important:/ A canonical user ID is not the same as an AWS account
-- number. * Email : The registered email address of an AWS
-- account. * Group : One of the following predefined Amazon S3
-- groups: AllUsers , AuthenticatedUsers , or
-- LogDelivery . * Grantee : The AWS user or group that
-- you want to have access to thumbnail files. * Access: The permission
-- that you want to give to the AWS user that is listed in Grantee. Valid
-- values include: * READ : The grantee can read the thumbnails
-- and metadata for thumbnails that Elastic Transcoder adds to the Amazon
-- S3 bucket. * READ_ACP : The grantee can read the object ACL
-- for thumbnails that Elastic Transcoder adds to the Amazon S3 bucket. *
-- WRITE_ACP : The grantee can write the ACL for the thumbnails
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- FULL_CONTROL : The grantee has READ, READ_ACP, and WRITE_ACP
-- permissions for the thumbnails that Elastic Transcoder adds to the
-- Amazon S3 bucket. * StorageClass : The Amazon S3 storage
-- class, Standard or ReducedRedundancy , that you want
-- Elastic Transcoder to assign to the thumbnails that it stores in your
-- Amazon S3 bucket.
--
pipeline :: Pipeline
-- | The current status of the pipeline: * Active : The pipeline
-- is processing jobs. * Paused : The pipeline is not currently
-- processing jobs.
pipStatus :: Lens' Pipeline (Maybe Text)
-- | The Amazon Resource Name (ARN) for the pipeline.
pipARN :: Lens' Pipeline (Maybe Text)
-- | The Amazon S3 bucket from which Elastic Transcoder gets media files
-- for transcoding and the graphics files, if any, that you want to use
-- for watermarks.
pipInputBucket :: Lens' Pipeline (Maybe Text)
-- | Information about the Amazon S3 bucket in which you want Elastic
-- Transcoder to save transcoded files and playlists. Either you specify
-- both ContentConfig and ThumbnailConfig , or you
-- specify OutputBucket . * Bucket : The Amazon S3 bucket
-- in which you want Elastic Transcoder to save transcoded files and
-- playlists. * Permissions : A list of the users and/or
-- predefined Amazon S3 groups you want to have access to transcoded
-- files and playlists, and the type of access that you want them to
-- have. * GranteeType: The type of value that appears in the
-- Grantee object: * Canonical : Either the canonical
-- user ID for an AWS account or an origin access identity for an Amazon
-- CloudFront distribution. * Email : The registered email
-- address of an AWS account. * Group : One of the following
-- predefined Amazon S3 groups: AllUsers ,
-- AuthenticatedUsers , or LogDelivery . *
-- Grantee : The AWS user or group that you want to have access
-- to transcoded files and playlists. * Access : The permission
-- that you want to give to the AWS user that is listed in
-- Grantee . Valid values include: * READ : The grantee
-- can read the objects and metadata for objects that Elastic Transcoder
-- adds to the Amazon S3 bucket. * READ_ACP : The grantee can
-- read the object ACL for objects that Elastic Transcoder adds to the
-- Amazon S3 bucket. * WRITE_ACP : The grantee can write the ACL
-- for the objects that Elastic Transcoder adds to the Amazon S3 bucket.
-- * FULL_CONTROL : The grantee has READ ,
-- READ_ACP , and WRITE_ACP permissions for the objects
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- StorageClass : The Amazon S3 storage class, Standard or
-- ReducedRedundancy, that you want Elastic Transcoder to assign to the
-- video files and playlists that it stores in your Amazon S3 bucket.
pipContentConfig :: Lens' Pipeline (Maybe PipelineOutputConfig)
-- | The Amazon S3 bucket in which you want Elastic Transcoder to save
-- transcoded files, thumbnails, and playlists. Either you specify this
-- value, or you specify both ContentConfig and
-- ThumbnailConfig .
pipOutputBucket :: Lens' Pipeline (Maybe Text)
-- | The IAM Amazon Resource Name (ARN) for the role that Elastic
-- Transcoder uses to transcode jobs for this pipeline.
pipRole :: Lens' Pipeline (Maybe Text)
-- | The name of the pipeline. We recommend that the name be unique within
-- the AWS account, but uniqueness is not enforced. Constraints: Maximum
-- 40 characters
pipName :: Lens' Pipeline (Maybe Text)
-- | The AWS Key Management Service (AWS KMS) key that you want to use with
-- this pipeline. If you use either S3 or S3-AWS-KMS as
-- your Encryption:Mode , you don't need to provide a key with
-- your job because a default key, known as an AWS-KMS key, is created
-- for you automatically. You need to provide an AWS-KMS key only if you
-- want to use a non-default AWS-KMS key, or if you are using an
-- Encryption:Mode of AES-PKCS7 , AES-CTR , or
-- AES-GCM .
pipAWSKMSKeyARN :: Lens' Pipeline (Maybe Text)
-- | The identifier for the pipeline. You use this value to identify the
-- pipeline in which you want to perform a variety of operations, such as
-- creating a job or a preset.
pipId :: Lens' Pipeline (Maybe Text)
-- | The Amazon Simple Notification Service (Amazon SNS) topic that you
-- want to notify to report job status. Important: To receive
-- notifications, you must also subscribe to the new topic in the Amazon
-- SNS console. * Progressing (optional): The Amazon Simple
-- Notification Service (Amazon SNS) topic that you want to notify when
-- Elastic Transcoder has started to process the job. * Completed
-- (optional): The Amazon SNS topic that you want to notify when Elastic
-- Transcoder has finished processing the job. * Warning
-- (optional): The Amazon SNS topic that you want to notify when Elastic
-- Transcoder encounters a warning condition. * Error (optional):
-- The Amazon SNS topic that you want to notify when Elastic Transcoder
-- encounters an error condition.
pipNotifications :: Lens' Pipeline (Maybe Notifications)
-- | Information about the Amazon S3 bucket in which you want Elastic
-- Transcoder to save thumbnail files. Either you specify both
-- ContentConfig and ThumbnailConfig , or you specify
-- OutputBucket . * Bucket : The Amazon S3 bucket in
-- which you want Elastic Transcoder to save thumbnail files. *
-- Permissions : A list of the users andor predefined Amazon
-- S3 groups you want to have access to thumbnail files, and the type of
-- access that you want them to have. * GranteeType: The type of value
-- that appears in the Grantee object: * Canonical : Either the
-- canonical user ID for an AWS account or an origin access identity for
-- an Amazon CloudFront distribution. Important:/ A canonical user ID
-- is not the same as an AWS account number. * Email : The
-- registered email address of an AWS account. * Group : One of
-- the following predefined Amazon S3 groups: AllUsers ,
-- AuthenticatedUsers , or LogDelivery . *
-- Grantee : The AWS user or group that you want to have access
-- to thumbnail files. * Access: The permission that you want to give to
-- the AWS user that is listed in Grantee. Valid values include: *
-- READ : The grantee can read the thumbnails and metadata for
-- thumbnails that Elastic Transcoder adds to the Amazon S3 bucket. *
-- READ_ACP : The grantee can read the object ACL for thumbnails
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- WRITE_ACP : The grantee can write the ACL for the thumbnails
-- that Elastic Transcoder adds to the Amazon S3 bucket. *
-- FULL_CONTROL : The grantee has READ, READ_ACP, and WRITE_ACP
-- permissions for the thumbnails that Elastic Transcoder adds to the
-- Amazon S3 bucket. * StorageClass : The Amazon S3 storage
-- class, Standard or ReducedRedundancy , that you want
-- Elastic Transcoder to assign to the thumbnails that it stores in your
-- Amazon S3 bucket.
pipThumbnailConfig :: Lens' Pipeline (Maybe PipelineOutputConfig)
-- | The PipelineOutputConfig structure.
--
-- See: pipelineOutputConfig smart constructor.
data PipelineOutputConfig
-- | Creates a value of PipelineOutputConfig with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - pocBucket - The Amazon S3 bucket in which you want Elastic
-- Transcoder to save the transcoded files. Specify this value when all
-- of the following are true: * You want to save transcoded files,
-- thumbnails (if any), and playlists (if any) together in one bucket. *
-- You do not want to specify the users or groups who have access to the
-- transcoded files, thumbnails, and playlists. * You do not want to
-- specify the permissions that Elastic Transcoder grants to the files. *
-- You want to associate the transcoded files and thumbnails with the
-- Amazon S3 Standard storage class. If you want to save transcoded files
-- and playlists in one bucket and thumbnails in another bucket, specify
-- which users can access the transcoded files or the permissions the
-- users have, or change the Amazon S3 storage class, omit OutputBucket
-- and specify values for ContentConfig and
-- ThumbnailConfig instead.
-- - pocStorageClass - The Amazon S3 storage class,
-- Standard or ReducedRedundancy , that you want
-- Elastic Transcoder to assign to the video files and playlists that it
-- stores in your Amazon S3 bucket.
-- - pocPermissions - Optional. The Permissions object
-- specifies which users andor predefined Amazon S3 groups you want to
-- have access to transcoded files and playlists, and the type of access
-- you want them to have. You can grant permissions to a maximum of 30
-- users andor predefined Amazon S3 groups. If you include
-- Permissions , Elastic Transcoder grants only the permissions
-- that you specify. It does not grant full permissions to the owner of
-- the role specified by Role . If you want that user to have
-- full control, you must explicitly grant full control to the user. If
-- you omit Permissions , Elastic Transcoder grants full control
-- over the transcoded files and playlists to the owner of the role
-- specified by Role , and grants no other permissions to any
-- other user or group.
--
pipelineOutputConfig :: PipelineOutputConfig
-- | The Amazon S3 bucket in which you want Elastic Transcoder to save the
-- transcoded files. Specify this value when all of the following are
-- true: * You want to save transcoded files, thumbnails (if any), and
-- playlists (if any) together in one bucket. * You do not want to
-- specify the users or groups who have access to the transcoded files,
-- thumbnails, and playlists. * You do not want to specify the
-- permissions that Elastic Transcoder grants to the files. * You want to
-- associate the transcoded files and thumbnails with the Amazon S3
-- Standard storage class. If you want to save transcoded files and
-- playlists in one bucket and thumbnails in another bucket, specify
-- which users can access the transcoded files or the permissions the
-- users have, or change the Amazon S3 storage class, omit OutputBucket
-- and specify values for ContentConfig and
-- ThumbnailConfig instead.
pocBucket :: Lens' PipelineOutputConfig (Maybe Text)
-- | The Amazon S3 storage class, Standard or
-- ReducedRedundancy , that you want Elastic Transcoder to
-- assign to the video files and playlists that it stores in your Amazon
-- S3 bucket.
pocStorageClass :: Lens' PipelineOutputConfig (Maybe Text)
-- | Optional. The Permissions object specifies which users
-- andor predefined Amazon S3 groups you want to have access to
-- transcoded files and playlists, and the type of access you want them
-- to have. You can grant permissions to a maximum of 30 users andor
-- predefined Amazon S3 groups. If you include Permissions ,
-- Elastic Transcoder grants only the permissions that you specify. It
-- does not grant full permissions to the owner of the role specified by
-- Role . If you want that user to have full control, you must
-- explicitly grant full control to the user. If you omit
-- Permissions , Elastic Transcoder grants full control over the
-- transcoded files and playlists to the owner of the role specified by
-- Role , and grants no other permissions to any other user or
-- group.
pocPermissions :: Lens' PipelineOutputConfig [Permission]
-- | The PlayReady DRM settings, if any, that you want Elastic Transcoder
-- to apply to the output files associated with this playlist.
--
-- PlayReady DRM encrypts your media files using AES-CTR
-- encryption.
--
-- If you use DRM for an HLSv3 playlist, your outputs must have
-- a master playlist.
--
-- See: playReadyDrm smart constructor.
data PlayReadyDrm
-- | Creates a value of PlayReadyDrm with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - prdKeyId - The ID for your DRM key, so that your DRM
-- license provider knows which key to provide. The key ID must be
-- provided in big endian, and Elastic Transcoder converts it to little
-- endian before inserting it into the PlayReady DRM headers. If you are
-- unsure whether your license server provides your key ID in big or
-- little endian, check with your DRM provider.
-- - prdFormat - The type of DRM, if any, that you want Elastic
-- Transcoder to apply to the output files associated with this
-- playlist.
-- - prdKeyMD5 - The MD5 digest of the key used for DRM on your
-- file, and that you want Elastic Transcoder to use as a checksum to
-- make sure your key was not corrupted in transit. The key MD5 must be
-- base64-encoded, and it must be exactly 16 bytes before being
-- base64-encoded.
-- - prdKey - The DRM key for your file, provided by your DRM
-- license provider. The key must be base64-encoded, and it must be one
-- of the following bit lengths before being base64-encoded: 128
-- , 192 , or 256 . The key must also be encrypted by
-- using AWS KMS.
-- - prdInitializationVector - The series of random bits created
-- by a random bit generator, unique for every encryption operation, that
-- you want Elastic Transcoder to use to encrypt your files. The
-- initialization vector must be base64-encoded, and it must be exactly 8
-- bytes long before being base64-encoded. If no initialization vector is
-- provided, Elastic Transcoder generates one for you.
-- - prdLicenseAcquisitionURL - The location of the license key
-- required to play DRM content. The URL must be an absolute path, and is
-- referenced by the PlayReady header. The PlayReady header is referenced
-- in the protection header of the client manifest for Smooth Streaming
-- outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for
-- HLS playlist outputs. An example URL looks like this:
-- https://www.example.com/exampleKey/
--
playReadyDrm :: PlayReadyDrm
-- | The ID for your DRM key, so that your DRM license provider knows which
-- key to provide. The key ID must be provided in big endian, and Elastic
-- Transcoder converts it to little endian before inserting it into the
-- PlayReady DRM headers. If you are unsure whether your license server
-- provides your key ID in big or little endian, check with your DRM
-- provider.
prdKeyId :: Lens' PlayReadyDrm (Maybe Text)
-- | The type of DRM, if any, that you want Elastic Transcoder to apply to
-- the output files associated with this playlist.
prdFormat :: Lens' PlayReadyDrm (Maybe Text)
-- | The MD5 digest of the key used for DRM on your file, and that you want
-- Elastic Transcoder to use as a checksum to make sure your key was not
-- corrupted in transit. The key MD5 must be base64-encoded, and it must
-- be exactly 16 bytes before being base64-encoded.
prdKeyMD5 :: Lens' PlayReadyDrm (Maybe Text)
-- | The DRM key for your file, provided by your DRM license provider. The
-- key must be base64-encoded, and it must be one of the following bit
-- lengths before being base64-encoded: 128 , 192 , or
-- 256 . The key must also be encrypted by using AWS KMS.
prdKey :: Lens' PlayReadyDrm (Maybe Text)
-- | The series of random bits created by a random bit generator, unique
-- for every encryption operation, that you want Elastic Transcoder to
-- use to encrypt your files. The initialization vector must be
-- base64-encoded, and it must be exactly 8 bytes long before being
-- base64-encoded. If no initialization vector is provided, Elastic
-- Transcoder generates one for you.
prdInitializationVector :: Lens' PlayReadyDrm (Maybe Text)
-- | The location of the license key required to play DRM content. The URL
-- must be an absolute path, and is referenced by the PlayReady header.
-- The PlayReady header is referenced in the protection header of the
-- client manifest for Smooth Streaming outputs, and in the EXT-X-DXDRM
-- and EXT-XDXDRMINFO metadata tags for HLS playlist outputs. An example
-- URL looks like this:
-- https://www.example.com/exampleKey/
prdLicenseAcquisitionURL :: Lens' PlayReadyDrm (Maybe Text)
-- | Use Only for Fragmented MP4 or MPEG-TS Outputs. If you specify a
-- preset for which the value of Container is fmp4 (Fragmented
-- MP4) or ts (MPEG-TS), Playlists contains information about
-- the master playlists that you want Elastic Transcoder to create. We
-- recommend that you create only one master playlist per output format.
-- The maximum number of master playlists in a job is 30.
--
-- See: playlist smart constructor.
data Playlist
-- | Creates a value of Playlist with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - pStatus - The status of the job with which the playlist is
-- associated.
-- - pPlayReadyDrm - The DRM settings, if any, that you want
-- Elastic Transcoder to apply to the output files associated with this
-- playlist.
-- - pFormat - The format of the output playlist. Valid formats
-- include HLSv3 , HLSv4 , and Smooth .
-- - pOutputKeys - For each output in this job that you want to
-- include in a master playlist, the value of the Outputs:Key object. *
-- If your output is not HLS or does not have a segment duration
-- set, the name of the output file is a concatenation of
-- OutputKeyPrefix and Outputs:Key :
-- OutputKeyPrefixOutputs:Key * If your output is HLSv3
-- and has a segment duration set, or is not included in a playlist,
-- Elastic Transcoder creates an output playlist file with a file
-- extension of .m3u8 , and a series of .ts files that
-- include a five-digit sequential counter beginning with 00000:
-- OutputKeyPrefixOutputs:Key .m3u8
-- OutputKeyPrefixOutputs:Key 00000.ts * If your output is
-- HLSv4 , has a segment duration set, and is included in an
-- HLSv4 playlist, Elastic Transcoder creates an output playlist
-- file with a file extension of _v4.m3u8 . If the output is
-- video, Elastic Transcoder also creates an output file with an
-- extension of _iframe.m3u8 :
-- OutputKeyPrefixOutputs:Key _v4.m3u8
-- OutputKeyPrefixOutputs:Key _iframe.m3u8
-- OutputKeyPrefixOutputs:Key .ts Elastic Transcoder
-- automatically appends the relevant file extension to the file name. If
-- you include a file extension in Output Key, the file name will have
-- two extensions. If you include more than one output in a playlist, any
-- segment duration settings, clip settings, or caption settings must be
-- the same for all outputs in the playlist. For Smooth
-- playlists, the Audio:Profile , Video:Profile , and
-- Video:FrameRate to Video:KeyframesMaxDist ratio must
-- be the same for all outputs.
-- - pName - The name that you want Elastic Transcoder to assign
-- to the master playlist, for example, nyc-vacation.m3u8. If the name
-- includes a / character, the section of the name before the
-- last / must be identical for all Name objects. If
-- you create more than one master playlist, the values of all
-- Name objects must be unique.
-- - pStatusDetail - Information that further explains the
-- status.
-- - pHlsContentProtection - The HLS content protection
-- settings, if any, that you want Elastic Transcoder to apply to the
-- output files associated with this playlist.
--
playlist :: Playlist
-- | The status of the job with which the playlist is associated.
pStatus :: Lens' Playlist (Maybe Text)
-- | The DRM settings, if any, that you want Elastic Transcoder to apply to
-- the output files associated with this playlist.
pPlayReadyDrm :: Lens' Playlist (Maybe PlayReadyDrm)
-- | The format of the output playlist. Valid formats include
-- HLSv3 , HLSv4 , and Smooth .
pFormat :: Lens' Playlist (Maybe Text)
-- | For each output in this job that you want to include in a master
-- playlist, the value of the Outputs:Key object. * If your output is not
-- HLS or does not have a segment duration set, the name of the
-- output file is a concatenation of OutputKeyPrefix and
-- Outputs:Key : OutputKeyPrefixOutputs:Key * If your
-- output is HLSv3 and has a segment duration set, or is not
-- included in a playlist, Elastic Transcoder creates an output playlist
-- file with a file extension of .m3u8 , and a series of
-- .ts files that include a five-digit sequential counter
-- beginning with 00000: OutputKeyPrefixOutputs:Key .m3u8
-- OutputKeyPrefixOutputs:Key 00000.ts * If your output is
-- HLSv4 , has a segment duration set, and is included in an
-- HLSv4 playlist, Elastic Transcoder creates an output playlist
-- file with a file extension of _v4.m3u8 . If the output is
-- video, Elastic Transcoder also creates an output file with an
-- extension of _iframe.m3u8 :
-- OutputKeyPrefixOutputs:Key _v4.m3u8
-- OutputKeyPrefixOutputs:Key _iframe.m3u8
-- OutputKeyPrefixOutputs:Key .ts Elastic Transcoder
-- automatically appends the relevant file extension to the file name. If
-- you include a file extension in Output Key, the file name will have
-- two extensions. If you include more than one output in a playlist, any
-- segment duration settings, clip settings, or caption settings must be
-- the same for all outputs in the playlist. For Smooth
-- playlists, the Audio:Profile , Video:Profile , and
-- Video:FrameRate to Video:KeyframesMaxDist ratio must
-- be the same for all outputs.
pOutputKeys :: Lens' Playlist [Text]
-- | The name that you want Elastic Transcoder to assign to the master
-- playlist, for example, nyc-vacation.m3u8. If the name includes a
-- / character, the section of the name before the last
-- / must be identical for all Name objects. If you
-- create more than one master playlist, the values of all Name
-- objects must be unique.
pName :: Lens' Playlist (Maybe Text)
-- | Information that further explains the status.
pStatusDetail :: Lens' Playlist (Maybe Text)
-- | The HLS content protection settings, if any, that you want Elastic
-- Transcoder to apply to the output files associated with this playlist.
pHlsContentProtection :: Lens' Playlist (Maybe HlsContentProtection)
-- | Presets are templates that contain most of the settings for
-- transcoding media files from one format to another. Elastic Transcoder
-- includes some default presets for common formats, for example, several
-- iPod and iPhone versions. You can also create your own presets for
-- formats that aren't included among the default presets. You specify
-- which preset you want to use when you create a job.
--
-- See: preset smart constructor.
data Preset
-- | Creates a value of Preset with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - preARN - The Amazon Resource Name (ARN) for the
-- preset.
-- - preVideo - A section of the response body that provides
-- information about the video preset values.
-- - preThumbnails - A section of the response body that
-- provides information about the thumbnail preset values, if any.
-- - preName - The name of the preset.
-- - preContainer - The container type for the output file.
-- Valid values include flac , flv , fmp4 ,
-- gif , mp3 , mp4 , mpg ,
-- mxf , oga , ogg , ts , and
-- webm .
-- - preId - Identifier for the new preset. You use this value
-- to get settings for the preset or to delete it.
-- - preType - Whether the preset is a default preset provided
-- by Elastic Transcoder (System ) or a preset that you have
-- defined (Custom ).
-- - preDescription - A description of the preset.
-- - preAudio - A section of the response body that provides
-- information about the audio preset values.
--
preset :: Preset
-- | The Amazon Resource Name (ARN) for the preset.
preARN :: Lens' Preset (Maybe Text)
-- | A section of the response body that provides information about the
-- video preset values.
preVideo :: Lens' Preset (Maybe VideoParameters)
-- | A section of the response body that provides information about the
-- thumbnail preset values, if any.
preThumbnails :: Lens' Preset (Maybe Thumbnails)
-- | The name of the preset.
preName :: Lens' Preset (Maybe Text)
-- | The container type for the output file. Valid values include
-- flac , flv , fmp4 , gif ,
-- mp3 , mp4 , mpg , mxf ,
-- oga , ogg , ts , and webm .
preContainer :: Lens' Preset (Maybe Text)
-- | Identifier for the new preset. You use this value to get settings for
-- the preset or to delete it.
preId :: Lens' Preset (Maybe Text)
-- | Whether the preset is a default preset provided by Elastic Transcoder
-- (System ) or a preset that you have defined (Custom
-- ).
preType :: Lens' Preset (Maybe Text)
-- | A description of the preset.
preDescription :: Lens' Preset (Maybe Text)
-- | A section of the response body that provides information about the
-- audio preset values.
preAudio :: Lens' Preset (Maybe AudioParameters)
-- | Settings for the size, location, and opacity of graphics that you want
-- Elastic Transcoder to overlay over videos that are transcoded using
-- this preset. You can specify settings for up to four watermarks.
-- Watermarks appear in the specified size and location, and with the
-- specified opacity for the duration of the transcoded video.
--
-- Watermarks can be in .png or .jpg format. If you want to display a
-- watermark that is not rectangular, use the .png format, which supports
-- transparency.
--
-- When you create a job that uses this preset, you specify the .png or
-- .jpg graphics that you want Elastic Transcoder to include in the
-- transcoded videos. You can specify fewer graphics in the job than you
-- specify watermark settings in the preset, which allows you to use the
-- same preset for up to four watermarks that have different dimensions.
--
-- See: presetWatermark smart constructor.
data PresetWatermark
-- | Creates a value of PresetWatermark with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - pwVerticalAlign - The vertical position of the watermark
-- unless you specify a non-zero value for VerticalOffset : *
-- Top : The top edge of the watermark is aligned with the top
-- border of the video. * Bottom : The bottom edge of the
-- watermark is aligned with the bottom border of the video. *
-- Center : The watermark is centered between the top and bottom
-- borders.
-- - pwSizingPolicy - A value that controls scaling of the
-- watermark: * Fit : Elastic Transcoder scales the watermark so
-- it matches the value that you specified in either MaxWidth or
-- MaxHeight without exceeding the other value. * Stretch
-- : Elastic Transcoder stretches the watermark to match the values that
-- you specified for MaxWidth and MaxHeight . If the
-- relative proportions of the watermark and the values of
-- MaxWidth and MaxHeight are different, the watermark
-- will be distorted. * ShrinkToFit : Elastic Transcoder scales
-- the watermark down so that its dimensions match the values that you
-- specified for at least one of MaxWidth and MaxHeight
-- without exceeding either value. If you specify this option, Elastic
-- Transcoder does not scale the watermark up.
-- - pwHorizontalOffset - The amount by which you want the
-- horizontal position of the watermark to be offset from the position
-- specified by HorizontalAlign: * number of pixels (px): The minimum
-- value is 0 pixels, and the maximum value is the value of MaxWidth. *
-- integer percentage (%): The range of valid values is 0 to 100. For
-- example, if you specify Left for HorizontalAlign and 5px for
-- HorizontalOffset , the left side of the watermark appears 5
-- pixels from the left border of the output video.
-- HorizontalOffset is only valid when the value of
-- HorizontalAlign is Left or Right . If you
-- specify an offset that causes the watermark to extend beyond the left
-- or right border and Elastic Transcoder has not added black bars, the
-- watermark is cropped. If Elastic Transcoder has added black bars, the
-- watermark extends into the black bars. If the watermark extends beyond
-- the black bars, it is cropped. Use the value of Target to
-- specify whether you want to include the black bars that are added by
-- Elastic Transcoder, if any, in the offset calculation.
-- - pwMaxHeight - The maximum height of the watermark in one of
-- the following formats: * number of pixels (px): The minimum value is
-- 16 pixels, and the maximum value is the value of MaxHeight .
-- * integer percentage (%): The range of valid values is 0 to 100. Use
-- the value of Target to specify whether you want Elastic
-- Transcoder to include the black bars that are added by Elastic
-- Transcoder, if any, in the calculation. If you specify the value in
-- pixels, it must be less than or equal to the value of
-- MaxHeight .
-- - pwOpacity - A percentage that indicates how much you want a
-- watermark to obscure the video in the location where it appears. Valid
-- values are 0 (the watermark is invisible) to 100 (the watermark
-- completely obscures the video in the specified location). The datatype
-- of Opacity is float. Elastic Transcoder supports transparent
-- .png graphics. If you use a transparent .png, the transparent portion
-- of the video appears as if you had specified a value of 0 for
-- Opacity . The .jpg file format doesn't support
-- transparency.
-- - pwVerticalOffset - VerticalOffset The amount by
-- which you want the vertical position of the watermark to be offset
-- from the position specified by VerticalAlign: * number of pixels (px):
-- The minimum value is 0 pixels, and the maximum value is the value of
-- MaxHeight . * integer percentage (%): The range of valid
-- values is 0 to 100. For example, if you specify Top for
-- VerticalAlign and 5px for VerticalOffset ,
-- the top of the watermark appears 5 pixels from the top border of the
-- output video. VerticalOffset is only valid when the value of
-- VerticalAlign is Top or Bottom. If you specify an offset that causes
-- the watermark to extend beyond the top or bottom border and Elastic
-- Transcoder has not added black bars, the watermark is cropped. If
-- Elastic Transcoder has added black bars, the watermark extends into
-- the black bars. If the watermark extends beyond the black bars, it is
-- cropped. Use the value of Target to specify whether you want
-- Elastic Transcoder to include the black bars that are added by Elastic
-- Transcoder, if any, in the offset calculation.
-- - pwMaxWidth - The maximum width of the watermark in one of
-- the following formats: * number of pixels (px): The minimum value is
-- 16 pixels, and the maximum value is the value of MaxWidth . *
-- integer percentage (%): The range of valid values is 0 to 100. Use the
-- value of Target to specify whether you want Elastic
-- Transcoder to include the black bars that are added by Elastic
-- Transcoder, if any, in the calculation. If you specify the value in
-- pixels, it must be less than or equal to the value of
-- MaxWidth .
-- - pwId - A unique identifier for the settings for one
-- watermark. The value of Id can be up to 40 characters
-- long.
-- - pwHorizontalAlign - The horizontal position of the
-- watermark unless you specify a non-zero value for
-- HorizontalOffset : * Left : The left edge of the
-- watermark is aligned with the left border of the video. * Right
-- : The right edge of the watermark is aligned with the right border of
-- the video. * Center : The watermark is centered between the
-- left and right borders.
-- - pwTarget - A value that determines how Elastic Transcoder
-- interprets values that you specified for HorizontalOffset ,
-- VerticalOffset , MaxWidth , and MaxHeight :
-- * Content : HorizontalOffset and
-- VerticalOffset values are calculated based on the borders of
-- the video excluding black bars added by Elastic Transcoder, if any. In
-- addition, MaxWidth and MaxHeight , if specified as a
-- percentage, are calculated based on the borders of the video excluding
-- black bars added by Elastic Transcoder, if any. * Frame :
-- HorizontalOffset and VerticalOffset values are
-- calculated based on the borders of the video including black bars
-- added by Elastic Transcoder, if any. In addition, MaxWidth
-- and MaxHeight , if specified as a percentage, are calculated
-- based on the borders of the video including black bars added by
-- Elastic Transcoder, if any.
--
presetWatermark :: PresetWatermark
-- | The vertical position of the watermark unless you specify a non-zero
-- value for VerticalOffset : * Top : The top edge of the
-- watermark is aligned with the top border of the video. * Bottom
-- : The bottom edge of the watermark is aligned with the bottom border
-- of the video. * Center : The watermark is centered between the
-- top and bottom borders.
pwVerticalAlign :: Lens' PresetWatermark (Maybe Text)
-- | A value that controls scaling of the watermark: * Fit : Elastic
-- Transcoder scales the watermark so it matches the value that you
-- specified in either MaxWidth or MaxHeight without
-- exceeding the other value. * Stretch : Elastic Transcoder
-- stretches the watermark to match the values that you specified for
-- MaxWidth and MaxHeight . If the relative proportions
-- of the watermark and the values of MaxWidth and
-- MaxHeight are different, the watermark will be distorted. *
-- ShrinkToFit : Elastic Transcoder scales the watermark down so
-- that its dimensions match the values that you specified for at least
-- one of MaxWidth and MaxHeight without exceeding
-- either value. If you specify this option, Elastic Transcoder does not
-- scale the watermark up.
pwSizingPolicy :: Lens' PresetWatermark (Maybe Text)
-- | The amount by which you want the horizontal position of the watermark
-- to be offset from the position specified by HorizontalAlign: * number
-- of pixels (px): The minimum value is 0 pixels, and the maximum value
-- is the value of MaxWidth. * integer percentage (%): The range of valid
-- values is 0 to 100. For example, if you specify Left for
-- HorizontalAlign and 5px for HorizontalOffset , the
-- left side of the watermark appears 5 pixels from the left border of
-- the output video. HorizontalOffset is only valid when the
-- value of HorizontalAlign is Left or Right .
-- If you specify an offset that causes the watermark to extend beyond
-- the left or right border and Elastic Transcoder has not added black
-- bars, the watermark is cropped. If Elastic Transcoder has added black
-- bars, the watermark extends into the black bars. If the watermark
-- extends beyond the black bars, it is cropped. Use the value of
-- Target to specify whether you want to include the black bars
-- that are added by Elastic Transcoder, if any, in the offset
-- calculation.
pwHorizontalOffset :: Lens' PresetWatermark (Maybe Text)
-- | The maximum height of the watermark in one of the following formats: *
-- number of pixels (px): The minimum value is 16 pixels, and the maximum
-- value is the value of MaxHeight . * integer percentage (%):
-- The range of valid values is 0 to 100. Use the value of
-- Target to specify whether you want Elastic Transcoder to
-- include the black bars that are added by Elastic Transcoder, if any,
-- in the calculation. If you specify the value in pixels, it must be
-- less than or equal to the value of MaxHeight .
pwMaxHeight :: Lens' PresetWatermark (Maybe Text)
-- | A percentage that indicates how much you want a watermark to obscure
-- the video in the location where it appears. Valid values are 0 (the
-- watermark is invisible) to 100 (the watermark completely obscures the
-- video in the specified location). The datatype of Opacity is
-- float. Elastic Transcoder supports transparent .png graphics. If you
-- use a transparent .png, the transparent portion of the video appears
-- as if you had specified a value of 0 for Opacity . The .jpg
-- file format doesn't support transparency.
pwOpacity :: Lens' PresetWatermark (Maybe Text)
-- | VerticalOffset The amount by which you want the vertical
-- position of the watermark to be offset from the position specified by
-- VerticalAlign: * number of pixels (px): The minimum value is 0 pixels,
-- and the maximum value is the value of MaxHeight . * integer
-- percentage (%): The range of valid values is 0 to 100. For example, if
-- you specify Top for VerticalAlign and 5px
-- for VerticalOffset , the top of the watermark appears 5
-- pixels from the top border of the output video.
-- VerticalOffset is only valid when the value of VerticalAlign
-- is Top or Bottom. If you specify an offset that causes the watermark
-- to extend beyond the top or bottom border and Elastic Transcoder has
-- not added black bars, the watermark is cropped. If Elastic Transcoder
-- has added black bars, the watermark extends into the black bars. If
-- the watermark extends beyond the black bars, it is cropped. Use the
-- value of Target to specify whether you want Elastic
-- Transcoder to include the black bars that are added by Elastic
-- Transcoder, if any, in the offset calculation.
pwVerticalOffset :: Lens' PresetWatermark (Maybe Text)
-- | The maximum width of the watermark in one of the following formats: *
-- number of pixels (px): The minimum value is 16 pixels, and the maximum
-- value is the value of MaxWidth . * integer percentage (%):
-- The range of valid values is 0 to 100. Use the value of
-- Target to specify whether you want Elastic Transcoder to
-- include the black bars that are added by Elastic Transcoder, if any,
-- in the calculation. If you specify the value in pixels, it must be
-- less than or equal to the value of MaxWidth .
pwMaxWidth :: Lens' PresetWatermark (Maybe Text)
-- | A unique identifier for the settings for one watermark. The value of
-- Id can be up to 40 characters long.
pwId :: Lens' PresetWatermark (Maybe Text)
-- | The horizontal position of the watermark unless you specify a non-zero
-- value for HorizontalOffset : * Left : The left edge of
-- the watermark is aligned with the left border of the video. *
-- Right : The right edge of the watermark is aligned with the
-- right border of the video. * Center : The watermark is centered
-- between the left and right borders.
pwHorizontalAlign :: Lens' PresetWatermark (Maybe Text)
-- | A value that determines how Elastic Transcoder interprets values that
-- you specified for HorizontalOffset , VerticalOffset
-- , MaxWidth , and MaxHeight : * Content :
-- HorizontalOffset and VerticalOffset values are
-- calculated based on the borders of the video excluding black bars
-- added by Elastic Transcoder, if any. In addition, MaxWidth
-- and MaxHeight , if specified as a percentage, are calculated
-- based on the borders of the video excluding black bars added by
-- Elastic Transcoder, if any. * Frame : HorizontalOffset
-- and VerticalOffset values are calculated based on the borders
-- of the video including black bars added by Elastic Transcoder, if any.
-- In addition, MaxWidth and MaxHeight , if specified
-- as a percentage, are calculated based on the borders of the video
-- including black bars added by Elastic Transcoder, if any.
pwTarget :: Lens' PresetWatermark (Maybe Text)
-- | Thumbnails for videos.
--
-- See: thumbnails smart constructor.
data Thumbnails
-- | Creates a value of Thumbnails with the minimum fields required
-- to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - tSizingPolicy - Specify one of the following values to
-- control scaling of thumbnails: * Fit : Elastic Transcoder
-- scales thumbnails so they match the value that you specified in
-- thumbnail MaxWidth or MaxHeight settings without exceeding the other
-- value. * Fill : Elastic Transcoder scales thumbnails so they
-- match the value that you specified in thumbnail MaxWidth or
-- MaxHeight settings and matches or exceeds the other value.
-- Elastic Transcoder centers the image in thumbnails and then crops in
-- the dimension (if any) that exceeds the maximum value. *
-- Stretch : Elastic Transcoder stretches thumbnails to match
-- the values that you specified for thumbnail MaxWidth and
-- MaxHeight settings. If the relative proportions of the input
-- video and thumbnails are different, the thumbnails will be distorted.
-- * Keep : Elastic Transcoder does not scale thumbnails. If
-- either dimension of the input video exceeds the values that you
-- specified for thumbnail MaxWidth and MaxHeight
-- settings, Elastic Transcoder crops the thumbnails. *
-- ShrinkToFit : Elastic Transcoder scales thumbnails down so
-- that their dimensions match the values that you specified for at least
-- one of thumbnail MaxWidth and MaxHeight without
-- exceeding either value. If you specify this option, Elastic Transcoder
-- does not scale thumbnails up. * ShrinkToFill : Elastic
-- Transcoder scales thumbnails down so that their dimensions match the
-- values that you specified for at least one of MaxWidth and
-- MaxHeight without dropping below either value. If you specify
-- this option, Elastic Transcoder does not scale thumbnails up.
-- - tFormat - The format of thumbnails, if any. Valid values
-- are jpg and png . You specify whether you want
-- Elastic Transcoder to create thumbnails when you create a job.
-- - tMaxHeight - The maximum height of thumbnails in pixels. If
-- you specify auto, Elastic Transcoder uses 1080 (Full HD) as the
-- default value. If you specify a numeric value, enter an even integer
-- between 32 and 3072.
-- - tResolution - Important: To better control
-- resolution and aspect ratio of thumbnails, we recommend that you use
-- the values MaxWidth , MaxHeight ,
-- SizingPolicy , and PaddingPolicy instead of
-- Resolution and AspectRatio . The two groups of
-- settings are mutually exclusive. Do not use them together. The width
-- and height of thumbnail files in pixels. Specify a value in the format
-- width x height where both values are
-- even integers. The values cannot exceed the width and height that you
-- specified in the Video:Resolution object.
-- - tAspectRatio - Important: To better control
-- resolution and aspect ratio of thumbnails, we recommend that you use
-- the values MaxWidth , MaxHeight ,
-- SizingPolicy , and PaddingPolicy instead of
-- Resolution and AspectRatio . The two groups of
-- settings are mutually exclusive. Do not use them together. The aspect
-- ratio of thumbnails. Valid values include: auto ,
-- 1:1 , 4:3 , 3:2 , 16:9 If you
-- specify auto , Elastic Transcoder tries to preserve the
-- aspect ratio of the video in the output file.
-- - tPaddingPolicy - When you set PaddingPolicy to
-- Pad , Elastic Transcoder may add black bars to the top and
-- bottom and/or left and right sides of thumbnails to make the total
-- size of the thumbnails match the values that you specified for
-- thumbnail MaxWidth and MaxHeight settings.
-- - tInterval - The approximate number of seconds between
-- thumbnails. Specify an integer value.
-- - tMaxWidth - The maximum width of thumbnails in pixels. If
-- you specify auto, Elastic Transcoder uses 1920 (Full HD) as the
-- default value. If you specify a numeric value, enter an even integer
-- between 32 and 4096.
--
thumbnails :: Thumbnails
-- | Specify one of the following values to control scaling of thumbnails:
-- * Fit : Elastic Transcoder scales thumbnails so they match
-- the value that you specified in thumbnail MaxWidth or MaxHeight
-- settings without exceeding the other value. * Fill : Elastic
-- Transcoder scales thumbnails so they match the value that you
-- specified in thumbnail MaxWidth or MaxHeight
-- settings and matches or exceeds the other value. Elastic Transcoder
-- centers the image in thumbnails and then crops in the dimension (if
-- any) that exceeds the maximum value. * Stretch : Elastic
-- Transcoder stretches thumbnails to match the values that you specified
-- for thumbnail MaxWidth and MaxHeight settings. If
-- the relative proportions of the input video and thumbnails are
-- different, the thumbnails will be distorted. * Keep : Elastic
-- Transcoder does not scale thumbnails. If either dimension of the input
-- video exceeds the values that you specified for thumbnail
-- MaxWidth and MaxHeight settings, Elastic Transcoder
-- crops the thumbnails. * ShrinkToFit : Elastic Transcoder
-- scales thumbnails down so that their dimensions match the values that
-- you specified for at least one of thumbnail MaxWidth and
-- MaxHeight without exceeding either value. If you specify this
-- option, Elastic Transcoder does not scale thumbnails up. *
-- ShrinkToFill : Elastic Transcoder scales thumbnails down so
-- that their dimensions match the values that you specified for at least
-- one of MaxWidth and MaxHeight without dropping below
-- either value. If you specify this option, Elastic Transcoder does not
-- scale thumbnails up.
tSizingPolicy :: Lens' Thumbnails (Maybe Text)
-- | The format of thumbnails, if any. Valid values are jpg and
-- png . You specify whether you want Elastic Transcoder to
-- create thumbnails when you create a job.
tFormat :: Lens' Thumbnails (Maybe Text)
-- | The maximum height of thumbnails in pixels. If you specify auto,
-- Elastic Transcoder uses 1080 (Full HD) as the default value. If you
-- specify a numeric value, enter an even integer between 32 and 3072.
tMaxHeight :: Lens' Thumbnails (Maybe Text)
-- | Important: To better control resolution and aspect ratio of
-- thumbnails, we recommend that you use the values MaxWidth ,
-- MaxHeight , SizingPolicy , and
-- PaddingPolicy instead of Resolution and
-- AspectRatio . The two groups of settings are mutually
-- exclusive. Do not use them together. The width and height of thumbnail
-- files in pixels. Specify a value in the format width
-- x height where both values are even integers. The
-- values cannot exceed the width and height that you specified in the
-- Video:Resolution object.
tResolution :: Lens' Thumbnails (Maybe Text)
-- | Important: To better control resolution and aspect ratio of
-- thumbnails, we recommend that you use the values MaxWidth ,
-- MaxHeight , SizingPolicy , and
-- PaddingPolicy instead of Resolution and
-- AspectRatio . The two groups of settings are mutually
-- exclusive. Do not use them together. The aspect ratio of thumbnails.
-- Valid values include: auto , 1:1 , 4:3 ,
-- 3:2 , 16:9 If you specify auto , Elastic
-- Transcoder tries to preserve the aspect ratio of the video in the
-- output file.
tAspectRatio :: Lens' Thumbnails (Maybe Text)
-- | When you set PaddingPolicy to Pad , Elastic
-- Transcoder may add black bars to the top and bottom and/or left and
-- right sides of thumbnails to make the total size of the thumbnails
-- match the values that you specified for thumbnail MaxWidth
-- and MaxHeight settings.
tPaddingPolicy :: Lens' Thumbnails (Maybe Text)
-- | The approximate number of seconds between thumbnails. Specify an
-- integer value.
tInterval :: Lens' Thumbnails (Maybe Text)
-- | The maximum width of thumbnails in pixels. If you specify auto,
-- Elastic Transcoder uses 1920 (Full HD) as the default value. If you
-- specify a numeric value, enter an even integer between 32 and 4096.
tMaxWidth :: Lens' Thumbnails (Maybe Text)
-- | Settings that determine when a clip begins and how long it lasts.
--
-- See: timeSpan smart constructor.
data TimeSpan
-- | Creates a value of TimeSpan with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - tsStartTime - The place in the input file where you want a
-- clip to start. The format can be either HH:mm:ss.SSS (maximum value:
-- 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum
-- value: 86399.999). If you don't specify a value, Elastic Transcoder
-- starts at the beginning of the input file.
-- - tsDuration - The duration of the clip. The format can be
-- either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths
-- of a second) or sssss.SSS (maximum value: 86399.999). If you don't
-- specify a value, Elastic Transcoder creates an output file from
-- StartTime to the end of the file. If you specify a value longer than
-- the duration of the input file, Elastic Transcoder transcodes the file
-- and returns a warning message.
--
timeSpan :: TimeSpan
-- | The place in the input file where you want a clip to start. The format
-- can be either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is
-- thousandths of a second) or sssss.SSS (maximum value: 86399.999). If
-- you don't specify a value, Elastic Transcoder starts at the beginning
-- of the input file.
tsStartTime :: Lens' TimeSpan (Maybe Text)
-- | The duration of the clip. The format can be either HH:mm:ss.SSS
-- (maximum value: 23:59:59.999; SSS is thousandths of a second) or
-- sssss.SSS (maximum value: 86399.999). If you don't specify a value,
-- Elastic Transcoder creates an output file from StartTime to the end of
-- the file. If you specify a value longer than the duration of the input
-- file, Elastic Transcoder transcodes the file and returns a warning
-- message.
tsDuration :: Lens' TimeSpan (Maybe Text)
-- | Details about the timing of a job.
--
-- See: timing smart constructor.
data Timing
-- | Creates a value of Timing with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - tSubmitTimeMillis - The time the job was submitted to
-- Elastic Transcoder, in epoch milliseconds.
-- - tFinishTimeMillis - The time the job finished transcoding,
-- in epoch milliseconds.
-- - tStartTimeMillis - The time the job began transcoding, in
-- epoch milliseconds.
--
timing :: Timing
-- | The time the job was submitted to Elastic Transcoder, in epoch
-- milliseconds.
tSubmitTimeMillis :: Lens' Timing (Maybe Integer)
-- | The time the job finished transcoding, in epoch milliseconds.
tFinishTimeMillis :: Lens' Timing (Maybe Integer)
-- | The time the job began transcoding, in epoch milliseconds.
tStartTimeMillis :: Lens' Timing (Maybe Integer)
-- | The VideoParameters structure.
--
-- See: videoParameters smart constructor.
data VideoParameters
-- | Creates a value of VideoParameters with the minimum fields
-- required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - vpKeyframesMaxDist - Applicable only when the value of
-- Video:Codec is one of H.264 , MPEG2 , or
-- VP8 . The maximum number of frames between key frames. Key
-- frames are fully encoded frames; the frames between key frames are
-- encoded based, in part, on the content of the key frames. The value is
-- an integer formatted as a string; valid values are between 1 (every
-- frame is a key frame) and 100000, inclusive. A higher value results in
-- higher compression but may also discernibly decrease video quality.
-- For Smooth outputs, the FrameRate must have a
-- constant ratio to the KeyframesMaxDist . This allows
-- Smooth playlists to switch between different quality levels
-- while the file is being played. For example, an input file can have a
-- FrameRate of 30 with a KeyframesMaxDist of 90. The
-- output file then needs to have a ratio of 1:3. Valid outputs would
-- have FrameRate of 30, 25, and 10, and
-- KeyframesMaxDist of 90, 75, and 30, respectively.
-- Alternately, this can be achieved by setting FrameRate to
-- auto and having the same values for MaxFrameRate and
-- KeyframesMaxDist .
-- - vpFrameRate - The frames per second for the video stream in
-- the output file. Valid values include: auto , 10 ,
-- 15 , 23.97 , 24 , 25 ,
-- 29.97 , 30 , 60 If you specify
-- auto , Elastic Transcoder uses the detected frame rate of the
-- input source. If you specify a frame rate, we recommend that you
-- perform the following calculation: Frame rate = maximum
-- recommended decoding speed in luma samplessecond (width in
-- pixels * height in pixels) where: * width in pixels and
-- height in pixels represent the Resolution of the output video.
-- * maximum recommended decoding speed in Luma samples/second is
-- less than or equal to the maximum value listed in the following table,
-- based on the value that you specified for Level. The maximum
-- recommended decoding speed in Luma samplessecond for each level is
-- described in the following list (Level - Decoding speed/ ): * 1 -
-- 380160 * 1b - 380160 * 1.1 - 76800 * 1.2 - 1536000 * 1.3 - 3041280 * 2
-- - 3041280 * 2.1 - 5068800 * 2.2 - 5184000 * 3 - 10368000 * 3.1 -
-- 27648000 * 3.2 - 55296000 * 4 - 62914560 * 4.1 - 62914560
-- - vpSizingPolicy - Specify one of the following values to
-- control scaling of the output video: * Fit : Elastic
-- Transcoder scales the output video so it matches the value that you
-- specified in either MaxWidth or MaxHeight without
-- exceeding the other value. * Fill : Elastic Transcoder scales
-- the output video so it matches the value that you specified in either
-- MaxWidth or MaxHeight and matches or exceeds the
-- other value. Elastic Transcoder centers the output video and then
-- crops it in the dimension (if any) that exceeds the maximum value. *
-- Stretch : Elastic Transcoder stretches the output video to
-- match the values that you specified for MaxWidth and
-- MaxHeight . If the relative proportions of the input video
-- and the output video are different, the output video will be
-- distorted. * Keep : Elastic Transcoder does not scale the
-- output video. If either dimension of the input video exceeds the
-- values that you specified for MaxWidth and MaxHeight
-- , Elastic Transcoder crops the output video. * ShrinkToFit :
-- Elastic Transcoder scales the output video down so that its dimensions
-- match the values that you specified for at least one of
-- MaxWidth and MaxHeight without exceeding either
-- value. If you specify this option, Elastic Transcoder does not scale
-- the video up. * ShrinkToFill : Elastic Transcoder scales the
-- output video down so that its dimensions match the values that you
-- specified for at least one of MaxWidth and MaxHeight
-- without dropping below either value. If you specify this option,
-- Elastic Transcoder does not scale the video up.
-- - vpMaxFrameRate - If you specify auto for
-- FrameRate , Elastic Transcoder uses the frame rate of the
-- input video for the frame rate of the output video. Specify the
-- maximum frame rate that you want Elastic Transcoder to use when the
-- frame rate of the input video is greater than the desired maximum
-- frame rate of the output video. Valid values include: 10 ,
-- 15 , 23.97 , 24 , 25 ,
-- 29.97 , 30 , 60 .
-- - vpMaxHeight - The maximum height of the output video in
-- pixels. If you specify auto , Elastic Transcoder uses 1080
-- (Full HD) as the default value. If you specify a numeric value, enter
-- an even integer between 96 and 3072.
-- - vpWatermarks - Settings for the size, location, and opacity
-- of graphics that you want Elastic Transcoder to overlay over videos
-- that are transcoded using this preset. You can specify settings for up
-- to four watermarks. Watermarks appear in the specified size and
-- location, and with the specified opacity for the duration of the
-- transcoded video. Watermarks can be in .png or .jpg format. If you
-- want to display a watermark that is not rectangular, use the .png
-- format, which supports transparency. When you create a job that uses
-- this preset, you specify the .png or .jpg graphics that you want
-- Elastic Transcoder to include in the transcoded videos. You can
-- specify fewer graphics in the job than you specify watermark settings
-- in the preset, which allows you to use the same preset for up to four
-- watermarks that have different dimensions.
-- - vpDisplayAspectRatio - The value that Elastic Transcoder
-- adds to the metadata in the output file.
-- - vpResolution - Important: To better control
-- resolution and aspect ratio of output videos, we recommend that you
-- use the values MaxWidth , MaxHeight ,
-- SizingPolicy , PaddingPolicy , and
-- DisplayAspectRatio instead of Resolution and
-- AspectRatio . The two groups of settings are mutually
-- exclusive. Do not use them together. The width and height of the video
-- in the output file, in pixels. Valid values are auto and
-- width x height : * auto : Elastic Transcoder
-- attempts to preserve the width and height of the input file, subject
-- to the following rules. * width x height : The
-- width and height of the output video in pixels. Note the following
-- about specifying the width and height: * The width must be an even
-- integer between 128 and 4096, inclusive. * The height must be an even
-- integer between 96 and 3072, inclusive. * If you specify a resolution
-- that is less than the resolution of the input file, Elastic Transcoder
-- rescales the output file to the lower resolution. * If you specify a
-- resolution that is greater than the resolution of the input file,
-- Elastic Transcoder rescales the output to the higher resolution. * We
-- recommend that you specify a resolution for which the product of width
-- and height is less than or equal to the applicable value in the
-- following list (List - Max width x height value ): * 1 - 25344
-- * 1b - 25344 * 1.1 - 101376 * 1.2 - 101376 * 1.3 - 101376 * 2 - 101376
-- * 2.1 - 202752 * 2.2 - 404720 * 3 - 404720 * 3.1 - 921600 * 3.2 -
-- 1310720 * 4 - 2097152 * 4.1 - 2097152
-- - vpCodec - The video codec for the output file. Valid values
-- include gif , H.264 , mpeg2 , vp8
-- , and vp9 . You can only specify vp8 and
-- vp9 when the container type is webm , gif
-- when the container type is gif , and mpeg2 when the
-- container type is mpg .
-- - vpAspectRatio - Important: To better control
-- resolution and aspect ratio of output videos, we recommend that you
-- use the values MaxWidth , MaxHeight ,
-- SizingPolicy , PaddingPolicy , and
-- DisplayAspectRatio instead of Resolution and
-- AspectRatio . The two groups of settings are mutually
-- exclusive. Do not use them together. The display aspect ratio of the
-- video in the output file. Valid values include: auto ,
-- 1:1 , 4:3 , 3:2 , 16:9 If you
-- specify auto , Elastic Transcoder tries to preserve the
-- aspect ratio of the input file. If you specify an aspect ratio for the
-- output file that differs from aspect ratio of the input file, Elastic
-- Transcoder adds pillarboxing (black bars on the sides) or letterboxing
-- (black bars on the top and bottom) to maintain the aspect ratio of the
-- active region of the video.
-- - vpPaddingPolicy - When you set PaddingPolicy to
-- Pad , Elastic Transcoder may add black bars to the top and
-- bottom and/or left and right sides of the output video to make the
-- total size of the output video match the values that you specified for
-- MaxWidth and MaxHeight .
-- - vpMaxWidth - The maximum width of the output video in
-- pixels. If you specify auto , Elastic Transcoder uses 1920
-- (Full HD) as the default value. If you specify a numeric value, enter
-- an even integer between 128 and 4096.
-- - vpBitRate - The bit rate of the video stream in the output
-- file, in kilobitssecond. Valid values depend on the values of
-- Level and Profile . If you specify auto ,
-- Elastic Transcoder uses the detected bit rate of the input source. If
-- you specify a value other than auto , we recommend that you
-- specify a value less than or equal to the maximum H.264-compliant
-- value listed for your level and profile: Level - Maximum video bit
-- rate in kilobits/second (baseline and main Profile) : maximum video
-- bit rate in kilobits/second (high Profile)/ * 1 - 64 : 80 * 1b - 128 :
-- 160 * 1.1 - 192 : 240 * 1.2 - 384 : 480 * 1.3 - 768 : 960 * 2 - 2000 :
-- 2500 * 3 - 10000 : 12500 * 3.1 - 14000 : 17500 * 3.2 - 20000 : 25000 *
-- 4 - 20000 : 25000 * 4.1 - 50000 : 62500
-- - vpFixedGOP - Applicable only when the value of Video:Codec
-- is one of H.264 , MPEG2 , or VP8 . Whether
-- to use a fixed value for FixedGOP . Valid values are
-- true and false : * true : Elastic
-- Transcoder uses the value of KeyframesMaxDist for the
-- distance between key frames (the number of frames in a group of
-- pictures, or GOP). * false : The distance between key frames
-- can vary. Important: FixedGOP must be set to
-- true for fmp4 containers.
-- - vpCodecOptions - Profile (H.264VP8VP9 Only)
-- The H.264 profile that you want to use for the output file. Elastic
-- Transcoder supports the following profiles: * baseline : The
-- profile most commonly used for videoconferencing and for mobile
-- applications. * main : The profile used for
-- standard-definition digital TV broadcasts. * high : The
-- profile used for high-definition digital TV broadcasts and for Blu-ray
-- discs. Level (H.264 Only) The H.264 level that you want to use
-- for the output file. Elastic Transcoder supports the following levels:
-- 1 , 1b , 1.1 , 1.2 , 1.3
-- , 2 , 2.1 , 2.2 , 3 , 3.1
-- , 3.2 , 4 , 4.1 MaxReferenceFrames
-- (H.264 Only) Applicable only when the value of Video:Codec is
-- H.264. The maximum number of previously decoded frames to use as a
-- reference for decoding future frames. Valid values are integers 0
-- through 16, but we recommend that you not use a value greater than the
-- following: Min(Floor(Maximum decoded picture buffer in macroblocks
-- * 256 / (Width in pixels * Height in pixels)), 16) where Width
-- in pixels and Height in pixels represent either MaxWidth
-- and MaxHeight, or Resolution. Maximum decoded picture buffer in
-- macroblocks depends on the value of the Level object. See
-- the list below. (A macroblock is a block of pixels measuring 16x16.) *
-- 1 - 396 * 1b - 396 * 1.1 - 900 * 1.2 - 2376 * 1.3 - 2376 * 2 - 2376 *
-- 2.1 - 4752 * 2.2 - 8100 * 3 - 8100 * 3.1 - 18000 * 3.2 - 20480 * 4 -
-- 32768 * 4.1 - 32768 MaxBitRate (Optional, H.264MPEG2VP8/VP9
-- only) The maximum number of bits per second in a video buffer; the
-- size of the buffer is specified by BufferSize . Specify a
-- value between 16 and 62,500. You can reduce the bandwidth required to
-- stream a video by reducing the maximum bit rate, but this also reduces
-- the quality of the video. BufferSize (Optional,
-- H.264MPEG2VP8/VP9 only) The maximum number of bits in any x
-- seconds of the output video. This window is commonly 10 seconds, the
-- standard segment duration when you're using FMP4 or MPEG-TS for the
-- container type of the output video. Specify an integer greater than 0.
-- If you specify MaxBitRate and omit BufferSize ,
-- Elastic Transcoder sets BufferSize to 10 times the value of
-- MaxBitRate . InterlacedMode (Optional, H.264/MPEG2
-- Only) The interlace mode for the output video. Interlaced video is
-- used to double the perceived frame rate for a video by interlacing two
-- fields (one field on every other line, the other field on the other
-- lines) so that the human eye registers multiple pictures per frame.
-- Interlacing reduces the bandwidth required for transmitting a video,
-- but can result in blurred images and flickering. Valid values include
-- Progressive (no interlacing, top to bottom),
-- TopFirst (top field first), BottomFirst (bottom
-- field first), and Auto . If InterlaceMode is not
-- specified, Elastic Transcoder uses Progressive for the
-- output. If Auto is specified, Elastic Transcoder interlaces
-- the output. ColorSpaceConversionMode (Optional, H.264/MPEG2
-- Only) The color space conversion Elastic Transcoder applies to the
-- output video. Color spaces are the algorithms used by the computer to
-- store information about how to render color. Bt.601 is the
-- standard for standard definition video, while Bt.709 is the
-- standard for high definition video. Valid values include None
-- , Bt709toBt601 , Bt601toBt709 , and Auto .
-- If you chose Auto for ColorSpaceConversionMode and
-- your output is interlaced, your frame rate is one of 23.97 ,
-- 24 , 25 , 29.97 , 50 , or
-- 60 , your SegmentDuration is null, and you are using
-- one of the resolution changes from the list below, Elastic Transcoder
-- applies the following color space conversions: * Standard to HD,
-- 720x480 to 1920x1080 - Elastic Transcoder applies
-- Bt601ToBt709 * Standard to HD, 720x576 to 1920x1080 -
-- Elastic Transcoder applies Bt601ToBt709 * HD to Standard,
-- 1920x1080 to 720x480 - Elastic Transcoder applies
-- Bt709ToBt601 * HD to Standard, 1920x1080 to 720x576 -
-- Elastic Transcoder applies Bt709ToBt601 If you do not specify
-- a ColorSpaceConversionMode , Elastic Transcoder does not
-- change the color space of a file. If you are unsure what
-- ColorSpaceConversionMode was applied to your output file, you
-- can check the AppliedColorSpaceConversion parameter included
-- in your job response. If your job does not have an
-- AppliedColorSpaceConversion in its response, no
-- ColorSpaceConversionMode was applied.
-- ChromaSubsampling The sampling pattern for the chroma (color)
-- channels of the output video. Valid values include yuv420p
-- and yuv422p . yuv420p samples the chroma information
-- of every other horizontal and every other vertical line,
-- yuv422p samples the color information of every horizontal
-- line and every other vertical line. LoopCount (Gif Only) The
-- number of times you want the output gif to loop. Valid values include
-- Infinite and integers between 0 and 100 ,
-- inclusive.
--
videoParameters :: VideoParameters
-- | Applicable only when the value of Video:Codec is one of H.264
-- , MPEG2 , or VP8 . The maximum number of frames
-- between key frames. Key frames are fully encoded frames; the frames
-- between key frames are encoded based, in part, on the content of the
-- key frames. The value is an integer formatted as a string; valid
-- values are between 1 (every frame is a key frame) and 100000,
-- inclusive. A higher value results in higher compression but may also
-- discernibly decrease video quality. For Smooth outputs, the
-- FrameRate must have a constant ratio to the
-- KeyframesMaxDist . This allows Smooth playlists to
-- switch between different quality levels while the file is being
-- played. For example, an input file can have a FrameRate of 30
-- with a KeyframesMaxDist of 90. The output file then needs to
-- have a ratio of 1:3. Valid outputs would have FrameRate of
-- 30, 25, and 10, and KeyframesMaxDist of 90, 75, and 30,
-- respectively. Alternately, this can be achieved by setting
-- FrameRate to auto and having the same values for
-- MaxFrameRate and KeyframesMaxDist .
vpKeyframesMaxDist :: Lens' VideoParameters (Maybe Text)
-- | The frames per second for the video stream in the output file. Valid
-- values include: auto , 10 , 15 ,
-- 23.97 , 24 , 25 , 29.97 ,
-- 30 , 60 If you specify auto , Elastic
-- Transcoder uses the detected frame rate of the input source. If you
-- specify a frame rate, we recommend that you perform the following
-- calculation: Frame rate = maximum recommended decoding speed in
-- luma samplessecond (width in pixels * height in pixels)
-- where: * width in pixels and height in pixels represent
-- the Resolution of the output video. * maximum recommended decoding
-- speed in Luma samples/second is less than or equal to the maximum
-- value listed in the following table, based on the value that you
-- specified for Level. The maximum recommended decoding speed in Luma
-- samplessecond for each level is described in the following list
-- (Level - Decoding speed/ ): * 1 - 380160 * 1b - 380160 * 1.1 -
-- 76800 * 1.2 - 1536000 * 1.3 - 3041280 * 2 - 3041280 * 2.1 - 5068800 *
-- 2.2 - 5184000 * 3 - 10368000 * 3.1 - 27648000 * 3.2 - 55296000 * 4 -
-- 62914560 * 4.1 - 62914560
vpFrameRate :: Lens' VideoParameters (Maybe Text)
-- | Specify one of the following values to control scaling of the output
-- video: * Fit : Elastic Transcoder scales the output video so
-- it matches the value that you specified in either MaxWidth or
-- MaxHeight without exceeding the other value. * Fill
-- : Elastic Transcoder scales the output video so it matches the value
-- that you specified in either MaxWidth or MaxHeight
-- and matches or exceeds the other value. Elastic Transcoder centers the
-- output video and then crops it in the dimension (if any) that exceeds
-- the maximum value. * Stretch : Elastic Transcoder stretches
-- the output video to match the values that you specified for
-- MaxWidth and MaxHeight . If the relative proportions
-- of the input video and the output video are different, the output
-- video will be distorted. * Keep : Elastic Transcoder does not
-- scale the output video. If either dimension of the input video exceeds
-- the values that you specified for MaxWidth and
-- MaxHeight , Elastic Transcoder crops the output video. *
-- ShrinkToFit : Elastic Transcoder scales the output video down
-- so that its dimensions match the values that you specified for at
-- least one of MaxWidth and MaxHeight without
-- exceeding either value. If you specify this option, Elastic Transcoder
-- does not scale the video up. * ShrinkToFill : Elastic
-- Transcoder scales the output video down so that its dimensions match
-- the values that you specified for at least one of MaxWidth
-- and MaxHeight without dropping below either value. If you
-- specify this option, Elastic Transcoder does not scale the video up.
vpSizingPolicy :: Lens' VideoParameters (Maybe Text)
-- | If you specify auto for FrameRate , Elastic
-- Transcoder uses the frame rate of the input video for the frame rate
-- of the output video. Specify the maximum frame rate that you want
-- Elastic Transcoder to use when the frame rate of the input video is
-- greater than the desired maximum frame rate of the output video. Valid
-- values include: 10 , 15 , 23.97 ,
-- 24 , 25 , 29.97 , 30 , 60
-- .
vpMaxFrameRate :: Lens' VideoParameters (Maybe Text)
-- | The maximum height of the output video in pixels. If you specify
-- auto , Elastic Transcoder uses 1080 (Full HD) as the default
-- value. If you specify a numeric value, enter an even integer between
-- 96 and 3072.
vpMaxHeight :: Lens' VideoParameters (Maybe Text)
-- | Settings for the size, location, and opacity of graphics that you want
-- Elastic Transcoder to overlay over videos that are transcoded using
-- this preset. You can specify settings for up to four watermarks.
-- Watermarks appear in the specified size and location, and with the
-- specified opacity for the duration of the transcoded video. Watermarks
-- can be in .png or .jpg format. If you want to display a watermark that
-- is not rectangular, use the .png format, which supports transparency.
-- When you create a job that uses this preset, you specify the .png or
-- .jpg graphics that you want Elastic Transcoder to include in the
-- transcoded videos. You can specify fewer graphics in the job than you
-- specify watermark settings in the preset, which allows you to use the
-- same preset for up to four watermarks that have different dimensions.
vpWatermarks :: Lens' VideoParameters [PresetWatermark]
-- | The value that Elastic Transcoder adds to the metadata in the output
-- file.
vpDisplayAspectRatio :: Lens' VideoParameters (Maybe Text)
-- | Important: To better control resolution and aspect ratio of
-- output videos, we recommend that you use the values MaxWidth
-- , MaxHeight , SizingPolicy , PaddingPolicy
-- , and DisplayAspectRatio instead of Resolution and
-- AspectRatio . The two groups of settings are mutually
-- exclusive. Do not use them together. The width and height of the video
-- in the output file, in pixels. Valid values are auto and
-- width x height : * auto : Elastic Transcoder
-- attempts to preserve the width and height of the input file, subject
-- to the following rules. * width x height : The
-- width and height of the output video in pixels. Note the following
-- about specifying the width and height: * The width must be an even
-- integer between 128 and 4096, inclusive. * The height must be an even
-- integer between 96 and 3072, inclusive. * If you specify a resolution
-- that is less than the resolution of the input file, Elastic Transcoder
-- rescales the output file to the lower resolution. * If you specify a
-- resolution that is greater than the resolution of the input file,
-- Elastic Transcoder rescales the output to the higher resolution. * We
-- recommend that you specify a resolution for which the product of width
-- and height is less than or equal to the applicable value in the
-- following list (List - Max width x height value ): * 1 - 25344
-- * 1b - 25344 * 1.1 - 101376 * 1.2 - 101376 * 1.3 - 101376 * 2 - 101376
-- * 2.1 - 202752 * 2.2 - 404720 * 3 - 404720 * 3.1 - 921600 * 3.2 -
-- 1310720 * 4 - 2097152 * 4.1 - 2097152
vpResolution :: Lens' VideoParameters (Maybe Text)
-- | The video codec for the output file. Valid values include gif
-- , H.264 , mpeg2 , vp8 , and vp9 .
-- You can only specify vp8 and vp9 when the container
-- type is webm , gif when the container type is
-- gif , and mpeg2 when the container type is
-- mpg .
vpCodec :: Lens' VideoParameters (Maybe Text)
-- | Important: To better control resolution and aspect ratio of
-- output videos, we recommend that you use the values MaxWidth
-- , MaxHeight , SizingPolicy , PaddingPolicy
-- , and DisplayAspectRatio instead of Resolution and
-- AspectRatio . The two groups of settings are mutually
-- exclusive. Do not use them together. The display aspect ratio of the
-- video in the output file. Valid values include: auto ,
-- 1:1 , 4:3 , 3:2 , 16:9 If you
-- specify auto , Elastic Transcoder tries to preserve the
-- aspect ratio of the input file. If you specify an aspect ratio for the
-- output file that differs from aspect ratio of the input file, Elastic
-- Transcoder adds pillarboxing (black bars on the sides) or letterboxing
-- (black bars on the top and bottom) to maintain the aspect ratio of the
-- active region of the video.
vpAspectRatio :: Lens' VideoParameters (Maybe Text)
-- | When you set PaddingPolicy to Pad , Elastic
-- Transcoder may add black bars to the top and bottom and/or left and
-- right sides of the output video to make the total size of the output
-- video match the values that you specified for MaxWidth and
-- MaxHeight .
vpPaddingPolicy :: Lens' VideoParameters (Maybe Text)
-- | The maximum width of the output video in pixels. If you specify
-- auto , Elastic Transcoder uses 1920 (Full HD) as the default
-- value. If you specify a numeric value, enter an even integer between
-- 128 and 4096.
vpMaxWidth :: Lens' VideoParameters (Maybe Text)
-- | The bit rate of the video stream in the output file, in
-- kilobitssecond. Valid values depend on the values of Level
-- and Profile . If you specify auto , Elastic
-- Transcoder uses the detected bit rate of the input source. If you
-- specify a value other than auto , we recommend that you
-- specify a value less than or equal to the maximum H.264-compliant
-- value listed for your level and profile: Level - Maximum video bit
-- rate in kilobits/second (baseline and main Profile) : maximum video
-- bit rate in kilobits/second (high Profile)/ * 1 - 64 : 80 * 1b - 128 :
-- 160 * 1.1 - 192 : 240 * 1.2 - 384 : 480 * 1.3 - 768 : 960 * 2 - 2000 :
-- 2500 * 3 - 10000 : 12500 * 3.1 - 14000 : 17500 * 3.2 - 20000 : 25000 *
-- 4 - 20000 : 25000 * 4.1 - 50000 : 62500
vpBitRate :: Lens' VideoParameters (Maybe Text)
-- | Applicable only when the value of Video:Codec is one of H.264
-- , MPEG2 , or VP8 . Whether to use a fixed value for
-- FixedGOP . Valid values are true and false
-- : * true : Elastic Transcoder uses the value of
-- KeyframesMaxDist for the distance between key frames (the
-- number of frames in a group of pictures, or GOP). * false :
-- The distance between key frames can vary. Important:
-- FixedGOP must be set to true for fmp4
-- containers.
vpFixedGOP :: Lens' VideoParameters (Maybe Text)
-- | Profile (H.264VP8VP9 Only) The H.264 profile that you
-- want to use for the output file. Elastic Transcoder supports the
-- following profiles: * baseline : The profile most commonly
-- used for videoconferencing and for mobile applications. *
-- main : The profile used for standard-definition digital TV
-- broadcasts. * high : The profile used for high-definition
-- digital TV broadcasts and for Blu-ray discs. Level (H.264 Only)
-- The H.264 level that you want to use for the output file. Elastic
-- Transcoder supports the following levels: 1 , 1b ,
-- 1.1 , 1.2 , 1.3 , 2 , 2.1
-- , 2.2 , 3 , 3.1 , 3.2 , 4
-- , 4.1 MaxReferenceFrames (H.264 Only) Applicable only
-- when the value of Video:Codec is H.264. The maximum number of
-- previously decoded frames to use as a reference for decoding future
-- frames. Valid values are integers 0 through 16, but we recommend that
-- you not use a value greater than the following: Min(Floor(Maximum
-- decoded picture buffer in macroblocks * 256 / (Width in pixels *
-- Height in pixels)), 16) where Width in pixels and
-- Height in pixels represent either MaxWidth and MaxHeight, or
-- Resolution. Maximum decoded picture buffer in macroblocks
-- depends on the value of the Level object. See the list below.
-- (A macroblock is a block of pixels measuring 16x16.) * 1 - 396 * 1b -
-- 396 * 1.1 - 900 * 1.2 - 2376 * 1.3 - 2376 * 2 - 2376 * 2.1 - 4752 *
-- 2.2 - 8100 * 3 - 8100 * 3.1 - 18000 * 3.2 - 20480 * 4 - 32768 * 4.1 -
-- 32768 MaxBitRate (Optional, H.264MPEG2VP8/VP9 only) The
-- maximum number of bits per second in a video buffer; the size of the
-- buffer is specified by BufferSize . Specify a value between
-- 16 and 62,500. You can reduce the bandwidth required to stream a video
-- by reducing the maximum bit rate, but this also reduces the quality of
-- the video. BufferSize (Optional, H.264MPEG2VP8/VP9 only)
-- The maximum number of bits in any x seconds of the output video. This
-- window is commonly 10 seconds, the standard segment duration when
-- you're using FMP4 or MPEG-TS for the container type of the output
-- video. Specify an integer greater than 0. If you specify
-- MaxBitRate and omit BufferSize , Elastic Transcoder
-- sets BufferSize to 10 times the value of MaxBitRate
-- . InterlacedMode (Optional, H.264/MPEG2 Only) The interlace
-- mode for the output video. Interlaced video is used to double the
-- perceived frame rate for a video by interlacing two fields (one field
-- on every other line, the other field on the other lines) so that the
-- human eye registers multiple pictures per frame. Interlacing reduces
-- the bandwidth required for transmitting a video, but can result in
-- blurred images and flickering. Valid values include
-- Progressive (no interlacing, top to bottom),
-- TopFirst (top field first), BottomFirst (bottom
-- field first), and Auto . If InterlaceMode is not
-- specified, Elastic Transcoder uses Progressive for the
-- output. If Auto is specified, Elastic Transcoder interlaces
-- the output. ColorSpaceConversionMode (Optional, H.264/MPEG2
-- Only) The color space conversion Elastic Transcoder applies to the
-- output video. Color spaces are the algorithms used by the computer to
-- store information about how to render color. Bt.601 is the
-- standard for standard definition video, while Bt.709 is the
-- standard for high definition video. Valid values include None
-- , Bt709toBt601 , Bt601toBt709 , and Auto .
-- If you chose Auto for ColorSpaceConversionMode and
-- your output is interlaced, your frame rate is one of 23.97 ,
-- 24 , 25 , 29.97 , 50 , or
-- 60 , your SegmentDuration is null, and you are using
-- one of the resolution changes from the list below, Elastic Transcoder
-- applies the following color space conversions: * Standard to HD,
-- 720x480 to 1920x1080 - Elastic Transcoder applies
-- Bt601ToBt709 * Standard to HD, 720x576 to 1920x1080 -
-- Elastic Transcoder applies Bt601ToBt709 * HD to Standard,
-- 1920x1080 to 720x480 - Elastic Transcoder applies
-- Bt709ToBt601 * HD to Standard, 1920x1080 to 720x576 -
-- Elastic Transcoder applies Bt709ToBt601 If you do not specify
-- a ColorSpaceConversionMode , Elastic Transcoder does not
-- change the color space of a file. If you are unsure what
-- ColorSpaceConversionMode was applied to your output file, you
-- can check the AppliedColorSpaceConversion parameter included
-- in your job response. If your job does not have an
-- AppliedColorSpaceConversion in its response, no
-- ColorSpaceConversionMode was applied.
-- ChromaSubsampling The sampling pattern for the chroma (color)
-- channels of the output video. Valid values include yuv420p
-- and yuv422p . yuv420p samples the chroma information
-- of every other horizontal and every other vertical line,
-- yuv422p samples the color information of every horizontal
-- line and every other vertical line. LoopCount (Gif Only) The
-- number of times you want the output gif to loop. Valid values include
-- Infinite and integers between 0 and 100 ,
-- inclusive.
vpCodecOptions :: Lens' VideoParameters (HashMap Text Text)
-- | Elastic Transcoder returns a warning if the resources used by your
-- pipeline are not in the same region as the pipeline.
--
-- Using resources in the same region, such as your Amazon S3 buckets,
-- Amazon SNS notification topics, and AWS KMS key, reduces processing
-- time and prevents cross-regional charges.
--
-- See: warning smart constructor.
data Warning
-- | Creates a value of Warning with the minimum fields required to
-- make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
--
-- - wCode - The code of the cross-regional warning.
-- - wMessage - The message explaining what resources are in a
-- different region from the pipeline.
--
warning :: Warning
-- | The code of the cross-regional warning.
wCode :: Lens' Warning (Maybe Text)
-- | The message explaining what resources are in a different region from
-- the pipeline.
wMessage :: Lens' Warning (Maybe Text)