summaryrefslogtreecommitdiff
path: root/libswscale/swscale_internal.h
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-04-28 19:28:42 +0200
committerMichael Niedermayer <michaelni@gmx.at>2013-04-28 19:30:01 +0200
commit0c47c9028be2cf4b1a557e653606fced5b959445 (patch)
tree5bdf78c411d5f3e7af35f674874afeeb5fa5c923 /libswscale/swscale_internal.h
parent45f1cf88a85c3e17abe8244806d4161f062add88 (diff)
sws: support xyz input
The implementation is heavily based on Matthias Buerchers and Nicolas Bertrands vf_xyz2rgb.c Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libswscale/swscale_internal.h')
-rw-r--r--libswscale/swscale_internal.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/libswscale/swscale_internal.h b/libswscale/swscale_internal.h
index be5a80e73b..36ce1ea661 100644
--- a/libswscale/swscale_internal.h
+++ b/libswscale/swscale_internal.h
@@ -380,6 +380,8 @@ typedef struct SwsContext {
int dstRange; ///< 0 = MPG YUV range, 1 = JPG YUV range (destination image).
int src0Alpha;
int dst0Alpha;
+ int srcXYZ;
+ int dstXYZ;
int yuv2rgb_y_offset;
int yuv2rgb_y_coeff;
int yuv2rgb_v2r_coeff;
@@ -473,6 +475,13 @@ typedef struct SwsContext {
#endif
int use_mmx_vfilter;
+/* pre defined color-spaces gamma */
+#define XYZ_GAMMA (2.6f)
+#define RGB_GAMMA (2.2f)
+ int16_t xyzgamma[4096];
+ int16_t rgbgamma[4096];
+ int16_t xyz2rgb_matrix[3][4];
+
/* function pointers for swScale() */
yuv2planar1_fn yuv2plane1;
yuv2planarX_fn yuv2planeX;