Dolby Atmos now reaches the receiver from MKV files, through a third playback engine.
Requires tvOS 18 or later. Earlier releases ran on tvOS 17.
Added
- AetherEngine, a third internal playback engine, and the new default. It demuxes with FFmpeg and remuxes to fragmented MP4 for AVPlayer, so a compressed audio stream is copied rather than decoded. E-AC-3 JOC (Dolby Digital Plus Atmos) inside an MKV now travels intact to HDMI as Dolby MAT 2.0, and the receiver reports Dolby Atmos instead of multichannel PCM. TrueHD Atmos and DTS:X objects are rendered to Apple Positional Audio Codec at 7.1.4.
- Native Dolby Vision output. Dolby Vision sources are passed to the display as Dolby Vision rather than tone-mapped to HDR10.
- Engine and pipeline in the stream-information panel. The in-player panel now names the engine in use, the video pipeline, and the audio delivery mode — stream copy, bridged, or decoded — so the output path is verifiable during playback rather than inferred.
- Playback engine selection in Settings › Playback. Aether, MPV, and AVFoundation can be chosen explicitly; the in-player engine button cycles through all three.
Changed
- Engine fallback is a three-step cascade: Aether, then MPV, then AVFoundation. A failure that no other engine would survive — an unauthorized source, a rate-limited origin, a rejected certificate — no longer triggers a pointless retry on the next engine. An engine chosen by hand that fails now reports the failure by name instead of silently switching.
- AVFoundation is demoted to a fallback. It remains available and is still used when the other engines decline a source.
- Four MPV-specific audio and video settings have no effect on the Aether engine and are shown inactive while it is selected: volume amplification, centre-channel mix level, HDR peak detection, and tone-mapping. Aether outputs HDR natively and caps gain at unity, so these have no counterpart. Select MPV to use them.
- Authored ASS subtitle styling requires the MPV engine. The Aether engine renders subtitle text without libass, so files whose styling carries meaning should be played on MPV.
Fixed
- The stream-information panel reported "MPV" as the player regardless of which engine was actually running.
- The internal-engine setting label fell back to "MPV" for any engine beyond the first two, which would have mislabelled Aether.
Notes
AetherEngine is distributed under the LGPL-3.0; its bundled TrueHD object decoder is Apache-2.0. Full licence texts and the required attribution notice ship inside the app and are listed under “Playback licences” in Settings › About, and in THIRD-PARTY-NOTICES.md.