[FFmpeg-devel] [PATCH v2 3/5] lavc/vp9dsp: R-V V mc tap h v
Rémi Denis-Courmont
remi at remlab.net
Sat May 25 20:36:03 EEST 2024
Le lauantaina 25. toukokuuta 2024, 13.38.39 EEST flow gg a écrit :
> > Is there a reason that you cannot use the tables from C code?
>
> Similar to VP8, to adjust the positive and negative data and prevent small
> probability overflow during calculations.
>
> > AFAICT, regular and sharp are identical, except for the base address of
> > the filter table, so it should be possible to share the byte code
>
> Initially, they used the same code, but after testing hundreds of times,
> there were always a few failures...
AFAICT, the C reference and the AArch64 assembler are exactly the same for all
3 filters, except for the offset in the filter table. So logically, it ought toe
be possible to merge regular and sharp with almost no changes, and merge
smooth with a few fixes.
As for the tables themselves, it seems the "problem" is that C uses 16-bit
values for no apparent reasons. We should probably change the C code to use 8-
bit on all platforms - except AArch64, because the NEON code probably relies
on 16-bit format.
--
Rémi Denis-Courmont
http://www.remlab.net/
More information about the ffmpeg-devel
mailing list