-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
mpv + yt-dlp + sponsorblock + seek = no new video frames #13033
Comments
Seems like this issue doesn't get any attention, so allow me to clarify. When playing a video file (not a local file) using yt-dlp and then seeking forward (could be auto-skip using scripts and could be a manual skip) the result will be one out of two:
This doesn't seem to be an issue with yt-dlp, because I did open the same issue there and they believe it's mpv issue.
|
I just rechecked and it seems that even without that sponsorblock LUA script, if you just click on a part of video on OSD that is not yet cached, only audio will be heard but no new frames will be displayed. So this seems to be an issue with mpv specifically. I use Even reloading the file with the following script doesn't fix it:
|
For me the problem was ytdl-format set to prioritize the
It might seem that format 617 is much better, but after downloading them, it turns out they are exactly the same. If that doesn't help, you can debug by running |
|
@guidocella |
Using av1 instead of vp9 in https://www.youtube.com/watch?v=PgHZ4itvgVs fixes seeking rather than being fixed by |
But most other videos run fine with VP9, there must be a some difference that triggers this issue |
I can reproduce being able to seek the AV1 stream and not the VP9 stream in ffplay so it's an ffmpeg issue. |
As @Obegg is mentioning "frames" the only thing I can see is that the video that doesn't work has a weird FPS 29.97003. |
To be honest I am quite happy I am not the only one experiencing this, this gives us more information about this issue since more users are experiencing it and thereby reaching to the solution quicker. |
|
@Obegg I felt the same as I wasn't sure if to make the issue in the first place.
@guidocella A workaround is always nice but VP9 and VP9 2 is youtubes workhorse. Going forward it would be nice to have this issue solved Would it be possible to only switch to AV01 if the faulty framerate is detected? |
As far as I can see it is broken only for |
I have a more fundamental question here, which might sound off-topic: |
These can be used to solve the issue. |
what does it mean/do? ^^' |
|
Thats amazing, all of them work. But what does it change? Why is it working like this? ^^' |
The bug occurs when using the m3u8 protocol. |
It's important to note that only vp9 via m3u8 is bugged, e.g. h264 via m3u8 works fine. |
Then this should work too: |
Yes this works too, but you loose the ability to pick your resolution with something like |
After some research I found that this is an ffmpeg issue. |
Yeah, I mentioned a similar fix previously #13033 (comment).
If you use |
You can also use it this way: |
Mitigation for mpv-player/mpv#13033 Signed-off-by: Abyssal Wolfe <[email protected]>
This is more of a That's why @guidocella's piping method seems to work, because you're restricting yourself to load fragments in sequential order and avoiding seeking issues. |
That is fixed btw |
Allegedly fixed upstream. |
Important Information
Provide following Information:
https://github.com/zhongfly/mpv-winbuild/releases
Reproduction steps
While using mpv (zhongfly) + yt-dlp (master) + mpv_sponsorblock (PR 71 which skips
poi_highlight
) it seems like when seeking on this YouTube video as example (doesn't matter if it's auto seek or a manual seek) then yt-dlp will not show me any new frames from the video and I can only hear the audio track, or in some cases the stream itself will not load.For testing purposes I've used mpv
portable_config
directory with the following commands onmpv.conf
:And added
sponsorblock
script with the following options onsponsorblock.conf
:Note 1: Some information on the log file I've changed to
GitHub
.Note 2: This issue has been bothering me for quite some time so it's not a new bug.
Note 3: The bug can be reproduced even without
sponsorblock
script, just a manual seek at the start of the stream to the middle of the stream.Note 4: Created the same issue over at yt-dlp issue tracker.
Expected behavior
Show new video frames.
Actual behavior
No new video frames, only audio.
Log file
yt-dlp-mpv-seek-issue.txt
Sample files
portable_config.zip
https://www.youtube.com/watch?v=2QI88aLyaOs
The text was updated successfully, but these errors were encountered: