Commit c0c808d0 authored by michael's avatar michael

Deprecate the Mersenne Twister.

Please use an ALFG, MLFG, LCG or KISS99 generator, MLFG&KISS99 provide higher quality
numbers and all should be faster.


git-svn-id: file:///var/local/repositories/ffmpeg/trunk@17874 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent c2882743
...@@ -38,8 +38,8 @@ typedef struct { ...@@ -38,8 +38,8 @@ typedef struct {
#if LIBAVUTIL_VERSION_MAJOR < 50 #if LIBAVUTIL_VERSION_MAJOR < 50
attribute_deprecated void av_init_random(unsigned int seed, AVRandomState *state); attribute_deprecated void av_init_random(unsigned int seed, AVRandomState *state);
#endif #endif
void av_random_init(AVRandomState *state, unsigned int seed); ///< To be inlined, the struct must be visible. So it does not make sense to try and keep it opaque with malloc/free-like calls. attribute_deprecated void av_random_init(AVRandomState *state, unsigned int seed); ///< To be inlined, the struct must be visible. So it does not make sense to try and keep it opaque with malloc/free-like calls.
void av_random_generate_untempered_numbers(AVRandomState *state); ///< Regenerate the untempered numbers (must be done every 624 iterations, or it will loop). attribute_deprecated void av_random_generate_untempered_numbers(AVRandomState *state); ///< Regenerate the untempered numbers (must be done every 624 iterations, or it will loop).
/** /**
* Generates a random number from the interval [0,0xffffffff]. * Generates a random number from the interval [0,0xffffffff].
...@@ -49,7 +49,7 @@ void av_random_generate_untempered_numbers(AVRandomState *state); ///< Regenerat ...@@ -49,7 +49,7 @@ void av_random_generate_untempered_numbers(AVRandomState *state); ///< Regenerat
* If you still choose to use MT, expect that you will have to provide * If you still choose to use MT, expect that you will have to provide
* some evidence that it makes a difference for the case where you use it. * some evidence that it makes a difference for the case where you use it.
*/ */
static inline unsigned int av_random(AVRandomState *state) attribute_deprecated static inline unsigned int av_random(AVRandomState *state)
{ {
unsigned int y; unsigned int y;
...@@ -70,7 +70,7 @@ static inline unsigned int av_random(AVRandomState *state) ...@@ -70,7 +70,7 @@ static inline unsigned int av_random(AVRandomState *state)
} }
/** Returns a random number in the range [0-1] as double. */ /** Returns a random number in the range [0-1] as double. */
static inline double av_random_real1(AVRandomState *state) attribute_deprecated static inline double av_random_real1(AVRandomState *state)
{ {
/* divided by 2^32-1 */ /* divided by 2^32-1 */
return av_random(state) * (1.0 / 4294967296.0); return av_random(state) * (1.0 / 4294967296.0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment