Observation and Analysis:
I’ve conducted various tests to assess the playback of ATMOS audio on my Vero4K+ device, running Kodi (version 20.2) with OSMC (2023.08.01). I used audio passthrough mode to transmit the unaltered ATMOS audio stream to my Audio/Video Receiver (AVR), allowing the AVR to employ ATMOS object metadata for audio dissemination and channel mixing. I used a MKV rip of the main tracks of ‘Abbey Road - The Beatles’, as ‘test data’.
My assessment has covered both the lossless ATMOS TrueHD format, frequently encountered on Blu-Rays, and the lossy ATMOS EAC3-JOC format, commonly employed in streaming, such as .M4A files from services like Tidal and Apple Music. These formats inherently contain object positioning metadata, a crucial element absent in typical coversions to FLAC.
When attempting to play these formats using the Kodi audio player (PAPlayer), I’ve encountered several issues, as described below:
For ATMOS EAC3-JOC files in .M4A format, there are two problems when starting and during playback of a file or files. The first second or so of each file is not played back. Furthermore, playing a set of separate files located in the same folder (effectively a playlist), leads to gaps in playback between the tracks. This ‘gapless playback’ issue doesn’t affect multi-channel FLACs or MP3s, suggesting that an improvement in Kodi (PAPlayer) could rectify this in a future update.
Now, let’s delve into the process of ripping ATMOS TrueHD audio from Blu-ray discs. Typically, users can rip the audio to an .MKV file using MakeMKV and then proceed with processing the file. Since our goal is isolate the audio content, it seems logical to convert each track of the ATMOS TrueHD stream into a .MKA file, utilizing the embedded MKV/MKA Chapter information and tools like MKVToolNix and ‘Music Media Helper’ (MMH). Regrettably, this approach yields the same gapless playback problem as observed with .M4A files mentioned earlier.
As a slight variation, creating a single MKA file from the source MKV (containing only the ATMOS TrueHD audio stream) using MKVToolNix, might seem like a solution to avoid the gapless issue. However, a new problem arises related to track timing during playback using a separately generated CUE file (from the embedded Chapter Index of the MKA file).
[It’s also worth noting that as described in an earlier post,
Kodi/PAPlayer cannot currently use the the embedded Chapter Index in an .MKA file. Further to this, there is a problem using a separate CUE file when the associated .MKA file already contained a Chapter Index. To make the CUE file usable by the PAPlayer, the Chapter Index has to be removed completely from the MKA file. There is a limitation with the PAPlayer as it should ideally support embedded Chapter Indexes in .MKA files.]
So, consequently, when seeking through the Track Indexes (in the CUE file), the timing of track markers in relation to the actual audio playback becomes progressively delayed, especially the further we are into the playback of the .MKA file.
Additionally, during track transitions of continuous playback, and more noticeably on later tracks of the MKA file, a few seconds of audio are lost altogether, which is the opposite of the expected gapless playback experience. It is evident that the CUE timings are also not functioning correctly with the MKA file format.
To further investigate, I experimented with other various container file formats, including M4A (with embedded MLP), MLP, and MLP with out splitting, and TrueHD (THD). These were all created using the’Music Media Helper’ (MMH), and I encountered similar issues as for the MKA files.
In contrast, utilizing the original MKV container with the ATMOS TrueHD format resolves these problems. Playback in this format employs the ‘VideoPlayer’ rather than the ‘PAPlayer,’ resulting in seamless, gapless playback, accurate track indexing/timing, and seeking—characteristics akin to movie playback.
In summary, here are the key points for the two ATMOS audio formats:
ATMOS EAC3-JOC: Both the start of playback and gapless playback of multiple files in a playlist (a set of files in a folder) needs improvement within the Kodi (PAPlayer) and should ideally function as smoothly as it already does for multichannel (7.1) FLACs, independent of passthrough settings.
ATMOS TrueHD: Treating the ATMOS TrueHD stream as a movie or video in the original MKV format offers a satisfactory solution. The only necessary adjustment is to update your advancedsettings.xml file to include .MKV as a playable audio (music extension) format:
<advancedsettings version="1.0">
<musicextensions>
<add>.mkv</add>
</musicextensions>
</advancedsettings>
It is plausible that the ‘PAPlayer’ could be enhanced to function similarly to the ‘VideoPlayer’ with MKA files whilst resolving timing issues to provide a more seamless audio playback experience.