1 intel-vaapi-driver NEWS -- summary of changes. 2018-11-xxx
2 Copyright (C) 2009-2018 Intel Corporation
4 Version 2.3.0 - DD.Nov.2018
5 * Bump version to 2.3.0
6 * Add new PCI ID for KBL and CFL
7 * Fix frame corruption when there are big MVs in VP8 encoding
8 * Fix dynamically bitrate resetting in AVC encoding
9 * Fix build errors when the toolchain doesn't support -fstack-protector
10 * Fix memory leak issue
11 * Make sure the achieved bitrate meet the requirement VP8 encoding
12 * Optimize VPP on GEN8
14 Version 2.2.0 - 11.Jul.2018
15 * Bump version to 2.2.0
16 * Add new PCI ID for KBL-Y
18 * Fix for VC1 decoding issues
19 * Fix VP8 encoding issues
20 * Fix the over-run issue in HEVC encoding
21 * Fix the max MV length in MPEG-2 encoding
22 * Fix packed header mode
23 * Fix building issue on Android
25 Version 2.1.0 - 12.Feb.2018
26 * Bump version to 2.1.0
27 * Add support for Cannolake (aka. CNL)
28 - Decoding: H.264/MPEG-2/VC-1/JPEG/VP8/HEVC/HEVC 10-bit/VP9/VP9 10-bit
29 - Encoding: H.264/MPEG-2/JPEG/VP8/VP9/HEVC/HEVC 10-bit/{VP9,AVC} low power
30 - VPP: CSC/scaling/NoiseReduction/Deinterlacing{Bob, MotionAdaptive, MotionCompensated}/ColorBalance/STD
31 * Add support for VC1 interlaced video decoding
32 * Add support for Stats/PreEnc on GEN9
33 * Add support for vaExportSurfaceHandle()
34 * Add new PCI IDs for CFL
35 * Add mininum resolution query for encoder
36 * Ehance the logging to provide informational messages
37 * Fix VP9 brc issue on KBL
40 Version 2.0.0 - 21.Oct.2017
41 * Bump version to 2.0.0
42 * Add support for Coffee Lake (aka. CFL)
43 - Decoding: H.264/MPEG-2/VC-1/JPEG/VP8/HEVC/HEVC 10-bit/VP9/VP9 10-bit
44 - Encoding: H.264/MPEG-2/JPEG/VP8/VP9/HEVC/HEVC 10-bit/AVC low power CQP/CBR/VBR mode
45 - VPP: CSC/scaling/NoiseReduction/Deinterlacing{Bob, MotionAdaptive, MotionCompensated}/ColorBalance/STD
46 * Add support for H264 FEI
47 * Add support for HEVC ROI encoding
48 * Add support for intensity compensation for VC-1 decoding
49 * Improve the quality of the H264 encoder on BDW/BSW
50 * Improve the CSC performance between I420/NV12/P010/YUY2/VYUY format
51 * Improve the performace of va{Get, Put}Image for I420/NV12/P010/YUY2/VYUY format
52 * Fix image corruption for VP9 decoding
53 * Fix race condition in wayland support
54 * Fix ROI support in VDEnc support
55 * Fix corrupted stream when using VDEnc CBR/VBR
56 * Fix GCC 7.1.1 warnings/errors
57 * Update the shader for HEVC encoding
59 Version 1.8.3 - 28.Jun.2017
60 * Add support for Gemini Lake (aka. GLK)
61 - Decoding: H.264/MPEG-2/VC-1/JPEG/VP8/HEVC/HEVC 10-bit/VP9/VP9 10-bit
62 - Encoding: H.264/MPEG-2/JPEG/VP8/VP9/HEVC/HEVC 10-bit/AVC low power CQP mode
63 - VPP: CSC/scaling/NoiseReduction/Deinterlacing{Bob, MotionAdaptive, MotionCompensated}/ColorBalance/STD
64 * Improve the quality of the HEVC encoder on SKL+ for CQP and CBR mode
65 * Add support for HEVC VBR mode on SKL+
66 * Set the quality range for HEVC / AVC encoder to 7
67 * Fix VP9 encoding quality issue on KBL
68 * Fix build issue on Android
69 * Fix the wrong order for AUD NAL unit in AVC encoder
70 * Fix the condition of enabling H.264 MB rate control
71 * Fix the memory leak issue in JPEG decoding
73 Version 1.8.2 - 22.May.2017
74 * Add support for querying slice structure for AVC encoding
75 * Add support for AVC multi-slice encoding on SKL+
76 * Add support for MVC encoding on SKL+
77 * Fix bad frame on SKL and BXT when the quality level is set to 1
79 Version 1.8.1 - 10.Apr.2017
80 * Add support for VAConfigAttribEncMaxSlices
81 * Disable AVC multi-slice encoding on SKL+
82 * Disable AVC ROI encoding on SKL+
83 * Disable bitrate control per temporal layer on SKL+
84 * Disable MVC encoding on SKL+
86 Version 1.8.0 - 31.Mar.2017
87 * Improve the quality of the H.264 encoder on SKL+ for CQP and CBR mode
88 * Improve the quality of the VP8 encoder on BSW+ for CQP and CBR mode
89 * Add support for H.264 VBR mode on SKL+
90 * Add support for VP8 VBR mode on BSW+
91 * Add support for low-power H.264 encoder on BXT and KBL
92 * Add support for CBR / VBR with low-power H.264 encoder on SKL+ (A HuC Firmware and
93 a HuC supported Linux kernel are required)
94 * Add support for CSC and scaling with 10bit P010/I010 surface
95 * Optimize CSC and scaling with 8bit NV12 and I420 surface
96 * Fix the wrong memory object cache setting on SKL+
97 * Fix the EU number in media pipeline
98 * Fix the wrong bit shift in H.264 encoder
99 * Fix the 48bit graphics address on BSW+
100 * Fix building on NetBSD
102 - The new AVC encoder doesn't support MVC/SVC encoding
103 - The new AVC encoder doesn't support ROI encoding
104 - The new AVC encoder doesn't support multiple slice encoding
106 Version 1.7.3 - 10.Nov.2016
107 * Add support for HEVC 10bit encoding on KBL
108 * Integrate the Google Test Framework for unit testing
109 * Add support for bitrate control per temporal layer for SVC-T
110 * Fix VA_STATUS_ERROR_UNIMPLEMENTED when sharpening with I420 surface
111 (https://bugs.freedesktop.org/show_bug.cgi?id=96987)
112 * Fix crop issue when sharpening with NV12 surface
113 (https://bugs.freedesktop.org/show_bug.cgi?id=96988)
114 * Fix GPU hang issue when using encoding with low power on SKL GT3+
115 (https://bugs.freedesktop.org/show_bug.cgi?id=97872)
117 Version 1.7.2 - 05.Sep.2016
118 * Update PCI IDs for KBL
119 * Allow up to 8K JPEG decoding/encoding on SKL+
120 * Add support for ROI on IVB+
121 * Support I420/YV12 input surface for VP9 encoding
122 * Fix assertion failure when decoding stream through VLC
123 (https://bugs.freedesktop.org/show_bug.cgi?id=94007)
124 * Fix image corruption in ColorBalance and STDE on BDW+
125 (https://bugs.freedesktop.org/show_bug.cgi?id=95349)
126 * Fix run2run issue in H.264 encoder
127 (https://bugs.freedesktop.org/show_bug.cgi?id=96703)
128 * Fix video rendering corruption when using VAAPI postproc denoise on 1080p videos
129 (https://bugs.freedesktop.org/show_bug.cgi?id=96739)
130 * Fix image corruption in ColorBalance with hue=-180
131 (https://bugs.freedesktop.org/show_bug.cgi?id=96744)
132 * Fix memory leak in VP8 encoding
133 (https://bugs.freedesktop.org/show_bug.cgi?id=97272)
135 Version 1.7.1 - 21.Jun.2016
136 * Add support VP9 8bit encoding on KBL
137 * Add support for low-power/high-performance H.264 encoder on SKL
138 * Fix incorrect color space conversion in driver
139 (https://bugs.freedesktop.org/show_bug.cgi?id=94845)
140 * Fix FPS caculation for HEVC encoder
141 * Fix VP9 10bit decoding issue on KBL
142 * Fix the noise issue when VA_FILTER_SCALING_HQ upscaling from 1280x720 to 1920x1080 with YUY2 format on BDW+
143 (https://bugs.freedesktop.org/show_bug.cgi?id=94765)
145 Version 1.7.0 - 15.Mar.2016
146 * Add support for Kabylake
147 - Decoding: H.264/MPEG-2/VC-1/JPEG/VP8/HEVC/HEVC 10-bit/VP9/VP9 10-bit
148 - Encoding: H.264/MPEG-2/JPEG/VP8/HEVC
149 - VPP: CSC/scaling/NoiseReduction/Deinterlacing{Bob, MotionAdaptive, MotionCompensated}/ColorBalance/STD
150 * Add new SKL and BXT PCI IDs
151 * Fix lots of VP9 decoding issues on BXT
153 Version 1.6.2 - 15.Dec.2015
154 * Add support for Broxton
155 - Decoding: H.264/MPEG-2/VC-1/JPEG/VP8/HEVC/HEVC 10-bit/VP9
156 - Encoding: H.264/JPEG/VP8/HEVC
157 - VPP: CSC/scaling/NoiseReduction/Deinterlacing{Bob, MotionAdaptive, MotionCompensated}/ColorBalance/STD
158 * Add support for HEVC CBR on SKL
159 * Fix the broken VA_FILTER_SCALING_HQ on SKL
160 * Fix the incorrect loading of GPU shaders on GEN8/GEN9
161 * Fix the wrong address relocation in VPP on GEN8/GEN9
162 * Fix the wrong VAImage foramt
163 (https://bugs.freedesktop.org/show_bug.cgi?id=92088)
164 * Fix YUV to RGB conversion on GEN7/GEN8/GEN9
165 * Fix the segmentation fault causing by NULL buffer object on SNB
166 (The issue mentioned in https://bugs.freedesktop.org/show_bug.cgi?id=92811)
167 * Fix the wrong coordinate used in VPP
168 (The issue mentioned in https://bugs.freedesktop.org/show_bug.cgi?id=92811)
170 Version 1.6.1 - 09.Sep.2015
171 * Wrapper other backend driver to support VP9 hybrid decoding on BDW/BSW/SKL (--enable-hybrid-codec)
172 * Fix HEVC decoding issue on BSW/SKL
173 * Fix HEVC encoding on SKL GT3
174 * Fix GPU hang issue when decoding H.264 MBAFF clips
175 (https://bugs.freedesktop.org/show_bug.cgi?id=91207)
176 * Fix issues detected by klockwork scan
177 * Combine csc/scaling together to optimize the performance
179 Version 1.6.0 - 01.Jul.2015
180 * Add support for VP8 encoding (CQP, CBR) on BSW/SKL
181 * Add support for HEVC decoding on BSW
182 * Add support for HEVC encoding (CQP) on SKL
183 * Add support for low-power mode (VA_PROC_PIPELINE_FAST) in VPP to discard
184 any complex operation that would consume too many HW resources
185 * Fix memory leak issue for JPEG decoding
186 * Fix HEVC decoding issue on BSW/SKL
187 * Fix GPU hang issue caused by VP8 decoding on BDW/BSW
188 * Fix MADI/MCDI issues on SNB/IVB
189 * Improve the JPEG encoding quality
190 * Optimize MPEG-2 start code search on IVB
192 Version 1.5.1 - DD.03.2015
193 * Fix forward reference requirement for Bob deinterlacing
194 * Fix a lot of potential rendering issues on GEN8+
195 * Fix scaling of NV12 surfaces when no output_region is set
196 * Fix the broken attribute setting of i965_GetConfigAttrib
197 * Fix the GetConfigAttributes() for JPEGBaseline profile
198 * Fix the wrong overlap setting for VC-1 decoding on GEN6+
199 * Fix VP8 decoding issue on GEN8+, HW needs 1 extra byte for each partition
200 * Fix JPEG encoding issue.
201 * Add support for aub dump
202 * Enhance STD on GEN8+
203 * Implement max width and height in QuerySurfaceAttributes
204 * Add new SKL PCI ids
206 Version 1.5.0 - 28.Dec.2014
207 * Add support for Skylake
208 - Decoding: H.264/MPEG-2/VC-1/JPEG/VP8/HEVC
209 - Encoding: H.264/MPEG-2/JPEG
210 - VPP: CSC/scaling/NoiseReduction/Deinterlacing{Bob, MotionAdaptive, MotionCompensated}/ColorBalance/STD
211 * Add support for JPEG encoding on Braswell
212 * Add enhancement for video post/pre processing
213 * Fix out of tree builds (Emil Velikov)
215 Version 1.4.1 - 24.Oct.2014
216 * Use a new method to detect encoding capabilitiy on Haswell
218 Version 1.4.0 - 30.Sep.2014
219 * Add support for exporting VA buffer
220 * Add support for MVC decoding/encoding
221 * Add support for encoding quality level on Sandybride and newer
222 * Add support of inserting packed slice header & raw data for encoding
223 * Add support for Cherryview
224 * Fix the GPU hang issue on Ivybridge when using the gstreamer and mplayer to play back one H264 clip
225 (https://bugs.freedesktop.org/show_bug.cgi?id=80720)
226 * Fix the GPU hang issue on Sandybride and newer when playing back one H264 clip
227 (https://bugs.freedesktop.org/show_bug.cgi?id=76363)
228 * Fix the GPU hang issue on Haswell when using XBMC to play back one H264 clip
229 (https://bugs.freedesktop.org/show_bug.cgi?id=81447)
231 Version 1.3.2 - 16.Jun.2014
232 * Export JPEG format by vaDeriveImage()
233 * Add support for MADI on SNB
234 * H.264: fix the support for grayscale format (Y800)
235 * Fix vaGetConfigAttributes() to validate the profile/entrypoint pair
236 * Fix vaCreateConfig() to not override user chroma format
237 * Fix the scaling issue on IVB/HSW/BDW
238 * Fix https://bugs.freedesktop.org/show_bug.cgi?id=73424
239 * Fix https://bugs.freedesktop.org/show_bug.cgi?id=72522
240 * Fix https://bugs.freedesktop.org/show_bug.cgi?id=77041
241 * Quality improvement for H.264 encoding on BDW
243 Version 1.3.1 - 09.May.2014
244 * Add support for STE on Broadwell
245 * Add support for YV16
246 * Add support for user specified tiling and stride
247 * Fix VP8 decoding on Broadwell
248 * Fix the wrong alpha when convert NV12 into RGBA
249 * Fix https://bugs.freedesktop.org/show_bug.cgi?id=77386
251 Version 1.3.0 - 24.Mar.2014
252 * Add support for Broadwell
253 - Decoding: H.264/MPEG-2/VC-1/JPEG/VP8
254 - Encoding: H.264/MPEG-2
255 - VPP: CSC/scaling/NoiseReduction/Deinterlacing{Bob, MotionAdaptive, MotionCompensated}/Sharpening/ColorBalance
256 * Fix the wrong setting in MI_BATCH_BATCH_START
258 Version 1.2.2 - 16.Dec.2013
259 * Motion compensation DI on HSW
260 * Optimization of FPS for H.264 encoding on HSW
261 * Add brightness/contrast/hue/saturation support for rendering.
262 * Support BT601/BT709/SMPTE240 in vaPutSurface()
263 * Expose Constrained Baseline Profile instead of Baseline Profile for H.264
266 Version 1.2.1 - 23.Sep.2013
267 * Add PCI IDs for Bay Trail
268 * Performance improvement for MPEG-2 Encoding on IVB/HSW
269 * Add basic processing support for packed YUV to packed YUV on ILK+
270 * Check the underlying OS support for VEBOX on HSW
271 * Quality improvement for BobDI on SNB/IVB
272 * Add support for Motion Adaptive Deinterlacing on IVB
273 * vaDeriveImage() works for UYVY formats
274 * Fix thread safety issue
275 * Fix GPU hang issue when decoding some videos on SNB
276 * Fix output filter count from QueryVideoProcFilters()
278 Version 1.2.0 - 26.Jun.2013
279 * The new H.264 encoding API on SNB/IVB/HSW
281 - Entropy Coding: CAVLC/CABAC
282 - Rate Control: CQP, CBR
284 - Multi Slice encoding
285 - Configurable GOP Structure
286 * MPEG-2 encoding on IVB/HSW
289 - Configurable GOP Structure
290 * Video process on ILK/SNB/IVB/HSW
292 - CSC/scaling/NoiseReduction/Deinterlacing{Bob} on SNB/IVB
293 - CSC/scaling/NoiseReduction/Deinterlacing{Bob,MotionAdaptive}/Sharpening/ColorBalance on HSW
294 * Implement vaQuerySurfaceAttributes()
295 * Implement the new version of vaCreateSurfaces()
296 - Create VA surface with specified fourcc
297 - Create VA surface from external buffer
300 * Optimize H.264 encoding on IVB/HSW
301 * More reserved PCI IDs for HSW
304 Version 1.0.20 - 19.Mar.2013
305 * Add support for wayland 1.0 protocol (Rob Bradford)
306 * Add global alpha support for subpicture
307 * Add support for IA88/AI88 subpicture
308 * Support up to 4 subpictures for each VA surface
309 * Update PCI IDs for Haswell CRW
310 * Automake 1.13 fixups (Armin K)
311 * Fix libva-intel-driver-1.0.19 display corruption on IVB GT1
312 https://bugs.freedesktop.org/show_bug.cgi?id=57323
313 * Fix decoding with FREXT02_JVC_C.264 on SNB
314 https://bugs.freedesktop.org/show_bug.cgi?id=57720
315 * Fix H.264 decoding broken/visual errors on ILK (Tobias Jakobi)
316 https://bugs.freedesktop.org/show_bug.cgi?id=58875
317 * Fix GPU hung with h.264 video and a resolution of 1920x816 on IVB
318 https://bugs.freedesktop.org/show_bug.cgi?id=59050
320 Version 1.0.19 - 09.Nov.2012
321 * Add support for Haswell
322 * Add raw DRM support (Dmitry Ermilov)
323 * Add Wayland support
324 * Add support for display rotation attribute
325 * Support 4K encoding on IVB and HSW
326 * Drop explicit dependency on X11 and libva-x11
327 * Fix VC-1 decoding when VSTRANSFORM is 0
328 * Fix SIGSEGV caused by use-after-free of the bufmgr (Stéphane Marchesin)
329 * Fix thread safety issue (Gautam)
330 * Fix vaUnlockSurface() for libva trace
332 Version 1.0.18 - 02.Aug.2012
333 * Add JPEG decoding on Ivy Bridge
334 * Add support for a new Ivy Bridge chip
335 * Add support for vaSyncSurface() and vaQuerySurfaceStatus() (Dmitry Ermilov)
336 * Fix decoding of MPEG-2 videos with implicit IQ matrices
337 * Fix concurrent creation of VA objects (MT safety)
338 * Fix decoding of large resolution videos (up to 4K on IVB)
340 Version 1.0.17 - 02.Apr.2012
341 * Add support for IMC1/IMC3 surface formats
342 * Fix rendering of interlaced surfaces
343 * Fix MPEG-2 decoding of interlaced streams (SNB, IVB)
344 * Fix H.264 weighted prediction indicator (SNB)
345 * Fix and simplify calculation of H.264 macroblock bit offset (ILK, SNB, IVB)
347 Version 1.0.16 - 14.Feb.2012
348 * Fix VC-1 bitplane buffer size (SNB, IVB)
349 * Fix VC-1 motion vector modes for Ivy Bridge
350 * Fix MFX_QM_STATE for H.264 flat scaling lists (IVB)
351 * Fix and simplify AVC_REF_IDX_STATE setup (ILK, SNB, IVB)
352 * Fix memory leak of encoder buffers
353 * Fix check for internal VA surface format prior to rendering
354 * Add support for B43 chipset (Alexander Inyukhin)
356 Version 1.0.15 - 28.Oct.2011
357 * Add auto-generated Debian packaging
358 * Fix VC-1 decoding (TTFRM packing)
359 * Fix MPEG-2 decoding on Ivy Bridge
360 * Fix MPEG-2 decoding with sparse QM matrices updates
361 * Fix slice-param & slice-data buffer memory leaks
363 Version 1.0.14 - 28.Jul.2011
364 * Add H.264 encoding support to Ivy Bridge
365 * Add support for VA_SUBPICTURE_DESTINATION_IS_SCREEN_COORD
366 * Fix next slice vertical position for MPEG-2 (#38628)
367 * Fix subpicture scale factor for Y axis
368 * Fix GPU hang when decoding field coded MPEG-2 picture
369 * Fix memory leaks (Edgar Hucek)
371 Version 1.0.13 - 25.May.2011
372 * Add H.264 encoding support to Sandy Bridge
373 * Add MPEG-2, VC-1 and H.264 decoding support to Ivy Bridge
374 * Fix thread safety issues
376 Version 1.0.11 - 14.Mar.2011
377 * Add deinterlacing & scaling support to Sandy Bridge
378 * Add vaDeriveImage() implementation
379 * Fix VC-1 decoding for Main/Simple profiles
381 Version 1.0.9 - 27.Jan.2011
382 * Add VC-1 decoding support to Sandy Bridge
384 Version 1.0.8 - 21.Jan.2011
385 * Add support for IA44/AI44 subpicture formats (#32868)
387 Version 1.0.7 - 17.Dec.2011
388 * Add MPEG-2 and H.264 decoding support to Sandy Bridge
390 Version 1.0.5 - 02.Sep.2010
391 * Add deinterlacing & scaling support to Ironlake
393 Version 1.0.4 - 13.Jul.2010
394 * Add vaGetImage() implementation
395 * Add support for RGBA subpictures
396 * Fix H.264 decoding on Ironlake
398 Version 1.0.3 - 10.Jun.2010
399 * Add H.264 decoding support to Ironlake