Browse Source

cmake: Update FFmpeg find package to use explicit version

PatTheMav 2 years ago
parent
commit
9ae47a7937
2 changed files with 31 additions and 9 deletions
  1. 15 1
      libobs/CMakeLists.txt
  2. 16 8
      plugins/obs-ffmpeg/CMakeLists.txt

+ 15 - 1
libobs/CMakeLists.txt

@@ -14,7 +14,21 @@ add_library(libobs SHARED)
 add_library(OBS::libobs ALIAS libobs)
 
 find_package(Threads REQUIRED)
-find_package(FFmpeg REQUIRED avformat avutil swscale swresample OPTIONAL_COMPONENTS avcodec)
+# cmake-format: off
+if(OS_WINDOWS OR OS_MACOS)
+  set(ffmpeg_version 6)
+else()
+  set(ffmpeg_version 5.1)
+endif()
+
+find_package(
+  FFmpeg ${ffmpeg_version}
+  REQUIRED avformat
+           avutil
+           swscale
+           swresample
+  OPTIONAL_COMPONENTS avcodec)
+# cmake-format: on
 find_package(ZLIB REQUIRED)
 
 if(ENABLE_UI)

+ 16 - 8
plugins/obs-ffmpeg/CMakeLists.txt

@@ -5,15 +5,23 @@ legacy_check()
 option(ENABLE_FFMPEG_LOGGING "Enables obs-ffmpeg logging" OFF)
 option(ENABLE_NEW_MPEGTS_OUTPUT "Use native SRT/RIST mpegts output" ON)
 
+# cmake-format: off
+if(OS_WINDOWS OR OS_MACOS)
+  set(ffmpeg_version 6)
+else()
+  set(ffmpeg_version 5.1)
+endif()
+
 find_package(
-  FFmpeg REQUIRED
-  COMPONENTS avcodec
-             avfilter
-             avdevice
-             avutil
-             swscale
-             avformat
-             swresample)
+  FFmpeg ${ffmpeg_version}
+  REQUIRED avcodec
+           avfilter
+           avdevice
+           avutil
+           swscale
+           avformat
+           swresample)
+# cmake-format: on
 
 if(NOT TARGET OBS::media-playback)
   add_subdirectory("${CMAKE_SOURCE_DIR}/deps/media-playback" "${CMAKE_BINARY_DIR}/deps/media-playback")