[Ffmpeg-cvslog] r6876 - trunk/libavcodec/motion_est.c

Michael Niedermayer michaelni
Tue Dec 12 14:00:54 CET 2006


Hi

On Mon, Dec 11, 2006 at 02:07:23PM -0800, Corey Hickey wrote:
> michael wrote:
> >Author: michael
> >Date: Fri Nov  3 00:36:39 2006
> >New Revision: 6876
> >
> >Modified:
> >   trunk/libavcodec/motion_est.c
> >
> >Log:
> >new I/P frame selection heuristic
> >PSNR/bitrate is slightly better for my (short) test videos
> >more tests welcome ...
> >
> >
> >Modified: trunk/libavcodec/motion_est.c
> >==============================================================================
> >--- trunk/libavcodec/motion_est.c	(original)
> >+++ trunk/libavcodec/motion_est.c	Fri Nov  3 00:36:39 2006
> >@@ -1178,13 +1178,11 @@
> >         vard= check_input_motion(s, mb_x, mb_y, 1);
> > 
> >         if((vard+128)>>8 < c->avctx->me_threshold){
> >+            int p_score= FFMIN(vard, 
> >varc-500+(s->lambda2>>FF_LAMBDA_SHIFT)*100);
> >+            int i_score= varc-500+(s->lambda2>>FF_LAMBDA_SHIFT)*20;
> 
> Could you please give me a really quick explanation of what information 
> is stored in vard and varc? I see where they are assigned but I don't 
> understand the rest of the code well enough to figure it out from context.

vard is sum of squared differences with the estimated motion vector
varc is the variance of the block (sum of squared (p[y][x]-average))

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Why not whip the teacher when the pupil misbehaves? -- Diogenes of Sinope




More information about the ffmpeg-cvslog mailing list