OSDN Git Service
peng.chen [Wed, 6 Sep 2017 03:15:45 +0000 (11:15 +0800)]
Set pipe_buffer_state before ind_obj_base_addr for VP9 decoder
it fixed a potential VP9 decoding issue at some cases
Signed-off-by: peng.chen <peng.c.chen@intel.com>
peng.chen [Mon, 14 Aug 2017 19:18:10 +0000 (03:18 +0800)]
Add the support of Coffee Lake
Signed-off-by: peng.chen <peng.c.chen@intel.com>
peng.chen [Sun, 27 Aug 2017 18:03:50 +0000 (02:03 +0800)]
Add several asserts to detect unvalid NULL pointer
Signed-off-by: peng.chen <peng.c.chen@intel.com>
fritsch [Mon, 4 Sep 2017 05:06:50 +0000 (07:06 +0200)]
gen6_mfd: Check ptr before dereferencing
fritsch [Sat, 26 Aug 2017 21:01:56 +0000 (23:01 +0200)]
gen7_mfd: Check ptr before dereferencing
fritsch [Sat, 26 Aug 2017 20:41:31 +0000 (22:41 +0200)]
gen8_mfd: Check ptr before dereferencing
U. Artie Eoff [Wed, 23 Aug 2017 16:14:17 +0000 (09:14 -0700)]
FEI: validate VAConfigAttribRateControl in i965_CreateConfig
VAEntrypointFEI only supports VA_RC_CQP in VAConfigAttribRateControl
config attribute. Return VA_STATUS_ERROR_INVALID_CONFIG if it's
set to anything else.
Fixes #257
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
U. Artie Eoff [Wed, 23 Aug 2017 16:12:03 +0000 (09:12 -0700)]
FEI: test: update brc expectation for VAEntrypointFEI
VAEntrypointFEI only supports VA_RC_CQP.
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
Sreerenj Balachandran [Wed, 23 Aug 2017 00:45:53 +0000 (17:45 -0700)]
FEI: Bump the required VA-API version
FEI support has been added in VA-API version 0.40.1, which
is the minum required version for the driver too.
libva PR: https://github.com/01org/libva/pull/105
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Sreerenj Balachandran [Fri, 18 Aug 2017 18:19:44 +0000 (11:19 -0700)]
FEI: tests: Add VAEntrypointFEI
Add the FEI entrypoint in test case scenarios
Fixes #228
Sreerenj Balachandran [Fri, 18 Aug 2017 18:19:14 +0000 (11:19 -0700)]
FEI: Select VME and/or PAK as per user request
Driver supports VME only(ENC), PAK only(PAK)
and VME_PAK(ENC_PAK) modes.
Fixes #228
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Sreerenj Balachandran [Fri, 18 Aug 2017 18:18:45 +0000 (11:18 -0700)]
FEI : Add FEI support for AVC Encode in SKL
Below is the list of contributions from Zhong Li <zhong.li@intel.com>
a) Fixed issues with P/B Macroblock encoding
b) Fixed a GPU Hang with I frame encoding and unnecessary flushing in PAK
c) Fixed the avc and fei kernel size setting error
d) Disabled all scaling operations because of no HME support
Fixes #228
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Sreerenj Balachandran [Fri, 18 Aug 2017 18:17:22 +0000 (11:17 -0700)]
FEI: Add GEN9 AVC FEI specific constants
Added curbe init data for I,P,B and I_DIST kernels
Fixes #228
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Sreerenj Balachandran [Fri, 18 Aug 2017 18:16:56 +0000 (11:16 -0700)]
FEI: Add AVC FEI media kernels for SKL
We only have the media kernel binaries at this point.
Fixes #228
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Sreerenj Balachandran [Fri, 18 Aug 2017 18:16:36 +0000 (11:16 -0700)]
FEI: Add basic infrastructure for FEI enablement
Add necessary changes in common structures and apis
to support FEI (Flexible Encoder Infrastructure).
* add support for the new entrypoing VAEntrypointFEI
* fixes in vaQueryConfigEntrypoints(), vaGetConfigAttributes(),
vaCreateContext(), vaCreateBuffer(), vaRenderPicture() and vaEndPicture()
Fixes #228
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Xiang, Haihao [Mon, 7 Aug 2017 08:23:21 +0000 (16:23 +0800)]
Add a new shader for CSC/scaling from P010/I010 to YUY2/UYVY/NV12/I420 on GEN9
With the new shader, the driver can convert 10bit surface to 8bit
surface in a single step
This fixes https://github.com/01org/intel-vaapi-driver/issues/212
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 3 Aug 2017 05:54:10 +0000 (13:54 +0800)]
Update the P010/I010 shader on GEN9
This fixes the conversion from I010 to P010
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Wed, 9 Aug 2017 03:01:33 +0000 (11:01 +0800)]
Return UYVY format for vaQuerySurfaceAttributes
The driver supports UYVY surface, but UYVY is missed in
vaQuerySurfaceAttributes.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 4 Aug 2017 01:30:45 +0000 (09:30 +0800)]
Use single GPE context for the optimization for 8bit/10bit scaling/CSC
The interface description table can used for multiple kernels and we can
use interface offset to specify the used kernel
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Wed, 2 Aug 2017 02:20:35 +0000 (10:20 +0800)]
Try the fast path of CSC/scaling first in va{Get,Put}Image()
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 28 Jul 2017 06:10:29 +0000 (14:10 +0800)]
Factor out CSC/scaling in the fast path
The factored-out code will be re-used for va{Get,Put}Image()
implementation
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Philipp Kerling [Tue, 15 Aug 2017 08:52:54 +0000 (10:52 +0200)]
wayland: Implement registry remove handler
Wayland event handlers are never optional. libwayland-client will abort
the program if events for unbound handlers are to be dispatched.
Although the event queue is only dispatched a few times during
initialization for getting the wl_drm global and authenticating the DRM
device, in rare circumstances it can happen that another global such as
a wl_output - or even wl_drm itself - is removed during that time, which
would crash the program. Implement the handler to fix this.
Signed-off-by: Philipp Kerling <pkerling@casix.org>
Xiang, Haihao [Wed, 16 Aug 2017 06:47:36 +0000 (14:47 +0800)]
Merge branch 'v1.8-branch' into master
U. Artie Eoff [Thu, 10 Aug 2017 18:23:57 +0000 (11:23 -0700)]
test: fix AVCEContextTest/RateControl regression
Update AVCEContextTest/RateControl expectations that changed
since PR #197
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
U. Artie Eoff [Thu, 10 Aug 2017 18:21:19 +0000 (11:21 -0700)]
test: add status expectation in I965TestFixture::createConfig
Add VAStatus parameter to I965TestFixture::createConfig to allow
users to pass in the expected status for testing.
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
U. Artie Eoff [Thu, 10 Aug 2017 18:15:57 +0000 (11:15 -0700)]
avoid NULL pointer deref in i965_CreateConfig
The attrib_found pointer variable might be NULL in many cases.
Thus, check it before attempting to dereference it.
Fixes #246
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
Pengfei Qu [Thu, 8 Jun 2017 09:55:17 +0000 (17:55 +0800)]
add brc mode check for AVC when creating the config
v0:this add the RC check for AVC encoder
Fixes #35
Signed-off-by: Pengfei Qu <Pengfei.Qu@intel.com>
Guilherme [Tue, 25 Jul 2017 15:34:41 +0000 (12:34 -0300)]
VAEncROI on GEN7 chipset fix
Copying line intel_h264_enc_roi_config() from gen75_vme.c to gen7_vme.c
peng.chen [Tue, 8 Aug 2017 06:11:27 +0000 (14:11 +0800)]
Add the configure attributes of EncMaxRefs for GEN9 HEVC encoder
Fixes #200
Signed-off-by: peng.chen <peng.c.chen@intel.com>
Mark Thompson [Sat, 29 Jul 2017 20:24:10 +0000 (21:24 +0100)]
Do not apply AUD hack to non-RawData headers
Headers which are not VAEncPackedHeaderRawData should not be inserted
at the front of the access unit by the AUD hack - if they are, they will
end up duplicated if they match the test because they are also placed
later in the access unit.
Signed-off-by: Mark Thompson <sw@jkqxz.net>
peng.chen [Thu, 3 Aug 2017 07:23:19 +0000 (15:23 +0800)]
Update new media kernels for HEVC encoder
Fixes #240
Signed-off-by: peng.chen <peng.c.chen@intel.com>
Xiang, Haihao [Mon, 24 Jul 2017 06:25:37 +0000 (14:25 +0800)]
Correct the data type
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 21 Jul 2017 04:22:36 +0000 (12:22 +0800)]
Don't align the bitrate to 1000 for VDEnc AVC encoding
The HuC accepts the real bitrate setting
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 20 Jul 2017 08:26:58 +0000 (16:26 +0800)]
Initialize the HME mv cost table for VDEnc AVC encoding
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
carpalis [Wed, 26 Jul 2017 07:48:00 +0000 (09:48 +0200)]
add VC-1 intensity compensation for SNB
carpalis [Mon, 24 Jul 2017 11:21:16 +0000 (13:21 +0200)]
implement intensity compensation for VC-1 decoding
Intensity compensation was not present for B-frames, but only for P-frames. When a P-frame flags intensity compensation for its forward reference frame, all subsequent B-frames that use this reference frame as well, need to do intensity compensation as well.
Kelly Ledford [Thu, 27 Jul 2017 22:12:27 +0000 (15:12 -0700)]
test: fix GCC 7.1.1 warnings/errors
Fixes #236: add explicit braces to avoid 'ambiguous else' warning.
Signed-off-by: Kelly Ledford <kelly.ledford@intel.com>
Xiang, Haihao [Fri, 14 Jul 2017 07:19:39 +0000 (15:19 +0800)]
Encoder: Avoid memory leak
An internal surface is created when the input surface doesn't meet the
HW requirement for encoding, however this surface is not destroyed when
the corresponding context is destroyed which causes the memory leak
issue. This patch fixes this issue.
This fixes https://github.com/01org/libyami/issues/751
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Mark Thompson [Wed, 28 Jun 2017 23:41:21 +0000 (00:41 +0100)]
Remove useless frame dimension check for VP9
Signed-off-by: Mark Thompson <sw@jkqxz.net>
Xiang, Haihao [Wed, 12 Jul 2017 01:44:11 +0000 (09:44 +0800)]
Don't check the stride in the y direction for a single plane surface
obj_surface->height is used to calculate the offset for U/V plane. for a
surface with single plane, the check is unnecessary
This fixes https://github.com/01org/intel-vaapi-driver/issues/222
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Reviewed-by: Daniel Charles <daniel.charles@intel.com>
Tested-by: Daniel Charles <daniel.charles@intel.com>
peng.chen [Tue, 20 Jun 2017 06:33:21 +0000 (14:33 +0800)]
Add HEVC ROI attributes for VAConfigAttribEncROI
Fixes #179
Signed-off-by: peng.chen <peng.c.chen@intel.com>
peng.chen [Tue, 20 Jun 2017 06:25:58 +0000 (14:25 +0800)]
Add the support of ROI for HEVC encoder on GEN9 SKL+
Fixes #179
Signed-off-by: peng.chen <peng.c.chen@intel.com>
peng.chen [Tue, 20 Jun 2017 06:18:05 +0000 (14:18 +0800)]
Parse ROI Misc parameters for CQP mode
Signed-off-by: peng.chen <peng.c.chen@intel.com>
peng.chen [Fri, 16 Jun 2017 05:16:48 +0000 (13:16 +0800)]
Update media kernels for hevc encoder
Signed-off-by: peng.chen <peng.c.chen@intel.com>
Xiang, Haihao [Wed, 12 Jul 2017 06:04:17 +0000 (14:04 +0800)]
Fix VDENC_PIPE_BUF_ADDR_STATE for AVC VDEnc encoding
DW22-DW27 are the first 2 reference surfaces in list0, not the down
scaling referece surfaces.
This fixes https://github.com/01org/intel-vaapi-driver/issues/224
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Pengfei Qu [Fri, 23 Jun 2017 01:54:36 +0000 (09:54 +0800)]
Enc: add max ref number query for AVC encoder on SKL+
Fixes #199
Signed-off-by: Pengfei Qu <Pengfei.Qu@intel.com>
Philipp Kerling [Thu, 22 Jun 2017 07:46:38 +0000 (09:46 +0200)]
Remove generated file from tree and on clean
Signed-off-by: Philipp Kerling <pkerling@casix.org>
Xiang, Haihao [Wed, 28 Jun 2017 00:27:07 +0000 (08:27 +0800)]
intel-vaapi-driver 1.8.3
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Philipp Kerling [Tue, 20 Jun 2017 17:32:34 +0000 (19:32 +0200)]
wayland: Also support wl_drm version 1
Just using version 2 without checking would lead to a protocol error
bringing down the entire application, and wl_drm version 1 is still
supported since v2 only adds PRIME capabilities.
peng.chen [Thu, 15 Jun 2017 01:35:57 +0000 (09:35 +0800)]
Fix the ROI bottom setting issue in vdenc
Signed-off-by: peng.chen <peng.c.chen@intel.com>
Philipp Kerling [Tue, 13 Jun 2017 11:39:27 +0000 (13:39 +0200)]
wayland: Use private event queue for compositor communication
(Ab)using the default queue that the application might itself use
already and work on in parallel to initializing libva is not
thread-safe. Make it thread-safe by setting a private queue on a
wrapped wl_display. Also print some more error messages in case things
go wrong.
Signed-off-by: Philipp Kerling <pkerling@casix.org>
Signed-off-by: Olivier Crete <olivier.crete@collabora.com>
Philipp Kerling [Tue, 13 Jun 2017 11:38:55 +0000 (13:38 +0200)]
wayland: Bump wayland-client dependency to 1.11.0
Signed-off-by: Philipp Kerling <pkerling@casix.org>
Philipp Kerling [Tue, 13 Jun 2017 11:38:20 +0000 (13:38 +0200)]
wayland: Cleanup wl_registry on terminate
Signed-off-by: Philipp Kerling <pkerling@casix.org>
Signed-off-by: Olivier Crete <olivier.crete@collabora.com>
Xiang, Haihao [Mon, 12 Jun 2017 16:05:20 +0000 (00:05 +0800)]
Bump intel-vaapi-driver to 1.8.4.pre1 for development
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Mon, 12 Jun 2017 07:31:37 +0000 (15:31 +0800)]
Update NEWS and README
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Mon, 12 Jun 2017 08:45:20 +0000 (16:45 +0800)]
Check pointers against NULL before using
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
(cherry picked from commit
cac54c9b5d3a7bc85f147a072b1d36ee1587dea9)
Xiang, Haihao [Mon, 12 Jun 2017 08:45:20 +0000 (16:45 +0800)]
Check pointers against NULL before using
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Mon, 12 Jun 2017 07:48:20 +0000 (15:48 +0800)]
Add gen9_hevc_enc_kernels.h to the corresponding list
Otherwise the package created by 'make dist' doesn't include the
missing file, which will break the build
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
(cherry picked from commit
69bc6959e848426d3170ea67819a6f9a5aaa9246)
Xiang, Haihao [Mon, 12 Jun 2017 07:48:20 +0000 (15:48 +0800)]
Add gen9_hevc_enc_kernels.h to the corresponding list
Otherwise the package created by 'make dist' doesn't include the
missing file, which will break the build
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Wang, Tiantian [Tue, 18 Apr 2017 10:53:12 +0000 (06:53 -0400)]
correct subsampling calculate methods of various fourcc that jpeg support.
This fixes https://github.com/01org/intel-vaapi-driver/issues/10
Signed-off-by: Wang Tiantian <tiantian.wang@intel.com>
(cherry picked from commit
4055625baf6fcfb4a93ed64e3a7c491bc143d757)
Wang, Tiantian [Tue, 18 Apr 2017 10:53:12 +0000 (06:53 -0400)]
correct subsampling calculate methods of various fourcc that jpeg support.
This fixes https://github.com/01org/intel-vaapi-driver/issues/10
Signed-off-by: Wang Tiantian <tiantian.wang@intel.com>
Pengfei Qu [Tue, 16 May 2017 07:49:13 +0000 (15:49 +0800)]
ENC: add RC query for AVC mb rc mode on SKL+
v0: add h264_brc_mode to store the RC capability of H264
Fixes #168
Signed-off-by: Pengfei Qu <Pengfei.Qu@intel.com>
(cherry picked from commit
3416db0c8280a321db0b8d2afde9c30c3229ee7d)
Pengfei Qu [Tue, 16 May 2017 07:49:13 +0000 (15:49 +0800)]
ENC: add RC query for AVC mb rc mode on SKL+
v0: add h264_brc_mode to store the RC capability of H264
Fixes #168
Signed-off-by: Pengfei Qu <Pengfei.Qu@intel.com>
Pengfei Qu [Wed, 7 Jun 2017 02:45:59 +0000 (10:45 +0800)]
Fix: AVC/HEVC encoder quality range should be 7 on SKL+
Fixes #192
Signed-off-by: Pengfei Qu <Pengfei.Qu@intel.com>
(cherry picked from commit
53fa3daa12f6dbdd391d24ab479dc601ae37a89d)
peng.chen [Tue, 6 Jun 2017 05:54:00 +0000 (13:54 +0800)]
Enable is_16bpp flag of gpe_surface for P010 surface
It is only for media_block_rw mode
Signed-off-by: peng.chen <peng.c.chen@intel.com>
(cherry picked from commit
c036ab3c14f9e17158d6bf36b63cf0979ee4c548)
peng.chen [Wed, 7 Jun 2017 06:16:10 +0000 (14:16 +0800)]
Fix the max slice number definition error in hevc encoder
The real max slice number is defined by I965_MAX_NUM_SLICE,
so also need to use this macro in hevc encoder
Fixes #162
Signed-off-by: peng.chen <peng.c.chen@intel.com>
(cherry picked from commit
81cf65d67052d174a43a5c0ba46168109529c6c6)
Xiang, Haihao [Fri, 2 Jun 2017 04:12:14 +0000 (12:12 +0800)]
Use ASSERT_RET() instead of assert() for some assertions
This avoids assertion fault, and the caller can handle the error
properly when the driver returns false or error.
This avoids the assertion fault in
https://github.com/01org/intel-vaapi-driver/issues/186, it also avoids
the assertion fault after https://github.com/01org/libva/issues/51 is fixed
in libva.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
(cherry picked from commit
5a984aeec3781ab8cd937bc633db9c5bfe4a546c)
Xiang, Haihao [Mon, 22 May 2017 08:08:29 +0000 (16:08 +0800)]
Add the missing parameter type in a function definition
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
(cherry picked from commit
7c42a134376ed8ecdae6fa4f003180659bdc0770)
U. Artie Eoff [Fri, 2 Jun 2017 18:00:17 +0000 (11:00 -0700)]
decode: release huffman_table from decode state
In i965_destroy_context, ensure we release the huffman_table
buffer_store from the decode state to avoid memory leak.
Fixes #190
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
(cherry picked from commit
b86d86de86c4f071415e6519ae778859193c0b7e)
Víctor Manuel Jáquez Leal [Thu, 1 Jun 2017 10:09:49 +0000 (12:09 +0200)]
gen9_avc_encoder: brc_curbe_size is not static anymore
Static memory allocation in general is the allocation of memory at compile
time before the associated program is executed.
And this is the case when compiling with clang: it tries to optimize the
allocation of static memory in compilation time, thus commit
f896ca2a breaks
the compilation, since the structure can only be defined at execution time.
Fix #184
Signed-off-by: Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
(cherry picked from commit
533193a2e187601ad976060d11b7fda679058295)
Sreerenj Balachandran [Wed, 31 May 2017 19:26:43 +0000 (12:26 -0700)]
gen9_avc_encoder: Fix mbenc curbe size of KBL and GLK
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
(cherry picked from commit
f896ca2aac7780f145d06ef34457f9bc28bdd29d)
peng.chen [Wed, 24 May 2017 06:53:29 +0000 (14:53 +0800)]
Use the down sampled NV12 surface as the RAW surface
This NV12 surface is converted from the input P010 surface
as the input of some kernels
Signed-off-by: peng.chen <peng.c.chen@intel.com>
(cherry picked from commit
3b8af51d787cc6116adef3effa7c8cffca2c9285)
U. Artie Eoff [Thu, 25 May 2017 17:52:55 +0000 (10:52 -0700)]
README.md: update Slack Team invite URL
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
(cherry picked from commit
743d511d6004f50e780c4b3b4595c4d0e02ec9b5)
Jun Zhao [Tue, 16 May 2017 15:26:34 +0000 (23:26 +0800)]
Fix AUD insert issue in AVC encoder with GEN6/7.5/8.
If find the AUD NAL in raw data list, it will insert AUD first in
the bitstream.
Fix #155
Signed-off-by: Jun Zhao <jun.zhao@intel.com>
(cherry picked from commit
5f479acd6d856c13be18321642eac8e9635b25c9)
Jun Zhao [Tue, 16 May 2017 12:19:46 +0000 (20:19 +0800)]
Fix typo in comments.
Signed-off-by: Jun Zhao <jun.zhao@intel.com>
(cherry picked from commit
4f91841d918fdcaf13a7ab411246a7b23d01becf)
Mark Thompson [Mon, 15 May 2017 20:18:54 +0000 (21:18 +0100)]
Gen9 H.264 encoders: Fix condition for enabling MB rate control
As documented in va.h, it should not be enabled when the user passes
the value 2 here. This now matches the behaviour of the H.265
encoder.
Fixes #166.
Signed-off-by: Mark Thompson <sw@jkqxz.net>
(cherry picked from commit
0dd6ba4e26d3abaa7e66265284ef81c746c13f20)
Xiang, Haihao [Fri, 12 May 2017 02:01:25 +0000 (10:01 +0800)]
VP8 encoder can support VBR method since using the new media kernel
This fixes https://github.com/01org/intel-vaapi-driver/issues/164
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
(cherry picked from commit
1b0c31248f73759736e2e99bb8046c17b81bcc51)
Xiang, Haihao [Thu, 13 Apr 2017 07:45:57 +0000 (15:45 +0800)]
This silences a gcc warning
This fixes https://github.com/01org/intel-vaapi-driver/issues/114
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
(cherry picked from commit
ff37b96a8b26724bebc3d37ec0647fbf49b18bb6)
Xiang, Haihao [Thu, 13 Apr 2017 07:43:04 +0000 (15:43 +0800)]
Fix coding style in the previous commits
Otherwise the pre-commit hook will block the changes to these files
in the future.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
(cherry picked from commit
7dd3182119fac2eb6e219da44695ff8d759bc44f)
Pengfei Qu [Fri, 28 Apr 2017 01:05:03 +0000 (09:05 +0800)]
ENC: fix the low quality at the first GOP for AVC encoder on the platform previous SKL
RC logic initialize the big QP at the first GOP, this cause the low quality.
Fixes #147
Signed-off-by: Pengfei Qu <Pengfei.Qu@intel.com>
(cherry picked from commit
34a525f65d8fe3e2a9ec28351de871c2e0f4834d)
peng.chen [Tue, 2 May 2017 01:09:52 +0000 (09:09 +0800)]
Improve the performance of HEVC fast level encoding
Fixes #137
Signed-off-by: peng.chen <peng.c.chen@intel.com>
(cherry picked from commit
c09eb2c1d27d9d9da0c17be1727d5edbadb00427)
U. Artie Eoff [Fri, 28 Apr 2017 02:08:00 +0000 (19:08 -0700)]
test/jpege: skip >4k res test cases on CHV/BSW
Only Gen9+ supports res > 4K for JPEG encoding.
Fixes #149
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
(cherry picked from commit
c4f333bd658b5752bb6afc7935dc65644201dfd8)
Chih-Wei Huang [Wed, 26 Apr 2017 06:02:32 +0000 (14:02 +0800)]
android: move the libraries to /vendor
Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
(cherry picked from commit
996ecede88c69c60e0a8974ba75400e1b676a1d6)
Chih-Wei Huang [Fri, 7 Apr 2017 06:10:53 +0000 (14:10 +0800)]
Make the compiler happy
To avoid the error:
src/gen6_mfc_common.c:487:1: error: control may reach end of non-void function [-Werror,-Wreturn-type]
}
^
Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
(cherry picked from commit
de8d3c0895ceba38bdfd11e8386e4f0d4b4dc855)
Chih-Wei Huang [Fri, 7 Apr 2017 03:01:01 +0000 (11:01 +0800)]
Move source lists into Makefile.sources
Factor the source lists into a shared makefile. This prevents duplicate of
source lists, and hence prevents the Android build from breaking as often.
Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
(cherry picked from commit
1c1e2ac866e97dfaf7e9d8b3cbd9454f8f5d0c4b)
Chih-Wei Huang [Thu, 6 Apr 2017 10:48:41 +0000 (18:48 +0800)]
android: set the installation path
Use the path similar to linux desktop.
Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
(cherry picked from commit
73a65aed00ee5580953cb4a7161c97222204b042)
Chih-Wei Huang [Thu, 6 Apr 2017 10:34:16 +0000 (18:34 +0800)]
android: remove the unused script
The gen_version.sh violates the read-only rule of Android build system.
The rules to generate intel_version.h are rewritten. Remove this unused
script.
Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
(cherry picked from commit
69f00fe097c696b64d6f7c992bc8c3382073ddb7)
Chih-Wei Huang [Thu, 6 Apr 2017 10:33:57 +0000 (18:33 +0800)]
android: fix the rules to generate intel_version.h
Android source tree has to be read-only. The generated files should
be put to the $(OUT)/gen/ dir. Rewrite the makefile to be compliant
with the rules.
Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
(cherry picked from commit
a177751246b8d57aa6223060415fa4824b7cebf1)
Chih-Wei Huang [Thu, 6 Apr 2017 09:48:31 +0000 (17:48 +0800)]
android: remove deprecated include paths
The include paths are exported from the linked modules directly.
Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
(cherry picked from commit
65168d96e886838ccf1ba14865574bda6fabb437)
Chih-Wei Huang [Thu, 6 Apr 2017 07:42:58 +0000 (15:42 +0800)]
android: remove redundant -DANDROID
It has already been defined by the Android build system.
Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
(cherry picked from commit
6e64ab059d12855a68232215823f2778ecc6947c)
Chih-Wei Huang [Thu, 6 Apr 2017 07:39:51 +0000 (15:39 +0800)]
Remove the unnecessary exec bit
These files are not executables.
Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
(cherry picked from commit
e7a62717f45fa87de260468eb2976ad7588bcd9e)
peng.chen [Wed, 19 Apr 2017 02:36:34 +0000 (10:36 +0800)]
Add the support of multi-slices for the HEVC encoder
Signed-off-by: peng.chen <peng.c.chen@intel.com>
(cherry picked from commit
5471b938d580e0e35227d305d05baa4b74db1402)
Zhao Yakui [Wed, 19 Apr 2017 08:37:50 +0000 (16:37 +0800)]
Fix the suspicious reference before check NULL pointer
Fix #140
https://github.com/01org/intel-vaapi-driver/issues/140
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
(cherry picked from commit
6907a27b6ed1eaa7acd2b3bd0930bc81501ab4f6)
Daniel Charles [Thu, 13 Apr 2017 01:42:27 +0000 (18:42 -0700)]
gen9_vp9_encoder: fix parameters sent to the shaders
buffer fullness intially has to be set to half the target bitrate.
Also the scaled 4x width and height in mb has to be updated properly
for distortion buffer to operate properly
v2: remove downscaled_width_4x_in_mb and dowscaled_height_4x_in_mb from
gen9_encoder_context_vp9
Fixes #132
TEST="see bug for proper test analysis"
Signed-off-by: Daniel Charles <daniel.charles@intel.com>
(cherry picked from commit
dbe582c2361d3bb6a04968a2bc21b62bede9c46e)
jkyu [Thu, 13 Apr 2017 05:04:43 +0000 (01:04 -0400)]
Enable HEVC encoder for GLK
Fix https://github.com/01org/intel-vaapi-driver/issues/134
Signed-off-by: jkyu <jiankang.yu@intel.com>
(cherry picked from commit
e946c3c0687066eba3b139ab74d621f9f28b2de4)
peng.chen [Thu, 13 Apr 2017 05:23:17 +0000 (13:23 +0800)]
Set the quality range and default level for hevc encoder
Signed-off-by: peng.chen <peng.c.chen@intel.com>
(cherry picked from commit
bb253641eab36261add539967bedf8cbdb9dfacb)
peng.chen [Thu, 13 Apr 2017 05:23:17 +0000 (13:23 +0800)]
Add the RC_VBR in GetConfigAttributes for HEVC encoding
Signed-off-by: peng.chen <peng.c.chen@intel.com>
(cherry picked from commit
294b90c063d5342d9cd9df53f598999ab6d3080e)
peng.chen [Thu, 13 Apr 2017 05:23:17 +0000 (13:23 +0800)]
Improve the HEVC encoding quality on SKL/APL/KBL
V1:
1, Update the commit date
2, Add extern to a function prototype
3, Reallocate resource for different resolution pictures
4, Move static constant array ftq_25i[]
5, Free res_pak_slice_batch_buffer before flush the batch buffer
6, Add cache attribute setting
7, Fix write domain issue of output surface
8, Remove the wrong bit setting in pipe_select
9, Correct the licensing declaration
10, Move hevc enc apis declaration to the enc common api file
11, Add two field bits in PAK pic_state
V2:
1, Move QM/FM default tables out of the function
2, Set the private_data for obj_surface before allocating the surface
3, Move hevc_qpc_table[] into gen9_hevc_encoder.c
4, Alocate independent ME gpe context for each HMEs
5, Reconfigure the VFE state
6, Remove the i965_zero_gpe_resource in ALLOC_GPE_RESOURCE
7, Unify the coding style
V3:
1, Fix memory clear size mistake in intra_distortion
2, Disable multi-slices support for HEVC encoding
Signed-off-by: peng.chen <peng.c.chen@intel.com>
(cherry picked from commit
455351f974504315e99cb24eb7c8199c3694ca17)
peng.chen [Thu, 13 Apr 2017 05:23:17 +0000 (13:23 +0800)]
Add the new kernel binary for the improved HEVC encoder on SKL/APL/KBL
V1:
Move kernel binary into new file
V2:
Unify the coding style
Signed-off-by: peng.chen <peng.c.chen@intel.com>
(cherry picked from commit
d3962876336706a6f9a934d671bd2fdbfb06baab)
Wang, Tiantian [Mon, 10 Apr 2017 06:12:24 +0000 (02:12 -0400)]
Check and allocate (if not exist) bo for dst_obj_surface in vpp
This fixes #20
https://github.com/01org/intel-vaapi-driver/issues/20
Signed-off-by: Wang Tiantian <tiantian.wang@intel.com>
(cherry picked from commit
aa77cb71b3a052cffc085aedcdf437a320fb7377)