[x265] [PATCH] ipfilter.cpp, setup luma function pointers

praveen at multicorewareinc.com praveen at multicorewareinc.com
Thu Oct 17 17:33:38 CEST 2013


# HG changeset patch
# User Praveen Tiwari
# Date 1382024008 -19800
# Node ID 93bef87604902f0ba3b07faf836fdd74d4e847c6
# Parent  1481908edb21eea0225eb03de0b852921d4c209f
ipfilter.cpp, setup luma function pointers

diff -r 1481908edb21 -r 93bef8760490 source/common/ipfilter.cpp
--- a/source/common/ipfilter.cpp	Thu Oct 17 21:00:27 2013 +0530
+++ b/source/common/ipfilter.cpp	Thu Oct 17 21:03:28 2013 +0530
@@ -3,6 +3,7 @@
  *
  * Authors: Deepthi Devaki <deepthidevaki at multicorewareinc.com>,
  *          Rajesh Paulraj <rajesh at multicorewareinc.com>
+ *          Praveen Kumar Tiwari <praveen at multicorewareinc.com>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -498,6 +499,39 @@
 #define SETUP_PARTITION(W, H) \
     p.chroma_hpp[CHROMA_PARTITION_ ## W ## x ## H] = interp_horiz_pp_c<4, W, H>;
 
+#define SET_LUMA_PRIMITIVE_TABLE_F3(W, H) \
+    p.luma_hpp[LUMA_PARTITION_ ## W ## x ## H] = interp_horiz_pp_c<8, W, H>; \
+    p.luma_hpp[(LUMA_PARTITION_ ## W ## x ## H) + 1] = interp_horiz_pp_c<8, W, (H + 1)>; \
+    p.luma_hpp[(LUMA_PARTITION_ ## W ## x ## H) + 2] = interp_horiz_pp_c<8, (W + 1), H>; \
+
+#define SET_LUMA_PRIMITIVE_TABLE_F1(W, H) \
+    p.luma_hpp[LUMA_PARTITION_ ## W ## x ## H] = interp_horiz_pp_c<8, W, H>; \
+
+#define SET_LUMA_PRIMITIVE_TABLE \
+    SET_LUMA_PRIMITIVE_TABLE_F3(4,   8); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(4,  16); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(8,   4); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(8,   8); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(8,  16); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(8,  32); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(12, 16); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(16,  4); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(16,  8); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(16, 12); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(16, 16); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(16, 32); \
+    SET_LUMA_PRIMITIVE_TABLE_F1(16, 64); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(32,  8); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(32, 16); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(32, 24); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(32, 32); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(32, 64); \
+    SET_LUMA_PRIMITIVE_TABLE_F1(48, 64); \
+    SET_LUMA_PRIMITIVE_TABLE_F1(64, 16); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(64, 32); \
+    SET_LUMA_PRIMITIVE_TABLE_F1(64, 48); \
+    SET_LUMA_PRIMITIVE_TABLE_F3(64, 64); \
+
 void Setup_C_IPFilterPrimitives(EncoderPrimitives& p)
 {
     SETUP_PARTITION(2, 4);


More information about the x265-devel mailing list