File x265.changes of Package x265 (Revision 25)

Currently displaying revision 25 , Show latest

521
 
1
-------------------------------------------------------------------
2
Fri Dec 01 16:40:13 UTC 2017 - joerg.lorenzen@ki.tng.de
3
4
- Update to version 2.6
5
  New features
6
  * x265 can now refine analysis from a previous HEVC encode (using
7
    options --refine-inter, and --refine-intra), or a previous AVC
8
    encode (using option --refine-mv-type). The previous encode’s
9
    information can be packaged using the x265_analysis_data_t data
10
    field available in the x265_picture object.
11
  * Basic support for segmented (or chunked) encoding added with
12
    --vbv-end that can specify the status of CPB at the end of a
13
    segment. String this together with --vbv-init to encode a title
14
    as chunks while maintaining VBV compliance!
15
  * --force-flush can be used to trigger a premature flush of the
16
    encoder. This option is beneficial when input is known to be
17
    bursty, and may be at a rate slower than the encoder.
18
  * Experimental feature --lowpass-dct that uses truncated DCT for
19
    transformation.
20
  Encoder enhancements
21
  * Slice-parallel mode gets a significant boost in performance,
22
    particularly in low-latency mode.
23
  * x265 now officially supported on VS2017.
24
  * x265 now supports all depths from mono0 to mono16 for Y4M
25
    format.
26
  API changes
27
  * Options that modified PPS dynamically (--opt-qp-pps and
28
    --opt-ref-list-length-pps) are now disabled by default to
29
    enable users to save bits by not sending headers. If these
30
    options are enabled, headers have to be repeated for every GOP.
31
  * Rate-control and analysis parameters can dynamically be
32
    reconfigured simultaneously via the x265_encoder_reconfig API.
33
  * New API functions to extract intermediate information such as
34
    slice-type, scenecut information, reference frames, etc. are
35
    now available. This information may be beneficial to
36
    integrating applications that are attempting to perform
37
    content-adaptive encoding. Refer to documentation on
38
    x265_get_slicetype_poc_and_scenecut, and
39
    x265_get_ref_frame_list for more details and suggested usage.
40
  * A new API to pass supplemental CTU information to x265 to
41
    influence analysis decisions has been added. Refer to
42
    documentation on x265_encoder_ctu_info for more details.
43
  Bug fixes
44
  * Bug fixes when --slices is used with VBV settings.
45
  * Minor memory leak fixed for HDR10+ builds, and default x265
46
    when pools option is specified.
47
  * HDR10+ bug fix to remove dependence on poc counter to select
48
    meta-data information.
49
50
-------------------------------------------------------------------
51
Thu Jul 27 08:33:52 UTC 2017 - joerg.lorenzen@ki.tng.de
52
53
- Update to version 2.5
54
  Encoder enhancements
55
  * Improved grain handling with --tune grain option by throttling
56
    VBV operations to limit QP jumps.
57
  * Frame threads are now decided based on number of threads
58
    specified in the --pools, as opposed to the number of hardware
59
    threads available. The mapping was also adjusted to improve
60
    quality of the encodes with minimal impact to performance.
61
  * CSV logging feature (enabled by --csv) is now part of the
62
    library; it was previously part of the x265 application.
63
    Applications that integrate libx265 can now extract frame level
64
    statistics for their encodes by exercising this option in the
65
    library.
66
  * Globals that track min and max CU sizes, number of slices, and
67
    other parameters have now been moved into instance-specific
68
    variables. Consequently, applications that invoke multiple
69
    instances of x265 library are no longer restricted to use the
70
    same settings for these parameter options across the multiple
71
    instances.
72
  * x265 can now generate a seprate library that exports the HDR10+
73
    parsing API. Other libraries that wish to use this API may do
74
    so by linking against this library. Enable ENABLE_HDR10_PLUS in
75
    CMake options and build to generate this library.
76
  * SEA motion search receives a 10% performance boost from AVX2
77
    optimization of its kernels.
78
  * The CSV log is now more elaborate with additional fields such
79
    as PU statistics, average-min-max luma and chroma values, etc.
80
    Refer to documentation of --csv for details of all fields.
81
  * x86inc.asm cleaned-up for improved instruction handling.
