mpv-player / mpv-player/mpv

Passthrough for Dolby Atmos / DTS:X (only)

Open
#12,703 3 comments 7 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

What currently works

mpv does support Dolby Atmos and DTS:X passthrough via the option "audio-spdif", but since Dolby Atmos and DTS:X aren't codecs itself and just extensions to existing ones, it can't destinct between them and regular DTS-HD/EAC3/TrueHD.

audio-spdif=dts-hd includes DTS:X
audio-spdif=eac3,truehd includes Dolby Atmos

Why does this matter?

Not setting "audio-spdif" will output PCM to your sound device, which is totally fine for regular EAC3/TrueHD and DTS-HD. Lossy or lossless to lossless conversion won't hurt the audio quality and PCM with 7.1 channel setup is supported. However, what PCM doesn't have is support for object-based extensions. That means you lose information with PCM playback in that case (with a supported device).

Why not passthrough all codecs

Using "audio-spdif=eac3,truehd" (Dolby Atmos) comes with some disadvatage like "video-sync=display-resample" not working (thus, no "interpolation=yes") or no audio control with mpv. Which is a trade-off that is worth for Dolby Atmos, but not for regular EAC3 or TrueHD playback (in my opinion).

What should change

An option to add "atmos", "dtsx" to "audio-spdif" or maybe even a whole rework of this option (with a better naming), because despite the kinda misleading warning in the docs, this option still matters for HDMI connections (via arc/earc or soundbar) connections. Maybe it might be worth to consider "aac", "flac", etc. (if possible) as options as well, because some soundbars do indeed support such playback and some users might even prefer passthrough for that.

Information that might matter

ffmpeg added detection for Dolby Atmos/DTS:X this year.
https://github.com/FFmpeg/FFmpeg/commit/96ed043afa44d468ff3629095f90d391450c4e60
https://github.com/FFmpeg/FFmpeg/commit/98a4699216fbc3a4e382ba6a10026eab39b5214e

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 tracing the existing audio-spdif option and reviewing the linked FFmpeg commits describing Atmos and DTS:X detection. Decide whether the option should gain atmos/dtsx selectors or be redesigned, then verify that passthrough is limited to those extensions while existing codec behavior remains unchanged.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
audio-video-rtc, cli
Issue type
Feature
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.