info about h and tpel
authorMichael Niedermayer <michaelni@gmx.at>
Tue, 30 Dec 2003 19:19:45 +0000 (19:19 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Tue, 30 Dec 2003 19:19:45 +0000 (19:19 +0000)
Originally committed as revision 2639 to svn://svn.ffmpeg.org/ffmpeg/trunk

doc/optimization.txt
libavcodec/dsputil.h

index 87e9d88..6bba4c0 100644 (file)
@@ -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
 
index 0bd85e1..30779c3 100644 (file)
@@ -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))*/;