mpv-player / mpv-player/mpv

When the two parameters demuxer-max-bytes and demuxer-readahead-secs are enabled, switching to a TrueHD audio track requires a 50-second wait before audio starts playing.

Open
#18,371 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

mpv Information
mpv v0.41.0-922-gf4d13e1c2 Copyright © 2000-2026 mpv/MPlayer/mplayer2 projects
built on Aug 11 2026 15:01:21
libplacebo version: v7.371.0 (v7.360.0-109-g4d82c68-dirty)
FFmpeg version: N-126085-g98e45d607
FFmpeg library versions:
libavcodec      63.7.100
libavdevice     63.2.100
libavfilter     12.3.101
libavformat     63.5.101
libavutil       61.5.100
libswresample   7.2.100
libswscale      10.2.100
Other Information
- Windows version: Windows 11 Enterprise 24H2 [Version 10.0.26100.7171]
- GPU model: NVIDIA GeForce GTX 1660 SUPER, Driver version: 610.88
- Source of mpv:
- Latest known working version:
- Issue started after the following happened:
Reproduction Steps
Problem Description

1. Scenario 1

mpv.conf settings:

#demuxer-max-bytes=500MiB
#demuxer-readahead-secs=60

1.1 Same MKV file, audio track switch during playback
1.2 After switching, audio starts within about 2 seconds and plays normally.

Log1:
output-Sound.from.output.is.working.txt

[mkv] refresh track 6 (audio)
[cplayer] delaying audio start 2372.960000 vs 2370.827000, diff=2.133000

2. Scenario 2

mpv.conf settings:

demuxer-max-bytes=500MiB
demuxer-readahead-secs=60

1.1 Same MKV file, audio track switch during playback
1.2 After switching, there is no sound for 40~50+ seconds. Sound only comes back after that time.

Log2:
output-No.sound.from.output.txt

[mkv] refresh track 10 (audio)
[mkv] can't issue refresh seek
[cplayer] delaying audio start 2598.188000 vs 2554.718000, diff=43.470000

3. Scenario 3

mpv.conf settings:

demuxer-max-bytes=500MiB
demuxer-readahead-secs=60

1.1 Same MKV file, audio track switch during playback
1.2 After switching, there is no sound for 40~50+ seconds.
1.3 At this point, manually dragging the progress bar brings the sound back immediately.

Log3:
output-No.sound.from.output.until.you.drag.the.progress.bar.txt

[cplayer] Run command: seek, target="5.000000"
[mkv] queuing seek to 2561.971000
[mkv] execute seek (to 2561.971000 flags 32)
[mkv] seek done
[cplayer] hr-seek, skipping to 2561.971000

Video Information (MediaInfo):
变形金刚1.Transformers.2007.UHD.Bluray.REMUX.2160p.HEVC.DV.HDR.TrueHD.7.1.Atmos.20Audios@oSpecialCN.mkv.MediaInfo.txt

The three full log files have been attached.

We observed the following:

1. Without cache limits enabled, switching to a TrueHD audio track produces sound in about 2 seconds. Is this considered normal behavior? Is this expected?

2. With cache limits enabled, switching to a TrueHD audio track results in about 50 seconds of silence, and manually dragging the progress bar restores it immediately. We would like to kindly ask: is this a bug in the mkv demuxer, or is it expected behavior under the current design?

If this issue could be addressed, we would really appreciate it. If not, would you happen to know any workaround we could use for now?


Another test::

4. Scenario 4

mpv.conf settings:

demuxer-max-bytes=500MiB
demuxer-readahead-secs=60

4.1 Different MKV file (大话西游之月光宝盒, 1080p, DTS-HD MA, 2 audio tracks, ~50GB)
4.2 Audio track switch during playback works normally. Sound starts within about 0.3 seconds.

Video Information (MediaInfo):
仙履奇缘.1995.1080p.BluRay.Remux.AVC.DTS-HD.MA.5.1 -WuKe.mkv.MediaInfo.txt

Log4:
output-切换音轨后立马出声音.txt

[mkv] refresh track 2 (audio)
[mkv] refresh seek to 1096.680000
[cplayer] starting audio playback

One thing that confuses me about Scenario 4: under identical cache settings (demuxer-max-bytes=500MiB and demuxer-readahead-secs=60), DTS-HD MA track switching works within ~0.3s, while TrueHD track switching results in ~50s of silence. This suggests the issue is not merely "cache limits cause delays" — it seems more specific to TrueHD streams. Is there any initial assessment from the developers on whether this is a demuxer-level quirk specific to TrueHD (or Atmos) in MKV?


5. I continued testing with other videos and found the key issue point.

Working audio tracks:

  • DTS-HD MA → Normal ✅
  • DTS → Normal ✅
  • AC3 → Normal ✅
  • Other common encoding formats → Normal ✅

Problematic audio tracks:

  • TrueHD → Not working ❌
  • TrueHD Atmos → Not working ❌

output-No.sound.txt
output-Sound.txt
output-Sound2.txt


I carefully read all instruction and confirm that I did the following:
  • I tested and confirmed that the issue exists with the latest release version or newer.
  • 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 with the attached Log2 and Log3, comparing the TrueHD track-switch messages and the queued seek behavior against Log1 and Log4. Reproduce with demuxer-max-bytes=500MiB and demuxer-readahead-secs=60, then compare TrueHD/Atmos and DTS-HD MA switching. Done means identifying and resolving the delayed audio start without requiring a manual seek, with the existing scenarios still working.

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
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.