aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/dsputil.h
diff options
context:
space:
mode:
authorFabrice Bellard <fabrice@bellard.org>2001-08-07 22:43:19 +0000
committerFabrice Bellard <fabrice@bellard.org>2001-08-07 22:43:19 +0000
commite0eac44e826faa010ebf6f48b0d4e9e11d50cd9b (patch)
tree2695c2e327feb66df08c324da963b3c396702a21 /libavcodec/dsputil.h
parent9e1586fce9c806baba9d446b150158cc0145ce66 (diff)
downloadffmpeg-e0eac44e826faa010ebf6f48b0d4e9e11d50cd9b.tar.gz
added block permutation functions
Originally committed as revision 45 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/dsputil.h')
-rw-r--r--libavcodec/dsputil.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/libavcodec/dsputil.h b/libavcodec/dsputil.h
index ffbc395bad..ebb4d8446c 100644
--- a/libavcodec/dsputil.h
+++ b/libavcodec/dsputil.h
@@ -15,6 +15,11 @@ void fdct_mmx(DCTELEM *block);
void (*av_fdct)(DCTELEM *block);
+/* encoding scans */
+extern UINT8 ff_alternate_horizontal_scan[64];
+extern UINT8 ff_alternate_vertical_scan[64];
+extern UINT8 zigzag_direct[64];
+
/* pixel operations */
#define MAX_NEG_CROP 384
@@ -62,6 +67,13 @@ int pix_abs16x16_x2_c(UINT8 *blk1, UINT8 *blk2, int lx, int h);
int pix_abs16x16_y2_c(UINT8 *blk1, UINT8 *blk2, int lx, int h);
int pix_abs16x16_xy2_c(UINT8 *blk1, UINT8 *blk2, int lx, int h);
+static inline int block_permute_op(int j)
+{
+ return (j & 0x38) | ((j & 6) >> 1) | ((j & 1) << 2);
+}
+
+void block_permute(INT16 *block);
+
#ifdef HAVE_MMX
#define MM_MMX 0x0001 /* standard MMX */