It's not really post-processing, so much as a decision about where to place the modulation code in the code listing. You could construct an allpass filter by writing into a delay, reading out a modulated tap, and then putting feedforward and feedback paths around the structure, but this would take more cycles than the 2-cycle allpasses that the FV-1 can perform. So, the Spin Semi examples modulate the allpass delays by the following process:mdroberts1243 wrote: I don't understand the 'post' processing chorus stuff that is done in a lot of the reverb example programmes... is that explained anywhere? I'm trying to implement the modulated output taps directly in the allpass as shown in a lot of reverb flow-diagrams instead.
- Calculate the allpass delay using the 2-cycle method;
- Perform a modulated read from somewhere in the "middle" of the delay memory INSIDE of the allpass delay;
- Write the result back into the allpass delay memory.
In order to do this, you need to allow room for the modulation width. Otherwise, you might write to a location that precedes where you read from in time, and you will create an unstable feedback loop. So, if you read from location N, and your modulation width is M, you should write to a memory location that is greater than or equal to N+M. Don't forget to incorporate this modulation width room into the delay length of your allpasses.
Sean Costello