Limin Wang
43295ae6a9
swscale/swscale_unscaled: don't use the optimized bgr24toYV12 unscaled conversion when width%2
...
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
2021-06-06 12:34:05 +08:00
Anton Khirnov
e15371061d
lavu/mem: move the DECLARE_ALIGNED macro family to mem_internal on next+1 bump
...
They are not properly namespaced and not intended for public use.
2021-01-01 14:14:57 +01:00
Jeremy Leconte
29cef1bcd6
libswscale: avoid UB nullptr-with-offset.
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-12-24 15:27:56 +01:00
Paul B Mahol
9d58cdb4ba
swscale: do not drop half of bits from 16bit bayer formats
2020-08-08 12:03:42 +02:00
Mark Reid
b4967fc71c
libswscale: add output support for AV_PIX_FMT_GBRAPF32
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-05-05 20:06:58 +02:00
Limin Wang
8558c231fb
swscale/swscale_unscaled: add AV_PIX_FMT_GBRAP10 for LE and BE conversion wrapper
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-12-10 16:09:14 +01:00
Ting Fu
039a0ebe6f
libswscale/swscale_unscaled.c: remove redundant code
...
Signed-off-by: Ting Fu <ting.fu@intel.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-12-06 11:25:29 +01:00
Limin Wang
a5e24be52a
swscale/swscale_unscaled: fix gbrap10be md5 different on big endian system
...
You can reproduce it by below command:
./ffmpeg -f lavfi -i "testsrc=duration=1:rate=30" -vf format=gbrap10 -vcodec rawvideo \
-pix_fmt gbrap10le -flags +bitexact -sws_flags +accurate_rnd+bitexact -fflags +bitexact \
-frames:v 1 -f nut md5:
little-endian:
f91e2edd8098276579c1929e5e160416
big-endian:
ba4d011dbbdc78ccbf6cc7d698630929
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-11-01 14:43:16 +01:00
Philip Langdale
cd48318035
swscale: Add support for NV24 and NV42
...
The implementation is pretty straight-forward. Most of the existing
NV12 codepaths work regardless of subsampling and are re-used as is.
Where necessary I wrote the slightly different NV24 versions.
Finally, the one thing that confused me for a long time was the
asm specific x86 path that did an explicit exclusion check for NV12.
I replaced that with a semi-planar check and also updated the
equivalent PPC code, which Lauri kindly checked.
2019-05-12 07:51:02 -07:00
Michael Niedermayer
8865ae959b
swscale/swscale_unscaled: Fix chroma slice height
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-03-28 22:47:32 +01:00
Dong, Jerry
c47fada298
swscale/swscale_unscaled: fixed the issue that when width/height is not 2-multiple, transition of nv12 to u/v planes is not completed.
...
Signed-off-by: Dong, Jerry <jerry.dong@intel.com>
Signed-off-by: Decai Lin <decai.lin@intel.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-03-28 20:28:43 +01:00
Martin Vignali
156120fcf8
swscale/swscale_unscaled : rename packed_16bpc_bswap
...
is used for packed and planar format
2018-10-24 21:21:20 +02:00
Martin Vignali
26bf4a4050
swscale/unscaled : add grayf32 le to be
2018-10-24 21:21:14 +02:00
Paul B Mahol
931e7c050e
swscale/swscale_unscaled: add gbrap -> packed rgb path
2018-09-09 22:58:26 +02:00
Sergey Lavrushkin
582bc5a348
libswscale: Adds conversions from/to float gray format.
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-08-14 18:22:39 +02:00
Paul B Mahol
b9dd058f7a
swscale: add gray14 support
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-05-05 21:35:31 +02:00
Philip Langdale
dd3f1e3a11
swscale: Introduce a helper to identify semi-planar formats
...
This cleans up the ever-more-unreadable list of semi-planar
exclusions for selecting the planar copy wrapper.
2018-03-03 15:20:19 -08:00
Philip Langdale
9d5aff09a7
swscale: Add p016 output support and generalise yuv420p1x to p010
...
To make the best use of existing code, I generalised the wrapper
that currently does yuv420p10 to p010 to support any mixture of
input and output sizes between 10 and 16 bits. This had the side
effect of yielding a working code path for all yuv420p1x formats
to p01x.
2018-03-02 14:52:48 -08:00
Mateusz
50ce296026
swscale: use dithering in DITHER_COPY only if not set -sws_dither none
...
This patch uses dithering in DITHER_COPY macro only if
it was not used option '-sws_dither none'.
With option '-sws_dither none' it uses downshift.
For human eye dithering is OK, for video codecs not necessarily.
If user don't want to use dithering, we should respect that.
Signed-off-by: Mateusz Brzostek <mateuszb@poczta.onet.pl>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-10-25 21:50:37 +02:00
Mateusz
f192f2f061
swscale: more accurate DITHER_COPY macro for full and limited range
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-10-23 23:00:05 +02:00
Carl Eugen Hoyos
cb1a3eecac
lsws/rgb2rgb: Add unscaled 48bit to 64bit rgb conversion.
...
Based on b4befca2
and 6b7849e6
by Paul B Mahol.
Fixes ticket #6608 .
2017-08-24 12:50:06 +02:00
Paul B Mahol
de48710c11
libswscale: add gray9 support
2017-08-07 13:09:41 +02:00
Philip Langdale
4c2176d45b
swscale: add P016 input support
2017-02-01 14:29:11 -08:00
Carl Eugen Hoyos
b5177c7051
lsws: Add GRAY10 conversion.
...
Based on 19be5fb7
by Luca Barbato.
2016-11-14 10:35:06 +01:00
Luca Barbato
19be5fb728
swscale: Add GRAY12
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-11-10 00:49:29 +01:00
Timo Rothenpieler
e3fd1857fb
swscale: add unscaled conversion from yuv420p to p010
2016-09-06 12:41:28 +02:00
Michael Niedermayer
b4d7c1f84b
swscale/swscale_unscaled: Try to fix bayer_to_yv12_wrapper() with slices
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-03 14:14:06 +02:00
Michael Niedermayer
e57d99dd4e
swscale/swscale_unscaled: Try to fix Rgb16ToPlanarRgb16Wrapper() with slices
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-03 14:14:06 +02:00
Timo Rothenpieler
39f75645c8
swscale: add unscaled copy from yuv420p10 to p010
2016-09-03 00:09:39 +02:00
Michael Niedermayer
47bc1bdafb
swscale/swscale_unscaled: Fix packed_16bpc_bswap() with slices
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-02 21:53:53 +02:00
Pedro Arthur
b5deacfb1f
swscale: fix crash with swscale-test when using slices
2016-06-10 08:50:57 -03:00
Clément Bœsch
f1148390d7
sws/aarch64: add {nv12,nv21,yuv420p,yuv422p}_to_{argb,rgba,abgr,rgba}_neon
2016-03-01 17:53:33 +01:00
Kieran Kunhya
4170a44bbc
Add GBRAP12 pixel format
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-02-24 03:22:31 +01:00
Derek Buitenhuis
21f9468402
avutil: Rename FF_CEIL_COMPAT to AV_CEIL_COMPAT
...
Libav, for some reason, merged this as a public API function. This will
aid in future merges.
A define is left for backwards compat, just in case some person
used it, since it is in a public header.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-01-27 16:36:46 +00:00
Hendrik Leppkes
2e31434d84
swscale: add P010 input support
2016-01-26 12:10:45 +01:00
Michael Niedermayer
757248ea3c
swscale/swscale_unscaled: Fix odd height inputs for bayer_to_yv12_wrapper()
...
Fixes: 372d2df1f04b49e25f109f07f90b1505/asan_heap-oob_2835d2e_8501_99e0114d7ba3a6db885d0b4684d200c1.cine
Fixes out of array read
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-01-17 01:19:43 +01:00
Michael Niedermayer
ad3b6fa7d8
swscale/swscale_unscaled: Fix odd height inputs for bayer_to_rgb24_wrapper()
...
Fixes: 372d2df1f04b49e25f109f07f90b1505/asan_heap-oob_2835d2e_8501_99e0114d7ba3a6db885d0b4684d200c1.cine
Fixes out of array read
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-01-17 01:19:43 +01:00
Matthieu Bouron
46feb66972
swscale/arm: add ff_nv{12,21}_to_{argb,rgba,abgr,bgra}_neon
...
Signed-off-by: Matthieu Bouron <matthieu.bouron@stupeflix.com>
Signed-off-by: Clément Bœsch <clement@stupeflix.com>
2015-11-23 14:47:12 +01:00
Hendrik Leppkes
5d8e836d0e
Replace all remaining occurances of step/depth_minus1 and offset_plus1
2015-09-08 17:10:48 +02:00
Hendrik Leppkes
151aa2ebff
Merge commit '2268db2cd052674fde55c7d48b7a5098ce89b4ba'
...
* commit '2268db2cd052674fde55c7d48b7a5098ce89b4ba':
lavu: Drop the {minus,plus}1 suffix from AVComponentDescriptor fields
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-09-08 16:35:28 +02:00
Vittorio Giovara
2268db2cd0
lavu: Drop the {minus,plus}1 suffix from AVComponentDescriptor fields
...
The new fields can be accessed directly and are more intelligible.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-09-07 12:37:47 +02:00
Paul B Mahol
052f64ecb2
swscale: ayuv64le input support
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-07-24 03:44:58 +00:00
Michael Niedermayer
f6ab967eae
swscale/swscale_unscaled: Fix rounding difference with RGBA output between little and big endian
...
Fixes fate/dds-rgb16 on big endian
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-29 13:54:35 +02:00
Ronald S. Bultje
711d8812ad
swscale: add yuv440p10/12 pixfmts.
2015-05-06 12:04:31 -04:00
Himangi Saraogi
9a60b1fad0
libswscale: fix compiler warnings enumerated type mixed with another type
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-03-15 18:29:22 +01:00
Michael Niedermayer
27513846f6
Merge commit '928061670e873e816daa14827853b7e11221ff5f'
...
* commit '928061670e873e816daa14827853b7e11221ff5f':
libswscale: GBRAP input & output and GBRAP16 input support
Conflicts:
libswscale/input.c
libswscale/swscale_internal.h
libswscale/swscale_unscaled.c
libswscale/utils.c
tests/ref/fate/filter-pixdesc-gbrap
tests/ref/fate/filter-pixfmts-copy
tests/ref/fate/filter-pixfmts-null
tests/ref/fate/filter-pixfmts-scale
tests/ref/fate/filter-pixfmts-vflip
See: 5c057433cc
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-01-15 05:47:25 +01:00
Paul B Mahol
928061670e
libswscale: GBRAP input & output and GBRAP16 input support
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-01-14 17:17:24 +01:00
Michael Niedermayer
e827f65618
Merge commit '33c827f632f95ffe3399b695a5a0d47b366b6e20'
...
* commit '33c827f632f95ffe3399b695a5a0d47b366b6e20':
swscale: Properly scale YUV
Conflicts:
libswscale/swscale_unscaled.c
tests/ref/fate/filter-pixdesc-yuv420p10be
tests/ref/fate/filter-pixdesc-yuv420p10le
tests/ref/fate/filter-pixdesc-yuv420p9be
tests/ref/fate/filter-pixdesc-yuv420p9le
tests/ref/fate/filter-pixdesc-yuva420p10be
tests/ref/fate/filter-pixdesc-yuva420p10le
tests/ref/fate/filter-pixdesc-yuva420p9be
tests/ref/fate/filter-pixdesc-yuva420p9le
tests/ref/fate/filter-pixfmts-copy
tests/ref/fate/filter-pixfmts-null
tests/ref/fate/filter-pixfmts-scale
tests/ref/fate/filter-pixfmts-vflip
See: abe0b8e9f3
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-06 01:30:08 +01:00
Derek Buitenhuis
33c827f632
swscale: Properly scale YUV
...
Only shift limited range luma, and always only shift chroma
for upconversion.
Based off a patch by Michael Niedermayer.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-12-05 13:03:49 +00:00
Michael Niedermayer
700bf1fa4e
swscale/swscale_unscaled: fix ya16 input
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-05 00:33:27 +02:00