DTS-CD Decoding DTS 2496 - How to avoid a "core only" partial decode

QuadraphonicQuad

Help Support QuadraphonicQuad:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.

jimfisheye

2K Club - QQ Super Nova
Joined
Jan 8, 2010
Messages
2,939
Jump to the end if you are uninterested in the nerdy testing discussion!

Reaper DAW used for testing.
Test track: Jethro Tull - Aqualung (as it was available in both LPCM and DTS2496)
Sources:
LPCM 4.1 master of quad mix from bluray edition
DTS 2496 4.1 master of quad mix from DVDV edition

decoder codecs tested:
ArcSoft
ffmpeg
Kodi media player
core-only decoder in DVD Audio Extractor

First test:
ffmpeg codec = kodi player codec : 100% null

Second round of tests:
Arcsoft vs ffmpeg tests:

arcsoft codec
Lfe channel is 1.45db hotter but not a perfect null even when normalized for that
It’s at the closest to nulled with the 1.45db offset normalized.
Arcsoft cancels with ffmpeg down to -38db subtracted from ffmpeg decoded for Lfe channel

all main channels are the same level but not perfect null
Arcsoft cancels down to -60db when subtracted from ffmpeg decoded for all main channels

Listening:
You still hear the -38db difference signal in the Lfe channel (normalized for the 1.45db) by ear with system volume at full scale (which would incinerate speakers with full program). You hear nothing at same full system volume in all the main channels from the -60db difference signal.

Listening to music, A/B sounds identical with the 1.45 Lfe difference normalized. Naturally, you hear the 1.45 hotter Lfe channel out of the box if listening critically.

Third round of tests:
Comparing Arcsoft and ffmpeg decoded dts to LPCM from bluray and core-only dts decode:
(Core-only decoded dts upsampled to 96k with SOX for the following tests)

Lfe channel is 0.35db lower in arcsoft decoded dts than LPCM from bluray
Lfe channel is 1.8db lower in ffmpeg decoded dts than LPCM from bluray
Null tests have best results normalizing gain for that as noted above.

Main channels are 0.02db lower in both arcsoft and ffmpeg decoded dts than LPCM from bluray
The smallest adjustment I have available in Reaper is 0.04db. Adjusting either direction gives a larger signal after subtraction. It’s at the closest to nulled with the 0.02 offset.


-20db difference signal subtracting core-only from LPCM from bluray (all channels up with Lfe normalized)
music program clearly heard with system at normal listening levels

-40db difference signal subtracting ffmpeg decoded dts from LPCM from bluray (all channels up with Lfe normalized)
barely audible whisper of cymbal top frequencies heard with system at normal listening levels

-42db difference signal subtracting arcsoft decoded dts from LPCM from bluray (all channels up with Lfe normalized)
same barely audible whisper of cymbal top frequencies heard with system at normal listening levels

Listening to music, A/B sounds identical on my system with the Lfe difference normalized as noted between the LPCM and the Arcsoft or ffmpeg decoded dts.


Conclusions:

The most reasonable conclusion is that the same 4.1 master presented on the LPCM bluray was used for the dts2496 DVDV edition. The very close level match and the A/B match when listening to the LPCM vs the Arcsoft or ffmpeg decoded dts would not be possible if they were different masterings (eg. differently eq’d). Meters and ears are in agreement with physics.

The Kodi media player app uses the same codec as the ffmpeg utility. A 100% null of the digital audio streams can only be possible if they are exactly identical. This is the one 100% conclusion here.

The meter results alone might suggest that the Arcsoft decoder codec is very slightly more accurate than the ffmpeg decoder. At least regarding the Lfe channel level. Listening tests don’t call out one or the other as “wrong”. By themselves, neither presentation with the Lfe level as decoded sounds incorrect. Comparing them to the LPCM does suggest the Arcsoft decoder produces a more true Lfe channel level. However, the difference is not enough to recommend using it over the ffmpeg decoder IMO.

The original media creator suite the Arcsoft decoder came from appears to no longer be sold. I think this was around 2012? The full suite was expensive (I believe in the $1200 range). The free media player version that used the codec was a Windows only demo. It wasn’t intended to be freely available and said demo was never offered for OSX or Linux. Only the paid for full suite. Installing and using it is fully obnoxious. Requiring Windows versions of the freeware apps eac3to and Audiomuxer running with Wine. Hacking the codec into eac3to was required and it was the full blown ‘Windows experience’ with critical order of events installing, uninstalling, adding and deleting (Wine simulated) Windows registry entries, reinstalling, and so forth.

ffmpeg is a freeware audio/video utility and Kodi media player is a freeware media player which both use the same codec. Both are available for OSX and Linux as well as Windows. Simple software installs that simply just work (in OSX anyway).

