Can VLC or some other Windows program shuffle through a playlist without ever repeating a file, while also storing that state for future sessions?
I am using Windows 10.
That is perhaps a silly question to ask, but I did not find an answer.
Suppose that I have a playlist with 100 videos on VLC or some other video player. I wish for it to play all the one hundred files in random order, with the exception that any video that was already played (or, possibly, played to completion) will be excluded, and will not be played again. A video not played to completion would resume from where it stopped.
This should be persistent, so the next time I fire up the playlist it starts from where I left it and also remembers the videos that were already played and should be skipped. Ideally, upon completion of the playlist, I should be able to learn that it was complete, so I could get new videos/episodes of whatever shows I am shuffling.
Thanks!
EDIT: I understand I can actually pre-shuffle the playlist to get something very similar to what I am asking. However, I would rather not know what is coming next. Like it used to be when I watched TV back in the day. Thanks! ;)
You want foobar2000. I believe shuffle mode does this by default.
Edit: stupid me didn't read closely to see that you need video, not audio. But foobar2000 likely supports whatever video you need worst case through plugins
this is indeed exactly how shuffle mode works in foobar, but can you play video in foobar?
Apparently you can now (I edited my original comment to add this after your reply)
oh very cool! this is great news and I'll have to try it out!
ah makes sense! I deliberately use Random instead of Shuffle because I don't like knowing what song is next if I'm listening to a playlist composed of multiple albums, and foobar gets restarted precisely when my computer gets restarted
I might be talking out my ass here because it's been a long time since I used it (and apparently it's not been updated since 2016) but Clementine used to do it (for music) I'm pretty sure.
As memory serves I had a huge playlist with a lot of files and I used to shuffle through them over multiple sessions, I think you could force it to never repeat?
But again, pinch of salt and I dunno if I'd recommend it today.
Good luck though trying to find something! Seems like a pretty specific use case.
I've never used this, but after some digging it sounds like ErsatzTV will do what you want and has the shuffle feature you're specifically asking for. There are versions for Windows, Linux, and MacOS, and it can be paired with Plex if you want to do even more robust IPTV stuff.
It sounds like a playlist (schedule?) might need to be created so that you have the persistence across opening and closing the program, but hopefully that's a trivial issue. I was hoping there would be some program out there like Winamp that reopens the old playlist from a temp file and never bothers you about having to save it (I still use Winamp ... there are dozens of us).
I believe (But am not 100% sure) that you should be able to get what you need with Kodi. It supports smart video playlist which can be shuffled and folders as well. It will remember where in the video you were when you skip them. Just not sure about the playlist lasting between sessions but I would guess it does.
Edit: IDIOT ALERT! Sorry, just re-read and I see you’re on Windows. Will leave this up for Mac users that want to do the same thing. Sorry!
— — — — — 8< — — — —
IINA can do this. https://iina.io/
In the current release version the shuffle has to be manually invoked (there’s an accepted bug to make it sticky). But if you want it to do this on launch you can invoke it from a shell:
/Applications/IINA.app/Contents/MacOS/iina-cli --mpv-shuffle /path/to/vids/folder
That's great. It seems like this is a program for macos though.
IINA is mpv for Mac OS. You can use mpv on Windows and Linux too. Unfortunately, when you restart your computer you will start over... unless you find a lua script which can keep track of that session history or use a program that I wrote!
It keeps track of the number of times you watched or listened to something.
First install and create the file database:
https://scoop.sh/
Then you can use something like:
That will play things in random until you've run out of things to play.
In addition to the above, you can add
--fetch-siblings each
and that will make it so that files within each parent folder are played in order (for example ep1, ep2, etc). You can also useif-audiobook
instead ofeach
to only play in order when "audiobook" is part of the file's path.For videos the process is essentially the same. But use --video instead of --audio and watch instead of listen. You can also add --fs to force full screen.
You should exit with ctrl-c when you want to stop and mark the video as incomplete or
q
to mark the video as watched and go to the next video.