Tugger the SLUGger!SLUG Mailing List Archives

[activities] Presentation

Here it is.

#!/usr/X11R6/bin/mgp -t 90
%deffont "normal"    xfont  "utopia-medium-r", charset "iso8859-1"
%deffont "normal-i"  xfont  "utopia-medium-i", charset "iso8859-1"
%deffont "normal-b"  xfont  "utopia-bold-r"  , charset "iso8859-1"
%deffont "normal-bi" xfont  "utopia-bold-i"  , charset "iso8859-1"
%deffont "mono"      xfont "courier-medium-r", charset "iso8859-1"
%default 1 size 5
%default 2 size 8, fore "yellow", font "normal-b", center
%default 3 size 5, fore "white",  font "normal", left, prefix "  "
%tab 1 size 4, vgap 30, prefix "     ", icon arc "red" 40, leftfill
%tab 2 prefix "            ", icon arc "orange" 40, leftfill
%tab 3 prefix "                   ", icon arc "brown" 40, leftfill
%tab 4 prefix "                          ", icon arc "darkmagenta" 40, leftfill
%tab 5 prefix "                                ", icon arc "magenta" 40, leftfill
%%------------------------- end of headers -----------------------------
Outline - This presentation is about my experiences making music under Linux.

	My name's Mark, and I'm a music fanatic. Please help me.
	I play guitar reasonably well
	I don't play keyboard very well
	You're going to be hearing a lot of that keyboard playing tonight
	Sucked in

Hardware requirements - It's not as bad as you think

	CPU - Pentium III 500MHz is fine
	RAM - Lots depending on the size of the samples you want to edit or record
	Hard disk -  As much as humanly possible.

Serious audio users recommend multiple CPUS and seperate hard drives for the operating system and audio to reduce contention when multi-track recording.
%font "normal", size 5


	Supports more sound cards, including multitrack recording cards like the Delta1010 and RME Hammerfall
	Sensibly designed API, rather than a sea of ioctls
	Extensive MIDI note data routing facilities, as you'll soon see
%font "normal", size 5

You don't know JACK, but you should

	The standard low latency API
	Callback based
	Processes can share audio very rapidly, as again you'll soon see
	Makes multitrack recording and realtime effects processing possible

Kernel concerns - Real time scheduling, low latency patches

If you want to do serious audio work without lag, you're going to need an operating system that's up to the job. Linux out of the box just isn't that. So:
	Low latency patches
	Real time scheduling to allow jackd to run with realtime priority - it's virtually impossible to run ardour without this
%font "normal", size 5


	Best audio editor ever.
	Oriented towards sample editing.
	Allows you to use LADSPA plugins
	Here's some sound mangling I've done with it.

A vocoder sounds like this ...

	Vocoders take two sounds - a carrier and a formant, and combine them to form one sound.
	If the carrier is a synth sound and the formant is a voice, you can make a sound like a synthesizer speaking.
	I'll play the carrier, then the formant, and then the output of the vocoder.
	Can't show you this in action because software is slightly lame.

Noise removal with audacity

	audacity is a multiplatform audio editor. It has noise removal, which sweep lacks.
	Before - Recording done in a rehearsal studio with air conditioning
	After - Noise removed from recording, much cleaner I think you'll agree

The promise of ardour

	No more getting BetaMaxed.
	Professional quality recordings using free software
	Initially obtuse interface
	Supports MMC - MIDI Machine Control. A digital mixer can be used to control ardour.
	Here's one I prepared earlier - Diablo by Mark and Pia

Audio routing with JACK - freqtweak

	freqtweak allows you to apply equalisation and delay to different frequency bands. This allows you to achieve some astonishing effects in realtime.
	So let's hear some of those then
%font "normal", size 5

MIDI routing using ALSA and qcontrol

	As I mentioned earlier, ALSA allows you to route MIDI between ports or applications like sequencers
	This allows you to have sequencing applications control software synths. No more hardware!


	Analog synthesizer simulator
	I couldn't get the JACK support working, so it's a bit laggy
	Let's listen to some sounds


	Wavetable software synth that plays SoundFonts
	Good for the sorts of sounds that an analog synth. isn't so good at like realistic violins
	Let's have a listen


	Free software drum machine
	Samples used for various drums can be changed, custom drum kits can be built
	Internal drum oriented sequencer
	Accepts MIDI input via ALSA, which is rather useful for sequencing drums
	Look, I'll prove it to you

Some actual playing, perhaps - and a recording

	One more word out of you and it's Stairway To Heaven
	OK, Girl From Ipanema it is then >:D

Come to the SLUG music special interest group, you slack sods

	I haven't been either
	But I will
	No, really, I will

Exciting developments on the horizon

	MIDI support in ardour
	vocoder LADSPA plugin whenever I finish it
	Guitar amplifier simulator that doesn't sound like #$^@
	Check out linux-audio-dev and linux-audio-user, there's a lot of very interesting work being done. Also check out music-dsp if you're not afraid of a little mathematics.

Links/Questions if there's time


%cont, fore "cyan"
%cont, fore "white"

Ardour - 
%cont, fore "cyan"
%cont, fore "white"

Sweep - 
%cont, fore "cyan"
%cont, fore "white"

Hydrogen - 
%cont, fore "cyan"
%cont, fore "white"

qcontrol - 
%cont, fore "cyan"
%cont, fore "white"

freqtweak - 
%cont, fore "cyan"
%cont, fore "white"

fluidsynth - 
%cont, fore "cyan"
%cont, fore "white"

alsamodularsynth - 
%cont, fore "cyan"
%cont, fore "white"

%% mgp code generated by txt2tags 1.6 (http://txt2tags.sf.net)
%% cmdline: txt2tags -tmgp /home/flow.com.au/mgreenaway/doc/presentation_notes.txt