1if (NOT DE_DEFS) 2 message(FATAL_ERROR "Include Defs.cmake") 3endif () 4 5if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/vk_video_decoder/CMakeLists.txt") 6 set(DEFAULT_NV_VIDEO_SAMPLES_SRC_PATH ${CMAKE_CURRENT_SOURCE_DIR}/src) 7else () 8 message(FATAL_ERROR "nvidia-video-samples source code not found") 9endif () 10 11set(NV_VIDEO_SAMPLES_SRC_PATH ${DEFAULT_NV_VIDEO_SAMPLES_SRC_PATH} CACHE STRING "Path to nvidia-video-samples source tree") 12 13if (IS_ABSOLUTE ${NV_VIDEO_SAMPLES_SRC_PATH}) 14 set(NV_VIDEO_SAMPLES_ABS_PATH ${NV_VIDEO_SAMPLES_SRC_PATH}) 15else () 16 set(NV_VIDEO_SAMPLES_ABS_PATH "${CMAKE_SOURCE_DIR}/${NV_VIDEO_SAMPLES_SRC_PATH}") 17endif () 18 19if (EXISTS "${NV_VIDEO_SAMPLES_ABS_PATH}/vk_video_decoder/libs/NvVideoParser/CMakeLists.txt") 20 message(STATUS "nvidia-video-samples parser found") 21 set(NV_VIDEO_PARSER_SOURCE "${NV_VIDEO_SAMPLES_ABS_PATH}/vk_video_decoder/libs/NvVideoParser") 22 23 set (PARSER_SOURCES 24 ${NV_VIDEO_PARSER_SOURCE}/src/VulkanH264Parser.cpp 25 ${NV_VIDEO_PARSER_SOURCE}/src/VulkanH265Parser.cpp 26 ${NV_VIDEO_PARSER_SOURCE}/src/VulkanVideoDecoder.cpp 27 ) 28 29 set(CMAKE_C_FLAGS ${DE_3RD_PARTY_C_FLAGS}) 30 set(CMAKE_CXX_FLAGS ${DE_3RD_PARTY_CXX_FLAGS}) 31 32 set(PARSER_INCLUDE_DIRS 33 "${NV_VIDEO_SAMPLES_ABS_PATH}/common/include" # RefCountBase and friends 34 "${NV_VIDEO_SAMPLES_ABS_PATH}/vk_video_decoder/include" 35 "${NV_VIDEO_SAMPLES_ABS_PATH}/vk_video_decoder/include/NvVideoParser" 36 "${NV_VIDEO_SAMPLES_ABS_PATH}/vk_video_decoder/include/vkvideo_parser" 37 "${NV_VIDEO_SAMPLES_ABS_PATH}/vk_video_decoder/libs" # ReferenceCountedPool, drop this if possbile, could do without the complexity 38 "${NV_VIDEO_SAMPLES_ABS_PATH}/vk_video_decoder/libs/NvVideoParser/include" 39 ) 40 41 set(NV_VIDEO_PARSER_INCLUDE_DIRS ${PARSER_INCLUDE_DIRS} PARENT_SCOPE) 42 set(NV_VIDEO_PARSER_SOURCES ${PARSER_SOURCES} PARENT_SCOPE) 43else () 44 message(FATAL_ERROR "nvidia-video-samples not found") 45endif () 46