Release Notes for Version 2.5
1. Improved grain handling with --tune grain option by throttling VBV
operations to limit QP jumps.
2. Frame threads are now decided based on number of threads specified in
the --pools, as opposed to the number of hardware threads available. The
mapping was also adjusted to improve quality of the encodes with minimal
impact to performance.
3. CSV logging feature (enabled by --csv) is now part of the library; it
was previously part of the x265 application. Applications that integrate
libx265 can now extract frame level statistics for their encodes by
exercising this option in the library.
4. Globals that track min and max CU sizes, number of slices, and other
parameters have now been moved into instance-specific variables.
Consequently, applications that invoke multiple instances of x265 library
are no longer restricted to use the same settings for these parameter
options across the multiple instances.
x265 can now generate a seprate library that exports the HDR10+ parsing
API. Other libraries that wish to use this API may do so by linking against
this library. Enable ENABLE_HDR10_PLUS in CMake options and build to
generate this library.
5. SEA motion search receives a 10% performance boost from AVX2
optimization of its kernels.
6. The CSV log is now more elaborate with additional fields such as PU
statistics, average-min-max luma and chroma values, etc. Refer to
documentation of --csv for details of all fields.
7. x86inc.asm cleaned-up for improved instruction handling.
1. New API x265_encoder_ctu_info() introduced to specify suggested
partition sizes for various CTUs in a frame. To be used in conjunction with
--ctu-info to react to the specified partitions appropriately.
2. Rate-control statistics passed through the x265_picture object for an
incoming frame are now used by the encoder.
3. Options to scale, reuse, and refine analysis for incoming analysis
shared through the x265_analysis_data field in x265_picture for runs that
use --analysis-reuse-mode load; use options --scale, --refine-mv,
--refine-inter, and --refine-intra to explore.
4. VBV now has a deterministic mode. Use --const-vbv to exercise.
1. Several fixes for HDR10+ parsing code including incompatibility with
user-specific SEI, removal of warnings, linking issues in linux, etc.
2. SEI messages for HDR10 repeated every keyint when HDR options
(--hdr-opt, --master-display) specified.