Ronald S. Bultje
7f77e9041a
swscale: clip before assigning tables in RGB output functions.
13 years ago
Ronald S. Bultje
4860625236
swscale: fix off-by-one in second coefficient in bilinear filters.
...
If coefficient A is 12-bits xixed-point number "X", then the other
coefficient is (1 << 12) - X, not (1 << 12) - X - 1.
13 years ago
Ronald S. Bultje
9206ac80a5
swscale: handle last pixel if lines have an odd width.
...
Fixes bug 270.
13 years ago
Diego Biurrun
ef0ee7f657
swscale: K&R formatting cosmetics (part II)
...
Also adjust some comments including wording and typo fixes.
13 years ago
Diego Biurrun
baaab6069a
build: Move all arch OBJS declarations into arch subdirectory Makefiles.
13 years ago
Diego Biurrun
7bb3a302fe
build: Consistently handle conditional compilation for all optimization OBJS.
13 years ago
Henrik Gramner
729f90e268
x86inc improvements for 64-bit
...
Add support for all x86-64 registers
Prefer caller-saved register over callee-saved on WIN64
Support up to 15 function arguments
Also (by Ronald S. Bultje)
Fix up our asm to work with new x86inc.asm.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
13 years ago
Diego Biurrun
02c39f056a
ppc: Add/remove a number of const qualifiers to fix related warnings.
13 years ago
Ronald S. Bultje
bc0bdda77b
swscale: handle complete dimensions for monoblack/white.
...
Fixes bug 269.
13 years ago
Hans-Kristian Arntzen
b991b300f2
Unscaled Planar RGB -> RGB support in swscale.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
13 years ago
Diego Biurrun
e7e19b15c7
build: Only clean the architecture subdirectory we build for.
...
This allows simplifying the Makefiles; it is no longer necessary to register
arch subdirectory Makefiles, just putting them in place is enough.
13 years ago
Diego Biurrun
ad0e31f134
build: prettyprinting cosmetics
13 years ago
Ronald S. Bultje
45fdcc8e2d
swscale: convert hscale() to use named arguments.
13 years ago
Ronald S. Bultje
aba7a827aa
swscale: convert hscale to cpuflags().
13 years ago
Ronald S. Bultje
9487fb4dea
swscale: clip unscaled output intermediates.
...
Fixes bug 240, as well as several integer overflows (visible as glitches)
in other scaling output routines, e.g. YUV422.
13 years ago
Ronald S. Bultje
2254b559cb
swscale: make filterPos 32bit.
...
Fixes overflows for large image sizes.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Ronald S. Bultje
1c97b5c4a3
swscale: remove "cpu flags" from -sws_flags description.
13 years ago
Ronald S. Bultje
dccb2cd3f9
swscale: make %rep unconditional.
...
Fixes pre-processing with latest versions of nasm.
13 years ago
Ronald S. Bultje
8249a23fc1
swscale: remove now unnecessary hack.
13 years ago
Diego Biurrun
36697be187
swscale: K&R formatting cosmetics for PowerPC code (part II/II)
13 years ago
Ronald S. Bultje
791de61bbb
swscale: fix another integer overflow.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Ronald S. Bultje
2bb628f870
swscale: fix another integer overflow at large dimensions/rescales.
13 years ago
Ronald S. Bultje
1d8c4af396
swscale: take first/lastline over/underflows into account for MMX.
...
Fixes crashes for extremely large resizes (several 100-fold).
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Ronald S. Bultje
491865b57d
swscale: fix underflows in firstline calculations for extreme resizes.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Ronald S. Bultje
19a65b5be4
swscale: fix overflows in filterPos[] calculation for large sizes.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Ronald S. Bultje
1254022ea7
swscale: fix filtersize clipping.
...
if srcW<=2, clip(x, 1, srcW-2) still allows srcW to be < 1.
13 years ago
Diego Biurrun
89d94b2182
swscale: K&R formatting cosmetics (part I)
13 years ago
Diego Biurrun
72b95764d0
swscale: variable declaration and placement cosmetics
13 years ago
Diego Biurrun
04217de4d6
swscale: K&R formatting cosmetics for PowerPC code (part I/II)
13 years ago
Ronald S. Bultje
b18f8cbf3d
Revert two swscale commits.
...
Revert "swscale: update context offsets after removal of AlpMmxFilter."
(commit a95e3fa90b
)
and
Revert "swscale: Remove some write-only variables related to alpha handling."
(commit 9d03cb9fc5
).
They broke alpha handling - it's the evil inline asm that still uses that
variable, so it's not truely write-only.
13 years ago
Ronald S. Bultje
1bab6f852c
swscale: make access to filter data conditional on filter type.
...
Prevents crashes on 1-tap filter (unscaled). Also rename "bguf" argument
to "vbuf", seems that was a typo.
13 years ago
Ronald S. Bultje
a95e3fa90b
swscale: update context offsets after removal of AlpMmxFilter.
13 years ago
Ronald S. Bultje
25c42234a9
swscale: make monowhite/black RGB-independent.
...
Disadvantage is that it no longer allows modifying brightness through
adjustment of the RGB lookup table. Advantage is that now monowhite/black
no longer need to be identified as a RGB format.
13 years ago
Diego Biurrun
9d03cb9fc5
swscale: Remove some write-only variables related to alpha handling.
13 years ago
Ronald S. Bultje
771bab7f57
swscale: fix crashes in yuv2yuvX on x86-32.
...
They were introduced in an earlier commit that introduced use of named
arguments. One cause was a typo, a second cause appears to be a bug in
x264asm that I work around by not using named arguments.
13 years ago
Diego Biurrun
7331b6e718
Drop some completely unnecessary av_unused attributes.
13 years ago
Diego Biurrun
92fed11352
swscale: Remove unused variable alpMmxFilter.
13 years ago
Ronald S. Bultje
3cac475655
swscale: move YUV2PACKED16WRAPPER() macro down to where it is used.
13 years ago
Ronald S. Bultje
c0b87359b2
swscale: handle gray16 as a "planar" YUV format (Y-only, of course).
...
This allows removing any gray16-specific code, which is essentially
identical to the per-plane code in yuv2plane*().
13 years ago
Ronald S. Bultje
9d9c846491
swscale: use yuv2packed1() functions for unscaled chroma also.
13 years ago
Ronald S. Bultje
d63b7d8c37
swscale: fix incorrect chroma bias in yuv2rgb48_1_c().
13 years ago
Ronald S. Bultje
1ca7dc60d2
swscale: fix invalid memory accesses in yuvpacked1() functions.
13 years ago
Ronald S. Bultje
3e23badd83
swscale: convert yuv2yuvX() to using named arguments.
13 years ago
Ronald S. Bultje
8c433d8a03
swscale: rename "dstw" to "w" to prevent name collisions.
...
"dstw" can collide with the word-version of the "dst" argument, causing
all kind of weird stuff down the pipe.
13 years ago
Ronald S. Bultje
ef66a0ed2e
swscale: use named registers in yuv2yuv1_plane() place.
...
Most of the function had been converted before, but I forgot this
particular location.
13 years ago
Ronald S. Bultje
dae2ce361a
swscale: enforce a minimum filtersize.
...
At very small dimensions, this calculation could lead to zero-sized
filters, which leads to uninitialized output, zero-sized allocations,
loop overflows in SIMD that uses do{..}while(i++<filtersize); instead
of for(i=0;i<filtersize;i++){..} and several other similar failures.
Therefore, require a minimum filtersize of 1.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Diego Biurrun
a2e40cd3e2
swscale: ppc: Add missing header #includes to pass 'make checkheaders'.
13 years ago
Anton Khirnov
38d5533228
pixdesc: mark pseudopaletted formats with a special flag.
...
This makes it possible to dintinguish them from PAL8.
Fixes an invalid write in avpicture_layout().
13 years ago
Ronald S. Bultje
783487ae44
swscale: sign-extend integer function argument to qword on x86-64.
13 years ago
Diego Biurrun
0144fe6995
Remove Sun medialib glue code.
...
It is obscure, most likely unused and not bit-exact compared to
libavcodec due to a different IDCT transform algorithm.
13 years ago