1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-26 19:01:44 +02:00
FFmpeg/libswscale
Rémi Denis-Courmont 6d60cc7baf sws/rgb2rgb: fix unaligned accesses in R-V V YUYV to I422p
In my personal opinion, we should not need to support unaligned YUY2
pixel maps. They should always be aligned to at least 32 bits, and the
current code assumes just 16 bits. However checkasm does test for
unaligned input bitmaps. QEMU accepts it, but real hardware dose not.

In this particular case, we can at the same time improve performance and
handle unaligned inputs, so do just that.

uyvytoyuv422_c:      104379.0
uyvytoyuv422_c:      104060.0
uyvytoyuv422_rvv_i32: 25284.0 (before)
uyvytoyuv422_rvv_i32: 19303.2 (after)
2023-11-13 18:34:29 +02:00
..
aarch64 aarch64: Reindent all assembly to 8/24 column indentation 2023-10-21 23:25:54 +03:00
arm sws: rename SwsContext.swscale to convert_unscaled 2021-07-03 15:57:53 +02:00
loongarch swscale/la: Add following builtin optimized functions 2023-05-25 21:05:15 +02:00
ppc swscale/ppc: remove hScale8To19_vsx 2023-05-20 20:07:18 +02:00
riscv sws/rgb2rgb: fix unaligned accesses in R-V V YUYV to I422p 2023-11-13 18:34:29 +02:00
tests swscale: introduce isSwappedChroma 2022-01-04 19:39:22 -06:00
x86 x86: replace explicit REP_RETs with RETs 2023-02-01 04:23:55 +01:00
alphablend.c swscale/alphablend: Fix slice handling 2021-10-03 20:38:29 +02:00
bayer_template.c swscale: do not drop half of bits from 16bit bayer formats 2020-08-08 12:03:42 +02:00
gamma.c
half2float.c swscale/input: add rgbaf16 input support 2022-08-19 22:09:36 +02:00
hscale_fast_bilinear.c
hscale.c swscale: add opaque parameter to input functions 2022-08-19 22:09:36 +02:00
input.c swscale: add GBRAP14 format support 2023-09-28 19:37:58 +02:00
libswscale.v
log2_tab.c
Makefile swscale/input: add rgbaf16 input support 2022-08-19 22:09:36 +02:00
options.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
output.c swscale: add GBRAP14 format support 2023-09-28 19:37:58 +02:00
rgb2rgb_template.c swscale/rgb2rgb_template: use shuffle macro on big-endian arches 2020-12-12 23:07:22 -05:00
rgb2rgb.c sws/rgb2rgb: RISC-V V shuffle_bytes_xxxx functions 2022-09-30 07:24:09 +02:00
rgb2rgb.h sws/rgb2rgb: RISC-V V shuffle_bytes_xxxx functions 2022-09-30 07:24:09 +02:00
slice.c swscale/input: add rgbaf16 input support 2022-08-19 22:09:36 +02:00
swscale_internal.h swscale/la: Optimize hscale functions with lasx. 2022-09-10 22:56:38 +02:00
swscale_unscaled.c swscale: add GBRAP14 format support 2023-09-28 19:37:58 +02:00
swscale.c swscale: fix sws_setColorspaceDetails after sws_init_context 2023-11-09 12:53:35 +01:00
swscale.h swscale: document some missing arguments 2022-10-17 09:56:47 +02:00
swscaleres.rc
utils.c swscale: don't omit ff_sws_init_range_convert for high-bit 2023-11-09 12:53:35 +01:00
version_major.h Bump major versions of all libraries 2023-02-09 15:35:14 +01:00
version.c lib*/version: Move library version functions into files of their own 2022-05-10 06:49:32 +02:00
version.h Bump versions after 6.1 2023-10-29 16:19:14 +01:00
vscale.c Replace all occurences of av_mallocz_array() by av_calloc() 2021-09-20 01:03:52 +02:00
yuv2rgb.c swscale/yuv2rgb: fix sws_getCoefficients for colorspace=0 2023-11-09 12:53:35 +01:00