Timing discrepancy with bd:// playback after seeking
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 37k
- Forks
- 3.5k
- Avg merge
- 1d 10h
- Merged PRs (30d)
- 22
Description
mpv Information
mpv v0.39.0-615-gca211b5b Copyright © 2000-2025 mpv/MPlayer/mplayer2 projects
built on Jan 11 2025 00:10:20
libplacebo version: v7.350.0 (v7.349.0-30-g056b852-dirty)
FFmpeg version: N-118281-gb76053d8b
FFmpeg library versions:
libavcodec 61.31.100
libavdevice 61.4.100
libavfilter 10.6.101
libavformat 61.9.105
libavutil 59.55.100
libswresample 5.4.100
libswscale 8.13.100
Other Information
- Windows version: Microsoft Windows NT 10.0.26100.0/26100.1457
- GPU model, driver and version: NVIDIA GeForce RTX 3080, DCH, 560.94
- Source of mpv: https://github.com/shinchiro/mpv-winbuild-cmake/releases/tag/20250111
- Latest known working version: N/A (earliest tested was v0.30.0)
- Issue started after the following happened: N/A
Reproduction Steps
I'm trying to play some Blu-ray discs with external subtitles. Works as expected when played from start to finish, but seeking ahead appears to shift the timing, resulting in the subtitles playing too quickly.
(BAD) open from disc, seek ahead to ending credits
# log: output-bd-seek-cli-bad.txt
mpv bd://12/E:/ --no-config --start=00:09:45.00 --sub-file=[...]
(OK) open from disc, play to completion without seeking
# log: output-bd-no-seek-ok.txt
mpv bd://12/E:/ --no-config --sub-file=[...]
(OK) open from local
.m2tsfile, seek ahead to the same time
# log: output-m2ts-seek-ok.txt
mpv 00070.m2ts --no-config --start=00:09:45.00 --sub-file=[...]
Expected Behavior
After seeking ahead, playing for a few seconds, then pausing on a specific frame, the current time in the OSD should match up across all instances and the subtitles should remain in sync.
Actual Behavior
When playing from disc with the bd:// URL, the time has now drifted ahead (00:09:49.333 vs. 00:09:48.505) and the subtitles are playing too early. This happens regardless of whether the seek was done with --start= or manually from the OSD.
However, if the video was played from disc up to this point without seeking ahead, the time will match the local .m2ts file and the subtitles will remain in sync as expected.
output-bd-seek-cli-bad.txt |
output-bd-no-seek-ok.txt |
output-m2ts-seek-ok.txt |
|---|---|---|
Log File
- output-bd-seek-cli-bad.txt
- output-bd-seek-manual-bad.txt
- output-m2ts-seek-ok.txt
- output-bd-no-seek-ok.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
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the discrepancy with the bd:// commands and compare output-bd-seek-cli-bad.txt and output-bd-no-seek-ok.txt against output-m2ts-seek-ok.txt. Trace the bd:// playback and seeking path first; done means seeking no longer advances the OSD timestamp or causes external subtitles to play early, matching local m2ts and uninterrupted disc playback.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- audio-video-rtc
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100