Tip:
Convert straight to FLAC from dts with ffmpeg. (Not to wav first.) This utility defaults to 44.1k and 16 bit output when converting to wav unless you give the proper commands with all the extra cryptic flags. For FLAC output, the default is to match the source.
The command is:
ffmpeg -i source_file.dts output_file_name.flac

I believe you can use ffmpeg to extract the dts streams from the VIDEO_TS folder of a DVDV disc if you want to stay with freeware. I still have a copy of DVD Audio Extractor that I used with. Selecting the direct stream demux option to output dts files.

In conclusion, you could use the Kodi media player with confidence that you are getting the fullest near-lossless playback of the dts2496 program. Or convert to FLAC as noted. Stand-alone hardware disc player users will have to rip and convert with the computer and prepare FLAC files or burn DVDA or bluray discs as needed for their system to hear the fullest fidelity from these dts2496 DVDV discs. Note that the free Kodi media player is not very elegant! This might be the clumsiest and most garish GUI I've seen in any software! Better to convert to FLAC and use VLC or your favorite media player.

I notice that the more recent Jethro Tull discs are starting to put a disclaimer in the booklet that some hardware bluray players do not have the ability to fully decode the dts2496 audio stream. I believe this extends to all DVD (non-bluray) hardware players.
 
Moving forward...
It would be nice to have the files named/tagged with the push of a button. Like you can for the lowly CD format. Query the Music Brainz online database or some such. I imagine this isn't provided 'out of the box' from anyone because it would fly in the face of the artistic presentation with menus and such that has become SOP on DVDs and blurays. I have mixed feeling on that... Sometimes you want to preserve that, sometimes you'd rather have nice simple named FLAC files.

I might look into seeing if the codec can be hacked into XLD? Not sure...

I still see ads for paid media players. "J River" is one that comes up. I posted to their forum once asking specifically if they had features for ripping from DTS2496 and ending up with named/tagged FLAC files. Probably scared them away... Again, it flies in the face of the designers intention with the menu driven business. I don't want to just run against the wind and dismiss all of that but it would be nice to have options.

On the other hand, if either everyone started using 5.1 containers for everything (ie not 4.0, 4.1, 5.0, etc) and/or VLC decided to update their media player to work properly with formats that aren't 2.0 or 5.1, maybe I'd just start saving TS folders and call it a day!

First priority is being able to hear the music without compromise though and that got easier with this ffmpeg tool. So that's nice anyway. :)

The computer and media player method is still happiness and light over the hardware disc players where you're just never sure how close those discs are to data corruption. Even with the occasional need to jump through a couple hoops.

Hopefully this helps someone who has been unable to properly listen to this dts2496 format. There's some good music only released in this format. And compared to some of the gross crude brick wall and/or treble blasted stuff out there, any slight lossiness from this format container is completely a moot point.
 
Last edited:
If you use MakeMKV to extract the media you can also easily use mkvmerge to split the file into chapters (songs) mkvmerge -o windogs.mkv --split "chapters:all" The_Winery_Dogs_t00.mkv
 
Cool. I'm not sure if I downloaded that app... I've tried MKVToolNix before but it never did what I was looking for at the time. Or I was being an idiot (which I can be good at)! Of course these apps are kind of geared around common video tasks first too and HD surround audio last it seems. Have you verified that there is no corruption with audio that segues track to track seamlessly for example? One of the limitations of the video formats that can come up is getting gaps between chapters. (I'm not sure if it's a "limitation" of the format or just many of the video format handling apps. But it's a common thing. Heck, there are even CD handling apps still kicking around that have trouble with this. Hence the regression to the cue file business you still see in use to this day.) It may be only a limitation of the hardware disc players. As in, the files are complete and free of gaps or other corruption but the way the hardware players are programmed means you can't get gap-free playback between chapters. It's a consideration when authoring DVDA you need to mind for example.

I'm temped to just start trying to write some bash scripts or something to go after some of this but it would be smarter to build off existing tools and other people's work and not reinvent the wheel.

My first priority naturally was to be able to hear uncorrupted audio in its fullest quality - user experience be damned. And to be able to save it and back it up with straight forward computer technology. And without buying into proprietary tech that can get greedy and hold your music hostage as it were. I feel like I've got that under control and this "ringer" format of dts2496 finally feels more properly under control now.

The XLD (X Lossless Decoder) app has always been a straightforward useful utility. CD ripping has been old hat for a long time now. Click of the mouse and the files are ripped error free (assuming no disc damage), named from the online Music Brainz database, and placed in your personal music folder however you choose to organize it (eg. Artist/Album/Track_number-Track_name). Seems like there should be a way to build on that to take this to the same convenience with the HD disc formats?

This probably should be a separate topic from extracting the audio from dts2496 uncorrupted too.

I was motivated to share dts2496 tips here from the plethora of forum posts in the polls just trashing on the format with low reviews due to corrupted lossy sound. If you rip these discs as outlined above, the audio will be virtually lossless. Stuff like poor mastering with the treble hyped thing - like the Beatles White Album and Sgt Peppers for a recent example - is 100 times more damaging and obvious sounding than any damage from the lossiness of dts2496. To any non-belivers that are experiencing some of these dts2496 discs with apparently significantly more loss of fidelity than those, you owe it to yourselves to give this a go. Do you think the Tull discs, for example, sound stepped on but think the Beatles Sgt Peppers or White album sound great? Then this means you! That opinion will likely flip when you finally decode these properly. :) (Those Beatles releases are actually to the more subtle side of the treble hyped mastering. Far from the worst examples by a long shot. DTS2496 however, does pretty much no audible damage at all compared to that level of damage.)
 
