Is Line level i/o for Daisy Patch possible?

Hi, is it possible to change the audio in/outs on the Daisy Patch in software so that they respond well to line level i/o? I want to use the Patch to process two synthesizers and two guitar loopers (fed by other guitar effects), 4 mono signals in total. Once processed by the Daisy I would like the outputs to connect to a line-level recorder, in my case a Zoom F8n. I prefer the interface of the Patch for my project because it has 4 audio ins and 4 audio outs which is nearly perfect.

The Daisy Patch I/O is pretty much 1:1 as it goes through the device.

So generating synthesis signals at full scale will end up quite loud, but processing audio with effects will pass the input through at the volume that it came in.

If any of the effects you’re using are amplitude sensitive (compressors, etc.), you can always add some software amplification at the beginning of the audio callback, and then attenuate it on the output. Something like:

//. . . in audio callback
for (size_t i = 0; i < size; i++) {
  // Boost the signal
  float boosted_signal = in[0][i] * 2.0;

  // Do something with it
  float processed = someEffect(boosted_signal);

  // multiply by the reciprocal to get back to original level. 
  out[0][i] = processed * 0.5f; 

Thank you for the answer and for sharing the example code. That’s great to know.

While such bypass is possible, you’re loosing some resolution of audio codec. It’s preferable to run audio at appropriate levels and boost/attenuate in analog. Also, I don’t know much about F8, but I recall that my Zoom H6 was taking eurorack audio without clipping.

1 Like