Synth Lab has many of the features of a traditional hardware modular synthesizer, plus it's fully configurable and has some little tricks that are possible in software. When you first start up Synth Lab, you are presented with a configuration window which has a bunch of sliders. There you can specify the number of each (most) of Synth Lab's circuits that you want, for example you can have 3 oscillators or 5 or 7 or 0 if you want. The list of features includes: oscillators, delays, counters, rectifiers, envelopes, logic gates, echoes, gains, filters, reverbs, zerox, and dynos. You can also configure the number of nodes, opt to have a node patch panel or not, use a live sampling utility or not, and add a computer keyboard based sine wave organ if you like. To help Synth Lab automatically position the many instrument windows on your screen optimally, you can specify your approximate screen resolution as well.
Another nice feature of the Synth Lab configuration screen is that you can set the Slot Width. Each instrument is only so wide, and lives in a vertical slot within it's window. This causes the sliders to be only so wide, and that makes them have only so much resolution in terms of the accuracy with which you can set the slider value. Synth Lab allows you to increase the slider resolution in the configuration screen with the Slot Width slider. Increase the Slot Width to make each instrument be graphically wider in pixels, which improves slider resolution. Decrease the Slot Width to reduce the congestion of the screen and make things easier to opreate, it's your choice.
In Synth Lab, everything gets hooked together with node sliders. You have the number of nodes that you selected on the configuration screen with which to make connections, and you make those connections with the sliders. The very first thing you should do with Synth Lab is to click on the oscillator window to bring it to the front and then slide it's output to the rightmost position. You will then hear a 500 Hz sinusoid on your speakers or headphones if you have the headphones plugged in. Then try adjusting the frequency and the gain of that oscillator to get a feel for using sliders. You can also click on the button labeled SinOsc at the top of the oscillator panel to cycle through the six types of oscillators.
To quickly hear a couple of examples of sounds that you can make with Synth Lab, click on the window in the upper left corner of the screen to bring it to the front, then click on the copyright button or the thanks button. These each make a pre-programmed sound, which I added just for the fun of it. The woo-woo sound of the copyright button is made by connecting three oscillators in a circular loop, boosting their gains, and linking one of their nodes to the DAC with a gain element or the patch panel. The kerplunking sound of the thanks button is made by deriving logic from a counter and sending the logic output into a band-pass filter with a large Q value. Finally, a fun sound is made when you exit Synth Lab - click on the self destruct button at the bottom of that window, and you will hear a three-second whoop-whoop-whoop exit sound sample as the application closes. That sound is made by connecting a Phasor to the input of a SinOsc, setting the Phasor to a 1 Hz frequency, and boosting the gain of the Phasor by 500 (with a connection from the SinOsc to the DAC, of course). But wait! You're not done, start Synth Lab up again and get ready to have some fun!
There's no reason to educate you on modular synthesizers here, for that you can go to the electro-music.com forum and do a little reading, or else do a Google search on "modular synthesizers" and see what you get. Besides, I'm no expert on what to do with a modular synthesizer, I'm just a programmer who created one in software. Making a thing and using it are two different animals, obviously. What I will describe is Synth Lab's way of connecting things together since it isn't exactly obvious when you first start the application, and I will also describe how frequencies are set plus how to record your music.
Rather than use virtual wires on the screen to hook things up as is done in some other soft synths, Synth Lab uses node sliders. This is because only buttons, sliders, and LEDs are available in the ChucK graphical user interface at this time, but its just as well since the node sliders work just fine. In fact, there have been commercial hardware synthesizers that use physical sliders to make their connections, so it's nothing new. You have N nodes (N = 20 is the default) and you connect anything to a node by moving its input or output slider to that node number. So the process of hooking everything up involves simply moving node sliders.
In addition to the sliders, there is a gain window and a patch panel window. The gain window works with sliders also, and it allows you to vary the gain of any connection from -1 to 1. The patch panel is the huge matrix of buttons that is lurking behind all of the other windows, to the left center of the screeen. Using the patch panel is easy, you just click on a box that connects an input from the bottom to an output on the left, then press the "Make Connections" button. Don't forget to click the button after you define your connections, or the connections won't get established.
Also, on the right is the nodes window which allows you to specify the gain, boost, and function of each node. In Synth Lab nodes are implemented as gain blocks because that made it possible to dynamically do the connecting and unconnecting in ChucK, so I made the gain block capabilities of the nodes available to the user in the node window. Adjust gains from -1 to 1 using the gain sliders in the node window. Adjust the boost from 0.1 to 10,000 by repeatedly clicking the buttons in the node window. Change the function of each node by adjusting the op sliders. The functions are: (-1 = pass-thru), (0 = off, no output signal), (1 = add all the inputs), (2 = subract later inputs from the first one), (3 = multiply all inputs), and (4 = divide later inputs from the first one). You generally leave the op sliders on one unless you want to use the multiply feature for some reason. Pass-through, off, subtract, and divide are really not that useful according to my current understanding, but you may find a creative use for them I don't know.
Sorry, that title is a bad pun but you probably deserved it, you music-loving hedonist! Why on earth would we want a gain boost of 1,000 or more? Because nodes can represent either voltages or frequencies, and frequencies have values in the thousands of Hertz. For example, if you want to create the exit noise of whoop-whoop-whoop, you set one of the oscillators to Phasor, and connect it to another oscillator set as SinOsc. Then you set the Phasor's frequency to 1 Hz or something similar and set it's boost to 1,000. This will make the Phasor period be one cycle per second, and will cause the SinOsc to begin at 0 Hz and ramp up to 1,000 Hz at the end of one second. You can fine-tune the frequency by adjusting the gain slider of that node, i.e. set the boost to 1,000 and the gain to 0.5 to create an overall gain of 500 on that node.
I should also mention that the frequencies of the oscillators and filters are specified with two sliders, not just one. The Freq Exp slider varies from -2 to 4 in integers, and it's purpose is to set the power of ten that the Freq slider gets multiplied by. Setting Freq Exp on the default value of 2 causes the frequency to be set by the equation - oh no, not an equation - yes an equation - (frequency = Freq * 10 ^ Freq_Exp). There, that wasn't that painful of an equation, was it? For example, if the Freq slider is on a setting of 0.4398 and the Freq Exp slider is on two, then the specified frequency will be 0.4398 * 10 ^ 2, which equals 439.8 Hz.
The record and playback buttons are on the main window in the upper left corner titled "Synth Lab". Record is a toggle switch, so click it once to begin recording and it will turn dark grey, then click it a second time to stop recording and it will turn light grey. The recording is writen to the file "Synth_Lab.wav" in your home directory. Click on the playback button to play back the most recent recording. At this time the ChucK programming language lacks text boxes, so there's no easy way to specify file names in the graphical user interface. This means that you must use the operating system's file manager to rename and relocate the file however you like after recording it. You can specify where the Synth_Lab.wav file location by configuring the miniAudicle's preferences. Under the miniAudicle pull-down, select preferences to get the preferences window to appear, then click on the miscellaneous button and set the path, preferably to your ChucK directory.
That's about it for a quick introduction to Synth Lab. I could go into detail about all of the various windows, but you should be able to figure things out well enough yourself. The only thing that is sadly lacking in Synth Lab is a save feature to save your slider and button settings. Unfortunately the ChucK programming language lacks the string processing and file input / output features that would make saving configurations possible. At least you can record your music, and you can check back over time to see if I've added a save feature yet. So have fun creating music with Synth Lab, and if you do use it please send me a thank-you email. I put a fairly large amount of effort into creating this free software, so if you get much use out of it you owe me an email! Your email will help motivate me to continue producing quality freeware for all to enjoy. My email address is inventor-66@comcast.net. Have fun and enjoy Synth Lab!
|
copyright 2008 Les Hall
My stuff: Sports Prediction, Oscillator, Music, HS TechSpy, and Dome Homes. |
Hit Counters |
Contact me inventor-66@comcast.net |