> 发件人: ffmpeg-devel <ffmpeg-devel-boun...@ffmpeg.org> 代表 Michael Niedermayer > <mich...@niedermayer.cc> > 发送时间: 2024年1月22日 14:46 > 收件人: FFmpeg development discussions and patches > 主题: Re: [FFmpeg-devel] [PATCH v3 7/8] avcodec/x86/vvc: add avg and avg_w AVX2 > optimizations > > On Tue, Jan 23, 2024 at 01:46:27AM +0800, toq...@outlook.com wrote: >> From: Wu Jianhua <toq...@outlook.com> >> >> The avg/avg_w is based on dav1d. >> See >> https://code.videolan.org/videolan/dav1d/-/blob/master/src/x86/mc_avx2.asm >> >> >> Signed-off-by: Wu Jianhua <toq...@outlook.com> >> --- >> libavcodec/x86/vvc/Makefile | 3 +- >> libavcodec/x86/vvc/vvc_mc.asm | 301 +++++++++++++++++++++++++++++++ >> libavcodec/x86/vvc/vvcdsp_init.c | 52 ++++++ >> 3 files changed, 355 insertions(+), 1 deletion(-) >> create mode 100644 libavcodec/x86/vvc/vvc_mc.asm > > this seems to break x86-32 > > src/libavcodec/x86/vvc/vvc_mc.asm:51: error: symbol `ff_vvc_avg_8bpc_avx2.w2' > undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:51: error: symbol `ff_vvc_avg_8bpc_avx2.w4' > undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:51: error: symbol `ff_vvc_avg_8bpc_avx2.w8' > undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:51: error: symbol > `ff_vvc_avg_8bpc_avx2.w16' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:51: error: symbol > `ff_vvc_avg_8bpc_avx2.w32' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:51: error: symbol > `ff_vvc_avg_8bpc_avx2.w64' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:51: error: symbol > `ff_vvc_avg_8bpc_avx2.w128' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:52: error: symbol > `ff_vvc_avg_16bpc_avx2.w2' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:52: error: symbol > `ff_vvc_avg_16bpc_avx2.w4' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:52: error: symbol > `ff_vvc_avg_16bpc_avx2.w8' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:52: error: symbol > `ff_vvc_avg_16bpc_avx2.w16' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:52: error: symbol > `ff_vvc_avg_16bpc_avx2.w32' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:52: error: symbol > `ff_vvc_avg_16bpc_avx2.w64' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:52: error: symbol > `ff_vvc_avg_16bpc_avx2.w128' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:53: error: symbol > `ff_vvc_w_avg_8bpc_avx2.w2' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:53: error: symbol > `ff_vvc_w_avg_8bpc_avx2.w4' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:53: error: symbol > `ff_vvc_w_avg_8bpc_avx2.w8' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:53: error: symbol > `ff_vvc_w_avg_8bpc_avx2.w16' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:53: error: symbol > `ff_vvc_w_avg_8bpc_avx2.w32' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:53: error: symbol > `ff_vvc_w_avg_8bpc_avx2.w64' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:53: error: symbol > `ff_vvc_w_avg_8bpc_avx2.w128' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:54: error: symbol > `ff_vvc_w_avg_16bpc_avx2.w2' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:54: error: symbol > `ff_vvc_w_avg_16bpc_avx2.w4' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:54: error: symbol > `ff_vvc_w_avg_16bpc_avx2.w8' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:54: error: symbol > `ff_vvc_w_avg_16bpc_avx2.w16' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:54: error: symbol > `ff_vvc_w_avg_16bpc_avx2.w32' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:54: error: symbol > `ff_vvc_w_avg_16bpc_avx2.w64' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/libavcodec/x86/vvc/vvc_mc.asm:54: error: symbol > `ff_vvc_w_avg_16bpc_avx2.w128' undefined > src/libavcodec/x86/vvc/vvc_mc.asm:48: ... from macro `AVG_JMP_TABLE' defined > here > src/ffbuild/common.mak:103: recipe for target 'libavcodec/x86/vvc/vvc_mc.o' > failed > make: *** [libavcodec/x86/vvc/vvc_mc.o] Error 1 > make: *** Waiting for unfinished jobs.... >
It will be fixed in the v4. Thanks for this test. _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".