Michael Niedermayer
87a72b9122
swscale: Merge a hunk from qatar that seems to have been forgotten or lost.
Author of the code from qatar is Ronald S. Bultje
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
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
Michael Niedermayer
4707f1da8a
swscale: remove duplicate PIX_FMT_GBRP entry from format_entries.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
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
Michael Niedermayer
4a9f466b99
Fix alpha overflow when converting from RGBA64 to RGBA.
Fixes converting the sample from ticket #503 to 32bit RGB.
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
Carl Eugen Hoyos
f972193a15
Support RGBA64 as input colour space.
Mostly fixes ticket #503,
opaque still overflows for RGBA64 -> RGBA conversion.
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
Michael Niedermayer
e7dbfa59f2
swscale: enable some more SIMD functions.
They no longer just segfault.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
94bc672489
swscale: yuv2422_2_c_template() add cliping.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
f03a029939
swscale: Add cliping to yuv2422_1_c_template()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
ef96bf294d
swscale: Fix rounding in yuv2mono_1_c_template()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
c0c32a3704
swscale: Fix rounding in yuv2rgb_1_c_template()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
2bc610ddc5
swscale: yuv2422_1_c_template: fix rounding
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Carl Eugen Hoyos
186923758d
Fix compilation with old yasm that does not support AVX.
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
Ronald S. Bultje
ef1c785f11
swscale: make yuv2yuv1 use named registers.
13 years ago