2020-05-29, 10:21 AM
(This post was last modified: 2020-05-29, 11:33 AM by pipefan413.)
(2020-05-29, 03:41 AM)TomArrow Wrote: Is it an up to date version of eac3to? I think at least the older ones needed some extra library to properly decode dts hd ma. With newer ones idk, but I know ffmpeg decodes DTS-HD MA perfectly, at least in current versions.
Yup, 3.34!
Started testing now. I'm trying to find documentation to confirm whether it's even possible to use ffmpeg to split .dtshd to mono WAVs (equivalent to the "wavs" option in eac3to) but can't seem to find it. If not, I might have to just convert to a single PCM file in ffmpeg so it's doing the decoding then use eac3to to split it. Then I can compare to the original eac3to decoded output and see if the files are identical or not.
OK so...
1. Decoding the source .dtshd to FLAC using both eac3to and ffmpeg produces bit-identical files, although to be fair I didn't do that before - I split to WAVs in eac3to directly. Wonder if that's causing an issue for some reason, don't know why it would though.
2. Since the FLAC contents were verified against ffmpeg I split *that* to WAVs and compared those with my original WAVs. Again, they're bit-identical.
That pretty much confirms as far as I can tell that eac3to is decoding properly (or at least, identically to ffmpeg), which leaves Audacity and the actual DTS-HD MA encoder itself as possible culprits. The encoder theoretically shouldn't be the issue, but then theoretically, neither should Audacity; all I did in Audacity was import the 24-bit PCM files which turns them into 32-bit floats, added silence to either end, then exported back to 24-bit signed PCM again. Then I encoded them in the DTS suite as lossless DTS-HD MA with full 1509 kbps cores. Does any part of that sound iffy? The waveforms have pretty bad clipping in places, especially the centre channel, but I assume this is intentional compression for volume/dialogue clarity; this track is much louder than the 5.1 ones that were released elsewhere in the world but the waveforms for both are very similar, both have the clipping. I briefly thought it might have been that eac3to had erroneously truncated the dynamic range by misinterpreting something but it doesn't seem so.
Tried to verify Audacity output as well by importing a source WAV (Centre channel) into Audacity again then exporting it back to 24-bit PCM again to see if the files were any different (without adding or removing anything in the bitstream); nope, they're bit-identical.
To see if maybe the encoder itself was doing something different to the original encode, I encoded the source files (without my bitstream edits) back to .dtshd directly, and sure enough, the resulting file is indeed smaller than source. So maybe the encoder is discarding data, right? Well, no, it isn't: I tested this by converting the new .dtshd back to FLAC again and turns out it's identical to both FLAC files I made from the source .dtshd. So despite being set to the full settings, I think something is different about the way the encoder is creating its DTS core compared with the original source file. Maybe the mixdown is different? I wouldn't have thought so because I checked the mixdown tab and it's putting all the audio into the 5.1 mixdown for the core (I thought maybe it was discarding 2 of the 4 surround channels but it has been mixing both Lss and Lsr to Ls, and Rss and Rsr to Rs, so that's not it either). This brings me back to the .dtspbr thing: is it possible that when authoring a disc and incorporating the .dtspbr into the output, the size of the .dtshd stream is increased? This wouldn't necessarily surprise me; it seems like the point of the PBR (Peak BitRate) thing is to "smooth" the .dtshd audio stream so that the bitrate fluctuates less abruptly during playback (I don't know why this would matter but I guess it must). Presumably, if the bitrate fluctuations are reduced, this must necessitate higher bitrate than necessary during the fluctuations, which would put the filesize up.
Here's what the documentation says about PBR analysis:
Quote:The Peak Bit Rate Analysis Tool analyses variable bit rate encodings (DTS-HD Master Audio encoded streams) graphically plotting the selected encoding’s bit rate over time, as if the encoding had been “smoothed” for authoring using a Peak Bit Rate scheduling utility. The smoothing process redistributes data throughout the encoded stream for a more constant flow of data during disc played back. Smoothing is performed during the authoring process of a disc.