82
  API changes
83
  * New API x265_encoder_ctu_info() introduced to specify suggested
84
    partition sizes for various CTUs in a frame. To be used in
85
    conjunction with --ctu-info to react to the specified
86
    partitions appropriately.
87
  * Rate-control statistics passed through the x265_picture object
88
    for an incoming frame are now used by the encoder.
89
  * Options to scale, reuse, and refine analysis for incoming
90
    analysis shared through the x265_analysis_data field in
91
    x265_picture for runs that use --analysis-reuse-mode load; use
92
    options --scale, --refine-mv, --refine-inter, and
93
    --refine-intra to explore.
94
  * VBV now has a deterministic mode. Use --const-vbv to exercise.
95
  Bug fixes
96
  * Several fixes for HDR10+ parsing code including incompatibility
97
    with user-specific SEI, removal of warnings, linking issues in
98
    linux, etc.
99
  * SEI messages for HDR10 repeated every keyint when HDR options
100
    (--hdr-opt, --master-display) specified.
101
- soname bump to 130.
102
103
-------------------------------------------------------------------
104
Thu Apr 27 14:15:13 UTC 2017 - joerg.lorenzen@ki.tng.de
105
106
- Update to version 2.4
107
  Encoder enhancements
108
  * HDR10+ supported. Dynamic metadata may be either supplied as a
109
    bitstream via the userSEI field of x265_picture, or as a json
110
    jile that can be parsed by x265 and inserted into the bitstream;
111
    use --dhdr10-info to specify json file name, and --dhdr10-opt
112
    to enable optimization of inserting tone-map information only
113
    at IDR frames, or when the tone map information changes.
114
  * Lambda tables for 8, 10, and 12-bit encoding revised, resulting
115
    in significant enhancement to subjective visual quality.
116
  * Enhanced HDR10 encoding with HDR-specific QP optimzations for
117
    chroma, and luma planes of WCG content enabled; use --hdr-opt
118
    to activate.
119
  * Ability to accept analysis information from other previous
120
    encodes (that may or may not be x265), and selectively reuse
121
    and refine analysis for encoding subsequent passes enabled with
122
    the --refine-level option.
123
  * Slow and veryslow presets receive a 20% speed boost at
124
    iso-quality by enabling the --limit-tu option.
125
  * The bitrate target for x265 can now be dynamically reconfigured
126
    via the reconfigure API.
127
  * Performance optimized SAO algorithm introduced via the
128
    --limit-sao option; seeing 10% speed benefits at faster presets.
129
  API changes
130
  * x265_reconfigure API now also accepts rate-control parameters
131
    for dynamic reconfiguration.
132
  * Several additions to data fields in x265_analysis to support
133
    --refine-level: see x265.h for more details.
134
  Bug fixes
135
  * Avoid negative offsets in x265 lambda2 table with SAO enabled.
136
  * Fix mingw32 build error.
137
  * Seek now enabled for pipe input, in addition to file-based input.
138
  * Fix issue of statically linking core-utils not working in linux.
139
  * Fix visual artifacts with --multi-pass-opt-distortion with VBV.
140
  * Fix bufferFill stats reported in csv.
141
- soname bump to 116.
142
143
-------------------------------------------------------------------
144
Fri Feb 24 14:03:24 UTC 2017 - ismail@i10z.com
145
146
- Update to version 2.3
147
  Encoder enhancements
148
  * New SSIM-based RD-cost computation for improved visual quality,
149
    and efficiency; use --ssim-rd to exercise.
150
  * Multi-pass encoding can now share analysis information from
151
    prior passes.
152
  * A dedicated thread pool for lookahead can now be specified
153
    with --lookahead-threads.
154
  * option:–dynamic-rd dynamically increase analysis in areas
155
    where the bitrate is being capped by VBV; works for both
156
    CRF and ABR encodes with VBV settings.
157
  * The number of bits used to signal the delta-QP can be
158
    optimized with the --opt-cu-delta-qp option.
159
  * Experimental feature option:–aq-motion adds new QP offsets
160
    based on relative motion of a block with respect to the
161
    movement of the frame.
162
  API changes
163
  * Reconfigure API now supports signalling new scaling lists.
