diff --git a/libavutil/avutil.h b/libavutil/avutil.h index 68a780e8b903f7784c3c743187fbca4cec279868..fdbce40faed8cdd6cfea44d0ee3ce260749e3c63 100644 --- a/libavutil/avutil.h +++ b/libavutil/avutil.h @@ -35,7 +35,7 @@ #define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c) #define LIBAVUTIL_VERSION_MAJOR 49 -#define LIBAVUTIL_VERSION_MINOR 13 +#define LIBAVUTIL_VERSION_MINOR 14 #define LIBAVUTIL_VERSION_MICRO 0 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ diff --git a/libavutil/random.c b/libavutil/random.c index 79919882eeffce96730eca6cadc8d9726d6d6c00..bafdf7a3773dcfaf6b712ee8ad9de7a042c2e326 100644 --- a/libavutil/random.c +++ b/libavutil/random.c @@ -36,7 +36,7 @@ see http://en.wikipedia.org/wiki/Mersenne_twister for an explanation of this alg #define LOWER_MASK 0x7fffffff /* least significant r bits */ /** initializes mt[AV_RANDOM_N] with a seed */ -void av_init_random(unsigned int seed, AVRandomState *state) +void av_random_init(AVRandomState *state, unsigned int seed) { int index; @@ -55,6 +55,11 @@ void av_init_random(unsigned int seed, AVRandomState *state) state->index= index; // will cause it to generate untempered numbers the first iteration } +void av_init_random(unsigned int seed, AVRandomState *state) +{ + av_random_init(state, seed); +} + /** generate AV_RANDOM_N words at one time (which will then be tempered later) (av_random calls this; you shouldn't) */ void av_random_generate_untempered_numbers(AVRandomState *state) { diff --git a/libavutil/random.h b/libavutil/random.h index f243676e7c00aa366cacd583585887ca7aaf9838..0bedcd583100aa00b96d862709650b60cd47f43f 100644 --- a/libavutil/random.h +++ b/libavutil/random.h @@ -26,13 +26,16 @@ #define AV_RANDOM_N 624 +#include "common.h" + typedef struct { unsigned int mt[AV_RANDOM_N]; ///< the array for the state vector int index; ///< Current untempered value we use as the base. } AVRandomState; -void av_init_random(unsigned int seed, AVRandomState *state); ///< 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_init_random(unsigned int seed, AVRandomState *state); +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). /**