Ronald S. Bultje
1deb08fcb6
swscale: align vertical filtersize by 2 on x86.
...
The vertical scaler handles 2 rows at a time and thus requires
alignment by 2, or else it'll read invalid memory and result in
corrupt output.
13 years ago
Ronald S. Bultje
dc49bf1270
sws/pixfmt/pixdesc: add support for yuv420p9le/be.
13 years ago
Ronald S. Bultje
8305041e13
swscale: prevent overflow in coefficient calculation.
13 years ago
Ronald Bultje
d1d421cbc0
swscale: prevent overflow during initialization
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
13 years ago
Anton Khirnov
04de1569cd
sws: support yuv444p9/10 output.
13 years ago
Michael Niedermayer
cca81e7eb0
sws: gbr24p input support
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Reimar Döffinger
ae23b26995
Enable conversions to YUV444P9/YUV444P10, they seem to work fine.
...
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
13 years ago
Jean First
9569a3c9f4
Add new pix_fmt RGBA64
13 years ago
Ronald S. Bultje
ea540401d6
swscale: fix byte overreads in SSE-optimized hscale().
...
SSE-optimized hScale() scales up to 4 pixels at once, so we need to
allocate up to 3 padding pixels to prevent overreads. This fixes
valgrind errors in various swscale-tests on fate.
13 years ago
Michael Niedermayer
66bb5cd592
sws: remove hScale16N() and use ronalds reformated version of it.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Ronald S. Bultje
28c1115a91
swscale: use 15-bit intermediates for 9/10-bit scaling.
13 years ago
Stefano Sabatini
6a92551234
lsws: remove optimization debug logs in sws_init_context()
...
The logged information is possibly false, and it tends to be outdated
after each change since the logging code needs to be manually updated.
Simplify and prevent confusing wrong debug messages.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years ago
Stefano Sabatini
347167ecf5
lsws: use array for storing the supported in/out information
...
Also remove the unnecessary isSupportedIn/Out macros.
Make the code more compact/readable, and simplify the access to
lsws-specific pixel format information.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years ago
Stefano Sabatini
4ce0a94656
lsws: remove deprecated and unused stuff after the 0->1 major bump
13 years ago
Ronald S. Bultje
62ee0e6a97
Revert "swscale: use 15-bit intermediates for 9/10-bit scaling."
...
This reverts commit ac0fb59348
. It
causes valgrind errors which I'll want to investigate before
resubmitting this.
13 years ago
Ronald S. Bultje
ac0fb59348
swscale: use 15-bit intermediates for 9/10-bit scaling.
13 years ago
Stefano Sabatini
25a53c54d1
lsws: apply logging factorization in sws_scale_init()
14 years ago
Stefano Sabatini
07f49ca1d1
lsws: remove redundant macros isSupportedIn/Out
...
Directly call sws_isSupportedInput/Output.
14 years ago
Stefano Sabatini
64bb656326
lsws: factorize some logging code in sws_init_context()
14 years ago
Stefano Sabatini
e8794f1d5e
lsws: fix weird indent
14 years ago
Stefano Sabatini
c899bedbca
lsws: use array for storing the supported in/out information
14 years ago
Joseph Artsimovich
eedb1f2034
swscale: mark YUV422P10(LE,BE) as supported for output
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Ronald S. Bultje
baba2eedac
swscale: extend mmx padding.
...
Fixes a crash when forcing libc to strictly adhere to malloc sizes.
14 years ago
Diego Biurrun
96c1e6d40d
doxygen: Make sure parameter names match between .c and .h files.
14 years ago
Michael Niedermayer
e1d9cee13d
sws: dont mess with XInc when the code needing it isnt used
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
14 years ago
Michael Niedermayer
29fb1b5a06
sws: Fix chroma init for 32bit buffers.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
14 years ago
Ronald S. Bultje
ac9ac45aca
swscale: fix 16-bit scaling when output is 8-bits.
...
We would use the second half of the U plane buffer, rather than the
V plane buffer, to output the V plane pixels.
14 years ago
Michael Niedermayer
b5ff61695f
sws: fix uv overwrite in 32bt
14 years ago
Ronald S. Bultje
948ccdadf4
swscale: for >8bit scaling, read in native bit-depth.
...
For 9/10bit, it means we don't have to upscale to 16bit before
actual scaling or pixel format conversion, and thus a performance
gain.
14 years ago
Ronald S. Bultje
5c391a161a
swscale: rename uv_off/uv_off2 to uv_off_px/byte.
14 years ago
Ronald S. Bultje
42d622fab3
swscale: fix 16-bit scaling when output is 8-bits.
...
We would use the second half of the U plane buffer, rather than the
V plane buffer, to output the V plane pixels.
14 years ago
Ronald S. Bultje
8f440223f6
swscale: disable full_chroma_int when converting to non-24/32bpp RGB.
...
This functionality is only implemented for RGB24/32 and causes crashes
otherwise.
14 years ago
Ronald S. Bultje
8a8d0ce208
swscale: for >8bit scaling, read in native bit-depth.
...
For 9/10bit, it means we don't have to upscale to 16bit before
actual scaling or pixel format conversion, and thus a performance
gain.
14 years ago
Ronald S. Bultje
45f6ffe5e9
swscale: implement >8bit scaling support.
...
This means that precision is retained when scaling between sample
formats with >8 bits per component (48bit RGB, 16bit grayscale,
9/10/16bit YUV).
14 years ago
Ronald S. Bultje
ef1ee362b3
swscale: implement >8bit scaling support.
...
This means that precision is retained when scaling between sample
formats with >8 bits per component (48bit RGB, 16bit grayscale,
9/10/16bit YUV).
14 years ago
Michael Niedermayer
9e17d051ac
swscale: Fix yuv422p10
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
14 years ago
Ronald S. Bultje
dff5a83532
swscale: re-add support for non-native endianness.
...
This works through some non-obvious hacks in utils.c.
14 years ago
Janne Grunau
3636e791ec
swscale: use SwsContext for av_log when available
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
14 years ago
Ronald S. Bultje
103278f7b0
libavutil/swscale: YUV444P10/YUV444P9 support.
...
Also add missing glue code for recently added YUV422P10 formats
to swscale.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Ronald S. Bultje
6d4d483eee
swscale: de-macro'ify RGB15/16/32 input functions.
...
Inline functions are easier to read, maintain, modify and test,
which justifies the slightly increased source size. This patch
also adds support for non-native endianness RGB15/16 and fixes
isSupportedOutput() to no longer claim that we support writing
non-native RGB565/555/444.
14 years ago
Stefano Sabatini
b932eb1be6
swscale: reintroduce sws_format_name() symbol
...
Reintroduce the internal symbol which was removed in:
commit e1197b9e17
Author: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Date: Sun May 29 17:57:40 2011 +0200
swscale: remove sws_format_name()
Use av_get_pix_fmt_name() instead.
The symbol is used by some external libs (hi libx264!), this gives
time to them to use the recently added av_get_pix_fmt_name() rather
than an internal symbol.
14 years ago
Ronald S. Bultje
808d8ff6bb
swscale: allocate larger buffer to handle altivec overreads.
...
Altivec sws code intentionally overreads buffers for better performance,
so we need to allocate larger buffers to handle that.
14 years ago
Stefano Sabatini
e1197b9e17
swscale: remove sws_format_name()
...
Use av_get_pix_fmt_name() instead.
14 years ago
Michael Niedermayer
39d607e5bb
swscale: Commits that could not be pulled earlier due to bugs #2
...
commit 5a5a0f1613
Author: Diego Biurrun <diego@biurrun.de>
Date: Fri May 27 19:46:39 2011 +0200
swscale: Remove unused variables in x86 code.
libswscale/x86/swscale_template.c:2072: warning: unused variable ‘canMMX2BeUsed’
libswscale/x86/swscale_template.c:2145: warning: unused variable ‘canMMX2BeUsed’
libswscale/x86/swscale_template.c:2209: warning: unused variable ‘chrVPixBuf’
libswscale/x86/swscale_template.c:2237: warning: unused variable ‘chrVSrcPtr’
commit 389e2000eb
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date: Fri May 27 12:23:32 2011 -0400
swscale: delay allocation of formatConvBuffer().
That means it won't be allocated when not needed. Alongside
this, it fixes valgrind/fate-detected memory leaks.
commit f327bfa6dc
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date: Fri May 27 11:36:43 2011 -0400
swscale: fix build with --disable-swscale-alpha.
commit 9f5d45025e
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date: Fri May 27 09:28:38 2011 -0400
swscale: fix non-bitexact yuv2yuv[X2]() MMX/MMX2 functions.
14 years ago
Michael Niedermayer
986f0d86cb
Commits that could not be pulled earlier due to bugs.
...
commit 93681fbd50
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date: Thu May 26 11:32:32 2011 -0400
swscale: fix compile on ppc.
commit e758573a88
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date: Thu May 26 10:36:47 2011 -0400
swscale: fix compile on x86-32.
commit 0f4eb8b043
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date: Thu May 26 09:17:52 2011 -0400
swscale: remove VOF/VOFW.
commit b4a224c5e4
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date: Wed May 25 14:30:09 2011 -0400
swscale: split chroma buffers into separate U/V planes.
Preparatory step to implement support for sizes > VOFW.
14 years ago
Ronald S. Bultje
485d73ef21
swscale: replace formatConvBuffer[VOF] by allocated array.
...
This allows to convert between formats of arbitrary width,
regardless of the value of VOF/VOFW.
14 years ago
Ronald S. Bultje
009f829dde
swscale: fix crash in bilinear scaling.
14 years ago
Diego Biurrun
11f2eae2ae
swscale: Remove commented-out printf cruft.
14 years ago
Ronald S. Bultje
389e2000eb
swscale: delay allocation of formatConvBuffer().
...
That means it won't be allocated when not needed. Alongside
this, it fixes valgrind/fate-detected memory leaks.
14 years ago
Michael Niedermayer
2b6bfff2b2
swscale: Do not loose precission on yuv values after rgb->yuv.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
14 years ago