164
  * x265 application’s csv functionality now reports time
165
    (in milliseconds) taken to encode each frame.
166
  * --strict-cbr enables stricter bitrate adherence by adding
167
    filler bits when achieved bitrate is lower than the target.
168
  * --hdr can be used to ensure that max-cll and max-fall values
169
    are always signaled (even if 0,0).
170
  Bug fixes
171
  * Fixed scaling lists support for 4:4:4 videos.
172
  * Inconsistent output fix for --opt-qp-pss by removing last
173
    slice’s QP from cost calculation.
174
175
-------------------------------------------------------------------
176
Sun Jan  1 20:32:07 UTC 2017 - ismail@i10z.com
177
178
-  Update to version 2.2
179
   Encoder enhancements
180
   * Enhancements to TU selection algorithm with early-outs for
181
     improved speed; use --limit-tu to exercise.
182
   * New motion search method SEA (Successive Elimination Algorithm)
183
     supported now as :option: –me 4
184
   * Bit-stream optimizations to improve fields in PPS and SPS for
185
     bit-rate savings through --[no-]opt-qp-pps, 
186
     --[no-]opt-ref-list-length-pps, and --[no-]multi-pass-opt-rps.
187
   * Enabled using VBV constraints when encoding without WPP.
188
   * All param options dumped in SEI packet in bitstream when info
189
     selected.
190
   API changes
191
   * Options to disable SEI and optional-VUI messages from bitstream
192
     made more descriptive.
193
   * New option --scenecut-bias to enable controlling bias to mark
194
     scene-cuts via cli.
195
   * Support mono and mono16 color spaces for y4m input.
196
   * --min-cu-size of 64 no-longer supported for reasons of
197
     visual quality.
198
   * API for CSV now expects version string for better integration
199
     of x265 into other applications.
200
   Bug fixes
201
   * Several fixes to slice-based encoding.
202
   * --log2-max-poc-lsb‘s range limited according to HEVC spec.
203
   * Restrict MVs to within legal boundaries when encoding.
204
205
-------------------------------------------------------------------
206
Thu Dec 22 12:59:47 UTC 2016 - scarabeus@opensuse.org
207
208
- Add conditional for the numa-devel again it was not ment to be dropped
209
- Add patch x265.pkgconfig.patch to fix pkgconfig
210
211
-------------------------------------------------------------------
212
Tue Dec 20 12:02:33 UTC 2016 - scarabeus@opensuse.org
213
214
- Switch to use cmake macros
215
216
-------------------------------------------------------------------
217
Thu Sep 29 12:26:59 UTC 2016 - ismail@i10z.com
218
219
- Update to version 2.1
220
  Encoder enhancements
221
  * Support for qg-size of 8
222
  * Support for inserting non-IDR I-frames at scenecuts and when
223
    running with settings for fixed-GOP (min-keyint = max-keyint)
224
  * Experimental support for slice-parallelism.
225
  API changes
226
  * Encode user-define SEI messages passed in through x265_picture
227
    object.
228
  * Disable SEI and VUI messages from the bitstream
229
  * Specify qpmin and qpmax
230
  * Control number of bits to encode POC.
231
  Bug fixes
232
  * QP fluctuation fix for first B-frame in mini-GOP for 2-pass
233
    encoding with tune-grain.
234
  * Assembly fix for crashes in 32-bit from dct_sse4.
235
  * Threadpool creation fix in windows platform.
236
237
-------------------------------------------------------------------
238
Sun Aug 28 11:51:23 UTC 2016 - joerg.lorenzen@ki.tng.de
239
240
- Update to version 2.0
241
  API and Key Behavior Changes
242
  * x265_rc_stats added to x265_picture, containing all RC decision
243
    points for that frame.
244
  * PTL: high tier is now allowed by default, chosen only if
245
    necessary.
246
  * multi-pass: First pass now uses slow-firstpass by default,
247
    enabling better RC decisions in future passes.
248
  * pools: fix behaviour on multi-socketed Windows systems, provide
249
    more flexibility in determining thread and pool counts.
250
  * ABR: improve bits allocation in the first few frames, abr reset,
251
    vbv and cutree improved.
252
  New Features
