eh2k / squares-and-circles

squares-and-circles is an alternate firmware for the Eurorack module O_C, targeting Teensy 4.
https://eh2k.github.io/□●/
166 stars 12 forks source link

Fv1 Reverb issue #76

Open koswir opened 5 months ago

koswir commented 5 months ago

Hey @eh2k

For some time now, I've been meaning to ask you about this.

While creating reverb patches in SpinCad Designer, I noticed that they sound different in the program's simulation than on S&C. In the simulation, the decay is long, deep, and louder, while in S&C it's quiet and short.

To illustrate, I've done a quick audio test that might help us understand the issue better.

The patch I tested it on is a glitch verb with 3 parameters: Stutter: a type of glitch retrigger before sending to the reverb Verbdec: the reverb decay time Glthoct: glitch pitch shifter +1 octave, which loops back into the reverb input

I don't know how to insert an audio example on the forum, so I'm dropping a link to a SoundCloud playlist: s&c fv1 - reverb test

In this playlist, there are 5 files: Source file with the signal without reverb Wet file from S&C (stutter max, verbdec max, glthoct 0) Wet file from S&C with glitch octave enabled (stutter max, verbdec max, glthoct max) Wet file from simulation (stutter max, verbdec max, glthoct 0) Wet file from simulation with glitch octave enabled (stutter max, verbdec max, glthoct max)

Here's the diagram of this effect. If you need, I can provide the project file, too. glitchverb-spincad You can load it to S&C from here

eh2k commented 5 months ago

Hi @koswir

thanks for the detailed report. If I find the time, I will compare this case on a real FV1.

It is difficult to say whether spin-cad is doing it correctly in this case. I know that there are some details that are not 100% clearly documented. And I did some research/tests at the time, including comparing with spin-cad, and as i remember there ware some cases that I could only verify with the real FV1.

The VCV-Rack-fv1-emu is actually no good as a comparison either, I haven't updated it for a while. The emulator from squares-and-circels contains one or two more bugfixes, and sounds different in some cases.

Here are a few insights into what the real FV1 chip does differently:

But as I said, I would have to compare it with a real FV1.

koswir commented 4 months ago

Hi @eh2k,

I understand your point about the importance of accuracy in emulation. However, the FV1 isn't necessarily an iconic classic in the way that, say, a vintage analog synth might be. So, in my opinion, getting the sound as close as possible to the original isn't necessarily the ultimate goal.

Additionally, the FV1 simulation in SpinCad Designer is crafted by people who program on the FV1. While I'm not entirely sure how close they've managed to get to the original, I assume they aimed for as close as possible. But even if they didn't quite match it and the simulation sounds better, I'd prefer the S&C version to sound better rather than worse, all in the pursuit of fidelity.

I also remeber when I have tested reverbs from other creators, those also sounded short and uninteresting. So, this might be a general phenomenon.

Now, considering the insights you've shared about the differences between the real FV1 chip and the emulator, particularly the difference in sampling rate, I would love if you try compensating that. Perhaps you could experiment with scaling the parameters related to time to adjust for the change in sample rate you mentioned?

I believe this approach could help us achieve a better balance between fidelity and sound quality in S&C's emulation. What do you think? Let's give it a shot and see if we can make the S&C version sound just as good, if not better, than the original!