Skip to content

[Feature]: Add a "Force Stereo Downmix" toggle in Player Settings for malformed multi-channel audio #1299

Description

@mehmetyildizdev

Feature Description

Many community-provided torrent streams (especially highly compressed E-AC3 Atmos / Dolby Digital Plus rips) contain faulty channel multiplexing or corrupt spatial metadata. In these specific malformed files, the entire master audio track (dialogue, music, sound effects) is encoded entirely into a single channel, usually the Center (C) channel while the remaining channels (Left, Right, Surround) are left completely silent.

When I play these files on multi-channel audio setups, or when using virtual surround spatializers (such as Equalizer APO/HeSuVi), the player reads the native 5.1/7.1 container flag and maps the audio across the full layout. Because all the audio data is trapped on the Center track (as far as I can tell from what I observed in LAV decoder), this causes routing mismatch resulting in:

  • Extremely faint or muted dialogue and sound effects.
  • Severe phase-cancellation (sounding metallic, hollow, or "robotic").
  • Complete audio failure/silence depending on the system renderer.

Currently, the only workaround for I found is to completely ditch the stream to find a healthy one (which may be impossible for rare content) or route it to an external player like VLC to manually force a stereo mix down.

Proposed Solution

I propose adding a user-controlled, non-permanent "Force Stereo Downmix" toggle directly within the in-player settings overlay (next to the existing subtitle and audio track selection menus).

When enabled by the user, this toggle should instruct the player engine to ignore the container's multi-channel flags at runtime and collapse the audio stream down to a standard 2-channel stereo (L / R) layout before passing it to the OS audio endpoint.

Additional Context or Screenshots

Providing a quick, accessible manual fallback switch inside the UI cleanly solves bad source file encoding issues without requiring external player workarounds.

Code of Conduct

  • I agree

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementCurrent feature enhancement

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions