CMakeLists.txt 1015 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. project(obs-ffmpeg)
  2. if(MSVC)
  3. set(obs-ffmpeg_PLATFORM_DEPS
  4. w32-pthreads)
  5. endif()
  6. find_package(FFmpeg REQUIRED
  7. COMPONENTS avcodec avfilter avdevice avutil swscale avformat swresample)
  8. include_directories(${FFMPEG_INCLUDE_DIRS})
  9. set(obs-ffmpeg_HEADERS
  10. obs-ffmpeg-formats.h
  11. obs-ffmpeg-compat.h
  12. closest-pixel-format.h)
  13. set(obs-ffmpeg_SOURCES
  14. obs-ffmpeg.c
  15. obs-ffmpeg-audio-encoders.c
  16. obs-ffmpeg-nvenc.c
  17. obs-ffmpeg-output.c
  18. obs-ffmpeg-mux.c
  19. obs-ffmpeg-source.c)
  20. if(UNIX AND NOT APPLE)
  21. list(APPEND obs-ffmpeg_SOURCES
  22. obs-ffmpeg-vaapi.c)
  23. LIST(APPEND obs-ffmpeg_PLATFORM_DEPS
  24. ${LIBVA_LBRARIES})
  25. endif()
  26. if(WIN32)
  27. list(APPEND obs-ffmpeg_SOURCES
  28. jim-nvenc.c
  29. jim-nvenc-helpers.c)
  30. list(APPEND obs-ffmpeg_HEADERS
  31. jim-nvenc.h)
  32. endif()
  33. add_library(obs-ffmpeg MODULE
  34. ${obs-ffmpeg_HEADERS}
  35. ${obs-ffmpeg_SOURCES})
  36. target_link_libraries(obs-ffmpeg
  37. libobs
  38. media-playback
  39. ${obs-ffmpeg_PLATFORM_DEPS}
  40. ${FFMPEG_LIBRARIES})
  41. install_obs_plugin_with_data(obs-ffmpeg data)
  42. add_subdirectory(ffmpeg-mux)