Mercurial > libavcodec.hg
diff elbg.c @ 9154:aa459306ee59 libavcodec
Use FLG pseudo-random number generator in RoQ and ELBG
author | vitor |
---|---|
date | Sun, 08 Mar 2009 17:43:12 +0000 |
parents | e9d9d946f213 |
children | 678152bdb3a1 |
line wrap: on
line diff
--- a/elbg.c Sun Mar 08 16:37:57 2009 +0000 +++ b/elbg.c Sun Mar 08 17:43:12 2009 +0000 @@ -25,7 +25,7 @@ #include <string.h> -#include "libavutil/random.h" +#include "libavutil/lfg.h" #include "elbg.h" #include "avcodec.h" @@ -52,7 +52,7 @@ int *utility_inc; int *nearest_cb; int *points; - AVRandomState *rand_state; + AVLFG *rand_state; } elbg_data; static inline int distance_limited(int *a, int *b, int dim, int limit) @@ -105,7 +105,7 @@ { int i=0; /* Using linear search, do binary if it ever turns to be speed critical */ - int r = av_random(elbg->rand_state)%(elbg->utility_inc[elbg->numCB-1]-1) + 1; + int r = av_lfg_get(elbg->rand_state)%(elbg->utility_inc[elbg->numCB-1]-1) + 1; while (elbg->utility_inc[i] < r) i++; @@ -318,7 +318,7 @@ void ff_init_elbg(int *points, int dim, int numpoints, int *codebook, int numCB, int max_steps, int *closest_cb, - AVRandomState *rand_state) + AVLFG *rand_state) { int i, k; @@ -345,7 +345,7 @@ void ff_do_elbg(int *points, int dim, int numpoints, int *codebook, int numCB, int max_steps, int *closest_cb, - AVRandomState *rand_state) + AVLFG *rand_state) { int dist; elbg_data elbg_d;