Am 20.11.2011 14:53, schrieb Michal Fapso: > Hi Hannes, I am really confused now. I tried to isolate the problem, > Here is the full output of the compiled test: > > blur: frame=2 p.vert=1 n.vert=1 p.hori=1 n.hori=1 psc=0.971831 nsc=0.028169 > prev_frame=0 next_frame=71 > intp_vert=1.00000000000000000000000000000000000000000000000000e+00 > (int)intp_vert=1 > (prev.vertical * prev_scale + next.vertical * next_scale) > 0 > (prev.vertical * prev_scale + next.vertical * next_scale) > 1 > intp_vert_double > 0 > intp_vert_double == 1 > next_scale_prev_scale = > 2.7375520730013886555598290328816801775246858596801757812500000000000000000000000000000000000000000000e-02 > next_scale * prev_scale = > 2.7375520730013886555598290328816801775246858596801757812500000000000000000000000000000000000000000000e-02 > next_scale_prev_scale < next_scale * prev_scale > typeid(next_scale_prev_scale) = d > typeid(next_scale * prev_scale) = d > > > blur: frame=3 p.vert=1 n.vert=1 p.hori=1 n.hori=1 psc=0.957746 nsc=0.0422535 > prev_frame=0 next_frame=71 > intp_vert=1.00000000000000000000000000000000000000000000000000e+00 > (int)intp_vert=0 > (prev.vertical * prev_scale + next.vertical * next_scale) > 0 > (prev.vertical * prev_scale + next.vertical * next_scale) < 1
I see. The problem is that this sum is sometimes slightly smaller than 1 due to floatingpoint rounding when the exact result should be 1. So, your suggested fix to just copy the prev.vertical and prev.horizontal is the right thing to do. -- Hannes _______________________________________________ Cinelerra mailing list Cinelerra@skolelinux.no https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra