Michael Niedermayer
13bbfb8fda
sws: Skip ff_yuv2rgb_c_init_tables() when the output is YUV
...
Fixes "20bpp not supported by yuv2rgb" warning
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
f05cfb654f
sws/fill_rgb2yuv_table: use ROUNDED_DIV
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
bcf643486f
sws/fill_rgb2yuv_table: increase precission to 32bit
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
2fa11a94a3
sws/fill_rgb2yuv_table: avoid 2 divisions
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
003bf33747
sws: fix alignment of rgb2yuv
...
This should fix mingw32 fate
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
3950236332
sws/x86: update RENAME(rgb24toyv12)() to using the user provided rgb2yuv table
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
357da7ed42
sws: remove forgotten FAST_BGR2YV12 define
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
920dd84bf1
sws/x86: remove 8bit rgb2yuv coefficient case for rgb24toyv12 special converter
...
This simplifies the code and improves quality at the expense of a slight
slowdown of a rarely used function (no fate test uses it).
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
a37fd7f957
sws: Update rgb24toyv12_c() to user supplied rgb2yuv tables
...
As the function arguments change, we also change the function name
to ensure that anyone using this (non public) function doesnt end
with hard to debug crashes. The new name also has a proper prefix.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
8e27c6ebbb
sws/"rgb2rgb": drop RGB2YUV_SHIFT
...
Fixes a warning and increases the precission the coefficients
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
2a5d1cb2d9
sws/x86: update rgba->yuv to use user supplied table
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
17ad06c753
sws/x86: update rgb/bgr->yuv code to use provided coefficient table
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
9aafb95ae2
sws: init input_rgb2yuv_table depending on yuv colorspace
...
For the default table we keep using the exact previous
coefficients, this way individual functions can be updated seperately
without breaking fate
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
3662e49dde
sws: move RGB2YUV_SHIFT to swscale_internal.h
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
d4956b0bfb
sws/input: replace hardcoded rgb2yuv coefficients by table
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
41ebb64511
swscale/output: fix alpha scale in the new functions
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
a4b5e45e2b
sws/output: add yuv2rgb_full_1_c_template()
...
7500->4500 cycles on sandybridge
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
9204a7dc8e
sws/output: add +yuv2rgb_full_2_c_template()
...
8100 cycles -> 5800 cycles on sandybridge
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
662664551c
sws/output: factor yuv2rgb_write_full() out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
James Almer
89388a953a
Replace all occurrences of PRI in sscanf() calls with SCN
...
Signed-off-by: James Almer <jamrial@gmail.com>
12 years ago
Diego Biurrun
b6649ab503
cosmetics: Remove unnecessary extern keywords from function declarations
12 years ago
Anton Khirnov
542b83fc90
Replace some forgotten instances of PIX_FMT_* with AV_PIX_FMT_*.
12 years ago
Derek Buitenhuis
c87c2d0d02
swscale: Add support for unscaled 8-bit Packed RGB -> Planar RGB
...
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
12 years ago
Derek Buitenhuis
57c4c25596
swscale: Add support for unscaled 8-bit Packed RGB -> Planar RGB
...
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
12 years ago
Michael Niedermayer
e4eedb983d
swscale-test: fix 3 pointer type warnings
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
5e947aeb59
sws/x86: improve rounding for yuv2yuvX
...
This tries to compensate for the errors introduced by
the rounding of pmulhw
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Martin Storsjö
d192ac3e03
swscale: Disallow conversion to GBRP16
...
This reverts parts of d6d5ef5534
, that didn't work right. (The
tests that were added failed on big endian, and the output looked
garbled on little endian as well.)
This is due to the fact that the intermediate scaling values (from
e.g. hScale8To19_c or hScale16To19_c) are stored as int32_t and
thus requires a separate output function, while yuv2gbrp_full_X_c
only interprets it as int16_t.
Signed-off-by: Martin Storsjö <martin@martin.st>
12 years ago
Michael Niedermayer
813784a8bf
sws: disable yuv2rgb warning for planar rgb.
...
planar rgb formats do not use the table
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
12 years ago
Michael Niedermayer
7b41c24c5f
sws: dont enable chrSrcHSubSample for planar RGB
...
This code path is not implemented and makes not much sense to implement
either.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
12 years ago
Michael Niedermayer
e58013dd8f
sws: use planarRgbToRgbWrapper only for 8bit per component
...
The function doesnt support >8bit currently
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
12 years ago
Michael Niedermayer
d6d5ef5534
sws: GBRP9, GBRP10, and GBRP16 output support
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
12 years ago
Michael Niedermayer
4e2c63685e
sws: dont write out of array on bigendian
...
Fixes Ticket2229
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
353bd158f5
sws: Fix "warning: comparison of distinct pointer types lacks a cast"
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
4eb93bed4e
swscale: GBRP output support
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
12 years ago
Michael Niedermayer
6512405ce2
sws: disable yuv2rgb warning for planar rgb.
...
planar rgb formats do not use the table
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
f0d3a03115
sws: include isRGB in isAnyRGB() so that future RGB formats wont be missed again
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
02001a372d
sws: add planar RGB formats to isAnyRGB
...
We have to make some symetric changes elsewhere as this increases
the precission with which samples are stored.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
3c2ecfcc24
sws: dont enable chrSrcHSubSample for planar RGB
...
This code path is not implemented and makes not much sense to implement
either.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
4e585f6325
sws: use planarRgbToRgbWrapper only for 8bit per component
...
The function doesnt support >8bit currently
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
e4033d89f1
sws: GBRP9, GBRP10 GBRP12 GBRP14 output support
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
61884d1985
sws: GBRP output support
...
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Paul B Mahol
d07b0d9927
swscale: check flags instead of nb_components to find if pixel format have alpha
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
12 years ago
Michael Niedermayer
89afa635bf
sws: check that dither array is not null before memset
...
Fixes null pointer dereference
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
aef5c0b68f
sws: Check for unsupported combination of ED/FULL_CHR flags
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
f94220ac7a
sws: Fix error diffusion flag
...
The used flag was mistakenly overlapping with chroma drop
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
5c42078b99
sws: fix ED mono dither black level
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
2dc2e4f5af
sws: Enable full chroma resolution when needed for ED dither
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
8045c0167d
sws: Only reset dither state for bitexact mode
...
the output looks better with a random initial state than
all 0
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
ca447592b1
sws: rgb/bgr 4/8 error diffusion dither
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
d7a46ca179
sws: add AVOption flag for error diffusion dither
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago