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
af2faf2076
swscale: split YUYV output out of yuv2packed[12X]_c().
...
This is part of the Great Evil Plan to simplify swscale.
14 years ago
Ronald S. Bultje
6b105e3ee6
swscale: extract monowhite/black output from yuv2packed[12X]_c().
...
This is part of the Great Evil Plan to simplify swscale.
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
Ronald S. Bultje
e2babb9b47
swscale: rearrange code.
...
This way the code in the file is less cluttered all-over-the-
place.
14 years ago
Ronald S. Bultje
dbd3183935
swscale: change 48bit RGB input macros to inline functions.
...
Inline functions are slightly larger in source code, but
are easier to handle in source code editors. The binary code
generated is the same.
14 years ago
Ronald S. Bultje
f30ee65700
swscale: change 9/10bit YUV input macros to inline functions.
...
Inline functions are slightly larger in source code, but
are easier to handle in source code editors. The binary code
generated is the same.
14 years ago
Ronald S. Bultje
aa39f5f6d6
swscale: extract gray16 output functions from yuv2packed[12X]().
...
This is part of the Great Evil Plan to simplify swscale.
14 years ago
Ronald S. Bultje
f1e0b90c64
swscale: use standard clipping functions.
...
This generates better code on some non-x86 architectures.
14 years ago
Ronald S. Bultje
e458b53605
swscale: merge macros that are used only once.
...
This reduces source code size without affecting the binary.
14 years ago
Ronald S. Bultje
6e5a8d3c9a
swscale: fix function declarations in swscale.c.
...
Remove inline keyword from functions that are never inlined.
Use av_always_inline for functions that should be force-inlined
for performance reasons. Use av_cold for init functions.
14 years ago
Ronald S. Bultje
9d84dfce93
swscale: remove unused function.
...
Use of this wrapper was removed in a previous patch, but I
forgot to actually remove the function itself.
14 years ago
Ronald S. Bultje
edeb56fa31
swscale: remove duplicate conversion routine in swScale().
14 years ago
Ronald S. Bultje
df91d09174
swscale: integrate yuv2nv12X_C into yuv2yuvX() function pointers.
14 years ago
Ronald S. Bultje
ca364a5b43
swscale: extract SWS_FULL_CHR_H_INT conditional into init code.
14 years ago
Ronald S. Bultje
b3b28b080f
swscale: cosmetics.
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
bda9b20fa4
swscale: un-special-case yuv2yuvX16_c().
...
Make yuv2yuvX16_c a function pointer for yuv2yuvX(), so that the
function pointer becomes bitdepth-independent.
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
2762ee3034
swscale: cosmetics.
...
Remove duplicate "inC" and "_c" functions that do the same thing;
give each function that handles data and acts as a function pointer
a "_c" suffix; remove "_c" suffix from functions that are inherently
not optimizable. Remove inline keyword from functions that are only
used through function pointers.
14 years ago
Ronald S. Bultje
1674bd2abe
swscale: integrate (literally) swscale_template.c in swscale.c.
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
a3e9bb5dee
swscale: remove indirections in ppc/swscale_template.c.
14 years ago
Ronald S. Bultje
0e5d31b16b
swscale: split out unscaled altivec YUV converters in their own file.
14 years ago
Ronald S. Bultje
0d793db1b0
swscale: remove unused COMPILE_TEMPLATE_ALTIVEC.
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
b4a224c5e4
swscale: split chroma buffers into separate U/V planes.
...
Preparatory step to implement support for sizes > VOFW.
14 years ago
Ronald S. Bultje
aaca69c130
swscale: remove swScale_{c,MMX,MMX2} duplication.
14 years ago
Ronald S. Bultje
1dd4f4be5a
swscale: remove AMD3DNOW "optimizations".
...
The functions are identical to their MMX counterparts. Thus,
pretending that swscale is highly optimized for AMD3DNOW
extensions is a poorly executed practical joke at best.
14 years ago
Ronald S. Bultje
fe43d5d71e
swscale: remove duplicate code in ppc/ subdirectory.
14 years ago
Ronald S. Bultje
e66149e714
swscale: force --enable-runtime-cpudetect and remove SWS_CPU_CAPS_*.
14 years ago
Kieran Kunhya
6465c820da
Fix 9/10 bit in swscale.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Ronald S. Bultje
9f54e461fe
swscale: properly inline bits/endianness in yuv2yuvX16inC().
14 years ago
Ronald S. Bultje
c3d68ec9c5
swscale: fix clipping of 9/10bit YUV420P.
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
Anton Khirnov
7dfe244fbd
sws: remove disabled cruft.
14 years ago
Janne Grunau
f668afd489
swscale: fix "ISO C90 forbids mixed declarations and code" warning
...
only hit with --enable-runtime-cpudetect
14 years ago
Josh Allmann
33a0421bba
swscale: simplify initialization code
...
Simplify the fallthrough case when no accelerated functions
can be initialized.
14 years ago
Josh Allmann
735bf19511
swscale: further cleanup swscale.c
...
Move x86-specific constants out of swscale.c
14 years ago
Luca Barbato
86330b4c92
swscale: partially move the arch specific code left
...
PPC and x86 code is split off from swscale_template.c. Lots of code is
still duplicated and should be removed later.
Again uniformize the init system to be more similar to the dsputil one.
Unset h*scale_fast in the x86 init in order to make the output
consistent with the previous status. Thanks to Josh for spotting it.
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
bd8154d0b3
100l fix if condition
...
Originally committed as revision 32395 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
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
Ramiro Polla
5a90173751
swscale: remove useless temporary variable
...
Originally committed as revision 32258 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
14 years ago
Ramiro Polla
cf1cd520c6
swscale: factorize plane copying code out of 2 functions
...
Originally committed as revision 32257 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
14 years ago
Ramiro Polla
0132ab80a8
indent
...
Originally committed as revision 32157 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
15 years ago