253
  * uhd-bd: Enforce Ultra-HD Blu-ray Disc parameters
254
    (overrides any other settings).
255
  * rskip: Enables skipping recursion to analyze lower CU sizes
256
    using heuristics at different rd-levels. Provides good visual
257
    quality gains at the highest quality presets.
258
  * rc-grain: Enables a new rate control mode specifically for
259
    grainy content. Strictly prevents QP oscillations within and
260
    between frames to avoid grain fluctuations.
261
  * tune grain: A fully refactored and improved option to encode
262
    film grain content including QP control as well as analysis
263
    options.
264
  * asm: ARM assembly is now enabled by default, native or cross
265
    compiled builds supported on armv6 and later systems.
266
  Misc
267
  * An SSIM calculation bug was corrected
268
- soname bump to 87.
269
- Fixed arm.patch.
270
- Added libnuma-devel as buildrequires for arch x86_64 (except
271
  for openSUSE 13.1 because libnuma-devel >= 2.0.9 is required).
272
273
-------------------------------------------------------------------
274
Wed Feb  3 13:22:42 UTC 2016 - ismail@i10z.com
275
276
- Update to version 1.9
277
  API Changes:
278
  * x265_frame_stats returns many additional fields: maxCLL, maxFALL,
279
    residual energy, scenecut and latency logging
280
  * --qpfile now supports frametype 'K"
281
  * x265 now allows CRF ratecontrol in pass N (N greater than or equal to 2)
282
  * Chroma subsampling format YUV 4:0:0 is now fully supported and tested
283
  New Features:
284
  * Quant offsets: This feature allows block level quantization offsets
285
    to be specified for every frame. An API-only feature.
286
  * --intra-refresh: Keyframes can be replaced by a moving column
287
    of intra blocks in non-keyframes.
288
  * --limit-modes: Intelligently restricts mode analysis.
289
  * --max-luma and --min-luma for luma clipping, optional for HDR use-cases
290
  * Emergency denoising is now enabled by default in very low bitrate, 
291
    VBV encodes
292
  Presets and Performance:
293
  * Recently added features lookahead-slices, limit-modes, limit-refs
294
    have been enabled by default for applicable presets.
295
  * The default psy-rd strength has been increased to 2.0
296
  * Multi-socket machines now use a single pool of threads that can
297
    work cross-socket.
298
299
-------------------------------------------------------------------
300
Fri Nov 27 18:21:04 UTC 2015 - aloisio@gmx.com
301
302
- Update to version 1.8:
303
  API Changes:
304
  * Experimental support for Main12 is now enabled. Partial
305
    assembly support exists.
306
  * Main12 and Intra/Still picture profiles are now supported.
307
    Still picture profile is detected based on
308
    x265_param::totalFrames.
309
  * Three classes of encoding statistics are now available
310
    through the API.
311
    + x265_stats - contains encoding statistics, available
312
      through x265_encoder_get_stats()
313
    + x265_frame_stats and x265_cu_stats - contains frame
314
      encoding statistics, available through recon x265_picture
315
  * --csv
316
  * x265_encoder_log() is now deprecated
317
  * x265_param::csvfn is also deprecated
318
  * --log-level now controls only console logging, frame
319
    level console logging has been removed.
320
  * Support added for new color transfer characteristic ARIB
321
    STD-B67
322
  New Features:
323
  * limit-refs
324
    + This feature limits the references analysed for
325
      individual CUS.
326
    + Provides a nice tradeoff between efficiency and
327
      performance.
328
    + aq-mode 3
329
  * A new aq-mode that provides additional biasing for
330
    low-light conditions.
331
  * An improved scene cut detection logic that allows
332
    ratecontrol to manage visual quality at fade-ins and
333
    fade-outs better.
334
  Preset and Tune Options:
335
  * tune grain
336
    + Increases psyRdoq strength to 10.0, and rdoq-level to 2.
337
    + qg-size
338
  * Default value changed to 32.
339
- soname bump to 68
340
- Reworked arm.patch for 1.8
341
342
-------------------------------------------------------------------
343
Fri May 29 09:11:02 UTC 2015 - aloisio@gmx.com
344
345
- soname bump to 59
346
- Update to version 1.7
347
  * large amount of assembly code optimizations
