.m3u8 not supported
Description of the bug
No thumbnails are created for .m3u8 files. I am trying to stream a video from a PeerTube instance and see thumbnails when I hover over the timer.
Thumbnails are successfully for .mp4 and .mkv files that are on my device. Have not tested streaming mp4/mkv to see if its an online or offline file issue or if the format was a whole is not supported
To Reproduce Steps to reproduce the behavior:
- Ran the command
mpv --fs --ao=pipewire --audio-samplerate=48000 --vo=gpu --gpu-api=vulkan --gpu-context=waylandvk --hwdec=no --cache=yes https://tilvids.com/static/streaming-playlists/hls/abe1477c-4a67-4044-bd8c-914b003ab34e/8a48ff77-29a9-4011-9c97-9a2c13480312-master.m3u8 - Try hovering cursor over the video progress bar
Expected behavior
Thumbnails in .m3u8 files should be appear
Debug log
Ran mpv with mpv --msg-level=mpv_thumbnail_script_server=debug,mpv_thumbnail_script_client_osc=debug,ytdl_hook=debug https://tilvids.com/static/streaming-playlists/hls/abe1477c-4a67-4044-bd8c-914b003ab34e/8a48ff77-29a9-4011-9c97-9a2c13480312-master.m3u8
Log
[ytdl_hook] Loading lua script @ytdl_hook.lua...
[ytdl_hook] loading mp.defaults
[ytdl_hook] loading @ytdl_hook.lua
[ytdl_hook] reading options for ytdl_hook
[ytdl_hook] script-opts/ytdl_hook.conf not found.
[ytdl_hook] lua-settings/ytdl_hook.conf not found.
[mpv_thumbnail_script_client_osc] Loading lua script /home/daniel/.config/mpv/scripts/mpv_thumbnail_script_client_osc.lua...
[mpv_thumbnail_script_server] Loading lua script /home/daniel/.config/mpv/scripts/mpv_thumbnail_script_server.lua...
[mpv_thumbnail_script_client_osc] loading mp.defaults
[mpv_thumbnail_script_server] loading mp.defaults
[mpv_thumbnail_script_client_osc] loading file /home/daniel/.config/mpv/scripts/mpv_thumbnail_script_client_osc.lua
[mpv_thumbnail_script_server] loading file /home/daniel/.config/mpv/scripts/mpv_thumbnail_script_server.lua
[mpv_thumbnail_script_server] reading options for mpv_thumbnail_script
[mpv_thumbnail_script_server] Opened config file script-opts/mpv_thumbnail_script.conf.
[mpv_thumbnail_script_client_osc] reading options for mpv_thumbnail_script
[mpv_thumbnail_script_client_osc] Opened config file script-opts/mpv_thumbnail_script.conf.
[mpv_thumbnail_script_client_osc] reading options for osc
[mpv_thumbnail_script_client_osc] script-opts/osc.conf not found.
[mpv_thumbnail_script_client_osc] lua-settings/osc.conf not found.
[ytdl_hook] playlist hook
[mpv_thumbnail_script_client_osc] osc_init
[mpv_thumbnail_script_server] Announcing self to master...
[mpv_thumbnail_script_client_osc] Registered worker mpv_thumbnail_script_server
[mpv_thumbnail_script_server] Successfully registered with master
○ Video --vid=1 (h264 256x144 30 fps 205 kbps) [default]
○ Video --vid=2 (h264 640x360 30 fps 404 kbps) [default]
● Video --vid=3 (h264 1920x1080 60 fps 1463 kbps) [default]
○ Audio --aid=1 (aac 2ch 44100 Hz 128 kbps) [default]
○ Audio --aid=2 (aac 2ch 44100 Hz 128 kbps) [default]
● Audio --aid=3 (aac 2ch 44100 Hz 129 kbps) [default]
[mpv_thumbnail_script_client_osc] osc_init
[mpv_thumbnail_script_client_osc] Gathering video/thumbnail state
AO: [pipewire] 44100Hz stereo 2ch floatp
VO: [gpu] 1920x1080 yuv420p
[mpv_thumbnail_script_client_osc] Thumbnailer.state: {"thumbnail_size" = {"h" = 112, "w" = 200}, "finished_thumbnails" = 0, "thumbnails" = {}, "worker_extra" = {}, "is_remote" = 6, "thumbnail_directory" = "/tmp/mpv_thumbs_cache/81b6f6a274190794adc15b74bf681dd21c6dcfa4-0", "available" = false, "ready" = true, "thumbnail_count" = 0, "thumbnail_template" = "/tmp/mpv_thumbs_cache/81b6f6a274190794adc15b74bf681dd21c6dcfa4-0/%06d.bgra"}
[mpv_thumbnail_script_client_osc] Trying to get storyboard info...
[mpv_thumbnail_script_client_osc] osc_init
[mpv_thumbnail_script_client_osc] Starting subprocess: [yt-dlp, --format, sb0, --dump-json, --no-playlist, --extractor-args, youtube:skip=hls,dash,translated_subs, --, https://tilvids.com/static/streaming-playlists/hls/abe1477c-4a67-4044-bd8c-914b003ab34e/8a48ff77-29a9-4011-9c97-9a2c13480312-master.m3u8]
[mpv_thumbnail_script_client_osc] ERROR: [generic] 8a48ff77-29a9-4011-9c97-9a2c13480312-master: Requested format is not available. Use --list-formats for a list of available formats
[mpv_thumbnail_script_client_osc] osc_init
[mpv_thumbnail_script_client_osc] osc_init
[mpv_thumbnail_script_client_osc] osc_init
(Paused) AV: 00:00:13 / 00:21:47 (1%) A-V: 0.000 Dropped: 446 Cache: 502s/109MB
Exiting... (Quit)
[ytdl_hook] Destroying client handle...
[mpv_thumbnail_script_server] Destroying client handle...
[mpv_thumbnail_script_client_osc] Destroying client handle...
Environment
- Linux
- mpv version:
0.40.0 - mpv_thumbnail_script version:
0.5.4 - only config in ~/.config/mpv/mpv.conf is
osc=no - used suggested default configuration for ~/.config/mpv/script-opts/mpv_thumbnail_script.conf as the readme
Additional context
$ yt-dlp --list-formats https://tilvids.com/static/streaming-playlists/hls/abe1477c-4a67-4044-bd8c-914b003ab34e/8a48ff77-29a9-4011-9c97-9a2c13480312-master.m3u8
[generic] Extracting URL: https://tilvids.com/static/streaming-playlists/hls/abe1477c-4a67-4044-bd8c-914b003ab34e/8a48ff77-...13480312-master.m3u8
[generic] 8a48ff77-29a9-4011-9c97-9a2c13480312-master: Downloading webpage
[generic] 8a48ff77-29a9-4011-9c97-9a2c13480312-master: Downloading m3u8 information
[generic] 8a48ff77-29a9-4011-9c97-9a2c13480312-master: Checking m3u8 live status
[info] Available formats for 8a48ff77-29a9-4011-9c97-9a2c13480312-master:
ID EXT RESOLUTION FPS │ FILESIZE TBR PROTO │ VCODEC ACODEC
────────────────────────────────────────────────────────────────────────
204 mp4 256x144 30 │ ~ 31.90MiB 205k m3u8 │ avc1.64000c mp4a.40.2
404 mp4 640x360 30 │ ~ 62.99MiB 404k m3u8 │ avc1.64001e mp4a.40.2
1463 mp4 1920x1080 60 │ ~228.02MiB 1463k m3u8 │ avc1.64002a mp4a.40.2
$ kinfo
Operating System: Arch Linux
KDE Plasma Version: 6.4.4
KDE Frameworks Version: 6.17.0
Qt Version: 6.9.2
Kernel Version: 6.16.3-arch1-1 (64-bit)
Graphics Platform: Wayland
Processors: 4 × AMD A8-7410 APU with AMD Radeon R5 Graphics
Memory: 8 GB of RAM (6.7 GB usable)
Graphics Processor: AMD Radeon R5 Graphics
$ mpv --version
mpv v0.40.0-dirty Copyright © 2000-2025 mpv/MPlayer/mplayer2 projects
built on Jul 29 2025 22:35:55
libplacebo version: v7.351.0
FFmpeg version: n7.1.1
FFmpeg library versions:
libavcodec 61.19.101
libavdevice 61.3.100
libavfilter 10.4.100
libavformat 61.7.100
libavutil 59.39.100
libswresample 5.3.100
libswscale 8.3.100
yt-dlp 2025.08.27-1 python-brotli 1.1.0-3 python-brotlicffi 1.1.0.0-3 python-pycryptodome 3.23.0-1