H.261 encoder by (Maarten Daniels <maarten dot daniels at luc dot ac dot be>)
Originally committed as revision 3643 to svn://svn.ffmpeg.org/ffmpeg/trunk
Originally committed as revision 3458 to svn://svn.ffmpeg.org/ffmpeg/trunk
quad tree based motion compensation (currently only 16x16 & 8x8 OBMC blocks, but can be extended to other block sizes easily)different intra block coding (previous was just an ugly hack)1.8% bitrate reduction -0.01PSNR (foreman@352x288 qscale=8)1.5% bitrate reduction +0.05PSNR (foreman@352x288 qscale=1)...
4x4 SSE compare functionwavelet based compare functionsmake epzs_motion_search() more flexible so it can be used for a wider range of block sizesmake get_penalty_factor() independant of MpegEncContext
Originally committed as revision 3410 to svn://svn.ffmpeg.org/ffmpeg/trunk
shape-adaptive diamond + prediction crash patch by (Loren Merritt <lorenm at u dot washington dot edu>)
Originally committed as revision 3287 to svn://svn.ffmpeg.org/ffmpeg/trunk
Originally committed as revision 3222 to svn://svn.ffmpeg.org/ffmpeg/trunk
clip input motion vectorsbe somewhat more tollerant on invalid inputreturn INT_MAX instead of -1 for unuseable mv/mb types as that ensures nicely that they arent usedinitalize limits earlier for b framesa few more asserts to check for out of picture vectors...
moving motion estimation specific variables from MpegEncContext -> MotionEstContext
Originally committed as revision 3124 to svn://svn.ffmpeg.org/ffmpeg/trunk
reduce dependancy between motion estimation and MpegEncContextthis is practically just a s/s->me./c->/
Originally committed as revision 3123 to svn://svn.ffmpeg.org/ffmpeg/trunk
motion estimation cleanupreplace ugly macros by always_inline functions, that way its much more readable and flexible as always_inline can simply be removed while the macros couldnt beabout 0.5 % speedup with default parameters
Originally committed as revision 3037 to svn://svn.ffmpeg.org/ffmpeg/trunk
simplify MV availability check / dont use below last row MV which is always zero
Originally committed as revision 2773 to svn://svn.ffmpeg.org/ffmpeg/trunk
multithreaded/SMP motion estimationmultithreaded/SMP encoding for MPEG1/MPEG2/MPEG4/H263all pthread specific code is in pthread.cto try it, run configure --enable-pthreads and ffmpeg ... -threads <num>the internal thread API is a simple AVCodecContext.execute() callback which executes a given function pointer with different arguments and returns after finishing all, that way no mutexes or other thread-mess is needed outside pthread.c...
copyright year update of the files i touched and remembered, things look annoyingly unmaintained otherwise
Originally committed as revision 2686 to svn://svn.ffmpeg.org/ffmpeg/trunk
interlaced motion estimationinterlaced mpeg2 encoding P & B frames rate distored interlaced mb decission alternate scantable support4mv encoding fixes (thats also why the regression tests change)passing height to most dsp functionsinterlaced mpeg4 encoding (no direct mode MBs yet)...
removed unused variable
Originally committed as revision 2162 to svn://svn.ffmpeg.org/ffmpeg/trunk
Originally committed as revision 1884 to svn://svn.ffmpeg.org/ffmpeg/trunk
simplified adressing of most mb based arrays (mb_x + mb_y*s->mb_stride) now instead of mb_x + mb_y*mb_width and 1+mb_x + (1+mb_y)*(mb_width+2) and ... mixturemore direct use of the new mb_type stuff instead of codec specific stuffruntime mb_type debug output h264/h263 variants/mpeg1/2/4...
some static > dynamic alloc & 16>8 bit
Originally committed as revision 1722 to svn://svn.ffmpeg.org/ffmpeg/trunk
per file doxy
Originally committed as revision 1634 to svn://svn.ffmpeg.org/ffmpeg/trunk
finetuneing thresholds/factorsnicer mb decissiona few minor improvements & fixes
Originally committed as revision 1472 to svn://svn.ffmpeg.org/ffmpeg/trunk
Originally committed as revision 1469 to svn://svn.ffmpeg.org/ffmpeg/trunk
qpel in mmx2/3dnowqpel refinement quality parameter
Originally committed as revision 1393 to svn://svn.ffmpeg.org/ffmpeg/trunk
pre motion estimation cleanup/bugfix
Originally committed as revision 1390 to svn://svn.ffmpeg.org/ffmpeg/trunk
shape adaptive diamonds for EPZSuser specified amount of MV predictors from the last frameb frame MV predictor scaling fixed
Originally committed as revision 1384 to svn://svn.ffmpeg.org/ffmpeg/trunk
qpel encoding4mv+b frames encoding finally fixedchroma ME5 comparission functions for MEb frame encoding speedupwmv2 codec (unfinished)user specified diamond size for EPZS
Originally committed as revision 1365 to svn://svn.ffmpeg.org/ffmpeg/trunk