Interface H264SettingsProps
- All Superinterfaces:
software.amazon.jsii.JsiiSerializable
- All Known Implementing Classes:
H264SettingsProps.Jsii$Proxy
Example:
Stack stack;
IInput input;
IBucket bucket;
EncodeConfiguration video = EncodeConfiguration.video(VideoEncodeProps.builder()
.name("video_720p")
.codec(VideoCodecSettings.h264(H264SettingsProps.builder()
.rateControl(H264RateControl.cbr(CbrRateControlProps.builder().bitrate(Bitrate.mbps(3)).build()))
.framerate(Framerate.FPS_30)
.build()))
.width(1280)
.height(720)
.build());
EncodeConfiguration audio = EncodeConfiguration.audio(AudioEncodeProps.builder()
.name("audio_aac")
.codec(AudioCodecSettings.aac(AacSettingsProps.builder().bitrate(Bitrate.kbps(192)).build()))
.build());
Channel.Builder.create(stack, "Channel")
.inputs(List.of(InputAttachment.builder().input(input).build()))
.outputGroups(List.of(OutputGroupConfiguration.hls(HlsOutputGroupProps.builder()
.name("hls")
.destinations(List.of(OutputDestination.toBucket(bucket, "live/stream")))
.outputs(List.of(HlsOutputDefinition.builder().encodes(List.of(video, audio)).outputName("hls_out").build()))
.build())))
.build();
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final classA builder forH264SettingsPropsstatic final classAn implementation forH264SettingsProps -
Method Summary
Modifier and TypeMethodDescriptionstatic H264SettingsProps.Builderbuilder()default H264AdaptiveQuantization(experimental) The adaptive quantization.default AfdSignaling(experimental) Indicates that AFD values will be written into the output stream.default Number(experimental) Percentage of the buffer that should initially be filled (HRD buffer model).default Number(experimental) Size of the buffer (HRD buffer model) in bits/second.default ColorMetadata(experimental) Whether to include color space metadata in the output.default H264ColorSpaceSettings(experimental) Color space settings for the video.default H264EntropyEncoding(experimental) The entropy encoding mode.default H264FilterSettings(experimental) Optional video filter settings.default String(experimental) Four-bit AFD value to write on all frames.default FlickerAq(experimental) If enabled, adjusts quantization within each frame to reduce flicker on I-frames.default H264ForceFieldPictures(experimental) Controls whether coding is on a field basis or frame basis when scan type is interlaced.default Framerate(experimental) The video frame rate.default GopBReference(experimental) If enabled, uses reference B frames for GOP structures that have B frames > 1.default Number(experimental) Frequency of closed GOPs.default Number(experimental) The number of B-frames between reference frames.default GopSize(experimental) The GOP size (keyframe interval).default H264LevelgetLevel()(experimental) The H.264 level.default LookAheadRateControl(experimental) Amount of lookahead.default Number(experimental) Minimum bitrate in bits/second.default Number(experimental) Only meaningful if sceneChangeDetect is enabled.default NumbergetMinQp()(experimental) Minimum QP value.default Number(experimental) The number of reference frames to use.default PixelAspectRatio(experimental) The pixel aspect ratio (PAR) of the video.default H264Profile(experimental) The H.264 profile.default H264QualityLevel(experimental) Quality level.default H264RateControl(experimental) The rate control configuration.default ScanType(experimental) Sets the scan type of the output.default H264SceneChangeDetect(experimental) Whether scene change detection inserts I-frames on scene changes.default Number(experimental) Number of slices per picture.default Number(experimental) Softness.default H264SpatialAq(experimental) Whether spatial adaptive quantization adjusts quantization within each frame based on spatial variation.default SubgopLength(experimental) Sub-GOP length mode.default H264Syntax(experimental) Produces a bitstream compliant with SMPTE RP-2027.default H264TemporalAq(experimental) Whether temporal adaptive quantization adjusts quantization based on temporal variation between frames.default TimecodeBurninSettings(experimental) Timecode burn-in settings to overlay timecode on the video.default TimecodeInsertion(experimental) Determines how timecodes are inserted into the video elementary stream.Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Method Details
-
getAdaptiveQuantization
(experimental) The adaptive quantization.This allows intra-frame quantizers to vary to improve visual quality.
Default: H264AdaptiveQuantization.AUTO
-
getAfdSignaling
(experimental) Indicates that AFD values will be written into the output stream.If afdSignaling is auto, the system tries to preserve the input AFD value (in cases where multiple AFD values are valid). If set to fixed, the AFD value is the value configured in the fixedAfd parameter.
Default: AfdSignaling.NONE
-
getBufFillPct
(experimental) Percentage of the buffer that should initially be filled (HRD buffer model).Default: - service default
-
getBufSize
(experimental) Size of the buffer (HRD buffer model) in bits/second.Default: - service default
-
getColorMetadata
(experimental) Whether to include color space metadata in the output.Default: - service default
-
getColorSpaceSettings
(experimental) Color space settings for the video.Default: - service default
-
getEntropyEncoding
(experimental) The entropy encoding mode.CABAC requires Main or High profile.
Default: - service default
-
getFilterSettings
(experimental) Optional video filter settings.Default: - service default
-
getFixedAfd
(experimental) Four-bit AFD value to write on all frames. Only valid when afdSignaling is FIXED.Valid values: FIXED_0000, FIXED_0010, FIXED_0011, FIXED_0100, FIXED_1000, FIXED_1001, FIXED_1010, FIXED_1011, FIXED_1100, FIXED_1101, FIXED_1110, FIXED_1111.
Default: - service default
-
getFlickerAq
(experimental) If enabled, adjusts quantization within each frame to reduce flicker on I-frames.Default: FlickerAq.ENABLED
-
getForceFieldPictures
(experimental) Controls whether coding is on a field basis or frame basis when scan type is interlaced.Default: - service default
-
getFramerate
(experimental) The video frame rate.Default: - follow source
-
getGopBReference
(experimental) If enabled, uses reference B frames for GOP structures that have B frames > 1.Default: - service default
-
getGopClosedCadence
(experimental) Frequency of closed GOPs.Set to 1 for streaming so decoders joining mid-stream get an IDR frame quickly.
Default: - service default
-
getGopNumBFrames
(experimental) The number of B-frames between reference frames.Default: - service default
-
getGopSize
(experimental) The GOP size (keyframe interval).Default: GopSize.seconds(1)
-
getLevel
(experimental) The H.264 level.Valid values: H264_LEVEL_1, H264_LEVEL_1_1, H264_LEVEL_1_2, H264_LEVEL_1_3, H264_LEVEL_2, H264_LEVEL_2_1, H264_LEVEL_2_2, H264_LEVEL_3, H264_LEVEL_3_1, H264_LEVEL_3_2, H264_LEVEL_4, H264_LEVEL_4_1, H264_LEVEL_4_2, H264_LEVEL_5, H264_LEVEL_5_1, H264_LEVEL_5_2, H264_LEVEL_AUTO.
Default: H264Level.H264_LEVEL_AUTO
-
getLookAheadRateControl
(experimental) Amount of lookahead.Low decreases latency/memory; high can produce better quality.
Default: LookAheadRateControl.HIGH
-
getMinBitrate
(experimental) Minimum bitrate in bits/second.Default: - service default
-
getMinIInterval
(experimental) Only meaningful if sceneChangeDetect is enabled.Enforces separation between repeated (cadence) I-frames and I-frames inserted by scene change detection.
Default: - service default
-
getMinQp
(experimental) Minimum QP value.Sets a floor on the quantization parameter.
Default: - service default
-
getNumRefFrames
(experimental) The number of reference frames to use.The encoder might use more if B-frames or interlaced encoding is used.
Default: - service default
-
getPixelAspectRatio
(experimental) The pixel aspect ratio (PAR) of the video.Default: - follow source (or square pixels when framerate is specified)
-
getProfile
(experimental) The H.264 profile.Default: H264Profile.MAIN
-
getQualityLevel
(experimental) Quality level.ENHANCED_QUALITY produces slightly better video without increasing bitrate.
Default: - service default
-
getRateControl
(experimental) The rate control configuration.Default: - CBR with no bitrate (service default)
-
getScanType
(experimental) Sets the scan type of the output.Default: ScanType.PROGRESSIVE
-
getSceneChangeDetect
(experimental) Whether scene change detection inserts I-frames on scene changes.Default: H264SceneChangeDetect.ENABLED
-
getSlices
(experimental) Number of slices per picture.Must be <= macroblock rows (progressive) or half (interlaced).
Default: - encoder chooses based on resolution
-
getSoftness
(experimental) Softness.Selects a quantizer matrix; larger values reduce high-frequency content.
Default: - service default
-
getSpatialAq
(experimental) Whether spatial adaptive quantization adjusts quantization within each frame based on spatial variation.Default: H264SpatialAq.ENABLED
-
getSubgopLength
(experimental) Sub-GOP length mode.Default: - service default
-
getSyntax
(experimental) Produces a bitstream compliant with SMPTE RP-2027.Default: H264Syntax.DEFAULT
-
getTemporalAq
(experimental) Whether temporal adaptive quantization adjusts quantization based on temporal variation between frames.Default: H264TemporalAq.ENABLED
-
getTimecodeBurnin
(experimental) Timecode burn-in settings to overlay timecode on the video.Default: - no timecode burn-in
-
getTimecodeInsertion
(experimental) Determines how timecodes are inserted into the video elementary stream.This controls insertion into the output elementary stream. The channel's
timecodeConfigcontrols the source of the timecode used for output.Default: - service default
-
builder
- Returns:
- a
H264SettingsProps.BuilderofH264SettingsProps
-