./multimedia/x265, High Efficiency Video Coding (HEVC)

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 2.8, Package name: x265-2.8, Maintainer: pkgsrc-users

x265 is an open-source project and free application library for encoding video
streams into the H.265/High Efficiency Video Coding (HEVC) format.


Required to build:
[devel/nasm] [pkgtools/cwrappers]

Master sites:

SHA1: e2ef1ad186d9581239463d4e5177a25bc57b9fc0
RMD160: 547adcf4886f9ae60c115b5da21ff12f6c718b8d
Filesize: 1347.218 KB

Version history: (Expand)


CVS history: (Expand)


   2018-07-31 21:13:10 by Robert Swindells | Files touched by this commit (3)
Log message:
Only need nasm when building for x86.
   2018-05-26 07:30:20 by John Klos | Files touched by this commit (2)
Log message:
Fix build of x265 for non-x86.
   2018-05-25 16:42:07 by Jonathan Perkin | Files touched by this commit (2)
Log message:
x265: Fix overloaded function call.
   2018-05-21 22:03:56 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
x265: updated to 2.8

Version 2.8

New features
1. :option:--asm avx512 used to enable AVX-512 in x265. Default disabled.
    For 4K main10 high-quality encoding, we are seeing good gains; for other \ 
resolutions and presets, we don't recommend using this setting for now.

2. :option:--dynamic-refine dynamically switches between different inter refine \ 
levels. Default disabled.
    It is recommended to use :option:--refine-intra 4' with dynamic refinement \ 
for a better trade-off between encode efficiency and performance than using \ 
static refinement.

3. :option:--single-sei
    Encode SEI messages in a single NAL unit instead of multiple NAL units. \ 
Default disabled.

4. :option:--max-ausize-factor controls the maximum AU size defined in HEVC \ 
specification.
    It represents the percentage of maximum AU size used. Default is 1.

5. VMAF (Video Multi-Method Assessment Fusion)
   Added VMAF support for objective quality measurement of a video sequence.
   Enable cmake option ENABLE_LIBVMAF to report per frame and aggregate VMAF \ 
score. The frame level VMAF score does not include temporal scores.
   This is supported only on linux for now.

Encoder enhancements
1. Introduced refine-intra level 4 to improve quality.
2. Support for HLG-graded content and pic_struct in SEI message.

Bug Fixes
1. Fix 32 bit build error (using CMAKE GUI) in Linux.
2. Fix 32 bit build error for asm primitives.
3. Fix build error on mac OS.
4. Fix VBV Lookahead in analysis load to achieve target bitrate.
   2018-03-09 13:08:08 by Adam Ciarcinski | Files touched by this commit (4) | Package updated
Log message:
x265: updated to 2.7

Version 2.7

New features
1. :option:--gop-lookahead can be used to extend the gop boundary(set by \ 
--keyint). The GOP will be extended, if a scene-cut frame is found within this \ 
many number of frames.
2. Support for RADL pictures added in x265.
   :option:--radl can be used to decide number of RADL pictures preceding the \ 
IDR picture.

Encoder enhancements
1. Moved from YASM to NASM assembler. Supports NASM assembler version 2.13 and \ 
greater.
2. Enable analysis save and load in a single run. Introduces two new cli options \ 
--analysis-save <filename> and --analysis-load <filename>.
3. Comply to HDR10+ LLC specification.
4. Reduced x265 build time by more than 50% by re-factoring ipfilter.asm.

Bug fixes
1. Fixed inconsistent output issue in deblock filter and --const-vbv.
2. Fixed Mac OS build warnings.
3. Fixed inconsistency in pass-2 when weightp and cutree are enabled.
4. Fixed deadlock issue due to dropping of BREF frames, while forcing slice \ 
types through qp file.
   2018-02-21 13:33:46 by Filip Hajny | Files touched by this commit (2)
Log message:
multimedia/x265: Fix build on SunOS.
   2017-11-30 08:38:55 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
x265: updated to 2.6

Version 2.6
===========

New features
------------
1. x265 can now refine analysis from a previous HEVC encode (using options \ 
:option:`--refine-inter`, and :option:`--refine-intra`), or a previous AVC \ 
encode (using option :option:`--refine-mv-type`). The previous encode's \ 
information can be packaged using the *x265_analysis_data_t*  data field \ 
available in the *x265_picture* object.
2. Basic support for segmented (or chunked) encoding added with \ 
:option:`--vbv-end` that can specify the status of CPB at the end of a segment. \ 
String this together with :option:`--vbv-init` to encode a title as chunks while \ 
maintaining VBV compliance!
3. :option:`--force-flush` can be used to trigger a premature flush of the \ 
encoder. This option is beneficial when input is known to be bursty, and may be \ 
at a rate slower than the encoder.
4. Experimental feature :option:`--lowpass-dct` that uses truncated DCT for \ 
transformation.

Encoder enhancements
--------------------
1. Slice-parallel mode gets a significant boost in performance, particularly in \ 
low-latency mode.
2. x265 now officially supported on VS2017.
3. x265 now supports all depths from mono0 to mono16 for Y4M format.

API changes
-----------
1. Options that modified PPS dynamically (:option:`--opt-qp-pps` and \ 
:option:`--opt-ref-list-length-pps`) are now disabled by default to enable users \ 
to save bits by not sending headers. If these options are enabled, headers have \ 
to be repeated for every GOP.
2. Rate-control and analysis parameters can dynamically be reconfigured \ 
simultaneously via the *x265_encoder_reconfig* API.
3. New API functions to extract intermediate information such as slice-type, \ 
scenecut information, reference frames, etc. are now available. This information \ 
may be beneficial to integrating applications that are attempting to perform \ 
content-adaptive encoding. Refer to documentation on \ 
*x265_get_slicetype_poc_and_scenecut*, and *x265_get_ref_frame_list* for more \ 
details and suggested usage.
4. A new API to pass supplemental CTU information to x265 to influence analysis \ 
decisions has been added. Refer to documentation on *x265_encoder_ctu_info* for \ 
more details.

Bug fixes
---------
1. Bug fixes when :option:`--slices` is used with VBV settings.
2. Minor memory leak fixed for HDR10+ builds, and default x265 when pools option \ 
is specified.
3. HDR10+ bug fix to remove dependence on poc counter to select meta-data \ 
information.
   2017-07-14 09:56:57 by Adam Ciarcinski | Files touched by this commit (3)
Log message:
Version 2.5

Encoder enhancements
--------------------
1. Improved grain handling with :option:`--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 \ 
:option:`--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 :option:`--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.
5. 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.
6. SEA motion search receives a 10% performance boost from AVX2 optimization of \ 
its kernels.
7. 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 :option:`--csv` for details of all fields.
8. x86inc.asm cleaned-up for improved instruction handling.

API changes
-----------
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 \ 
:option:`--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 \ 
:option:`--analysis-reuse-mode` load; use options :option:`--scale`, \ 
:option:`--refine-mv`, :option:`--refine-inter`, and :option:`--refine-intra` to \ 
explore.
4. VBV now has a deterministic mode. Use :option:`--const-vbv` to exercise.

Bug fixes
---------
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 \ 
(:option:`--hdr-opt`, :option:`--master-display`) specified.