summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2003-12-30 19:19:45 +0000
committerMichael Niedermayer <michaelni@gmx.at>2003-12-30 19:19:45 +0000
commit7d67aa9b0f3bd2cb6c023e8b9e537606aa6b08d9 (patch)
tree3dae406b3cfcdfc63da8418d3d4479cf43a883b8
parentbb198e198abc42753274edc376fdd15543694315 (diff)
info about h and tpel
Originally committed as revision 2639 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--doc/optimization.txt3
-rw-r--r--libavcodec/dsputil.h4
2 files changed, 6 insertions, 1 deletions
diff --git a/doc/optimization.txt b/doc/optimization.txt
index 87e9d88468..6bba4c078a 100644
--- a/doc/optimization.txt
+++ b/doc/optimization.txt
@@ -60,6 +60,9 @@ qpel{8,16}_mc??_old_c / *pixels{8,16}_l4
just used to workaround a bug in old libavcodec encoder
dont optimze them
+tpel_mc_func {put,avg}_tpel_pixels_tab
+ used only for SVQ3, so only optimze them if u need fast SVQ3 decoding
+
add_bytes/diff_bytes
for huffyuv only, optimize if u want a faster ff-huffyuv codec
diff --git a/libavcodec/dsputil.h b/libavcodec/dsputil.h
index 0bd85e19ec..30779c34e6 100644
--- a/libavcodec/dsputil.h
+++ b/libavcodec/dsputil.h
@@ -79,6 +79,7 @@ void clear_blocks_c(DCTELEM *blocks);
/* add and put pixel (decoding) */
// blocksizes for op_pixels_func are 8x4,8x8 16x8 16x16
+//h for op_pixels_func is limited to {width/2, width} but never larger than 16 and never smaller then 4
typedef void (*op_pixels_func)(uint8_t *block/*align width (8 or 16)*/, const uint8_t *pixels/*align 1*/, int line_size, int h);
typedef void (*tpel_mc_func)(uint8_t *block/*align width (8 or 16)*/, const uint8_t *pixels/*align 1*/, int line_size, int w, int h);
typedef void (*qpel_mc_func)(uint8_t *dst/*align width (8 or 16)*/, uint8_t *src/*align 1*/, int stride);
@@ -109,7 +110,8 @@ static void a(uint8_t *block, const uint8_t *pixels, int line_size, int h){\
}
/* motion estimation */
-
+// h is limited to {width/2, width, 2*width} but never larger than 16 and never smaller then 2
+// allthough currently h<4 is not used as functions with width <8 are not used and neither implemented
typedef int (*me_cmp_func)(void /*MpegEncContext*/ *s, uint8_t *blk1/*align width (8 or 16)*/, uint8_t *blk2/*align 1*/, int line_size, int h)/* __attribute__ ((const))*/;