[FFmpeg-cvslog] lls: use av_lfg instead of rand() in test program

Mans Rullgard git at videolan.org
Tue Jul 12 01:44:23 CEST 2011


ffmpeg | branch: master | Mans Rullgard <mans at mansr.com> | Fri Jul  8 15:01:05 2011 +0100| [7ce914fb5a4ae974985368ce98db4031c034d513] | committer: Mans Rullgard

lls: use av_lfg instead of rand() in test program

Signed-off-by: Mans Rullgard <mans at mansr.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=7ce914fb5a4ae974985368ce98db4031c034d513
---

 libavutil/lls.c |   13 ++++++++-----
 1 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/libavutil/lls.c b/libavutil/lls.c
index eba7375..b29fc96 100644
--- a/libavutil/lls.c
+++ b/libavutil/lls.c
@@ -118,24 +118,27 @@ double av_evaluate_lls(LLSModel *m, double *param, int order)
 
 #ifdef TEST
 
-#include <stdlib.h>
 #include <stdio.h>
+#include <limits.h>
+#include "lfg.h"
 
 int main(void)
 {
     LLSModel m;
     int i, order;
+    AVLFG lfg;
 
+    av_lfg_init(&lfg, 1);
     av_init_lls(&m, 3);
 
     for (i = 0; i < 100; i++) {
         double var[4];
         double eval;
 
-        var[0] = (rand() / (double) RAND_MAX - 0.5) * 2;
-        var[1] = var[0] + rand() / (double) RAND_MAX - 0.5;
-        var[2] = var[1] + rand() / (double) RAND_MAX - 0.5;
-        var[3] = var[2] + rand() / (double) RAND_MAX - 0.5;
+        var[0] = (av_lfg_get(&lfg) / (double) UINT_MAX - 0.5) * 2;
+        var[1] = var[0] + av_lfg_get(&lfg) / (double) UINT_MAX - 0.5;
+        var[2] = var[1] + av_lfg_get(&lfg) / (double) UINT_MAX - 0.5;
+        var[3] = var[2] + av_lfg_get(&lfg) / (double) UINT_MAX - 0.5;
         av_update_lls(&m, var, 0.99);
         av_solve_lls(&m, 0.001, 0);
         for (order = 0; order < 3; order++) {



More information about the ffmpeg-cvslog mailing list