Add 4x4 IDCT
authorKostya Shishkov <kostya.shishkov@gmail.com>
Sun, 9 Dec 2007 05:54:59 +0000 (05:54 +0000)
committerKostya Shishkov <kostya.shishkov@gmail.com>
Sun, 9 Dec 2007 05:54:59 +0000 (05:54 +0000)
Originally committed as revision 11198 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/simple_idct.c
libavcodec/simple_idct.h

index 50d7857..7bf0836 100644 (file)
@@ -585,3 +585,17 @@ void ff_simple_idct48_add(uint8_t *dest, int line_size, DCTELEM *block)
     }
 }
 
+void ff_simple_idct44_add(uint8_t *dest, int line_size, DCTELEM *block)
+{
+    int i;
+
+    /* IDCT4 on each line */
+    for(i=0; i<4; i++) {
+        idct4row(block + i*8);
+    }
+
+    /* IDCT4 and store */
+    for(i=0; i<4; i++){
+        idct4col_add(dest + i, line_size, block + i);
+    }
+}
index 806bde7..6ae48a2 100644 (file)
@@ -42,5 +42,6 @@ void ff_simple_idct248_put(uint8_t *dest, int line_size, DCTELEM *block);
 
 void ff_simple_idct84_add(uint8_t *dest, int line_size, DCTELEM *block);
 void ff_simple_idct48_add(uint8_t *dest, int line_size, DCTELEM *block);
+void ff_simple_idct44_add(uint8_t *dest, int line_size, DCTELEM *block);
 
 #endif /* FFMPEG_SIMPLE_IDCT_H */