summaryrefslogtreecommitdiff
path: root/libavcodec/vc1dsp.h
diff options
context:
space:
mode:
authorRonald S. Bultje <rsbultje@gmail.com>2011-02-21 09:07:13 -0500
committerRonald S. Bultje <rsbultje@gmail.com>2011-02-21 10:23:44 -0500
commitf8bed30d8b176fa030f6737765338bb4a2bcabc9 (patch)
treef55e179732f7db45c5fcfecd80757676bdbf7fcc /libavcodec/vc1dsp.h
parent8d9ac969cb4ac3e3e18f6425703af4d7aec6c513 (diff)
VC1: merge idct8x8, coeff adjustments and put_pixels.
Merging these functions allows merging some loops, which makes the results (particularly after SIMD optimizations) much faster.
Diffstat (limited to 'libavcodec/vc1dsp.h')
-rw-r--r--libavcodec/vc1dsp.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/libavcodec/vc1dsp.h b/libavcodec/vc1dsp.h
index a1f3d90574..db9d892a23 100644
--- a/libavcodec/vc1dsp.h
+++ b/libavcodec/vc1dsp.h
@@ -30,9 +30,13 @@
#include "dsputil.h"
+typedef void (*vc1_idct_func)(uint8_t *dest, int line_size, DCTELEM *block);
+
typedef struct VC1DSPContext {
/* vc1 functions */
- void (*vc1_inv_trans_8x8)(DCTELEM *b);
+ vc1_idct_func vc1_inv_trans_8x8_add;
+ vc1_idct_func vc1_inv_trans_8x8_put_signed[2];
+ vc1_idct_func vc1_inv_trans_8x8_put[2];
void (*vc1_inv_trans_8x4)(uint8_t *dest, int line_size, DCTELEM *block);
void (*vc1_inv_trans_4x8)(uint8_t *dest, int line_size, DCTELEM *block);
void (*vc1_inv_trans_4x4)(uint8_t *dest, int line_size, DCTELEM *block);