| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Based on https://ark.intel.com/content/www/us/en/ark/products/graphics/96744/intel-hd-graphics-for-3rd-generation-intel-processors.html#@nofilter these processors do not support h264 hardware encoding and should be added to the gen7_cpu_hook_list.
Signed-off-by: Patrick Thompson ptf@google.com
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit addresses the following test_va_api failures collected on
a Braswell with the hybrid codec enabled. Fixes #534.
localhost ~ # test_va_api
<snip>
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/210, where GetParam() = (21:VAProfileVP9Profile2, 1:VAEntrypointVLD)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/211, where GetParam() = (21:VAProfileVP9Profile2, 2:VAEntrypointIZZ)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/212, where GetParam() = (21:VAProfileVP9Profile2, 3:VAEntrypointIDCT)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/213, where GetParam() = (21:VAProfileVP9Profile2, 4:VAEntrypointMoComp)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/214, where GetParam() = (21:VAProfileVP9Profile2, 5:VAEntrypointDeblocking)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/215, where GetParam() = (21:VAProfileVP9Profile2, 6:VAEntrypointEncSlice)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/216, where GetParam() = (21:VAProfileVP9Profile2, 7:VAEntrypointEncPicture)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/217, where GetParam() = (21:VAProfileVP9Profile2, 8:VAEntrypointEncSliceLP)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/218, where GetParam() = (21:VAProfileVP9Profile2, 10:VAEntrypointVideoProc)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/219, where GetParam() = (21:VAProfileVP9Profile2, 11:VAEntrypointFEI)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/210, where GetParam() = (21:VAProfileVP9Profile2, 1:VAEntrypointVLD)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/211, where GetParam() = (21:VAProfileVP9Profile2, 2:VAEntrypointIZZ)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/212, where GetParam() = (21:VAProfileVP9Profile2, 3:VAEntrypointIDCT)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/213, where GetParam() = (21:VAProfileVP9Profile2, 4:VAEntrypointMoComp)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/214, where GetParam() = (21:VAProfileVP9Profile2, 5:VAEntrypointDeblocking)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/215, where GetParam() = (21:VAProfileVP9Profile2, 6:VAEntrypointEncSlice)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/216, where GetParam() = (21:VAProfileVP9Profile2, 7:VAEntrypointEncPicture)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/217, where GetParam() = (21:VAProfileVP9Profile2, 8:VAEntrypointEncSliceLP)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/218, where GetParam() = (21:VAProfileVP9Profile2, 10:VAEntrypointVideoProc)
[ FAILED ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/219, where GetParam() = (21:VAProfileVP9Profile2, 11:VAEntrypointFEI)
Signed-off-by: Ed Baker <edward.baker@intel.com>
|
|
|
|
|
|
|
| |
This fixes video corruption and hangs when WebGL with MSAA is running in a
separate. Resolves https://github.com/intel/intel-vaapi-driver/issues/526
Signed-off-by: Michele Lim <michele.lim@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When streams are malformed, we can get p-frames without any reference
picture. However the code still assumes 1 reference picture at least,
which leads to a GPU crash. To protect against GPU crashes, we force 0
when we have no pictures. Do this on gen6, 7, 7.5 and 8.
BUG=chromium:252389,chroimum:418024
TEST=go to youtube and play http://www.youtube.com/watch?v=6v2L2UGZJAM ; it doesn't crash
Signed-off-by: Stéphane Marchesin <marcheu@chromium.org>
Signed-off-by: Sean V Kelley <seanvk@posteo.de>
|
|
|
|
|
|
| |
This fixes https://github.com/intel/intel-vaapi-driver/issues/516
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current implementation of the CQP mode encode has a
compressed buffer size restriction of 4Kb. The restriction
doesn't make sense for low-resolution & low-bitrate
video encoding use cases since inter-frames can be encoded
with much less number of bytes.
For eg: most of the P-frames in a video-conferencing session
of 640x480 resolution at 750kbps require only 1Kb bitrate
allocation and currently the hardware PAK unit fill the rest
of the 3Kb (4Kb-1Kb) with zeros. This will jeopardize the
quality & bit-rate allocation of the hybrid CBR encode
models[1] where we run the bitrate control algorithm in
software clubbed with a CQP hardware encoder:
[1]: https://cgit.freedesktop.org/~sree/gstreamer-vaapi/commit/?h=VP9_SVC_and_SoftwareBRC&id=355f16bdb32965425b274aa082c1334b0edd5992).
|
|
|
|
|
|
|
|
| |
This fixes a gcc10 compiler error for the
VA_STATUS_ERROR_UNKNOWN 0xFFFFFFFF conversion from
unsigned int to int.
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes a "multiple definition" compiler error on
gcc10 which defaults to -fno-common.
https://gcc.gnu.org/gcc-10/porting_to.html#common
Fixes #503
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
|
|
|
|
|
|
| |
With python2 being deprecated, it makes sense to switch gpp.py to be
python3 compatable and the build system to look for python3 rather
than python2.
|
|
|
|
|
|
|
|
|
|
| |
If bitrate control is enabled (CBR & VBR), it is legal to
have a bitrate change/reset even for non-key frame.
Currently the bitrate change is not submitting to the gpu
if it is an inter-prediction frame.
This patch ensures that all internal structures are
getting the updated bitrate values whenever user request.
This patch is expected to fix the issue #473
|
|
|
|
|
|
|
| |
The VP8 encoder supports two quality levels, one for
the normal mode and the other for performance-mode(less-quality).
This patch ensures that the ConfigAttrib query advertising
the correct range.
|
|
|
|
|
|
| |
Fixes #488
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
|
|
|
|
|
|
|
|
|
| |
Ensure the submission of forced_lf_adjustment in
mode probablity update kernel curbe. This will help to fix
the ffmpeg decoder output md5 mismatch with vpxdec for
the Intel encoded video samples.
Reported, Tested and Verified by Hirokazu Honda<hiroh@google.com>
|
|
|
|
|
|
|
|
|
|
|
| |
decoded with a green color on sandy bridge platforms. This is because
of a wrong ptype before this commit ptype was set to GEN6_VC1_BI_PICTURE
if picture_type is GEN6_VC1_I_PICTURE and profile is advanced.
With this commit the ptype is correctly set to GEN6_VC1_BI_PICTURE for
advanced profiles.
Maybe this is also needed for the other generations affected by commit
1591f6c1be689c5265cb5beab18c97771d056cb9 but I have no hardware to
test it.
|
|
|
|
|
|
|
|
|
|
| |
vaExportSurfaceHandle currently doesn't support IMC3 format.
This patch adds support for IMC3 in seprate layers mode and
fixes ExportSurfaceHandle to work with formats that might have
alignment requirements for U/V plane start addresses.
This can be used to export VAAPI decoded JPEGs without
incurring in additional copies.
|
|
|
|
|
|
|
|
|
| |
Mapping the buffer for vp9_frame_ctx at once after batch buffer
submission will cause GT frequency boost, so postpone the update of
vp9_frame_ctx to next frame
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
Tested-by: Shankar, Vaibhav <vaibhav.shankar@intel.com>
|
|
|
|
| |
In the case the va_GetSurfaceBufferWl is not able to create a prime or planar buffer it will leak the FD get from DRM.
|
|
|
|
|
|
|
|
| |
In commit f6573cb7 memmem() call is introduced which is a GNU
extension, which need to be enabled explicitely, otherwise the
compiler will trigger a warning.
This patch enables globally the usage of GNU extensions.
|
|
|
|
|
|
| |
And update the corresponding data structures / parameters as well
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
|
|
|
| |
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
|
|
|
| |
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
|
|
|
| |
Signed-off-by: Vladyslav Kalyuzhny <vperus@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Searching for the EOI marker byte-by-byte turned out to notable in
profiles when encoding large amounts of JPEGs (~15% of a core at 480 fps
of 1080p images). Using memmem() will typically give us an AVX-optimized
version of at least finding the 0xFF character, which is much more
efficient. It seems to speed up this part by about 3–4x in practice,
taking it largely off the profiles.
Signed-off-by: Steinar H. Gunderson <steinar+nageru@gunderson.no>
|
|
|
|
| |
Signed-off-by: Mark Thompson <sw@jkqxz.net>
|
|
|
|
|
|
|
| |
The VAConfigAttribEncROI attribute is read-only, so a user should not need
to write it to enable encoding with ROI.
Signed-off-by: Mark Thompson <sw@jkqxz.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To avoid the warnings(errors):
hardware/intel/common/vaapi/src/gen75_vme.c:1070:5: error: variable 'i965_kernel_num' is used uninitialized whenever switch default is taken [-Werror,-Wsometimes-uninitialized]
default:
^~~~~~~
hardware/intel/common/vaapi/src/gen75_vme.c:1078:35: note: uninitialized use occurs here
vme_context->vme_kernel_sum = i965_kernel_num;
^~~~~~~~~~~~~~~
hardware/intel/common/vaapi/src/gen9_vme.c:2036:5: error: variable 'i965_kernel_num' is used uninitialized whenever switch default is taken [-Werror,-Wsometimes-uninitialized]
default:
^~~~~~~
hardware/intel/common/vaapi/src/gen9_vme.c:2044:35: note: uninitialized use occurs here
vme_context->vme_kernel_sum = i965_kernel_num;
^~~~~~~~~~~~~~~
I am not going to disable the warning (by -Wno-sometimes-uninitialized)
since it's still a useful checking from the compiler.
Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
|
|
|
|
| |
Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
|
|
|
|
|
|
| |
If so, the upper-layer application or library may handle the error.
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
|
|
|
|
|
| |
Commit 5bdb675 causes performance drop
This reverts commit 5bdb675 and fixes compiler errors.
|
|
|
|
|
|
| |
This patch replaces the PR
https://github.com/intel/intel-vaapi-driver/pull/441
|
|
|
|
|
|
|
|
| |
And bump libva dependency to 1.4.0
This fixes https://github.com/intel/intel-vaapi-driver/issues/419
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
|
|
|
|
|
|
| |
This fixes https://github.com/intel/intel-vaapi-driver/issues/430
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
Tested-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
|
|\ |
|
| |
| |
| |
| | |
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
| |
| |
| |
| | |
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
| |
| |
| |
| | |
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
| |
| |
| |
| |
| |
| | |
Update NEWS and bump a new version
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
|/
|
|
| |
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
|\ |
|
| |
| |
| |
| | |
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
gen8_pp_object_walker makes an unnecessary function call, checks a
return value that is always zero and makes non-indexed variable
assignments. All of which occurs inside nested for loops.
Move non-indexed assignments outside the iterative block and inline the
rest. This decreases frame drops for saturating workloads.
Fixes: #252
Signed-off-by: Cole Nelson <colex.nelson@intel.com>
|
| |
| |
| |
| |
| | |
gen75_vpp_vebox will check many things like invalid param, unsupported features.
Better check the return value
|
| |
| |
| |
| |
| |
| |
| | |
This patch makes sure all MVs are in the right range, otherwise
out of boundary MVs will result in corrupted frame.
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
| |
| |
| |
| |
| |
| | |
Use the right target bitrate once user changes the bitrate on the fly
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
| |
| |
| |
| | |
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
| |
| |
| |
| | |
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Not all toolchains provide support for -fstack-protector. This patch
provides a configure check to avoid build errors like
/home/buildroot/buildroot/output/host/opt/ext-toolchain/bin/../lib/gcc/x86_64-buildroot-linux-uclibc/6.4.0/../../../../x86_64-buildroot-linux-uclibc/bin/ld: cannot find -lssp_nonshared
/home/buildroot/buildroot/output/host/opt/ext-toolchain/bin/../lib/gcc/x86_64-buildroot-linux-uclibc/6.4.0/../../../../x86_64-buildroot-linux-uclibc/bin/ld: cannot find -lssp
|
| |
| |
| |
| | |
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|
| |
| |
| |
| | |
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
|