codecOptions property
Profile (H.264/VP8/VP9 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.
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
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.264/MPEG2/VP8/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
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.
Implementation
final Map<String, String>? codecOptions;