CMakeLists.txt 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. define_module("mediacontroller")
  2. if(RVC_DEBUG_MODE)
  3. set(STRMBASE_LIB strmbasd)
  4. else()
  5. set(STRMBASE_LIB strmbase)
  6. endif(RVC_DEBUG_MODE)
  7. set(${MODULE_PREFIX}_SRCS
  8. capture.h
  9. Event.h
  10. ExternalCameraMsg.h
  11. MediaController_client_g.h
  12. MediaController_def_g.h
  13. MediaController_msg_g.h
  14. MediaController_server_g.h
  15. mod_mediacontroller.h
  16. stdafx.cpp
  17. capture.cpp
  18. mod_mediacontroller.cpp
  19. ${ThirdPartyHeadRoot}/CJson/cJSON.c
  20. )
  21. set(MOD_VERSION_STRING "0.0.1-dev1")
  22. add_module_libraries(${MODULE_PREFIX} ${MODULE_NAME} ${MOD_VERSION_STRING})
  23. if(NOT WIN32)
  24. target_include_directories(${MODULE_NAME} PRIVATE
  25. ${CMAKE_CURRENT_SOURCE_DIR}
  26. ${CONAN_INCLUDE_DIRS_PULSEAUDIO}
  27. ${CONAN_INCLUDE_DIRS_FFMPEG}
  28. ${OTHER_LIB_PLATFORM_BASE_DIR}/libvideoframework
  29. ${OTHER_LIB_PLATFORM_BASE_DIR}/libvideocapture
  30. #todo
  31. ${OTHER_LIB_PLATFORM_BASE_DIR}/libvideohorflip
  32. ${OTHER_LIB_BASE_DIR}/rvcmediacommon
  33. ${OTHER_LIB_BASE_DIR}/libaudioqueue
  34. ${OTHER_LIB_BASE_DIR}/libvideoqueue
  35. ${OTHER_LIB_PLATFORM_BASE_DIR}/libmediadeviceinfo
  36. ${OTHER_LIB_BASE_DIR}/libaudiomgr
  37. ${OTHER_LIB_BASE_DIR}/libvideocapture
  38. )
  39. else()
  40. message(STATUS "OTHER_LIB_PLATFORM_BASE_DIR: ${OTHER_LIB_PLATFORM_BASE_DIR}")
  41. target_include_directories(${MODULE_NAME} PRIVATE
  42. ${CMAKE_CURRENT_SOURCE_DIR}
  43. ${OTHER_LIB_PLATFORM_BASE_DIR}/libvideoframework
  44. ${OTHER_LIB_PLATFORM_BASE_DIR}/libvideohorflip
  45. ${OTHER_LIB_BASE_DIR}/rvcmediacommon
  46. ${OTHER_LIB_BASE_DIR}/libaudioqueue
  47. ${OTHER_LIB_BASE_DIR}/libvideoqueue
  48. ${OTHER_LIB_PLATFORM_BASE_DIR}/libaudiorender
  49. ${OTHER_LIB_PLATFORM_BASE_DIR}/libmediadeviceinfo
  50. ${CONAN_INCLUDE_DIRS_PORTAUDIO}
  51. ${CONAN_INCLUDE_DIRS_FFMPEG}
  52. ${CONAN_INCLUDE_DIRS_IPP}
  53. ${CONAN_INCLUDE_DIRS_SPEEXDSP}
  54. ${CONAN_INCLUDE_DIRS_APR}/apr-1
  55. ${CONAN_INCLUDE_DIRS_SPANDSP}
  56. )
  57. endif(NOT WIN32)
  58. if(MSVC)
  59. target_link_directories(${MODULE_NAME} PRIVATE
  60. ${CONAN_LIB_DIRS_FFMPEG}
  61. ${CONAN_LIB_DIRS_SPANDSP}
  62. ${CONAN_LIB_DIRS_SPEEXDSP}
  63. ${CONAN_LIB_DIRS_PORTAUDIO}
  64. ${CONAN_LIB_DIRS_IPP}
  65. ${CONAN_LIB_DIRS_APACHE-APR}
  66. ${CONAN_LIB_DIRS_LIB8K}
  67. ${CONAN_LIB_DIRS_LIBYUV}
  68. )
  69. else()
  70. target_link_directories(${MODULE_NAME} PRIVATE
  71. ${CONAN_LIB_DIRS_FFMPEG}
  72. ${CONAN_LIB_DIRS_SPANDSP}
  73. ${CONAN_LIB_DIRS_SPEEXDSP}
  74. ${CONAN_LIB_DIRS_PULSEAUDIO}
  75. ${CONAN_LIB_DIRS_APR}
  76. ${CONAN_LIB_DIRS_SOFIA}
  77. ${CONAN_LIB_DIRS_ZLIB}
  78. ${CONAN_LIB_DIRS_OPENCV}
  79. )
  80. endif(MSVC)
  81. # 添加实体需要依赖的其他共享库(包括系统库)
  82. if(WIN32)
  83. set(${MODULE_PREFIX}_LIBS ${MODULE_BASE_LIBS}
  84. ${CONAN_PKG_LIBS_IPP}
  85. ${CONAN_PKG_LIBS_PORTAUDIO}
  86. ${CONAN_PKG_LIBS_FFMPEG}
  87. ${CONAN_PKG_LIBS_APACHE-APR}
  88. ${CONAN_PKG_LIBS_LIB8K}
  89. ws2_32
  90. strmiids
  91. winmm
  92. Vfw32
  93. ole32
  94. #libaudioframework
  95. libvideoframework
  96. audioqueue
  97. videoqueue
  98. libvideohorflip
  99. audiorender
  100. )
  101. else(WIN32)
  102. set(${MODULE_PREFIX}_LIBS ${MODULE_BASE_LIBS}
  103. ${CONAN_PKG_LIBS_FFMPEG}
  104. mediadeviceinfo
  105. videocapture
  106. asound
  107. libaudioframework
  108. libvideoframework
  109. audioqueue
  110. videoqueue
  111. ${CONAN_PKG_LIBS_APR}
  112. ${CONAN_PKG_LIBS_SPANDSP}
  113. ${CONAN_PKG_LIBS_SPEEXDSP}
  114. audiomgr
  115. )
  116. endif(WIN32)
  117. target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS})
  118. deploy_module(${MODULE_PREFIX} ${MODULE_NAME})