348
  * some preliminary support for high dynamic range content
349
  * improvements for multi-library support
350
  * some new quality features
351
    (full documentation at: http://x265.readthedocs.org/en/1.7)
352
  * This release simplifies the multi-library support introduced
353
    in version 1.6. Any libx265 can now forward API requests to
354
    other installed libx265 libraries (by name) so applications
355
    like ffmpeg and the x265 CLI can select between 8bit and 10bit
356
    encodes at runtime without the need of a shim library or
357
    library load path hacks. See --output-depth, and
358
    http://x265.readthedocs.org/en/1.7/api.html#multi-library-interface
359
  * For quality, x265 now allows you to configure the quantization
360
    group size smaller than the CTU size (for finer grained AQ
361
    adjustments). See --qg-size.
362
  * x265 now supports limited mid-encode reconfigure via a new public
363
    method: x265_encoder_reconfig()
364
  * For HDR, x265 now supports signaling the SMPTE 2084 color transfer
365
    function, the SMPTE 2086 mastering display color primaries, and the
366
    content light levels. See --master-display, --max-cll
367
  * x265 will no longer emit any non-conformant bitstreams unless
368
    --allow-non-conformance is specified.
369
  * The x265 CLI now supports a simple encode preview feature. See
370
    --recon-y4m-exec.
371
  * The AnnexB NAL headers can now be configured off, via x265_param.bAnnexB
372
    This is not configurable via the CLI because it is a function of the
373
    muxer being used, and the CLI only supports raw output files. See
374
    --annexb
375
  Misc:
376
  * --lossless encodes are now signaled as level 8.5
377
  * --profile now has a -P short option
378
  * The regression scripts used by x265 are now public, and can be found at:
379
    https://bitbucket.org/sborho/test-harness
380
  * x265's cmake scripts now support PGO builds, the test-harness can be
381
    used to drive the profile-guided build process.
382
383
-------------------------------------------------------------------
384
Tue Apr 28 20:08:06 UTC 2015 - aloisio@gmx.com
385
386
- soname bumped to 51
387
- Update to stable version 1.6
388
  Perfomance changes:
389
  * heavy improvements for AVX2 capable platforms
390
    (Haswell and later Intel CPUs) and work efficiency
391
    improvements for multiple-socket machines.
392
  
393
  API changes:
394
  * --threads N replaced by --pools N,N and --lookahead-slices N
395
  * --[no-]rdoq-level N - finer control over RDOQ effort
396
  * --min-cu-size N - trade-off compression for performance
397
  * --max-tu-size N - trade-off compression for performance
398
  * --[no-]temporal-layers - code unreferenced B frames in temporal
399
    layer 1
400
  * --[no-]cip aliases added for --[no-]constrained-intra
401
  * Added support for new color transfer functions "smpte-st-2084"
402
    and "smpte-st-428
403
  * --limit-refs N was added, but not yet implemented
404
  * Deprecated x265_setup_primitives() was removed from the public
405
    API and is no longer exported DLLs
406
  
407
  Threading changes:
408
  * The x265 thread pool has been made NUMA aware.
409
  * The --threads  parameter, which used to specify a global
410
    pool size, has been replaced with a --pools parameter which
411
    allows you to specify a pool size per NUMA node (aka CPU socket
412
    or package). The default is still to allocate one pool worker
413
    thread per logical core on the machine, but with --pools one
414
    can isolate those threads to a given socket.
415
  * Other than socket isolation, the biggest visible change in the
416
    NUMA aware thread pools is the increase in work efficiency.
417
    The total utilization will generally decrease but the performance
418
    will increase since worker threads spend less time context
419
    switching.  Also, the threading of the lookahead was made more
420
    work-efficient. Each lookahead job is a much larger piece of work.
421
    Before (1.5):
422
    disable thread pool: --threads 1
423
    default thread pool: --threads 0
424
    restrict to 4 threads: --threads 4
425
    After (1.6):
426
    disable thread pools: --pools 0
427
    default thread pools: --pools *
428
    restrict to 4 threads: --pools 4
429
    restrict to 4 threads on socket 1: --pools -,4
430
    restrict to all threads on socket 0: --pools +,-
431
  
432
  Multi-lib interface:
433
  * In order to support runtime selection of a libx265
434
    shared library, we have introduced an x265_api structure
435
    and an x265_api_get() function. Applications which use
436
    this interface to acquire the libx265 functional interface
437
    will be able to use shim libraries to bind a particular build
438
    of libx265 at run time. See the API documentation for full
439
    details.
440
441
-------------------------------------------------------------------
442
Sun Feb 22 09:07:11 UTC 2015 - aloisio@gmx.com
443
444
- soname bump
445
- Update to stable version 1.5
446
  * improvements in Main10 compression efficiency and performance
447
    and psycho-visual optimizations now enabled by default
448
  Feature additions:
449
  * analysis re-use features have been completed
450
  * rate control zones have been introduced
451
  * --tune grain introduced
452
  * deblocking tC and Beta offsets are now configurable
453
  * denoise is seperately configurable for inter and intra CUs
454
  * frame based CSV logging has been improved
455
  * New support for VTune task profiles
456
  Presets and defaults:
457
  * ultrafast no longer disables the deblocking loop filter
458
  * psy-rd defaults to 0.3   (was 0, disabled)
459
  * psy-rdoq defaults to 1.0 (was 0, disabled)
460
  * aq-mode defaults to 1    (was 2, auto-variance)
461
  * 4:2:2 and 4:4:4 encodes no longer generate compliance warnings
462
  API changes:
463
  * param.rc.rateTolerance has been removed and replaced with a simpler
464
    param.rc.bStrictCbr flag.
465
  * --log-level debug is now --log-level 4 instead of --log-level 3.
466
    A new 'frame' log level was inserted at level 3 in order to support
467
    frame level CSV logging without also enabling frame level console
468
    logging. Using the string name 'debug' is unambiguous as its
469
    behavior has not changed.
470
  
471
- version 1.4
472
  * large refactoring in the analysis code
473
  Feature additions:
474
  * --pmode (parallel mode decision)
475
  * --pme (parallel motion estimation).
476
  Presets and defaults:
477
  * --amp is now respected in RD levels 2, 3, and 4 (previously only
478
    in 5 and 6).
479
  * --b-intra is now respected in all RD levels.
480
  * --fast-cbf, which has only ever effective at RD levels 5 and 6,
481
    is no longer enabled uselessly in the fastest presets.
482
  * --weightb is now enabled by default at presets slower, veryslow,
483
    and placebo.
484
  * --cu-lossless was changed to only attempt a lossless encode of
485
    the best lossy encode method. This made --cu-lossless a much less
486
    expensive encode option to have enabled, and hopefully made the
487
    feature more robust and maintainable.
488
  * The upper threshold for --psy-rdoq was raised to 50 (from 10)
489
    since the higher values were found to be beneficial for sources
490
    with high frequency noise (film grain).
491
  * The default thread pool size logic was updated to account for the
492
    addition of --pmode and --pme (if WPP is disabled but --pmode or
493
    --pme are enabled, a thread pool is still allocated).
494
  
495
-------------------------------------------------------------------
496
Mon Dec  8 04:53:31 UTC 2014 - crrodriguez@opensuse.org
497
498
- Ensure we use the proper CXXFLAGS, CFLAGS and therefore
499
  debuginfo packages are generated correctly.
500
501
-------------------------------------------------------------------
502
Sat Oct  4 15:24:23 UTC 2014 - aloisio@gmx.com
503
504
- Bumped to version hg20140928
505
506
-------------------------------------------------------------------
507
Thu Jun  5 14:55:45 UTC 2014 - guillaume@opensuse.org
508
509
- Fix ARM build with arm.patch from Arch Linux:
510
  https://github.com/archlinuxarm/PKGBUILDs/blob/master/extra/x265/arm.patch
511
512
-------------------------------------------------------------------
513
Thu May 08 00:00:00 UTC 2014 - Manfred.Tremmel@iiv.de
514
515
- added baselibs.conf
516
517
-------------------------------------------------------------------
518
Mon Mar 24 00:00:00 UTC 2014 - Manfred.Tremmel@iiv.de
519
520
- initial build of todays mercurial checkout
521