HDCD decoder

Component for foobar2000 v1.5 and newer.

Version:1.22
Released:2025-09-08 17:17
Size:365.2 KB
License:3-Clause BSD

Download

foo_hdcd

Description

HDCD postprocessing decoder / HDCD scanner, improved from kode54's original work.

Changes

1.22 (2025-09-08):Added support for hybrid encoded files. Simplified false positive related configuration (doesn't affect the behavior).
1.21 (2025-09-04):Fixed HDCD decoder to be bit-accurate with reference WMP decoder when the output is truncated to 20 bits. Actual decoder accuracy is 24-bits. Changed HDCD detection to be more accurate to prevent valid HDCD tracks from not getting decoded. Added options to automatically prevent potential false positives from getting treated as HDCD. Changed HDCD status reporting titleformat fields: $info(bitspersample) isn't touched and reports the original source bitdepth, $info(decoded_bitspersample) reports the actual decoded bitdepth. $info(hdcd) reports the detected HDCD status throughout the track. $info(hdcd_active) reports if HDCD codes are currently present. $info(hdcd_active2) reports if HDCD codes are present and they actually affect the output. Reworked the HDCD scanner: added dark mode support, results are now sorted and sortable by any column, scanner reports detailed information about what the HDCD decoding will do to each track, and the scanner can tag the files according to concluded HDCD state. It can for example tag false positive tracks "off" so that they don't confuse anyone on further plays, or it can force non-HDCD tracks included in an HDCD/non-HDCD compilation album to be treated with the same volume halving settings as the other tracks. The tag fields and values used by the HDCD scanner are fully customizable in advanced preferences. And the tag treatment behavior is customizable too using titleformatting.