DecayCore User Manual

Practical guide for DecayCore measurement, FIR correction, export, and deployment workflows.

This manual is the practical end-user guide for DecayCore. It explains what the program does, which files it expects, how to choose the main settings, what gets exported, and how to deploy the result to a convolution-capable playback system.

DecayCore generates room-correction FIR filters from built-in sweep measurements, compatible external measurement imports, and WAV/IR captures. The typical workflow is:

  1. Measure the left and right channels with the built-in measurement tool, or import existing compatible external measurements.
  2. Load the measurement files into DecayCore.
  3. Choose a target curve and operating mode.
  4. Generate filters.
  5. Export and deploy the output to CamillaDSP, Roon, Equalizer APO, or another FIR-capable DSP.

1. What is DecayCore?

DecayCore is a room-correction FIR filter generator for loudspeaker and listening-room optimization.

It is designed to:

Its default philosophy is simple: use cuts and bounded shaping as the main correction tools, and keep boost limited to cases where the measurement clearly supports it.

DecayCore can work in several styles:

2. Requirements

Before you start, you need:

Note on built-in measurement: Measurement has been verified to work on Windows. Linux has been verified to work at least on Ubuntu 22.04. macOS could not be tested due to unavailable test hardware. Subwoofer measurement on Windows requires the playback device to be configured for 5.1 or 7.1 multichannel output in Windows Sound settings. Users on platforms without measurement support can use compatible external measurements.

Common deployment targets:

Recommended preparation:

3. Workflow Overview

The normal workflow inside DecayCore is:

  1. Files tab Load left and right measurement files.
  2. Target tab Select a built-in target curve or load a custom target.
  3. Basic tab Choose the operating mode, filter type, sample rate, taps, and the main safety settings.
  4. Advanced / Window / XO tabs Refine advanced correction, timing, windowing, and crossover behavior when needed.
  5. Run tab Start the generation process and review the produced output.

For most systems, start simple:

Practical rule:

4. Input Files

DecayCore accepts measurements from the built-in tool and common import formats.

4.1 Built-in measurement tool

The recommended path. Measure directly inside DecayCore and save the resulting IR WAV files. Load those files from the Files tab when the session is complete.

4.2 REW text export (.txt)

Import frequency-response data exported from REW.

Expected content:

Important notes:

4.3 WAV impulse export (.wav)

DecayCore can also import impulse-response WAV files and convert them internally for processing.

Use this when:

Practical guidance:

5. Operating Modes

DecayCore has three main operating modes. The DSP engine is the same, but the workflow policy changes.

Use this when you want the program to search for a technically strong preset automatically.

What it does:

Target selection strategy

In AUTO mode, the target curve can be determined three ways (selectable from the Basic tab):

Best for:

5.2 Basic

Use this when you want manual control but still want guard rails.

What it does:

Best for:

5.3 Advanced (expert)

Use this when you already understand the tradeoffs and want broader control.

What it does:

Best for:

6. Target Curves

DecayCore includes a large set of built-in target curves, including:

You can also load a custom target file.

General guidance:

In automatic mode, DecayCore can also determine the target automatically. Three strategies are available (see section 5.1).

Adaptive target

The Adaptive: derive target from room acoustics strategy synthesizes a custom Harman6-based target instead of searching through built-in curves.

How it works:

  1. Starts with a Harman6-style reference shape as a base.
  2. Estimates the room’s natural bass buildup and tilt from the measurement.
  3. Adjusts bass and tilt compensation fractions based on those estimates.
  4. When RT60 data is available, further refines the compensation using measured decay times across bass, mid, and treble bands (bounded to ±2 dB).

RT60 requirement: adaptive target achieves its full room-specific behavior only when RT60 data is present in the measurement. RT60 is captured automatically by DecayCore’s built-in measurement tool. With external REW exports or WAV impulse files, RT60 data is typically absent — in that case the RT60-based compensation step is skipped and the target is derived from bass buildup and tilt only.

If you are using external measurements without RT60 data, Auto: search best built-in is the safer choice. It evaluates how well different built-in curves match the measured room without requiring RT60 data.

7. Filter Types

DecayCore supports four main filter types.

7.1 Linear Phase

Latency estimate:

Best for:

7.2 Minimum Phase

Best for:

7.3 Mixed Phase

