diff options
author | michael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2008-09-04 21:59:15 +0000 |
---|---|---|
committer | michael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2008-09-04 21:59:15 +0000 |
commit | 172a4bfaea255b29e718a9764e7bf5180d58f77c (patch) | |
tree | ac04a4f29e886af89d09d8e47d8fcf1beb4aa301 /libswscale/swscale_template.c | |
parent | 1a636fc7f9b9e0ba5acf13859849ee27c17438b5 (diff) | |
download | mpv-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.c | 22 |
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); |