OSDN Git Service
Zhao Yakui [Sun, 6 Sep 2015 01:39:14 +0000 (09:39 +0800)]
Call the wrapped backend driver for the given decoding
The wrapped vaBeginPicture/vaRenderPicture/vaEndPicture are called.
Currently the wrapper is for the VP9 decoding.
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Sean V Kelley <seanvk@posteo.de>
(cherry picked from commit
12a09a2efe213af350f29f342da6842d66dab63e)
Zhao Yakui [Sun, 6 Sep 2015 01:39:13 +0000 (09:39 +0800)]
Add the support of wrapper the VA Buffer to the backend driver
The obj_context is passed when calling vaCreateBuffer, which can be
used to check whether it belongs to the wrapped context. If one VA buffer
belongs to wrapped buffer, the callback function of backend driver will
be called for the corresponding VA buffer.
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Sean V Kelley <seanvk@posteo.de>
(cherry picked from commit
f75ddc58b16cb93e85e737792c431415288cafb1)
Zhao Yakui [Sun, 6 Sep 2015 01:39:12 +0000 (09:39 +0800)]
Add one function to wrapper VA surface into backend driver
Currently only NV12 surface is supported as the decoding uses the NV12 format.
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Sameer Kibey <sameer.kibey@intel.com>
Signed-off-by: Sean V Kelley <seanvk@posteo.de>
(cherry picked from commit
44e3ec2a98e99ccd839bd05cba45f0b8c9afe437)
Zhao Yakui [Sun, 6 Sep 2015 01:39:11 +0000 (09:39 +0800)]
Call the wrapped function to free wrapped surface/buffer
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Sean V Kelley <seanvk@posteo.de>
(cherry picked from commit
464ebff117df40b04c4f8da560c311e470d5a112)
Zhao Yakui [Sun, 6 Sep 2015 01:39:10 +0000 (09:39 +0800)]
Call wrapped driver to handle config/context related with VP9 decoding
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Sean V Kelley <seanvk@posteo.de>
(cherry picked from commit
815d17f944b13ebc1eca62572dbec0c49ea01999)
Zhao Yakui [Sun, 6 Sep 2015 01:39:09 +0000 (09:39 +0800)]
Wrapper the DriverContextP of backend driver
The default directory of backend driver is used.(LIBVA_DRIVERS_PATH).
Only when the backend driver exists, the wrapper is initialized and added.
Otherwise it won't be initialized.
And the option of "enable-wrapper" is added, which is used to determine whether
the wrapper of backend driver is supported.
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Sean V Kelley <seanvk@posteo.de>
(cherry picked from commit
3bbaff8b4180d2510c8c77d9e4d19bf84853f31a)
Zhao Yakui [Sun, 6 Sep 2015 01:39:08 +0000 (09:39 +0800)]
Add one field for Config/Context/Surface/Buffer to store the wrapper content
This is to do the preparation that the libva-intel-driver can be the user of
other backend driver.
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Sean V Kelley <seanvk@posteo.de>
(cherry picked from commit
2f254ecd154d59553a1e3949f66161bade6ca2b7)
Lim Siew Hoon [Wed, 26 Aug 2015 11:43:34 +0000 (19:43 +0800)]
Clean up unused local variable 'i965'
Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
(cherry picked from commit
020b341cf959c7ae10a233972fcbe29c47d86e68)
Lim Siew Hoon [Wed, 26 Aug 2015 09:20:34 +0000 (17:20 +0800)]
Clean up the duplicate extra two line of code
Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
(cherry picked from commit
cec8f05596a4bf11070fffeec1b4c7e5b7d44323)
Lim Siew Hoon [Wed, 26 Aug 2015 08:27:59 +0000 (16:27 +0800)]
Fix if statement checking sampling factor for YUV422V_4Y
Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
(cherry picked from commit
d7c2ba36a1bce5d4bd2e40fd161eae160946bd76)
Lim Siew Hoon [Wed, 26 Aug 2015 04:31:21 +0000 (12:31 +0800)]
Fix suspiciously placed semicolon at if statement.
Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
(cherry picked from commit
eb06298ecadf53a752abbb99208a37bda3e90c30)
Lim Siew Hoon [Wed, 26 Aug 2015 03:13:44 +0000 (11:13 +0800)]
Fix memset initialize for huff_co_table and huff_si_table array
Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
(cherry picked from commit
e12ddd354454a6491b24be202f0f56d401ab0a1b)
Lim Siew Hoon [Wed, 26 Aug 2015 02:55:18 +0000 (10:55 +0800)]
Fix memset initialize value for huff_size_table and huff_code_table
Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
(cherry picked from commit
d69346b33e31efac0e7338bc24718eef76f329da)
Lim Siew Hoon [Thu, 20 Aug 2015 10:29:09 +0000 (18:29 +0800)]
Fix klockwork critical message hit on calloc function usage
The calloc function maybe return NULL, it will causing
memory access violation if continue using NULL C structure.
Add assert function to do checking on its.
bugzilla:
https://bugs.freedesktop.org/show_bug.cgi?id=91699
Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
(cherry picked from commit
d117b9d30a00c811eb7e636c772979de846d30c8)
Xiang, Haihao [Mon, 3 Aug 2015 06:32:48 +0000 (14:32 +0800)]
encode/hevc: Check slice type first in case user passes wrong parameters to driver
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
(cherry picked from commit
9170fed321780f394e8eae4a789c31120c4e957c)
Xiang, Haihao [Mon, 3 Aug 2015 06:32:34 +0000 (14:32 +0800)]
encode/hevc: Check the correct BO before unreferencing it
v2: Change the log message per Emil's suggestion
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
(cherry picked from commit
1c5a8431e581eb26240c765d28f89e06138ca879)
Joel Holdsworth [Wed, 26 Aug 2015 23:21:12 +0000 (00:21 +0100)]
Added LIBVA_DRIVERS_PATH configure argument
(cherry picked from commit
c1f6411d3e0337226e157a51f8aab6a9c4e8b434)
Zhao Yakui [Tue, 25 Aug 2015 05:35:21 +0000 (13:35 +0800)]
Decoding: Export the attribute of slice mode for decoding
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Reviewed-by: Xiang Haihao <haihao.xiang@intel.com>
(cherry picked from commit
29f4234504fd99299997a3fc2f01393fb77030b7)
Zhao Yakui [Tue, 25 Aug 2015 05:35:16 +0000 (13:35 +0800)]
Remove the redundant check in vaBeginPicture call
The corresponding check is already executed when calling vaCreateConfig.
So the redundant check is removed.
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Reviewed-by: Xiang Haihao <haihao.xiang@intel.com>
(cherry picked from commit
e751897e64d1d37d6c592b71a8cc7ea8bc8a0b7f)
Zhao Yakui [Tue, 25 Aug 2015 05:35:08 +0000 (13:35 +0800)]
Add one field to store the expected VA_RT_FORMAT for surface
The VA_RT_FORMAT_XXX is also used to derive the corresponding layout of
VA SURFACE.For example: VA_RT_FORMAT_YUV420/422, RGB32 and so on.
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Reviewed-by: Xiang Haihao <haihao.xiang@intel.com>
(cherry picked from commit
02a2d4cb26e9a651b33a6e35c665b287155bbb83)
Zhao Yakui [Fri, 14 Aug 2015 04:13:13 +0000 (12:13 +0800)]
VPP: Initialize the uninitialed surface to avoid NULL GPU buffer
Sometimes the surface allocation is deferred. In such case it should be
checked correctly before it is using. Otherwise the corresponding
GPU buffer is NULL.
This is to fix the regression issue reported by XBMC.
Tested-by: Zaverel <zaverel@free.fr>
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
(cherry picked from commit
7c47a8f74878904e0d2fbb5da966552f783d74ab)
Zhao Yakui [Fri, 14 Aug 2015 04:13:08 +0000 (12:13 +0800)]
VPP: Flush batch buffer to assure that previous GPU operation is submitted
Tested-by: Zaverel <zaverel@free.fr>
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
(cherry picked from commit
67e122a4b100365d5d8bb6377c73e39f6c44abf9)
Xiang, Haihao [Thu, 23 Jul 2015 02:05:37 +0000 (10:05 +0800)]
encode/hevc: fix HEVC encode on SKL GT3
GT3 has 2 BSD rings, but HEVC commands can be only dispatched to BSD ring 0.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Reviewed-by: Zhao Yakui <yakui.zhao@intel.com>
(cherry picked from commit
611d8ea9d75dc026c203e3ebe53b434769d4587c)
Zhao Yakui [Wed, 15 Jul 2015 21:16:41 +0000 (17:16 -0400)]
VPP: Combine the CSC/Scaling together to optimize the performance
Currently it is divided into two steps when the video format is invovled.
In such case it is not efficient.
V1->V2: Follow Haihao's comment to call back the missing operation of
handle background color
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
(cherry picked from commit
4bda4667fd635df5bd27ce01353a3b6d6bf85508)
Xu Guangxin [Wed, 1 Jul 2015 01:49:11 +0000 (09:49 +0800)]
CreateSurfaces2: forward function return to caller
we did not check following function's return:
i965_surface_native_memory
i965_suface_external_memory
i965_check_alloc_surface_bo
It will be in trouble if underlay buffer allocation is failed.
(cherry picked from commit
12b3d9ef379e6159e30c2aafc040f1137cd4141a)
Xiang, Haihao [Wed, 8 Jul 2015 01:33:22 +0000 (09:33 +0800)]
1.6.1.pre1 for development
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
(cherry picked from commit
d06c17e9c0d4a11a3efaead7da63765148bf938e)
Gwenole Beauchesne [Tue, 7 Jul 2015 08:04:37 +0000 (10:04 +0200)]
vpp/avs: fix license terms (MIT).
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
(cherry picked from commit
fb5e1cd86047e2683f169cd52cc27861447321cf)
Zhao Yakui [Mon, 6 Jul 2015 17:45:47 +0000 (01:45 +0800)]
H264: Use macroblock pair to calculate H264 decoding parameter under MBAFF flag
Based on the H264 spec the macroblock pair should be used to calculate
the corresponding parameters under MBAFF.(mb-adaptive frame-field).
Otherwise the wrong parameter is sent to GPU HW.
Fix the GPU hang issue in https://bugs.freedesktop.org/show_bug.cgi?id=91207
Tested-by: Lim, Siew Hoon <siew.hoon.lim@intel.com>
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
(cherry picked from commit
7bb3658212f49a6f8d3d61b0b5d161aca73c2a11)
Xiang, Haihao [Mon, 29 Jun 2015 05:05:51 +0000 (13:05 +0800)]
dec/hevc: Use a different equation for metadata tile column buffer on BSW
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Reviewed-by: Zhao Yakui <yakui.zhao@intel.com>
(cherry picked from commit
8d11fd7dd7952551b2d57f900ce1f408a35616a1)
Xiang, Haihao [Mon, 29 Jun 2015 05:00:57 +0000 (13:00 +0800)]
dec/hevc: Use the same equation for each metadata buffer no matter slice type
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Reviewed-by: Zhao Yakui <yakui.zhao@intel.com>
(cherry picked from commit
6ff572fb94fce0b941d56eb7c0f45d82c1672ea3)
fritsch [Wed, 24 Jun 2015 08:18:11 +0000 (10:18 +0200)]
Gen75_vpp: Don't assert on BGRA input and output
(cherry picked from commit
e49960198a4c53ad96e36e0952db514764af06f6)
Xiang, Haihao [Wed, 1 Jul 2015 08:26:03 +0000 (16:26 +0800)]
libva-intel-driver 1.6.0
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Wed, 24 Jun 2015 05:37:04 +0000 (13:37 +0800)]
version 1.6.0.pre2
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Qu,Pengfei [Thu, 18 Jun 2015 01:42:51 +0000 (09:42 +0800)]
FIX:HEVC enc cause GPU hang when lcu_size=32 with 720x480 and 176x144
Signed-off-by: Qu,Pengfei <Pengfei.Qu@intel.com>
(cherry picked from commit
0f6143e2e4bd70217887e1ad86a76200ad8b38a8)
Zhong Li [Mon, 8 Jun 2015 04:42:21 +0000 (12:42 +0800)]
VP8 HWEnc: Modify qp threshold value for mode cost calculatation
The patch is helpful to improve quality when qp is lower than the
threshold value.
Signed-off-by: Zhong Li <zhong.li@intel.com>
(cherry picked from commit
e797089446c1f5b71b239b9046d76e054dfcba59)
Zhao Yakui [Tue, 23 Jun 2015 01:38:32 +0000 (09:38 +0800)]
VPP: Configure SURFACE_STATE based on HW requirement to fix out-of-bound access issue
Otherwise some pixles will be regarded as out-of-bound and the
access will be dropped.
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Acked-by: Xiang haihao <haihao.xiang@intel.com>
(cherry picked from commit
d5cd551887c8f4e5408327aba993e9927dd7d297)
Zhao Yakui [Tue, 23 Jun 2015 01:38:25 +0000 (09:38 +0800)]
BDW/CHV/SKL: Follow the HW alignment requirement to access GPU buffer correctly
Otherwise the buffer access is incorrect.
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Acked-by: Xiang haihao <haihao.xiang@intel.com>
(cherry picked from commit
fbab204929326567c876a48c0552430dd67a9852)
Xiang, Haihao [Thu, 4 Jun 2015 01:41:02 +0000 (09:41 +0800)]
Update NEWS
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 4 Jun 2015 02:05:36 +0000 (10:05 +0800)]
Update the dependency on VA API
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 4 Jun 2015 05:54:18 +0000 (13:54 +0800)]
Add vp8_inter_frame_gen8.asm and vp8_intra_frame_gen8.asm to the core file list
Otherwise the packakge created by 'make dist' isn't buildable.
Remove vp8_inter_frame_gen9.asm and vp8_intra_frame_gen9.asm as they are the same
of vp8_inter_frame_gen8.asm and vp8_intra_frame_gen8.asm.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 4 Jun 2015 02:17:48 +0000 (10:17 +0800)]
Add Android.mk to the corresponding EXTRA_DIST
'make dist' can include all Android.mk files in the release package
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=90541
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 20 Mar 2015 04:01:07 +0000 (12:01 +0800)]
Fix 'make dist'
Otherwise the tar package created by 'make dist' is not buildable
(cherry picked from commit
2d0ce24c66c14c3f77bef54bdc4605241e0527bd)
Xiang, Haihao [Mon, 16 Mar 2015 07:12:44 +0000 (15:12 +0800)]
Update NEWS
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
(cherry picked from commit
3c66aa58ccb0fcb393472eeaa6a9188216683a79)
Xiang, Haihao [Wed, 3 Jun 2015 01:42:03 +0000 (09:42 +0800)]
dec/vp8: fix segmentation update
Segment-based adjustments only occur if segmentation is enabled ($9.3).
Cc: Zhao Yakui <yakui.zhao@intel.com>
Tested-by: Charles, Daniel <daniel.charles@intel.com>
Acked-by: Zhao, Yakui <yakui.zhao@intel.com>
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Signed-off-by: Sean V Kelley <seanvk@posteo.de>
Sreerenj Balachandran [Wed, 27 May 2015 09:35:35 +0000 (12:35 +0300)]
HEVC/enc: Fix Multi Slice Encoding.
Fix the calculation of horizontal and vertical CTU position for next slice.
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Sreerenj Balachandran [Fri, 22 May 2015 01:46:05 +0000 (04:46 +0300)]
HEVC: encoder_utils: Fixes for packed slice header generation.
-- Write no_output_of_prior_pics_flag to bitstream header for IRAP pictures
-- The slice_temporal_mvp_enabled_flag should only presnt in non-IDR frames.
-- Write collocated_from_l0_flag to bitstream header for B slice.
-- The max_num_merge_cand should be 5 - MaxNumMergeCand
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Reviewed-by: Zhao Yakui <yakui.zhao@intel.com>
Sreerenj Balachandran [Fri, 22 May 2015 01:46:04 +0000 (04:46 +0300)]
HEVC: Fix the nal unit type generation in packed slice header.
Generate the Nal unit type for packed slice headers based
on idr_pic_flag and reference_pic_flag.
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Reviewed-by: Zhao Yakui <yakui.zhao@intel.com>
Sreerenj Balachandran [Fri, 22 May 2015 01:46:03 +0000 (04:46 +0300)]
HEVC: Fix the Wrong slice type usage
Don't mix the slice_type values of h264 and h265.
The SLICE_TYPE values of H264 and HEVC are different.
H264: Bslice_type = 1, Pslice_type = 0
HEVC: Bslice_type = 0, Pslice_type = 1
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Reviewed-by: Zhao Yakui <yakui.zhao@intel.com>
Andy Furniss [Thu, 26 Mar 2015 14:34:48 +0000 (14:34 +0000)]
VPP: Enable field rate madi/mcdi. Only second hunk is tested
Signed-off-by: Andy Furniss <adf.lists@gmail.com>
Xiang, Haihao [Mon, 23 Mar 2015 01:41:52 +0000 (09:41 +0800)]
VPP: Make sure the store buffer is allocated
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 19 Mar 2015 06:02:57 +0000 (07:02 +0100)]
VPP: Adjust the parameter settings to DI on GEN6/GEN7
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Gwenole Beauchesne [Thu, 19 Mar 2015 06:02:56 +0000 (07:02 +0100)]
vpp: add support for Motion-Compensated deinterlacing on Ivybridge.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
Gwenole Beauchesne [Thu, 19 Mar 2015 06:02:55 +0000 (07:02 +0100)]
vpp: fix advanced deinterlacing on Sandybridge and Ivybridge.
This fixes support for Motion Adaptive deinterlacing mode on both
Sandybridge and Ivybridge platforms. In particular, correct field
ordering is now supported, and STMM ping-pong buffering is added.
v2: changed STMM surface format to Y800 for a single plane.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
Gwenole Beauchesne [Thu, 19 Mar 2015 06:02:54 +0000 (07:02 +0100)]
vpp: fix memory leak in DNDI code path.
The original current_out_surface was never released on exit. Main
reason for that is the legacy VPP framework that did not allow the
VADriverContextP handle to be passed down to the desired .finalize()
hook. Improved that to bring it on par with the VEBOX code path.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
Xiang, Haihao [Fri, 22 May 2015 08:47:19 +0000 (16:47 +0800)]
Bump version to 1.6.0.pre1
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Zhong Li [Fri, 22 May 2015 08:33:53 +0000 (16:33 +0800)]
VP8 HWEnc: Init CBR QP at begining of gen8_mfc_vp8_init
Initialize CBR QP at begining of gen8_mfc_vp8_init(), because this
funtion will use qp to init prob_skip_false.
Signed-off-by: Zhong Li <zhong.li@intel.com>
Zhong Li [Fri, 22 May 2015 06:06:04 +0000 (14:06 +0800)]
VP8 HWEnc: Fix CBR qp setting for vme cost
1. The q_index range of vp8 is different from h264, it's need to be
mapped to avc qp range.
2. For CBR case, qp should be set to CBR calculated value.
Signed-off-by: Zhong Li <zhong.li@intel.com>
Reviewed-by: Zhao Yakui <yakui.zhao@intel.com>
U. Artie Eoff [Tue, 19 May 2015 21:59:26 +0000 (14:59 -0700)]
gen8_mfd: free surface used by JPEG decode
This is a follow up to previous commit:
commit
8dda0650b55c467200c34ada127b5d9b54edea5c
Author: Zhao Yakui <yakui.zhao@intel.com>
Date: Tue May 5 17:56:38 2015 +0800
Decode: Free the allocated internal surface used by JPEG to avoid memory leak
For GEN8, this code path is normally disabled by default.
However, one can enable this code path by defining JPEG_WA
during compilation. In that case, we would enable the
same memory leak. Thus, apply the same fix in gen8_mfd to
fix it.
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
Signed-off-by: Sean V Kelley <seanvk@posteo.de>
Tested-by: Sean V Kelley <seanvk@posteo.de>
Zhao Yakui [Tue, 5 May 2015 09:56:38 +0000 (17:56 +0800)]
Decode: Free the allocated internal surface used by JPEG to avoid memory leak
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Sean V Kelley <seanvk@posteo.de>
Tested-by: Sean V Kelley <seanvk@posteo.de>
Zhong Li [Mon, 4 May 2015 05:12:25 +0000 (13:12 +0800)]
VP8 HWEnc: Fix vp8 mv incorrectly stored issue
As vp8 spec, all luma motion vectors are doubled stored.
This patch has much benefit to P frame qualtity.
Signed-off-by: Zhong Li <zhong.li@intel.com>
Xiang, Haihao [Thu, 30 Apr 2015 07:55:40 +0000 (15:55 +0800)]
Fix the build on Android
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Zhong Li [Fri, 24 Apr 2015 08:51:00 +0000 (16:51 +0800)]
VP8 HWEnc: Alloc larger memory for internal buffer
It is to prevent the internal bitstream buffer overflow when qp is low.
Signed-off-by: Zhong Li <zhong.li@intel.com>
Zhong Li [Fri, 24 Apr 2015 06:57:50 +0000 (14:57 +0800)]
VP8 HWEnc: Add CBR Support
Add bit rate control (CBR) for vp8 hw encoding
v1->v2: follow haihao's comment to update this patch
Signed-off-by: Zhong Li <zhong.li@intel.com>
Xiang, Haihao [Wed, 22 Apr 2015 07:33:51 +0000 (15:33 +0800)]
HEVC/dec: correct the frame store index
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Wed, 22 Apr 2015 07:33:50 +0000 (15:33 +0800)]
HEVC/dec: Fix collocated_ref_idx and collocated_from_l0_flag
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Wed, 22 Apr 2015 07:33:49 +0000 (15:33 +0800)]
HEVC/dec: Make sure the derived value for ChromaLog2WeightDenom is in the the range of 0 to 7
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Wed, 22 Apr 2015 07:33:48 +0000 (15:33 +0800)]
HEVC/dec: Fix weight/offset in HCP_WEIGHTOFFSET
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 17 Apr 2015 08:41:24 +0000 (16:41 +0800)]
Fix segmentation fault
The segmentation fault occurs when CBR is selected without HRD parameter
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Qu,Pengfei [Wed, 15 Apr 2015 05:56:44 +0000 (13:56 +0800)]
HEVC enc:Added 4K&2K support; Added Profile&Level 5.1 above
Signed-off-by: Qu,Pengfei <Pengfei.Qu@intel.com>
Xiang, Haihao [Tue, 31 Mar 2015 04:48:41 +0000 (12:48 +0800)]
Allow va{Get,Put}Image() to use derived image
The surface can't be the same surface from which the image has
been derived.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Reviewed-by: Sean V Kelley <seanvk@posteo.de>
Tested-by: Sean V Kelley <seanvk@posteo.de>
Sirisha Muppavarapu [Mon, 23 Mar 2015 21:16:02 +0000 (14:16 -0700)]
Fix the quality factor.
The following are added in this commit:
1) Added lower bound to the quality factor.
2) Added extensive comments on scaling and normalization of the quality factor.
Daniel Charles [Thu, 3 Jul 2014 21:28:50 +0000 (14:28 -0700)]
check that intel-gen4asm tool is actually present
intel-gen4asm tool has to be present on the host tools so that
it can actually be used. Cross compiling shows problems when the
gpu-tools version is met but the tool is not available on the PATH
So, first check that the tool is available and later check for version
before defining HAVE_GEN4ASM.
Signed-off-by: Daniel Charles <daniel.charles@intel.com>
(cherry picked from commit
038097c00ad7b4f2e0fd572ee20f255dd378b5cb)
Conflicts:
configure.ac
Gwenole Beauchesne [Fri, 20 Mar 2015 15:09:42 +0000 (16:09 +0100)]
vpp: add support for "low-power" mode.
Add support for "low-power" mode expressed with VA_PROC_PIPELINE_FAST
flag set to VAProcPipelineParameterBuffer.pipeline_flags. The purpose
is to discard any complex operation that would consume too many HW
resources.
While doing so, also try to optimize for cases where we only want to
perform format conversion, scaling and basic bob-deinterlacing.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
Olivier Crete [Mon, 9 Mar 2015 22:20:34 +0000 (18:20 -0400)]
gen7_mfd: Optimise start code search
Code inspired from GStreamer
See https://bugs.freedesktop.org/show_bug.cgi?id=89507
Signed-off-by: Olivier Crete <olivier.crete@collabora.com>
Sean V Kelley [Wed, 18 Feb 2015 16:29:55 +0000 (08:29 -0800)]
Add support for HEVC decoding on CHV
We can re-use SKL HEVC decode pipeline
Signed-off-by: Sean V Kelley <seanvk@posteo.de>
Cc: haihao.xiang@intel.com
Cc: focus.luo@intel.com
(cherry picked from commit
78171ec3b8e73071405d9ff6ecbddc05a6787001)
Zhong Li [Fri, 6 Feb 2015 08:56:07 +0000 (16:56 +0800)]
MPEG2 ENC: Remove gen9 pak pipeline code
SKL pak pipeline of mpeg2 encoding is same as gen8,
so remove the redundant code
Signed-off-by: Zhong Li <zhong.li@intel.com>
(cherry picked from commit
ac46de469dd5eeaed34be0510631228a07748ec3)
Zhong Li [Fri, 6 Feb 2015 08:29:50 +0000 (16:29 +0800)]
VP8 DEC: Change error concealment method
Use intra prediciton as error concealment method, instead of inter P
copy.
Signed-off-by: Zhong Li <zhong.li@intel.com>
(cherry picked from commit
8d8b4a577fbaa8d278fbc5fe213023cfeea5d57a)
Qu,Pengfei [Mon, 26 Jan 2015 05:01:23 +0000 (13:01 +0800)]
Disable the context check to avoid JPEG ENC failed
https://bugs.freedesktop.org/show_bug.cgi?id=88728
Signed-off-by: Qu,Pengfei <Pengfei.Qu@intel.com>
(cherry picked from commit
a8ca5f911c7c19b5ede3f96ac6113606b9dd4d95)
Qu,Pengfei [Thu, 8 Jan 2015 08:41:26 +0000 (16:41 +0800)]
Just Style alignment
Signed-off-by: Qu,Pengfei <Pengfei.Qu@intel.com>
(cherry picked from commit
22439f1fcebbd2c1d563503720b1123a4bb97160)
Qu,Pengfei [Thu, 8 Jan 2015 08:40:07 +0000 (16:40 +0800)]
HEVC ENC:Added HEVC support in API function
Signed-off-by: Qu,Pengfei <Pengfei.Qu@intel.com>
(cherry picked from commit
d4f1087a0606c7c8d2d5fd65d9f46990f41ce93a)
Qu,Pengfei [Thu, 8 Jan 2015 08:39:38 +0000 (16:39 +0800)]
HEVC ENC:Added pipeline init
Signed-off-by: Qu,Pengfei <Pengfei.Qu@intel.com>
(cherry picked from commit
2759cabfa57c6e78ab2033cad4e7c2cbf2b9d4e2)
Qu,Pengfei [Thu, 8 Jan 2015 08:39:18 +0000 (16:39 +0800)]
HEVC ENC:Added VME pipeline
Signed-off-by: Qu,Pengfei <Pengfei.Qu@intel.com>
(cherry picked from commit
2a85633e34a4e66b18634e7b53cc91aa44ad2c2b)
Conflicts:
src/gen6_mfc_common.c
Qu,Pengfei [Thu, 8 Jan 2015 08:38:52 +0000 (16:38 +0800)]
HEVC ENC:Added PAK pipeline
Signed-off-by: Qu,Pengfei <Pengfei.Qu@intel.com>
[Fix PAK-BSE data start offset in HCP_SLICE_STATE]
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
(cherry picked from commit
3f47222004c6c2e575b170c7c7c3be00f61df302)
Qu,Pengfei [Thu, 8 Jan 2015 08:38:25 +0000 (16:38 +0800)]
HEVC ENC:Added slice header generated internally
Signed-off-by: Qu,Pengfei <Pengfei.Qu@intel.com>
(cherry picked from commit
2c54b96fe89aa0839f8c34935a84b79c41fde55d)
Conflicts:
src/i965_encoder_utils.h
Qu,Pengfei [Thu, 8 Jan 2015 08:23:43 +0000 (16:23 +0800)]
HEVC ENC:Added PAK context for HEVC
Signed-off-by: Qu,Pengfei <Pengfei.Qu@intel.com>
(cherry picked from commit
41f23f3dcfe24ca9493b36cb00bab5317584b099)
Zhong Li [Thu, 15 Jan 2015 14:04:59 +0000 (22:04 +0800)]
VP8 HWEnc: Add BSW VP8 HWEnc support
Add BSW vp8 encoding support, and let SKL and BDW use the same PAK pipeline.
Signed-off-by: Zhong Li <zhong.li@intel.com>
(cherry picked from commit
c2be56ae6f3628ea246a1dd02e5cac18da84df56)
Zhong Li [Thu, 15 Jan 2015 14:04:58 +0000 (22:04 +0800)]
VP8 HWEnc: declare copyright and license of vp8_probs.h
Signed-off-by: Zhong Li <zhong.li@intel.com>
(cherry picked from commit
a52a5ffe1dc62ff12989e329860ae81ced247f00)
Zhong Li [Thu, 15 Jan 2015 14:04:57 +0000 (22:04 +0800)]
VP8 HWEnc: vp8 encode quality optimization
1. Add mv and mode cost calc
2. Support 16x16 and 4x4 intra prediction
3. Support multi-mode intar prediction
4. Support 16x16 New_MV mode inter prediction
Signed-off-by: Zhong Li <zhong.li@intel.com>
(cherry picked from commit
a25bda914d4041a96252bd24a597558af3237b15)
Zhong Li [Thu, 15 Jan 2015 14:04:56 +0000 (22:04 +0800)]
VP8 HWEnc: Calc vp8 coded size by internal buffer
Signed-off-by: Zhong Li <zhong.li@intel.com>
(cherry picked from commit
379282cbc79b65c994c22009412472bdeddbb4cc)
Zhong Li [Thu, 15 Jan 2015 14:04:55 +0000 (22:04 +0800)]
VP8 HWEnc: Add P frame encoding support
Signed-off-by: Zhong Li <zhong.li@intel.com>
(cherry picked from commit
e4737bb3b29c5ac9fb01f4efccd743d260673e27)
Conflicts:
src/shaders/vme/Makefile.am
Zhong Li [Thu, 15 Jan 2015 14:04:54 +0000 (22:04 +0800)]
VP8 HWEnc: Build VP8 PAK pipeline and enabling I frame
Signed-off-by: Zhong Li <zhong.li@intel.com>
(cherry picked from commit
a18ce4664113d5b1a9b29ed45bf137df6b7a7898)
Conflicts:
src/i965_encoder_utils.c
Zhong Li [Thu, 15 Jan 2015 14:04:53 +0000 (22:04 +0800)]
VP8 HWEnc: Build vp8 gen9 encoding vme pipeline
Signed-off-by: Zhong Li <zhong.li@intel.com>
(cherry picked from commit
d8588862d85414ef412fd5e7ae1fb9ca78b69e84)
Conflicts:
src/i965_device_info.c
Zhong Li [Thu, 15 Jan 2015 14:04:52 +0000 (22:04 +0800)]
VP8 HWEnc: Add vp8 gen9 intra frame encoding shader
Signed-off-by: Zhong Li <zhong.li@intel.com>
(cherry picked from commit
722fe89eae811743d7d46f9d11162aa3a5c3ba53)
Conflicts:
src/shaders/vme/Makefile.am
Xiang, Haihao [Thu, 19 Mar 2015 01:59:11 +0000 (09:59 +0800)]
1.5.2.pre1 for development
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Mon, 16 Mar 2015 02:00:07 +0000 (10:00 +0800)]
Add new SKL PCI ids
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Reviewed-by: Zhao Yakui <yakui.zhao@intel.com>
Sreerenj Balachandran [Thu, 5 Mar 2015 11:03:45 +0000 (13:03 +0200)]
jpeg_enc: Fix the column raster conversion of quatization matrix.
Use temp array for the new raster order calculation, otherwise
it simply generate wrong values.
Note: There is opportunity for more optimization, for eg
we can avoid the usage of mulitple for loops here and there.
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Reviewed-by: Sirisha Muppavarapu <sirisha.muppavarapu@intel.com>
Sreerenj Balachandran [Thu, 5 Mar 2015 11:03:44 +0000 (13:03 +0200)]
jpeg_enc: Fix the quatisation matrix scaling.
The misplaced parentheses are causing wrong value assignment
to the quatization matrix.
This will allow the ecoding when quality > 50.
Otherwise it will simply generate garbage in encoded video
for any quality factor greater than 50
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Reviewed-by: Sirisha Muppavarapu <sirisha.muppavarapu@intel.com>
Sreerenj Balachandran [Thu, 5 Mar 2015 11:03:43 +0000 (13:03 +0200)]
jpeg_enc: Avoid integer overflow while doing quality factor scaling
For eg: The uint8_t will simple overflow if submitted
quality factor is 1 (5000/1).
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Reviewed-by: Sirisha Muppavarapu <sirisha.muppavarapu@intel.com>
Michael Müller [Wed, 4 Mar 2015 23:15:45 +0000 (00:15 +0100)]
Do not print warnings on stdout
The driver should not use stdout as this pipe is used by
a lot of programs to exchange data and should instead print
debug messages to stderr
Signed-off-by: Michael Müller <michael@fds-team.de>
Zhong Li [Wed, 28 Jan 2015 07:40:01 +0000 (15:40 +0800)]
decode/VP8: HW needs 1 extra byte for each partition
Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Reviewed-by: Sean V Kelley <seanvk@posteo.de>
Tested-by: Sean V Kelley <seanvk@posteo.de>