@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,344 +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 golomb.h
|
|
33
|
-
*
|
|
34
|
-
* \brief Exponential Golomb entropy coding/decoding routine
|
|
35
|
-
*
|
|
36
|
-
* \date 03/13/2009 Created
|
|
37
|
-
*
|
|
38
|
-
*************************************************************************************
|
|
39
|
-
*/
|
|
40
|
-
#ifndef WELS_EXPONENTIAL_GOLOMB_ENTROPY_CODING_H__
|
|
41
|
-
#define WELS_EXPONENTIAL_GOLOMB_ENTROPY_CODING_H__
|
|
42
|
-
|
|
43
|
-
#include "typedefs.h"
|
|
44
|
-
#include "bit_stream.h"
|
|
45
|
-
#include "macros.h"
|
|
46
|
-
//#include <assert.h>
|
|
47
|
-
#include "ls_defines.h"
|
|
48
|
-
#include "error_code.h"
|
|
49
|
-
|
|
50
|
-
namespace WelsDec {
|
|
51
|
-
|
|
52
|
-
#define WELS_READ_VERIFY(uiRet) do{ \
|
|
53
|
-
uint32_t uiRetTmp = (uint32_t)uiRet; \
|
|
54
|
-
if( uiRetTmp != ERR_NONE ) \
|
|
55
|
-
return uiRetTmp; \
|
|
56
|
-
}while(0)
|
|
57
|
-
#define GET_WORD(iCurBits, pBufPtr, iLeftBits, iAllowedBytes, iReadBytes) { \
|
|
58
|
-
if (iReadBytes > iAllowedBytes+1) { \
|
|
59
|
-
return ERR_INFO_READ_OVERFLOW; \
|
|
60
|
-
} \
|
|
61
|
-
iCurBits |= ((uint32_t)((pBufPtr[0] << 8) | pBufPtr[1])) << (iLeftBits); \
|
|
62
|
-
iLeftBits -= 16; \
|
|
63
|
-
pBufPtr +=2; \
|
|
64
|
-
}
|
|
65
|
-
#define NEED_BITS(iCurBits, pBufPtr, iLeftBits, iAllowedBytes, iReadBytes) { \
|
|
66
|
-
if (iLeftBits > 0) { \
|
|
67
|
-
GET_WORD(iCurBits, pBufPtr, iLeftBits, iAllowedBytes, iReadBytes); \
|
|
68
|
-
} \
|
|
69
|
-
}
|
|
70
|
-
#define UBITS(iCurBits, iNumBits) (iCurBits>>(32-(iNumBits)))
|
|
71
|
-
#define DUMP_BITS(iCurBits, pBufPtr, iLeftBits, iNumBits, iAllowedBytes, iReadBytes) { \
|
|
72
|
-
iCurBits <<= (iNumBits); \
|
|
73
|
-
iLeftBits += (iNumBits); \
|
|
74
|
-
NEED_BITS(iCurBits, pBufPtr, iLeftBits, iAllowedBytes, iReadBytes); \
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
static inline int32_t BsGetBits (PBitStringAux pBs, int32_t iNumBits, uint32_t* pCode) {
|
|
78
|
-
intX_t iRc = UBITS (pBs->uiCurBits, iNumBits);
|
|
79
|
-
intX_t iAllowedBytes = pBs->pEndBuf - pBs->pStartBuf; //actual stream bytes
|
|
80
|
-
intX_t iReadBytes = pBs->pCurBuf - pBs->pStartBuf;
|
|
81
|
-
DUMP_BITS (pBs->uiCurBits, pBs->pCurBuf, pBs->iLeftBits, iNumBits, iAllowedBytes, iReadBytes);
|
|
82
|
-
*pCode = (uint32_t)iRc;
|
|
83
|
-
return ERR_NONE;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
/*
|
|
87
|
-
* Exponential Golomb codes decoding routines
|
|
88
|
-
*/
|
|
89
|
-
|
|
90
|
-
// for data sharing cross modules and try to reduce size of binary generated, 12/10/2009
|
|
91
|
-
extern const uint8_t g_kuiIntra4x4CbpTable[48];
|
|
92
|
-
extern const uint8_t g_kuiIntra4x4CbpTable400[16];
|
|
93
|
-
extern const uint8_t g_kuiInterCbpTable[48];
|
|
94
|
-
extern const uint8_t g_kuiInterCbpTable400[16];
|
|
95
|
-
|
|
96
|
-
extern const uint8_t g_kuiLeadingZeroTable[256];
|
|
97
|
-
|
|
98
|
-
static const uint32_t g_kuiPrefix8BitsTable[16] = {
|
|
99
|
-
0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3
|
|
100
|
-
};
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
static inline uint32_t GetPrefixBits (uint32_t uiValue) {
|
|
104
|
-
uint32_t iNumBit = 0;
|
|
105
|
-
|
|
106
|
-
if (uiValue & 0xffff0000) {
|
|
107
|
-
uiValue >>= 16;
|
|
108
|
-
iNumBit += 16;
|
|
109
|
-
}
|
|
110
|
-
if (uiValue & 0xff00) {
|
|
111
|
-
uiValue >>= 8;
|
|
112
|
-
iNumBit += 8;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
if (uiValue & 0xf0) {
|
|
116
|
-
uiValue >>= 4;
|
|
117
|
-
iNumBit += 4;
|
|
118
|
-
}
|
|
119
|
-
iNumBit += g_kuiPrefix8BitsTable[uiValue];
|
|
120
|
-
|
|
121
|
-
return (32 - iNumBit);
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
/*
|
|
125
|
-
* Read one bit from bit stream followed
|
|
126
|
-
*/
|
|
127
|
-
static inline uint32_t BsGetOneBit (PBitStringAux pBs, uint32_t* pCode) {
|
|
128
|
-
return (BsGetBits (pBs, 1, pCode));
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
static inline int32_t GetLeadingZeroBits (uint32_t iCurBits) { //<=32 bits
|
|
132
|
-
uint32_t uiValue;
|
|
133
|
-
|
|
134
|
-
uiValue = UBITS (iCurBits, 8); //ShowBits( bs, 8 );
|
|
135
|
-
if (uiValue) {
|
|
136
|
-
return g_kuiLeadingZeroTable[uiValue];
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
uiValue = UBITS (iCurBits, 16); //ShowBits( bs, 16 );
|
|
140
|
-
if (uiValue) {
|
|
141
|
-
return (g_kuiLeadingZeroTable[uiValue] + 8);
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
uiValue = UBITS (iCurBits, 24); //ShowBits( bs, 24 );
|
|
145
|
-
if (uiValue) {
|
|
146
|
-
return (g_kuiLeadingZeroTable[uiValue] + 16);
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
uiValue = iCurBits; //ShowBits( bs, 32 );
|
|
150
|
-
if (uiValue) {
|
|
151
|
-
return (g_kuiLeadingZeroTable[uiValue] + 24);
|
|
152
|
-
}
|
|
153
|
-
//ASSERT(false); // should not go here
|
|
154
|
-
return -1;
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
static inline uint32_t BsGetUe (PBitStringAux pBs, uint32_t* pCode) {
|
|
158
|
-
uint32_t iValue = 0;
|
|
159
|
-
int32_t iLeadingZeroBits = GetLeadingZeroBits (pBs->uiCurBits);
|
|
160
|
-
intX_t iAllowedBytes, iReadBytes;
|
|
161
|
-
iAllowedBytes = pBs->pEndBuf - pBs->pStartBuf; //actual stream bytes
|
|
162
|
-
|
|
163
|
-
if (iLeadingZeroBits == -1) { //bistream error
|
|
164
|
-
return ERR_INFO_READ_LEADING_ZERO;//-1
|
|
165
|
-
} else if (iLeadingZeroBits >
|
|
166
|
-
16) { //rarely into this condition (even may be bitstream error), prevent from 16-bit reading overflow
|
|
167
|
-
//using two-step reading instead of one time reading of >16 bits.
|
|
168
|
-
iReadBytes = pBs->pCurBuf - pBs->pStartBuf;
|
|
169
|
-
DUMP_BITS (pBs->uiCurBits, pBs->pCurBuf, pBs->iLeftBits, 16, iAllowedBytes, iReadBytes);
|
|
170
|
-
iReadBytes = pBs->pCurBuf - pBs->pStartBuf;
|
|
171
|
-
DUMP_BITS (pBs->uiCurBits, pBs->pCurBuf, pBs->iLeftBits, iLeadingZeroBits + 1 - 16, iAllowedBytes, iReadBytes);
|
|
172
|
-
} else {
|
|
173
|
-
iReadBytes = pBs->pCurBuf - pBs->pStartBuf;
|
|
174
|
-
DUMP_BITS (pBs->uiCurBits, pBs->pCurBuf, pBs->iLeftBits, iLeadingZeroBits + 1, iAllowedBytes, iReadBytes);
|
|
175
|
-
}
|
|
176
|
-
if (iLeadingZeroBits) {
|
|
177
|
-
iValue = UBITS (pBs->uiCurBits, iLeadingZeroBits);
|
|
178
|
-
iReadBytes = pBs->pCurBuf - pBs->pStartBuf;
|
|
179
|
-
DUMP_BITS (pBs->uiCurBits, pBs->pCurBuf, pBs->iLeftBits, iLeadingZeroBits, iAllowedBytes, iReadBytes);
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
*pCode = ((1u << iLeadingZeroBits) - 1 + iValue);
|
|
183
|
-
return ERR_NONE;
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
/*
|
|
188
|
-
* Read signed exp golomb codes
|
|
189
|
-
*/
|
|
190
|
-
static inline int32_t BsGetSe (PBitStringAux pBs, int32_t* pCode) {
|
|
191
|
-
uint32_t uiCodeNum;
|
|
192
|
-
|
|
193
|
-
WELS_READ_VERIFY (BsGetUe (pBs, &uiCodeNum));
|
|
194
|
-
|
|
195
|
-
if (uiCodeNum & 0x01) {
|
|
196
|
-
*pCode = (int32_t) ((uiCodeNum + 1) >> 1);
|
|
197
|
-
} else {
|
|
198
|
-
*pCode = NEG_NUM ((int32_t) (uiCodeNum >> 1));
|
|
199
|
-
}
|
|
200
|
-
return ERR_NONE;
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
/*
|
|
204
|
-
* Get unsigned truncated exp golomb code.
|
|
205
|
-
*/
|
|
206
|
-
static inline int32_t BsGetTe0 (PBitStringAux pBs, int32_t iRange, uint32_t* pCode) {
|
|
207
|
-
if (iRange == 1) {
|
|
208
|
-
*pCode = 0;
|
|
209
|
-
} else if (iRange == 2) {
|
|
210
|
-
WELS_READ_VERIFY (BsGetOneBit (pBs, pCode));
|
|
211
|
-
*pCode ^= 1;
|
|
212
|
-
} else {
|
|
213
|
-
WELS_READ_VERIFY (BsGetUe (pBs, pCode));
|
|
214
|
-
}
|
|
215
|
-
return ERR_NONE;
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
/*
|
|
219
|
-
* Get number of trailing bits
|
|
220
|
-
*/
|
|
221
|
-
static inline int32_t BsGetTrailingBits (uint8_t* pBuf) {
|
|
222
|
-
// TODO
|
|
223
|
-
uint32_t uiValue = *pBuf;
|
|
224
|
-
int32_t iRetNum = 0;
|
|
225
|
-
|
|
226
|
-
do {
|
|
227
|
-
if (uiValue & 1)
|
|
228
|
-
return iRetNum;
|
|
229
|
-
uiValue >>= 1;
|
|
230
|
-
++ iRetNum;
|
|
231
|
-
} while (iRetNum < 9);
|
|
232
|
-
|
|
233
|
-
return 0;
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
/*
|
|
237
|
-
* Check whether there is more rbsp data for processing
|
|
238
|
-
*/
|
|
239
|
-
static inline bool CheckMoreRBSPData (PBitStringAux pBsAux) {
|
|
240
|
-
if ((pBsAux->iBits - ((pBsAux->pCurBuf - pBsAux->pStartBuf - 2) << 3) - pBsAux->iLeftBits) > 1) {
|
|
241
|
-
return true;
|
|
242
|
-
} else {
|
|
243
|
-
return false;
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
|
|
247
|
-
//define macros to check syntax elements
|
|
248
|
-
#define WELS_CHECK_SE_BOTH_ERROR(val, lower_bound, upper_bound, syntax_name, ret_code) do {\
|
|
249
|
-
if ((val < lower_bound) || (val > upper_bound)) {\
|
|
250
|
-
WelsLog(&(pCtx->sLogCtx), WELS_LOG_ERROR, "invalid syntax " syntax_name " %d", val);\
|
|
251
|
-
return ret_code;\
|
|
252
|
-
}\
|
|
253
|
-
}while(0)
|
|
254
|
-
|
|
255
|
-
#define WELS_CHECK_SE_LOWER_ERROR(val, lower_bound, syntax_name, ret_code) do {\
|
|
256
|
-
if (val < lower_bound) {\
|
|
257
|
-
WelsLog(&(pCtx->sLogCtx), WELS_LOG_ERROR, "invalid syntax " syntax_name " %d", val);\
|
|
258
|
-
return ret_code;\
|
|
259
|
-
}\
|
|
260
|
-
}while(0)
|
|
261
|
-
|
|
262
|
-
#define WELS_CHECK_SE_UPPER_ERROR(val, upper_bound, syntax_name, ret_code) do {\
|
|
263
|
-
if (val > upper_bound) {\
|
|
264
|
-
WelsLog(&(pCtx->sLogCtx), WELS_LOG_ERROR, "invalid syntax " syntax_name " %d", val);\
|
|
265
|
-
return ret_code;\
|
|
266
|
-
}\
|
|
267
|
-
}while(0)
|
|
268
|
-
|
|
269
|
-
#define WELS_CHECK_SE_BOTH_ERROR_NOLOG(val, lower_bound, upper_bound, syntax_name, ret_code) do {\
|
|
270
|
-
if ((val < lower_bound) || (val > upper_bound)) {\
|
|
271
|
-
return ret_code;\
|
|
272
|
-
}\
|
|
273
|
-
}while(0)
|
|
274
|
-
|
|
275
|
-
#define WELS_CHECK_SE_LOWER_ERROR_NOLOG(val, lower_bound, syntax_name, ret_code) do {\
|
|
276
|
-
if (val < lower_bound) {\
|
|
277
|
-
return ret_code;\
|
|
278
|
-
}\
|
|
279
|
-
}while(0)
|
|
280
|
-
|
|
281
|
-
#define WELS_CHECK_SE_UPPER_ERROR_NOLOG(val, upper_bound, syntax_name, ret_code) do {\
|
|
282
|
-
if (val > upper_bound) {\
|
|
283
|
-
return ret_code;\
|
|
284
|
-
}\
|
|
285
|
-
}while(0)
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
#define WELS_CHECK_SE_BOTH_WARNING(val, lower_bound, upper_bound, syntax_name) do {\
|
|
289
|
-
if ((val < lower_bound) || (val > upper_bound)) {\
|
|
290
|
-
WelsLog(&(pCtx->sLogCtx), WELS_LOG_WARNING, "invalid syntax " syntax_name " %d", val);\
|
|
291
|
-
}\
|
|
292
|
-
}while(0)
|
|
293
|
-
|
|
294
|
-
#define WELS_CHECK_SE_LOWER_WARNING(val, lower_bound, syntax_name) do {\
|
|
295
|
-
if (val < lower_bound) {\
|
|
296
|
-
WelsLog(&(pCtx->sLogCtx), WELS_LOG_WARNING, "invalid syntax " syntax_name " %d", val);\
|
|
297
|
-
}\
|
|
298
|
-
}while(0)
|
|
299
|
-
|
|
300
|
-
#define WELS_CHECK_SE_UPPER_WARNING(val, upper_bound, syntax_name) do {\
|
|
301
|
-
if (val > upper_bound) {\
|
|
302
|
-
WelsLog(&(pCtx->sLogCtx), WELS_LOG_WARNING, "invalid syntax " syntax_name " %d", val);\
|
|
303
|
-
}\
|
|
304
|
-
}while(0)
|
|
305
|
-
// below define syntax element offset
|
|
306
|
-
// for bit_depth_luma_minus8 and bit_depth_chroma_minus8
|
|
307
|
-
#define BIT_DEPTH_LUMA_OFFSET 8
|
|
308
|
-
#define BIT_DEPTH_CHROMA_OFFSET 8
|
|
309
|
-
// for log2_max_frame_num_minus4
|
|
310
|
-
#define LOG2_MAX_FRAME_NUM_OFFSET 4
|
|
311
|
-
// for log2_max_pic_order_cnt_lsb_minus4
|
|
312
|
-
#define LOG2_MAX_PIC_ORDER_CNT_LSB_OFFSET 4
|
|
313
|
-
// for pic_width_in_mbs_minus1
|
|
314
|
-
#define PIC_WIDTH_IN_MBS_OFFSET 1
|
|
315
|
-
// for pic_height_in_map_units_minus1
|
|
316
|
-
#define PIC_HEIGHT_IN_MAP_UNITS_OFFSET 1
|
|
317
|
-
// for bit_depth_aux_minus8
|
|
318
|
-
#define BIT_DEPTH_AUX_OFFSET 8
|
|
319
|
-
// for num_slice_groups_minus1
|
|
320
|
-
#define NUM_SLICE_GROUPS_OFFSET 1
|
|
321
|
-
// for run_length_minus1
|
|
322
|
-
#define RUN_LENGTH_OFFSET 1
|
|
323
|
-
// for slice_group_change_rate_minus1
|
|
324
|
-
#define SLICE_GROUP_CHANGE_RATE_OFFSET 1
|
|
325
|
-
// for pic_size_in_map_units_minus1
|
|
326
|
-
#define PIC_SIZE_IN_MAP_UNITS_OFFSET 1
|
|
327
|
-
// for num_ref_idx_l0_default_active_minus1 and num_ref_idx_l1_default_active_minus1
|
|
328
|
-
#define NUM_REF_IDX_L0_DEFAULT_ACTIVE_OFFSET 1
|
|
329
|
-
#define NUM_REF_IDX_L1_DEFAULT_ACTIVE_OFFSET 1
|
|
330
|
-
// for pic_init_qp_minus26 and pic_init_qs_minus26
|
|
331
|
-
#define PIC_INIT_QP_OFFSET 26
|
|
332
|
-
#define PIC_INIT_QS_OFFSET 26
|
|
333
|
-
// for num_ref_idx_l0_active_minus1 and num_ref_idx_l1_active_minus1
|
|
334
|
-
#define NUM_REF_IDX_L0_ACTIVE_OFFSET 1
|
|
335
|
-
#define NUM_REF_IDX_L1_ACTIVE_OFFSET 1
|
|
336
|
-
|
|
337
|
-
// From Level 5.2
|
|
338
|
-
#define MAX_MB_SIZE 36864
|
|
339
|
-
// for aspect_ratio_idc
|
|
340
|
-
#define EXTENDED_SAR 255
|
|
341
|
-
|
|
342
|
-
} // namespace WelsDec
|
|
343
|
-
|
|
344
|
-
#endif//WELS_EXPONENTIAL_GOLOMB_ENTROPY_CODING_H__
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* \copy
|
|
3
|
-
* Copyright (c) 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
|
-
|
|
33
|
-
#ifndef WELS_DECODE_MB_AUX_H__
|
|
34
|
-
#define WELS_DECODE_MB_AUX_H__
|
|
35
|
-
|
|
36
|
-
#include "typedefs.h"
|
|
37
|
-
#include "macros.h"
|
|
38
|
-
|
|
39
|
-
namespace WelsDec {
|
|
40
|
-
|
|
41
|
-
void IdctResAddPred_c (uint8_t* pPred, const int32_t kiStride, int16_t* pRs);
|
|
42
|
-
void IdctResAddPred8x8_c (uint8_t* pPred, const int32_t kiStride, int16_t* pRs);
|
|
43
|
-
|
|
44
|
-
#if defined(__cplusplus)
|
|
45
|
-
extern "C" {
|
|
46
|
-
#endif//__cplusplus
|
|
47
|
-
|
|
48
|
-
#if defined(X86_ASM)
|
|
49
|
-
void IdctResAddPred_mmx (uint8_t* pPred, const int32_t kiStride, int16_t* pRs);
|
|
50
|
-
void IdctResAddPred_sse2 (uint8_t* pPred, const int32_t kiStride, int16_t* pRs);
|
|
51
|
-
#if defined(HAVE_AVX2)
|
|
52
|
-
void IdctResAddPred_avx2 (uint8_t* pPred, const int32_t kiStride, int16_t* pRs);
|
|
53
|
-
void IdctFourResAddPred_avx2 (uint8_t* pPred, int32_t iStride, int16_t* pRs, const int8_t* pNzc);
|
|
54
|
-
#endif
|
|
55
|
-
#endif//X86_ASM
|
|
56
|
-
|
|
57
|
-
#if defined(HAVE_NEON)
|
|
58
|
-
void IdctResAddPred_neon (uint8_t* pred, const int32_t stride, int16_t* rs);
|
|
59
|
-
#endif
|
|
60
|
-
|
|
61
|
-
#if defined(HAVE_NEON_AARCH64)
|
|
62
|
-
void IdctResAddPred_AArch64_neon (uint8_t* pred, const int32_t stride, int16_t* rs);
|
|
63
|
-
#endif
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
#if defined(HAVE_MMI)
|
|
67
|
-
void IdctResAddPred_mmi (uint8_t* pPred, const int32_t kiStride, int16_t* pRs);
|
|
68
|
-
#endif//HAVE_MMI
|
|
69
|
-
|
|
70
|
-
#if defined(HAVE_LSX)
|
|
71
|
-
void IdctResAddPred_lsx (uint8_t* pPred, const int32_t kiStride, int16_t* pRs);
|
|
72
|
-
void IdctResAddPred8x8_lsx (uint8_t* pPred, const int32_t kiStride, int16_t* pRs);
|
|
73
|
-
#endif
|
|
74
|
-
|
|
75
|
-
#if defined(__cplusplus)
|
|
76
|
-
}
|
|
77
|
-
#endif//__cplusplus
|
|
78
|
-
|
|
79
|
-
void GetI4LumaIChromaAddrTable (int32_t* pBlockOffset, const int32_t kiYStride, const int32_t kiUVStride);
|
|
80
|
-
|
|
81
|
-
} // namespace WelsDec
|
|
82
|
-
|
|
83
|
-
#endif//WELS_DECODE_MB_AUX_H__
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* \copy
|
|
3
|
-
* Copyright (c) 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
|
-
|
|
33
|
-
#ifndef WELS_DECODE_SLICE_H__
|
|
34
|
-
#define WELS_DECODE_SLICE_H__
|
|
35
|
-
|
|
36
|
-
#include "decoder_context.h"
|
|
37
|
-
|
|
38
|
-
namespace WelsDec {
|
|
39
|
-
|
|
40
|
-
int32_t WelsActualDecodeMbCavlcISlice (PWelsDecoderContext pCtx);
|
|
41
|
-
int32_t WelsDecodeMbCavlcISlice (PWelsDecoderContext pCtx, PNalUnit pNalCur, uint32_t& uiEosFlag);
|
|
42
|
-
|
|
43
|
-
int32_t WelsActualDecodeMbCavlcPSlice (PWelsDecoderContext pCtx);
|
|
44
|
-
int32_t WelsDecodeMbCavlcPSlice (PWelsDecoderContext pCtx, PNalUnit pNalCur, uint32_t& uiEosFlag);
|
|
45
|
-
|
|
46
|
-
int32_t WelsActualDecodeMbCavlcBSlice (PWelsDecoderContext pCtx);
|
|
47
|
-
int32_t WelsDecodeMbCavlcBSlice (PWelsDecoderContext pCtx, PNalUnit pNalCur, uint32_t& uiEosFlag);
|
|
48
|
-
|
|
49
|
-
typedef int32_t (*PWelsDecMbFunc) (PWelsDecoderContext pCtx, PNalUnit pNalCur, uint32_t& uiEosFlag);
|
|
50
|
-
|
|
51
|
-
int32_t WelsDecodeMbCabacISlice (PWelsDecoderContext pCtx, PNalUnit pNalCur, uint32_t& uiEosFlag);
|
|
52
|
-
int32_t WelsDecodeMbCabacPSlice (PWelsDecoderContext pCtx, PNalUnit pNalCur, uint32_t& uiEosFlag);
|
|
53
|
-
int32_t WelsDecodeMbCabacBSlice (PWelsDecoderContext pCtx, PNalUnit pNalCur, uint32_t& uiEosFlag);
|
|
54
|
-
int32_t WelsDecodeMbCabacISliceBaseMode0 (PWelsDecoderContext pCtx, uint32_t& uiEosFlag);
|
|
55
|
-
int32_t WelsDecodeMbCabacPSliceBaseMode0 (PWelsDecoderContext pCtx, PWelsNeighAvail pNeighAvail, uint32_t& uiEosFlag);
|
|
56
|
-
int32_t WelsDecodeMbCabacBSliceBaseMode0 (PWelsDecoderContext pCtx, PWelsNeighAvail pNeighAvail, uint32_t& uiEosFlag);
|
|
57
|
-
|
|
58
|
-
int32_t WelsTargetSliceConstruction (PWelsDecoderContext pCtx); //construction based on slice
|
|
59
|
-
|
|
60
|
-
int32_t WelsDecodeSlice (PWelsDecoderContext pCtx, bool bFirstSliceInLayer, PNalUnit pNalCur);
|
|
61
|
-
int32_t WelsDecodeAndConstructSlice (PWelsDecoderContext pCtx);
|
|
62
|
-
|
|
63
|
-
int32_t WelsTargetMbConstruction (PWelsDecoderContext pCtx);
|
|
64
|
-
|
|
65
|
-
int32_t WelsMbIntraPredictionConstruction (PWelsDecoderContext pCtx, PDqLayer pCurDqLayer, bool bOutput);
|
|
66
|
-
int32_t WelsMbInterSampleConstruction (PWelsDecoderContext pCtx, PDqLayer pCurDqLayer,
|
|
67
|
-
uint8_t* pDstY, uint8_t* pDstU, uint8_t* pDstV, int32_t iStrideL, int32_t iStrideC);
|
|
68
|
-
int32_t WelsMbInterConstruction (PWelsDecoderContext pCtx, PDqLayer pCurDqLayer);
|
|
69
|
-
void WelsLumaDcDequantIdct (int16_t* pBlock, int32_t iQp, PWelsDecoderContext pCtx);
|
|
70
|
-
int32_t WelsMbInterPrediction (PWelsDecoderContext pCtx, PDqLayer pCurDqLayer);
|
|
71
|
-
void WelsChromaDcIdct (int16_t* pBlock);
|
|
72
|
-
bool ComputeColocatedTemporalScaling (PWelsDecoderContext pCtx);
|
|
73
|
-
|
|
74
|
-
#ifdef __cplusplus
|
|
75
|
-
extern "C" {
|
|
76
|
-
#endif//__cplusplus
|
|
77
|
-
|
|
78
|
-
#if defined(X86_ASM)
|
|
79
|
-
void WelsBlockZero16x16_sse2 (int16_t* block, int32_t stride);
|
|
80
|
-
void WelsBlockZero8x8_sse2 (int16_t* block, int32_t stride);
|
|
81
|
-
#endif
|
|
82
|
-
|
|
83
|
-
#if defined(HAVE_NEON)
|
|
84
|
-
void WelsBlockZero16x16_neon (int16_t* block, int32_t stride);
|
|
85
|
-
void WelsBlockZero8x8_neon (int16_t* block, int32_t stride);
|
|
86
|
-
#endif
|
|
87
|
-
|
|
88
|
-
#if defined(HAVE_NEON_AARCH64)
|
|
89
|
-
void WelsBlockZero16x16_AArch64_neon (int16_t* block, int32_t stride);
|
|
90
|
-
void WelsBlockZero8x8_AArch64_neon (int16_t* block, int32_t stride);
|
|
91
|
-
#endif
|
|
92
|
-
#ifdef __cplusplus
|
|
93
|
-
}
|
|
94
|
-
#endif//__cplusplus
|
|
95
|
-
|
|
96
|
-
void WelsBlockFuncInit (SBlockFunc* pFunc, int32_t iCpu);
|
|
97
|
-
void WelsBlockZero16x16_c (int16_t* block, int32_t stride);
|
|
98
|
-
void WelsBlockZero8x8_c (int16_t* block, int32_t stride);
|
|
99
|
-
|
|
100
|
-
} // namespace WelsDec
|
|
101
|
-
|
|
102
|
-
#endif //WELS_DECODE_SLICE_H__
|
|
103
|
-
|
|
104
|
-
|