CMakeLists.txt 3.4 KB

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