@scrypted/libav 1.0.181 → 1.0.183

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (339) hide show
  1. package/package.json +1 -1
  2. package/_openh264install/include/wels/codec_api.h +0 -592
  3. package/_openh264install/include/wels/codec_app_def.h +0 -820
  4. package/_openh264install/include/wels/codec_def.h +0 -216
  5. package/_openh264install/include/wels/codec_ver.h +0 -15
  6. package/_openh264install/lib/libopenh264.a +0 -0
  7. package/_openh264install/lib/pkgconfig/openh264.pc +0 -10
  8. package/openh264/.reviewboardrc +0 -3
  9. package/openh264/.travis.yml +0 -42
  10. package/openh264/CODING_STYLE +0 -8
  11. package/openh264/CONTRIBUTORS +0 -55
  12. package/openh264/LICENSE +0 -23
  13. package/openh264/Makefile +0 -408
  14. package/openh264/README.md +0 -197
  15. package/openh264/RELEASES +0 -467
  16. package/openh264/SECURITY.md +0 -16
  17. package/openh264/autotest/codec_comparision/run_MultiCodecComparision.sh +0 -431
  18. package/openh264/autotest/performanceTest/android/run_AutoTest_android.sh +0 -180
  19. package/openh264/autotest/performanceTest/ios/fruitstrap +0 -0
  20. package/openh264/autotest/performanceTest/ios/iFileTransfer +0 -0
  21. package/openh264/autotest/performanceTest/ios/run_AutoTest_ios.sh +0 -193
  22. package/openh264/autotest/performanceTest/ios/uiascript.js +0 -19
  23. package/openh264/autotest/performanceTest/parsePerfData.sh +0 -107
  24. package/openh264/autotest/performanceTest/run_perfTest.sh +0 -122
  25. package/openh264/autotest/unitTest/android/run_AutoTest_android.sh +0 -112
  26. package/openh264/autotest/unitTest/ios/run_AutoTest_ios.sh +0 -167
  27. package/openh264/autotest/unitTest/run_ParseUTxml.sh +0 -70
  28. package/openh264/autotest/unitTest/run_unitTest.sh +0 -98
  29. package/openh264/build.gradle +0 -30
  30. package/openh264/code-coverage.sh +0 -6
  31. package/openh264/codec/api/meson.build +0 -1
  32. package/openh264/codec/api/wels/codec_api.h +0 -592
  33. package/openh264/codec/api/wels/codec_app_def.h +0 -820
  34. package/openh264/codec/api/wels/codec_def.h +0 -216
  35. package/openh264/codec/api/wels/codec_ver.h +0 -15
  36. package/openh264/codec/api/wels/meson.build +0 -9
  37. package/openh264/codec/common/arm/arm_arch_common_macro.S +0 -83
  38. package/openh264/codec/common/arm/copy_mb_neon.S +0 -161
  39. package/openh264/codec/common/arm/deblocking_neon.S +0 -857
  40. package/openh264/codec/common/arm/expand_picture_neon.S +0 -154
  41. package/openh264/codec/common/arm/intra_pred_common_neon.S +0 -82
  42. package/openh264/codec/common/arm/mc_neon.S +0 -2283
  43. package/openh264/codec/common/arm64/arm_aarch64_common.h +0 -85
  44. package/openh264/codec/common/arm64/arm_arch64_common_macro.S +0 -79
  45. package/openh264/codec/common/arm64/copy_mb_aarch64_neon.S +0 -202
  46. package/openh264/codec/common/arm64/deblocking_aarch64_neon.S +0 -852
  47. package/openh264/codec/common/arm64/expand_picture_aarch64_neon.S +0 -150
  48. package/openh264/codec/common/arm64/intra_pred_common_aarch64_neon.S +0 -58
  49. package/openh264/codec/common/arm64/mc_aarch64_neon.S +0 -2614
  50. package/openh264/codec/common/generate_version.sh +0 -28
  51. package/openh264/codec/common/inc/WelsList.h +0 -287
  52. package/openh264/codec/common/inc/WelsLock.h +0 -97
  53. package/openh264/codec/common/inc/WelsTask.h +0 -75
  54. package/openh264/codec/common/inc/WelsTaskThread.h +0 -83
  55. package/openh264/codec/common/inc/WelsThread.h +0 -106
  56. package/openh264/codec/common/inc/WelsThreadLib.h +0 -151
  57. package/openh264/codec/common/inc/WelsThreadPool.h +0 -124
  58. package/openh264/codec/common/inc/asmdefs_mmi.h +0 -345
  59. package/openh264/codec/common/inc/copy_mb.h +0 -103
  60. package/openh264/codec/common/inc/cpu.h +0 -81
  61. package/openh264/codec/common/inc/cpu_core.h +0 -103
  62. package/openh264/codec/common/inc/crt_util_safe_x.h +0 -104
  63. package/openh264/codec/common/inc/deblocking_common.h +0 -124
  64. package/openh264/codec/common/inc/expand_pic.h +0 -107
  65. package/openh264/codec/common/inc/golomb_common.h +0 -166
  66. package/openh264/codec/common/inc/intra_pred_common.h +0 -86
  67. package/openh264/codec/common/inc/loongson_intrinsics.h +0 -1919
  68. package/openh264/codec/common/inc/ls_defines.h +0 -130
  69. package/openh264/codec/common/inc/macros.h +0 -329
  70. package/openh264/codec/common/inc/mc.h +0 -407
  71. package/openh264/codec/common/inc/measure_time.h +0 -88
  72. package/openh264/codec/common/inc/memory_align.h +0 -116
  73. package/openh264/codec/common/inc/msa_macros.h +0 -2393
  74. package/openh264/codec/common/inc/sad_common.h +0 -139
  75. package/openh264/codec/common/inc/typedefs.h +0 -86
  76. package/openh264/codec/common/inc/utils.h +0 -95
  77. package/openh264/codec/common/inc/version.h +0 -10
  78. package/openh264/codec/common/inc/version_gen.h.template +0 -6
  79. package/openh264/codec/common/inc/welsCodecTrace.h +0 -64
  80. package/openh264/codec/common/inc/wels_common_defs.h +0 -373
  81. package/openh264/codec/common/inc/wels_const_common.h +0 -63
  82. package/openh264/codec/common/loongarch/copy_mb_lsx.c +0 -194
  83. package/openh264/codec/common/loongarch/deblock_lsx.c +0 -1489
  84. package/openh264/codec/common/loongarch/intra_pred_com_lasx.c +0 -112
  85. package/openh264/codec/common/loongarch/intra_pred_com_lsx.c +0 -91
  86. package/openh264/codec/common/loongarch/mc_chroma_lsx.c +0 -192
  87. package/openh264/codec/common/loongarch/mc_horver_lsx.c +0 -654
  88. package/openh264/codec/common/loongarch/satd_sad_lasx.c +0 -568
  89. package/openh264/codec/common/meson.build +0 -84
  90. package/openh264/codec/common/mips/copy_mb_mmi.c +0 -477
  91. package/openh264/codec/common/mips/copy_mb_msa.c +0 -80
  92. package/openh264/codec/common/mips/deblock_mmi.c +0 -2826
  93. package/openh264/codec/common/mips/deblock_msa.c +0 -1024
  94. package/openh264/codec/common/mips/expand_picture_mmi.c +0 -673
  95. package/openh264/codec/common/mips/intra_pred_com_mmi.c +0 -548
  96. package/openh264/codec/common/mips/satd_sad_mmi.c +0 -2154
  97. package/openh264/codec/common/targets.mk +0 -136
  98. package/openh264/codec/common/x86/asm_inc.asm +0 -743
  99. package/openh264/codec/common/x86/cpuid.asm +0 -263
  100. package/openh264/codec/common/x86/dct.asm +0 -1036
  101. package/openh264/codec/common/x86/deblock.asm +0 -848
  102. package/openh264/codec/common/x86/expand_picture.asm +0 -728
  103. package/openh264/codec/common/x86/intra_pred_com.asm +0 -117
  104. package/openh264/codec/common/x86/mb_copy.asm +0 -615
  105. package/openh264/codec/common/x86/mc_chroma.asm +0 -313
  106. package/openh264/codec/common/x86/mc_luma.asm +0 -4490
  107. package/openh264/codec/common/x86/satd_sad.asm +0 -2734
  108. package/openh264/codec/common/x86/vaa.asm +0 -411
  109. package/openh264/codec/console/common/inc/read_config.h +0 -68
  110. package/openh264/codec/console/common/meson.build +0 -12
  111. package/openh264/codec/console/common/targets.mk +0 -20
  112. package/openh264/codec/console/dec/inc/d3d9_utils.h +0 -148
  113. package/openh264/codec/console/dec/meson.build +0 -15
  114. package/openh264/codec/console/dec/targets.mk +0 -20
  115. package/openh264/codec/console/enc/meson.build +0 -9
  116. package/openh264/codec/console/enc/targets.mk +0 -19
  117. package/openh264/codec/console/meson.build +0 -3
  118. package/openh264/codec/decoder/core/arm/block_add_neon.S +0 -129
  119. package/openh264/codec/decoder/core/arm/intra_pred_neon.S +0 -635
  120. package/openh264/codec/decoder/core/arm64/block_add_aarch64_neon.S +0 -131
  121. package/openh264/codec/decoder/core/arm64/intra_pred_aarch64_neon.S +0 -524
  122. package/openh264/codec/decoder/core/inc/au_parser.h +0 -199
  123. package/openh264/codec/decoder/core/inc/bit_stream.h +0 -62
  124. package/openh264/codec/decoder/core/inc/cabac_decoder.h +0 -111
  125. package/openh264/codec/decoder/core/inc/deblocking.h +0 -118
  126. package/openh264/codec/decoder/core/inc/dec_frame.h +0 -156
  127. package/openh264/codec/decoder/core/inc/dec_golomb.h +0 -344
  128. package/openh264/codec/decoder/core/inc/decode_mb_aux.h +0 -83
  129. package/openh264/codec/decoder/core/inc/decode_slice.h +0 -104
  130. package/openh264/codec/decoder/core/inc/decoder.h +0 -186
  131. package/openh264/codec/decoder/core/inc/decoder_context.h +0 -590
  132. package/openh264/codec/decoder/core/inc/decoder_core.h +0 -206
  133. package/openh264/codec/decoder/core/inc/error_code.h +0 -222
  134. package/openh264/codec/decoder/core/inc/error_concealment.h +0 -68
  135. package/openh264/codec/decoder/core/inc/fmo.h +0 -114
  136. package/openh264/codec/decoder/core/inc/get_intra_predictor.h +0 -191
  137. package/openh264/codec/decoder/core/inc/manage_dec_ref.h +0 -62
  138. package/openh264/codec/decoder/core/inc/mb_cache.h +0 -80
  139. package/openh264/codec/decoder/core/inc/memmgr_nal_unit.h +0 -66
  140. package/openh264/codec/decoder/core/inc/mv_pred.h +0 -195
  141. package/openh264/codec/decoder/core/inc/nal_prefix.h +0 -56
  142. package/openh264/codec/decoder/core/inc/nalu.h +0 -79
  143. package/openh264/codec/decoder/core/inc/parameter_sets.h +0 -217
  144. package/openh264/codec/decoder/core/inc/parse_mb_syn_cabac.h +0 -89
  145. package/openh264/codec/decoder/core/inc/parse_mb_syn_cavlc.h +0 -137
  146. package/openh264/codec/decoder/core/inc/pic_queue.h +0 -62
  147. package/openh264/codec/decoder/core/inc/picture.h +0 -112
  148. package/openh264/codec/decoder/core/inc/rec_mb.h +0 -104
  149. package/openh264/codec/decoder/core/inc/slice.h +0 -208
  150. package/openh264/codec/decoder/core/inc/vlc_decoder.h +0 -177
  151. package/openh264/codec/decoder/core/inc/wels_common_basis.h +0 -317
  152. package/openh264/codec/decoder/core/inc/wels_const.h +0 -65
  153. package/openh264/codec/decoder/core/inc/wels_decoder_thread.h +0 -170
  154. package/openh264/codec/decoder/core/loongarch/mb_aux_lsx.c +0 -296
  155. package/openh264/codec/decoder/core/mips/dct_mmi.c +0 -786
  156. package/openh264/codec/decoder/core/x86/dct.asm +0 -72
  157. package/openh264/codec/decoder/core/x86/intra_pred.asm +0 -1456
  158. package/openh264/codec/decoder/meson.build +0 -69
  159. package/openh264/codec/decoder/plus/inc/welsDecoderExt.h +0 -170
  160. package/openh264/codec/decoder/targets.mk +0 -115
  161. package/openh264/codec/encoder/core/arm/intra_pred_neon.S +0 -589
  162. package/openh264/codec/encoder/core/arm/intra_pred_sad_3_opt_neon.S +0 -735
  163. package/openh264/codec/encoder/core/arm/memory_neon.S +0 -62
  164. package/openh264/codec/encoder/core/arm/pixel_neon.S +0 -882
  165. package/openh264/codec/encoder/core/arm/reconstruct_neon.S +0 -903
  166. package/openh264/codec/encoder/core/arm/svc_motion_estimation.S +0 -366
  167. package/openh264/codec/encoder/core/arm64/intra_pred_aarch64_neon.S +0 -505
  168. package/openh264/codec/encoder/core/arm64/intra_pred_sad_3_opt_aarch64_neon.S +0 -611
  169. package/openh264/codec/encoder/core/arm64/memory_aarch64_neon.S +0 -63
  170. package/openh264/codec/encoder/core/arm64/pixel_aarch64_neon.S +0 -621
  171. package/openh264/codec/encoder/core/arm64/reconstruct_aarch64_neon.S +0 -717
  172. package/openh264/codec/encoder/core/arm64/svc_motion_estimation_aarch64_neon.S +0 -350
  173. package/openh264/codec/encoder/core/inc/as264_common.h +0 -138
  174. package/openh264/codec/encoder/core/inc/au_set.h +0 -152
  175. package/openh264/codec/encoder/core/inc/deblocking.h +0 -92
  176. package/openh264/codec/encoder/core/inc/decode_mb_aux.h +0 -112
  177. package/openh264/codec/encoder/core/inc/dq_map.h +0 -58
  178. package/openh264/codec/encoder/core/inc/encode_mb_aux.h +0 -199
  179. package/openh264/codec/encoder/core/inc/encoder.h +0 -148
  180. package/openh264/codec/encoder/core/inc/encoder_context.h +0 -240
  181. package/openh264/codec/encoder/core/inc/extern.h +0 -124
  182. package/openh264/codec/encoder/core/inc/get_intra_predictor.h +0 -186
  183. package/openh264/codec/encoder/core/inc/mb_cache.h +0 -141
  184. package/openh264/codec/encoder/core/inc/md.h +0 -181
  185. package/openh264/codec/encoder/core/inc/mt_defs.h +0 -91
  186. package/openh264/codec/encoder/core/inc/mv_pred.h +0 -191
  187. package/openh264/codec/encoder/core/inc/nal_encap.h +0 -143
  188. package/openh264/codec/encoder/core/inc/param_svc.h +0 -576
  189. package/openh264/codec/encoder/core/inc/parameter_sets.h +0 -181
  190. package/openh264/codec/encoder/core/inc/paraset_strategy.h +0 -310
  191. package/openh264/codec/encoder/core/inc/picture.h +0 -137
  192. package/openh264/codec/encoder/core/inc/picture_handle.h +0 -66
  193. package/openh264/codec/encoder/core/inc/rc.h +0 -284
  194. package/openh264/codec/encoder/core/inc/ref_list_mgr_svc.h +0 -148
  195. package/openh264/codec/encoder/core/inc/sample.h +0 -154
  196. package/openh264/codec/encoder/core/inc/set_mb_syn_cabac.h +0 -127
  197. package/openh264/codec/encoder/core/inc/set_mb_syn_cavlc.h +0 -92
  198. package/openh264/codec/encoder/core/inc/slice.h +0 -212
  199. package/openh264/codec/encoder/core/inc/slice_multi_threading.h +0 -97
  200. package/openh264/codec/encoder/core/inc/stat.h +0 -102
  201. package/openh264/codec/encoder/core/inc/svc_base_layer_md.h +0 -102
  202. package/openh264/codec/encoder/core/inc/svc_enc_frame.h +0 -136
  203. package/openh264/codec/encoder/core/inc/svc_enc_golomb.h +0 -123
  204. package/openh264/codec/encoder/core/inc/svc_enc_macroblock.h +0 -82
  205. package/openh264/codec/encoder/core/inc/svc_enc_slice_segment.h +0 -212
  206. package/openh264/codec/encoder/core/inc/svc_encode_mb.h +0 -63
  207. package/openh264/codec/encoder/core/inc/svc_encode_slice.h +0 -184
  208. package/openh264/codec/encoder/core/inc/svc_mode_decision.h +0 -94
  209. package/openh264/codec/encoder/core/inc/svc_motion_estimate.h +0 -369
  210. package/openh264/codec/encoder/core/inc/svc_set_mb_syn.h +0 -70
  211. package/openh264/codec/encoder/core/inc/svc_set_mb_syn_cavlc.h +0 -67
  212. package/openh264/codec/encoder/core/inc/vlc_encoder.h +0 -92
  213. package/openh264/codec/encoder/core/inc/wels_common_basis.h +0 -160
  214. package/openh264/codec/encoder/core/inc/wels_const.h +0 -174
  215. package/openh264/codec/encoder/core/inc/wels_func_ptr_def.h +0 -300
  216. package/openh264/codec/encoder/core/inc/wels_preprocess.h +0 -251
  217. package/openh264/codec/encoder/core/inc/wels_task_base.h +0 -79
  218. package/openh264/codec/encoder/core/inc/wels_task_encoder.h +0 -142
  219. package/openh264/codec/encoder/core/inc/wels_task_management.h +0 -135
  220. package/openh264/codec/encoder/core/inc/wels_transpose_matrix.h +0 -58
  221. package/openh264/codec/encoder/core/loongarch/dct_lasx.c +0 -452
  222. package/openh264/codec/encoder/core/loongarch/get_intra_predictor_lsx.c +0 -166
  223. package/openh264/codec/encoder/core/loongarch/quant_lsx.c +0 -153
  224. package/openh264/codec/encoder/core/loongarch/sample_lasx.c +0 -87
  225. package/openh264/codec/encoder/core/loongarch/svc_motion_estimate_lsx.c +0 -104
  226. package/openh264/codec/encoder/core/mips/dct_mmi.c +0 -529
  227. package/openh264/codec/encoder/core/mips/quant_mmi.c +0 -553
  228. package/openh264/codec/encoder/core/mips/score_mmi.c +0 -324
  229. package/openh264/codec/encoder/core/x86/coeff.asm +0 -695
  230. package/openh264/codec/encoder/core/x86/dct.asm +0 -108
  231. package/openh264/codec/encoder/core/x86/intra_pred.asm +0 -1129
  232. package/openh264/codec/encoder/core/x86/matrix_transpose.asm +0 -395
  233. package/openh264/codec/encoder/core/x86/memzero.asm +0 -132
  234. package/openh264/codec/encoder/core/x86/quant.asm +0 -507
  235. package/openh264/codec/encoder/core/x86/sample_sc.asm +0 -1829
  236. package/openh264/codec/encoder/core/x86/score.asm +0 -363
  237. package/openh264/codec/encoder/meson.build +0 -98
  238. package/openh264/codec/encoder/plus/inc/welsEncoderExt.h +0 -129
  239. package/openh264/codec/encoder/targets.mk +0 -146
  240. package/openh264/codec/meson.build +0 -9
  241. package/openh264/codec/processing/interface/IWelsVP.h +0 -310
  242. package/openh264/codec/processing/meson.build +0 -71
  243. package/openh264/codec/processing/targets.mk +0 -117
  244. package/openh264/docs/doxygen/Doxyfile +0 -1865
  245. package/openh264/docs/doxygen/Home.rest +0 -25
  246. package/openh264/docs/doxygen/ISVCDecoder.rest +0 -19
  247. package/openh264/docs/doxygen/ISVCEncoder.rest +0 -16
  248. package/openh264/docs/doxygen/UsageExampleForDecoder.rest +0 -10
  249. package/openh264/docs/doxygen/UsageExampleForEncoder.rest +0 -15
  250. package/openh264/docs/doxygen2rst.py +0 -619
  251. package/openh264/gmpopenh264.info +0 -4
  252. package/openh264/gradlew +0 -172
  253. package/openh264/meson.build +0 -218
  254. package/openh264/meson_options.txt +0 -1
  255. package/openh264/module/RefCounted.h +0 -141
  256. package/openh264/module/gmp-openh264.cpp +0 -1196
  257. package/openh264/module/targets.mk +0 -14
  258. package/openh264/module/task_utils.h +0 -38
  259. package/openh264/module/task_utils.py +0 -207
  260. package/openh264/module/task_utils_generated.h +0 -2087
  261. package/openh264/openh264.def +0 -7
  262. package/openh264/openh264.pc.in +0 -10
  263. package/openh264/openh264.rc +0 -61
  264. package/openh264/openh264.rc.template +0 -61
  265. package/openh264/res/Adobe_PDF_sample_a_1024x768_50Frms.264 +0 -0
  266. package/openh264/res/BA1_FT_C.264 +0 -0
  267. package/openh264/res/BA1_Sony_D.jsv +0 -0
  268. package/openh264/res/BAMQ1_JVC_C.264 +0 -0
  269. package/openh264/res/BAMQ2_JVC_C.264 +0 -0
  270. package/openh264/res/BANM_MW_D.264 +0 -0
  271. package/openh264/res/BASQP1_Sony_C.jsv +0 -0
  272. package/openh264/res/BA_MW_D.264 +0 -0
  273. package/openh264/res/BA_MW_D_IDR_LOST.264 +0 -0
  274. package/openh264/res/BA_MW_D_P_LOST.264 +0 -0
  275. package/openh264/res/CI1_FT_B.264 +0 -0
  276. package/openh264/res/CI_MW_D.264 +0 -0
  277. package/openh264/res/CVFC1_Sony_C.jsv +0 -0
  278. package/openh264/res/CVPCMNL1_SVA_C.264 +0 -0
  279. package/openh264/res/CiscoVT2people_160x96_6fps.yuv +0 -1
  280. package/openh264/res/CiscoVT2people_320x192_12fps.yuv +0 -1
  281. package/openh264/res/Cisco_Absolute_Power_1280x720_30fps.yuv +0 -3607
  282. package/openh264/res/Cisco_Adobe_PDF_sample_a_1024x768_CAVLC_Bframe_9.264 +0 -0
  283. package/openh264/res/Cisco_Men_whisper_640x320_CABAC_Bframe_9.264 +0 -0
  284. package/openh264/res/Cisco_Men_whisper_640x320_CAVLC_Bframe_9.264 +0 -0
  285. package/openh264/res/Error_I_P.264 +0 -0
  286. package/openh264/res/LS_SVA_D.264 +0 -0
  287. package/openh264/res/MIDR_MW_D.264 +0 -0
  288. package/openh264/res/MPS_MW_A.264 +0 -0
  289. package/openh264/res/MR1_BT_A.h264 +0 -0
  290. package/openh264/res/MR1_MW_A.264 +0 -0
  291. package/openh264/res/MR2_MW_A.264 +0 -0
  292. package/openh264/res/MR2_TANDBERG_E.264 +0 -0
  293. package/openh264/res/NL1_Sony_D.jsv +0 -0
  294. package/openh264/res/NLMQ1_JVC_C.264 +0 -0
  295. package/openh264/res/NLMQ2_JVC_C.264 +0 -0
  296. package/openh264/res/NRF_MW_E.264 +0 -0
  297. package/openh264/res/QCIF_2P_I_allIPCM.264 +0 -0
  298. package/openh264/res/SVA_BA1_B.264 +0 -0
  299. package/openh264/res/SVA_BA2_D.264 +0 -0
  300. package/openh264/res/SVA_Base_B.264 +0 -0
  301. package/openh264/res/SVA_CL1_E.264 +0 -0
  302. package/openh264/res/SVA_FM1_E.264 +0 -0
  303. package/openh264/res/SVA_NL1_B.264 +0 -0
  304. package/openh264/res/SVA_NL2_E.264 +0 -0
  305. package/openh264/res/SarVui.264 +0 -0
  306. package/openh264/res/Static.264 +0 -0
  307. package/openh264/res/Static_152_100.yuv +0 -1
  308. package/openh264/res/VID_1280x544_cabac_temporal_direct.264 +0 -0
  309. package/openh264/res/VID_1280x544_cavlc_temporal_direct.264 +0 -0
  310. package/openh264/res/VID_1280x720_cabac_temporal_direct.264 +0 -0
  311. package/openh264/res/VID_1280x720_cavlc_temporal_direct.264 +0 -0
  312. package/openh264/res/VID_1920x1080_cabac_temporal_direct.264 +0 -0
  313. package/openh264/res/VID_1920x1080_cavlc_temporal_direct.264 +0 -0
  314. package/openh264/res/Zhling_1280x720.264 +0 -0
  315. package/openh264/res/jm_1080p_allslice.264 +0 -0
  316. package/openh264/res/sps_subsetsps_bothVUI.264 +0 -0
  317. package/openh264/res/test_cif_I_CABAC_PCM.264 +0 -0
  318. package/openh264/res/test_cif_I_CABAC_slice.264 +0 -0
  319. package/openh264/res/test_cif_P_CABAC_slice.264 +0 -0
  320. package/openh264/res/test_qcif_cabac.264 +0 -0
  321. package/openh264/res/test_scalinglist_jm.264 +0 -0
  322. package/openh264/res/test_vd_1d.264 +0 -0
  323. package/openh264/res/test_vd_rc.264 +0 -0
  324. package/openh264/run_Test.sh +0 -91
  325. package/openh264/settings.gradle +0 -4
  326. package/openh264/subprojects/gtest.wrap +0 -10
  327. package/openh264/testbin/AutoBuild_Windows_VS2008.bat +0 -59
  328. package/openh264/testbin/CmdLineExample.sh +0 -7
  329. package/openh264/testbin/CmdLineReadMe +0 -22
  330. package/openh264/testbin/layer2.cfg +0 -37
  331. package/openh264/testbin/layer2_arbitrary_res.cfg +0 -37
  332. package/openh264/testbin/layer2_vd.cfg +0 -38
  333. package/openh264/testbin/layer2_vd_rc.cfg +0 -38
  334. package/openh264/testbin/welsenc.cfg +0 -71
  335. package/openh264/testbin/welsenc_arbitrary_res.cfg +0 -70
  336. package/openh264/testbin/welsenc_ios.cfg +0 -71
  337. package/openh264/testbin/welsenc_vd_1d.cfg +0 -70
  338. package/openh264/testbin/welsenc_vd_rc.cfg +0 -69
  339. package/openh264/ut.def +0 -2
