From: "Yew, Chang Ching" <[email protected]> New in This Release =================== * Updated mfxvideo++.h to remove deprecation warnings * Sample* tools select oneVPL 2.x APIs by default * Sample* tool update to support new GPU features * Updates to C++ & Python previews: * AV1 extension buffer support * new property interface * Targets Python 3.7 * Updated documentation and build for OpenVINO interop sample * The libmfx.dll and libmfx.so.2021.1.11 libraries, that had been renamed to libvpl.* have been removed
Release notes: https://github.com/oneapi-src/oneVPL/releases/tag/v2022.0.0 Signed-off-by: Yew, Chang Ching <[email protected]> --- ...ds-errorTypes-to-support-JPEG-errors.patch | 59 -------- ...-basename-build-issue-with-musl_libc.patch | 24 ++-- ...le_decode-Add-VDSFC-CSC-for-AVC-HEVC.patch | 132 ------------------ ...yland-scanner-auto-generate-on-cmake.patch | 98 ++++++------- ..._program-to-detect-wayland-scanner-i.patch | 108 -------------- ...-Addin-basic-wayland-dmabuf-support.patch} | 27 ++-- ...c-use-wayland-dmabuf-to-render-nv12.patch} | 15 +- ...{onevpl_2021.6.0.bb => onevpl_2022.0.3.bb} | 11 +- 8 files changed, 77 insertions(+), 397 deletions(-) delete mode 100644 recipes-multimedia/onevpl/onevpl/0001-Extends-errorTypes-to-support-JPEG-errors.patch delete mode 100644 recipes-multimedia/onevpl/onevpl/0001-sample_decode-Add-VDSFC-CSC-for-AVC-HEVC.patch delete mode 100644 recipes-multimedia/onevpl/onevpl/0001-samples-use-find_program-to-detect-wayland-scanner-i.patch rename recipes-multimedia/onevpl/onevpl/{0001-sample_misc-Addin-basic-wayland-dmabuf-support.patch => 0002-sample_misc-Addin-basic-wayland-dmabuf-support.patch} (82%) rename recipes-multimedia/onevpl/onevpl/{0001-sample_misc-use-wayland-dmabuf-to-render-nv12.patch => 0003-sample_misc-use-wayland-dmabuf-to-render-nv12.patch} (89%) rename recipes-multimedia/onevpl/{onevpl_2021.6.0.bb => onevpl_2022.0.3.bb} (72%) diff --git a/recipes-multimedia/onevpl/onevpl/0001-Extends-errorTypes-to-support-JPEG-errors.patch b/recipes-multimedia/onevpl/onevpl/0001-Extends-errorTypes-to-support-JPEG-errors.patch deleted file mode 100644 index 063dd3fb..00000000 --- a/recipes-multimedia/onevpl/onevpl/0001-Extends-errorTypes-to-support-JPEG-errors.patch +++ /dev/null @@ -1,59 +0,0 @@ -From acdab0d47785f61aa06c1f0955450bf1574f202c Mon Sep 17 00:00:00 2001 -From: Vincent Cheah Beng Keat <[email protected]> -Date: Tue, 28 Sep 2021 03:06:40 +0000 -Subject: [PATCH] Extends errorTypes to support JPEG errors - -Upstream-Status: Submitted -innersource PR #251 - ---- - api/vpl/mfxstructures.h | 33 +++++++++++++++++++++++++++------ - 1 file changed, 27 insertions(+), 6 deletions(-) - -diff --git a/api/vpl/mfxstructures.h b/api/vpl/mfxstructures.h -index 9c8dd2b1..a9ccb4ae 100644 ---- a/api/vpl/mfxstructures.h -+++ b/api/vpl/mfxstructures.h -@@ -3546,12 +3546,33 @@ MFX_PACK_END() - - /*! The ErrorTypes enumerator uses bit-ORed values to itemize bitstream error types. */ - enum { -- MFX_ERROR_NO = 0, /*!< No error in bitstream. */ -- MFX_ERROR_PPS = (1 << 0), /*!< Invalid/corrupted PPS. */ -- MFX_ERROR_SPS = (1 << 1), /*!< Invalid/corrupted SPS. */ -- MFX_ERROR_SLICEHEADER = (1 << 2), /*!< Invalid/corrupted slice header. */ -- MFX_ERROR_SLICEDATA = (1 << 3), /*!< Invalid/corrupted slice data. */ -- MFX_ERROR_FRAME_GAP = (1 << 4), /*!< Missed frames. */ -+ MFX_ERROR_NO = 0, /*!< No error in bitstream. */ -+ MFX_ERROR_PPS = (1 << 0), /*!< Invalid/corrupted PPS. */ -+ MFX_ERROR_SPS = (1 << 1), /*!< Invalid/corrupted SPS. */ -+ MFX_ERROR_SLICEHEADER = (1 << 2), /*!< Invalid/corrupted slice header. */ -+ MFX_ERROR_SLICEDATA = (1 << 3), /*!< Invalid/corrupted slice data. */ -+ MFX_ERROR_FRAME_GAP = (1 << 4), /*!< Missed frames. */ -+ MFX_ERROR_JPEG_APP0_MARKER = (1 << 5), /*!< Invalid/corrupted APP0 marker. */ -+ MFX_ERROR_JPEG_APP1_MARKER = (1 << 6), /*!< Invalid/corrupted APP1 marker. */ -+ MFX_ERROR_JPEG_APP2_MARKER = (1 << 7), /*!< Invalid/corrupted APP2 marker. */ -+ MFX_ERROR_JPEG_APP3_MARKER = (1 << 8), /*!< Invalid/corrupted APP3 marker. */ -+ MFX_ERROR_JPEG_APP4_MARKER = (1 << 9), /*!< Invalid/corrupted APP4 marker. */ -+ MFX_ERROR_JPEG_APP5_MARKER = (1 << 10), /*!< Invalid/corrupted APP5 marker. */ -+ MFX_ERROR_JPEG_APP6_MARKER = (1 << 11), /*!< Invalid/corrupted APP6 marker. */ -+ MFX_ERROR_JPEG_APP7_MARKER = (1 << 12), /*!< Invalid/corrupted APP7 marker. */ -+ MFX_ERROR_JPEG_APP8_MARKER = (1 << 13), /*!< Invalid/corrupted APP8 marker. */ -+ MFX_ERROR_JPEG_APP9_MARKER = (1 << 14), /*!< Invalid/corrupted APP9 marker. */ -+ MFX_ERROR_JPEG_APP10_MARKER = (1 << 15), /*!< Invalid/corrupted APP10 marker. */ -+ MFX_ERROR_JPEG_APP11_MARKER = (1 << 16), /*!< Invalid/corrupted APP11 marker. */ -+ MFX_ERROR_JPEG_APP12_MARKER = (1 << 17), /*!< Invalid/corrupted APP12 marker. */ -+ MFX_ERROR_JPEG_APP13_MARKER = (1 << 18), /*!< Invalid/corrupted APP13 marker. */ -+ MFX_ERROR_JPEG_APP14_MARKER = (1 << 19), /*!< Invalid/corrupted APP14 marker. */ -+ MFX_ERROR_JPEG_DQT_MARKER = (1 << 20), /*!< Invalid/corrupted DQT marker. */ -+ MFX_ERROR_JPEG_SOF0_MARKER = (1 << 21), /*!< Invalid/corrupted SOF0 marker. */ -+ MFX_ERROR_JPEG_DHT_MARKER = (1 << 22), /*!< Invalid/corrupted DHT marker. */ -+ MFX_ERROR_JPEG_DRI_MARKER = (1 << 23), /*!< Invalid/corrupted DRI marker. */ -+ MFX_ERROR_JPEG_SOS_MARKER = (1 << 24), /*!< Invalid/corrupted SOS marker. */ -+ MFX_ERROR_JPEG_UNKNOWN_MARKER = (1 << 25), /*!< Unknown Marker. */ - }; - - MFX_PACK_BEGIN_USUAL_STRUCT() --- -2.33.0 - diff --git a/recipes-multimedia/onevpl/onevpl/0001-Fix-basename-build-issue-with-musl_libc.patch b/recipes-multimedia/onevpl/onevpl/0001-Fix-basename-build-issue-with-musl_libc.patch index 93e5ed0d..14453279 100644 --- a/recipes-multimedia/onevpl/onevpl/0001-Fix-basename-build-issue-with-musl_libc.patch +++ b/recipes-multimedia/onevpl/onevpl/0001-Fix-basename-build-issue-with-musl_libc.patch @@ -1,7 +1,7 @@ -From d16afe9f9302e4995f12d699019eba170bb6db21 Mon Sep 17 00:00:00 2001 +From 72ceb46b43a7a74d20ced961aaff9366ccce53a9 Mon Sep 17 00:00:00 2001 From: "Yew, Chang Ching" <[email protected]> -Date: Fri, 8 Oct 2021 08:45:39 +0800 -Subject: [PATCH] Fix basename() build issue with musl_libc +Date: Mon, 24 Jan 2022 20:49:50 +0800 +Subject: [PATCH 1/5] Fix basename() build issue with musl_libc Upstream-Status: Submitted innersource PR #264 @@ -12,7 +12,7 @@ Signed-off-by: Yew, Chang Ching <[email protected]> 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tools/legacy/sample_common/src/vaapi_utils.cpp b/tools/legacy/sample_common/src/vaapi_utils.cpp -index b69dbe44..9382535a 100644 +index 86193d17..db71d413 100644 --- a/tools/legacy/sample_common/src/vaapi_utils.cpp +++ b/tools/legacy/sample_common/src/vaapi_utils.cpp @@ -7,6 +7,7 @@ @@ -23,15 +23,15 @@ index b69dbe44..9382535a 100644 #include <dlfcn.h> #include <stdexcept> -@@ -26,7 +27,7 @@ SimpleLoader::SimpleLoader(const char* name) { +@@ -24,7 +25,7 @@ namespace MfxLoader { + + SimpleLoader::SimpleLoader(const char* name) { dlerror(); - so_handle = dlopen(name, RTLD_GLOBAL | RTLD_NOW); +- so_handle = dlopen(name, RTLD_GLOBAL | RTLD_NOW); ++ so_handle = dlopen(basename((char *)name), RTLD_GLOBAL | RTLD_NOW); if (NULL == so_handle) { -- so_handle = dlopen(basename(name), RTLD_GLOBAL | RTLD_NOW); -+ so_handle = dlopen(basename((char *)name), RTLD_GLOBAL | RTLD_NOW); - if (NULL == so_handle) { - std::cerr << dlerror() << std::endl; - throw std::runtime_error("Can't load library"); + std::cerr << dlerror() << std::endl; + throw std::runtime_error("Can't load library"); -- -2.33.0 +2.34.1 diff --git a/recipes-multimedia/onevpl/onevpl/0001-sample_decode-Add-VDSFC-CSC-for-AVC-HEVC.patch b/recipes-multimedia/onevpl/onevpl/0001-sample_decode-Add-VDSFC-CSC-for-AVC-HEVC.patch deleted file mode 100644 index db8baa3e..00000000 --- a/recipes-multimedia/onevpl/onevpl/0001-sample_decode-Add-VDSFC-CSC-for-AVC-HEVC.patch +++ /dev/null @@ -1,132 +0,0 @@ -From f8d87fc857d5bfd69247c985ed82ba88e167ef30 Mon Sep 17 00:00:00 2001 -From: "Yew, Chang Ching" <[email protected]> -Date: Fri, 9 Jul 2021 13:59:33 +0000 -Subject: [PATCH] sample_decode: Add VDSFC CSC for AVC/HEVC - -Upstream-Status: Submitted -innersource PR #289 - -Signed-off-by: Yew, Chang Ching <[email protected]> ---- - .../sample_decode/src/pipeline_decode.cpp | 84 +++++++++++++++++-- - 1 file changed, 77 insertions(+), 7 deletions(-) - -diff --git a/tools/legacy/sample_decode/src/pipeline_decode.cpp b/tools/legacy/sample_decode/src/pipeline_decode.cpp -index 4dc811c5..d817ff2a 100644 ---- a/tools/legacy/sample_decode/src/pipeline_decode.cpp -+++ b/tools/legacy/sample_decode/src/pipeline_decode.cpp -@@ -765,6 +765,14 @@ bool CDecodingPipeline::IsVppRequired(sInputParams* pParams) { - if (pParams->eDeinterlace) { - bVppIsUsed = true; - } -+ -+ if ((MODE_DECODER_POSTPROC_AUTO == pParams->nDecoderPostProcessing) || -+ (MODE_DECODER_POSTPROC_FORCE == pParams->nDecoderPostProcessing)) { -+ /* Decoder will make decision about internal post-processing usage slightly later */ -+ if ((pParams->videoType == MFX_CODEC_AVC) || (pParams->videoType == MFX_CODEC_HEVC)) -+ bVppIsUsed = false; -+ } -+ - return bVppIsUsed; - } - -@@ -1014,6 +1022,8 @@ mfxStatus CDecodingPipeline::InitMfxParams(sInputParams* pParams) { - if (!m_bVppIsUsed) { - if ((m_mfxVideoParams.mfx.FrameInfo.CropW != pParams->Width && pParams->Width) || - (m_mfxVideoParams.mfx.FrameInfo.CropH != pParams->Height && pParams->Height) || -+ (pParams->nDecoderPostProcessing && pParams->videoType == MFX_CODEC_AVC) || -+ (pParams->nDecoderPostProcessing && pParams->videoType == MFX_CODEC_HEVC) || - (pParams->nDecoderPostProcessing && pParams->videoType == MFX_CODEC_JPEG && - pParams->fourcc == MFX_FOURCC_RGB4 && - // No need to use decoder's post processing for decoding of JPEG with RGB 4:4:4 -@@ -1027,7 +1037,10 @@ mfxStatus CDecodingPipeline::InitMfxParams(sInputParams* pParams) { - if (((MODE_DECODER_POSTPROC_AUTO == pParams->nDecoderPostProcessing) || - (MODE_DECODER_POSTPROC_FORCE == pParams->nDecoderPostProcessing)) && - (MFX_CODEC_AVC == m_mfxVideoParams.mfx.CodecId || -- MFX_CODEC_JPEG == m_mfxVideoParams.mfx.CodecId) && /* Only for AVC and JPEG */ -+ MFX_CODEC_JPEG == m_mfxVideoParams.mfx.CodecId || -+ MFX_CODEC_HEVC == m_mfxVideoParams.mfx.CodecId || -+ MFX_CODEC_VP9 == m_mfxVideoParams.mfx.CodecId || -+ MFX_CODEC_AV1 == m_mfxVideoParams.mfx.CodecId) && - (MFX_PICSTRUCT_PROGRESSIVE == - m_mfxVideoParams.mfx.FrameInfo.PicStruct)) /* ...And only for progressive!*/ - { /* it is possible to use decoder's post-processing */ -@@ -1050,12 +1063,69 @@ mfxStatus CDecodingPipeline::InitMfxParams(sInputParams* pParams) { - - decPostProcessing->Out.FourCC = m_mfxVideoParams.mfx.FrameInfo.FourCC; - decPostProcessing->Out.ChromaFormat = m_mfxVideoParams.mfx.FrameInfo.ChromaFormat; -- decPostProcessing->Out.Width = MSDK_ALIGN16(pParams->Width); -- decPostProcessing->Out.Height = MSDK_ALIGN16(pParams->Height); -- decPostProcessing->Out.CropX = 0; -- decPostProcessing->Out.CropY = 0; -- decPostProcessing->Out.CropW = pParams->Width; -- decPostProcessing->Out.CropH = pParams->Height; -+ -+ if (pParams->videoType == MFX_CODEC_AVC || pParams->videoType == MFX_CODEC_HEVC) { -+ switch (pParams->fourcc) { -+ case MFX_FOURCC_RGB4: -+ decPostProcessing->Out.FourCC = MFX_FOURCC_RGB4; -+ decPostProcessing->Out.ChromaFormat = MFX_CHROMAFORMAT_YUV444; -+ break; -+ -+ case MFX_FOURCC_NV12: -+ decPostProcessing->Out.FourCC = MFX_FOURCC_NV12; -+ decPostProcessing->Out.ChromaFormat = MFX_CHROMAFORMAT_YUV420; -+ break; -+ -+ case MFX_FOURCC_P010: -+ decPostProcessing->Out.FourCC = MFX_FOURCC_P010; -+ decPostProcessing->Out.ChromaFormat = MFX_CHROMAFORMAT_YUV420; -+ break; -+ -+ case MFX_FOURCC_P016: -+ decPostProcessing->Out.FourCC = MFX_FOURCC_P016; -+ decPostProcessing->Out.ChromaFormat = MFX_CHROMAFORMAT_YUV420; -+ break; -+ -+ case MFX_FOURCC_YUY2: -+ decPostProcessing->Out.FourCC = MFX_FOURCC_YUY2; -+ decPostProcessing->Out.ChromaFormat = MFX_CHROMAFORMAT_YUV422; -+ break; -+ -+ case MFX_FOURCC_Y210: -+ decPostProcessing->Out.FourCC = MFX_FOURCC_Y210; -+ decPostProcessing->Out.ChromaFormat = MFX_CHROMAFORMAT_YUV422; -+ break; -+ -+ case MFX_FOURCC_Y216: -+ decPostProcessing->Out.FourCC = MFX_FOURCC_Y216; -+ decPostProcessing->Out.ChromaFormat = MFX_CHROMAFORMAT_YUV422; -+ break; -+ -+ case MFX_FOURCC_AYUV: -+ decPostProcessing->Out.FourCC = MFX_FOURCC_AYUV; -+ decPostProcessing->Out.ChromaFormat = MFX_CHROMAFORMAT_YUV444; -+ break; -+ -+ case MFX_FOURCC_Y410: -+ decPostProcessing->Out.FourCC = MFX_FOURCC_Y410; -+ decPostProcessing->Out.ChromaFormat = MFX_CHROMAFORMAT_YUV444; -+ break; -+ -+ case MFX_FOURCC_Y416: -+ decPostProcessing->Out.FourCC = MFX_FOURCC_Y416; -+ decPostProcessing->Out.ChromaFormat = MFX_CHROMAFORMAT_YUV444; -+ break; -+ -+ default: -+ break; -+ } -+ } -+ decPostProcessing->Out.Width = MSDK_ALIGN16(pParams->Width); -+ decPostProcessing->Out.Height = MSDK_ALIGN16(pParams->Height); -+ decPostProcessing->Out.CropX = 0; -+ decPostProcessing->Out.CropY = 0; -+ decPostProcessing->Out.CropW = pParams->Width; -+ decPostProcessing->Out.CropH = pParams->Height; - - msdk_printf(MSDK_STRING("Decoder's post-processing is used for resizing\n")); - } --- -2.33.1 - diff --git a/recipes-multimedia/onevpl/onevpl/0001-samples-Addin-wayland-scanner-auto-generate-on-cmake.patch b/recipes-multimedia/onevpl/onevpl/0001-samples-Addin-wayland-scanner-auto-generate-on-cmake.patch index 6fab79e5..8a2b90f9 100644 --- a/recipes-multimedia/onevpl/onevpl/0001-samples-Addin-wayland-scanner-auto-generate-on-cmake.patch +++ b/recipes-multimedia/onevpl/onevpl/0001-samples-Addin-wayland-scanner-auto-generate-on-cmake.patch @@ -1,29 +1,26 @@ -From 6ef9dd02e297ae20da422f2f3f4f298061efd6e9 Mon Sep 17 00:00:00 2001 +From 7f428b8d0ca95b43b70663c27b525c5d6f7bf28d Mon Sep 17 00:00:00 2001 From: "Ung, Teng En" <[email protected]> -Date: Fri, 15 Oct 2021 11:55:13 +0000 +Date: Tue, 25 Jan 2022 16:36:19 +0800 Subject: [PATCH 1/3] samples: Addin wayland-scanner auto generate on cmake. -Upstream-Status: Submitted -innersource PR #269 - --- - tools/legacy/sample_common/CMakeLists.txt | 21 ++++++++++ - .../legacy/sample_misc/wayland/CMakeLists.txt | 39 +++++++++++++++++++ - 2 files changed, 60 insertions(+) + tools/legacy/sample_common/CMakeLists.txt | 22 +++++++++++++++++++ + tools/legacy/sample_misc/wayland/CMakeLists.txt | 29 +++++++++++++++++++++++++ + 2 files changed, 51 insertions(+) diff --git a/tools/legacy/sample_common/CMakeLists.txt b/tools/legacy/sample_common/CMakeLists.txt -index 0ff83aa4..0ed8b390 100644 +index 24245cd..030ffee 100644 --- a/tools/legacy/sample_common/CMakeLists.txt +++ b/tools/legacy/sample_common/CMakeLists.txt -@@ -92,6 +92,27 @@ if(UNIX) +@@ -103,6 +103,28 @@ if(CMAKE_SYSTEM_NAME MATCHES Linux) target_include_directories( - ${TARGET} + sample_common PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../sample_misc/wayland/include) + -+ pkg_check_modules(PKG_WAYLAND_SCANNER "wayland-scanner>=1.15") ++ find_program(WAYLAND_SCANNER_BIN "wayland-scanner") + pkg_check_modules(PKG_WAYLAND_PROTCOLS "wayland-protocols>=1.15") + -+ if(PKG_WAYLAND_SCANNER_FOUND AND PKG_WAYLAND_PROTCOLS_FOUND) ++ if(WAYLAND_SCANNER_BIN AND PKG_WAYLAND_PROTCOLS_FOUND) + pkg_get_variable(WAYLAND_PROTOCOLS_PATH wayland-protocols pkgdatadir) + if(WAYLAND_PROTOCOLS_PATH) + find_file( @@ -35,64 +32,55 @@ index 0ff83aa4..0ed8b390 100644 + + if(WAYLAND_LINUX_DMABUF_XML_PATH) + target_compile_definitions( -+ ${TARGET} PUBLIC -DWAYLAND_LINUX_DMABUF_SUPPORT) ++ sample_common PUBLIC WAYLAND_LINUX_DMABUF_SUPPORT) + target_include_directories( -+ ${TARGET} ++ sample_common + PUBLIC ${CMAKE_BINARY_DIR}/tools/legacy/sample_misc/wayland) + endif() ++ else() message( WARNING diff --git a/tools/legacy/sample_misc/wayland/CMakeLists.txt b/tools/legacy/sample_misc/wayland/CMakeLists.txt -index 1fe98da4..01e6029b 100644 +index cf91987..a2dffbb 100644 --- a/tools/legacy/sample_misc/wayland/CMakeLists.txt +++ b/tools/legacy/sample_misc/wayland/CMakeLists.txt -@@ -29,6 +29,45 @@ target_sources( +@@ -20,6 +20,35 @@ target_sources( ${CMAKE_CURRENT_SOURCE_DIR}/src/listener_wayland.cpp ${CMAKE_CURRENT_SOURCE_DIR}/src/wayland-drm-protocol.c) -+if(PKG_WAYLAND_SCANNER_FOUND AND PKG_WAYLAND_PROTCOLS_FOUND AND WAYLAND_LINUX_DMABUF_XML_PATH) -+ pkg_get_variable(WAYLAND_SCANNER_BIN_PATH wayland-scanner bindir) -+ pkg_get_variable(WAYLAND_SCANNER_BIN wayland-scanner wayland_scanner) -+ -+ if(WAYLAND_SCANNER_BIN_PATH AND WAYLAND_SCANNER_BIN) -+ execute_process( -+ COMMAND "${WAYLAND_SCANNER_BIN_PATH}\/${WAYLAND_SCANNER_BIN}" -+ "client-header" "${WAYLAND_LINUX_DMABUF_XML_PATH}" -+ "tools/legacy/sample_misc/wayland/linux-dmabuf-unstable-v1.h" -+ WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" -+ RESULT_VARIABLE WAYLAND_SCANNER_RESULT) -+ if (WAYLAND_SCANNER_RESULT) -+ message(ERROR "Failed to generate linux-dmabuf-unstable-v1.h") -+ return() -+ endif() -+ -+ execute_process( -+ COMMAND "${WAYLAND_SCANNER_BIN_PATH}\/${WAYLAND_SCANNER_BIN}" -+ "private-code" "${WAYLAND_LINUX_DMABUF_XML_PATH}" -+ "tools/legacy/sample_misc/wayland/linux-dmabuf-unstable-v1.c" -+ WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" -+ RESULT_VARIABLE WAYLAND_SCANNER_RESULT) -+ if (WAYLAND_SCANNER_RESULT) -+ message(ERROR "Failed to generate linux-dmabuf-unstable-v1.c") -+ return() -+ endif() ++if(WAYLAND_SCANNER_BIN AND PKG_WAYLAND_PROTCOLS_FOUND AND WAYLAND_LINUX_DMABUF_XML_PATH) ++ execute_process( ++ COMMAND "${WAYLAND_SCANNER_BIN_PATH}\/${WAYLAND_SCANNER_BIN}" ++ "client-header" "${WAYLAND_LINUX_DMABUF_XML_PATH}" ++ "tools/legacy/sample_misc/wayland/linux-dmabuf-unstable-v1.h" ++ WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" ++ RESULT_VARIABLE WAYLAND_SCANNER_RESULT) ++ if (WAYLAND_SCANNER_RESULT) ++ message(FATAL_ERROR "Failed to generate linux-dmabuf-unstable-v1.h") ++ endif() + -+ include_directories( -+ ${CMAKE_BINARY_DIR}/tools/legacy/sample_misc/wayland) -+ add_definitions(-DWAYLAND_LINUX_DMABUF_SUPPORT) -+ target_sources( -+ ${TARGET} -+ PRIVATE ${CMAKE_BINARY_DIR}/tools/legacy/sample_misc/wayland/linux-dmabuf-unstable-v1.c) -+ else() -+ message(ERROR "Don't know how to execute wayland-scanner.") -+ return() ++ execute_process( ++ COMMAND "${WAYLAND_SCANNER_BIN_PATH}\/${WAYLAND_SCANNER_BIN}" ++ "private-code" "${WAYLAND_LINUX_DMABUF_XML_PATH}" ++ "tools/legacy/sample_misc/wayland/linux-dmabuf-unstable-v1.c" ++ WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" ++ RESULT_VARIABLE WAYLAND_SCANNER_RESULT) ++ if (WAYLAND_SCANNER_RESULT) ++ message(FATAL_ERROR "Failed to generate linux-dmabuf-unstable-v1.c") + endif() ++ ++ target_include_directories( ++ vpl_wayland PRIVATE ${CMAKE_BINARY_DIR}/tools/legacy/sample_misc/wayland) ++ target_sources( ++ vpl_wayland ++ PRIVATE ${CMAKE_BINARY_DIR}/tools/legacy/sample_misc/wayland/linux-dmabuf-unstable-v1.c) +endif() + - target_link_libraries(${TARGET} sample_common wayland-client va drm drm_intel) ++ + target_link_libraries(vpl_wayland PRIVATE sample_common wayland-client va drm + drm_intel) - install(TARGETS ${TARGET} LIBRARY DESTINATION ${_TOOLS_LIB_PATH}) -- -2.31.1 +2.7.4 diff --git a/recipes-multimedia/onevpl/onevpl/0001-samples-use-find_program-to-detect-wayland-scanner-i.patch b/recipes-multimedia/onevpl/onevpl/0001-samples-use-find_program-to-detect-wayland-scanner-i.patch deleted file mode 100644 index 6f1ad93e..00000000 --- a/recipes-multimedia/onevpl/onevpl/0001-samples-use-find_program-to-detect-wayland-scanner-i.patch +++ /dev/null @@ -1,108 +0,0 @@ -From c69500c88058358bdc6c0a036d90b000d63f2a41 Mon Sep 17 00:00:00 2001 -From: "Ung, Teng En" <[email protected]> -Date: Wed, 3 Nov 2021 14:23:15 +0000 -Subject: [PATCH 4/4] samples: use find_program to detect wayland-scanner in - cmake - -Upstream-Status: Submitted -innersource PR #269 - ---- - tools/legacy/sample_common/CMakeLists.txt | 4 +- - tools/legacy/sample_misc/wayland/CMakeLists.txt | 59 +++++++++++-------------- - 2 files changed, 28 insertions(+), 35 deletions(-) - -diff --git a/tools/legacy/sample_common/CMakeLists.txt b/tools/legacy/sample_common/CMakeLists.txt -index 0ed8b39..658d44d 100644 ---- a/tools/legacy/sample_common/CMakeLists.txt -+++ b/tools/legacy/sample_common/CMakeLists.txt -@@ -93,10 +93,10 @@ if(UNIX) - ${TARGET} - PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../sample_misc/wayland/include) - -- pkg_check_modules(PKG_WAYLAND_SCANNER "wayland-scanner>=1.15") -+ find_program(WAYLAND_SCANNER_BIN "wayland-scanner") - pkg_check_modules(PKG_WAYLAND_PROTCOLS "wayland-protocols>=1.15") - -- if(PKG_WAYLAND_SCANNER_FOUND AND PKG_WAYLAND_PROTCOLS_FOUND) -+ if(WAYLAND_SCANNER_BIN AND PKG_WAYLAND_PROTCOLS_FOUND) - pkg_get_variable(WAYLAND_PROTOCOLS_PATH wayland-protocols pkgdatadir) - if(WAYLAND_PROTOCOLS_PATH) - find_file( -diff --git a/tools/legacy/sample_misc/wayland/CMakeLists.txt b/tools/legacy/sample_misc/wayland/CMakeLists.txt -index 01e6029..7625bc5 100644 ---- a/tools/legacy/sample_misc/wayland/CMakeLists.txt -+++ b/tools/legacy/sample_misc/wayland/CMakeLists.txt -@@ -29,43 +29,36 @@ target_sources( - ${CMAKE_CURRENT_SOURCE_DIR}/src/listener_wayland.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/src/wayland-drm-protocol.c) - --if(PKG_WAYLAND_SCANNER_FOUND AND PKG_WAYLAND_PROTCOLS_FOUND AND WAYLAND_LINUX_DMABUF_XML_PATH) -- pkg_get_variable(WAYLAND_SCANNER_BIN_PATH wayland-scanner bindir) -- pkg_get_variable(WAYLAND_SCANNER_BIN wayland-scanner wayland_scanner) -+ if(WAYLAND_SCANNER_BIN AND PKG_WAYLAND_PROTCOLS_FOUND AND WAYLAND_LINUX_DMABUF_XML_PATH) - -- if(WAYLAND_SCANNER_BIN_PATH AND WAYLAND_SCANNER_BIN) -- execute_process( -- COMMAND "${WAYLAND_SCANNER_BIN_PATH}\/${WAYLAND_SCANNER_BIN}" -- "client-header" "${WAYLAND_LINUX_DMABUF_XML_PATH}" -- "tools/legacy/sample_misc/wayland/linux-dmabuf-unstable-v1.h" -- WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" -- RESULT_VARIABLE WAYLAND_SCANNER_RESULT) -- if (WAYLAND_SCANNER_RESULT) -- message(ERROR "Failed to generate linux-dmabuf-unstable-v1.h") -- return() -- endif() -- -- execute_process( -- COMMAND "${WAYLAND_SCANNER_BIN_PATH}\/${WAYLAND_SCANNER_BIN}" -- "private-code" "${WAYLAND_LINUX_DMABUF_XML_PATH}" -- "tools/legacy/sample_misc/wayland/linux-dmabuf-unstable-v1.c" -- WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" -- RESULT_VARIABLE WAYLAND_SCANNER_RESULT) -- if (WAYLAND_SCANNER_RESULT) -- message(ERROR "Failed to generate linux-dmabuf-unstable-v1.c") -- return() -- endif() -+ execute_process( -+ COMMAND "${WAYLAND_SCANNER_BIN}" -+ "client-header" "${WAYLAND_LINUX_DMABUF_XML_PATH}" -+ "tools/legacy/sample_misc/wayland/linux-dmabuf-unstable-v1.h" -+ WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" -+ RESULT_VARIABLE WAYLAND_SCANNER_RESULT) -+ if (WAYLAND_SCANNER_RESULT) -+ message(ERROR "Failed to generate linux-dmabuf-unstable-v1.h") -+ return() -+ endif() - -- include_directories( -- ${CMAKE_BINARY_DIR}/tools/legacy/sample_misc/wayland) -- add_definitions(-DWAYLAND_LINUX_DMABUF_SUPPORT) -- target_sources( -- ${TARGET} -- PRIVATE ${CMAKE_BINARY_DIR}/tools/legacy/sample_misc/wayland/linux-dmabuf-unstable-v1.c) -- else() -- message(ERROR "Don't know how to execute wayland-scanner.") -+ execute_process( -+ COMMAND "${WAYLAND_SCANNER_BIN}" -+ "private-code" "${WAYLAND_LINUX_DMABUF_XML_PATH}" -+ "tools/legacy/sample_misc/wayland/linux-dmabuf-unstable-v1.c" -+ WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" -+ RESULT_VARIABLE WAYLAND_SCANNER_RESULT) -+ if (WAYLAND_SCANNER_RESULT) -+ message(ERROR "Failed to generate linux-dmabuf-unstable-v1.c") - return() - endif() -+ -+ include_directories( -+ ${CMAKE_BINARY_DIR}/tools/legacy/sample_misc/wayland) -+ add_definitions(-DWAYLAND_LINUX_DMABUF_SUPPORT) -+ target_sources( -+ ${TARGET} -+ PRIVATE ${CMAKE_BINARY_DIR}/tools/legacy/sample_misc/wayland/linux-dmabuf-unstable-v1.c) - endif() - - target_link_libraries(${TARGET} sample_common wayland-client va drm drm_intel) --- -2.7.4 - diff --git a/recipes-multimedia/onevpl/onevpl/0001-sample_misc-Addin-basic-wayland-dmabuf-support.patch b/recipes-multimedia/onevpl/onevpl/0002-sample_misc-Addin-basic-wayland-dmabuf-support.patch similarity index 82% rename from recipes-multimedia/onevpl/onevpl/0001-sample_misc-Addin-basic-wayland-dmabuf-support.patch rename to recipes-multimedia/onevpl/onevpl/0002-sample_misc-Addin-basic-wayland-dmabuf-support.patch index 96110ef8..d4ef8cbe 100644 --- a/recipes-multimedia/onevpl/onevpl/0001-sample_misc-Addin-basic-wayland-dmabuf-support.patch +++ b/recipes-multimedia/onevpl/onevpl/0002-sample_misc-Addin-basic-wayland-dmabuf-support.patch @@ -1,21 +1,18 @@ -From 2e2bcb1817f2dc91adf85f5255a4792a6213a74e Mon Sep 17 00:00:00 2001 +From 047b7865a69e26c9091b22dceceae1b609a3efbc Mon Sep 17 00:00:00 2001 From: "Ung, Teng En" <[email protected]> Date: Fri, 8 Oct 2021 14:19:40 +0000 Subject: [PATCH 2/3] sample_misc: Addin basic wayland dmabuf support. -Upstream-Status: Submitted -innersource PR #269 - --- - .../sample_misc/wayland/include/class_wayland.h | 16 ++++++++++++++++ - .../sample_misc/wayland/src/class_wayland.cpp | 8 ++++++++ + tools/legacy/sample_misc/wayland/include/class_wayland.h | 16 ++++++++++++++++ + tools/legacy/sample_misc/wayland/src/class_wayland.cpp | 8 ++++++++ 2 files changed, 24 insertions(+) diff --git a/tools/legacy/sample_misc/wayland/include/class_wayland.h b/tools/legacy/sample_misc/wayland/include/class_wayland.h -index 564b9b8b..e5267ec2 100644 +index 29f724f..753b8b1 100644 --- a/tools/legacy/sample_misc/wayland/include/class_wayland.h +++ b/tools/legacy/sample_misc/wayland/include/class_wayland.h -@@ -32,6 +32,9 @@ extern "C" { +@@ -19,6 +19,9 @@ extern "C" { #include "sample_defs.h" #include "vpl/mfxstructures.h" #include "wayland-drm-client-protocol.h" @@ -25,7 +22,7 @@ index 564b9b8b..e5267ec2 100644 typedef struct buffer wld_buffer; -@@ -93,6 +96,11 @@ public: +@@ -80,6 +83,11 @@ public: struct wl_drm* GetDrm() { return m_drm; } @@ -37,7 +34,7 @@ index 564b9b8b..e5267ec2 100644 struct wl_shm* GetShm() { return m_shm; }; -@@ -120,6 +128,11 @@ public: +@@ -107,6 +115,11 @@ public: void SetDrm(struct wl_drm* drm) { m_drm = drm; } @@ -49,7 +46,7 @@ index 564b9b8b..e5267ec2 100644 void DrmHandleDevice(const char* device); void DrmHandleAuthenticated(); void RegistryGlobal(struct wl_registry* registry, -@@ -147,6 +160,9 @@ private: +@@ -134,6 +147,9 @@ private: struct wl_compositor* m_compositor; struct wl_shell* m_shell; struct wl_drm* m_drm; @@ -60,10 +57,10 @@ index 564b9b8b..e5267ec2 100644 struct wl_shm_pool* m_pool; struct wl_surface* m_surface; diff --git a/tools/legacy/sample_misc/wayland/src/class_wayland.cpp b/tools/legacy/sample_misc/wayland/src/class_wayland.cpp -index 65147973..dc2fc718 100644 +index c5e3359..7eac204 100644 --- a/tools/legacy/sample_misc/wayland/src/class_wayland.cpp +++ b/tools/legacy/sample_misc/wayland/src/class_wayland.cpp -@@ -50,6 +50,9 @@ Wayland::Wayland() +@@ -37,6 +37,9 @@ Wayland::Wayland() m_compositor(NULL), m_shell(NULL), m_drm(NULL), @@ -73,7 +70,7 @@ index 65147973..dc2fc718 100644 m_shm(NULL), m_pool(NULL), m_surface(NULL), -@@ -360,6 +363,11 @@ void Wayland::RegistryGlobal(struct wl_registry* registry, +@@ -347,6 +350,11 @@ void Wayland::RegistryGlobal(struct wl_registry* registry, m_drm = static_cast<wl_drm*>(wl_registry_bind(registry, name, &wl_drm_interface, 2)); wl_drm_add_listener(m_drm, &drm_listener, this); } @@ -86,5 +83,5 @@ index 65147973..dc2fc718 100644 void Wayland::DrmHandleDevice(const char* name) { -- -2.31.1 +2.7.4 diff --git a/recipes-multimedia/onevpl/onevpl/0001-sample_misc-use-wayland-dmabuf-to-render-nv12.patch b/recipes-multimedia/onevpl/onevpl/0003-sample_misc-use-wayland-dmabuf-to-render-nv12.patch similarity index 89% rename from recipes-multimedia/onevpl/onevpl/0001-sample_misc-use-wayland-dmabuf-to-render-nv12.patch rename to recipes-multimedia/onevpl/onevpl/0003-sample_misc-use-wayland-dmabuf-to-render-nv12.patch index d061e3ef..7bb783b1 100644 --- a/recipes-multimedia/onevpl/onevpl/0001-sample_misc-use-wayland-dmabuf-to-render-nv12.patch +++ b/recipes-multimedia/onevpl/onevpl/0003-sample_misc-use-wayland-dmabuf-to-render-nv12.patch @@ -1,20 +1,17 @@ -From 0091d3fea76e64ffbd537b2ae47b8912c89c09d7 Mon Sep 17 00:00:00 2001 +From e2b5041b272e0cb8b3c4c9d332b0bbc3dda05e69 Mon Sep 17 00:00:00 2001 From: "Ung, Teng En" <[email protected]> Date: Fri, 8 Oct 2021 14:38:45 +0000 Subject: [PATCH 3/3] sample_misc: use wayland dmabuf to render nv12 -Upstream-Status: Submitted -innersource PR #269 - --- - .../sample_misc/wayland/src/class_wayland.cpp | 60 +++++++++++++++---- + .../sample_misc/wayland/src/class_wayland.cpp | 60 +++++++++++++++++----- 1 file changed, 47 insertions(+), 13 deletions(-) diff --git a/tools/legacy/sample_misc/wayland/src/class_wayland.cpp b/tools/legacy/sample_misc/wayland/src/class_wayland.cpp -index dc2fc718..d2e7e4e2 100644 +index 7eac204..68fcea4 100644 --- a/tools/legacy/sample_misc/wayland/src/class_wayland.cpp +++ b/tools/legacy/sample_misc/wayland/src/class_wayland.cpp -@@ -26,6 +26,7 @@ or https://software.intel.com/en-us/media-client-solutions-support. +@@ -13,6 +13,7 @@ #include <iostream> extern "C" { #include <drm.h> @@ -22,7 +19,7 @@ index dc2fc718..d2e7e4e2 100644 #include <intel_bufmgr.h> #include <xf86drm.h> } -@@ -305,20 +306,53 @@ struct wl_buffer* Wayland::CreatePrimeBuffer(uint32_t name, +@@ -292,20 +293,53 @@ struct wl_buffer* Wayland::CreatePrimeBuffer(uint32_t name, int32_t offsets[3], int32_t pitches[3]) { struct wl_buffer* buffer = NULL; @@ -90,5 +87,5 @@ index dc2fc718..d2e7e4e2 100644 } -- -2.31.1 +2.7.4 diff --git a/recipes-multimedia/onevpl/onevpl_2021.6.0.bb b/recipes-multimedia/onevpl/onevpl_2022.0.3.bb similarity index 72% rename from recipes-multimedia/onevpl/onevpl_2021.6.0.bb rename to recipes-multimedia/onevpl/onevpl_2022.0.3.bb index e586b54e..1de48ee6 100644 --- a/recipes-multimedia/onevpl/onevpl_2021.6.0.bb +++ b/recipes-multimedia/onevpl/onevpl_2022.0.3.bb @@ -6,18 +6,15 @@ that works across a wide range of accelerators." HOMEPAGE = "https://github.com/oneapi-src/oneVPL" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://LICENSE;md5=c18ea6bb4786a26bf4eee88a7424a408 \ - file://third-party-programs.txt;md5=67727fd253b1b4574cd9eea78a2b0620" + file://third-party-programs.txt;md5=43ed11c52f754dafaa62e2cfdd2bac13" SRC_URI = "git://github.com/oneapi-src/oneVPL.git;protocol=https;branch=master \ file://0001-Fix-basename-build-issue-with-musl_libc.patch \ - file://0001-Extends-errorTypes-to-support-JPEG-errors.patch \ file://0001-samples-Addin-wayland-scanner-auto-generate-on-cmake.patch \ - file://0001-sample_misc-Addin-basic-wayland-dmabuf-support.patch \ - file://0001-sample_misc-use-wayland-dmabuf-to-render-nv12.patch \ - file://0001-samples-use-find_program-to-detect-wayland-scanner-i.patch \ - file://0001-sample_decode-Add-VDSFC-CSC-for-AVC-HEVC.patch \ + file://0002-sample_misc-Addin-basic-wayland-dmabuf-support.patch \ + file://0003-sample_misc-use-wayland-dmabuf-to-render-nv12.patch \ " -SRCREV = "cdf7444dc971544d148c51e0d93a2df1bb55dda7" +SRCREV = "efc259f8b7ee5c334bca1a904a503186038bbbdd" S = "${WORKDIR}/git" inherit cmake -- 2.34.1
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#7424): https://lists.yoctoproject.org/g/meta-intel/message/7424 Mute This Topic: https://lists.yoctoproject.org/mt/89062348/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/meta-intel/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
