mpv
mpv copied to clipboard
YouTube m3u8 Can't Skip Around In Video (VP9)
mpv Information
mpv v0.38.0-dirty Copyright © 2000-2024 mpv/MPlayer/mplayer2 projects
built on May 23 2024 10:30:57
libplacebo version: v6.338.2
FFmpeg version: n7.0.1
FFmpeg library versions:
libavutil 59.8.100
libavcodec 61.3.100
libavformat 61.1.100
libswscale 8.1.100
libavfilter 10.1.100
libswresample 5.1.100
Other Information
- Linux version: Arch Linux
- Kernel Version: 6.9.5-arch1-1
- GPU Model: Intel Corporation Alder Lake-P GT2 [Iris Xe Graphics] [8086:46a6] (rev 0c)
- Mesa/GPU Driver Version: Not sure
- Window Manager and Version: Xfce Latest
- Source mpv: Pacman
- Introduced in version: Not sure, only started trying to play these YouTube formats today
Reproduction Steps
To get the playlist file: yt-dlp -f 612 "https://www.youtube.com/watch?v=j0jiR0-Izg0&t=0" --get-url
mpv --no-resume-playback --no-config *url*
Then skip ahead a bit, a minute should be enough.
Note that this issue doesn't occur with H264 formats (AVC as yt-dlp calls it). Format 312 for example works fine
Expected Behavior
The file should play and you should be able to skip around in it
Actual Behavior
Trying to skip to a point in the file (say 3 minutes in) will cause the video to stop, and it never seems to recover. mpv is fully using my network, which I assumed meant it was trying to "catch" up by downloading everything in between where I started and where I skipped to, but this doesn't seem to be the case.
Log File
Sample Files
No response
I carefully read all instruction and confirm that I did the following:
- [X] I tested with the latest mpv version to validate that the issue is not already fixed.
- [X] I provided all required information including system and mpv version.
- [X] I produced the log file with the exact same set of files, parameters, and conditions used in "Reproduction Steps", with the addition of
--log-file=output.txt. - [X] I produced the log file while the behaviors described in "Actual Behavior" were actively observed.
- [X] I attached the full, untruncated log file.
- [X] I attached the backtrace in the case of a crash.
It's possible that this is Youtube's doing, related to blocking alternative frontends. More information can be found at Invidious' issues. if this is the case, then rotating IP addresses would solve it, at least temporarily.
I don't know for certain, but I wanted to bring this to the attention of the MPV devs just in case it's a lead.
See #13033 for details, but in summary:
- Seems like this is due to an ffmpeg bug https://github.com/mpv-player/mpv/issues/13033#issuecomment-2203550331
- There are workarounds https://github.com/mpv-player/mpv/issues/13033#issuecomment-2198830692