1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-12 19:18:44 +02:00
FFmpeg/libavcodec/x86
Nuo Mi 6464c157d5 x86/vvcdec: add dmvr avx2 code
Decoder-Side Motion Vector Refinement is about 4~8% CPU usage for some clips

here is the test result for one time
clips                                     | before| after | delta
------------------------------------------|-------|-------|------
RitualDance_1920x1080_60_10_420_37_RA.266 | 338.7 | 354.3 |4.61%
NovosobornayaSquare_1920x1080.bin         | 320.3 | 329.3 |2.81%
Tango2_3840x2160_60_10_420_27_LD.266      | 83.3  | 83.7  |0.48%
RitualDance_1920x1080_60_10_420_32_LD.266 | 320.7 | 327.3 |2.06%
Chimera_8bit_1080P_1000_frames.vvc        | 360.7 | 381.0 |5.63%
BQTerrace_1920x1080_60_10_420_22_RA.vvc   | 161.7 | 163.0 |0.80%
2024-08-15 20:19:45 +08:00
..
h26x avcodec: Remove superfluous ';' outside of functions 2024-02-21 01:06:29 +01:00
vvc x86/vvcdec: add dmvr avx2 code 2024-08-15 20:19:45 +08:00
aacencdsp_init.c x86/aacencdsp: add AVX version of quantize_bands 2024-06-09 12:29:49 -03:00
aacencdsp.asm x86/aacencdsp: fix ff_aac_quantize_bands_avx on unix64 ABI 2024-06-09 17:16:02 -03:00
aacpsdsp_init.c
aacpsdsp.asm
ac3dsp_downmix.asm
ac3dsp_init.c x86/ac3dsp: add ff_float_to_fixed24_avx() 2023-11-25 21:50:56 -03:00
ac3dsp.asm x86/ac3dsp: clear the upper 32 bits for input arguments where needed 2024-04-08 13:45:58 -03:00
alacdsp_init.c
alacdsp.asm
audiodsp_init.c
audiodsp.asm
blockdsp_init.c x86/blockdsp: add sse2 and avx2 versions of fill_block_tab 2024-05-08 21:13:23 -03:00
blockdsp.asm x86/blockdsp: add sse2 and avx2 versions of fill_block_tab 2024-05-08 21:13:23 -03:00
bswapdsp_init.c
bswapdsp.asm
cabac.h
cavsdsp.c
cavsidct.asm
celt_pvq_init.c
celt_pvq_search.asm x86: Update x86inc.asm 2024-03-24 14:53:57 +01:00
cfhddsp_init.c
cfhddsp.asm
cfhdencdsp_init.c
cfhdencdsp.asm
constants.c
constants.h
dcadsp_init.c
dcadsp.asm
dct32.asm
dirac_dwt_init.c
dirac_dwt.asm
diracdsp_init.c
diracdsp.asm
dnxhdenc_init.c
dnxhdenc.asm
exrdsp_init.c
exrdsp.asm
fdct.c
fdct.h
fdctdsp_init.c
flac_dsp_gpl.asm
flacdsp_init.c x86/flacdsp: add an SSE4 version of wasted33 2024-05-13 12:18:10 -03:00
flacdsp.asm x86/flacdsp: remove unused parameters to pmacsdql macro 2024-05-13 12:18:38 -03:00
flacencdsp_init.c
fmtconvert_init.c
fmtconvert.asm
fpel.asm avcodec/x86/fpel: Remove remnants of MMX 2024-03-03 19:48:41 +01:00
fpel.h avcodec/x86/h264_qpel: Remove put_h264_qpel[48]_mmxext 2024-02-20 00:09:05 +01:00
g722dsp_init.c
g722dsp.asm
h263_loopfilter.asm
h263dsp_init.c
h264_cabac.c
h264_chromamc_10bit.asm
h264_chromamc.asm x86: Update x86inc.asm 2024-03-24 14:53:57 +01:00
h264_deblock_10bit.asm
h264_deblock.asm
h264_idct_10bit.asm
h264_idct.asm avcodec/x86/h264_idct: Fix incorrect xmm spilling on win64 2024-03-25 21:17:47 +01:00
h264_intrapred_10bit.asm
h264_intrapred_init.c x86/h264_pred: Convert ff_pred8x8_vertical_8_mmx to ff_pred8x8_vertical_8_sse2 2024-02-13 21:17:06 +00:00
h264_intrapred.asm x86: Update x86inc.asm 2024-03-24 14:53:57 +01:00
h264_qpel_8bit.asm
h264_qpel_10bit.asm
h264_qpel.c avcodec/x86/h264_qpel: Remove put_h264_qpel[48]_mmxext 2024-02-20 00:09:05 +01:00
h264_weight_10bit.asm
h264_weight.asm
h264chroma_init.c
h264dsp_init.c
hevc_add_res.asm
hevc_deblock.asm avcodec/x86/hevc: fix luma 12b overflow 2024-02-26 12:29:58 +01:00
hevc_idct.asm
hevc_mc.asm x86: Update x86inc.asm 2024-03-24 14:53:57 +01:00
hevc_sao_10bit.asm
hevc_sao.asm
hevcdsp_init.c lavc/hevc*: move to hevc/ subdir 2024-06-04 11:46:27 +02:00
hevcdsp.h
hpeldsp_init.c avcodec/x86/hpeldsp_init: Avoid using ff_avg_pixels16_mmx 2024-02-20 00:09:05 +01:00
hpeldsp_rnd_template.c
hpeldsp.asm avcodec/x86/hpeldsp_vp3: Merge into hpeldsp 2023-09-07 00:24:39 +02:00
hpeldsp.h avcodec/x86/hpeldsp_vp3: Merge into hpeldsp 2023-09-07 00:24:39 +02:00
huffyuvdsp_init.c
huffyuvdsp_template.asm
huffyuvdsp.asm
huffyuvencdsp_init.c
huffyuvencdsp.asm
idctdsp_init.c avcodec/x86/mpegvideoenc_template: Disable dead code 2023-09-15 13:08:55 +02:00
idctdsp.asm
idctdsp.h
imdct36.asm
inline_asm.h
jpeg2000dsp_init.c
jpeg2000dsp.asm
lossless_audiodsp_init.c
lossless_audiodsp.asm x86/: clear the high bits for order in scalarproduct_and_madd functions 2023-11-22 14:18:42 -03:00
lossless_videodsp_init.c
lossless_videodsp.asm
lossless_videoencdsp_init.c
lossless_videoencdsp.asm
lpc_init.c
lpc.asm
Makefile Remove remnants of prores_lgpl decoder 2024-05-07 23:53:26 +02:00
mathops.h
me_cmp_init.c avcodec/mpegvideo_enc: Only keep what is used from MECmpContext 2024-06-20 18:58:38 +02:00
me_cmp.asm
mlpdsp_init.c
mlpdsp.asm
mpeg4videodsp.c
mpegaudiodsp.c avcodec/mpegaudiodsp: Init dct32 directly 2023-10-01 01:53:32 +02:00
mpegvideo.c
mpegvideoenc_qns_template.c
mpegvideoenc_template.c avcodec/x86/mpegvideoenc_template: Disable dead code 2023-09-15 13:08:55 +02:00
mpegvideoenc.c
mpegvideoencdsp_init.c
mpegvideoencdsp.asm
opusdsp_init.c opusdsp: add ability to modify deemphasis constant 2024-04-27 11:12:07 +02:00
opusdsp.asm opusdsp: add ability to modify deemphasis constant 2024-04-27 11:12:07 +02:00
pixblockdsp_init.c
pixblockdsp.asm
pngdsp_init.c
pngdsp.asm
proresdsp_init.c avcodec/proresdsp: Pass necessary parameter directly 2023-09-11 00:26:34 +02:00
proresdsp.asm
qpel.asm
qpeldsp_init.c
qpeldsp.asm
rnd_template.c
rv34dsp_init.c
rv34dsp.asm x86: Avoid using 'd' as an argument name 2024-03-24 14:53:57 +01:00
rv40dsp_init.c
rv40dsp.asm x86: Update x86inc.asm 2024-03-24 14:53:57 +01:00
sbcdsp_init.c
sbcdsp.asm
sbrdsp_init.c
sbrdsp.asm x86: Update x86inc.asm 2024-03-24 14:53:57 +01:00
simple_idct10_template.asm
simple_idct10.asm
simple_idct.asm avcodec/x86/rv40dsp, simple_idct: Remove remnants of MMX 2024-03-02 02:54:12 +01:00
simple_idct.h
snowdsp.c avcodec/snow: Move dsp helper functions to snow_dwt.h 2023-10-02 12:23:16 +02:00
svq1enc_init.c
svq1enc.asm
synth_filter_init.c
synth_filter.asm
takdsp_init.c x86/takdsp: add avx2 versions of all functions 2023-12-23 08:39:22 -03:00
takdsp.asm x86/takdsp: add missing wrappers to AVX2 functions 2023-12-25 22:31:15 -03:00
ttadsp_init.c
ttadsp.asm
ttaencdsp_init.c
ttaencdsp.asm
utvideodsp_init.c
utvideodsp.asm
v210-init.c
v210.asm
v210enc_init.c
v210enc.asm
vc1dsp_init.c
vc1dsp_loopfilter.asm
vc1dsp_mc.asm
vc1dsp_mmx.c
vc1dsp.h
videodsp_init.c
videodsp.asm
vorbisdsp_init.c
vorbisdsp.asm
vp3dsp_init.c avcodec/x86/vp3dsp_init: Set correct function pointer, fix crash 2024-05-02 23:38:15 +02:00
vp3dsp.asm
vp6dsp_init.c
vp6dsp.asm vp6dsp: Remove MMX code 2024-02-13 20:47:16 +00:00
vp8dsp_init.c
vp8dsp_loopfilter.asm
vp8dsp.asm x86: Update x86inc.asm 2024-03-24 14:53:57 +01:00
vp9dsp_init_10bpp.c
vp9dsp_init_12bpp.c
vp9dsp_init_16bpp_template.c
vp9dsp_init_16bpp.c
vp9dsp_init.c
vp9dsp_init.h
vp9intrapred_16bpp.asm
vp9intrapred.asm
vp9itxfm_16bpp.asm x86: Update x86inc.asm 2024-03-24 14:53:57 +01:00
vp9itxfm_template.asm
vp9itxfm.asm x86: Update x86inc.asm 2024-03-24 14:53:57 +01:00
vp9lpf_16bpp.asm
vp9lpf.asm
vp9mc_16bpp.asm
vp9mc.asm
vpx_arith.h
w64xmmtest.c
xvididct_init.c
xvididct.asm
xvididct.h