CMakeLists.txt 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246
  1. set(MODULE_NAME "libvideoframework")
  2. set(MODULE_PREFIX "LIB_VIDEOFRAMEWORK_FUNC")
  3. add_compile_options(-fPIC)
  4. if(RVC_DEBUG_MODE)
  5. set(SPBASE_LIB spbased)
  6. else()
  7. set(SPBASE_LIB spbase)
  8. endif(RVC_DEBUG_MODE)
  9. if(MSVC)
  10. set(${VIDEONOUSE}_SRCS
  11. videorender.h
  12. videoview.h
  13. videorender.c
  14. videoview.c
  15. )
  16. else()
  17. set(${VIDEONOUSE}_SRCS
  18. )
  19. endif(MSVC)
  20. if(MSVC)
  21. set(${VIDEOPLATFORM}_SRCS
  22. videocap.h
  23. videoplayer.h
  24. #videorender.h
  25. #videoview.h
  26. videocap.c
  27. videoplayer.c
  28. #videorender.c
  29. #videoview.c
  30. congestion_control/common/platform/windows/mscc.c
  31. )
  32. else()
  33. set(${VIDEOPLATFORM}_SRCS
  34. congestion_control/common/platform/linux/posix.c
  35. )
  36. endif(MSVC)
  37. set(${MODULE_PREFIX}_SRCS
  38. adaptive_jitter_buffer/video_jbuff_api.h
  39. adaptive_jitter_buffer/video_jbuff_decoding_state.h
  40. adaptive_jitter_buffer/video_jbuff_defines.h
  41. adaptive_jitter_buffer/video_jbuff_frame.h
  42. adaptive_jitter_buffer/video_jbuff_framelist.h
  43. adaptive_jitter_buffer/video_jbuff_jitterbuffer.h
  44. adaptive_jitter_buffer/video_jbuff_log.h
  45. adaptive_jitter_buffer/video_jbuff_packet.h
  46. congestion_control/cc/razor_api.h
  47. congestion_control/cc/razor_callback.h
  48. congestion_control/cc/razor_log.h
  49. congestion_control/cc/receiver_congestion_controller.h
  50. congestion_control/cc/sender_congestion_controller.h
  51. congestion_control/common/cf_crc32.h
  52. congestion_control/common/cf_hex.h
  53. congestion_control/common/cf_list.h
  54. congestion_control/common/cf_platform.h
  55. congestion_control/common/cf_skiplist.h
  56. congestion_control/common/cf_stream.h
  57. congestion_control/common/cf_unwrapper.h
  58. congestion_control/estimator/ack_bitrate_estimator.h
  59. congestion_control/estimator/aimd_rate_control.h
  60. congestion_control/estimator/bitrate_controller.h
  61. congestion_control/estimator/cc_feedback_adapter.h
  62. congestion_control/estimator/cc_loss_stat.h
  63. congestion_control/estimator/delay_base_bwe.h
  64. congestion_control/estimator/estimator_common.h
  65. congestion_control/estimator/inter_arrival.h
  66. congestion_control/estimator/kalman_filter.h
  67. congestion_control/estimator/overuse_detector.h
  68. congestion_control/estimator/rate_stat.h
  69. congestion_control/estimator/remote_bitrate_estimator.h
  70. congestion_control/estimator/remote_estimator_proxy.h
  71. congestion_control/estimator/sender_bandwidth_estimator.h
  72. congestion_control/estimator/sender_history.h
  73. congestion_control/estimator/trendline.h
  74. congestion_control/pacing/alr_detector.h
  75. congestion_control/pacing/interval_budget.h
  76. congestion_control/pacing/pacer_queue.h
  77. congestion_control/pacing/pace_sender.h
  78. congestion_control/sim_transport/sim_external.h
  79. congestion_control/sim_transport/sim_internal.h
  80. congestion_control/sim_transport/sim_receiver.h
  81. congestion_control/sim_transport/sim_sender.h
  82. congestion_control/sim_transport/sim_session.h
  83. h264_packetizer/h264_packetizer.h
  84. rtp_header_extension/byte_io.h
  85. rtp_header_extension/rtp_header_extensions.h
  86. rtp_header_extension/rtp_header_extension_api.h
  87. rtp_header_extension/rtp_header_extension_defines.h
  88. rtp_header_extension/rtp_header_extension_map.h
  89. rtp_header_extension/rtp_header_extension_packet.h
  90. rtp_header_extension/rtp_header_extension_parser.h
  91. # videocap.h
  92. videoclock.h
  93. videocommon.h
  94. videoframework.h
  95. videoplayer.h
  96. # videorender.h
  97. videortp.h
  98. videoutil.h
  99. # videoview.h
  100. video_coding/base/exp_filter.h
  101. video_coding/base/rate_statistics.h
  102. video_coding/base/video_coding_clock.h
  103. video_coding/base/video_coding_log.h
  104. video_coding/base/video_coding_type_defines.h
  105. video_coding/base/video_frame_type.h
  106. video_coding/frame_dropper.h
  107. video_coding/h264/bit_buffer.h
  108. video_coding/h264/h264_bitstream_parser.h
  109. video_coding/h264/h264_common.h
  110. video_coding/h264/pps_parser.h
  111. video_coding/h264/sps_parser.h
  112. video_coding/video_decoder.h
  113. video_coding/video_encoder.h
  114. video_coding/video_encoder_api.h
  115. video_coding/video_encoder_defines.h
  116. video_coding/video_stream_encoder.h
  117. video_common/ffmpeg_api_adapter.h
  118. video_common/ffmpeg_api_cpp_adapter.h
  119. video_common/videodebugfile.h
  120. video_common/video_encoded_image.h
  121. video_statics/video_stats.h
  122. aligned_malloc.h
  123. adaptive_jitter_buffer/video_jbuff_api.cpp
  124. adaptive_jitter_buffer/video_jbuff_decoding_state.cpp
  125. adaptive_jitter_buffer/video_jbuff_frame.cpp
  126. adaptive_jitter_buffer/video_jbuff_framelist.cpp
  127. adaptive_jitter_buffer/video_jbuff_jitterbuffer.cpp
  128. adaptive_jitter_buffer/video_jbuff_log.c
  129. adaptive_jitter_buffer/video_jbuff_packet.cpp
  130. congestion_control/cc/razor_api.c
  131. congestion_control/cc/razor_log.c
  132. congestion_control/cc/receiver_congestion_controller.c
  133. congestion_control/cc/sender_congestion_controller.c
  134. congestion_control/common/cf_crc32.c
  135. congestion_control/common/cf_hex.c
  136. congestion_control/common/cf_list.c
  137. congestion_control/common/cf_skiplist.c
  138. congestion_control/common/cf_stream.c
  139. congestion_control/common/cf_unwrapper.c
  140. congestion_control/estimator/ack_bitrate_estimator.c
  141. congestion_control/estimator/aimd_rate_control.c
  142. congestion_control/estimator/bitrate_controller.c
  143. congestion_control/estimator/cc_feedback_adapter.c
  144. congestion_control/estimator/cc_loss_stat.c
  145. congestion_control/estimator/delay_base_bwe.c
  146. congestion_control/estimator/estimator_common.c
  147. congestion_control/estimator/inter_arrival.c
  148. congestion_control/estimator/kalman_filter.c
  149. congestion_control/estimator/overuse_detector.c
  150. congestion_control/estimator/rate_stat.c
  151. congestion_control/estimator/remote_bitrate_estimator.c
  152. congestion_control/estimator/remote_estimator_proxy.c
  153. congestion_control/estimator/sender_bandwidth_estimator.c
  154. congestion_control/estimator/sender_history.c
  155. congestion_control/estimator/trendline.c
  156. congestion_control/pacing/alr_detector.c
  157. congestion_control/pacing/interval_budget.c
  158. congestion_control/pacing/pacer_queue.c
  159. congestion_control/pacing/pace_sender.c
  160. congestion_control/sim_transport/sim_external.c
  161. congestion_control/sim_transport/sim_receiver.c
  162. congestion_control/sim_transport/sim_sender.c
  163. congestion_control/sim_transport/sim_session.c
  164. h264_packetizer/h264_packetizer.c
  165. rtp_header_extension/rtp_header_extensions.cpp
  166. rtp_header_extension/rtp_header_extension_api.cpp
  167. rtp_header_extension/rtp_header_extension_map.cpp
  168. rtp_header_extension/rtp_header_extension_packet.cpp
  169. rtp_header_extension/rtp_header_extension_parser.cpp
  170. # videocap.c
  171. videoclock.c
  172. # videoplayer.c
  173. # videorender.c
  174. videortp.c
  175. # videoview.c
  176. video_coding/base/exp_filter.cpp
  177. video_coding/base/rate_statistics.cpp
  178. video_coding/base/video_coding_log.c
  179. video_coding/frame_dropper.cpp
  180. video_coding/h264/bit_buffer.cpp
  181. video_coding/h264/h264_bitstream_parser.cpp
  182. video_coding/h264/h264_common.cpp
  183. video_coding/h264/pps_parser.cpp
  184. video_coding/h264/sps_parser.cpp
  185. video_coding/video_decoder.c
  186. video_coding/video_encoder.cpp
  187. video_coding/video_encoder_api.cpp
  188. video_coding/video_stream_encoder.cpp
  189. video_common/videocommon.c
  190. video_common/videodebugfile.c
  191. video_common/videoutil.c
  192. video_common/video_encoded_image.cpp
  193. video_statics/video_stats.c
  194. precompile.h
  195. precompile.c
  196. aligned_malloc.cc
  197. ${${VIDEOPLATFORM}_SRCS}
  198. )
  199. add_library(${MODULE_NAME} STATIC ${${MODULE_PREFIX}_SRCS})
  200. #add_precompiled_header(${MODULE_NAME} precompile.h SOURCE_CXX precompile.cpp FORCEINCLUDE)
  201. target_include_directories(${MODULE_NAME} PRIVATE
  202. ${RVC_COMMON_INCLUDE_DIR}
  203. ${CONAN_INCLUDE_DIRS_FFMPEG}
  204. ${CONAN_RVCFRAMEWORK_ROOT}/include
  205. ${RVC_TOOLKIT_INCLUDE_DIR}
  206. ${RVC_COMMON_INCLUDE_DIR}
  207. )
  208. message(STATUS "ffmpeg include dir is ${CONAN_INCLUDE_DIRS_FFMPEG}")
  209. message(STATUS "toolkit include dir is ${RVC_TOOLKIT_INCLUDE_DIR}")
  210. message(STATUS "framework root include dir is ${CONAN_RVCFRAMEWORK_ROOT}")
  211. message(STATUS "common include dir is ${RVC_COMMON_INCLUDE_DIR}")
  212. target_link_directories(${MODULE_NAME} PRIVATE
  213. ${CONAN_LIB_DIRS_FFMPEG}
  214. ${CONAN_LIB_DIRS_RVCFRAMEWORK}
  215. )
  216. target_link_libraries(${MODULE_NAME} PRIVATE ${${MODULE_PREFIX}_LIBS}
  217. ${CONAN_LIBS_FFMPEG}
  218. ${SPBASE_LIB}
  219. )
  220. target_compile_definitions(${MODULE_NAME} PUBLIC "_XKEYCHECK_H")
  221. if(MSVC)
  222. set(OTHER_CONAN_DEP_LIBS ${OTHER_CONAN_DEP_LIBS} ${CONAN_BIN_DIRS} PARENT_SCOPE)
  223. else()
  224. set(OTHER_CONAN_DEP_LIBS ${OTHER_CONAN_DEP_LIBS} ${CONAN_LIB_DIRS} PARENT_SCOPE)
  225. ENDIF(MSVC)