mpv-player / mpv-player/mpv

YouTube m3u8 Can't Skip Around In Video (VP9)

Open
#14,423 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

down-upstream os:linux
Dominant language
C
Stars
37k
Forks
3.5k
Avg merge
1d 10h
Merged PRs (30d)
22

Description

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

output.txt

Sample Files

No response

I carefully read all instruction and confirm that I did the following:
  • I tested with the latest mpv version to validate that the issue is not already fixed.
  • I provided all required information including system and mpv version.
  • 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.
  • I produced the log file while the behaviors described in "Actual Behavior" were actively observed.
  • I attached the full, untruncated log file.
  • I attached the backtrace in the case of a crash.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by inspecting output.txt alongside the exact mpv and yt-dlp commands in the reproduction steps, focusing on what happens when seeking the VP9 m3u8 stream. Compare this with the working H264 format 312 case. Done means format 612 can seek ahead without stopping or failing to recover.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.