Feature request: playlist thumbnails
Hey, just wanted to request a potential option to enable thumbnails for your playlist. I think it looks better visually than a compact list of file names.
cheers.
You're right. I wonder if there is another media player that does this.
You're right. I wonder if there is another media player that does this.
Haruna media player does it: https://invent.kde.org/multimedia/haruna
This one does as well: https://github.com/kanishka-linux/kawaii-player
They're both mpv front-ends too (qt5)
Ok I'm going to put this on the backburner for a while. This is pretty easy, but it's going to be tedious.
If anyone wants to work on this, checkout the playlist-thumbnails branch, where I've worked on refactoring the thumbnailing module. (Although it might be the wiser course to spin off the code to a separate module and trim the fat, instead of making the thumbnailer code have two different modes.)
What I suspect is left to be done:
- Early fork() to create a thumbnailer process with its own gui thread.
- Second application flow module
- IPC
- Mechanism for scheduling thumbnail generation + fetching
- Mechanism for loading thumbnails into the playlist widget
- Add thumbnail file path to the playlist item + serialization
Which is all pretty easy. Essentially this is writing two programs in the same code base. BUT if I'm allowed a little whinge, an invasive change like this should have been done nine years ago at design time instead of hacked into the program now, but that was not possible because I wasn't aware of this feature back then.
Besides this, there is one thing which have been bugging me. I am not satisfied with the gradual spaghettification of the code-base with many hacked-on features that weren't intended at design time. There is a need to sit down and refactor the code. Adding a major feature right now would make this problem worse.
That aside, I am also halfway through a house renovation. So I doubt I'll be in a good place to make big changes for several months.
Cheers.
An alternative to the above approach is: investigate if it is possible to use a vo=null mpv object and extract a frame with the screenshot command.