Channels are responsible for routing sounds toward the ultimate destination of the ears of the audience. In ChucK, final sound can be routed to sound files and/or to your computer speakers. dac (Digital-to-Analog Converter) is a special global object that represents the route to the computer speakers.
The above image shows how the output of a channel can be routed to the
input of another channel resulting in channel groups (actually, channel networks).
Each channel object has a parameter,
ToDAC, that automates the connection between
inlet and dac. In this case, only the Group0 channel has ToDAC activated
so it can play the role of master in determining the stereo mix and
At right we see the dual views for editing channel values. Above right, you can see the concise channel view that packs crucial channel settings, Gain, Pan, and Mute/Solo, into a small mixing-board-like interface. Below right, we see the standard parameter view of a single channel. As stated elsewhere, values of these parameters can be controlled procedurally. In this case, the sliders and numbers will periodically update (and setting values manually will be soon be overridden by values produced in your program).
In any event, tweaking Gain and Pan values during composition development is a pretty handy tool supported by virtually all DAWs. In the programmable setting of ChucK, there are some unusual twists and caveats, but these features are important to the goals and implementation of the Fiddle Runtime.
One other important (and neat) note about Channels: they can hold stereo effects chains. Alt-Double-clicking a Channel node reveals its internals. The inverse operation, popping up to the parent graph is accomplished by double-clicking on an empty area or by employing this context menu:
You can intercept the audio signal and route it to effects like Reverb, Echo, Chorus, etc. You can also control the wet/dry mix for the effects chain and temporarily bypass the effects to debug your setup. Here are some simple examples.
The key take-away points:
inletparameter of the
wetparameter of the
Mixparameter controls the wet-vs-dry mix. A
Mixvalue of .5 represent an equal combination of input and effects.
Modeparameter to Bypass has the same effect as setting