Best for:

7.4 Asymmetric

Best for:

For many systems, Asymmetric is the most sensible first choice.

8. Key Settings

These settings have the biggest effect on the result.

8.1 Taps

Taps define FIR length.

8.2 Sample Rate

Choose a sample rate that fits your playback chain.

8.3 Correction Range

The correction band defines the range where DecayCore is allowed to work.

Typical use:

If the result sounds unnatural, narrowing the correction range is often safer than increasing algorithmic aggressiveness.

8.4 Maximum Boost and Cut

These settings limit how strongly the filter can move the response.

8.5 Level Matching

Level matching aligns the measured response to the target before correction is generated.

DecayCore supports:

If the target sounds consistently too lean or too heavy, check the leveling window before changing multiple other settings.

8.6 HPF and Low-Bass Protection

Low-frequency protection matters for real loudspeakers.

Relevant controls include:

These are especially important for:

9. Advanced Features

9.1 Temporal Decay Control (TDC)

TDC is designed to reduce excessive ringing and slow modal decay, especially in bass.

In practice it can:

Use it carefully:

9.2 Adaptive Frequency-Domain Windowing (A-FDW)

A-FDW changes how finely different frequencies are corrected based on measurement confidence.

In practice:

This helps avoid over-correction in uncertain data.

9.3 Bass-first AI

Bass-first AI tells the system to treat low-frequency room modes as meaningful correction targets instead of smoothing them away too aggressively.

Use it when:

Be more conservative if:

9.4 Excursion Protection

Excursion Protection is a dynamic safety feature.

It helps prevent dangerous low-frequency boost by reacting to the measurement and target relationship.

Use it when:

Stereo Link helps preserve left/right balance and phantom center stability.

Keep it enabled unless you have a specific reason to let each channel behave more independently.

9.6 IR Windowing

Additional controls affect timing and final impulse behavior:

These matter most when you are refining latency behavior, channel alignment, or export impulse shape.

9.7 Hybrid IIR (FIR + IIR bass preconditioning)

Hybrid IIR is an optional bass mode that adds a small set of narrow IIR Peaking EQ biquad cuts targeting confirmed room modes, before the FIR filter is synthesized.

What it does:

The result is a combined correction: IIR biquads handle the narrowest peaks precisely, and the FIR handles the broader response.

When to use it:

When not to use it:

CamillaDSP deployment note: when hybrid IIR produces biquads, they are included in the exported CamillaDSP YAML alongside the FIR convolver. Both stages must be active in the pipeline. Loading only the FIR WAV file without the IIR biquads will result in incomplete bass correction, because the FIR was designed with the IIR contribution already subtracted from its target.

Controls are available in the Advanced tab under a collapsible hybrid IIR tuning section. Default state is disabled.

9.8 XO Phase Model (Crossover Phase Correction)

The XO tab models the phase shift introduced by your speaker’s passive or active crossover filters. When configured correctly, DecayCore accounts for this phase contribution during FIR generation, ensuring the correction cooperates with the speaker design instead of fighting it.

What it does:

Availability:

The XO tab is only active when the filter type is Asymmetric or Linear Phase. It is disabled for Mixed Phase and Minimum Phase modes, which do not use a theoretical crossover phase model.

How to use it:

  1. Identify the speaker’s crossovers — look for passive dividing networks (crossover frequencies and slopes) or active HPF/LPF filters built into the speaker or amplifier.
  2. Fill in up to five XO slots:
    • Frequency (Hz) — the crossover point, e.g., 2500 for a tweeter crossover
    • Slope (dB/oct) — the filter slope, e.g., 12 dB/octave. Options are 6, 12, 18, 24, 36, or 48 dB/oct
    • Leave unused slots empty
  3. HPF/subsonic filter — the high-pass filter (e.g., a subwoofer’s 20 Hz 24 dB/oct HPF) is configured in the Basic tab but feeds the same theoretical model

Practical examples:

Only describe filters that already exist in your system. Do not invent crossovers.

Understanding the results:

After a run, the results section shows:

If left empty:

DecayCore assumes a flat theoretical phase response (no crossovers). This is correct for full-range drivers or coaxial designs but leaves the crossover region uncorrected on multi-driver speakers. If your speaker has multiple drivers with a crossover, specifying the XO parameters usually improves the overall phase coherence of the room-correction result.

