# Puredyne/Making audio

Quick intros to making good sounds on your puredyne system :)

## Important: A note about Jack

On Linux there are different "infrastructures" for sound. Some of them are tailored towards everyday basic use, but some are built for professional low-latency work. JACK is in this second category and lots of the audio software described below actually uses JACK for its audio input/output.
For many of these applications it's a good idea to start JACK up first. Go to Menu > Audio > Jack control to launch a graphical controller and then press the big green Start button :)

## Specific tools
### DJing with Mixxx

Mixxx is free DJ software which does what most DJ software does - it lets you play and mix your music collection live using an interface a lot like a physical decks-and-mixer. So if you're familiar with DJ mixers you'll probably be able to get started straight away - but it's easy - try this:
* When launched, Mixxx asks where your music collection is. Point it at the folder containing your MP3/Ogg/etc files. (This step is optional)
* If you have done the above step then your files will be listed in the middle of the Mixxx interface, and you can drag-and-drop your chosen file onto the space at the top where waveforms are shown. (If not then you can use File>Open to choose a track from anywhere you like.)
* Press the pause/play button for the track (either at the top-left or top-right, depending which of the two channels you put your track in). The music should start playing, and you should see the waveform scrolling past as it plays. (After a short while Mixxx will also try to guess the tempo and will put markers on the waveform showing where it thinks the beats are.)
* Now with that track playing, you're free to cue up the next track on the other channel. Now you're a DJ.

### Programming sound/music with Puredata

Here is a fantastic tutorial on pure data, indeed on making electronic music in general:
[Programming Electronic Music in Pd| http://www.pd-tutorial.com/english/index.html]

### Programming sound/music with SuperCollider

SuperCollider is a programming language and a highly-efficient audio engine, which work together to provide a neat way to design real-time music+sound in very flexible ways.
SuperCollider on Linux uses the standard Linux text editors - maybe you're already familiar with vim or emacs or gedit.
* Make sure JACK is running (see above)
* Choose the menu option Menu > Audio > SuperCollider (there's a vim option and an emacs option, choose one)
* What will happen is that the text editor will launch, as well as a window for supercollider output (in vim it's a separate window, in emacs it's the lower pane of the main window), and also a graphical interface to start/stop the audio server.
* Press the Boot button to start the audio server running. You should see output messages as this happens.
* Run some code. For example, in the empty document window type: {SinOsc.ar(MouseX.kr(100, 1000))}.play Then with your cursor in the same line as that text press F6 (on vim) or Ctrl+C Ctrl+X (on emacs), which should run the command and make some audio output - a mouse-controlled sine wave.
To get further into SuperCollider see the help documentation, or search the web for tutorials...