From 172651fbb9bfff204727e781227a158658489bfa Mon Sep 17 00:00:00 2001 From: Lim Siew Hoon Date: Mon, 5 May 2025 01:15:20 -0700 Subject: intel-media-driver: upgrade 24.4.4 -> 25.1.4 Drop list of patches already merged - 0001-Change-RGB-mask-and-order-for-BMG.patch Release notes: https://github.com/intel/media-driver/releases/tag/intel-media-25.1.4 Signed-off-by: Lim Siew Hoon Signed-off-by: Anuj Mittal --- .../0001-Change-RGB-mask-and-order-for-BMG.patch | 45 ------------ ...4k-videowalll-test-case-and-color-corrupt.patch | 85 ---------------------- .../0001-Force-ARGB-surface-to-tile4-for-ACM.patch | 44 ----------- .../0003-Force-ARGB-surface-to-tile4-for-ACM.patch | 44 +++++++++++ ...4k-videowalll-test-case-and-color-corrupt.patch | 85 ++++++++++++++++++++++ .../libva/intel-media-driver_24.4.4.bb | 53 -------------- .../libva/intel-media-driver_25.1.4.bb | 52 +++++++++++++ 7 files changed, 181 insertions(+), 227 deletions(-) delete mode 100644 recipes-multimedia/libva/files/0001-Change-RGB-mask-and-order-for-BMG.patch delete mode 100644 recipes-multimedia/libva/files/0001-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch delete mode 100644 recipes-multimedia/libva/files/0001-Force-ARGB-surface-to-tile4-for-ACM.patch create mode 100644 recipes-multimedia/libva/files/0003-Force-ARGB-surface-to-tile4-for-ACM.patch create mode 100644 recipes-multimedia/libva/files/0004-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch delete mode 100644 recipes-multimedia/libva/intel-media-driver_24.4.4.bb create mode 100644 recipes-multimedia/libva/intel-media-driver_25.1.4.bb diff --git a/recipes-multimedia/libva/files/0001-Change-RGB-mask-and-order-for-BMG.patch b/recipes-multimedia/libva/files/0001-Change-RGB-mask-and-order-for-BMG.patch deleted file mode 100644 index 0b3277b0..00000000 --- a/recipes-multimedia/libva/files/0001-Change-RGB-mask-and-order-for-BMG.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 8e7b263729bec520cf830cbf85216c2d6466421d Mon Sep 17 00:00:00 2001 -From: "Hoe, Sheng Yang" -Date: Fri, 22 Nov 2024 10:11:14 +0000 -Subject: [PATCH] Change RGB mask and order for BMG - -Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1884] - -Signed-off-by: Hoe, Sheng Yang ---- - .../ddi/capstable_data_image_format_definition.h | 11 ++++++----- - 1 file changed, 6 insertions(+), 5 deletions(-) - -diff --git a/media_softlet/linux/common/ddi/capstable_data_image_format_definition.h b/media_softlet/linux/common/ddi/capstable_data_image_format_definition.h -index af28653a5..ec99164ce 100644 ---- a/media_softlet/linux/common/ddi/capstable_data_image_format_definition.h -+++ b/media_softlet/linux/common/ddi/capstable_data_image_format_definition.h -@@ -29,13 +29,14 @@ - - #include "va/va.h" - --static VAImageFormat formatBGRA = {VA_FOURCC_BGRA, VA_LSB_FIRST, 32, 32, 0x0000ff00, 0x00ff0000, 0xff000000, 0x000000ff }; /* [31:0] B:G:R:A 8:8:8:8 little endian */ -+// "VA_LSB_FIRST" is to identify how following bit masks mapped to address instead of char order in VA_FOURCC_RGBA naming. -+static VAImageFormat formatBGRA = {VA_FOURCC_BGRA, VA_LSB_FIRST, 32, 32, 0x00ff0000, 0x0000ff00, 0x000000ff, 0xff000000}; /* [31:0] A:R:G:B 8:8:8:8 little endian */ - static VAImageFormat formatARGB = {VA_FOURCC_ARGB, VA_LSB_FIRST, 32, 32, 0x00ff0000, 0x0000ff00, 0x000000ff, 0xff000000 }; /* [31:0] A:R:G:B 8:8:8:8 little endian */ --static VAImageFormat formatRGBA = {VA_FOURCC_RGBA, VA_LSB_FIRST, 32, 32, 0xff000000, 0x00ff0000, 0x0000ff00, 0x000000ff }; /* [31:0] R:G:B:A 8:8:8:8 little endian */ -+static VAImageFormat formatRGBA = {VA_FOURCC_RGBA, VA_LSB_FIRST, 32, 32, 0x000000ff, 0x0000ff00, 0x00ff0000, 0xff000000}; /* [31:0] A:B:G:R 8:8:8:8 little endian */ - static VAImageFormat formatABGR = {VA_FOURCC_ABGR, VA_LSB_FIRST, 32, 32, 0x000000ff, 0x0000ff00, 0x00ff0000, 0xff000000 }; /* [31:0] A:B:G:R 8:8:8:8 little endian */ --static VAImageFormat formatBGRX = {VA_FOURCC_BGRX, VA_LSB_FIRST, 32, 24, 0x0000ff00, 0x00ff0000, 0xff000000, 0 }; /* [31:0] B:G:R:x 8:8:8:8 little endian */ -+static VAImageFormat formatBGRX = {VA_FOURCC_BGRX, VA_LSB_FIRST, 32, 24, 0x00ff0000, 0x0000ff00, 0x000000ff, 0}; /* [31:0] X:R:G:B 8:8:8:8 little endian */ - static VAImageFormat formatXRGB = {VA_FOURCC_XRGB, VA_LSB_FIRST, 32, 24, 0x00ff0000, 0x0000ff00, 0x000000ff, 0 }; /* [31:0] x:R:G:B 8:8:8:8 little endian */ --static VAImageFormat formatRGBX = {VA_FOURCC_RGBX, VA_LSB_FIRST, 32, 24, 0xff000000, 0x00ff0000, 0x0000ff00, 0 }; /* [31:0] R:G:B:x 8:8:8:8 little endian */ -+static VAImageFormat formatRGBX = {VA_FOURCC_RGBX, VA_LSB_FIRST, 32, 24, 0x000000ff, 0x0000ff00, 0x00ff0000, 0}; /* [31:0] X:B:G:R 8:8:8:8 little endian */ - static VAImageFormat formatXBGR = {VA_FOURCC_XBGR, VA_LSB_FIRST, 32, 24, 0x000000ff, 0x0000ff00, 0x00ff0000, 0 }; /* [31:0] x:B:G:R 8:8:8:8 little endian */ - static VAImageFormat formatA2R10G10B10 = {VA_FOURCC_A2R10G10B10, VA_LSB_FIRST, 32, 30, 0x3ff00000, 0x000ffc00, 0x000003ff, 0x30000000 }; /* [31:0] A:R:G:B 2:10:10:10 little endian */ - static VAImageFormat formatA2B10G10R10 = {VA_FOURCC_A2B10G10R10, VA_LSB_FIRST, 32, 30, 0x000003ff, 0x000ffc00, 0x3ff00000, 0x30000000 }; /* [31:0] A:B:G:R 2:10:10:10 little endian */ -@@ -70,4 +71,4 @@ static VAImageFormat formatY416 = {VA_FOURCC_Y416, VA_LSB_FIRST, - static VAImageFormat formatRGBP = {VA_FOURCC_RGBP, VA_LSB_FIRST, 24, 24,0,0,0,0}; - static VAImageFormat formatBGRP = {VA_FOURCC_BGRP, VA_LSB_FIRST, 24, 24,0,0,0,0}; - --#endif //__CAPSTABLE_DATA_IMAGE_FORMAT_DEFINITION_H__ -\ No newline at end of file -+#endif //__CAPSTABLE_DATA_IMAGE_FORMAT_DEFINITION_H__ --- -2.34.1 - diff --git a/recipes-multimedia/libva/files/0001-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch b/recipes-multimedia/libva/files/0001-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch deleted file mode 100644 index fbeab6e2..00000000 --- a/recipes-multimedia/libva/files/0001-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch +++ /dev/null @@ -1,85 +0,0 @@ -From 38e6883e54e65a73aa7795dc2ff9f072448cb3dc Mon Sep 17 00:00:00 2001 -From: Lim Siew Hoon -Date: Fri, 2 Aug 2024 13:25:13 +0800 -Subject: [PATCH] Fix failed 4k videowalll test case and color corruption of - video composition in Gen12 platform - -Fix failed 4k video wall test case from 16CH video only show -1CH output and corruption observed on certain number of video -composition when doing sample_multi_transcode in legacy path. - -platform: TGL/ADL/RPL - -Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1839] - -Signed-off-by: xupianch -Signed-off-by: Lim Siew Hoon ---- - .../common/vp/hal/vphal_render_composite.cpp | 9 ++++++++- - .../linux/common/vp/ddi/media_libva_vp.c | 18 +++++------------- - 2 files changed, 13 insertions(+), 14 deletions(-) - -diff --git a/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp b/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp -index 169030209..cc7c241c1 100644 ---- a/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp -+++ b/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp -@@ -6784,6 +6784,13 @@ bool CompositeState::BuildFilter( - - for (i = 0; (i < (int)pCompParams->uSourceCount) && (iMaxFilterSize > 0); i++) - { -+ if (i > 0) -+ { -+ if (!RECT1_CONTAINS_RECT2(pCompParams->pSource[0]->rcDst, pCompParams->pSource[i]->rcDst)) -+ { -+ pFilter->forceToTargetColorSpace = true; -+ } -+ } - pSrc = pCompParams->pSource[i]; - - //-------------------------------- -@@ -8154,4 +8161,4 @@ bool CompositeState::IsSamplerIDForY( - return true; - } - return false; -- } -\ No newline at end of file -+ } -diff --git a/media_driver/linux/common/vp/ddi/media_libva_vp.c b/media_driver/linux/common/vp/ddi/media_libva_vp.c -index 48a452315..4f0fc2c48 100644 ---- a/media_driver/linux/common/vp/ddi/media_libva_vp.c -+++ b/media_driver/linux/common/vp/ddi/media_libva_vp.c -@@ -1148,7 +1148,7 @@ DdiVp_SetProcPipelineParams( - - // Background Colorfill - // According to libva definition, if alpha in output background color is zero, then colorfill is not needed -- if ((pPipelineParam->output_background_color >> 24) != 0 || pVpHalTgtSurf->ColorSpace == CSpace_sRGB) -+ if ((pPipelineParam->output_background_color >> 24) != 0) - { - if (pVpHalRenderParams->pColorFillParams == nullptr) - { -@@ -1157,18 +1157,10 @@ DdiVp_SetProcPipelineParams( - - DDI_CHK_NULL(pVpHalRenderParams->pColorFillParams, "Null pColorFillParams.", VA_STATUS_ERROR_UNKNOWN); - -- if (pVpHalTgtSurf->ColorSpace == CSpace_sRGB && (pPipelineParam->output_background_color >> 24) == 0) -- { -- // set color space for sRGB output -- pVpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB; -- } -- else -- { -- // set background colorfill option -- pVpHalRenderParams->pColorFillParams->Color = pPipelineParam->output_background_color; -- pVpHalRenderParams->pColorFillParams->bYCbCr = false; -- pVpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB; -- } -+ // set background colorfill option -+ pVpHalRenderParams->pColorFillParams->Color = pPipelineParam->output_background_color; -+ pVpHalRenderParams->pColorFillParams->bYCbCr = false; -+ pVpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB; - }else - { - MOS_FreeMemAndSetNull(pVpHalRenderParams->pColorFillParams); --- -2.43.2 - diff --git a/recipes-multimedia/libva/files/0001-Force-ARGB-surface-to-tile4-for-ACM.patch b/recipes-multimedia/libva/files/0001-Force-ARGB-surface-to-tile4-for-ACM.patch deleted file mode 100644 index 0642f129..00000000 --- a/recipes-multimedia/libva/files/0001-Force-ARGB-surface-to-tile4-for-ACM.patch +++ /dev/null @@ -1,44 +0,0 @@ -From f318522175fb2ecc6d364b995a7b1926fd158a88 Mon Sep 17 00:00:00 2001 -From: Lim Siew Hoon -Date: Wed, 11 Oct 2023 15:36:21 +0800 -Subject: [PATCH] Force ARGB surface to tile4 for ACM - -Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1728] - -Signed-off-by: Soon, Thean Siew -Signed-off-by: Lim Siew Hoon ---- - media_driver/linux/common/ddi/media_libva_util.cpp | 10 ++++++++++ - 1 file changed, 10 insertions(+) - -diff --git a/media_driver/linux/common/ddi/media_libva_util.cpp b/media_driver/linux/common/ddi/media_libva_util.cpp -index a4e12edfa..11634f66e 100755 ---- a/media_driver/linux/common/ddi/media_libva_util.cpp -+++ b/media_driver/linux/common/ddi/media_libva_util.cpp -@@ -521,6 +521,7 @@ VAStatus DdiMediaUtil_AllocateSurface( - gmmCustomParams.Flags.Gpu.UnifiedAuxSurface = 0; - } - } -+ - break; - case TILING_X: - gmmCustomParams.Flags.Info.TiledX = true; -@@ -702,6 +703,15 @@ VAStatus DdiMediaUtil_AllocateSurface( - } - } - } -+ // There's no VAAPI interface for modifier query yet. As a workaround, always allocate -+ // RGB surface as tile4. -+ if ((format == Media_Format_A8R8G8B8 || -+ format == Media_Format_B10G10R10A2 | -+ format == Media_Format_A8B8G8R8 || -+ format == Media_Format_X8R8G8B8) && !MEDIA_IS_SKU(&mediaDrvCtx->SkuTable, FtrTileY)) -+ { -+ gmmParams.Flags.Info.Tile4 = true; -+ } - break; - case TILING_X: - gmmParams.Flags.Info.TiledX = true; --- -2.43.2 - 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 @@ +From 6132115dd2f1db55a6a5371618247dfaa334a035 Mon Sep 17 00:00:00 2001 +From: Lim Siew Hoon +Date: Wed, 11 Oct 2023 15:36:21 +0800 +Subject: [PATCH 3/7] Force ARGB surface to tile4 for ACM + +Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1728] + +Signed-off-by: Soon, Thean Siew +Signed-off-by: Lim Siew Hoon +--- + media_driver/linux/common/ddi/media_libva_util.cpp | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/media_driver/linux/common/ddi/media_libva_util.cpp b/media_driver/linux/common/ddi/media_libva_util.cpp +index a4e12edfa..11634f66e 100755 +--- a/media_driver/linux/common/ddi/media_libva_util.cpp ++++ b/media_driver/linux/common/ddi/media_libva_util.cpp +@@ -521,6 +521,7 @@ VAStatus DdiMediaUtil_AllocateSurface( + gmmCustomParams.Flags.Gpu.UnifiedAuxSurface = 0; + } + } ++ + break; + case TILING_X: + gmmCustomParams.Flags.Info.TiledX = true; +@@ -702,6 +703,15 @@ VAStatus DdiMediaUtil_AllocateSurface( + } + } + } ++ // There's no VAAPI interface for modifier query yet. As a workaround, always allocate ++ // RGB surface as tile4. ++ if ((format == Media_Format_A8R8G8B8 || ++ format == Media_Format_B10G10R10A2 | ++ format == Media_Format_A8B8G8R8 || ++ format == Media_Format_X8R8G8B8) && !MEDIA_IS_SKU(&mediaDrvCtx->SkuTable, FtrTileY)) ++ { ++ gmmParams.Flags.Info.Tile4 = true; ++ } + break; + case TILING_X: + gmmParams.Flags.Info.TiledX = true; +-- +2.43.0 + 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 @@ +From a32b95e58fd3e34847e799b909e08dbe5c9dc692 Mon Sep 17 00:00:00 2001 +From: Lim Siew Hoon +Date: Fri, 2 Aug 2024 13:25:13 +0800 +Subject: [PATCH 4/7] Fix failed 4k videowalll test case and color corruption + of video composition in Gen12 platform + +Fix failed 4k video wall test case from 16CH video only show +1CH output and corruption observed on certain number of video +composition when doing sample_multi_transcode in legacy path. + +platform: TGL/ADL/RPL + +Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1839] + +Signed-off-by: xupianch +Signed-off-by: Lim Siew Hoon +--- + .../common/vp/hal/vphal_render_composite.cpp | 9 ++++++++- + .../linux/common/vp/ddi/media_libva_vp.c | 18 +++++------------- + 2 files changed, 13 insertions(+), 14 deletions(-) + +diff --git a/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp b/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp +index 169030209..cc7c241c1 100644 +--- a/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp ++++ b/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp +@@ -6784,6 +6784,13 @@ bool CompositeState::BuildFilter( + + for (i = 0; (i < (int)pCompParams->uSourceCount) && (iMaxFilterSize > 0); i++) + { ++ if (i > 0) ++ { ++ if (!RECT1_CONTAINS_RECT2(pCompParams->pSource[0]->rcDst, pCompParams->pSource[i]->rcDst)) ++ { ++ pFilter->forceToTargetColorSpace = true; ++ } ++ } + pSrc = pCompParams->pSource[i]; + + //-------------------------------- +@@ -8154,4 +8161,4 @@ bool CompositeState::IsSamplerIDForY( + return true; + } + return false; +- } +\ No newline at end of file ++ } +diff --git a/media_driver/linux/common/vp/ddi/media_libva_vp.c b/media_driver/linux/common/vp/ddi/media_libva_vp.c +index 48a452315..4f0fc2c48 100644 +--- a/media_driver/linux/common/vp/ddi/media_libva_vp.c ++++ b/media_driver/linux/common/vp/ddi/media_libva_vp.c +@@ -1148,7 +1148,7 @@ DdiVp_SetProcPipelineParams( + + // Background Colorfill + // According to libva definition, if alpha in output background color is zero, then colorfill is not needed +- if ((pPipelineParam->output_background_color >> 24) != 0 || pVpHalTgtSurf->ColorSpace == CSpace_sRGB) ++ if ((pPipelineParam->output_background_color >> 24) != 0) + { + if (pVpHalRenderParams->pColorFillParams == nullptr) + { +@@ -1157,18 +1157,10 @@ DdiVp_SetProcPipelineParams( + + DDI_CHK_NULL(pVpHalRenderParams->pColorFillParams, "Null pColorFillParams.", VA_STATUS_ERROR_UNKNOWN); + +- if (pVpHalTgtSurf->ColorSpace == CSpace_sRGB && (pPipelineParam->output_background_color >> 24) == 0) +- { +- // set color space for sRGB output +- pVpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB; +- } +- else +- { +- // set background colorfill option +- pVpHalRenderParams->pColorFillParams->Color = pPipelineParam->output_background_color; +- pVpHalRenderParams->pColorFillParams->bYCbCr = false; +- pVpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB; +- } ++ // set background colorfill option ++ pVpHalRenderParams->pColorFillParams->Color = pPipelineParam->output_background_color; ++ pVpHalRenderParams->pColorFillParams->bYCbCr = false; ++ pVpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB; + }else + { + MOS_FreeMemAndSetNull(pVpHalRenderParams->pColorFillParams); +-- +2.43.0 + diff --git a/recipes-multimedia/libva/intel-media-driver_24.4.4.bb b/recipes-multimedia/libva/intel-media-driver_24.4.4.bb deleted file mode 100644 index f2f8b83c..00000000 --- a/recipes-multimedia/libva/intel-media-driver_24.4.4.bb +++ /dev/null @@ -1,53 +0,0 @@ -SUMMARY = "VA driver for Intel Gen based graphics hardware" -DESCRIPTION = "Intel Media Driver for VAAPI is a new VA-API (Video Acceleration API) \ -user mode driver supporting hardware accelerated decoding, encoding, \ -and video post processing for GEN based graphics hardware." - -HOMEPAGE = "https://github.com/intel/media-driver" -BUGTRACKER = "https://github.com/intel/media-driver/issues" - -LICENSE = "MIT & BSD-3-Clause" -LIC_FILES_CHKSUM = "file://LICENSE.md;md5=6aab5363823095ce682b155fef0231f0 \ - file://media_driver/media_libvpx.LICENSE;md5=d5b04755015be901744a78cc30d390d4 \ - " - -COMPATIBLE_HOST = '(i.86|x86_64).*-linux' - -inherit features_check -REQUIRED_DISTRO_FEATURES = "opengl" - -DEPENDS += "libva gmmlib" - -SRC_URI = "git://github.com/intel/media-driver.git;protocol=https;nobranch=1 \ - file://0001-Force-ARGB-surface-to-tile4-for-ACM.patch \ - file://0001-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch \ - file://0001-Change-RGB-mask-and-order-for-BMG.patch \ - " - -SRCREV = "d3c30f6dddb43bd7b1b0a4d38a0d0ba47dda5726" -S = "${WORKDIR}/git" - -COMPATIBLE_HOST:x86-x32 = "null" - -UPSTREAM_CHECK_GITTAGREGEX = "^intel-media-(?P(?!600\..*)\d+(\.\d+)+)$" - -inherit cmake pkgconfig - -MEDIA_DRIVER_ARCH:x86 = "32" -MEDIA_DRIVER_ARCH:x86-64 = "64" - -EXTRA_OECMAKE += " \ - -DMEDIA_RUN_TEST_SUITE=OFF \ - -DARCH=${MEDIA_DRIVER_ARCH} \ - -DMEDIA_BUILD_FATAL_WARNINGS=OFF \ - " - -CXXFLAGS:append:x86 = " -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" - -do_configure:prepend:toolchain-clang() { - sed -i -e '/-fno-tree-pre/d' ${S}/media_driver/cmake/linux/media_compile_flags_linux.cmake -} - -FILES:${PN} += " \ - ${libdir}/dri/ \ - " 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..b972e230 --- /dev/null +++ b/recipes-multimedia/libva/intel-media-driver_25.1.4.bb @@ -0,0 +1,52 @@ +SUMMARY = "VA driver for Intel Gen based graphics hardware" +DESCRIPTION = "Intel Media Driver for VAAPI is a new VA-API (Video Acceleration API) \ +user mode driver supporting hardware accelerated decoding, encoding, \ +and video post processing for GEN based graphics hardware." + +HOMEPAGE = "https://github.com/intel/media-driver" +BUGTRACKER = "https://github.com/intel/media-driver/issues" + +LICENSE = "MIT & BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE.md;md5=6aab5363823095ce682b155fef0231f0 \ + file://media_driver/media_libvpx.LICENSE;md5=d5b04755015be901744a78cc30d390d4 \ + " + +COMPATIBLE_HOST = '(i.86|x86_64).*-linux' + +inherit features_check +REQUIRED_DISTRO_FEATURES = "opengl" + +DEPENDS += "libva gmmlib" + +SRC_URI = "git://github.com/intel/media-driver.git;protocol=https;nobranch=1 \ + file://0003-Force-ARGB-surface-to-tile4-for-ACM.patch \ + file://0004-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch \ + " + +SRCREV = "14e2e7bcf1014186dbf1c099089c7c05cd880ae8" +S = "${WORKDIR}/git" + +COMPATIBLE_HOST:x86-x32 = "null" + +UPSTREAM_CHECK_GITTAGREGEX = "^intel-media-(?P(?!600\..*)\d+(\.\d+)+)$" + +inherit cmake pkgconfig + +MEDIA_DRIVER_ARCH:x86 = "32" +MEDIA_DRIVER_ARCH:x86-64 = "64" + +EXTRA_OECMAKE += " \ + -DMEDIA_RUN_TEST_SUITE=OFF \ + -DARCH=${MEDIA_DRIVER_ARCH} \ + -DMEDIA_BUILD_FATAL_WARNINGS=OFF \ + " + +CXXFLAGS:append:x86 = " -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" + +do_configure:prepend:toolchain-clang() { + sed -i -e '/-fno-tree-pre/d' ${S}/media_driver/cmake/linux/media_compile_flags_linux.cmake +} + +FILES:${PN} += " \ + ${libdir}/dri/ \ + " -- cgit v1.2.3-54-g00ecf