summaryrefslogtreecommitdiffstats
path: root/cmake/modules/FindFFMPEG.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/modules/FindFFMPEG.cmake')
-rw-r--r--cmake/modules/FindFFMPEG.cmake29
1 files changed, 20 insertions, 9 deletions
diff --git a/cmake/modules/FindFFMPEG.cmake b/cmake/modules/FindFFMPEG.cmake
index ef74671..81d2697 100644
--- a/cmake/modules/FindFFMPEG.cmake
+++ b/cmake/modules/FindFFMPEG.cmake
@@ -33,14 +33,14 @@
33# 33#
34 34
35# required ffmpeg library versions 35# required ffmpeg library versions
36set(REQUIRED_FFMPEG_VERSION 4.0) 36set(REQUIRED_FFMPEG_VERSION 4.3)
37set(_avcodec_ver ">=58.18.100") 37set(_avcodec_ver ">=58.91.100")
38set(_avfilter_ver ">=7.16.100") 38set(_avfilter_ver ">=7.85.100")
39set(_avformat_ver ">=58.12.100") 39set(_avformat_ver ">=58.45.100")
40set(_avutil_ver ">=56.14.100") 40set(_avutil_ver ">=56.51.100")
41set(_swscale_ver ">=5.1.100") 41set(_swscale_ver ">=5.7.100")
42set(_swresample_ver ">=3.1.100") 42set(_swresample_ver ">=3.7.100")
43set(_postproc_ver ">=55.1.100") 43set(_postproc_ver ">=55.7.100")
44 44
45 45
46# Allows building with external ffmpeg not found in system paths, 46# Allows building with external ffmpeg not found in system paths,
@@ -229,10 +229,16 @@ if(NOT FFMPEG_FOUND)
229 message(STATUS "FFMPEG_URL: ${FFMPEG_URL}") 229 message(STATUS "FFMPEG_URL: ${FFMPEG_URL}")
230 endif() 230 endif()
231 231
232 if (NOT DAV1D_FOUND)
233 message(STATUS "dav1d not found, internal ffmpeg build will be missing AV1 support!")
234 endif()
235
232 set(FFMPEG_OPTIONS -DENABLE_CCACHE=${ENABLE_CCACHE} 236 set(FFMPEG_OPTIONS -DENABLE_CCACHE=${ENABLE_CCACHE}
233 -DCCACHE_PROGRAM=${CCACHE_PROGRAM} 237 -DCCACHE_PROGRAM=${CCACHE_PROGRAM}
234 -DENABLE_VAAPI=${ENABLE_VAAPI} 238 -DENABLE_VAAPI=${ENABLE_VAAPI}
235 -DENABLE_VDPAU=${ENABLE_VDPAU}) 239 -DENABLE_VDPAU=${ENABLE_VDPAU}
240 -DENABLE_DAV1D=${DAV1D_FOUND}
241 -DEXTRA_FLAGS=${FFMPEG_EXTRA_FLAGS})
236 242
237 if(KODI_DEPENDSBUILD) 243 if(KODI_DEPENDSBUILD)
238 set(CROSS_ARGS -DDEPENDS_PATH=${DEPENDS_PATH} 244 set(CROSS_ARGS -DDEPENDS_PATH=${DEPENDS_PATH}
@@ -265,6 +271,7 @@ if(NOT FFMPEG_FOUND)
265 -DCMAKE_EXE_LINKER_FLAGS=${LINKER_FLAGS} 271 -DCMAKE_EXE_LINKER_FLAGS=${LINKER_FLAGS}
266 ${CROSS_ARGS} 272 ${CROSS_ARGS}
267 ${FFMPEG_OPTIONS} 273 ${FFMPEG_OPTIONS}
274 -DPKG_CONFIG_PATH=${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/lib/pkgconfig
268 PATCH_COMMAND ${CMAKE_COMMAND} -E copy 275 PATCH_COMMAND ${CMAKE_COMMAND} -E copy
269 ${CMAKE_SOURCE_DIR}/tools/depends/target/ffmpeg/CMakeLists.txt 276 ${CMAKE_SOURCE_DIR}/tools/depends/target/ffmpeg/CMakeLists.txt
270 <SOURCE_DIR> && 277 <SOURCE_DIR> &&
@@ -272,6 +279,10 @@ if(NOT FFMPEG_FOUND)
272 ${CMAKE_SOURCE_DIR}/tools/depends/target/ffmpeg/FindGnuTls.cmake 279 ${CMAKE_SOURCE_DIR}/tools/depends/target/ffmpeg/FindGnuTls.cmake
273 <SOURCE_DIR>) 280 <SOURCE_DIR>)
274 281
282 if (ENABLE_INTERNAL_DAV1D)
283 add_dependencies(ffmpeg dav1d)
284 endif()
285
275 find_program(BASH_COMMAND bash) 286 find_program(BASH_COMMAND bash)
276 if(NOT BASH_COMMAND) 287 if(NOT BASH_COMMAND)
277 message(FATAL_ERROR "Internal FFmpeg requires bash.") 288 message(FATAL_ERROR "Internal FFmpeg requires bash.")