public static interface H264Settings.Builder extends SdkPojo, CopyableBuilder<H264Settings.Builder,H264Settings>
| Modifier and Type | Method and Description |
|---|---|
H264Settings.Builder |
adaptiveQuantization(H264AdaptiveQuantization adaptiveQuantization)
Keep the default value, Auto (AUTO), for this setting to have MediaConvert automatically apply the best types
of quantization for your video content.
|
H264Settings.Builder |
adaptiveQuantization(String adaptiveQuantization)
Keep the default value, Auto (AUTO), for this setting to have MediaConvert automatically apply the best types
of quantization for your video content.
|
H264Settings.Builder |
bandwidthReductionFilter(BandwidthReductionFilter bandwidthReductionFilter)
The Bandwidth reduction filter increases the video quality of your output relative to its bitrate.
|
default H264Settings.Builder |
bandwidthReductionFilter(Consumer<BandwidthReductionFilter.Builder> bandwidthReductionFilter)
The Bandwidth reduction filter increases the video quality of your output relative to its bitrate.
|
H264Settings.Builder |
bitrate(Integer bitrate)
Specify the average bitrate in bits per second.
|
H264Settings.Builder |
codecLevel(H264CodecLevel codecLevel)
Specify an H.264 level that is consistent with your output video settings.
|
H264Settings.Builder |
codecLevel(String codecLevel)
Specify an H.264 level that is consistent with your output video settings.
|
H264Settings.Builder |
codecProfile(H264CodecProfile codecProfile)
H.264 Profile.
|
H264Settings.Builder |
codecProfile(String codecProfile)
H.264 Profile.
|
H264Settings.Builder |
dynamicSubGop(H264DynamicSubGop dynamicSubGop)
Specify whether to allow the number of B-frames in your output GOP structure to vary or not depending on your
input video content.
|
H264Settings.Builder |
dynamicSubGop(String dynamicSubGop)
Specify whether to allow the number of B-frames in your output GOP structure to vary or not depending on your
input video content.
|
H264Settings.Builder |
entropyEncoding(H264EntropyEncoding entropyEncoding)
Entropy encoding mode.
|
H264Settings.Builder |
entropyEncoding(String entropyEncoding)
Entropy encoding mode.
|
H264Settings.Builder |
fieldEncoding(H264FieldEncoding fieldEncoding)
The video encoding method for your MPEG-4 AVC output.
|
H264Settings.Builder |
fieldEncoding(String fieldEncoding)
The video encoding method for your MPEG-4 AVC output.
|
H264Settings.Builder |
flickerAdaptiveQuantization(H264FlickerAdaptiveQuantization flickerAdaptiveQuantization)
Only use this setting when you change the default value, AUTO, for the setting H264AdaptiveQuantization.
|
H264Settings.Builder |
flickerAdaptiveQuantization(String flickerAdaptiveQuantization)
Only use this setting when you change the default value, AUTO, for the setting H264AdaptiveQuantization.
|
H264Settings.Builder |
framerateControl(H264FramerateControl framerateControl)
If you are using the console, use the Framerate setting to specify the frame rate for this output.
|
H264Settings.Builder |
framerateControl(String framerateControl)
If you are using the console, use the Framerate setting to specify the frame rate for this output.
|
H264Settings.Builder |
framerateConversionAlgorithm(H264FramerateConversionAlgorithm framerateConversionAlgorithm)
Choose the method that you want MediaConvert to use when increasing or decreasing the frame rate.
|
H264Settings.Builder |
framerateConversionAlgorithm(String framerateConversionAlgorithm)
Choose the method that you want MediaConvert to use when increasing or decreasing the frame rate.
|
H264Settings.Builder |
framerateDenominator(Integer framerateDenominator)
When you use the API for transcode jobs that use frame rate conversion, specify the frame rate as a fraction.
|
H264Settings.Builder |
framerateNumerator(Integer framerateNumerator)
When you use the API for transcode jobs that use frame rate conversion, specify the frame rate as a fraction.
|
H264Settings.Builder |
gopBReference(H264GopBReference gopBReference)
Specify whether to allow B-frames to be referenced by other frame types.
|
H264Settings.Builder |
gopBReference(String gopBReference)
Specify whether to allow B-frames to be referenced by other frame types.
|
H264Settings.Builder |
gopClosedCadence(Integer gopClosedCadence)
Specify the relative frequency of open to closed GOPs in this output.
|
H264Settings.Builder |
gopSize(Double gopSize)
Use this setting only when you set GOP mode control (GopSizeUnits) to Specified, frames (FRAMES) or
Specified, seconds (SECONDS).
|
H264Settings.Builder |
gopSizeUnits(H264GopSizeUnits gopSizeUnits)
Specify how the transcoder determines GOP size for this output.
|
H264Settings.Builder |
gopSizeUnits(String gopSizeUnits)
Specify how the transcoder determines GOP size for this output.
|
H264Settings.Builder |
hrdBufferFinalFillPercentage(Integer hrdBufferFinalFillPercentage)
If your downstream systems have strict buffer requirements: Specify the minimum percentage of the HRD buffer
that's available at the end of each encoded video segment.
|
H264Settings.Builder |
hrdBufferInitialFillPercentage(Integer hrdBufferInitialFillPercentage)
Percentage of the buffer that should initially be filled (HRD buffer model).
|
H264Settings.Builder |
hrdBufferSize(Integer hrdBufferSize)
Size of buffer (HRD buffer model) in bits.
|
H264Settings.Builder |
interlaceMode(H264InterlaceMode interlaceMode)
Choose the scan line type for the output.
|
H264Settings.Builder |
interlaceMode(String interlaceMode)
Choose the scan line type for the output.
|
H264Settings.Builder |
maxBitrate(Integer maxBitrate)
Maximum bitrate in bits/second.
|
H264Settings.Builder |
minIInterval(Integer minIInterval)
Use this setting only when you also enable Scene change detection (SceneChangeDetect).
|
H264Settings.Builder |
numberBFramesBetweenReferenceFrames(Integer numberBFramesBetweenReferenceFrames)
Specify the number of B-frames between reference frames in this output.
|
H264Settings.Builder |
numberReferenceFrames(Integer numberReferenceFrames)
Number of reference frames to use.
|
H264Settings.Builder |
parControl(H264ParControl parControl)
Optional.
|
H264Settings.Builder |
parControl(String parControl)
Optional.
|
H264Settings.Builder |
parDenominator(Integer parDenominator)
Required when you set Pixel aspect ratio (parControl) to SPECIFIED.
|
H264Settings.Builder |
parNumerator(Integer parNumerator)
Required when you set Pixel aspect ratio (parControl) to SPECIFIED.
|
H264Settings.Builder |
qualityTuningLevel(H264QualityTuningLevel qualityTuningLevel)
The Quality tuning level you choose represents a trade-off between the encoding speed of your job and the
output video quality.
|
H264Settings.Builder |
qualityTuningLevel(String qualityTuningLevel)
The Quality tuning level you choose represents a trade-off between the encoding speed of your job and the
output video quality.
|
default H264Settings.Builder |
qvbrSettings(Consumer<H264QvbrSettings.Builder> qvbrSettings)
Settings for quality-defined variable bitrate encoding with the H.265 codec.
|
H264Settings.Builder |
qvbrSettings(H264QvbrSettings qvbrSettings)
Settings for quality-defined variable bitrate encoding with the H.265 codec.
|
H264Settings.Builder |
rateControlMode(H264RateControlMode rateControlMode)
Use this setting to specify whether this output has a variable bitrate (VBR), constant bitrate (CBR) or
quality-defined variable bitrate (QVBR).
|
H264Settings.Builder |
rateControlMode(String rateControlMode)
Use this setting to specify whether this output has a variable bitrate (VBR), constant bitrate (CBR) or
quality-defined variable bitrate (QVBR).
|
H264Settings.Builder |
repeatPps(H264RepeatPps repeatPps)
Places a PPS header on each encoded picture, even if repeated.
|
H264Settings.Builder |
repeatPps(String repeatPps)
Places a PPS header on each encoded picture, even if repeated.
|
H264Settings.Builder |
scanTypeConversionMode(H264ScanTypeConversionMode scanTypeConversionMode)
Use this setting for interlaced outputs, when your output frame rate is half of your input frame rate.
|
H264Settings.Builder |
scanTypeConversionMode(String scanTypeConversionMode)
Use this setting for interlaced outputs, when your output frame rate is half of your input frame rate.
|
H264Settings.Builder |
sceneChangeDetect(H264SceneChangeDetect sceneChangeDetect)
Enable this setting to insert I-frames at scene changes that the service automatically detects.
|
H264Settings.Builder |
sceneChangeDetect(String sceneChangeDetect)
Enable this setting to insert I-frames at scene changes that the service automatically detects.
|
H264Settings.Builder |
slices(Integer slices)
Number of slices per picture.
|
H264Settings.Builder |
slowPal(H264SlowPal slowPal)
Ignore this setting unless your input frame rate is 23.976 or 24 frames per second (fps).
|
H264Settings.Builder |
slowPal(String slowPal)
Ignore this setting unless your input frame rate is 23.976 or 24 frames per second (fps).
|
H264Settings.Builder |
softness(Integer softness)
Ignore this setting unless you need to comply with a specification that requires a specific value.
|
H264Settings.Builder |
spatialAdaptiveQuantization(H264SpatialAdaptiveQuantization spatialAdaptiveQuantization)
Only use this setting when you change the default value, Auto (AUTO), for the setting
H264AdaptiveQuantization.
|
H264Settings.Builder |
spatialAdaptiveQuantization(String spatialAdaptiveQuantization)
Only use this setting when you change the default value, Auto (AUTO), for the setting
H264AdaptiveQuantization.
|
H264Settings.Builder |
syntax(H264Syntax syntax)
Produces a bitstream compliant with SMPTE RP-2027.
|
H264Settings.Builder |
syntax(String syntax)
Produces a bitstream compliant with SMPTE RP-2027.
|
H264Settings.Builder |
telecine(H264Telecine telecine)
When you do frame rate conversion from 23.976 frames per second (fps) to 29.97 fps, and your output scan type
is interlaced, you can optionally enable hard or soft telecine to create a smoother picture.
|
H264Settings.Builder |
telecine(String telecine)
When you do frame rate conversion from 23.976 frames per second (fps) to 29.97 fps, and your output scan type
is interlaced, you can optionally enable hard or soft telecine to create a smoother picture.
|
H264Settings.Builder |
temporalAdaptiveQuantization(H264TemporalAdaptiveQuantization temporalAdaptiveQuantization)
Only use this setting when you change the default value, AUTO, for the setting H264AdaptiveQuantization.
|
H264Settings.Builder |
temporalAdaptiveQuantization(String temporalAdaptiveQuantization)
Only use this setting when you change the default value, AUTO, for the setting H264AdaptiveQuantization.
|
H264Settings.Builder |
unregisteredSeiTimecode(H264UnregisteredSeiTimecode unregisteredSeiTimecode)
Inserts timecode for each frame as 4 bytes of an unregistered SEI message.
|
H264Settings.Builder |
unregisteredSeiTimecode(String unregisteredSeiTimecode)
Inserts timecode for each frame as 4 bytes of an unregistered SEI message.
|
equalsBySdkFields, sdkFieldscopyapplyMutation, buildH264Settings.Builder adaptiveQuantization(String adaptiveQuantization)
adaptiveQuantization - Keep the default value, Auto (AUTO), for this setting to have MediaConvert automatically apply the
best types of quantization for your video content. When you want to apply your quantization settings
manually, you must set H264AdaptiveQuantization to a value other than Auto (AUTO). Use this setting to
specify the strength of any adaptive quantization filters that you enable. If you don't want
MediaConvert to do any adaptive quantization in this transcode, set Adaptive quantization
(H264AdaptiveQuantization) to Off (OFF). Related settings: The value that you choose here applies to
the following settings: H264FlickerAdaptiveQuantization, H264SpatialAdaptiveQuantization, and
H264TemporalAdaptiveQuantization.H264AdaptiveQuantization,
H264AdaptiveQuantizationH264Settings.Builder adaptiveQuantization(H264AdaptiveQuantization adaptiveQuantization)
adaptiveQuantization - Keep the default value, Auto (AUTO), for this setting to have MediaConvert automatically apply the
best types of quantization for your video content. When you want to apply your quantization settings
manually, you must set H264AdaptiveQuantization to a value other than Auto (AUTO). Use this setting to
specify the strength of any adaptive quantization filters that you enable. If you don't want
MediaConvert to do any adaptive quantization in this transcode, set Adaptive quantization
(H264AdaptiveQuantization) to Off (OFF). Related settings: The value that you choose here applies to
the following settings: H264FlickerAdaptiveQuantization, H264SpatialAdaptiveQuantization, and
H264TemporalAdaptiveQuantization.H264AdaptiveQuantization,
H264AdaptiveQuantizationH264Settings.Builder bandwidthReductionFilter(BandwidthReductionFilter bandwidthReductionFilter)
bandwidthReductionFilter - The Bandwidth reduction filter increases the video quality of your output relative to its bitrate. Use
to lower the bitrate of your constant quality QVBR output, with little or no perceptual decrease in
quality. Or, use to increase the video quality of outputs with other rate control modes relative to
the bitrate that you specify. Bandwidth reduction increases further when your input is low quality or
noisy. Outputs that use this feature incur pro-tier pricing. When you include Bandwidth reduction
filter, you cannot include the Noise reducer preprocessor.default H264Settings.Builder bandwidthReductionFilter(Consumer<BandwidthReductionFilter.Builder> bandwidthReductionFilter)
BandwidthReductionFilter.Builder avoiding the need to create one manually via
BandwidthReductionFilter.builder().
When the Consumer completes, SdkBuilder.build() is called immediately
and its result is passed to bandwidthReductionFilter(BandwidthReductionFilter).
bandwidthReductionFilter - a consumer that will call methods on BandwidthReductionFilter.BuilderbandwidthReductionFilter(BandwidthReductionFilter)H264Settings.Builder bitrate(Integer bitrate)
bitrate - Specify the average bitrate in bits per second. Required for VBR and CBR. For MS Smooth outputs,
bitrates must be unique when rounded down to the nearest multiple of 1000.H264Settings.Builder codecLevel(String codecLevel)
codecLevel - Specify an H.264 level that is consistent with your output video settings. If you aren't sure what
level to specify, choose Auto (AUTO).H264CodecLevel,
H264CodecLevelH264Settings.Builder codecLevel(H264CodecLevel codecLevel)
codecLevel - Specify an H.264 level that is consistent with your output video settings. If you aren't sure what
level to specify, choose Auto (AUTO).H264CodecLevel,
H264CodecLevelH264Settings.Builder codecProfile(String codecProfile)
codecProfile - H.264 Profile. High 4:2:2 and 10-bit profiles are only available with the AVC-I License.H264CodecProfile,
H264CodecProfileH264Settings.Builder codecProfile(H264CodecProfile codecProfile)
codecProfile - H.264 Profile. High 4:2:2 and 10-bit profiles are only available with the AVC-I License.H264CodecProfile,
H264CodecProfileH264Settings.Builder dynamicSubGop(String dynamicSubGop)
dynamicSubGop - Specify whether to allow the number of B-frames in your output GOP structure to vary or not depending
on your input video content. To improve the subjective video quality of your output that has
high-motion content: Leave blank or keep the default value Adaptive. MediaConvert will use fewer
B-frames for high-motion video content than low-motion content. The maximum number of B- frames is
limited by the value that you choose for B-frames between reference frames. To use the same number
B-frames for all types of content: Choose Static.H264DynamicSubGop,
H264DynamicSubGopH264Settings.Builder dynamicSubGop(H264DynamicSubGop dynamicSubGop)
dynamicSubGop - Specify whether to allow the number of B-frames in your output GOP structure to vary or not depending
on your input video content. To improve the subjective video quality of your output that has
high-motion content: Leave blank or keep the default value Adaptive. MediaConvert will use fewer
B-frames for high-motion video content than low-motion content. The maximum number of B- frames is
limited by the value that you choose for B-frames between reference frames. To use the same number
B-frames for all types of content: Choose Static.H264DynamicSubGop,
H264DynamicSubGopH264Settings.Builder entropyEncoding(String entropyEncoding)
entropyEncoding - Entropy encoding mode. Use CABAC (must be in Main or High profile) or CAVLC.H264EntropyEncoding,
H264EntropyEncodingH264Settings.Builder entropyEncoding(H264EntropyEncoding entropyEncoding)
entropyEncoding - Entropy encoding mode. Use CABAC (must be in Main or High profile) or CAVLC.H264EntropyEncoding,
H264EntropyEncodingH264Settings.Builder fieldEncoding(String fieldEncoding)
fieldEncoding - The video encoding method for your MPEG-4 AVC output. Keep the default value, PAFF, to have
MediaConvert use PAFF encoding for interlaced outputs. Choose Force field (FORCE_FIELD) to disable
PAFF encoding and create separate interlaced fields. Choose MBAFF to disable PAFF and have
MediaConvert use MBAFF encoding for interlaced outputs.H264FieldEncoding,
H264FieldEncodingH264Settings.Builder fieldEncoding(H264FieldEncoding fieldEncoding)
fieldEncoding - The video encoding method for your MPEG-4 AVC output. Keep the default value, PAFF, to have
MediaConvert use PAFF encoding for interlaced outputs. Choose Force field (FORCE_FIELD) to disable
PAFF encoding and create separate interlaced fields. Choose MBAFF to disable PAFF and have
MediaConvert use MBAFF encoding for interlaced outputs.H264FieldEncoding,
H264FieldEncodingH264Settings.Builder flickerAdaptiveQuantization(String flickerAdaptiveQuantization)
flickerAdaptiveQuantization - Only use this setting when you change the default value, AUTO, for the setting
H264AdaptiveQuantization. When you keep all defaults, excluding H264AdaptiveQuantization and all other
adaptive quantization from your JSON job specification, MediaConvert automatically applies the best
types of quantization for your video content. When you set H264AdaptiveQuantization to a value other
than AUTO, the default value for H264FlickerAdaptiveQuantization is Disabled (DISABLED). Change this
value to Enabled (ENABLED) to reduce I-frame pop. I-frame pop appears as a visual flicker that can
arise when the encoder saves bits by copying some macroblocks many times from frame to frame, and then
refreshes them at the I-frame. When you enable this setting, the encoder updates these macroblocks
slightly more often to smooth out the flicker. To manually enable or disable
H264FlickerAdaptiveQuantization, you must set Adaptive quantization (H264AdaptiveQuantization) to a
value other than AUTO.H264FlickerAdaptiveQuantization,
H264FlickerAdaptiveQuantizationH264Settings.Builder flickerAdaptiveQuantization(H264FlickerAdaptiveQuantization flickerAdaptiveQuantization)
flickerAdaptiveQuantization - Only use this setting when you change the default value, AUTO, for the setting
H264AdaptiveQuantization. When you keep all defaults, excluding H264AdaptiveQuantization and all other
adaptive quantization from your JSON job specification, MediaConvert automatically applies the best
types of quantization for your video content. When you set H264AdaptiveQuantization to a value other
than AUTO, the default value for H264FlickerAdaptiveQuantization is Disabled (DISABLED). Change this
value to Enabled (ENABLED) to reduce I-frame pop. I-frame pop appears as a visual flicker that can
arise when the encoder saves bits by copying some macroblocks many times from frame to frame, and then
refreshes them at the I-frame. When you enable this setting, the encoder updates these macroblocks
slightly more often to smooth out the flicker. To manually enable or disable
H264FlickerAdaptiveQuantization, you must set Adaptive quantization (H264AdaptiveQuantization) to a
value other than AUTO.H264FlickerAdaptiveQuantization,
H264FlickerAdaptiveQuantizationH264Settings.Builder framerateControl(String framerateControl)
framerateControl - If you are using the console, use the Framerate setting to specify the frame rate for this output. If
you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame
rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in
the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame
rate as a fraction. If you are creating your transcoding job specification as a JSON file without the
console, use FramerateControl to specify which value the service uses for the frame rate for this
output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input.
Choose SPECIFIED if you want the service to use the frame rate you specify in the settings
FramerateNumerator and FramerateDenominator.H264FramerateControl,
H264FramerateControlH264Settings.Builder framerateControl(H264FramerateControl framerateControl)
framerateControl - If you are using the console, use the Framerate setting to specify the frame rate for this output. If
you want to keep the same frame rate as the input video, choose Follow source. If you want to do frame
rate conversion, choose a frame rate from the dropdown list or choose Custom. The framerates shown in
the dropdown list are decimal approximations of fractions. If you choose Custom, specify your frame
rate as a fraction. If you are creating your transcoding job specification as a JSON file without the
console, use FramerateControl to specify which value the service uses for the frame rate for this
output. Choose INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the input.
Choose SPECIFIED if you want the service to use the frame rate you specify in the settings
FramerateNumerator and FramerateDenominator.H264FramerateControl,
H264FramerateControlH264Settings.Builder framerateConversionAlgorithm(String framerateConversionAlgorithm)
framerateConversionAlgorithm - Choose the method that you want MediaConvert to use when increasing or decreasing the frame rate. For
numerically simple conversions, such as 60 fps to 30 fps: We recommend that you keep the default
value, Drop duplicate. For numerically complex conversions, to avoid stutter: Choose Interpolate. This
results in a smooth picture, but might introduce undesirable video artifacts. For complex frame rate
conversions, especially if your source video has already been converted from its original cadence:
Choose FrameFormer to do motion-compensated interpolation. FrameFormer uses the best conversion method
frame by frame. Note that using FrameFormer increases the transcoding time and incurs a significant
add-on cost. When you choose FrameFormer, your input video resolution must be at least 128x96.H264FramerateConversionAlgorithm,
H264FramerateConversionAlgorithmH264Settings.Builder framerateConversionAlgorithm(H264FramerateConversionAlgorithm framerateConversionAlgorithm)
framerateConversionAlgorithm - Choose the method that you want MediaConvert to use when increasing or decreasing the frame rate. For
numerically simple conversions, such as 60 fps to 30 fps: We recommend that you keep the default
value, Drop duplicate. For numerically complex conversions, to avoid stutter: Choose Interpolate. This
results in a smooth picture, but might introduce undesirable video artifacts. For complex frame rate
conversions, especially if your source video has already been converted from its original cadence:
Choose FrameFormer to do motion-compensated interpolation. FrameFormer uses the best conversion method
frame by frame. Note that using FrameFormer increases the transcoding time and incurs a significant
add-on cost. When you choose FrameFormer, your input video resolution must be at least 128x96.H264FramerateConversionAlgorithm,
H264FramerateConversionAlgorithmH264Settings.Builder framerateDenominator(Integer framerateDenominator)
framerateDenominator - When you use the API for transcode jobs that use frame rate conversion, specify the frame rate as a
fraction. For example, 24000 / 1001 = 23.976 fps. Use FramerateDenominator to specify the denominator
of this fraction. In this example, use 1001 for the value of FramerateDenominator. When you use the
console for transcode jobs that use frame rate conversion, provide the value as a decimal number for
Framerate. In this example, specify 23.976.H264Settings.Builder framerateNumerator(Integer framerateNumerator)
framerateNumerator - When you use the API for transcode jobs that use frame rate conversion, specify the frame rate as a
fraction. For example, 24000 / 1001 = 23.976 fps. Use FramerateNumerator to specify the numerator of
this fraction. In this example, use 24000 for the value of FramerateNumerator. When you use the
console for transcode jobs that use frame rate conversion, provide the value as a decimal number for
Framerate. In this example, specify 23.976.H264Settings.Builder gopBReference(String gopBReference)
gopBReference - Specify whether to allow B-frames to be referenced by other frame types. To use reference B-frames
when your GOP structure has 1 or more B-frames: Leave blank or keep the default value Enabled. We
recommend that you choose Enabled to help improve the video quality of your output relative to its
bitrate. To not use reference B-frames: Choose Disabled.H264GopBReference,
H264GopBReferenceH264Settings.Builder gopBReference(H264GopBReference gopBReference)
gopBReference - Specify whether to allow B-frames to be referenced by other frame types. To use reference B-frames
when your GOP structure has 1 or more B-frames: Leave blank or keep the default value Enabled. We
recommend that you choose Enabled to help improve the video quality of your output relative to its
bitrate. To not use reference B-frames: Choose Disabled.H264GopBReference,
H264GopBReferenceH264Settings.Builder gopClosedCadence(Integer gopClosedCadence)
gopClosedCadence - Specify the relative frequency of open to closed GOPs in this output. For example, if you want to
allow four open GOPs and then require a closed GOP, set this value to 5. We recommend that you have
the transcoder automatically choose this value for you based on characteristics of your input video.
To enable this automatic behavior, keep the default value by leaving this setting out of your JSON job
specification. In the console, do this by keeping the default empty value. If you do explicitly
specify a value, for segmented outputs, don't set this value to 0.H264Settings.Builder gopSize(Double gopSize)
gopSize - Use this setting only when you set GOP mode control (GopSizeUnits) to Specified, frames (FRAMES) or
Specified, seconds (SECONDS). Specify the GOP length using a whole number of frames or a decimal value
of seconds. MediaConvert will interpret this value as frames or seconds depending on the value you
choose for GOP mode control (GopSizeUnits). If you want to allow MediaConvert to automatically
determine GOP size, leave GOP size blank and set GOP mode control to Auto (AUTO). If your output group
specifies HLS, DASH, or CMAF, leave GOP size blank and set GOP mode control to Auto in each output in
your output group.H264Settings.Builder gopSizeUnits(String gopSizeUnits)
gopSizeUnits - Specify how the transcoder determines GOP size for this output. We recommend that you have the
transcoder automatically choose this value for you based on characteristics of your input video. To
enable this automatic behavior, choose Auto (AUTO) and and leave GOP size (GopSize) blank. By default,
if you don't specify GOP mode control (GopSizeUnits), MediaConvert will use automatic behavior. If
your output group specifies HLS, DASH, or CMAF, set GOP mode control to Auto and leave GOP size blank
in each output in your output group. To explicitly specify the GOP length, choose Specified, frames
(FRAMES) or Specified, seconds (SECONDS) and then provide the GOP length in the related setting GOP
size (GopSize).H264GopSizeUnits,
H264GopSizeUnitsH264Settings.Builder gopSizeUnits(H264GopSizeUnits gopSizeUnits)
gopSizeUnits - Specify how the transcoder determines GOP size for this output. We recommend that you have the
transcoder automatically choose this value for you based on characteristics of your input video. To
enable this automatic behavior, choose Auto (AUTO) and and leave GOP size (GopSize) blank. By default,
if you don't specify GOP mode control (GopSizeUnits), MediaConvert will use automatic behavior. If
your output group specifies HLS, DASH, or CMAF, set GOP mode control to Auto and leave GOP size blank
in each output in your output group. To explicitly specify the GOP length, choose Specified, frames
(FRAMES) or Specified, seconds (SECONDS) and then provide the GOP length in the related setting GOP
size (GopSize).H264GopSizeUnits,
H264GopSizeUnitsH264Settings.Builder hrdBufferFinalFillPercentage(Integer hrdBufferFinalFillPercentage)
hrdBufferFinalFillPercentage - If your downstream systems have strict buffer requirements: Specify the minimum percentage of the HRD
buffer that's available at the end of each encoded video segment. For the best video quality: Set to 0
or leave blank to automatically determine the final buffer fill percentage.H264Settings.Builder hrdBufferInitialFillPercentage(Integer hrdBufferInitialFillPercentage)
hrdBufferInitialFillPercentage - Percentage of the buffer that should initially be filled (HRD buffer model).H264Settings.Builder hrdBufferSize(Integer hrdBufferSize)
hrdBufferSize - Size of buffer (HRD buffer model) in bits. For example, enter five megabits as 5000000.H264Settings.Builder interlaceMode(String interlaceMode)
interlaceMode - Choose the scan line type for the output. Keep the default value, Progressive (PROGRESSIVE) to create
a progressive output, regardless of the scan type of your input. Use Top field first (TOP_FIELD) or
Bottom field first (BOTTOM_FIELD) to create an output that's interlaced with the same field polarity
throughout. Use Follow, default top (FOLLOW_TOP_FIELD) or Follow, default bottom (FOLLOW_BOTTOM_FIELD)
to produce outputs with the same field polarity as the source. For jobs that have multiple inputs, the
output field polarity might change over the course of the output. Follow behavior depends on the input
scan type. If the source is interlaced, the output will be interlaced with the same polarity as the
source. If the source is progressive, the output will be interlaced with top field bottom field first,
depending on which of the Follow options you choose.H264InterlaceMode,
H264InterlaceModeH264Settings.Builder interlaceMode(H264InterlaceMode interlaceMode)
interlaceMode - Choose the scan line type for the output. Keep the default value, Progressive (PROGRESSIVE) to create
a progressive output, regardless of the scan type of your input. Use Top field first (TOP_FIELD) or
Bottom field first (BOTTOM_FIELD) to create an output that's interlaced with the same field polarity
throughout. Use Follow, default top (FOLLOW_TOP_FIELD) or Follow, default bottom (FOLLOW_BOTTOM_FIELD)
to produce outputs with the same field polarity as the source. For jobs that have multiple inputs, the
output field polarity might change over the course of the output. Follow behavior depends on the input
scan type. If the source is interlaced, the output will be interlaced with the same polarity as the
source. If the source is progressive, the output will be interlaced with top field bottom field first,
depending on which of the Follow options you choose.H264InterlaceMode,
H264InterlaceModeH264Settings.Builder maxBitrate(Integer maxBitrate)
maxBitrate - Maximum bitrate in bits/second. For example, enter five megabits per second as 5000000. Required when
Rate control mode is QVBR.H264Settings.Builder minIInterval(Integer minIInterval)
minIInterval - Use this setting only when you also enable Scene change detection (SceneChangeDetect). This setting
determines how the encoder manages the spacing between I-frames that it inserts as part of the I-frame
cadence and the I-frames that it inserts for Scene change detection. We recommend that you have the
transcoder automatically choose this value for you based on characteristics of your input video. To
enable this automatic behavior, keep the default value by leaving this setting out of your JSON job
specification. In the console, do this by keeping the default empty value. When you explicitly specify
a value for this setting, the encoder determines whether to skip a cadence-driven I-frame by the value
you set. For example, if you set Min I interval (minIInterval) to 5 and a cadence-driven I-frame would
fall within 5 frames of a scene-change I-frame, then the encoder skips the cadence-driven I-frame. In
this way, one GOP is shrunk slightly and one GOP is stretched slightly. When the cadence-driven
I-frames are farther from the scene-change I-frame than the value you set, then the encoder leaves all
I-frames in place and the GOPs surrounding the scene change are smaller than the usual cadence GOPs.H264Settings.Builder numberBFramesBetweenReferenceFrames(Integer numberBFramesBetweenReferenceFrames)
numberBFramesBetweenReferenceFrames - Specify the number of B-frames between reference frames in this output. For the best video quality:
Leave blank. MediaConvert automatically determines the number of B-frames to use based on the
characteristics of your input video. To manually specify the number of B-frames between reference
frames: Enter an integer from 0 to 7.H264Settings.Builder numberReferenceFrames(Integer numberReferenceFrames)
numberReferenceFrames - Number of reference frames to use. The encoder may use more than requested if using B-frames and/or
interlaced encoding.H264Settings.Builder parControl(String parControl)
parControl - Optional. Specify how the service determines the pixel aspect ratio (PAR) for this output. The default
behavior, Follow source (INITIALIZE_FROM_SOURCE), uses the PAR from your input video for your output.
To specify a different PAR in the console, choose any value other than Follow source. To specify a
different PAR by editing the JSON job specification, choose SPECIFIED. When you choose SPECIFIED for
this setting, you must also specify values for the parNumerator and parDenominator settings.H264ParControl,
H264ParControlH264Settings.Builder parControl(H264ParControl parControl)
parControl - Optional. Specify how the service determines the pixel aspect ratio (PAR) for this output. The default
behavior, Follow source (INITIALIZE_FROM_SOURCE), uses the PAR from your input video for your output.
To specify a different PAR in the console, choose any value other than Follow source. To specify a
different PAR by editing the JSON job specification, choose SPECIFIED. When you choose SPECIFIED for
this setting, you must also specify values for the parNumerator and parDenominator settings.H264ParControl,
H264ParControlH264Settings.Builder parDenominator(Integer parDenominator)
parDenominator - Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the console, this corresponds
to any value other than Follow source. When you specify an output pixel aspect ratio (PAR) that is
different from your input video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC
widescreen, you would specify the ratio 40:33. In this example, the value for parDenominator is 33.H264Settings.Builder parNumerator(Integer parNumerator)
parNumerator - Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the console, this corresponds
to any value other than Follow source. When you specify an output pixel aspect ratio (PAR) that is
different from your input video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC
widescreen, you would specify the ratio 40:33. In this example, the value for parNumerator is 40.H264Settings.Builder qualityTuningLevel(String qualityTuningLevel)
qualityTuningLevel - The Quality tuning level you choose represents a trade-off between the encoding speed of your job and
the output video quality. For the fastest encoding speed at the cost of video quality: Choose Single
pass. For a good balance between encoding speed and video quality: Leave blank or keep the default
value Single pass HQ. For the best video quality, at the cost of encoding speed: Choose Multi pass HQ.
MediaConvert performs an analysis pass on your input followed by an encoding pass. Outputs that use
this feature incur pro-tier pricing.H264QualityTuningLevel,
H264QualityTuningLevelH264Settings.Builder qualityTuningLevel(H264QualityTuningLevel qualityTuningLevel)
qualityTuningLevel - The Quality tuning level you choose represents a trade-off between the encoding speed of your job and
the output video quality. For the fastest encoding speed at the cost of video quality: Choose Single
pass. For a good balance between encoding speed and video quality: Leave blank or keep the default
value Single pass HQ. For the best video quality, at the cost of encoding speed: Choose Multi pass HQ.
MediaConvert performs an analysis pass on your input followed by an encoding pass. Outputs that use
this feature incur pro-tier pricing.H264QualityTuningLevel,
H264QualityTuningLevelH264Settings.Builder qvbrSettings(H264QvbrSettings qvbrSettings)
qvbrSettings - Settings for quality-defined variable bitrate encoding with the H.265 codec. Use these settings only
when you set QVBR for Rate control mode (RateControlMode).default H264Settings.Builder qvbrSettings(Consumer<H264QvbrSettings.Builder> qvbrSettings)
H264QvbrSettings.Builder avoiding the need to create one manually via
H264QvbrSettings.builder().
When the Consumer completes, SdkBuilder.build() is called immediately and its
result is passed to qvbrSettings(H264QvbrSettings).
qvbrSettings - a consumer that will call methods on H264QvbrSettings.BuilderqvbrSettings(H264QvbrSettings)H264Settings.Builder rateControlMode(String rateControlMode)
rateControlMode - Use this setting to specify whether this output has a variable bitrate (VBR), constant bitrate (CBR)
or quality-defined variable bitrate (QVBR).H264RateControlMode,
H264RateControlModeH264Settings.Builder rateControlMode(H264RateControlMode rateControlMode)
rateControlMode - Use this setting to specify whether this output has a variable bitrate (VBR), constant bitrate (CBR)
or quality-defined variable bitrate (QVBR).H264RateControlMode,
H264RateControlModeH264Settings.Builder repeatPps(String repeatPps)
repeatPps - Places a PPS header on each encoded picture, even if repeated.H264RepeatPps,
H264RepeatPpsH264Settings.Builder repeatPps(H264RepeatPps repeatPps)
repeatPps - Places a PPS header on each encoded picture, even if repeated.H264RepeatPps,
H264RepeatPpsH264Settings.Builder scanTypeConversionMode(String scanTypeConversionMode)
scanTypeConversionMode - Use this setting for interlaced outputs, when your output frame rate is half of your input frame rate.
In this situation, choose Optimized interlacing (INTERLACED_OPTIMIZE) to create a better quality
interlaced output. In this case, each progressive frame from the input corresponds to an interlaced
field in the output. Keep the default value, Basic interlacing (INTERLACED), for all other output
frame rates. With basic interlacing, MediaConvert performs any frame rate conversion first and then
interlaces the frames. When you choose Optimized interlacing and you set your output frame rate to a
value that isn't suitable for optimized interlacing, MediaConvert automatically falls back to basic
interlacing. Required settings: To use optimized interlacing, you must set Telecine (telecine) to None
(NONE) or Soft (SOFT). You can't use optimized interlacing for hard telecine outputs. You must also
set Interlace mode (interlaceMode) to a value other than Progressive (PROGRESSIVE).H264ScanTypeConversionMode,
H264ScanTypeConversionModeH264Settings.Builder scanTypeConversionMode(H264ScanTypeConversionMode scanTypeConversionMode)
scanTypeConversionMode - Use this setting for interlaced outputs, when your output frame rate is half of your input frame rate.
In this situation, choose Optimized interlacing (INTERLACED_OPTIMIZE) to create a better quality
interlaced output. In this case, each progressive frame from the input corresponds to an interlaced
field in the output. Keep the default value, Basic interlacing (INTERLACED), for all other output
frame rates. With basic interlacing, MediaConvert performs any frame rate conversion first and then
interlaces the frames. When you choose Optimized interlacing and you set your output frame rate to a
value that isn't suitable for optimized interlacing, MediaConvert automatically falls back to basic
interlacing. Required settings: To use optimized interlacing, you must set Telecine (telecine) to None
(NONE) or Soft (SOFT). You can't use optimized interlacing for hard telecine outputs. You must also
set Interlace mode (interlaceMode) to a value other than Progressive (PROGRESSIVE).H264ScanTypeConversionMode,
H264ScanTypeConversionModeH264Settings.Builder sceneChangeDetect(String sceneChangeDetect)
sceneChangeDetect - Enable this setting to insert I-frames at scene changes that the service automatically detects. This
improves video quality and is enabled by default. If this output uses QVBR, choose Transition
detection (TRANSITION_DETECTION) for further video quality improvement. For more information about
QVBR, see https://docs.aws.amazon.com/console/mediaconvert/cbr-vbr-qvbr.H264SceneChangeDetect,
H264SceneChangeDetectH264Settings.Builder sceneChangeDetect(H264SceneChangeDetect sceneChangeDetect)
sceneChangeDetect - Enable this setting to insert I-frames at scene changes that the service automatically detects. This
improves video quality and is enabled by default. If this output uses QVBR, choose Transition
detection (TRANSITION_DETECTION) for further video quality improvement. For more information about
QVBR, see https://docs.aws.amazon.com/console/mediaconvert/cbr-vbr-qvbr.H264SceneChangeDetect,
H264SceneChangeDetectH264Settings.Builder slices(Integer slices)
slices - Number of slices per picture. Must be less than or equal to the number of macroblock rows for
progressive pictures, and less than or equal to half the number of macroblock rows for interlaced
pictures.H264Settings.Builder slowPal(String slowPal)
slowPal - Ignore this setting unless your input frame rate is 23.976 or 24 frames per second (fps). Enable slow
PAL to create a 25 fps output. When you enable slow PAL, MediaConvert relabels the video frames to 25
fps and resamples your audio to keep it synchronized with the video. Note that enabling this setting
will slightly reduce the duration of your video. Required settings: You must also set Framerate to 25.
In your JSON job specification, set (framerateControl) to (SPECIFIED), (framerateNumerator) to 25 and
(framerateDenominator) to 1.H264SlowPal,
H264SlowPalH264Settings.Builder slowPal(H264SlowPal slowPal)
slowPal - Ignore this setting unless your input frame rate is 23.976 or 24 frames per second (fps). Enable slow
PAL to create a 25 fps output. When you enable slow PAL, MediaConvert relabels the video frames to 25
fps and resamples your audio to keep it synchronized with the video. Note that enabling this setting
will slightly reduce the duration of your video. Required settings: You must also set Framerate to 25.
In your JSON job specification, set (framerateControl) to (SPECIFIED), (framerateNumerator) to 25 and
(framerateDenominator) to 1.H264SlowPal,
H264SlowPalH264Settings.Builder softness(Integer softness)
softness - Ignore this setting unless you need to comply with a specification that requires a specific value. If
you don't have a specification requirement, we recommend that you adjust the softness of your output
by using a lower value for the setting Sharpness (sharpness) or by enabling a noise reducer filter
(noiseReducerFilter). The Softness (softness) setting specifies the quantization matrices that the
encoder uses. Keep the default value, 0, for flat quantization. Choose the value 1 or 16 to use the
default JVT softening quantization matricies from the H.264 specification. Choose a value from 17 to
128 to use planar interpolation. Increasing values from 17 to 128 result in increasing reduction of
high-frequency data. The value 128 results in the softest video.H264Settings.Builder spatialAdaptiveQuantization(String spatialAdaptiveQuantization)
spatialAdaptiveQuantization - Only use this setting when you change the default value, Auto (AUTO), for the setting
H264AdaptiveQuantization. When you keep all defaults, excluding H264AdaptiveQuantization and all other
adaptive quantization from your JSON job specification, MediaConvert automatically applies the best
types of quantization for your video content. When you set H264AdaptiveQuantization to a value other
than AUTO, the default value for H264SpatialAdaptiveQuantization is Enabled (ENABLED). Keep this
default value to adjust quantization within each frame based on spatial variation of content
complexity. When you enable this feature, the encoder uses fewer bits on areas that can sustain more
distortion with no noticeable visual degradation and uses more bits on areas where any small
distortion will be noticeable. For example, complex textured blocks are encoded with fewer bits and
smooth textured blocks are encoded with more bits. Enabling this feature will almost always improve
your video quality. Note, though, that this feature doesn't take into account where the viewer's
attention is likely to be. If viewers are likely to be focusing their attention on a part of the
screen with a lot of complex texture, you might choose to set H264SpatialAdaptiveQuantization to
Disabled (DISABLED). Related setting: When you enable spatial adaptive quantization, set the value for
Adaptive quantization (H264AdaptiveQuantization) depending on your content. For homogeneous content,
such as cartoons and video games, set it to Low. For content with a wider variety of textures, set it
to High or Higher. To manually enable or disable H264SpatialAdaptiveQuantization, you must set
Adaptive quantization (H264AdaptiveQuantization) to a value other than AUTO.H264SpatialAdaptiveQuantization,
H264SpatialAdaptiveQuantizationH264Settings.Builder spatialAdaptiveQuantization(H264SpatialAdaptiveQuantization spatialAdaptiveQuantization)
spatialAdaptiveQuantization - Only use this setting when you change the default value, Auto (AUTO), for the setting
H264AdaptiveQuantization. When you keep all defaults, excluding H264AdaptiveQuantization and all other
adaptive quantization from your JSON job specification, MediaConvert automatically applies the best
types of quantization for your video content. When you set H264AdaptiveQuantization to a value other
than AUTO, the default value for H264SpatialAdaptiveQuantization is Enabled (ENABLED). Keep this
default value to adjust quantization within each frame based on spatial variation of content
complexity. When you enable this feature, the encoder uses fewer bits on areas that can sustain more
distortion with no noticeable visual degradation and uses more bits on areas where any small
distortion will be noticeable. For example, complex textured blocks are encoded with fewer bits and
smooth textured blocks are encoded with more bits. Enabling this feature will almost always improve
your video quality. Note, though, that this feature doesn't take into account where the viewer's
attention is likely to be. If viewers are likely to be focusing their attention on a part of the
screen with a lot of complex texture, you might choose to set H264SpatialAdaptiveQuantization to
Disabled (DISABLED). Related setting: When you enable spatial adaptive quantization, set the value for
Adaptive quantization (H264AdaptiveQuantization) depending on your content. For homogeneous content,
such as cartoons and video games, set it to Low. For content with a wider variety of textures, set it
to High or Higher. To manually enable or disable H264SpatialAdaptiveQuantization, you must set
Adaptive quantization (H264AdaptiveQuantization) to a value other than AUTO.H264SpatialAdaptiveQuantization,
H264SpatialAdaptiveQuantizationH264Settings.Builder syntax(String syntax)
syntax - Produces a bitstream compliant with SMPTE RP-2027.H264Syntax,
H264SyntaxH264Settings.Builder syntax(H264Syntax syntax)
syntax - Produces a bitstream compliant with SMPTE RP-2027.H264Syntax,
H264SyntaxH264Settings.Builder telecine(String telecine)
telecine - When you do frame rate conversion from 23.976 frames per second (fps) to 29.97 fps, and your output
scan type is interlaced, you can optionally enable hard or soft telecine to create a smoother picture.
Hard telecine (HARD) produces a 29.97i output. Soft telecine (SOFT) produces an output with a 23.976
output that signals to the video player device to do the conversion during play back. When you keep
the default value, None (NONE), MediaConvert does a standard frame rate conversion to 29.97 without
doing anything with the field polarity to create a smoother picture.H264Telecine,
H264TelecineH264Settings.Builder telecine(H264Telecine telecine)
telecine - When you do frame rate conversion from 23.976 frames per second (fps) to 29.97 fps, and your output
scan type is interlaced, you can optionally enable hard or soft telecine to create a smoother picture.
Hard telecine (HARD) produces a 29.97i output. Soft telecine (SOFT) produces an output with a 23.976
output that signals to the video player device to do the conversion during play back. When you keep
the default value, None (NONE), MediaConvert does a standard frame rate conversion to 29.97 without
doing anything with the field polarity to create a smoother picture.H264Telecine,
H264TelecineH264Settings.Builder temporalAdaptiveQuantization(String temporalAdaptiveQuantization)
temporalAdaptiveQuantization - Only use this setting when you change the default value, AUTO, for the setting
H264AdaptiveQuantization. When you keep all defaults, excluding H264AdaptiveQuantization and all other
adaptive quantization from your JSON job specification, MediaConvert automatically applies the best
types of quantization for your video content. When you set H264AdaptiveQuantization to a value other
than AUTO, the default value for H264TemporalAdaptiveQuantization is Enabled (ENABLED). Keep this
default value to adjust quantization within each frame based on temporal variation of content
complexity. When you enable this feature, the encoder uses fewer bits on areas of the frame that
aren't moving and uses more bits on complex objects with sharp edges that move a lot. For example,
this feature improves the readability of text tickers on newscasts and scoreboards on sports matches.
Enabling this feature will almost always improve your video quality. Note, though, that this feature
doesn't take into account where the viewer's attention is likely to be. If viewers are likely to be
focusing their attention on a part of the screen that doesn't have moving objects with sharp edges,
such as sports athletes' faces, you might choose to set H264TemporalAdaptiveQuantization to Disabled
(DISABLED). Related setting: When you enable temporal quantization, adjust the strength of the filter
with the setting Adaptive quantization (adaptiveQuantization). To manually enable or disable
H264TemporalAdaptiveQuantization, you must set Adaptive quantization (H264AdaptiveQuantization) to a
value other than AUTO.H264TemporalAdaptiveQuantization,
H264TemporalAdaptiveQuantizationH264Settings.Builder temporalAdaptiveQuantization(H264TemporalAdaptiveQuantization temporalAdaptiveQuantization)
temporalAdaptiveQuantization - Only use this setting when you change the default value, AUTO, for the setting
H264AdaptiveQuantization. When you keep all defaults, excluding H264AdaptiveQuantization and all other
adaptive quantization from your JSON job specification, MediaConvert automatically applies the best
types of quantization for your video content. When you set H264AdaptiveQuantization to a value other
than AUTO, the default value for H264TemporalAdaptiveQuantization is Enabled (ENABLED). Keep this
default value to adjust quantization within each frame based on temporal variation of content
complexity. When you enable this feature, the encoder uses fewer bits on areas of the frame that
aren't moving and uses more bits on complex objects with sharp edges that move a lot. For example,
this feature improves the readability of text tickers on newscasts and scoreboards on sports matches.
Enabling this feature will almost always improve your video quality. Note, though, that this feature
doesn't take into account where the viewer's attention is likely to be. If viewers are likely to be
focusing their attention on a part of the screen that doesn't have moving objects with sharp edges,
such as sports athletes' faces, you might choose to set H264TemporalAdaptiveQuantization to Disabled
(DISABLED). Related setting: When you enable temporal quantization, adjust the strength of the filter
with the setting Adaptive quantization (adaptiveQuantization). To manually enable or disable
H264TemporalAdaptiveQuantization, you must set Adaptive quantization (H264AdaptiveQuantization) to a
value other than AUTO.H264TemporalAdaptiveQuantization,
H264TemporalAdaptiveQuantizationH264Settings.Builder unregisteredSeiTimecode(String unregisteredSeiTimecode)
unregisteredSeiTimecode - Inserts timecode for each frame as 4 bytes of an unregistered SEI message.H264UnregisteredSeiTimecode,
H264UnregisteredSeiTimecodeH264Settings.Builder unregisteredSeiTimecode(H264UnregisteredSeiTimecode unregisteredSeiTimecode)
unregisteredSeiTimecode - Inserts timecode for each frame as 4 bytes of an unregistered SEI message.H264UnregisteredSeiTimecode,
H264UnregisteredSeiTimecodeCopyright © 2023. All rights reserved.