diff options
Diffstat (limited to 'recipes-multimedia/libva')
-rw-r--r-- | recipes-multimedia/libva/files/0003-Force-ARGB-surface-to-tile4-for-ACM.patch | 44 | ||||
-rw-r--r-- | recipes-multimedia/libva/files/0004-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch | 85 | ||||
-rw-r--r-- | recipes-multimedia/libva/intel-media-driver/0001-linux-fix-build-when-using-musl.patch | 28 | ||||
-rw-r--r-- | recipes-multimedia/libva/intel-media-driver_18.3.0.bb | 37 | ||||
-rw-r--r-- | recipes-multimedia/libva/intel-media-driver_25.1.4.bb | 51 | ||||
-rw-r--r-- | recipes-multimedia/libva/intel-vaapi-driver_2.4.1.bb (renamed from recipes-multimedia/libva/intel-vaapi-driver_2.2.0.bb) | 19 |
6 files changed, 190 insertions, 74 deletions
diff --git a/recipes-multimedia/libva/files/0003-Force-ARGB-surface-to-tile4-for-ACM.patch b/recipes-multimedia/libva/files/0003-Force-ARGB-surface-to-tile4-for-ACM.patch new file mode 100644 index 00000000..ffb5b747 --- /dev/null +++ b/recipes-multimedia/libva/files/0003-Force-ARGB-surface-to-tile4-for-ACM.patch | |||
@@ -0,0 +1,44 @@ | |||
1 | From 6132115dd2f1db55a6a5371618247dfaa334a035 Mon Sep 17 00:00:00 2001 | ||
2 | From: Lim Siew Hoon <siew.hoon.lim@intel.com> | ||
3 | Date: Wed, 11 Oct 2023 15:36:21 +0800 | ||
4 | Subject: [PATCH 3/7] Force ARGB surface to tile4 for ACM | ||
5 | |||
6 | Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1728] | ||
7 | |||
8 | Signed-off-by: Soon, Thean Siew <thean.siew.soon@intel.com> | ||
9 | Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com> | ||
10 | --- | ||
11 | media_driver/linux/common/ddi/media_libva_util.cpp | 10 ++++++++++ | ||
12 | 1 file changed, 10 insertions(+) | ||
13 | |||
14 | diff --git a/media_driver/linux/common/ddi/media_libva_util.cpp b/media_driver/linux/common/ddi/media_libva_util.cpp | ||
15 | index a4e12edfa..11634f66e 100755 | ||
16 | --- a/media_driver/linux/common/ddi/media_libva_util.cpp | ||
17 | +++ b/media_driver/linux/common/ddi/media_libva_util.cpp | ||
18 | @@ -521,6 +521,7 @@ VAStatus DdiMediaUtil_AllocateSurface( | ||
19 | gmmCustomParams.Flags.Gpu.UnifiedAuxSurface = 0; | ||
20 | } | ||
21 | } | ||
22 | + | ||
23 | break; | ||
24 | case TILING_X: | ||
25 | gmmCustomParams.Flags.Info.TiledX = true; | ||
26 | @@ -702,6 +703,15 @@ VAStatus DdiMediaUtil_AllocateSurface( | ||
27 | } | ||
28 | } | ||
29 | } | ||
30 | + // There's no VAAPI interface for modifier query yet. As a workaround, always allocate | ||
31 | + // RGB surface as tile4. | ||
32 | + if ((format == Media_Format_A8R8G8B8 || | ||
33 | + format == Media_Format_B10G10R10A2 | | ||
34 | + format == Media_Format_A8B8G8R8 || | ||
35 | + format == Media_Format_X8R8G8B8) && !MEDIA_IS_SKU(&mediaDrvCtx->SkuTable, FtrTileY)) | ||
36 | + { | ||
37 | + gmmParams.Flags.Info.Tile4 = true; | ||
38 | + } | ||
39 | break; | ||
40 | case TILING_X: | ||
41 | gmmParams.Flags.Info.TiledX = true; | ||
42 | -- | ||
43 | 2.43.0 | ||
44 | |||
diff --git a/recipes-multimedia/libva/files/0004-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch b/recipes-multimedia/libva/files/0004-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch new file mode 100644 index 00000000..49e3ff13 --- /dev/null +++ b/recipes-multimedia/libva/files/0004-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch | |||
@@ -0,0 +1,85 @@ | |||
1 | From a32b95e58fd3e34847e799b909e08dbe5c9dc692 Mon Sep 17 00:00:00 2001 | ||
2 | From: Lim Siew Hoon <siew.hoon.lim@intel.com> | ||
3 | Date: Fri, 2 Aug 2024 13:25:13 +0800 | ||
4 | Subject: [PATCH 4/7] Fix failed 4k videowalll test case and color corruption | ||
5 | of video composition in Gen12 platform | ||
6 | |||
7 | Fix failed 4k video wall test case from 16CH video only show | ||
8 | 1CH output and corruption observed on certain number of video | ||
9 | composition when doing sample_multi_transcode in legacy path. | ||
10 | |||
11 | platform: TGL/ADL/RPL | ||
12 | |||
13 | Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1839] | ||
14 | |||
15 | Signed-off-by: xupianch <xu.pian.chan@intel.com> | ||
16 | Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com> | ||
17 | --- | ||
18 | .../common/vp/hal/vphal_render_composite.cpp | 9 ++++++++- | ||
19 | .../linux/common/vp/ddi/media_libva_vp.c | 18 +++++------------- | ||
20 | 2 files changed, 13 insertions(+), 14 deletions(-) | ||
21 | |||
22 | diff --git a/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp b/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp | ||
23 | index 169030209..cc7c241c1 100644 | ||
24 | --- a/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp | ||
25 | +++ b/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp | ||
26 | @@ -6784,6 +6784,13 @@ bool CompositeState::BuildFilter( | ||
27 | |||
28 | for (i = 0; (i < (int)pCompParams->uSourceCount) && (iMaxFilterSize > 0); i++) | ||
29 | { | ||
30 | + if (i > 0) | ||
31 | + { | ||
32 | + if (!RECT1_CONTAINS_RECT2(pCompParams->pSource[0]->rcDst, pCompParams->pSource[i]->rcDst)) | ||
33 | + { | ||
34 | + pFilter->forceToTargetColorSpace = true; | ||
35 | + } | ||
36 | + } | ||
37 | pSrc = pCompParams->pSource[i]; | ||
38 | |||
39 | //-------------------------------- | ||
40 | @@ -8154,4 +8161,4 @@ bool CompositeState::IsSamplerIDForY( | ||
41 | return true; | ||
42 | } | ||
43 | return false; | ||
44 | - } | ||
45 | \ No newline at end of file | ||
46 | + } | ||
47 | diff --git a/media_driver/linux/common/vp/ddi/media_libva_vp.c b/media_driver/linux/common/vp/ddi/media_libva_vp.c | ||
48 | index 48a452315..4f0fc2c48 100644 | ||
49 | --- a/media_driver/linux/common/vp/ddi/media_libva_vp.c | ||
50 | +++ b/media_driver/linux/common/vp/ddi/media_libva_vp.c | ||
51 | @@ -1148,7 +1148,7 @@ DdiVp_SetProcPipelineParams( | ||
52 | |||
53 | // Background Colorfill | ||
54 | // According to libva definition, if alpha in output background color is zero, then colorfill is not needed | ||
55 | - if ((pPipelineParam->output_background_color >> 24) != 0 || pVpHalTgtSurf->ColorSpace == CSpace_sRGB) | ||
56 | + if ((pPipelineParam->output_background_color >> 24) != 0) | ||
57 | { | ||
58 | if (pVpHalRenderParams->pColorFillParams == nullptr) | ||
59 | { | ||
60 | @@ -1157,18 +1157,10 @@ DdiVp_SetProcPipelineParams( | ||
61 | |||
62 | DDI_CHK_NULL(pVpHalRenderParams->pColorFillParams, "Null pColorFillParams.", VA_STATUS_ERROR_UNKNOWN); | ||
63 | |||
64 | - if (pVpHalTgtSurf->ColorSpace == CSpace_sRGB && (pPipelineParam->output_background_color >> 24) == 0) | ||
65 | - { | ||
66 | - // set color space for sRGB output | ||
67 | - pVpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB; | ||
68 | - } | ||
69 | - else | ||
70 | - { | ||
71 | - // set background colorfill option | ||
72 | - pVpHalRenderParams->pColorFillParams->Color = pPipelineParam->output_background_color; | ||
73 | - pVpHalRenderParams->pColorFillParams->bYCbCr = false; | ||
74 | - pVpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB; | ||
75 | - } | ||
76 | + // set background colorfill option | ||
77 | + pVpHalRenderParams->pColorFillParams->Color = pPipelineParam->output_background_color; | ||
78 | + pVpHalRenderParams->pColorFillParams->bYCbCr = false; | ||
79 | + pVpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB; | ||
80 | }else | ||
81 | { | ||
82 | MOS_FreeMemAndSetNull(pVpHalRenderParams->pColorFillParams); | ||
83 | -- | ||
84 | 2.43.0 | ||
85 | |||
diff --git a/recipes-multimedia/libva/intel-media-driver/0001-linux-fix-build-when-using-musl.patch b/recipes-multimedia/libva/intel-media-driver/0001-linux-fix-build-when-using-musl.patch deleted file mode 100644 index ea203ca9..00000000 --- a/recipes-multimedia/libva/intel-media-driver/0001-linux-fix-build-when-using-musl.patch +++ /dev/null | |||
@@ -1,28 +0,0 @@ | |||
1 | From cc96bcbde6556cb412944ddc40f7b6a89fe4ae27 Mon Sep 17 00:00:00 2001 | ||
2 | From: Anuj Mittal <anuj.mittal@intel.com> | ||
3 | Date: Fri, 23 Nov 2018 14:22:36 +0800 | ||
4 | Subject: [PATCH] linux: fix build when using musl | ||
5 | |||
6 | Alternative definition for CONCAT which is not defined by musl. | ||
7 | |||
8 | Upstream-Status: Pending | ||
9 | |||
10 | Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> | ||
11 | --- | ||
12 | media_driver/linux/common/os/mos_defs_specific.h | 3 ++- | ||
13 | 1 file changed, 2 insertions(+), 1 deletion(-) | ||
14 | |||
15 | diff --git a/media_driver/linux/common/os/mos_defs_specific.h b/media_driver/linux/common/os/mos_defs_specific.h | ||
16 | index 29a8d566..d8244207 100644 | ||
17 | --- a/media_driver/linux/common/os/mos_defs_specific.h | ||
18 | +++ b/media_driver/linux/common/os/mos_defs_specific.h | ||
19 | @@ -81,7 +81,8 @@ typedef struct _TP_CALLBACK_INSTANCE TP_CALLBACK_INSTANCE, *PTP_CALLBACK_INSTANC | ||
20 | /* compile-time ASSERT */ | ||
21 | |||
22 | #ifndef C_ASSERT | ||
23 | - #define __UNIQUENAME( a1, a2 ) __CONCAT( a1, a2 ) | ||
24 | + #define __CONCATING( a1, a2 ) a1 ## a2 | ||
25 | + #define __UNIQUENAME( a1, a2 ) __CONCATING( a1, a2 ) | ||
26 | #define UNIQUENAME( __text ) __UNIQUENAME( __text, __COUNTER__ ) | ||
27 | #define C_ASSERT(e) typedef char UNIQUENAME(STATIC_ASSERT_)[(e)?1:-1] | ||
28 | #endif | ||
diff --git a/recipes-multimedia/libva/intel-media-driver_18.3.0.bb b/recipes-multimedia/libva/intel-media-driver_18.3.0.bb deleted file mode 100644 index d5f1ddc5..00000000 --- a/recipes-multimedia/libva/intel-media-driver_18.3.0.bb +++ /dev/null | |||
@@ -1,37 +0,0 @@ | |||
1 | SUMMARY = "VA driver for Intel Gen based graphics hardware" | ||
2 | DESCRIPTION = "Intel Media Driver for VAAPI is a new VA-API (Video Acceleration API) \ | ||
3 | user mode driver supporting hardware accelerated decoding, encoding, \ | ||
4 | and video post processing for GEN based graphics hardware." | ||
5 | |||
6 | HOMEPAGE = "https://github.com/intel/media-driver" | ||
7 | BUGTRACKER = "https://github.com/intel/media-driver/issues" | ||
8 | |||
9 | LICENSE = "MIT & BSD-3-Clause" | ||
10 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=6aab5363823095ce682b155fef0231f0 \ | ||
11 | file://media_driver/media_libvpx.LICENSE;md5=d5b04755015be901744a78cc30d390d4 \ | ||
12 | " | ||
13 | |||
14 | # Only for 64 bit until this is resolved: https://github.com/intel/media-driver/issues/356 | ||
15 | COMPATIBLE_HOST = '(x86_64).*-linux' | ||
16 | |||
17 | DEPENDS += "libva gmmlib" | ||
18 | |||
19 | SRC_URI = "git://github.com/intel/media-driver.git;protocol=https;branch=intel-media-18.3 \ | ||
20 | file://0001-linux-fix-build-when-using-musl.patch \ | ||
21 | " | ||
22 | |||
23 | SRCREV = "00f9ae5dd6e2bff4da2aaa5b39df4f75588405de" | ||
24 | S = "${WORKDIR}/git" | ||
25 | |||
26 | inherit cmake pkgconfig | ||
27 | |||
28 | MEDIA_DRIVER_ARCH_x86 = "32" | ||
29 | MEDIA_DRIVER_ARCH_x86-64 = "64" | ||
30 | |||
31 | EXTRA_OECMAKE += "-DMEDIA_RUN_TEST_SUITE=OFF -DARCH=${MEDIA_DRIVER_ARCH}" | ||
32 | |||
33 | # See: https://github.com/intel/media-driver/issues/358 | ||
34 | FILES_${PN} += " \ | ||
35 | ${libdir}/dri/ \ | ||
36 | ${libdir}/igfxcmrt64.so \ | ||
37 | " | ||
diff --git a/recipes-multimedia/libva/intel-media-driver_25.1.4.bb b/recipes-multimedia/libva/intel-media-driver_25.1.4.bb new file mode 100644 index 00000000..d2ab0f43 --- /dev/null +++ b/recipes-multimedia/libva/intel-media-driver_25.1.4.bb | |||
@@ -0,0 +1,51 @@ | |||
1 | SUMMARY = "VA driver for Intel Gen based graphics hardware" | ||
2 | DESCRIPTION = "Intel Media Driver for VAAPI is a new VA-API (Video Acceleration API) \ | ||
3 | user mode driver supporting hardware accelerated decoding, encoding, \ | ||
4 | and video post processing for GEN based graphics hardware." | ||
5 | |||
6 | HOMEPAGE = "https://github.com/intel/media-driver" | ||
7 | BUGTRACKER = "https://github.com/intel/media-driver/issues" | ||
8 | |||
9 | LICENSE = "MIT & BSD-3-Clause" | ||
10 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=6aab5363823095ce682b155fef0231f0 \ | ||
11 | file://media_driver/media_libvpx.LICENSE;md5=d5b04755015be901744a78cc30d390d4 \ | ||
12 | " | ||
13 | |||
14 | COMPATIBLE_HOST = '(i.86|x86_64).*-linux' | ||
15 | |||
16 | inherit features_check | ||
17 | REQUIRED_DISTRO_FEATURES = "opengl" | ||
18 | |||
19 | DEPENDS += "libva gmmlib" | ||
20 | |||
21 | SRC_URI = "git://github.com/intel/media-driver.git;protocol=https;nobranch=1 \ | ||
22 | file://0003-Force-ARGB-surface-to-tile4-for-ACM.patch \ | ||
23 | file://0004-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch \ | ||
24 | " | ||
25 | |||
26 | SRCREV = "14e2e7bcf1014186dbf1c099089c7c05cd880ae8" | ||
27 | |||
28 | COMPATIBLE_HOST:x86-x32 = "null" | ||
29 | |||
30 | UPSTREAM_CHECK_GITTAGREGEX = "^intel-media-(?P<pver>(?!600\..*)\d+(\.\d+)+)$" | ||
31 | |||
32 | inherit cmake pkgconfig | ||
33 | |||
34 | MEDIA_DRIVER_ARCH:x86 = "32" | ||
35 | MEDIA_DRIVER_ARCH:x86-64 = "64" | ||
36 | |||
37 | EXTRA_OECMAKE += " \ | ||
38 | -DMEDIA_RUN_TEST_SUITE=OFF \ | ||
39 | -DARCH=${MEDIA_DRIVER_ARCH} \ | ||
40 | -DMEDIA_BUILD_FATAL_WARNINGS=OFF \ | ||
41 | " | ||
42 | |||
43 | CXXFLAGS:append:x86 = " -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" | ||
44 | |||
45 | do_configure:prepend:toolchain-clang() { | ||
46 | sed -i -e '/-fno-tree-pre/d' ${S}/media_driver/cmake/linux/media_compile_flags_linux.cmake | ||
47 | } | ||
48 | |||
49 | FILES:${PN} += " \ | ||
50 | ${libdir}/dri/ \ | ||
51 | " | ||
diff --git a/recipes-multimedia/libva/intel-vaapi-driver_2.2.0.bb b/recipes-multimedia/libva/intel-vaapi-driver_2.4.1.bb index 9036f74e..5038d8d7 100644 --- a/recipes-multimedia/libva/intel-vaapi-driver_2.2.0.bb +++ b/recipes-multimedia/libva/intel-vaapi-driver_2.4.1.bb | |||
@@ -13,21 +13,22 @@ COMPATIBLE_HOST = '(i.86|x86_64).*-linux' | |||
13 | 13 | ||
14 | DEPENDS = "libva libdrm" | 14 | DEPENDS = "libva libdrm" |
15 | 15 | ||
16 | SRC_URI = "https://github.com/intel/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.bz2" | 16 | SRC_URI = "https://github.com/intel/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.bz2 \ |
17 | SRC_URI[md5sum] = "e296c52fa1cb5c3d53a6cc994ce0a66c" | 17 | " |
18 | SRC_URI[sha256sum] = "e8a5f54694eb76aad42653b591030b8a53b1513144c09a80defb3d8d8c875c18" | 18 | |
19 | SRC_URI[sha256sum] = "0081fce08eb3a83f7d99c3b853c8fdfa0af437b8f5b0fb7c66faeb83bcbe0c19" | ||
19 | 20 | ||
20 | UPSTREAM_CHECK_URI = "https://github.com/intel/intel-vaapi-driver/releases" | 21 | UPSTREAM_CHECK_URI = "https://github.com/intel/intel-vaapi-driver/releases" |
21 | 22 | ||
22 | inherit autotools pkgconfig distro_features_check | 23 | inherit meson pkgconfig features_check |
23 | 24 | ||
24 | REQUIRED_DISTRO_FEATURES = "opengl" | 25 | REQUIRED_DISTRO_FEATURES = "opengl" |
25 | 26 | ||
26 | PACKAGECONFIG ??= "${@bb.utils.contains("DISTRO_FEATURES", "x11", "x11", "", d)} \ | 27 | PACKAGECONFIG ??= "${@bb.utils.contains("DISTRO_FEATURES", "x11", "x11", "", d)} \ |
27 | ${@bb.utils.contains("DISTRO_FEATURES", "opengl wayland", "wayland", "", d)}" | 28 | ${@bb.utils.contains("DISTRO_FEATURES", "opengl wayland", "wayland", "", d)}" |
28 | PACKAGECONFIG[x11] = "--enable-x11,--disable-x11" | 29 | PACKAGECONFIG[x11] = "-Dwith_x11=yes, -Dwith_x11=no" |
29 | PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland wayland-native virtual/egl" | 30 | PACKAGECONFIG[wayland] = "-Dwith_wayland=yes, -Dwith_wayland=no, wayland wayland-native virtual/egl" |
30 | 31 | ||
31 | FILES_${PN} += "${libdir}/dri/*.so" | 32 | FILES:${PN} += "${libdir}/dri/*.so" |
32 | FILES_${PN}-dev += "${libdir}/dri/*.la" | 33 | FILES:${PN}-dev += "${libdir}/dri/*.la" |
33 | FILES_${PN}-dbg += "${libdir}/dri/.debug" | 34 | FILES:${PN}-dbg += "${libdir}/dri/.debug" |