Hi Jim,

Thanks for the work you’ve put into the above.

The latest version of DVDAE supports DTS 96/24 conversion and DTS-HDMA.

Music Media Helper (here on QQ MCH Media Player sub-forum) is a Windows only app that uses ffmpeg to convert any audio contained in MKV files to FLAC, splits into files and tags with MusicBrainz. This app is just a UI on a bunch of audio/video tools to help users get music and music videos into files for playback. No need to use command lines. It doesn’t rip from disc, users need to use something like MakeMKV to rip DVDVs and BDs to MKV first.
 
I was actually thinking of writing a couple scripts or maybe trying to interface with XLD at some point. But if some of this might already be started, maybe there's no need to reinvent the wheel? Any chance that Music Media Helper could be converted to standard bash scripts (if that's how it was made) for OSX and Linux?
 
MMH uses Microsoft .NET libraries to do its thing so it’s currently locked to Windows.

I’m still planning to try and make it a web based app that will run on OSX (and maybe Linux) but that’s not going to happen for a while.
 
Jim, I haven't had any corruption issues with seamless transitions; although it is a new track so just use a media player that allows you to play gapless.

I do my rips on Windows for convenience, but the tools all have a UNIX version. My perl scripts would be simple to convert if you want them, and a small explanation.
I have posted it a few times around here but in a nutshell, rip contents of BR, all streams and tracks.

Perl script 1 (yes I could merge them, just haven't had cause) split the makeMKV file by chapter and generates a text file with ffmpeg that lets me know what each stream is.
# mkvmerge -o ${OUTPUT} --split "chapters:all" ${SOURCE}
# Incremental numbers will be appended to the ${OUTPUT} filename. example: mkvmerge -o windogs.mkv --split "chapters:all" The_Winery_Dogs_t00.mkv

# ffmpeg -i ${SOURCE} 2>&1 |grep ' Stream'
# example: ffmpeg -i windogs.mkv 2>&1 |grep ' Stream'
# sample output
# Stream #0:0(eng): Video: h264 (High), yuv420p(progressive), 1920x1080 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc
# Stream #0:1(eng): Audio: dts (DTS-HD MA), 48000 Hz, 5.1(side), s32p (24 bit) (default)
# Stream #0:2(eng): Audio: dts (DTS), 48000 Hz, 5.1(side), fltp, 1536 kb/s
# Stream #0:3(eng): Audio: dts (DTS-HD MA), 48000 Hz, stereo, s32p (24 bit)
# Stream #0:4(eng): Audio: dts (DTS), 48000 Hz, stereo, fltp, 1536 kb/s

The second perl script I modify (uncomment really) and pull each stream from each track via ffmpeg.
# ffmpeg -i ${SOURCE} -map 0:${STREAM_NUM} -vn -sn ${OUTPUT}
# examples:
# ffmpeg -i windogs-008.mkv -map 0:2 -vn -sn 08_48kHz_24bit_5.1ch.flac
# ffmpeg -i windogs-008.mkv -map 0:4 -vn -sn 08_48kHz_24bit_2ch.flac

Then tag and done.

If I am feeling it, I have another script that uses sox to demux to CD quality for those BR Streams that I don't own on CD but I rarely do that anymore.
 
@HomerJAU, I still keep my 10.6.8 install around and that has Wine installed. I remember having to add that .NET business some years ago now. Back then I had it in my head to stay up to speed and be able to run any Windows app that came along directly in OSX.

Sounds like I need to get up to speed with some of this work already done then!
I'll take a look at the other threads here.

Was there something that the .NET package offered that was unique? Something not available in the Unix based stuff (OSX, etc)? Just curious. Or was it more about compatability for those that can't install OSX or Linux on their machines?

@Marplot, Thanks for that! Like I said, looks like I'm the one who needs to catch up here!
The gapless thing...
I suppose it could be the decoding codecs that can't read gaplessly from dts files? That 3 would respond the same way is suspect... But I haven't tried to play a dts file directly in a media player. That might test the theory. I need to do more reading as I said but, what's up with the 48k noted in those commands? We want the dts2496 stream decoded to 96k of course. (Sorry if I'm misreading something and making a stupid comment there!) The default for ffmpeg is to decode to the source format when flac is the output format - again, sorry if this is miscommunication.

