diff options
author | Martin Storsjö <martin@martin.st> | 2020-05-12 11:22:45 +0300 |
---|---|---|
committer | Martin Storsjö <martin@martin.st> | 2020-05-13 13:20:08 +0300 |
commit | 353aecbb28e3976b6f4d7a4262398852cd67b5a2 (patch) | |
tree | d76f7b9f9a5349f1ecbd4b35340427a849aa091a /libavcodec/x86 | |
parent | b12b05374f7025167e2c43449ceb8ba3f0a6083f (diff) | |
download | ffmpeg-353aecbb28e3976b6f4d7a4262398852cd67b5a2.tar.gz |
pixblockdsp, avdct: Add get_pixels_unaligned
Use this in vf_spp.c, where the get_pixels operation is done on
unaligned source addresses.
Hook up the x86 (mmx and sse) versions of get_pixels to this
function pointer, as those implementations seem to support unaligned
use.
This fixes fate-filter-spp on armv7.
Signed-off-by: Martin Storsjö <martin@martin.st>
Diffstat (limited to 'libavcodec/x86')
-rw-r--r-- | libavcodec/x86/pixblockdsp_init.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libavcodec/x86/pixblockdsp_init.c b/libavcodec/x86/pixblockdsp_init.c index ade55e01a3..3a5eb6959c 100644 --- a/libavcodec/x86/pixblockdsp_init.c +++ b/libavcodec/x86/pixblockdsp_init.c @@ -37,15 +37,19 @@ av_cold void ff_pixblockdsp_init_x86(PixblockDSPContext *c, int cpu_flags = av_get_cpu_flags(); if (EXTERNAL_MMX(cpu_flags)) { - if (!high_bit_depth) + if (!high_bit_depth) { + c->get_pixels_unaligned = c->get_pixels = ff_get_pixels_mmx; + } c->diff_pixels_unaligned = c->diff_pixels = ff_diff_pixels_mmx; } if (EXTERNAL_SSE2(cpu_flags)) { - if (!high_bit_depth) + if (!high_bit_depth) { + c->get_pixels_unaligned = c->get_pixels = ff_get_pixels_sse2; + } c->diff_pixels_unaligned = c->diff_pixels = ff_diff_pixels_sse2; } |