smplayer-dev / smplayer

Free Media Player for Windows, Linux and Mac OS with YouTube support.
https://smplayer.info
GNU General Public License v2.0
662 stars 93 forks source link

Thumbnail Preview on Seekbar #1000

Open real-uplink opened 3 months ago

real-uplink commented 3 months ago

Feature Request: Thumbnail Preview on Seekbar

Description: A small preview thumbnail of the cursor-pointed position in the stream when hovering the seekbar.

Implementation Idea: mpv_thumbnail_script

Open-Source-Implementations in other Projects:

Bluey26 commented 1 week ago

Hi, there has been a fork of the mpv_thumbnail_script you have mentioned.

I have tested it in last mpv version and it works. https://github.com/marzzzello/mpv_thumbnail_script

Unfortunately i was not able to make smplayer to load it, i may be doing something wrong, because according to: https://github.com/TinosNitso/mpv-scripts there's a way to make smplayer use .lua of mpv.

Feel free to try yourself and if you make it work, please tell me how.

Raza-0007 commented 1 week ago

You can only launch scripts in smplayer that don't clash with any of smplayer built-in functions. So in order for this mpv_thumbnail_script to work, you will first have to disable smplayer's own "timeline/seekbar". Even in vanilla mpv you have set the built-in osc=no in order for this script to load. So this script will not work with smplayer, unless it is coded in.

If you are just looking for a good thumbnail script for mpv, check out thumbfast. It is integrated with many mpv UI's and maintained by its original developer. The instructions for adding it to mpv are on the main page. Or you can just use the excellent uosc, it already has built in support for thumbfast.

By the way, thumbfast will also not work with smplayer, unless it is coded in smplayer's code.

~Raza

Bluey26 commented 1 week ago

Thanks for your thumbnailer suggestions.

thumbfast seems appropiate too, the problem is the same, unfortunately.

I use smplayer in an uncommon way. It launches a separated MPV window(this is to bypass some xwayland issues) and i expected the .lua scripts to work this way(since its the mpv window).

So far i seem to have achieved this:

--load-scripts=yes --script=~/.config/mpv/scripts/ --osd-level=0 Smplayer Options>Preferences>Advanced>Mplayer/mpv , "Options" field.

--osc=no makes the OSC to dissapear and no bar is shown(contrary to pure mpv, in where the custom osc is loaded).

--load-scripts=yes has to be forced because there is a --load-scripts=no by default.

This was tried both with thumbfast(worked in pure mpv) and with mpv_thumbnail_script.

Raza-0007 commented 6 days ago

My experience is limited when it comes to using mpv in its own window inside smpalyer. But scripting might not work even in this case, because when you ask smplayer to load scripts and pass a folder location, smplayer looks for a script called main.lua in that folder. It does not read any other scripts. I believe mpv-scripts work because they include a main.lua that tells smplayer what to do with the other scripts.

~Raza

Bluey26 commented 5 days ago

Thanks for the information.

Yes, that repository seems to work in here. After passing the aforementioned parameters to the "mpv options" inside smplayer, those .lua scripts work, because the main.lua seems to load then and "add" them.

I tried to add the osc.lua and thumbfast.lua to the scripts present in that main.lua but that does not seem to be enough to make them work. I guess there is some kind of function needed to make smplayer load them.

This was tested both with smplayer(classic setup) and my smplayer setup(mpv in its own window).