summaryrefslogtreecommitdiffstats
path: root/libswscale/swscale_template.c
diff options
context:
space:
mode:
authormichael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-09-04 21:59:15 +0000
committermichael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-09-04 21:59:15 +0000
commit172a4bfaea255b29e718a9764e7bf5180d58f77c (patch)
treeac04a4f29e886af89d09d8e47d8fcf1beb4aa301 /libswscale/swscale_template.c
parent1a636fc7f9b9e0ba5acf13859849ee27c17438b5 (diff)
downloadmpv-172a4bfaea255b29e718a9764e7bf5180d58f77c.tar.bz2
mpv-172a4bfaea255b29e718a9764e7bf5180d58f77c.tar.xz
Support PIX_FMT_RGB32_1 and PIX_FMT_BGR32_1.
Fixes issue248. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27522 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libswscale/swscale_template.c')
-rw-r--r--libswscale/swscale_template.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/libswscale/swscale_template.c b/libswscale/swscale_template.c
index fdb14fb0a1..888428cb73 100644
--- a/libswscale/swscale_template.c
+++ b/libswscale/swscale_template.c
@@ -2522,6 +2522,11 @@ static inline void RENAME(hyscale)(uint16_t *dst, long dstWidth, uint8_t *src, i
RENAME(bgr32ToY)(formatConvBuffer, src, srcW);
src= formatConvBuffer;
}
+ else if (srcFormat==PIX_FMT_RGB32_1)
+ {
+ RENAME(bgr32ToY)(formatConvBuffer, src+ALT32_CORR, srcW);
+ src= formatConvBuffer;
+ }
else if (srcFormat==PIX_FMT_BGR24)
{
RENAME(bgr24ToY)(formatConvBuffer, src, srcW);
@@ -2542,6 +2547,11 @@ static inline void RENAME(hyscale)(uint16_t *dst, long dstWidth, uint8_t *src, i
RENAME(rgb32ToY)(formatConvBuffer, src, srcW);
src= formatConvBuffer;
}
+ else if (srcFormat==PIX_FMT_BGR32_1)
+ {
+ RENAME(rgb32ToY)(formatConvBuffer, src+ALT32_CORR, srcW);
+ src= formatConvBuffer;
+ }
else if (srcFormat==PIX_FMT_RGB24)
{
RENAME(rgb24ToY)(formatConvBuffer, src, srcW);
@@ -2727,6 +2737,12 @@ inline static void RENAME(hcscale)(uint16_t *dst, long dstWidth, uint8_t *src1,
src1= formatConvBuffer;
src2= formatConvBuffer+VOFW;
}
+ else if (srcFormat==PIX_FMT_RGB32_1)
+ {
+ RENAME(bgr32ToUV)(formatConvBuffer, formatConvBuffer+VOFW, src1+ALT32_CORR, src2+ALT32_CORR, srcW);
+ src1= formatConvBuffer;
+ src2= formatConvBuffer+VOFW;
+ }
else if (srcFormat==PIX_FMT_BGR24)
{
RENAME(bgr24ToUV)(formatConvBuffer, formatConvBuffer+VOFW, src1, src2, srcW);
@@ -2751,6 +2767,12 @@ inline static void RENAME(hcscale)(uint16_t *dst, long dstWidth, uint8_t *src1,
src1= formatConvBuffer;
src2= formatConvBuffer+VOFW;
}
+ else if (srcFormat==PIX_FMT_BGR32_1)
+ {
+ RENAME(rgb32ToUV)(formatConvBuffer, formatConvBuffer+VOFW, src1+ALT32_CORR, src2+ALT32_CORR, srcW);
+ src1= formatConvBuffer;
+ src2= formatConvBuffer+VOFW;
+ }
else if (srcFormat==PIX_FMT_RGB24)
{
RENAME(rgb24ToUV)(formatConvBuffer, formatConvBuffer+VOFW, src1, src2, srcW);