1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-24 15:52:25 +00:00
mpv/common
Niklas Haas b9c48ca8f3 playlist: improve shuffle algorithm
The old algorithm produced results which were not uniformly distributed,
i.e. some particular shuffles were preferred over others.

The new algorithm is an implementation of the Fisher-Yates shuffle which
is guaranteed to shuffle uniformly given a sufficiently uniform rand()
and ignoring potential floating-point errors.

Signed-off-by: wm4 <wm4@nowhere>
2016-03-20 19:51:22 +01:00
..
av_common.c av_common: explicitly exclude _vdpau deccoders from enumeration 2016-03-02 22:20:15 +01:00
av_common.h command: add encoder-list property 2016-03-01 21:46:57 +01:00
av_log.c av_log: avoid partial lines 2016-03-01 22:03:45 +01:00
av_log.h
codecs.c Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
codecs.h Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
common.c Initial Android support 2016-02-10 21:29:36 +01:00
common.h audio/video: merge decoder return values 2016-02-01 22:03:04 +01:00
encode_lavc.c mpv_talloc.h: rename from talloc.h 2016-01-11 21:05:55 +01:00
encode_lavc.h Update license headers 2015-04-13 12:10:01 +02:00
encode.h
global.h global: add client API pointer to library handle 2016-01-15 22:54:08 +01:00
msg_control.h client API: allow using msg-level option for log messages 2015-06-20 21:40:47 +02:00
msg.c msg: introduce partial line buffers per mp_log 2016-03-01 22:36:05 +01:00
msg.h Update license headers 2015-04-13 12:10:01 +02:00
playlist.c playlist: improve shuffle algorithm 2016-03-20 19:51:22 +01:00
playlist.h Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
tags.c Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
tags.h
version.c Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00