OSDN Git Service

Fix 9/10 bit in swscale.
authorKieran Kunhya <kieran@kunhya.com>
Mon, 23 May 2011 02:02:12 +0000 (03:02 +0100)
committerRonald S. Bultje <rsbultje@gmail.com>
Mon, 23 May 2011 10:46:14 +0000 (06:46 -0400)
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
libswscale/swscale.c

index f5c4e88..3943aa0 100644 (file)
@@ -233,7 +233,7 @@ static av_always_inline void yuv2yuvX16inC_template(const int16_t *lumFilter, co
         } \
     }
     for (i = 0; i < dstW; i++) {
-        int val = 1 << 10;
+        int val = 1 << (26-output_bits);
         int j;
 
         for (j = 0; j < lumFilterSize; j++)
@@ -244,8 +244,8 @@ static av_always_inline void yuv2yuvX16inC_template(const int16_t *lumFilter, co
 
     if (uDest) {
         for (i = 0; i < chrDstW; i++) {
-            int u = 1 << 10;
-            int v = 1 << 10;
+            int u = 1 << (26-output_bits);
+            int v = 1 << (26-output_bits);
             int j;
 
             for (j = 0; j < chrFilterSize; j++) {
@@ -260,7 +260,7 @@ static av_always_inline void yuv2yuvX16inC_template(const int16_t *lumFilter, co
 
     if (CONFIG_SWSCALE_ALPHA && aDest) {
         for (i = 0; i < dstW; i++) {
-            int val = 1 << 10;
+            int val = 1 << (26-output_bits);
             int j;
 
             for (j = 0; j < lumFilterSize; j++)