@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.
- package/package.json +1 -1
- package/_openh264install/include/wels/codec_api.h +0 -592
- package/_openh264install/include/wels/codec_app_def.h +0 -820
- package/_openh264install/include/wels/codec_def.h +0 -216
- package/_openh264install/include/wels/codec_ver.h +0 -15
- package/_openh264install/lib/libopenh264.a +0 -0
- package/_openh264install/lib/pkgconfig/openh264.pc +0 -10
- package/openh264/.reviewboardrc +0 -3
- package/openh264/.travis.yml +0 -42
- package/openh264/CODING_STYLE +0 -8
- package/openh264/CONTRIBUTORS +0 -55
- package/openh264/LICENSE +0 -23
- package/openh264/Makefile +0 -408
- package/openh264/README.md +0 -197
- package/openh264/RELEASES +0 -467
- package/openh264/SECURITY.md +0 -16
- package/openh264/autotest/codec_comparision/run_MultiCodecComparision.sh +0 -431
- package/openh264/autotest/performanceTest/android/run_AutoTest_android.sh +0 -180
- package/openh264/autotest/performanceTest/ios/fruitstrap +0 -0
- package/openh264/autotest/performanceTest/ios/iFileTransfer +0 -0
- package/openh264/autotest/performanceTest/ios/run_AutoTest_ios.sh +0 -193
- package/openh264/autotest/performanceTest/ios/uiascript.js +0 -19
- package/openh264/autotest/performanceTest/parsePerfData.sh +0 -107
- package/openh264/autotest/performanceTest/run_perfTest.sh +0 -122
- package/openh264/autotest/unitTest/android/run_AutoTest_android.sh +0 -112
- package/openh264/autotest/unitTest/ios/run_AutoTest_ios.sh +0 -167
- package/openh264/autotest/unitTest/run_ParseUTxml.sh +0 -70
- package/openh264/autotest/unitTest/run_unitTest.sh +0 -98
- package/openh264/build.gradle +0 -30
- package/openh264/code-coverage.sh +0 -6
- package/openh264/codec/api/meson.build +0 -1
- package/openh264/codec/api/wels/codec_api.h +0 -592
- package/openh264/codec/api/wels/codec_app_def.h +0 -820
- package/openh264/codec/api/wels/codec_def.h +0 -216
- package/openh264/codec/api/wels/codec_ver.h +0 -15
- package/openh264/codec/api/wels/meson.build +0 -9
- package/openh264/codec/common/arm/arm_arch_common_macro.S +0 -83
- package/openh264/codec/common/arm/copy_mb_neon.S +0 -161
- package/openh264/codec/common/arm/deblocking_neon.S +0 -857
- package/openh264/codec/common/arm/expand_picture_neon.S +0 -154
- package/openh264/codec/common/arm/intra_pred_common_neon.S +0 -82
- package/openh264/codec/common/arm/mc_neon.S +0 -2283
- package/openh264/codec/common/arm64/arm_aarch64_common.h +0 -85
- package/openh264/codec/common/arm64/arm_arch64_common_macro.S +0 -79
- package/openh264/codec/common/arm64/copy_mb_aarch64_neon.S +0 -202
- package/openh264/codec/common/arm64/deblocking_aarch64_neon.S +0 -852
- package/openh264/codec/common/arm64/expand_picture_aarch64_neon.S +0 -150
- package/openh264/codec/common/arm64/intra_pred_common_aarch64_neon.S +0 -58
- package/openh264/codec/common/arm64/mc_aarch64_neon.S +0 -2614
- package/openh264/codec/common/generate_version.sh +0 -28
- package/openh264/codec/common/inc/WelsList.h +0 -287
- package/openh264/codec/common/inc/WelsLock.h +0 -97
- package/openh264/codec/common/inc/WelsTask.h +0 -75
- package/openh264/codec/common/inc/WelsTaskThread.h +0 -83
- package/openh264/codec/common/inc/WelsThread.h +0 -106
- package/openh264/codec/common/inc/WelsThreadLib.h +0 -151
- package/openh264/codec/common/inc/WelsThreadPool.h +0 -124
- package/openh264/codec/common/inc/asmdefs_mmi.h +0 -345
- package/openh264/codec/common/inc/copy_mb.h +0 -103
- package/openh264/codec/common/inc/cpu.h +0 -81
- package/openh264/codec/common/inc/cpu_core.h +0 -103
- package/openh264/codec/common/inc/crt_util_safe_x.h +0 -104
- package/openh264/codec/common/inc/deblocking_common.h +0 -124
- package/openh264/codec/common/inc/expand_pic.h +0 -107
- package/openh264/codec/common/inc/golomb_common.h +0 -166
- package/openh264/codec/common/inc/intra_pred_common.h +0 -86
- package/openh264/codec/common/inc/loongson_intrinsics.h +0 -1919
- package/openh264/codec/common/inc/ls_defines.h +0 -130
- package/openh264/codec/common/inc/macros.h +0 -329
- package/openh264/codec/common/inc/mc.h +0 -407
- package/openh264/codec/common/inc/measure_time.h +0 -88
- package/openh264/codec/common/inc/memory_align.h +0 -116
- package/openh264/codec/common/inc/msa_macros.h +0 -2393
- package/openh264/codec/common/inc/sad_common.h +0 -139
- package/openh264/codec/common/inc/typedefs.h +0 -86
- package/openh264/codec/common/inc/utils.h +0 -95
- package/openh264/codec/common/inc/version.h +0 -10
- package/openh264/codec/common/inc/version_gen.h.template +0 -6
- package/openh264/codec/common/inc/welsCodecTrace.h +0 -64
- package/openh264/codec/common/inc/wels_common_defs.h +0 -373
- package/openh264/codec/common/inc/wels_const_common.h +0 -63
- package/openh264/codec/common/loongarch/copy_mb_lsx.c +0 -194
- package/openh264/codec/common/loongarch/deblock_lsx.c +0 -1489
- package/openh264/codec/common/loongarch/intra_pred_com_lasx.c +0 -112
- package/openh264/codec/common/loongarch/intra_pred_com_lsx.c +0 -91
- package/openh264/codec/common/loongarch/mc_chroma_lsx.c +0 -192
- package/openh264/codec/common/loongarch/mc_horver_lsx.c +0 -654
- package/openh264/codec/common/loongarch/satd_sad_lasx.c +0 -568
- package/openh264/codec/common/meson.build +0 -84
- package/openh264/codec/common/mips/copy_mb_mmi.c +0 -477
- package/openh264/codec/common/mips/copy_mb_msa.c +0 -80
- package/openh264/codec/common/mips/deblock_mmi.c +0 -2826
- package/openh264/codec/common/mips/deblock_msa.c +0 -1024
- package/openh264/codec/common/mips/expand_picture_mmi.c +0 -673
- package/openh264/codec/common/mips/intra_pred_com_mmi.c +0 -548
- package/openh264/codec/common/mips/satd_sad_mmi.c +0 -2154
- package/openh264/codec/common/targets.mk +0 -136
- package/openh264/codec/common/x86/asm_inc.asm +0 -743
- package/openh264/codec/common/x86/cpuid.asm +0 -263
- package/openh264/codec/common/x86/dct.asm +0 -1036
- package/openh264/codec/common/x86/deblock.asm +0 -848
- package/openh264/codec/common/x86/expand_picture.asm +0 -728
- package/openh264/codec/common/x86/intra_pred_com.asm +0 -117
- package/openh264/codec/common/x86/mb_copy.asm +0 -615
- package/openh264/codec/common/x86/mc_chroma.asm +0 -313
- package/openh264/codec/common/x86/mc_luma.asm +0 -4490
- package/openh264/codec/common/x86/satd_sad.asm +0 -2734
- package/openh264/codec/common/x86/vaa.asm +0 -411
- package/openh264/codec/console/common/inc/read_config.h +0 -68
- package/openh264/codec/console/common/meson.build +0 -12
- package/openh264/codec/console/common/targets.mk +0 -20
- package/openh264/codec/console/dec/inc/d3d9_utils.h +0 -148
- package/openh264/codec/console/dec/meson.build +0 -15
- package/openh264/codec/console/dec/targets.mk +0 -20
- package/openh264/codec/console/enc/meson.build +0 -9
- package/openh264/codec/console/enc/targets.mk +0 -19
- package/openh264/codec/console/meson.build +0 -3
- package/openh264/codec/decoder/core/arm/block_add_neon.S +0 -129
- package/openh264/codec/decoder/core/arm/intra_pred_neon.S +0 -635
- package/openh264/codec/decoder/core/arm64/block_add_aarch64_neon.S +0 -131
- package/openh264/codec/decoder/core/arm64/intra_pred_aarch64_neon.S +0 -524
- package/openh264/codec/decoder/core/inc/au_parser.h +0 -199
- package/openh264/codec/decoder/core/inc/bit_stream.h +0 -62
- package/openh264/codec/decoder/core/inc/cabac_decoder.h +0 -111
- package/openh264/codec/decoder/core/inc/deblocking.h +0 -118
- package/openh264/codec/decoder/core/inc/dec_frame.h +0 -156
- package/openh264/codec/decoder/core/inc/dec_golomb.h +0 -344
- package/openh264/codec/decoder/core/inc/decode_mb_aux.h +0 -83
- package/openh264/codec/decoder/core/inc/decode_slice.h +0 -104
- package/openh264/codec/decoder/core/inc/decoder.h +0 -186
- package/openh264/codec/decoder/core/inc/decoder_context.h +0 -590
- package/openh264/codec/decoder/core/inc/decoder_core.h +0 -206
- package/openh264/codec/decoder/core/inc/error_code.h +0 -222
- package/openh264/codec/decoder/core/inc/error_concealment.h +0 -68
- package/openh264/codec/decoder/core/inc/fmo.h +0 -114
- package/openh264/codec/decoder/core/inc/get_intra_predictor.h +0 -191
- package/openh264/codec/decoder/core/inc/manage_dec_ref.h +0 -62
- package/openh264/codec/decoder/core/inc/mb_cache.h +0 -80
- package/openh264/codec/decoder/core/inc/memmgr_nal_unit.h +0 -66
- package/openh264/codec/decoder/core/inc/mv_pred.h +0 -195
- package/openh264/codec/decoder/core/inc/nal_prefix.h +0 -56
- package/openh264/codec/decoder/core/inc/nalu.h +0 -79
- package/openh264/codec/decoder/core/inc/parameter_sets.h +0 -217
- package/openh264/codec/decoder/core/inc/parse_mb_syn_cabac.h +0 -89
- package/openh264/codec/decoder/core/inc/parse_mb_syn_cavlc.h +0 -137
- package/openh264/codec/decoder/core/inc/pic_queue.h +0 -62
- package/openh264/codec/decoder/core/inc/picture.h +0 -112
- package/openh264/codec/decoder/core/inc/rec_mb.h +0 -104
- package/openh264/codec/decoder/core/inc/slice.h +0 -208
- package/openh264/codec/decoder/core/inc/vlc_decoder.h +0 -177
- package/openh264/codec/decoder/core/inc/wels_common_basis.h +0 -317
- package/openh264/codec/decoder/core/inc/wels_const.h +0 -65
- package/openh264/codec/decoder/core/inc/wels_decoder_thread.h +0 -170
- package/openh264/codec/decoder/core/loongarch/mb_aux_lsx.c +0 -296
- package/openh264/codec/decoder/core/mips/dct_mmi.c +0 -786
- package/openh264/codec/decoder/core/x86/dct.asm +0 -72
- package/openh264/codec/decoder/core/x86/intra_pred.asm +0 -1456
- package/openh264/codec/decoder/meson.build +0 -69
- package/openh264/codec/decoder/plus/inc/welsDecoderExt.h +0 -170
- package/openh264/codec/decoder/targets.mk +0 -115
- package/openh264/codec/encoder/core/arm/intra_pred_neon.S +0 -589
- package/openh264/codec/encoder/core/arm/intra_pred_sad_3_opt_neon.S +0 -735
- package/openh264/codec/encoder/core/arm/memory_neon.S +0 -62
- package/openh264/codec/encoder/core/arm/pixel_neon.S +0 -882
- package/openh264/codec/encoder/core/arm/reconstruct_neon.S +0 -903
- package/openh264/codec/encoder/core/arm/svc_motion_estimation.S +0 -366
- package/openh264/codec/encoder/core/arm64/intra_pred_aarch64_neon.S +0 -505
- package/openh264/codec/encoder/core/arm64/intra_pred_sad_3_opt_aarch64_neon.S +0 -611
- package/openh264/codec/encoder/core/arm64/memory_aarch64_neon.S +0 -63
- package/openh264/codec/encoder/core/arm64/pixel_aarch64_neon.S +0 -621
- package/openh264/codec/encoder/core/arm64/reconstruct_aarch64_neon.S +0 -717
- package/openh264/codec/encoder/core/arm64/svc_motion_estimation_aarch64_neon.S +0 -350
- package/openh264/codec/encoder/core/inc/as264_common.h +0 -138
- package/openh264/codec/encoder/core/inc/au_set.h +0 -152
- package/openh264/codec/encoder/core/inc/deblocking.h +0 -92
- package/openh264/codec/encoder/core/inc/decode_mb_aux.h +0 -112
- package/openh264/codec/encoder/core/inc/dq_map.h +0 -58
- package/openh264/codec/encoder/core/inc/encode_mb_aux.h +0 -199
- package/openh264/codec/encoder/core/inc/encoder.h +0 -148
- package/openh264/codec/encoder/core/inc/encoder_context.h +0 -240
- package/openh264/codec/encoder/core/inc/extern.h +0 -124
- package/openh264/codec/encoder/core/inc/get_intra_predictor.h +0 -186
- package/openh264/codec/encoder/core/inc/mb_cache.h +0 -141
- package/openh264/codec/encoder/core/inc/md.h +0 -181
- package/openh264/codec/encoder/core/inc/mt_defs.h +0 -91
- package/openh264/codec/encoder/core/inc/mv_pred.h +0 -191
- package/openh264/codec/encoder/core/inc/nal_encap.h +0 -143
- package/openh264/codec/encoder/core/inc/param_svc.h +0 -576
- package/openh264/codec/encoder/core/inc/parameter_sets.h +0 -181
- package/openh264/codec/encoder/core/inc/paraset_strategy.h +0 -310
- package/openh264/codec/encoder/core/inc/picture.h +0 -137
- package/openh264/codec/encoder/core/inc/picture_handle.h +0 -66
- package/openh264/codec/encoder/core/inc/rc.h +0 -284
- package/openh264/codec/encoder/core/inc/ref_list_mgr_svc.h +0 -148
- package/openh264/codec/encoder/core/inc/sample.h +0 -154
- package/openh264/codec/encoder/core/inc/set_mb_syn_cabac.h +0 -127
- package/openh264/codec/encoder/core/inc/set_mb_syn_cavlc.h +0 -92
- package/openh264/codec/encoder/core/inc/slice.h +0 -212
- package/openh264/codec/encoder/core/inc/slice_multi_threading.h +0 -97
- package/openh264/codec/encoder/core/inc/stat.h +0 -102
- package/openh264/codec/encoder/core/inc/svc_base_layer_md.h +0 -102
- package/openh264/codec/encoder/core/inc/svc_enc_frame.h +0 -136
- package/openh264/codec/encoder/core/inc/svc_enc_golomb.h +0 -123
- package/openh264/codec/encoder/core/inc/svc_enc_macroblock.h +0 -82
- package/openh264/codec/encoder/core/inc/svc_enc_slice_segment.h +0 -212
- package/openh264/codec/encoder/core/inc/svc_encode_mb.h +0 -63
- package/openh264/codec/encoder/core/inc/svc_encode_slice.h +0 -184
- package/openh264/codec/encoder/core/inc/svc_mode_decision.h +0 -94
- package/openh264/codec/encoder/core/inc/svc_motion_estimate.h +0 -369
- package/openh264/codec/encoder/core/inc/svc_set_mb_syn.h +0 -70
- package/openh264/codec/encoder/core/inc/svc_set_mb_syn_cavlc.h +0 -67
- package/openh264/codec/encoder/core/inc/vlc_encoder.h +0 -92
- package/openh264/codec/encoder/core/inc/wels_common_basis.h +0 -160
- package/openh264/codec/encoder/core/inc/wels_const.h +0 -174
- package/openh264/codec/encoder/core/inc/wels_func_ptr_def.h +0 -300
- package/openh264/codec/encoder/core/inc/wels_preprocess.h +0 -251
- package/openh264/codec/encoder/core/inc/wels_task_base.h +0 -79
- package/openh264/codec/encoder/core/inc/wels_task_encoder.h +0 -142
- package/openh264/codec/encoder/core/inc/wels_task_management.h +0 -135
- package/openh264/codec/encoder/core/inc/wels_transpose_matrix.h +0 -58
- package/openh264/codec/encoder/core/loongarch/dct_lasx.c +0 -452
- package/openh264/codec/encoder/core/loongarch/get_intra_predictor_lsx.c +0 -166
- package/openh264/codec/encoder/core/loongarch/quant_lsx.c +0 -153
- package/openh264/codec/encoder/core/loongarch/sample_lasx.c +0 -87
- package/openh264/codec/encoder/core/loongarch/svc_motion_estimate_lsx.c +0 -104
- package/openh264/codec/encoder/core/mips/dct_mmi.c +0 -529
- package/openh264/codec/encoder/core/mips/quant_mmi.c +0 -553
- package/openh264/codec/encoder/core/mips/score_mmi.c +0 -324
- package/openh264/codec/encoder/core/x86/coeff.asm +0 -695
- package/openh264/codec/encoder/core/x86/dct.asm +0 -108
- package/openh264/codec/encoder/core/x86/intra_pred.asm +0 -1129
- package/openh264/codec/encoder/core/x86/matrix_transpose.asm +0 -395
- package/openh264/codec/encoder/core/x86/memzero.asm +0 -132
- package/openh264/codec/encoder/core/x86/quant.asm +0 -507
- package/openh264/codec/encoder/core/x86/sample_sc.asm +0 -1829
- package/openh264/codec/encoder/core/x86/score.asm +0 -363
- package/openh264/codec/encoder/meson.build +0 -98
- package/openh264/codec/encoder/plus/inc/welsEncoderExt.h +0 -129
- package/openh264/codec/encoder/targets.mk +0 -146
- package/openh264/codec/meson.build +0 -9
- package/openh264/codec/processing/interface/IWelsVP.h +0 -310
- package/openh264/codec/processing/meson.build +0 -71
- package/openh264/codec/processing/targets.mk +0 -117
- package/openh264/docs/doxygen/Doxyfile +0 -1865
- package/openh264/docs/doxygen/Home.rest +0 -25
- package/openh264/docs/doxygen/ISVCDecoder.rest +0 -19
- package/openh264/docs/doxygen/ISVCEncoder.rest +0 -16
- package/openh264/docs/doxygen/UsageExampleForDecoder.rest +0 -10
- package/openh264/docs/doxygen/UsageExampleForEncoder.rest +0 -15
- package/openh264/docs/doxygen2rst.py +0 -619
- package/openh264/gmpopenh264.info +0 -4
- package/openh264/gradlew +0 -172
- package/openh264/meson.build +0 -218
- package/openh264/meson_options.txt +0 -1
- package/openh264/module/RefCounted.h +0 -141
- package/openh264/module/gmp-openh264.cpp +0 -1196
- package/openh264/module/targets.mk +0 -14
- package/openh264/module/task_utils.h +0 -38
- package/openh264/module/task_utils.py +0 -207
- package/openh264/module/task_utils_generated.h +0 -2087
- package/openh264/openh264.def +0 -7
- package/openh264/openh264.pc.in +0 -10
- package/openh264/openh264.rc +0 -61
- package/openh264/openh264.rc.template +0 -61
- package/openh264/res/Adobe_PDF_sample_a_1024x768_50Frms.264 +0 -0
- package/openh264/res/BA1_FT_C.264 +0 -0
- package/openh264/res/BA1_Sony_D.jsv +0 -0
- package/openh264/res/BAMQ1_JVC_C.264 +0 -0
- package/openh264/res/BAMQ2_JVC_C.264 +0 -0
- package/openh264/res/BANM_MW_D.264 +0 -0
- package/openh264/res/BASQP1_Sony_C.jsv +0 -0
- package/openh264/res/BA_MW_D.264 +0 -0
- package/openh264/res/BA_MW_D_IDR_LOST.264 +0 -0
- package/openh264/res/BA_MW_D_P_LOST.264 +0 -0
- package/openh264/res/CI1_FT_B.264 +0 -0
- package/openh264/res/CI_MW_D.264 +0 -0
- package/openh264/res/CVFC1_Sony_C.jsv +0 -0
- package/openh264/res/CVPCMNL1_SVA_C.264 +0 -0
- package/openh264/res/CiscoVT2people_160x96_6fps.yuv +0 -1
- package/openh264/res/CiscoVT2people_320x192_12fps.yuv +0 -1
- package/openh264/res/Cisco_Absolute_Power_1280x720_30fps.yuv +0 -3607
- package/openh264/res/Cisco_Adobe_PDF_sample_a_1024x768_CAVLC_Bframe_9.264 +0 -0
- package/openh264/res/Cisco_Men_whisper_640x320_CABAC_Bframe_9.264 +0 -0
- package/openh264/res/Cisco_Men_whisper_640x320_CAVLC_Bframe_9.264 +0 -0
- package/openh264/res/Error_I_P.264 +0 -0
- package/openh264/res/LS_SVA_D.264 +0 -0
- package/openh264/res/MIDR_MW_D.264 +0 -0
- package/openh264/res/MPS_MW_A.264 +0 -0
- package/openh264/res/MR1_BT_A.h264 +0 -0
- package/openh264/res/MR1_MW_A.264 +0 -0
- package/openh264/res/MR2_MW_A.264 +0 -0
- package/openh264/res/MR2_TANDBERG_E.264 +0 -0
- package/openh264/res/NL1_Sony_D.jsv +0 -0
- package/openh264/res/NLMQ1_JVC_C.264 +0 -0
- package/openh264/res/NLMQ2_JVC_C.264 +0 -0
- package/openh264/res/NRF_MW_E.264 +0 -0
- package/openh264/res/QCIF_2P_I_allIPCM.264 +0 -0
- package/openh264/res/SVA_BA1_B.264 +0 -0
- package/openh264/res/SVA_BA2_D.264 +0 -0
- package/openh264/res/SVA_Base_B.264 +0 -0
- package/openh264/res/SVA_CL1_E.264 +0 -0
- package/openh264/res/SVA_FM1_E.264 +0 -0
- package/openh264/res/SVA_NL1_B.264 +0 -0
- package/openh264/res/SVA_NL2_E.264 +0 -0
- package/openh264/res/SarVui.264 +0 -0
- package/openh264/res/Static.264 +0 -0
- package/openh264/res/Static_152_100.yuv +0 -1
- package/openh264/res/VID_1280x544_cabac_temporal_direct.264 +0 -0
- package/openh264/res/VID_1280x544_cavlc_temporal_direct.264 +0 -0
- package/openh264/res/VID_1280x720_cabac_temporal_direct.264 +0 -0
- package/openh264/res/VID_1280x720_cavlc_temporal_direct.264 +0 -0
- package/openh264/res/VID_1920x1080_cabac_temporal_direct.264 +0 -0
- package/openh264/res/VID_1920x1080_cavlc_temporal_direct.264 +0 -0
- package/openh264/res/Zhling_1280x720.264 +0 -0
- package/openh264/res/jm_1080p_allslice.264 +0 -0
- package/openh264/res/sps_subsetsps_bothVUI.264 +0 -0
- package/openh264/res/test_cif_I_CABAC_PCM.264 +0 -0
- package/openh264/res/test_cif_I_CABAC_slice.264 +0 -0
- package/openh264/res/test_cif_P_CABAC_slice.264 +0 -0
- package/openh264/res/test_qcif_cabac.264 +0 -0
- package/openh264/res/test_scalinglist_jm.264 +0 -0
- package/openh264/res/test_vd_1d.264 +0 -0
- package/openh264/res/test_vd_rc.264 +0 -0
- package/openh264/run_Test.sh +0 -91
- package/openh264/settings.gradle +0 -4
- package/openh264/subprojects/gtest.wrap +0 -10
- package/openh264/testbin/AutoBuild_Windows_VS2008.bat +0 -59
- package/openh264/testbin/CmdLineExample.sh +0 -7
- package/openh264/testbin/CmdLineReadMe +0 -22
- package/openh264/testbin/layer2.cfg +0 -37
- package/openh264/testbin/layer2_arbitrary_res.cfg +0 -37
- package/openh264/testbin/layer2_vd.cfg +0 -38
- package/openh264/testbin/layer2_vd_rc.cfg +0 -38
- package/openh264/testbin/welsenc.cfg +0 -71
- package/openh264/testbin/welsenc_arbitrary_res.cfg +0 -70
- package/openh264/testbin/welsenc_ios.cfg +0 -71
- package/openh264/testbin/welsenc_vd_1d.cfg +0 -70
- package/openh264/testbin/welsenc_vd_rc.cfg +0 -69
- package/openh264/ut.def +0 -2
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* \copy
|
|
3
|
-
* Copyright (c) 2009-2013, Cisco Systems
|
|
4
|
-
* All rights reserved.
|
|
5
|
-
*
|
|
6
|
-
* Redistribution and use in source and binary forms, with or without
|
|
7
|
-
* modification, are permitted provided that the following conditions
|
|
8
|
-
* are met:
|
|
9
|
-
*
|
|
10
|
-
* * Redistributions of source code must retain the above copyright
|
|
11
|
-
* notice, this list of conditions and the following disclaimer.
|
|
12
|
-
*
|
|
13
|
-
* * Redistributions in binary form must reproduce the above copyright
|
|
14
|
-
* notice, this list of conditions and the following disclaimer in
|
|
15
|
-
* the documentation and/or other materials provided with the
|
|
16
|
-
* distribution.
|
|
17
|
-
*
|
|
18
|
-
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
19
|
-
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
20
|
-
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
21
|
-
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
22
|
-
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
23
|
-
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
24
|
-
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
25
|
-
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
26
|
-
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
27
|
-
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
28
|
-
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
29
|
-
* POSSIBILITY OF SUCH DAMAGE.
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
* \file WelsThreadLib.h
|
|
33
|
-
*
|
|
34
|
-
* \brief Interfaces introduced in thread programming
|
|
35
|
-
*
|
|
36
|
-
* \date 11/17/2009 Created
|
|
37
|
-
*
|
|
38
|
-
*************************************************************************************
|
|
39
|
-
*/
|
|
40
|
-
|
|
41
|
-
#ifndef _WELS_THREAD_API_H_
|
|
42
|
-
#define _WELS_THREAD_API_H_
|
|
43
|
-
|
|
44
|
-
#include "typedefs.h"
|
|
45
|
-
|
|
46
|
-
#ifdef __cplusplus
|
|
47
|
-
extern "C" {
|
|
48
|
-
#endif
|
|
49
|
-
|
|
50
|
-
#if defined(_WIN32) || defined(__CYGWIN__)
|
|
51
|
-
|
|
52
|
-
#include <windows.h>
|
|
53
|
-
|
|
54
|
-
typedef HANDLE WELS_THREAD_HANDLE;
|
|
55
|
-
typedef LPTHREAD_START_ROUTINE LPWELS_THREAD_ROUTINE;
|
|
56
|
-
|
|
57
|
-
typedef CRITICAL_SECTION WELS_MUTEX;
|
|
58
|
-
typedef HANDLE WELS_EVENT;
|
|
59
|
-
|
|
60
|
-
#define WELS_THREAD_ROUTINE_TYPE DWORD WINAPI
|
|
61
|
-
#define WELS_THREAD_ROUTINE_RETURN(rc) return (DWORD)rc;
|
|
62
|
-
|
|
63
|
-
#ifdef WINAPI_FAMILY
|
|
64
|
-
#if !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
|
65
|
-
#define WP80
|
|
66
|
-
|
|
67
|
-
#define InitializeCriticalSection(x) InitializeCriticalSectionEx(x, 0, 0)
|
|
68
|
-
#define GetSystemInfo(x) GetNativeSystemInfo(x)
|
|
69
|
-
#define CreateEvent(attr, reset, init, name) CreateEventEx(attr, name, ((reset) ? CREATE_EVENT_MANUAL_RESET : 0) | ((init) ? CREATE_EVENT_INITIAL_SET : 0), EVENT_ALL_ACCESS)
|
|
70
|
-
#define CreateSemaphore(a, b, c, d) CreateSemaphoreEx(a, b, c, d, 0, SEMAPHORE_ALL_ACCESS)
|
|
71
|
-
#define WaitForSingleObject(a, b) WaitForSingleObjectEx(a, b, FALSE)
|
|
72
|
-
#define WaitForMultipleObjects(a, b, c, d) WaitForMultipleObjectsEx(a, b, c, d, FALSE)
|
|
73
|
-
#endif
|
|
74
|
-
#endif
|
|
75
|
-
|
|
76
|
-
#else // NON-WINDOWS
|
|
77
|
-
|
|
78
|
-
#include <stdlib.h>
|
|
79
|
-
#include <unistd.h>
|
|
80
|
-
#include <string.h>
|
|
81
|
-
#include <pthread.h>
|
|
82
|
-
#include <semaphore.h>
|
|
83
|
-
#include <signal.h>
|
|
84
|
-
#include <errno.h>
|
|
85
|
-
#include <time.h>
|
|
86
|
-
#include <sys/time.h>
|
|
87
|
-
|
|
88
|
-
#include <sys/stat.h>
|
|
89
|
-
#include <fcntl.h>
|
|
90
|
-
|
|
91
|
-
typedef pthread_t WELS_THREAD_HANDLE;
|
|
92
|
-
typedef void* (*LPWELS_THREAD_ROUTINE) (void*);
|
|
93
|
-
|
|
94
|
-
typedef pthread_mutex_t WELS_MUTEX;
|
|
95
|
-
|
|
96
|
-
#ifdef __APPLE__
|
|
97
|
-
typedef pthread_cond_t WELS_EVENT;
|
|
98
|
-
#else
|
|
99
|
-
typedef sem_t* WELS_EVENT;
|
|
100
|
-
#endif
|
|
101
|
-
|
|
102
|
-
#define WELS_THREAD_ROUTINE_TYPE void *
|
|
103
|
-
#define WELS_THREAD_ROUTINE_RETURN(rc) return (void*)(intptr_t)rc;
|
|
104
|
-
|
|
105
|
-
#endif//_WIN32
|
|
106
|
-
|
|
107
|
-
typedef int32_t WELS_THREAD_ERROR_CODE;
|
|
108
|
-
typedef int32_t WELS_THREAD_ATTR;
|
|
109
|
-
|
|
110
|
-
typedef struct _WelsLogicalProcessorInfo {
|
|
111
|
-
int32_t ProcessorCount;
|
|
112
|
-
} WelsLogicalProcessInfo;
|
|
113
|
-
|
|
114
|
-
#define WELS_THREAD_ERROR_OK 0
|
|
115
|
-
#define WELS_THREAD_ERROR_GENERAL ((uint32_t)(-1))
|
|
116
|
-
#define WELS_THREAD_ERROR_WAIT_OBJECT_0 0
|
|
117
|
-
#define WELS_THREAD_ERROR_WAIT_TIMEOUT ((uint32_t)0x00000102L)
|
|
118
|
-
#define WELS_THREAD_ERROR_WAIT_FAILED WELS_THREAD_ERROR_GENERAL
|
|
119
|
-
|
|
120
|
-
WELS_THREAD_ERROR_CODE WelsMutexInit (WELS_MUTEX* mutex);
|
|
121
|
-
WELS_THREAD_ERROR_CODE WelsMutexLock (WELS_MUTEX* mutex);
|
|
122
|
-
WELS_THREAD_ERROR_CODE WelsMutexUnlock (WELS_MUTEX* mutex);
|
|
123
|
-
WELS_THREAD_ERROR_CODE WelsMutexDestroy (WELS_MUTEX* mutex);
|
|
124
|
-
|
|
125
|
-
WELS_THREAD_ERROR_CODE WelsEventOpen (WELS_EVENT* p_event, const char* event_name = NULL);
|
|
126
|
-
WELS_THREAD_ERROR_CODE WelsEventClose (WELS_EVENT* event, const char* event_name = NULL);
|
|
127
|
-
|
|
128
|
-
WELS_THREAD_ERROR_CODE WelsEventSignal (WELS_EVENT* event,WELS_MUTEX *pMutex, int* iCondition);
|
|
129
|
-
WELS_THREAD_ERROR_CODE WelsEventWait (WELS_EVENT* event,WELS_MUTEX *pMutex, int& iCondition);
|
|
130
|
-
WELS_THREAD_ERROR_CODE WelsEventWaitWithTimeOut (WELS_EVENT* event, uint32_t dwMilliseconds,WELS_MUTEX *pMutex = NULL);
|
|
131
|
-
WELS_THREAD_ERROR_CODE WelsMultipleEventsWaitSingleBlocking (uint32_t nCount, WELS_EVENT* event_list,
|
|
132
|
-
WELS_EVENT* master_event = NULL,WELS_MUTEX *pMutex = NULL);
|
|
133
|
-
|
|
134
|
-
WELS_THREAD_ERROR_CODE WelsThreadCreate (WELS_THREAD_HANDLE* thread, LPWELS_THREAD_ROUTINE routine,
|
|
135
|
-
void* arg, WELS_THREAD_ATTR attr);
|
|
136
|
-
|
|
137
|
-
WELS_THREAD_ERROR_CODE WelsThreadSetName (const char* thread_name);
|
|
138
|
-
|
|
139
|
-
WELS_THREAD_ERROR_CODE WelsThreadJoin (WELS_THREAD_HANDLE thread);
|
|
140
|
-
|
|
141
|
-
WELS_THREAD_HANDLE WelsThreadSelf();
|
|
142
|
-
|
|
143
|
-
WELS_THREAD_ERROR_CODE WelsQueryLogicalProcessInfo (WelsLogicalProcessInfo* pInfo);
|
|
144
|
-
|
|
145
|
-
void WelsSleep (uint32_t dwMilliSecond);
|
|
146
|
-
|
|
147
|
-
#ifdef __cplusplus
|
|
148
|
-
}
|
|
149
|
-
#endif
|
|
150
|
-
|
|
151
|
-
#endif
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* \copy
|
|
3
|
-
* Copyright (c) 2009-2015, Cisco Systems
|
|
4
|
-
* All rights reserved.
|
|
5
|
-
*
|
|
6
|
-
* Redistribution and use in source and binary forms, with or without
|
|
7
|
-
* modification, are permitted provided that the following conditions
|
|
8
|
-
* are met:
|
|
9
|
-
*
|
|
10
|
-
* * Redistributions of source code must retain the above copyright
|
|
11
|
-
* notice, this list of conditions and the following disclaimer.
|
|
12
|
-
*
|
|
13
|
-
* * Redistributions in binary form must reproduce the above copyright
|
|
14
|
-
* notice, this list of conditions and the following disclaimer in
|
|
15
|
-
* the documentation and/or other materials provided with the
|
|
16
|
-
* distribution.
|
|
17
|
-
*
|
|
18
|
-
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
19
|
-
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
20
|
-
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
21
|
-
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
22
|
-
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
23
|
-
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
24
|
-
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
25
|
-
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
26
|
-
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
27
|
-
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
28
|
-
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
29
|
-
* POSSIBILITY OF SUCH DAMAGE.
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
* \file WelsThreadPool.h
|
|
33
|
-
*
|
|
34
|
-
* \brief Interfaces introduced in thread pool
|
|
35
|
-
*
|
|
36
|
-
* \date 5/09/2012 Created
|
|
37
|
-
*
|
|
38
|
-
*************************************************************************************
|
|
39
|
-
*/
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
#ifndef _WELS_THREAD_POOL_H_
|
|
43
|
-
#define _WELS_THREAD_POOL_H_
|
|
44
|
-
|
|
45
|
-
#include <stdio.h>
|
|
46
|
-
#include "WelsTask.h"
|
|
47
|
-
#include "WelsTaskThread.h"
|
|
48
|
-
#include "WelsList.h"
|
|
49
|
-
|
|
50
|
-
namespace WelsCommon {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
class CWelsThreadPool : public CWelsThread, public IWelsTaskThreadSink {
|
|
54
|
-
public:
|
|
55
|
-
enum {
|
|
56
|
-
DEFAULT_THREAD_NUM = 4,
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
static WELS_THREAD_ERROR_CODE SetThreadNum (int32_t iMaxThreadNum);
|
|
60
|
-
|
|
61
|
-
static CWelsThreadPool* AddReference();
|
|
62
|
-
void RemoveInstance();
|
|
63
|
-
|
|
64
|
-
static bool IsReferenced();
|
|
65
|
-
|
|
66
|
-
//IWelsTaskThreadSink
|
|
67
|
-
virtual WELS_THREAD_ERROR_CODE OnTaskStart (CWelsTaskThread* pThread, IWelsTask* pTask);
|
|
68
|
-
virtual WELS_THREAD_ERROR_CODE OnTaskStop (CWelsTaskThread* pThread, IWelsTask* pTask);
|
|
69
|
-
|
|
70
|
-
// CWelsThread
|
|
71
|
-
virtual void ExecuteTask();
|
|
72
|
-
|
|
73
|
-
WELS_THREAD_ERROR_CODE QueueTask (IWelsTask* pTask);
|
|
74
|
-
int32_t GetThreadNum() const {
|
|
75
|
-
return m_iMaxThreadNum;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
protected:
|
|
80
|
-
WELS_THREAD_ERROR_CODE Init();
|
|
81
|
-
WELS_THREAD_ERROR_CODE Uninit();
|
|
82
|
-
|
|
83
|
-
WELS_THREAD_ERROR_CODE CreateIdleThread();
|
|
84
|
-
void DestroyThread (CWelsTaskThread* pThread);
|
|
85
|
-
WELS_THREAD_ERROR_CODE AddThreadToIdleQueue (CWelsTaskThread* pThread);
|
|
86
|
-
WELS_THREAD_ERROR_CODE AddThreadToBusyList (CWelsTaskThread* pThread);
|
|
87
|
-
WELS_THREAD_ERROR_CODE RemoveThreadFromBusyList (CWelsTaskThread* pThread);
|
|
88
|
-
bool AddTaskToWaitedList (IWelsTask* pTask);
|
|
89
|
-
CWelsTaskThread* GetIdleThread();
|
|
90
|
-
IWelsTask* GetWaitedTask();
|
|
91
|
-
int32_t GetIdleThreadNum();
|
|
92
|
-
int32_t GetBusyThreadNum();
|
|
93
|
-
int32_t GetWaitedTaskNum();
|
|
94
|
-
void ClearWaitedTasks();
|
|
95
|
-
|
|
96
|
-
private:
|
|
97
|
-
CWelsThreadPool();
|
|
98
|
-
virtual ~CWelsThreadPool();
|
|
99
|
-
|
|
100
|
-
WELS_THREAD_ERROR_CODE StopAllRunning();
|
|
101
|
-
|
|
102
|
-
static int32_t m_iRefCount;
|
|
103
|
-
static int32_t m_iMaxThreadNum;
|
|
104
|
-
static CWelsThreadPool* m_pThreadPoolSelf;
|
|
105
|
-
|
|
106
|
-
CWelsNonDuplicatedList<IWelsTask>* m_cWaitedTasks;
|
|
107
|
-
CWelsNonDuplicatedList<CWelsTaskThread>* m_cIdleThreads;
|
|
108
|
-
CWelsList<CWelsTaskThread>* m_cBusyThreads;
|
|
109
|
-
|
|
110
|
-
CWelsLock m_cLockPool;
|
|
111
|
-
CWelsLock m_cLockWaitedTasks;
|
|
112
|
-
CWelsLock m_cLockIdleTasks;
|
|
113
|
-
CWelsLock m_cLockBusyTasks;
|
|
114
|
-
|
|
115
|
-
DISALLOW_COPY_AND_ASSIGN (CWelsThreadPool);
|
|
116
|
-
};
|
|
117
|
-
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
#endif
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
@@ -1,345 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* \copy
|
|
3
|
-
* Copyright (c) 2013, Loongson Technology Co.,Ltd.
|
|
4
|
-
* All rights reserved.
|
|
5
|
-
*
|
|
6
|
-
* Redistribution and use in source and binary forms, with or without
|
|
7
|
-
* modification, are permitted provided that the following conditions
|
|
8
|
-
* are met:
|
|
9
|
-
*
|
|
10
|
-
* * Redistributions of source code must retain the above copyright
|
|
11
|
-
* notice, this list of conditions and the following disclaimer.
|
|
12
|
-
*
|
|
13
|
-
* * Redistributions in binary form must reproduce the above copyright
|
|
14
|
-
* notice, this list of conditions and the following disclaimer in
|
|
15
|
-
* the documentation and/or other materials provided with the
|
|
16
|
-
* distribution.
|
|
17
|
-
*
|
|
18
|
-
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
19
|
-
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
20
|
-
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
21
|
-
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
22
|
-
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
23
|
-
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
24
|
-
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
25
|
-
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
26
|
-
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
27
|
-
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
28
|
-
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
29
|
-
* POSSIBILITY OF SUCH DAMAGE.
|
|
30
|
-
*
|
|
31
|
-
*/
|
|
32
|
-
|
|
33
|
-
#ifndef ASMDEFS_MMI_H_
|
|
34
|
-
#define ASMDEFS_MMI_H_
|
|
35
|
-
|
|
36
|
-
#define CACHE_LINE_SIZE 32
|
|
37
|
-
|
|
38
|
-
#if defined(_ABI64) && _MIPS_SIM == _ABI64
|
|
39
|
-
# define mips_reg int64_t
|
|
40
|
-
# define PTRSIZE " 8 "
|
|
41
|
-
# define PTRLOG " 3 "
|
|
42
|
-
# define PTR_ADDU "daddu "
|
|
43
|
-
# define PTR_ADDIU "daddiu "
|
|
44
|
-
# define PTR_ADDI "daddi "
|
|
45
|
-
# define PTR_SUBU "dsubu "
|
|
46
|
-
# define PTR_L "ld "
|
|
47
|
-
# define PTR_S "sd "
|
|
48
|
-
# define PTR_SRA "dsra "
|
|
49
|
-
# define PTR_SRL "dsrl "
|
|
50
|
-
# define PTR_SLL "dsll "
|
|
51
|
-
#else
|
|
52
|
-
# define mips_reg int32_t
|
|
53
|
-
# define PTRSIZE " 4 "
|
|
54
|
-
# define PTRLOG " 2 "
|
|
55
|
-
# define PTR_ADDU "addu "
|
|
56
|
-
# define PTR_ADDIU "addiu "
|
|
57
|
-
# define PTR_ADDI "addi "
|
|
58
|
-
# define PTR_SUBU "subu "
|
|
59
|
-
# define PTR_L "lw "
|
|
60
|
-
# define PTR_S "sw "
|
|
61
|
-
# define PTR_SRA "sra "
|
|
62
|
-
# define PTR_SRL "srl "
|
|
63
|
-
# define PTR_SLL "sll "
|
|
64
|
-
#endif
|
|
65
|
-
|
|
66
|
-
#define MMI_XSawp_BH(f0, f2, f4, f6, f8, f10) \
|
|
67
|
-
"mov.d "#f8", "#f2" \n\t" \
|
|
68
|
-
"punpckhbh "#f2", "#f0", "#f4" \n\t" \
|
|
69
|
-
"punpcklbh "#f0", "#f0", "#f4" \n\t" \
|
|
70
|
-
"punpckhbh "#f10", "#f8", "#f6" \n\t" \
|
|
71
|
-
"punpcklbh "#f8", "#f8", "#f6" \n\t"
|
|
72
|
-
|
|
73
|
-
#define MMI_XSawp_HW(f0, f2, f4, f6, f8, f10) \
|
|
74
|
-
"mov.d "#f8", "#f2" \n\t" \
|
|
75
|
-
"punpckhhw "#f2", "#f0", "#f4" \n\t" \
|
|
76
|
-
"punpcklhw "#f0", "#f0", "#f4" \n\t" \
|
|
77
|
-
"punpckhhw "#f10", "#f8", "#f6" \n\t" \
|
|
78
|
-
"punpcklhw "#f8", "#f8", "#f6" \n\t"
|
|
79
|
-
|
|
80
|
-
#define MMI_XSawp_WD(f0, f2, f4, f6, f8, f10) \
|
|
81
|
-
"mov.d "#f8", "#f2" \n\t" \
|
|
82
|
-
"punpckhwd "#f2", "#f0", "#f4" \n\t" \
|
|
83
|
-
"punpcklwd "#f0", "#f0", "#f4" \n\t" \
|
|
84
|
-
"punpckhwd "#f10", "#f8", "#f6" \n\t" \
|
|
85
|
-
"punpcklwd "#f8", "#f8", "#f6" \n\t"
|
|
86
|
-
|
|
87
|
-
#define MMI_XSawp_DQ(f0, f2, f4, f6, f8, f10) \
|
|
88
|
-
"mov.d "#f8", "#f2" \n\t" \
|
|
89
|
-
"mov.d "#f2", "#f4" \n\t" \
|
|
90
|
-
"mov.d "#f10", "#f6" \n\t"
|
|
91
|
-
|
|
92
|
-
#define WELS_AbsH(f0, f2, f4, f6, f8, f10) \
|
|
93
|
-
"xor "#f8", "#f8", "#f8" \n\t" \
|
|
94
|
-
"psubh "#f10", "#f8", "#f6" \n\t" \
|
|
95
|
-
"psubh "#f8", "#f8", "#f4" \n\t" \
|
|
96
|
-
"pmaxsh "#f0", "#f4", "#f8" \n\t" \
|
|
97
|
-
"pmaxsh "#f2", "#f6", "#f10" \n\t"
|
|
98
|
-
|
|
99
|
-
#define MMI_SumSub(f0, f2, f4, f6, f8, f10) \
|
|
100
|
-
"mov.d "#f8", "#f4" \n\t" \
|
|
101
|
-
"mov.d "#f10", "#f6" \n\t" \
|
|
102
|
-
"paddh "#f4", "#f4", "#f0" \n\t" \
|
|
103
|
-
"paddh "#f6", "#f6", "#f2" \n\t" \
|
|
104
|
-
"psubh "#f0", "#f0", "#f8" \n\t" \
|
|
105
|
-
"psubh "#f2", "#f2", "#f10" \n\t"
|
|
106
|
-
|
|
107
|
-
#define MMI_LoadDiff8P(f0, f2, f4, f6, f8, r0, r1) \
|
|
108
|
-
"gsldlc1 "#f0", 0x7("#r0") \n\t" \
|
|
109
|
-
"gsldlc1 "#f4", 0x7("#r1") \n\t" \
|
|
110
|
-
"gsldrc1 "#f0", 0x0("#r0") \n\t" \
|
|
111
|
-
"gsldrc1 "#f4", 0x0("#r1") \n\t" \
|
|
112
|
-
"punpckhbh "#f2", "#f0", "#f8" \n\t" \
|
|
113
|
-
"punpcklbh "#f0", "#f0", "#f8" \n\t" \
|
|
114
|
-
"punpckhbh "#f6", "#f4", "#f8" \n\t" \
|
|
115
|
-
"punpcklbh "#f4", "#f4", "#f8" \n\t" \
|
|
116
|
-
"psubh "#f0", "#f0", "#f4" \n\t" \
|
|
117
|
-
"psubh "#f2", "#f2", "#f6" \n\t"
|
|
118
|
-
|
|
119
|
-
#define MMI_TransTwo4x4H(f0, f2, f4, f6, f8, f10, f12, f14, f16, f18) \
|
|
120
|
-
MMI_XSawp_HW(f0, f2, f4, f6, f16, f18) \
|
|
121
|
-
MMI_XSawp_HW(f8, f10, f12, f14, f4, f6) \
|
|
122
|
-
MMI_XSawp_WD(f0, f2, f8, f10, f12, f14) \
|
|
123
|
-
MMI_XSawp_WD(f16, f18, f4, f6, f8, f10) \
|
|
124
|
-
MMI_XSawp_DQ(f0, f2, f16, f18, f4, f6) \
|
|
125
|
-
MMI_XSawp_DQ(f12, f14, f8, f10, f16, f18)
|
|
126
|
-
|
|
127
|
-
#define MMI_TransTwo8x8B(f0, f2, f4, f6, f8, f10, f12, f14, f16, f18, f20, f22, f24, f26, f28, f30, r0, r1) \
|
|
128
|
-
"dmfc1 "#r0", "#f28" \n\t" \
|
|
129
|
-
"dmfc1 "#r1", "#f30" \n\t" \
|
|
130
|
-
MMI_XSawp_BH(f0, f2, f4, f6, f28, f30) \
|
|
131
|
-
MMI_XSawp_BH(f8, f10, f12, f14, f4, f6) \
|
|
132
|
-
MMI_XSawp_BH(f16, f18, f20, f22, f12, f14) \
|
|
133
|
-
"dmtc1 "#r0", "#f20" \n\t" \
|
|
134
|
-
"dmtc1 "#r1", "#f22" \n\t" \
|
|
135
|
-
"dmfc1 "#r0", "#f12" \n\t" \
|
|
136
|
-
"dmfc1 "#r1", "#f14" \n\t" \
|
|
137
|
-
MMI_XSawp_BH(f24, f26, f20, f22, f12, f14) \
|
|
138
|
-
MMI_XSawp_HW(f0, f2, f8, f10, f20, f22) \
|
|
139
|
-
MMI_XSawp_HW(f28, f30, f4, f6, f8, f10) \
|
|
140
|
-
MMI_XSawp_HW(f16, f18, f24, f26, f4, f6) \
|
|
141
|
-
"dmtc1 "#r0", "#f24" \n\t" \
|
|
142
|
-
"dmtc1 "#r1", "#f26" \n\t" \
|
|
143
|
-
"dmfc1 "#r0", "#f8" \n\t" \
|
|
144
|
-
"dmfc1 "#r1", "#f10" \n\t" \
|
|
145
|
-
MMI_XSawp_HW(f24, f26, f12, f14, f8, f10) \
|
|
146
|
-
MMI_XSawp_WD(f0, f2, f16, f18, f12, f14) \
|
|
147
|
-
MMI_XSawp_WD(f20, f22, f4, f6, f16, f18) \
|
|
148
|
-
MMI_XSawp_WD(f28, f30, f24, f26, f4, f6) \
|
|
149
|
-
"dmtc1 "#r0", "#f24" \n\t" \
|
|
150
|
-
"dmtc1 "#r1", "#f26" \n\t" \
|
|
151
|
-
"dmfc1 "#r0", "#f16" \n\t" \
|
|
152
|
-
"dmfc1 "#r1", "#f18" \n\t" \
|
|
153
|
-
MMI_XSawp_WD(f24, f26, f8, f10, f16, f18) \
|
|
154
|
-
MMI_XSawp_DQ(f0, f2, f28, f30, f8, f10) \
|
|
155
|
-
MMI_XSawp_DQ(f12, f14, f4, f6, f28, f30) \
|
|
156
|
-
MMI_XSawp_DQ(f20, f22, f24, f26, f4, f6) \
|
|
157
|
-
"dmtc1 "#r0", "#f24" \n\t" \
|
|
158
|
-
"dmtc1 "#r1", "#f26" \n\t" \
|
|
159
|
-
"dmfc1 "#r0", "#f0" \n\t" \
|
|
160
|
-
"dmfc1 "#r1", "#f2" \n\t" \
|
|
161
|
-
MMI_XSawp_DQ(f24, f26, f16, f18, f0, f2) \
|
|
162
|
-
"dmtc1 "#r0", "#f16" \n\t" \
|
|
163
|
-
"dmtc1 "#r1", "#f18" \n\t"
|
|
164
|
-
|
|
165
|
-
#define MMI_XSwap_HW_SINGLE(f0, f2, f4) \
|
|
166
|
-
"punpckhhw "#f4", "#f0", "#f2" \n\t" \
|
|
167
|
-
"punpcklhw "#f0", "#f0", "#f2" \n\t"
|
|
168
|
-
|
|
169
|
-
#define MMI_XSwap_WD_SINGLE(f0, f2, f4) \
|
|
170
|
-
"punpckhwd "#f4", "#f0", "#f2" \n\t" \
|
|
171
|
-
"punpcklwd "#f0", "#f0", "#f2" \n\t"
|
|
172
|
-
|
|
173
|
-
#define MMI_Trans4x4H_SINGLE(f0, f2, f4, f6, f8) \
|
|
174
|
-
MMI_XSwap_HW_SINGLE(f0, f2, f8) \
|
|
175
|
-
MMI_XSwap_HW_SINGLE(f4, f6, f2) \
|
|
176
|
-
MMI_XSwap_WD_SINGLE(f0, f4, f6) \
|
|
177
|
-
MMI_XSwap_WD_SINGLE(f8, f2, f4)
|
|
178
|
-
|
|
179
|
-
#define MMI_SumSub_SINGLE(f0, f2, f4) \
|
|
180
|
-
"mov.d "#f4", "#f2" \n\t" \
|
|
181
|
-
"psubh "#f2", "#f2", "#f0" \n\t" \
|
|
182
|
-
"paddh "#f0", "#f0", "#f4" \n\t"
|
|
183
|
-
|
|
184
|
-
#define MMI_SumSubMul2_SINGLE(f0, f2, f4, f6) \
|
|
185
|
-
"mov.d "#f4", "#f0" \n\t" \
|
|
186
|
-
"psllh "#f0", "#f0", "#f6" \n\t" \
|
|
187
|
-
"paddh "#f0", "#f0", "#f2" \n\t" \
|
|
188
|
-
"psllh "#f2", "#f2", "#f6" \n\t" \
|
|
189
|
-
"psubh "#f4", "#f4", "#f2" \n\t"
|
|
190
|
-
|
|
191
|
-
//f4 should be 0x0
|
|
192
|
-
#define MMI_Copy8Times(f0, f2, f4, r0) \
|
|
193
|
-
"dmtc1 "#r0", "#f0" \n\t" \
|
|
194
|
-
"pshufh "#f0", "#f0", "#f4" \n\t" \
|
|
195
|
-
"mov.d "#f2", "#f0" \n\t"
|
|
196
|
-
|
|
197
|
-
//f4 should be 0x0
|
|
198
|
-
#define MMI_Copy16Times(f0, f2, f4, r0) \
|
|
199
|
-
"dmtc1 "#r0", "#f0" \n\t" \
|
|
200
|
-
"punpcklbh "#f0", "#f0", "#f0" \n\t" \
|
|
201
|
-
"pshufh "#f0", "#f0", "#f4" \n\t" \
|
|
202
|
-
"mov.d "#f2", "#f0" \n\t"
|
|
203
|
-
|
|
204
|
-
#define MMI_SumSubDiv2_SINGLE(f0, f2, f4, f6) \
|
|
205
|
-
"psrah "#f4", "#f2", "#f6" \n\t" \
|
|
206
|
-
"paddh "#f4", "#f4", "#f0" \n\t" \
|
|
207
|
-
"psrah "#f0", "#f0", "#f6" \n\t" \
|
|
208
|
-
"psubh "#f0", "#f0", "#f2" \n\t"
|
|
209
|
-
|
|
210
|
-
#define MMI_IDCT_SINGLE(f0, f2, f4, f6, f8, f10, f12) \
|
|
211
|
-
MMI_SumSub_SINGLE(f6, f8, f10) \
|
|
212
|
-
MMI_SumSubDiv2_SINGLE(f4, f2, f0, f12) \
|
|
213
|
-
MMI_SumSub_SINGLE(f0, f6, f10) \
|
|
214
|
-
MMI_SumSub_SINGLE(f4, f8, f10)
|
|
215
|
-
|
|
216
|
-
#define MMI_StoreDiff4P_SINGLE(f0, f2, f4, f6, r0, r1, f8) \
|
|
217
|
-
"gsldlc1 "#f2", 0x7("#r1") \n\t" \
|
|
218
|
-
"gsldrc1 "#f2", 0x0("#r1") \n\t" \
|
|
219
|
-
"punpcklbh "#f2", "#f2", "#f6" \n\t" \
|
|
220
|
-
"paddh "#f0", "#f0", "#f4" \n\t" \
|
|
221
|
-
"psrah "#f0", "#f0", "#f8" \n\t" \
|
|
222
|
-
"paddsh "#f0", "#f0", "#f2" \n\t" \
|
|
223
|
-
"packushb "#f0", "#f0", "#f2" \n\t" \
|
|
224
|
-
"gsswlc1 "#f0", 0x3("#r0") \n\t" \
|
|
225
|
-
"gsswrc1 "#f0", 0x0("#r0") \n\t"
|
|
226
|
-
|
|
227
|
-
#define SUMH_HORIZON(f0, f2, f4, f6, f8) \
|
|
228
|
-
"paddh "#f0", "#f0", "#f2" \n\t" \
|
|
229
|
-
"punpckhhw "#f2", "#f0", "#f8" \n\t" \
|
|
230
|
-
"punpcklhw "#f0", "#f0", "#f8" \n\t" \
|
|
231
|
-
"paddw "#f0", "#f0", "#f2" \n\t" \
|
|
232
|
-
"punpckhwd "#f2", "#f0", "#f0" \n\t" \
|
|
233
|
-
"paddw "#f0", "#f0", "#f2" \n\t"
|
|
234
|
-
|
|
235
|
-
#define LOAD_COLUMN(f0, f2, f4, f6, f8, f10, f12, f14, r0, r1, r2) \
|
|
236
|
-
"daddu "#r2", "#r0", "#r1" \n\t" \
|
|
237
|
-
"gsldlc1 "#f0", 0x7("#r0") \n\t" \
|
|
238
|
-
"gsldlc1 "#f4", 0x7("#r2") \n\t" \
|
|
239
|
-
"gsldrc1 "#f0", 0x0("#r0") \n\t" \
|
|
240
|
-
"gsldrc1 "#f4", 0x0("#r2") \n\t" \
|
|
241
|
-
"punpcklbh "#f0", "#f0", "#f4" \n\t" \
|
|
242
|
-
"daddu "#r0", "#r2", "#r1" \n\t" \
|
|
243
|
-
"daddu "#r2", "#r0", "#r1" \n\t" \
|
|
244
|
-
"gsldlc1 "#f8", 0x7("#r0") \n\t" \
|
|
245
|
-
"gsldlc1 "#f4", 0x7("#r2") \n\t" \
|
|
246
|
-
"gsldrc1 "#f8", 0x0("#r0") \n\t" \
|
|
247
|
-
"gsldrc1 "#f4", 0x0("#r2") \n\t" \
|
|
248
|
-
"punpcklbh "#f8", "#f8", "#f4" \n\t" \
|
|
249
|
-
"punpckhhw "#f2", "#f0", "#f8" \n\t" \
|
|
250
|
-
"punpcklhw "#f0", "#f0", "#f8" \n\t" \
|
|
251
|
-
"daddu "#r0", "#r2", "#r1" \n\t" \
|
|
252
|
-
"daddu "#r2", "#r0", "#r1" \n\t" \
|
|
253
|
-
"gsldlc1 "#f12", 0x7("#r0") \n\t" \
|
|
254
|
-
"gsldlc1 "#f4", 0x7("#r2") \n\t" \
|
|
255
|
-
"gsldrc1 "#f12", 0x0("#r0") \n\t" \
|
|
256
|
-
"gsldrc1 "#f4", 0x0("#r2") \n\t" \
|
|
257
|
-
"punpcklbh "#f12", "#f12", "#f4" \n\t" \
|
|
258
|
-
"daddu "#r0", "#r2", "#r1" \n\t" \
|
|
259
|
-
"daddu "#r2", "#r0", "#r1" \n\t" \
|
|
260
|
-
"gsldlc1 "#f8", 0x7("#r0") \n\t" \
|
|
261
|
-
"gsldlc1 "#f4", 0x7("#r2") \n\t" \
|
|
262
|
-
"gsldrc1 "#f8", 0x0("#r0") \n\t" \
|
|
263
|
-
"gsldrc1 "#f4", 0x0("#r2") \n\t" \
|
|
264
|
-
"punpcklbh "#f8", "#f8", "#f4" \n\t" \
|
|
265
|
-
"punpckhhw "#f14", "#f12", "#f8" \n\t" \
|
|
266
|
-
"punpcklhw "#f12", "#f12", "#f8" \n\t" \
|
|
267
|
-
"daddu "#r0", "#r2", "#r1" \n\t" \
|
|
268
|
-
"punpcklwd "#f0", "#f2", "#f14" \n\t" \
|
|
269
|
-
"punpckhwd "#f2", "#f2", "#f14" \n\t"
|
|
270
|
-
|
|
271
|
-
#define LOAD_COLUMN_C(f0, f2, f4, f6, r0, r1, r2) \
|
|
272
|
-
"daddu "#r2", "#r0", "#r1" \n\t" \
|
|
273
|
-
"gsldlc1 "#f0", 0x7("#r0") \n\t" \
|
|
274
|
-
"gsldlc1 "#f2", 0x7("#r2") \n\t" \
|
|
275
|
-
"gsldrc1 "#f0", 0x0("#r0") \n\t" \
|
|
276
|
-
"gsldrc1 "#f2", 0x0("#r2") \n\t" \
|
|
277
|
-
"punpcklbh "#f0", "#f0", "#f2" \n\t" \
|
|
278
|
-
"daddu "#r0", "#r2", "#r1" \n\t" \
|
|
279
|
-
"daddu "#r2", "#r0", "#r1" \n\t" \
|
|
280
|
-
"gsldlc1 "#f4", 0x7("#r0") \n\t" \
|
|
281
|
-
"gsldlc1 "#f2", 0x7("#r2") \n\t" \
|
|
282
|
-
"gsldrc1 "#f4", 0x0("#r0") \n\t" \
|
|
283
|
-
"gsldrc1 "#f2", 0x0("#r2") \n\t" \
|
|
284
|
-
"punpcklbh "#f4", "#f4", "#f2" \n\t" \
|
|
285
|
-
"punpckhhw "#f0", "#f0", "#f4" \n\t" \
|
|
286
|
-
"daddu "#r0", "#r2", "#r1" \n\t"
|
|
287
|
-
|
|
288
|
-
/**
|
|
289
|
-
* backup register
|
|
290
|
-
*/
|
|
291
|
-
#if defined(_ABI64) && _MIPS_SIM == _ABI64
|
|
292
|
-
#define BACKUP_REG \
|
|
293
|
-
double __attribute__((aligned(16))) __back_temp[8]; \
|
|
294
|
-
__asm__ volatile ( \
|
|
295
|
-
"gssqc1 $f25, $f24, 0x00(%[temp]) \n\t" \
|
|
296
|
-
"gssqc1 $f27, $f26, 0x10(%[temp]) \n\t" \
|
|
297
|
-
"gssqc1 $f29, $f28, 0x20(%[temp]) \n\t" \
|
|
298
|
-
"gssqc1 $f31, $f30, 0x30(%[temp]) \n\t" \
|
|
299
|
-
: \
|
|
300
|
-
: [temp]"r"(__back_temp) \
|
|
301
|
-
: "memory" \
|
|
302
|
-
);
|
|
303
|
-
#else
|
|
304
|
-
#define BACKUP_REG \
|
|
305
|
-
double __attribute__((aligned(16))) __back_temp[8]; \
|
|
306
|
-
__asm__ volatile ( \
|
|
307
|
-
"gssqc1 $f22, $f20, 0x00(%[temp]) \n\t" \
|
|
308
|
-
"gssqc1 $f26, $f24, 0x10(%[temp]) \n\t" \
|
|
309
|
-
"gssqc1 $f30, $f28, 0x20(%[temp]) \n\t" \
|
|
310
|
-
: \
|
|
311
|
-
: [temp]"r"(__back_temp) \
|
|
312
|
-
: "memory" \
|
|
313
|
-
);
|
|
314
|
-
#endif
|
|
315
|
-
|
|
316
|
-
/**
|
|
317
|
-
* recover register
|
|
318
|
-
*/
|
|
319
|
-
#if defined(_ABI64) && _MIPS_SIM == _ABI64
|
|
320
|
-
#define RECOVER_REG \
|
|
321
|
-
__asm__ volatile ( \
|
|
322
|
-
"gslqc1 $f25, $f24, 0x00(%[temp]) \n\t" \
|
|
323
|
-
"gslqc1 $f27, $f26, 0x10(%[temp]) \n\t" \
|
|
324
|
-
"gslqc1 $f29, $f28, 0x20(%[temp]) \n\t" \
|
|
325
|
-
"gslqc1 $f31, $f30, 0x30(%[temp]) \n\t" \
|
|
326
|
-
: \
|
|
327
|
-
: [temp]"r"(__back_temp) \
|
|
328
|
-
: "memory" \
|
|
329
|
-
);
|
|
330
|
-
#else
|
|
331
|
-
#define RECOVER_REG \
|
|
332
|
-
__asm__ volatile ( \
|
|
333
|
-
"gslqc1 $f22, $f20, 0x00(%[temp]) \n\t" \
|
|
334
|
-
"gslqc1 $f26, $f24, 0x10(%[temp]) \n\t" \
|
|
335
|
-
"gslqc1 $f30, $f28, 0x20(%[temp]) \n\t" \
|
|
336
|
-
: \
|
|
337
|
-
: [temp]"r"(__back_temp) \
|
|
338
|
-
: "memory" \
|
|
339
|
-
);
|
|
340
|
-
#endif
|
|
341
|
-
|
|
342
|
-
# define OK 1
|
|
343
|
-
# define NOTOK 0
|
|
344
|
-
|
|
345
|
-
#endif /* ASMDEFS_MMI_H_ */
|