package/openh264/Makefile DELETED
@@ -1,408 +0,0 @@
1
- SRC_PATH=$(word 1, $(dir $(MAKEFILE_LIST)))
2
- vpath %.c $(SRC_PATH)
3
- vpath %.cc $(SRC_PATH)
4
- vpath %.cpp $(SRC_PATH)
5
- vpath %.asm $(SRC_PATH)
6
- vpath %.S $(SRC_PATH)
7
- vpath %.rc $(SRC_PATH)
8
- vpath %.pc.in $(SRC_PATH)
9
-
10
- OS=$(shell uname | tr A-Z a-z | tr -d \\-0-9. | sed -E 's/^(net|open|free)bsd/bsd/')
11
- ARCH=$(shell uname -m)
12
- LIBPREFIX=lib
13
- LIBSUFFIX=a
14
- CCAS=$(CC)
15
- CXX_O=-o $@
16
- CXX_LINK_O=-o $@
17
- AR_OPTS=cr $@
18
- LINK_LOCAL_DIR=-L.
19
- LINK_LIB=-l$(1)
20
- CFLAGS_OPT=-O3
21
- CFLAGS_DEBUG=-g
22
- BUILDTYPE=Release
23
- V=Yes
24
- PREFIX=/usr/local
25
- SHARED=-shared
26
- OBJ=o
27
- DESTDIR=
28
- LIBDIR_NAME=lib
29
- SHAREDLIB_DIR=$(PREFIX)/lib
30
- PROJECT_NAME=openh264
31
- MODULE_NAME=gmpopenh264
32
- GMP_API_BRANCH=Firefox135
33
- GTEST_VER=release-1.8.1
34
- CCASFLAGS=$(CFLAGS)
35
- STATIC_LDFLAGS=-lstdc++
36
- STRIP ?= strip
37
- USE_STACK_PROTECTOR = Yes
38
- USE_LOW_VERSION_NDK=No
39
- USE_ANT=No
40
-
41
- SHAREDLIB_MAJORVERSION=8
42
- FULL_VERSION := 2.6.0
43
-
44
- ifeq (,$(wildcard $(SRC_PATH)gmp-api))
45
- HAVE_GMP_API=No
46
- else
47
- HAVE_GMP_API=Yes
48
- endif
49
-
50
- ifeq (,$(wildcard $(SRC_PATH)gtest))
51
- HAVE_GTEST=No
52
- else
53
- HAVE_GTEST=Yes
54
- endif
55
-
56
- # Configurations
57
- ifeq ($(BUILDTYPE), Release)
58
- CFLAGS += $(CFLAGS_OPT)
59
- CFLAGS += -DNDEBUG
60
- USE_ASM = Yes
61
- ifeq ($(DEBUGSYMBOLS), True)
62
- CFLAGS += -g
63
- CXXFLAGS += -g
64
- DEBUGSYMBOLS_TAG := _debug_symbols
65
- PROCESS_FILES := True
66
- endif
67
- else
68
- CFLAGS += $(CFLAGS_DEBUG)
69
- USE_ASM = No
70
- endif
71
-
72
- ifeq ($(USE_ASAN), Yes)
73
- CFLAGS += -fsanitize=address
74
- LDFLAGS += -fsanitize=address
75
- endif
76
-
77
- STRIP_FLAGS := -S
78
- ifeq (linux, $((OS)))
79
- STRIP_FLAGS := -g
80
- endif
81
-
82
- # Make sure the all target is the first one
83
- all: libraries binaries
84
-
85
- ifeq (android, $(OS))
86
- USE_LOW_VERSION_NDK = $(shell $(SRC_PATH)build/ndk-version-check.sh $(NDKROOT))
87
- ifeq (Yes, $(USE_LOW_VERSION_NDK))
88
- USE_ANT = Yes
89
- include $(SRC_PATH)build/platform-android-r18b.mk
90
- else
91
- include $(SRC_PATH)build/platform-android.mk
92
- endif
93
- else
94
- include $(SRC_PATH)build/platform-$(OS).mk
95
- endif
96
-
97
- MODULE := $(LIBPREFIX)$(MODULE_NAME).$(SHAREDLIBSUFFIX)
98
-
99
- CFLAGS += -DGENERATED_VERSION_HEADER
100
- LDFLAGS +=
101
-
102
- ifeq (Yes, $(GCOV))
103
- CFLAGS += -fprofile-arcs -ftest-coverage
104
- LDFLAGS += -lgcov
105
- endif
106
-
107
- #### No user-serviceable parts below this line
108
- ifneq ($(V),Yes)
109
- QUIET_CXX = @printf "CXX\t$@\n";
110
- QUIET_CC = @printf "CC\t$@\n";
111
- QUIET_CCAS = @printf "CCAS\t$@\n";
112
- QUIET_ASM = @printf "ASM\t$@\n";
113
- QUIET_AR = @printf "AR\t$@\n";
114
- QUIET_RC = @printf "RC\t$@\n";
115
- QUIET = @
116
- endif
117
-
118
-
119
- INCLUDES += -I$(SRC_PATH)codec/api/wels -I$(SRC_PATH)codec/common/inc -Icodec/common/inc
120
-
121
- DECODER_INCLUDES += \
122
- -I$(SRC_PATH)codec/decoder/core/inc \
123
- -I$(SRC_PATH)codec/decoder/plus/inc
124
-
125
- ENCODER_INCLUDES += \
126
- -I$(SRC_PATH)codec/encoder/core/inc \
127
- -I$(SRC_PATH)codec/encoder/plus/inc \
128
- -I$(SRC_PATH)codec/processing/interface
129
-
130
- PROCESSING_INCLUDES += \
131
- -I$(SRC_PATH)codec/processing/interface \
132
- -I$(SRC_PATH)codec/processing/src/common \
133
- -I$(SRC_PATH)codec/processing/src/adaptivequantization \
134
- -I$(SRC_PATH)codec/processing/src/downsample \
135
- -I$(SRC_PATH)codec/processing/src/scrolldetection \
136
- -I$(SRC_PATH)codec/processing/src/vaacalc
137
-
138
- GTEST_INCLUDES += \
139
- -I$(SRC_PATH)gtest/googletest \
140
- -I$(SRC_PATH)gtest/googletest/include
141
-
142
- CODEC_UNITTEST_INCLUDES += \
143
- -I$(SRC_PATH)gtest/googletest/include \
144
- -I$(SRC_PATH)codec/common/inc \
145
- -I$(SRC_PATH)test
146
-
147
- CONSOLE_COMMON_INCLUDES += \
148
- -I$(SRC_PATH)codec/console/common/inc
149
-
150
- H264DEC_INCLUDES += $(DECODER_INCLUDES) $(CONSOLE_COMMON_INCLUDES) -I$(SRC_PATH)codec/console/dec/inc
151
- H264DEC_LDFLAGS = $(LINK_LOCAL_DIR) $(call LINK_LIB,decoder) $(call LINK_LIB,common) $(call LINK_LIB,console_common)
152
- H264DEC_DEPS = $(LIBPREFIX)decoder.$(LIBSUFFIX) $(LIBPREFIX)common.$(LIBSUFFIX) $(LIBPREFIX)console_common.$(LIBSUFFIX)
153
-
154
- H264ENC_INCLUDES += $(ENCODER_INCLUDES) $(CONSOLE_COMMON_INCLUDES) -I$(SRC_PATH)codec/console/enc/inc
155
- H264ENC_LDFLAGS = $(LINK_LOCAL_DIR) $(call LINK_LIB,encoder) $(call LINK_LIB,processing) $(call LINK_LIB,common) $(call LINK_LIB,console_common)
156
- H264ENC_DEPS = $(LIBPREFIX)encoder.$(LIBSUFFIX) $(LIBPREFIX)processing.$(LIBSUFFIX) $(LIBPREFIX)common.$(LIBSUFFIX) $(LIBPREFIX)console_common.$(LIBSUFFIX)
157
-
158
- CODEC_UNITTEST_LDFLAGS = $(LINK_LOCAL_DIR) $(call LINK_LIB,gtest) $(call LINK_LIB,decoder) $(call LINK_LIB,encoder) $(call LINK_LIB,processing) $(call LINK_LIB,common) $(CODEC_UNITTEST_LDFLAGS_SUFFIX)
159
- CODEC_UNITTEST_DEPS = $(LIBPREFIX)gtest.$(LIBSUFFIX) $(LIBPREFIX)decoder.$(LIBSUFFIX) $(LIBPREFIX)encoder.$(LIBSUFFIX) $(LIBPREFIX)processing.$(LIBSUFFIX) $(LIBPREFIX)common.$(LIBSUFFIX)
160
- DECODER_UNITTEST_INCLUDES += $(CODEC_UNITTEST_INCLUDES) $(DECODER_INCLUDES)
161
- ENCODER_UNITTEST_INCLUDES += $(CODEC_UNITTEST_INCLUDES) $(ENCODER_INCLUDES)
162
- PROCESSING_UNITTEST_INCLUDES += $(CODEC_UNITTEST_INCLUDES) $(PROCESSING_INCLUDES)
163
- API_TEST_INCLUDES += $(CODEC_UNITTEST_INCLUDES)
164
- COMMON_UNITTEST_INCLUDES += $(CODEC_UNITTEST_INCLUDES)
165
- MODULE_INCLUDES += -I$(SRC_PATH)gmp-api
166
-
167
- DECODER_UNITTEST_CFLAGS += $(CODEC_UNITTEST_CFLAGS)
168
- ENCODER_UNITTEST_CFLAGS += $(CODEC_UNITTEST_CFLAGS)
169
- PROCESSING_UNITTEST_CFLAGS += $(CODEC_UNITTEST_CFLAGS)
170
- API_TEST_CFLAGS += $(CODEC_UNITTEST_CFLAGS)
171
- COMMON_UNITTEST_CFLAGS += $(CODEC_UNITTEST_CFLAGS)
172
-
173
- .PHONY: test gtest-bootstrap clean $(PROJECT_NAME).pc $(PROJECT_NAME)-static.pc
174
-
175
- generate-version:
176
- $(QUIET)sh $(SRC_PATH)codec/common/generate_version.sh $(SRC_PATH)
177
-
178
- codec/decoder/plus/src/welsDecoderExt.$(OBJ): | generate-version
179
- codec/encoder/plus/src/welsEncoderExt.$(OBJ): | generate-version
180
-
181
- clean:
182
- ifeq (android,$(OS))
183
- clean: clean_Android
184
- endif
185
- $(QUIET)rm -f $(OBJS) $(OBJS:.$(OBJ)=.d) $(OBJS:.$(OBJ)=.obj) $(LIBRARIES) $(BINARIES) *.lib *.a *.dylib *.dll *.so *.so.* *.exe *.pdb *.exp *.pc *.res *.map $(SRC_PATH)codec/common/inc/version_gen.h
186
-
187
- gmp-bootstrap:
188
- if [ ! -d gmp-api ] ; then git clone https://github.com/mozilla/gmp-api gmp-api ; fi
189
- cd gmp-api && git fetch origin && git checkout $(GMP_API_BRANCH)
190
-
191
- gtest-bootstrap:
192
- if [ ! -d gtest ] ; then git clone https://github.com/google/googletest.git gtest && \
193
- cd gtest && git checkout -b $(GTEST_VER) $(GTEST_VER) ; fi
194
-
195
- ifeq ($(HAVE_GTEST),Yes)
196
-
197
- ifneq (android,$(OS))
198
- ifneq (ios,$(OS))
199
- ifneq (msvc-wp,$(OS))
200
- BUILD_UT_EXE=Yes
201
- endif
202
- endif
203
- endif
204
-
205
- test: codec_unittest$(EXEEXT)
206
- ifeq ($(BUILD_UT_EXE), Yes)
207
- ./codec_unittest
208
- endif
209
-
210
- else
211
- test:
212
- @echo "./gtest: No such file or directory."
213
- @echo "You do not have gtest. Run make gtest-bootstrap to get gtest"
214
- endif
215
-
216
- include $(SRC_PATH)codec/common/targets.mk
217
- include $(SRC_PATH)codec/decoder/targets.mk
218
- include $(SRC_PATH)codec/encoder/targets.mk
219
- include $(SRC_PATH)codec/processing/targets.mk
220
-
221
- ifeq ($(HAVE_GMP_API),Yes)
222
- include $(SRC_PATH)module/targets.mk
223
- endif
224
-
225
- ifneq (android, $(OS))
226
- ifneq (ios, $(OS))
227
- ifneq (msvc-wp, $(OS))
228
- include $(SRC_PATH)codec/console/dec/targets.mk
229
- include $(SRC_PATH)codec/console/enc/targets.mk
230
- include $(SRC_PATH)codec/console/common/targets.mk
231
- endif
232
- endif
233
- endif
234
-
235
- libraries: $(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX)
236
-
237
- # No point in building dylib for ios
238
- ifneq (ios, $(OS))
239
- libraries: $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIX)
240
- endif
241
-
242
- LIBRARIES += $(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX) $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIXFULLVER)
243
-
244
- $(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX): $(ENCODER_OBJS) $(DECODER_OBJS) $(PROCESSING_OBJS) $(COMMON_OBJS)
245
- $(QUIET)rm -f $@
246
- $(QUIET_AR)$(AR) $(AR_OPTS) $+
247
- ifeq (True, $(PROCESS_FILES))
248
- cp $@ $(LIBPREFIX)$(PROJECT_NAME)$(DEBUGSYMBOLS_TAG).$(LIBSUFFIX)
249
- $(STRIP) $(STRIP_FLAGS) $@ -o $@
250
- endif
251
-
252
- $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIXFULLVER): $(ENCODER_OBJS) $(DECODER_OBJS) $(PROCESSING_OBJS) $(COMMON_OBJS)
253
- $(QUIET)rm -f $@
254
- $(QUIET_CXX)$(CXX) $(SHARED) $(CXX_LINK_O) $+ $(LDFLAGS) $(SHLDFLAGS)
255
- ifeq (True, $(PROCESS_FILES))
256
- cp $@ $(LIBPREFIX)$(PROJECT_NAME)$(DEBUGSYMBOLS_TAG).$(SHAREDLIBSUFFIXFULLVER)
257
- $(STRIP) $(STRIP_FLAGS) $@ -o $@
258
- endif
259
-
260
- ifneq ($(SHAREDLIBSUFFIXFULLVER),$(SHAREDLIBSUFFIX))
261
- $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIX): $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIXFULLVER)
262
- $(QUIET)ln -sfn $+ $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIXMAJORVER)
263
- $(QUIET)ln -sfn $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIXMAJORVER) $@
264
- ifeq (True, $(PROCESS_FILES))
265
- $(QUIET)ln -sfn $(LIBPREFIX)$(PROJECT_NAME)$(DEBUGSYMBOLS_TAG).$(SHAREDLIBSUFFIXFULLVER) $(LIBPREFIX)$(PROJECT_NAME)$(DEBUGSYMBOLS_TAG).$(SHAREDLIBSUFFIXMAJORVER)
266
- $(QUIET)ln -sfn $(LIBPREFIX)$(PROJECT_NAME)$(DEBUGSYMBOLS_TAG).$(SHAREDLIBSUFFIXMAJORVER) $(LIBPREFIX)$(PROJECT_NAME)$(DEBUGSYMBOLS_TAG).$(SHAREDLIBSUFFIX)
267
- endif
268
- endif
269
-
270
- ifeq ($(HAVE_GMP_API),Yes)
271
- plugin: $(MODULE)
272
- LIBRARIES += $(LIBPREFIX)$(MODULE_NAME).$(SHAREDLIBSUFFIXFULLVER)
273
- else
274
- plugin:
275
- @echo "./gmp-api: No such file or directory."
276
- @echo "You do not have gmp-api. Run make gmp-bootstrap to get the gmp-api headers."
277
- endif
278
-
279
- echo-plugin-name:
280
- @echo $(MODULE)
281
-
282
- $(LIBPREFIX)$(MODULE_NAME).$(SHAREDLIBSUFFIXFULLVER): $(MODULE_OBJS) $(ENCODER_OBJS) $(DECODER_OBJS) $(PROCESSING_OBJS) $(COMMON_OBJS)
283
- $(QUIET)rm -f $@
284
- $(QUIET_CXX)$(CXX) $(SHARED) $(CXX_LINK_O) $+ $(LDFLAGS) $(SHLDFLAGS) $(MODULE_LDFLAGS)
285
- ifeq (True, $(PROCESS_FILES))
286
- cp $@ $(LIBPREFIX)$(MODULE_NAME)$(DEBUGSYMBOLS_TAG).$(SHAREDLIBSUFFIXFULLVER)
287
- $(STRIP) $(STRIP_FLAGS) $@ -o $@
288
- endif
289
-
290
- ifneq ($(SHAREDLIBSUFFIXFULLVER),$(SHAREDLIBSUFFIX))
291
- $(MODULE): $(LIBPREFIX)$(MODULE_NAME).$(SHAREDLIBSUFFIXFULLVER)
292
- $(QUIET)ln -sfn $+ $(LIBPREFIX)$(MODULE_NAME).$(SHAREDLIBSUFFIXMAJORVER)
293
- $(QUIET)ln -sfn $(LIBPREFIX)$(MODULE_NAME).$(SHAREDLIBSUFFIXMAJORVER) $@
294
- ifeq (True, $(PROCESS_FILES))
295
- $(QUIET)ln -sfn $(LIBPREFIX)$(MODULE_NAME)$(DEBUGSYMBOLS_TAG).$(SHAREDLIBSUFFIXFULLVER) $(LIBPREFIX)$(MODULE_NAME)$(DEBUGSYMBOLS_TAG).$(SHAREDLIBSUFFIXMAJORVER)
296
- $(QUIET)ln -sfn $(LIBPREFIX)$(MODULE_NAME)$(DEBUGSYMBOLS_TAG).$(SHAREDLIBSUFFIXMAJORVER) $(LIBPREFIX)$(MODULE_NAME)$(DEBUGSYMBOLS_TAG).$(SHAREDLIBSUFFIX)
297
- endif
298
- endif
299
-
300
- $(PROJECT_NAME).pc: $(PROJECT_NAME).pc.in
301
- @sed -e 's;@prefix@;$(PREFIX);' -e 's;@libdir@;$(PREFIX)/lib;' -e 's;@VERSION@;$(FULL_VERSION);' -e 's;@LIBS@;;' -e 's;@LIBS_PRIVATE@;$(STATIC_LDFLAGS);' < $< > $@
302
-
303
- $(PROJECT_NAME)-static.pc: $(PROJECT_NAME).pc.in
304
- @sed -e 's;@prefix@;$(PREFIX);' -e 's;@libdir@;$(PREFIX)/lib;' -e 's;@VERSION@;$(FULL_VERSION);' -e 's;@LIBS@;$(STATIC_LDFLAGS);' -e 's;@LIBS_PRIVATE@;;' < $< > $@
305
-
306
- install-headers:
307
- mkdir -p $(DESTDIR)$(PREFIX)/include/wels
308
- install -m 644 $(SRC_PATH)/codec/api/wels/codec*.h $(DESTDIR)$(PREFIX)/include/wels
309
-
310
- install-static-lib: $(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX) install-headers
311
- mkdir -p $(DESTDIR)$(PREFIX)/$(LIBDIR_NAME)
312
- install -m 644 $(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX) $(DESTDIR)$(PREFIX)/$(LIBDIR_NAME)
313
-
314
- install-static: install-static-lib $(PROJECT_NAME)-static.pc
315
- mkdir -p $(DESTDIR)$(PREFIX)/$(LIBDIR_NAME)/pkgconfig
316
- install -m 644 $(PROJECT_NAME)-static.pc $(DESTDIR)$(PREFIX)/$(LIBDIR_NAME)/pkgconfig/$(PROJECT_NAME).pc
317
-
318
- install-shared: $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIX) install-headers $(PROJECT_NAME).pc
319
- mkdir -p $(DESTDIR)$(SHAREDLIB_DIR)
320
- install -m 755 $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIXFULLVER) $(DESTDIR)$(SHAREDLIB_DIR)
321
- if [ "$(SHAREDLIBSUFFIXFULLVER)" != "$(SHAREDLIBSUFFIX)" ]; then \
322
- cp -a $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIXMAJORVER) $(DESTDIR)$(SHAREDLIB_DIR) ; \
323
- cp -a $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIX) $(DESTDIR)$(SHAREDLIB_DIR) ; \
324
- fi
325
- mkdir -p $(DESTDIR)$(PREFIX)/$(LIBDIR_NAME)/pkgconfig
326
- install -m 644 $(PROJECT_NAME).pc $(DESTDIR)$(PREFIX)/$(LIBDIR_NAME)/pkgconfig
327
- ifneq ($(EXTRA_LIBRARY),)
328
- install -m 644 $(EXTRA_LIBRARY) $(DESTDIR)$(PREFIX)/$(LIBDIR_NAME)
329
- endif
330
-
331
- install: install-static-lib install-shared
332
- @:
333
-
334
- ifneq ($(HAVE_GTEST),Yes)
335
- binaries:
336
- @:
337
- else
338
- include $(SRC_PATH)build/gtest-targets.mk
339
- include $(SRC_PATH)test/api/targets.mk
340
- include $(SRC_PATH)test/decoder/targets.mk
341
- include $(SRC_PATH)test/encoder/targets.mk
342
- include $(SRC_PATH)test/processing/targets.mk
343
- include $(SRC_PATH)test/common/targets.mk
344
-
345
- LIBRARIES += $(LIBPREFIX)ut.$(LIBSUFFIX)
346
- $(LIBPREFIX)ut.$(LIBSUFFIX): $(DECODER_UNITTEST_OBJS) $(ENCODER_UNITTEST_OBJS) $(PROCESSING_UNITTEST_OBJS) $(COMMON_UNITTEST_OBJS) $(API_TEST_OBJS)
347
- $(QUIET)rm -f $@
348
- $(QUIET_AR)$(AR) $(AR_OPTS) $+
349
-
350
-
351
- LIBRARIES +=$(LIBPREFIX)ut.$(SHAREDLIBSUFFIX)
352
- $(LIBPREFIX)ut.$(SHAREDLIBSUFFIX): $(DECODER_UNITTEST_OBJS) $(ENCODER_UNITTEST_OBJS) $(PROCESSING_UNITTEST_OBJS) $(API_TEST_OBJS) $(COMMON_UNITTEST_OBJS) $(CODEC_UNITTEST_DEPS)
353
- $(QUIET)rm -f $@
354
- $(QUIET_CXX)$(CXX) $(SHARED) $(CXX_LINK_O) $+ $(LDFLAGS) $(UTSHLDFLAGS) $(CODEC_UNITTEST_LDFLAGS)
355
-
356
- binaries: codec_unittest$(EXEEXT)
357
- BINARIES += codec_unittest$(EXEEXT)
358
-
359
- ifeq ($(BUILD_UT_EXE), Yes)
360
- # Build a normal command line executable
361
- codec_unittest$(EXEEXT): $(DECODER_UNITTEST_OBJS) $(ENCODER_UNITTEST_OBJS) $(PROCESSING_UNITTEST_OBJS) $(API_TEST_OBJS) $(COMMON_UNITTEST_OBJS) $(CODEC_UNITTEST_DEPS) | res
362
- $(QUIET)rm -f $@
363
- $(QUIET_CXX)$(CXX) $(CXX_LINK_O) $+ $(CODEC_UNITTEST_LDFLAGS) $(LDFLAGS)
364
-
365
- res:
366
- $(QUIET)if [ ! -e res ]; then ln -s $(SRC_PATH)res .; fi
367
- else
368
-
369
- # Build the unit test suite into a library that is included in a project file
370
- ifeq (ios,$(OS))
371
- codec_unittest$(EXEEXT): $(LIBPREFIX)ut.$(LIBSUFFIX) $(LIBPREFIX)gtest.$(LIBSUFFIX) $(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX)
372
- else
373
- codec_unittest$(EXEEXT): $(LIBPREFIX)ut.$(SHAREDLIBSUFFIX)
374
- endif
375
-
376
- ifeq (android,$(OS))
377
- ifeq (./,$(SRC_PATH))
378
- codec_unittest$(EXEEXT):
379
- ifeq ($(USE_ANT), Yes)
380
- cd ./test/build/android && $(NDKROOT)/ndk-build -B APP_ABI=$(APP_ABI) && android update project -t $(TARGET) -p . && ant debug
381
- else
382
- $(NDK_BUILD) -C test/build/android -B
383
- ./gradlew unittest:assembleDebug
384
- endif
385
-
386
- clean_Android: clean_Android_ut
387
- clean_Android_ut:
388
- ifeq ($(USE_ANT), Yes)
389
- -cd ./test/build/android && $(NDKROOT)/ndk-build APP_ABI=$(APP_ABI) clean && ant clean
390
- else
391
- -$(NDK_BUILD) -C test/build/android -B clean
392
- -./gradlew unittest:clean
393
- endif
394
-
395
- endif
396
- endif
397
-
398
- endif
399
- endif
400
-
401
- -include $(OBJS:.$(OBJ)=.d)
402
-
403
- OBJDIRS = $(sort $(dir $(OBJS)))
404
-
405
- $(OBJDIRS):
406
- $(QUIET)mkdir -p $@
407
-
408
- $(OBJS): | $(OBJDIRS)
@@ -1,197 +0,0 @@
1
- OpenH264
2
- ========
3
- OpenH264 is a codec library which supports H.264 encoding and decoding. It is suitable for use in real time applications such as WebRTC. See http://www.openh264.org/ for more details.
4
-
5
- Encoder Features
6
- ----------------
7
- - Constrained Baseline Profile up to Level 5.2 (Max frame size is 36864 macro-blocks)
8
- - Arbitrary resolution, not constrained to multiples of 16x16
9
- - Rate control with adaptive quantization, or constant quantization
10
- - Slice options: 1 slice per frame, N slices per frame, N macroblocks per slice, or N bytes per slice
11
- - Multiple threads automatically used for multiple slices
12
- - Temporal scalability up to 4 layers in a dyadic hierarchy
13
- - Simulcast AVC up to 4 resolutions from a single input
14
- - Spatial simulcast up to 4 resolutions from a single input
15
- - Long Term Reference (LTR) frames
16
- - Memory Management Control Operation (MMCO)
17
- - Reference picture list modification
18
- - Single reference frame for inter prediction
19
- - Multiple reference frames when using LTR and/or 3-4 temporal layers
20
- - Periodic and on-demand Instantaneous Decoder Refresh (IDR) frame insertion
21
- - Dynamic changes to bit rate, frame rate, and resolution
22
- - Annex B byte stream output
23
- - YUV 4:2:0 planar input
24
-
25
- Decoder Features
26
- ----------------
27
- - Constrained Baseline Profile up to Level 5.2 (Max frame size is 36864 macro-blocks)
28
- - Arbitrary resolution, not constrained to multiples of 16x16
29
- - Single thread for all slices
30
- - Long Term Reference (LTR) frames
31
- - Memory Management Control Operation (MMCO)
32
- - Reference picture list modification
33
- - Multiple reference frames when specified in Sequence Parameter Set (SPS)
34
- - Annex B byte stream input
35
- - YUV 4:2:0 planar output
36
-
37
- OS Support
38
- ----------
39
- - Windows 64-bit and 32-bit
40
- - Mac OS X 64-bit and 32-bit
41
- - Mac OS X ARM64
42
- - Linux 64-bit and 32-bit
43
- - Android 64-bit and 32-bit
44
- - iOS 64-bit and 32-bit
45
- - Windows Phone 32-bit
46
-
47
- Architectures verified to be working
48
- ----------
49
- - ppc64el
50
-
51
- Processor Support
52
- -----------------
53
- - Intel x86 optionally with MMX/SSE (no AVX yet, help is welcome)
54
- - ARMv7 optionally with NEON, AArch64 optionally with NEON
55
- - Any architecture using C/C++ fallback functions
56
-
57
- Building the Library
58
- --------------------
59
- NASM needed to be installed for assembly code: workable version 2.10.06 or above, NASM can be downloaded from http://www.nasm.us/.
60
- For Mac OSX 64-bit NASM needed to be below version 2.11.08 as NASM 2.11.08 will introduce error when using RIP-relative addresses in Mac OSX 64-bit
61
-
62
- To build the arm assembly for Windows Phone, gas-preprocessor is required. It can be downloaded from git://git.libav.org/gas-preprocessor.git
63
-
64
- For Android Builds
65
- ------------------
66
- To build for android platform, You need to install android sdk and ndk. You also need to export `**ANDROID_SDK**/tools` to PATH. On Linux, this can be done by
67
-
68
- export PATH=**ANDROID_SDK**/tools:$PATH
69
-
70
- The codec and demo can be built by
71
-
72
- make OS=android NDKROOT=**ANDROID_NDK** TARGET=**ANDROID_TARGET**
73
-
74
- Valid `**ANDROID_TARGET**` can be found in `**ANDROID_SDK**/platforms`, such as `android-12`.
75
- You can also set `ARCH`, `NDKLEVEL` according to your device and NDK version.
76
- `ARCH` specifies the architecture of android device. Currently `arm`, `arm64`, `x86` and `x86_64` are supported, the default is `arm`. (`mips` and `mips64` can also be used, but there's no specific optimization for those architectures.)
77
- `NDKLEVEL` specifies android api level, the default is 12. Available possibilities can be found in `**ANDROID_NDK**/platforms`, such as `android-21` (strip away the `android-` prefix).
78
-
79
- By default these commands build for the `armeabi-v7a` ABI. To build for the other android
80
- ABIs, add `ARCH=arm64`, `ARCH=x86`, `ARCH=x86_64`, `ARCH=mips` or `ARCH=mips64`.
81
- To build for the older `armeabi` ABI (which has armv5te as baseline), add `APP_ABI=armeabi` (`ARCH=arm` is implicit).
82
- To build for 64-bit ABI, such as `arm64`, explicitly set `NDKLEVEL` to 21 or higher.
83
-
84
- For iOS Builds
85
- --------------
86
- You can build the libraries and demo applications using xcode project files
87
- located in `codec/build/iOS/dec` and `codec/build/iOS/enc`.
88
-
89
- You can also build the libraries (but not the demo applications) using the
90
- make based build system from the command line. Build with
91
-
92
- make OS=ios ARCH=**ARCH**
93
-
94
- Valid values for `**ARCH**` are the normal iOS architecture names such as
95
- `armv7`, `armv7s`, `arm64`, and `i386` and `x86_64` for the simulator.
96
- Another settable iOS specific parameter
97
- is `SDK_MIN`, specifying the minimum deployment target for the built library.
98
- For other details on building using make on the command line, see
99
- 'For All Platforms' below.
100
-
101
- For Linux Builds
102
- --------------
103
-
104
- You can build the libraries (but not the demo applications) using the
105
- make based build system from the command line. Build with
106
-
107
- make OS=linux ARCH=**ARCH**
108
-
109
- You can set `ARCH` according to your linux device .
110
- `ARCH` specifies the architecture of the device. Currently `arm`, `arm64`, `x86` and `x86_64` are supported
111
-
112
- NOTICE:
113
- If your computer is x86 architecture, for build the libnary which be used on arm/aarch64 machine, you may need to use cross-compiler, for example:
114
- make OS=linux CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ ARCH=arm64
115
- or
116
- make OS=linux CC=arm-linux-gnueabi-gcc CXX=arm-linux-gnueabi-g++ ARCH=arm
117
-
118
-
119
- For Windows Builds
120
- ------------------
121
-
122
- "make" must be installed. It is recommended to install the Cygwin and "make" must be selected to be included in the installation. After the installation, please add the Cygwin bin path to your PATH.
123
-
124
- openh264/build/AutoBuildForWindows.bat is provided to help compile the libraries on Windows platform.
125
- Usage of the .bat script:
126
-
127
- `AutoBuildForWindows.bat Win32-Release-ASM` for x86 Release build
128
- `AutoBuildForWindows.bat Win64-Release-ASM` for x86_64 Release build
129
- `AutoBuildForWindows.bat ARM64-Release-ASM` for arm64 release build
130
- for more usage, please refer to the .bat script help.
131
-
132
- For All Platforms
133
- -------------------
134
-
135
- Using make
136
- ----------
137
-
138
- From the main project directory:
139
- - `make` for automatically detecting architecture and building accordingly
140
- - `make ARCH=i386` for x86 32-bit builds
141
- - `make ARCH=x86_64` for x86 64-bit builds
142
- - `make ARCH=arm64` for arm64 Mac 64-bit builds
143
- - `make V=No` for a silent build (not showing the actual compiler commands)
144
- - `make DEBUGSYMBOLS=True` for two libraries, one is normal libraries, another one is removed the debugging symbol table entries (those created by the -g option)
145
-
146
- The command line programs `h264enc` and `h264dec` will appear in the main project directory.
147
-
148
- A shell script to run the command-line apps is in `testbin/CmdLineExample.sh`
149
-
150
- Usage information can be found in `testbin/CmdLineReadMe`
151
-
152
- Using meson
153
- -----------
154
-
155
- Meson build definitions have been added, and are known to work on Linux
156
- and Windows, for x86 and x86 64-bit.
157
-
158
- See <http://mesonbuild.com/Installing.html> for instructions on how to
159
- install meson, then:
160
-
161
- ``` shell
162
- meson setup builddir
163
- ninja -C builddir
164
- ```
165
-
166
- Run the tests with:
167
-
168
- ``` shell
169
- meson test -C builddir -v
170
- ```
171
-
172
- Install with:
173
-
174
- ``` shell
175
- ninja -C builddir install
176
- ```
177
-
178
- Using the Source
179
- ----------------
180
- - `codec` - encoder, decoder, console (test app), build (makefile, vcproj)
181
- - `build` - scripts for Makefile build system
182
- - `test` - GTest unittest files
183
- - `testbin` - autobuild scripts, test app config files
184
- - `res` - yuv and bitstream test files
185
-
186
- Known Issues
187
- ------------
188
- See the issue tracker on https://github.com/cisco/openh264/issues
189
- - Encoder errors when resolution exceeds 3840x2160
190
- - Encoder errors when compressed frame size exceeds half uncompressed size
191
- - Decoder errors when compressed frame size exceeds 1MB
192
- - Encoder RC requires frame skipping to be enabled to hit the target bitrate,
193
- if frame skipping is disabled the target bitrate may be exceeded
194
-
195
- License
196
- -------
197
- BSD, see `LICENSE` file for details.