Limin Wang: > On Fri, Oct 11, 2019 at 06:20:00AM +0000, Andreas Rheinhardt wrote: >> lance.lmw...@gmail.com: >>> From: Limin Wang <lance.lmw...@gmail.com> >>> >>> Signed-off-by: Limin Wang <lance.lmw...@gmail.com> >>> --- >>> libavfilter/vf_random.c | 2 +- >>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> diff --git a/libavfilter/vf_random.c b/libavfilter/vf_random.c >>> index 1937eae771..9f2153be61 100644 >>> --- a/libavfilter/vf_random.c >>> +++ b/libavfilter/vf_random.c >>> @@ -33,7 +33,7 @@ typedef struct RandomContext { >>> >>> AVLFG lfg; >>> int nb_frames; >>> - int64_t random_seed; >>> + int32_t random_seed; >>> int nb_frames_filled; >>> AVFrame *frames[MAX_FRAMES]; >>> int64_t pts[MAX_FRAMES]; >>> >> { "seed", "set the seed", OFFSET(random_seed), >> AV_OPT_TYPE_INT64, {.i64=-1}, -1, UINT32_MAX, FLAGS }, >> >> So in addition to the complete range of an uint32_t one also needs >> another value that instructs init to get a random seed of its own. > > yes, the max range is UINT32_MAX, so no need to use int64_t > First of all, simply changing the value to 32 bit is not right -- you would also have to change the type in the corresponding AVOption (it might seem to work on little-endian systems, but it certainly doesn't on big-endian systems; actually using -1 as random_seed would probably already not work on little-endian systems either). Second, there are more legal values for random_seed than values representable in 32 bit, hence one has to use a type with more than 32 bit.
- Andreas _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".