Mercurial > libavcodec.hg
changeset 7351:1502ba3beb72 libavcodec
The codebook generator algorithm involves picking three
different codebook centroids ("high utility", "low
utility" and "closest to the low utility one"). This
change avoid the corner case of choosing two times the
same centroid.
author | vitor |
---|---|
date | Wed, 23 Jul 2008 03:54:31 +0000 |
parents | 5c45da72279e |
children | c2318e551ff5 |
files | elbg.c |
diffstat | 1 files changed, 3 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/elbg.c Wed Jul 23 02:12:54 2008 +0000 +++ b/elbg.c Wed Jul 23 03:54:31 2008 +0000 @@ -299,8 +299,10 @@ 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); }