[FFmpeg-devel] [PATCH v2 0/7] avcodec/mpegvideoencdsp improvements
Ramiro Polla
ramiro.polla at gmail.com
Wed Aug 21 17:55:48 EEST 2024
The tests have now been run on an A55 instead of an A53 (the RK3588 has
both in-order A55 and out-of-order A76, so it makes testing easier).
Changes:
- draw_edges_mmx: support negative strides
- draw_edges_mmx: removed redundant variable assignment (last_line)
- checkasm: merged commits adding mpegvideoencdsp tests
- checkasm: add new tests to fate
- checkasm: test for negative strides
- neon: remove spaces inside {}
- neon: do two lines per loop in pix_sum (faster on A55, slower on A76,
but a good compromise)
Ramiro Polla (7):
avcodec/x86/mpegvideoencdsp: support negative strides in
draw_edges_mmx()
checkasm/mpegvideoencdsp: add pix_sum, pix_norm1, and draw_edges
avcodec/aarch64/mpegvideoencdsp: add neon implementations for pix_sum
and pix_norm1
avcodec/aarch64/mpegvideoencdsp: add dotprod implementation for
pix_norm1
avcodec/x86/mpegvideoencdsp: fix comment for draw_edges_mmx
avcodec/x86/mpegvideoencdsp: speed up draw_edges_mmx by using memcpy()
avcodec/mpegvideoencdsp: speed up draw_edges_8_c by inlining it for
all used edge widths
libavcodec/aarch64/Makefile | 2 +
libavcodec/aarch64/mpegvideoencdsp_init.c | 49 ++++++++
libavcodec/aarch64/mpegvideoencdsp_neon.S | 97 ++++++++++++++
libavcodec/mpegvideoencdsp.c | 26 +++-
libavcodec/mpegvideoencdsp.h | 2 +
libavcodec/x86/mpegvideoencdsp_init.c | 61 +++------
tests/checkasm/Makefile | 1 +
tests/checkasm/checkasm.c | 3 +
tests/checkasm/checkasm.h | 1 +
tests/checkasm/mpegvideoencdsp.c | 147 ++++++++++++++++++++++
tests/fate/checkasm.mak | 1 +
11 files changed, 338 insertions(+), 52 deletions(-)
create mode 100644 libavcodec/aarch64/mpegvideoencdsp_init.c
create mode 100644 libavcodec/aarch64/mpegvideoencdsp_neon.S
create mode 100644 tests/checkasm/mpegvideoencdsp.c
--
2.30.2
More information about the ffmpeg-devel
mailing list