1diff --git a/CMakeLists.txt b/CMakeLists.txt
2index 1842c67..8afd0e9 100644
3--- a/CMakeLists.txt
4+++ b/CMakeLists.txt
5@@ -280,6 +280,8 @@ else()
6 set(WAYLAND_FOUND OFF)
7 endif()
8
9+ find_package(FFMPEG REQUIRED)
10+
11 if(X11_FOUND)
12 add_compile_definitions(SUNSHINE_BUILD_X11)
13 include_directories(${X11_INCLUDE_DIR})
14@@ -451,51 +453,12 @@ set_source_files_properties(src/upnp.cpp PROPERTIES COMPILE_FLAGS -Wno-pedantic)
15 set_source_files_properties(third-party/nanors/rs.c
16 PROPERTIES COMPILE_FLAGS "-include deps/obl/autoshim.h -ftree-vectorize")
17
18-# Pre-compiled binaries
19-if(WIN32)
20- set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-windows-x86_64")
21- set(FFMPEG_PLATFORM_LIBRARIES mfplat ole32 strmiids mfuuid mfx)
22-elseif(APPLE)
23- if (CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64")
24- set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-macos-aarch64")
25- else()
26- set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-macos-x86_64")
27- endif()
28-else()
29- set(FFMPEG_PLATFORM_LIBRARIES va va-drm va-x11 vdpau X11)
30- if (CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")
31- set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-linux-aarch64")
32- else()
33- set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-linux-x86_64")
34- list(APPEND FFMPEG_PLATFORM_LIBRARIES mfx)
35- set(CPACK_DEB_PLATFORM_PACKAGE_DEPENDS "libmfx1,")
36- set(CPACK_RPM_PLATFORM_PACKAGE_REQUIRES "intel-mediasdk >= 22.3.0,")
37- endif()
38-endif()
39-set(FFMPEG_INCLUDE_DIRS
40- ${FFMPEG_PREPARED_BINARIES}/include)
41-if(EXISTS ${FFMPEG_PREPARED_BINARIES}/lib/libhdr10plus.a)
42- set(HDR10_PLUS_LIBRARY
43- ${FFMPEG_PREPARED_BINARIES}/lib/libhdr10plus.a)
44-endif()
45-set(FFMPEG_LIBRARIES
46- ${FFMPEG_PREPARED_BINARIES}/lib/libavcodec.a
47- ${FFMPEG_PREPARED_BINARIES}/lib/libavutil.a
48- ${FFMPEG_PREPARED_BINARIES}/lib/libcbs.a
49- ${FFMPEG_PREPARED_BINARIES}/lib/libSvtAv1Enc.a
50- ${FFMPEG_PREPARED_BINARIES}/lib/libswscale.a
51- ${FFMPEG_PREPARED_BINARIES}/lib/libx264.a
52- ${FFMPEG_PREPARED_BINARIES}/lib/libx265.a
53- ${HDR10_PLUS_LIBRARY}
54- ${FFMPEG_PLATFORM_LIBRARIES})
55-
56 include_directories(
57 ${CMAKE_CURRENT_SOURCE_DIR}
58 ${CMAKE_CURRENT_SOURCE_DIR}/third-party
59 ${CMAKE_CURRENT_SOURCE_DIR}/third-party/moonlight-common-c/enet/include
60 ${CMAKE_CURRENT_SOURCE_DIR}/third-party/nanors
61 ${CMAKE_CURRENT_SOURCE_DIR}/third-party/nanors/deps/obl
62- ${FFMPEG_INCLUDE_DIRS}
63 ${PLATFORM_INCLUDE_DIRS}
64 )
65
66@@ -529,6 +492,7 @@ list(APPEND SUNSHINE_EXTERNAL_LIBRARIES
67 ${CMAKE_THREAD_LIBS_INIT}
68 enet
69 opus
70+ cbs
71 ${FFMPEG_LIBRARIES}
72 ${Boost_LIBRARIES}
73 ${OPENSSL_LIBRARIES}