10. Running Filter Generation

When the main settings look correct:

  1. verify that both channels are loaded
  2. confirm target curve and mode
  3. review sample rate, taps, correction range, and safety limits
  4. start the run from the Start tab

During generation, DecayCore evaluates the measurements, builds the target relationship, applies safety logic, and exports the final result.

If you are using automatic mode, the program may take longer because it is comparing multiple candidates instead of generating only one direct configuration.

11. Output Files

After a successful run, DecayCore produces a result bundle. Common output files include:

Depending on the workflow, the export package can also contain additional configuration files alongside the WAV filters.

When Hybrid IIR is enabled and biquads are produced, the CamillaDSP YAML will include both the FIR convolver block and the IIR Peaking EQ biquad blocks. Both must be deployed in the pipeline for the bass correction to function as designed. See section 9.7 for details.

12. Reading the Summary

Summary_...txt is the main report for understanding what DecayCore produced.

Useful sections include:

Use the summary to compare runs, especially when you change:

When comparing runs, change one or two variables at a time. This makes the summary much more useful.

13. CamillaDSP Integration

CamillaDSP deployment is the most direct workflow.

Typical steps:

  1. copy the exported FIR WAV files to your CamillaDSP coefficients folder
  2. copy or adapt the generated camilladsp_...yml
  3. point your CamillaDSP setup to the new filters
  4. verify gain staging before normal listening levels

Practical notes:

14. Roon and Equalizer APO Integration

DecayCore also works with other convolution-capable systems.

14.1 Roon

14.2 Equalizer APO

15. Health Checks

DecayCore performs validation before and during a run.

Typical result classes:

Warnings can indicate:

If a health check fails, fix the root cause instead of trying to bypass the warning blindly.

16. Troubleshooting

16.1 The run will not start

Check:

16.2 The correction sounds too thin

Check:

16.3 The correction sounds too bright or aggressive

Try:

16.4 Bass is still boomy

Check:

16.5 Bass disappears or becomes weak

Check:

16.6 Stereo image feels unstable

Check:

17. Best Practices

For the most reliable results:

The best correction is usually not the most aggressive one. A stable, repeatable, and well-protected filter is usually the better long-term result.

If you want a safe starting point, use this approach:

  1. export left and right REW measurements
  2. load them into DecayCore
  3. choose Basic or DecayCore automatic mode (recommended)
  4. choose a moderate built-in target
  5. choose Asymmetric or Mixed Phase
  6. keep boost conservative
  7. generate the filters
  8. deploy them at reduced volume first
  9. re-measure with the filters active

That is the fastest path to a useful and defensible first result.

19. Built-in Measurement

DecayCore includes an integrated measurement tool that plays a sine sweep, records the response, and produces IR WAV files ready to import directly into the filter-generation workflow. It can replace a separate REW session when the hardware setup allows it.

19.1 What it produces

19.2 Configuration

Open the measurement dialog to set:

19.3 Measurement steps

  1. Configure the session and start
  2. For each position the tool captures all selected channels in sequence
  3. After each position it pauses and prompts you to move the microphone to the next position
  4. If Sub1 is selected it pauses before the first sub sweep so you can turn the subwoofer on
  5. If Sub2 is also selected it pauses again after Sub1 completes so you can switch subwoofers
  6. After all positions are captured it aggregates the results and saves the IR files
  7. A summary shows how many takes were kept and rejected per channel

19.4 Subwoofer measurement — Windows requirement

Subwoofer measurement is only guaranteed to work on Windows.

The sweep is sent to the LFE channel (channel index 3 in a 5.1 or 7.1 layout). On Windows the output device must be configured for 5.1 or 7.1 multichannel playback in Windows Sound settings. Without multichannel mode active the LFE channel does not exist at the driver level and the subwoofer will not receive the sweep signal.

To enable multichannel output: open Sound settings → select the playback device → Properties → Advanced or Spatial sound → set the format to 5.1 or 7.1.

On other platforms subwoofer routing may work in some configurations but is not tested or supported.

19.5 Outlier rejection

Takes are assessed per channel after all repeats for a position are captured.

If many takes are rejected, check the signal level, cable connections, and microphone placement before tightening the strictness setting.

19.6 Using the results