Hi Kane,
On 11 May 2013, at 20:46,
wolf...@gmail.com wrote:
> You're right, your code totally works. I should have thought to try it on an internal synth... so is the following use-case not supported?
>
> (definst output [vol 1]
> (do (out 0 (* (sound-in 0) vol))
> (out 1 (* (sound-in 1) vol))))
>
> (output) ; turn output on, now I can hear the inputs from the outputs
>
> (inst-fx! output fx-distortion2) ; turn on distortion, no audible change. am i doing something wrong or is this broken atm?
>
> I am using Overtone 0.9.0-SNAPSHOT, but this also did not work with Overtone 0.8.1. Should I submit a bug report?
I've been working on a GraphViz viewer that should make it easier for you to see what's going on in this situation. In the next release, you'll be able to call:
(show-graphviz-synth output)
and provided that you've already manually installed Graphviz, it should pop up a graph version of your synth design. I've attached the currently generated graph of your output synth to this email.
Notice how it looks pretty messed up - it's got multiple output ugens (3 in fact!). The two connected outputs are the ones you've specified in your synth design, the third (with bus 55) is the one created by the definst for you.
As Roger suggested, you typically want to use defsynth when trying to debug things, as it doesn't do anything automatic for you. However, you *do* need definst if you want to use the inst-fx! stuff.
The reason why it's not working for you is that inst-fx! will work on the bus assigned to that inst (in this case bus 55). However, in your synth design nothing is being piped into bus 55, only bus 0 (which is directly out to the sound card, therefore bypassing any FX chain you set up).
Out of interest, why are you trying to read from sound-in 0 and 1? Do you have a stereo mic (or two mono mics) attached?
Sam
---
http://sam.aaron.name