Blog_7 Endgame

7. REAPER, mcfx and IEM Ambisonics

The REAPER signal chain is where the calculated values become audible. Each source track has a practical plug-in chain. The first mcfx gain-delay instance generates the sine tone and applies the first gain stage. Then a custom JSFX called TEZ_Smooth_Propagation_Delay applies the time-of-flight delay in a smoothed way. After that, a second mcfx gain-delay instance applies extra gain reduction if it is needed.

The second mcfx instance exists because one gain stage has a limited controllable range in my OSC/REAPER setup. For example, the model might calculate that a source at 20 metres should be about minus 26 dB relative to 1 metre. If one mcfx stage can safely cover about minus 18 dB, the remaining minus 8 dB is applied by the second stage. The acoustic model still calculates one value. The two-stage split is only an implementation detail.

This was confusing at first, but the logic is simple: the model says how much quieter the sound should be. REAPER then needs to apply that level reduction. If one gain control cannot apply the full value, the reduction is split across two serial gain controls. In dB, serial gain values add together, so minus 18 dB plus minus 8 dB becomes minus 26 dB.

The delay side had another technical issue. If delay values are changed too abruptly while the listener moves, clicks or crackling can happen. That is why the custom smooth delay FX exists. It receives the calculated time-of-flight delay and changes it more smoothly, so movement sounds more stable.

After the source tracks, each signal is routed into the Ambisonic bus. The IEM MultiEncoder receives the source direction values. The IEM SceneRotator receives the listener head rotation. The EnergyVisualizer helps check the spatial energy visually, and the BinauralDecoder converts the Ambisonic scene into headphone playback.

This means the current prototype is headphone-based. The binaural decoder assumes that the left signal reaches only the left ear and the right signal reaches only the right ear. If the output is played over two loudspeakers, some things like level changes and beating can still be heard, but the binaural head-tracking result is not reliable because of acoustic cross-talk.

So the REAPER chain is not only playback. It is the part where the mathematical model becomes a listening experience.

Leave a Reply

Your email address will not be published. Required fields are marked *