Ronald S. Bultje
f7f1835258
swscale: fix failing fate tests.
...
isGray() is left as a FIXME for later.
13 years ago
Ronald S. Bultje
185655c601
swscale: add support for planar RGB input.
13 years ago
Ronald S. Bultje
6b0768e202
Clean up swscale pixfmt macros using av_pix_fmt_descriptors[].
13 years ago
Ronald S. Bultje
109f62e8f8
swscale: decide whether to use yuv2plane1/X on a per-plane basis.
13 years ago
Kieran Kunhya
ff7913aef1
Split up yuv2yuvX functions
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years ago
Kieran Kunhya
34e8d147b3
Split out yuv2yuv1 luma and chroma in order to make them generic DSP functions
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years ago
Ronald S. Bultje
dc49bf1270
sws/pixfmt/pixdesc: add support for yuv420p9le/be.
13 years ago
Ronald S. Bultje
3f04ab4fcd
swscale: split hScale() function pointer into h[cy]Scale().
...
This allows using more specific implementations for chroma/luma, e.g.
we can make assumptions on filterSize being constant, thus avoiding
that test at runtime.
14 years ago
Ronald S. Bultje
28c1115a91
swscale: use 15-bit intermediates for 9/10-bit scaling.
14 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.
14 years ago
Ronald S. Bultje
ac0fb59348
swscale: use 15-bit intermediates for 9/10-bit scaling.
14 years ago
Anton Mitrofanov
142e76f105
swscale: fix crash with dithering due incorrect offset calculation.
...
ptrdiff_t can be 4 bytes, which leads to the next element being 4-byte
aligned and thus at a different offset than intended. Forcing 8-byte
alignment forces equal offset of dither16/32 on x86-32 and x86-64.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Ronald S. Bultje
5c391a161a
swscale: rename uv_off/uv_off2 to uv_off_px/byte.
14 years ago
Ronald S. Bultje
4e3e333a79
swscale: error dithering for 16/9/10-bit to 8-bit.
...
Based on a somewhat similar idea in FFmpeg's swscale copy.
14 years ago
Ronald S. Bultje
f28aaae1c5
swscale: amend documentation to mention use of native depth for scaling.
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
14 years ago
Mans Rullgard
abc78a5a7c
Do not include log.h in avutil.h
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Mans Rullgard
d49ea4afb4
Do not include pixfmt.h in avutil.h
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
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
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
Ronald S. Bultje
4578435f35
swscale: Add Doxygen for hyscale_fast/hScale.
14 years ago
Ronald S. Bultje
d6cc6ac6b8
swscale: Add Doxygen for yuv2planar*/yuv2packed* functions.
14 years ago
Ronald S. Bultje
13a099799e
swscale: change prototypes of scaled YUV output functions.
...
Remove unused variables "flags" and "dstFormat" in yuv2packed1,
merge source rows per plane for yuv2packed[12], and make every
source argument int16_t (some where invalidly set to uint16_t).
This prevents stack pollution and is part of the Great Evil Plan
to simplify swscale.
14 years ago
Ronald S. Bultje
97535ffb97
swscale: remove unused xInc/srcW arguments from hScale().
14 years ago
Michael Niedermayer
0af8a71d66
swscale: fix JPEG-range YUV scaling artifacts.
...
YUV planes were marked as uint16_t, but they contained signed data.
Fixes issue 1108 and 675.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
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
b73fe70025
swscale: add yuv2planar/packed function typedefs.
14 years ago
Ronald S. Bultje
df91d09174
swscale: integrate yuv2nv12X_C into yuv2yuvX() function pointers.
14 years ago
Ronald S. Bultje
ea28175312
swscale: remove alp/chr/lumSrcOffset.
...
They are hacks added to reuse the same scaling function for
different formats and they may cause problems when SIMD
implementation of the same functions are used along with pure
C functions.
14 years ago
Ronald S. Bultje
6af2801088
swscale: split swscale.c in unscaled and generic conversion routines.
...
This duplicates the function fillPlane().
14 years ago
Ronald S. Bultje
983260b0a4
swscale: split out x86/swscale_template.c from swscale.c.
14 years ago
Ronald S. Bultje
67d80a5421
swscale: split out ppc _template.c files from main swscale.c.
14 years ago
Ronald S. Bultje
0e5d31b16b
swscale: split out unscaled altivec YUV converters in their own file.
14 years ago
Anton Khirnov
b8e893399f
sws: replace all long with int.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Ronald S. Bultje
009f829dde
swscale: fix crash in bilinear scaling.
14 years ago
Ronald S. Bultje
93681fbd50
swscale: fix compile on ppc.
14 years ago
Ronald S. Bultje
0f4eb8b043
swscale: remove VOF/VOFW.
14 years ago
Ronald S. Bultje
b4a224c5e4
swscale: split chroma buffers into separate U/V planes.
...
Preparatory step to implement support for sizes > VOFW.
14 years ago
Ronald S. Bultje
69645c021a
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
e66149e714
swscale: force --enable-runtime-cpudetect and remove SWS_CPU_CAPS_*.
14 years ago
Ronald S. Bultje
c8f487deae
swscale: fix YUV420P 9/10bit support.
...
Fix handling of input if not in native endianness, and add support for
9/10-bit output. This allows us to force endianness of YUV420P 9/10bit
in the H264/10bit fate tests, which should fix them on big-endian
systems.
14 years ago
Oskar Arvidsson
42239ced65
Add pixel formats for 9- and 10-bit yuv420p.
...
Also add support for these formats in libswscale.
Needed for high bit depth h264 decoding.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Peter Ross
1afbae100b
libswcale: PIX_FMT_BGR48LE and PIX_FMT_BGR48BE scaler implementation
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
14 years ago
Luca Barbato
0e1a5434e2
swscale: Factorize FAST_BGR2YV12 definition.
...
It is used only for x86 so it will eventually be moved with that code
into the x86 arch subdirectory.
14 years ago
Mans Rullgard
2912e87a6c
Replace FFmpeg with Libav in licence headers
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Baptiste Coudurier
df0743e01e
Y400A (gray alpha) input support in libswscale
...
Originally committed as revision 32394 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
14 years ago
Reimar Döffinger
5a55d5b592
More const-correctness fixes to avoid warnings.
...
Originally committed as revision 31781 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
15 years ago
Ramiro Polla
709c0181fd
Restore vertical alignment in some defines
...
Originally committed as revision 31758 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
15 years ago
Ramiro Polla
c3ab0004ae
Revert r31153. It failed to build on:
...
x86_64 / Mac OS X gcc 4.0.1
x86_64 / Linux icc (all)
x86_64 / Linux gcc 4.0.4
x86_64 / OpenBSD gcc 3.3.5
x86_64 / Linux suncc 5.10
and there are some reports of crashes.
Originally committed as revision 31170 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
15 years ago
Ramiro Polla
d9d14dc607
Use int instead of long to pass width parameters in non-public functions.
...
long was being incorrectly used as an x86-sized register, both for 32 and 64
bits, but this is not the case in win64.
Originally committed as revision 31153 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
15 years ago
Stefano Sabatini
3de42635bd
Avoid duplication of usePal() macro.
...
Originally committed as revision 30856 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
15 years ago