Skip to content

Hdcd

Audio Single output Transform

Apply High Definition Compatible Digital (HDCD) decoding.

FFmpeg filter: hdcd — the official reference.

Add it to a graph. The explicit form works for every filter — bind it to its input and read the result from outputs():

$node = $audio->addFilter(new Hdcd());
$result = $node->outputs()[0];

Shorthand. Single-output filters can skip the node — apply() returns the result stream directly:

$result = $audio->apply(new Hdcd());

TODO — when this filter shines: what it’s the right tool for, what to reach for instead when it isn’t, and how it composes with neighbouring filters.

TODO — prose: how the filter actually works and what its key parameters mean (the explanation FFmpeg’s terse option help omits).

TODO — runnable PHP, with the equivalent ffmpeg CLI alongside.

TODO

TODO

ParameterTypeDefaultRange / valuesDescription
disable_autoconvertbooltrueDisable any format conversion or resampling in the filter graph.
process_stereobooltrueProcess stereo channels together. Only apply target_gain when both channels match.
cdt_msint200010060000Code detect timer period in ms.
force_peboolfalseAlways extend peaks above -3dBFS even when PE is not signaled.
analyze_modeHdcdAnalyzeModeoffoff, lle, pe, cdt, tgmReplace audio with solid tone and signal some processing aspect in the amplitude.
bits_per_sampleHdcdBitsPerSample1616, 20, 24Valid bits per sample (location of the true LSB).

Maps to FFmpeg’s hdcd filter. Verified against ffmpeg n7.1.1.

An Artisan Build project.

Built on FFmpeg — an independent binding, not affiliated with or endorsed by the FFmpeg project. Support FFmpeg.