mpv-player / mpv-player/mpv

[UX] Seek length should respect the playback speed value

Open
#16,945 3 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

meta:feature-request
Dominant language
C
Stars
37k
Forks
3.5k
Avg merge
1d 10h
Merged PRs (30d)
22

Description

Expected behavior of the wanted feature

Let's start off with a rough example. When you're watching a game speedrun, each frame is important and you would sometimes lower the playback speed to 0.05 or 0.01 values. Then, if you want to rewatch the previous moment, seeking back 5 seconds (the default seek value) will scale to 100 (or 500) seconds — an immense amount of real/effective watch time. Even shift+arrow won't give you 5 seconds of real duration then. Of course, it's easy to imagine examples also for faster playback — x1.5, x2, x3

Why not add more seek shortcuts with different values? It won't work, since all users have different preferences and many of them watch different videos at different speeds. Neither you nor users can keep adding new seek shortcuts for 0.5/0.25/10/20/etc seconds or choosing the right shortcut during video watching

Why add this directly to mpv and not to a plugin? Seeking by effective watch time feels natural. Seeking by 500 seconds does not. Even more than that, I propose not only adding a new playback-speed-aware seek command respecting playback speed, but also changing default seek keybindings to this option, as it fixes UX

Maybe it would be even consistent with the default OSC that shows effective time in "time left" section, but still inconsistent with "time elapsed" (why they're different?)

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

The issue names no files or tests. Start by locating mpv's seek command and default keybinding handling, then trace how playback speed affects seek duration. Done means the default seek controls move by the intended effective watch time at very slow and fast playback speeds, with regression coverage for those cases.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
desktop
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.