[Ffmpeg-cvslog] r6876 - trunk/libavcodec/motion_est.c
Michael Niedermayer
michaelni
Wed Dec 13 03:03:45 CET 2006
Hi
On Tue, Dec 12, 2006 at 04:47:35PM -0800, Corey Hickey wrote:
> Michael Niedermayer wrote:
> >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))
>
> Thanks. I understand a little more now. To clarify, though, do you mean
> that vard is the sum of squared differences between the pixels of a
> predicted block and the corresponding pixels in the source frame?
>
> ...such that, in other words, a low vard would mean the motion vector
> accurately predicts the block?
yes
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Those who are too smart to engage in politics are punished by being
governed by those who are dumber. -- Plato
More information about the ffmpeg-cvslog
mailing list