Anyway, the gap creating business being talked about in that other thread comes up if you split by chapters to separate .dts files. Media players pointed at the VIDEO_TS folder will play gaplessly. The issue was only a consideration in decoding to flac. I assumed (having the same results from 3 codecs) that it was DVDAE corrupting the split .dts files. But... I suppose I would need to try playing said .dts files themselves in a media player to verify that one way or the other.

Anyway anyway, getting the dts2496 stream fully decoded and into a flac file is a done deal and that's the important bit.
Splitting (perhaps to a generated cue file) and tagging from the online MusicBrainz database would be a nice touch. The separate cue file business is ancient but maybe still supported enough? Either that or another method generated from the chapter info. (I still see sharing going on with a single flac file and a cue file with people that share CDs. So someone is still using ancient software or keeping this alive for some reason. With CD content, you just need to mind the 75 frame/sec boundaries and not split files anywhere else when splitting. I thought all the ripping apps were on point with this over 10 years ago? XLD for example just works for that. Maybe it's a workaround for some media player someone likes? Curious...)

Heh. Writing bash scrips can actually be fun sometimes. But it's one of those things where you look up at the clock and find 3 days have gone by! I feel like I'm at a solid level of "knows enough to be dangerous" with this stuff.
 
Last edited:
I use Windows because Tag & Rename is a Windows only tool and my Windows desktop has more ass than my Linux laptop. Every other part of my workflow, ffmpeg, perl, mkmkv, MKVToolNix, all run on Windows and Linux so with a minor tweak my scripts run on either.
The sample stream data is from the Winery Dogs: Dog Years Live In Santiago BluRay; nothing 96k on it. I just posted it as a sample to how what feeds script 2. The 08_48kHz_24bit_5.1ch.flac would be the 8th song from Stream 0:2 and these days it would actually be 08_dts_5.1.flac. This name ensures when I rip every stream nothing gets a dupe name and it is easy to move into a directory by type.
Dog Years, Live In Santiago & Beyond (5.1 DTS-HD MA) [2017]
Dog Years, Live In Santiago & Beyond (5.1 DTS) [2017]
Dog Years, Live In Santiago & Beyond (Stereo DTS HD) [2017]
Dog Years, Live In Santiago & Beyond (Stereo DTS) [2017]
Again, I could add a mkdir based on stream to the script, but haven't to date. Your questions are making me want to make some updates....
If there was also a 96k stream then I add a HD into the parens to differentiate it. [Damnation Remixed (PCM Stereo HD)]
 
Was there something that the .NET package offered that was unique? Something not available in the Unix based stuff (OSX, etc)? Just curious. Or was it more about compatibility for those that can't install OSX or Linux on their machines?

In a previous life a was programming using .NET so that's what I feel comfortable with. Also been a Windows user forever. Although I do use Linux on a couple of Intel NUCs for Kodi/Music and Video playback I don't use any Linux commands. I did a little Unix work many moons ago but that''s all forgotten now.
 
Hey Jim.

Both DVD Audio Extractor and MakeMKV are available on Linux. So there’s a solution for DVDA, DVDV and BDAs to get MLP, DTS 96/24, DTS-HDMA and Dolby TrueHD/Atmos into FLAC at up to 7.1
 
I'm still in OSX for day to day. It's still the solid OS for audio work and some of the software is still OSX only. Everyone else apparently sees the same writing on the wall as it were and audio software embracing Linux moving forward. I expect to see the last (what I'll consider) working version of OSX within 2 or 3 years. (If it isn't already 10.13.6) I don't think they're ever going to return to building professional grade computers either. Apple died with Steve Jobs. The last of the Jobs era flagship machines outperform any of the new generation models at present even. Windows was always weird, 'different', and clumsy and I don't see myself ever messing with that. (Especially what I've seen with their versions 7 and 10.) I haven't jumped in head first yet but at least I see that Linux is basically the same Unix command line style as OSX so it seems like a natural transition.
 
Hi, to rip my collection of DVD's with DTS 96/24 audio format I used DVD AE using "Direct Stream Demux" encoding (instead of FLAC). This process will produce .dts files. Then I converted these files to FLAC with Foobar (be sure in the Converter setup window, the "Additional decoding" checkbox is unchecked in the Processing section) and that's all! You'll obtain hi-res FLAC files (96/24).

Hope this helps ;)
 
Back
Top