[FFmpeg-cvslog] r14343 - trunk/libavcodec/elbg.c

vitor subversion
Wed Jul 23 07:54:35 CEST 2008


Author: vitor
Date: Wed Jul 23 07:54:34 2008
New Revision: 14343

Log:
My commit at r14340 was not the right solution. For a monocromatic 
frame, there will be only one centroid and it will be impossible to 
find three distinct ones. It is better to just avoid shifting if 
there are not three different centroids.


Modified:
   trunk/libavcodec/elbg.c

Modified: trunk/libavcodec/elbg.c
==============================================================================
--- trunk/libavcodec/elbg.c	(original)
+++ trunk/libavcodec/elbg.c	Wed Jul 23 07:54:34 2008
@@ -306,12 +306,11 @@ static void do_shiftings(elbg_data *elbg
             if (elbg->utility_inc[elbg->numCB-1] == 0)
                 return;
 
+            idx[1] = get_high_utility_cell(elbg);
             idx[2] = get_closest_codebook(elbg, idx[0]);
-            do {
-                idx[1] = get_high_utility_cell(elbg);
-            } while (idx[1] == idx[0] || idx[1] == idx[2]);
 
-            try_shift_candidate(elbg, idx);
+            if (idx[1] != idx[0] && idx[1] != idx[2])
+                try_shift_candidate(elbg, idx);
         }
 }
 




More information about the ffmpeg-cvslog mailing list