TheRock compatibility - support (#681)

* Add support for TheRock compatibility

* Update the version

* code clean up

* clean up

[ROCm/rocdecode commit: e2789088ee]
Bu işleme şunda yer alıyor:
Aryan Salmanpour
2025-12-08 14:02:55 -08:00
işlemeyi yapan: GitHub
ebeveyn 09c8afe519
işleme a4f40f4b57
14 değiştirilmiş dosya ile 69 ekleme ve 1 silme
+6 -1
Dosyayı Görüntüle
@@ -40,7 +40,7 @@ if (NOT DEFINED CMAKE_CXX_COMPILER)
endif()
# rocdecode Version
set(VERSION "1.6.0")
set(VERSION "1.7.0")
# Set Project Version and Language
project(rocdecode VERSION ${VERSION} LANGUAGES CXX)
@@ -106,6 +106,7 @@ option(ROCDECODE_ENABLE_ROCPROFILER_REGISTER "Enable rocprofiler-register suppor
# Add an option for enabling FFMPEG avcodec host-based decoder
option(ROCDECODE_ENABLE_HOST_DECODER "Enable rocdecode-host-based decoder support" ON)
set (HIP_PLATFORM amd CACHE STRING "HIP platform")
find_package(HIP QUIET)
find_package(Libva QUIET)
find_package(Libdrm_amdgpu QUIET)
@@ -188,6 +189,10 @@ if(HIP_FOUND AND Libva_FOUND AND Libdrm_amdgpu_FOUND)
set_target_properties(${PROJECT_NAME} PROPERTIES LINKER_LANGUAGE CXX)
set_target_properties(${PROJECT_NAME} PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_VERSION_MAJOR})
if(USING_THE_ROCK)
set_target_properties(${PROJECT_NAME} PROPERTIES INSTALL_RPATH "$ORIGIN;$ORIGIN/rocm_sysdeps/lib" BUILD_WITH_INSTALL_RPATH TRUE)
endif()
# rocprofiler
if (rocprofiler-register_FOUND)
string(REPLACE "." ";" VERSION_LIST ${VERSION})
+1
Dosyayı Görüntüle
@@ -61,6 +61,7 @@ else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -DNDEBUG -fPIC -Wall")
endif()
set (HIP_PLATFORM amd CACHE STRING "HIP platform")
find_package(HIP QUIET)
find_package(FFmpeg QUIET)
find_package(rocdecode QUIET)
+1
Dosyayı Görüntüle
@@ -61,6 +61,7 @@ else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -DNDEBUG -fPIC")
endif()
set (HIP_PLATFORM amd CACHE STRING "HIP platform")
find_package(HIP QUIET)
find_package(rocdecode QUIET)
find_package(rocdecode-host 1.0.0 QUIET)
+1
Dosyayı Görüntüle
@@ -61,6 +61,7 @@ else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -DNDEBUG -fPIC")
endif()
set (HIP_PLATFORM amd CACHE STRING "HIP platform")
find_package(HIP QUIET)
find_package(rocdecode QUIET)
find_package(rocprofiler-register QUIET)
+1
Dosyayı Görüntüle
@@ -62,6 +62,7 @@ else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -DNDEBUG -fPIC")
endif()
set (HIP_PLATFORM amd CACHE STRING "HIP platform")
find_package(HIP QUIET)
find_package(rocdecode QUIET)
find_package(rocprofiler-register QUIET)
+1
Dosyayı Görüntüle
@@ -61,6 +61,7 @@ else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -DNDEBUG -fPIC")
endif()
set (HIP_PLATFORM amd CACHE STRING "HIP platform")
find_package(HIP QUIET)
find_package(rocdecode QUIET)
find_package(rocprofiler-register QUIET)
+1
Dosyayı Görüntüle
@@ -61,6 +61,7 @@ else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -DNDEBUG -fPIC")
endif()
set (HIP_PLATFORM amd CACHE STRING "HIP platform")
find_package(HIP QUIET)
find_package(rocdecode QUIET)
find_package(rocdecode-host 1.0.0 QUIET)
+1
Dosyayı Görüntüle
@@ -61,6 +61,7 @@ else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -DNDEBUG -fPIC")
endif()
set (HIP_PLATFORM amd CACHE STRING "HIP platform")
find_package(HIP QUIET)
find_package(rocdecode QUIET)
find_package(rocdecode-host 1.0.0 QUIET)
+1
Dosyayı Görüntüle
@@ -97,6 +97,7 @@ else()
endif()
message("-- ${White}${PROJECT_NAME} -- AMD GPU_TARGETS: ${GPU_TARGETS}${ColourReset}")
set(HIP_PLATFORM amd CACHE STRING "HIP platform")
find_package(HIP QUIET)
find_package(rocdecode QUIET)
find_package(rocprofiler-register QUIET)
+1
Dosyayı Görüntüle
@@ -61,6 +61,7 @@ else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -DNDEBUG -fPIC")
endif()
set (HIP_PLATFORM amd CACHE STRING "HIP platform")
find_package(HIP QUIET)
find_package(rocdecode QUIET)
find_package(rocprofiler-register QUIET)
+1
Dosyayı Görüntüle
@@ -61,6 +61,7 @@ else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -DNDEBUG -fPIC")
endif()
set (HIP_PLATFORM amd CACHE STRING "HIP platform")
find_package(HIP QUIET)
find_package(rocdecode QUIET)
find_package(rocprofiler-register QUIET)
+1
Dosyayı Görüntüle
@@ -49,6 +49,7 @@ project(rocdecode-host VERSION ${VERSION} LANGUAGES CXX)
list(APPEND CMAKE_PREFIX_PATH ${ROCM_PATH}/lib/cmake)
list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/../../cmake)
set (HIP_PLATFORM amd CACHE STRING "HIP platform")
find_package(HIP QUIET)
find_package(Threads QUIET)
find_package(rocprofiler-register QUIET)
+51
Dosyayı Görüntüle
@@ -93,6 +93,12 @@ else()
endif(BUILD_FROM_SOURCE)
find_package(FFmpeg QUIET)
# Check if lib/rocm_sysdeps/lib exists in the ROCm path which indicates ROCm installation via TheRock
set(USING_THE_ROCK OFF)
if(EXISTS "${ROCM_PATH}/lib/rocm_sysdeps/lib")
set(USING_THE_ROCK ON)
endif()
# 1 - videoDecodeRaw HEVC
add_test(
NAME
@@ -105,6 +111,9 @@ add_test(
--test-command "videodecoderaw"
-i ${ROCM_PATH}/share/rocdecode/video/AMD_driving_virtual_20-H265.265
)
if(USING_THE_ROCK)
set_property(TEST video_decodeRaw-HEVC PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
# 2 - videoDecodeRaw AVC
add_test(
@@ -118,6 +127,9 @@ add_test(
--test-command "videodecoderaw"
-i ${ROCM_PATH}/share/rocdecode/video/AMD_driving_virtual_20-H264.264
)
if(USING_THE_ROCK)
set_property(TEST video_decodeRaw-AVC PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
# 3 - videoDecodeRaw AV1
add_test(
@@ -131,6 +143,9 @@ add_test(
--test-command "videodecoderaw"
-i ${ROCM_PATH}/share/rocdecode/video/AMD_driving_virtual_20-AV1.ivf
)
if(USING_THE_ROCK)
set_property(TEST video_decodeRaw-AV1 PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
# 4 - videoDecodeRaw VP9
add_test(
@@ -144,6 +159,9 @@ add_test(
--test-command "videodecoderaw"
-i ${ROCM_PATH}/share/rocdecode/video/AMD_driving_virtual_20-VP9.ivf
)
if(USING_THE_ROCK)
set_property(TEST video_decodeRaw-VP9 PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
# 5 - rocDecodeNegativeApiTests
add_test(
@@ -156,6 +174,9 @@ add_test(
--build-generator "${CMAKE_GENERATOR}"
--test-command "rocdecodenegativetest"
)
if(USING_THE_ROCK)
set_property(TEST rocDecode_Negative_API_Tests PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
if(FFMPEG_FOUND)
message("-- ${Green}${PROJECT_NAME} FFmpeg found - rocdecode tests requiring FFmpeg added")
@@ -171,6 +192,9 @@ if(FFMPEG_FOUND)
--test-command "videodecode"
-i ${ROCM_PATH}/share/rocdecode/video/AMD_driving_virtual_20-H265.mp4
)
if(USING_THE_ROCK)
set_property(TEST video_decode-HEVC PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
# 7 - videoDecode AVC
add_test(
@@ -184,6 +208,9 @@ if(FFMPEG_FOUND)
--test-command "videodecode"
-i ${ROCM_PATH}/share/rocdecode/video/AMD_driving_virtual_20-H264.mp4
)
if(USING_THE_ROCK)
set_property(TEST video_decode-AVC PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
# 8 - videoDecode AV1
add_test(
@@ -197,6 +224,9 @@ if(FFMPEG_FOUND)
--test-command "videodecode"
-i ${ROCM_PATH}/share/rocdecode/video/AMD_driving_virtual_20-AV1.mp4
)
if(USING_THE_ROCK)
set_property(TEST video_decode-AV1 PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
# 9 - videoDecode VP9
add_test(
@@ -210,6 +240,9 @@ if(FFMPEG_FOUND)
--test-command "videodecode"
-i ${ROCM_PATH}/share/rocdecode/video/AMD_driving_virtual_20-VP9.ivf
)
if(USING_THE_ROCK)
set_property(TEST video_decode-VP9 PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
# 10 - videoDecodePerf
add_test(
@@ -223,6 +256,9 @@ if(FFMPEG_FOUND)
--test-command "videodecodeperf"
-i ${ROCM_PATH}/share/rocdecode/video/AMD_driving_virtual_20-H265.mp4
)
if(USING_THE_ROCK)
set_property(TEST video_decodePerf-HEVC PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
# 11 - videoDecodeBatch
add_test(
@@ -236,6 +272,9 @@ if(FFMPEG_FOUND)
--test-command "videodecodebatch"
-i ${ROCM_PATH}/share/rocdecode/video/ -t 2
)
if(USING_THE_ROCK)
set_property(TEST video_decodeBatch PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
# 12 - videoDecodeRGB
add_test(
@@ -249,6 +288,9 @@ if(FFMPEG_FOUND)
--test-command "videodecodergb"
-i ${ROCM_PATH}/share/rocdecode/video/AMD_driving_virtual_20-H265.mp4 -of rgb
)
if(USING_THE_ROCK)
set_property(TEST video_decodeRGB-HEVC PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
# 13 - videoDecodeMem
add_test(
@@ -262,6 +304,9 @@ if(FFMPEG_FOUND)
--test-command "videodecodemem"
-i ${ROCM_PATH}/share/rocdecode/video/AMD_driving_virtual_20-H265.mp4
)
if(USING_THE_ROCK)
set_property(TEST video_decodeMem-HEVC PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
# 14 - videoDecodeRGBResize
add_test(
@@ -275,6 +320,9 @@ if(FFMPEG_FOUND)
--test-command "videodecodergb"
-i "${ROCM_PATH}/share/rocdecode/video/AMD_driving_virtual_20-H265.mp4" -resize 640x360 -of rgb
)
if(USING_THE_ROCK)
set_property(TEST video_decodeRGB-Resize PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
if(rocdecode-host_FOUND)
# 15 - videoDecode Host backend
@@ -290,6 +338,9 @@ if(FFMPEG_FOUND)
-i ${ROCM_PATH}/share/rocdecode/video/AMD_driving_virtual_20-H265.mp4
-backend 1
)
if(USING_THE_ROCK)
set_property(TEST video_decode-Host-Backend PROPERTY ENVIRONMENT "LIBVA_DRIVERS_PATH=${ROCM_PATH}/lib/rocm_sysdeps/lib")
endif()
else()
message("-- ${Yellow}${PROJECT_NAME} rocdecode-host NOT found. rocdecode tests requiring rocdecode-host excluded")
endif(rocdecode-host_FOUND)
+1
Dosyayı Görüntüle
@@ -61,6 +61,7 @@ else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -DNDEBUG -fPIC")
endif()
set (HIP_PLATFORM amd CACHE STRING "HIP platform")
find_package(HIP QUIET)
find_package(rocdecode QUIET)
find_package(rocprofiler-register QUIET)