Listening Room ChucK tutorial

From CCRMA Wiki
Revision as of 21:11, 30 September 2011 by Nando (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Note - this tutorial doesn't use Jack, and there could be a cleaner way to do this with fewer steps, but it works and is fairly easy to do

0) Log in to the linux box which is NOT the openmixer box (there should be two monitor/keyboard/mouse combos you can use to do this, one in the middle of the room and one in the corner). You can tell that it's not the openmixer computer because there is no sticker on the monitor which says "OPENMIXER WORKSTATION: DO NOT LOGIN!" on it.

0b) In any CCRMA workstation you can skip building the miniAudicle as it is already installed. To use the ALSA version type 'miniAudicle-alsa' in a terminal, to use the Jack version (you have to have Jack running) type 'miniAudicle'. You can skip to 4 below if you use the precompiled version of the miniAudicle.

1) Download the MiniAudicle for Linux here.

2) Unzip the archive, cd to the unzipped directory in Terminal, and type make linux-alsa

3) Now go into the unzipped directory, and you'll find the MiniAudicle app inside of the wxw folder. Open it.

4) Open HDSPMixer - click on "Applications" at the top left, then go to "Sound and Video", then find and click on HDSPMixer.

5) Run this example code: (copy and paste it, hit "add shred")

   ModalBar sin;
   8 => sin.preset;
   Gain g[16];
   .1 => float delay;
   for (0 => int i; i < 16; i++)
       sin => g[i];
       0 => g[i].gain;
       g[i] => dac.chan(i);
       for (0 => int i; i < 16; i++)
           Std.mtof(60+2*i) => sin.freq;
           .8=> g[i].gain;
           if(i == 0) { 0 => g[15].gain; }
           else { 0 => g[i-1].gain; }
           delay::second => now;
           0 => g[i].gain;
           delay::second => now;

6) Now in HDSPMixer, you should see the level meters registering a signal. It should look like this: (if it doesn't, get help!)


7) On the fader box, hit "Linux". The fader box is the one that looks like this:

BCF2000 top.jpg

On the second control surface (to the right of the fader box) press one of the "Preset" buttons (-15dB, -5dB, 0dB).

You should hear sound now, with notes cascading around the room (NOTE: the code fragment above will not emit sound from all loudspeakers in the room, there are more now than when it was written).

Please read the OpenMixer manual in the Listening Room page here. It includes detailed information on how to use the OpenMixer software in the Listening Room. All the advice below about pressing RESET in the openmixer computer is a bit out of date. A computer RESET is a last resort. If you need to use it please contact nando@ccrma so that he can try to find out what happened and why openmixer was not responding.

If you don't, try restarting the openmixer box: it's the bigger computer which is connected to the monitor which says "OPENMIXER WORKSTATION: DO NOT LOGIN!". Find the computer and press "reset" on the front panel. If you still don't get sound. hit "Zero" then "Linux" on the fader box, then turn up the leftmost fader. Now, on the knob box, turn up the third knob down in the leftmost column (if you think of the knob box as a 8x4 matrix, this is in location 3, 1). You should be hearing sound now out of one of the speakers. If you aren't, something is awry, and find help!

8) If you are experiencing popping and clicking, try entering cpufreq-selector -g performance into a terminal window. (Thanks Jason Sadural for this)

9) If you notice that channels are "pairing", that is, if you change the pan value on one channel and it changes the pan value on another channel too, try resetting the openmixer computer. (Thanks Jason for this too) (This was a bug in the OpenMixer code that has been long fixed - nando)

10) Rule of thumb: When in doubt, try restarting the openmixer computer first. Then, seek help! Nando says: When in doubt read the manual, if all else fails restart the openmixer computer (and if you do please report the problem).