x265, Release
CLI ONLY
API users must call x265_param_apply_profile() after configuring their param structure. Any changes made to
the param structure after this call might make the encode non-compliant.
The CLI application will derive the output bit depth from the profile name if --output-depth is not speci-
fied.
--level-idc <integer|float>
Minimum decoder requirement level. Defaults to 0, which implies auto-detection by the encoder. If specified,
the encoder will attempt to bring the encode specifications within that specified level. If the encoder is unable
to reach the level it issues a warning and aborts the encode. If the requested requirement level is higher than the
actual level, the actual requirement level is signaled.
Beware, specifying a decoder level will force the encoder to enable VBV for constant rate factor encodes, which
may introduce non-determinism.
The value is specified as a float or as an integer with the level times 10, for example level 5.1 is specified as
“5.1” or “51”, and level 5.0 is specified as “5.0” or “50”.
Annex A levels: 1, 2, 2.1, 3, 3.1, 4, 4.1, 5, 5.1, 5.2, 6, 6.1, 6.2, 8.5
--high-tier, --no-high-tier
If --level-idc has been specified, –high-tier allows the support of high tier at that level. The encoder will
first attempt to encode at the specified level, main tier first, turning on high tier only if necessary and available
at that level.If your requested level does not support a High tier, high tier will not be supported. If –no-high-tier
has been specified, then the encoder will attempt to encode only at the main tier.
Default: enabled
--ref <1..16>
Max number of L0 references to be allowed. This number has a linear multiplier effect on the amount of work
performed in motion search, but will generally have a beneficial affect on compression and distortion.
Note that x265 allows up to 16 L0 references but the HEVC specification only allows a maximum of 8 total
reference frames. So if you have B frames enabled only 7 L0 refs are valid and if you have --b-pyramid
enabled (which is enabled by default in all presets), then only 6 L0 refs are the maximum allowed by the HEVC
specification. If x265 detects that the total reference count is greater than 8, it will issue a warning that the
resulting stream is non-compliant and it signals the stream as profile NONE and level NONE and will abort the
encode unless --allow-non-conformance it specified. Compliant HEVC decoders may refuse to decode
such streams.
Default 3
--allow-non-conformance, --no-allow-non-conformance
Allow libx265 to generate a bitstream with profile and level NONE. By default it will abort any encode which
does not meet strict level compliance. The two most likely causes for non-conformance are --ctu being too
small, --ref being too high, or the bitrate or resolution being out of specification.
Default: disabled
--uhd-bd
Enable Ultra HD Blu-ray format support. If specified with incompatible encoding options, the encoder will
attempt to modify/set the right encode specifications. If the encoder is unable to do so, this option will be turned
OFF. Highly experimental.
Default: disabled
Note: --profile, --level-idc, and --high-tier are only intended for use when you are targeting a
particular decoder (or decoders) with fixed resource limitations and must constrain the bitstream within those limits.
2.5. Profile, Level, Tier 11