It's been on my 'to do' list for some time to address my HDCD discs so I've just spent the last day trying to understand the basics, and the best way to handle it, and I thought I'd write it down just in case it's of any use to anyone.
Firstly, most discs (at least in my collection) that were flagged as HDCD shouldn't have any special decoding applied, they should be left and played as standard Red Book. It appears that any disc that was mastered using Pacific Microsonics A/D converter will light up as HDCD, even if they don't use Peak Extend or Low Level Range Extension (the features that need special handling during the decode stage) e.g. Audio Fidelity HDCD discs only implemented the transient filters feature (used during the mastering stage).
So, the first thing is to identify which need decoding. For that I used FFmpeg, and modified a script I found
here.
CUETools can also be used, and to verify the findings of ffmpeg I ran this in batch across my collection, which resulted in certain discs being flagegd as HDCD, but it was only when you scanned the disc individually that you get the detail of which features were active:
Code:
HDCD: peak extend: yes, transient filter: none, gain: -4.0dB..0.0dB.
This left me with 7 discs from 35 that needed decoding.
I did a quick test, and DBPowerAmp (without gain enabled) and CUETools produced the same results (the audio md5) with FFmpeg differing slightly (which is to be expected) so I settled with CUETools as I use it in my workflow anyway.
I then applied ReplayGain tags to the resulting files for use in foobar and MinimServer. This is safer than applying a static +6dB increase during the decode process which you can apply in DBPowerAmp, as whilst not all discs have LLE applied, most do and it could result in clipping.
Finally I renamed the 16bit source HDCD files to .hdcd.flac so I could exclude them from foobar (only accepts excluding based on file extension) whilst also working for the MinimServer excludePattern, as I didn't want to have both visible.
So now I've decoded them manually, my MinimServer config doesn't have any HDCD processing active, just ReplayGain which I use anyway.
Hope this is of some use, even if just for the tool selection.