LCA2004 Home
Other events:
Linux Audio Dev Events
ICAD2004
|
|
The state of the art has advanced a great deal in Linux audio over the
past couple of years. A finished piece of music incorporating digital
audio, wavetable and virtual analogue synthesis can be produced entirely
using free software tools.
I'll be demonstrating a selection of these tools and also important
technologies enabling them such as JACK, ALSA and realtime scheduling.
I'll be demonstrating the following applications and tools:
- sweep - sample oriented audio editor that supports LADSPA plugins
- audacity - noise removal
- fluidsynth - wave table synthesis/sample playback
- alsamodularsynth - virtual analogue modular synthesis
- hydrogen - drum machine/sequencer
- ardour - multitrack recording and editing software, resembling
ProTools
- Muse/Rosegarden - MIDI/audio sequencers
- freqtweak - All purpose audio mutilation
Mark has been using Linux since 1994, but he's far too busy trying
to learn to play guitar better to have written any programs worth
releasing. He plays guitar in Thatch Noir and has a habit of joining
bands that never go anywhere.
Music typesetting is hard. There are many packages to try to typeset
music, but to get really beautiful results (i.e., easy to read when
it's plonked on a music stand in front of you in the poor light that
most of the venues I go to think is adequate for musicians), you have
to do a *lot* of tweaking (or spend a fortune).
The three problems in music typesetting are:
- Inputting the music. Midi is fine for many instrument players, but I
don't have a MIDI voicebox. GUIs are good for adjusting music
once it's entered, but I've found them tedious for entering a
whole score. So you're down to a music description language as
the best general case.
- Checking the result. That's relatively easy; most programs
will generate MIDI and let you listen to the result.
- Generating beautiful, easy-to-read output. Although you can
get something printable from almost all the music typesetting
programs, the input generally requires lots of tweaking to get
something beautiful.
Enter Lilypond. Lilypond is a music typesetting tool that takes a
text input language, and generates LaTeX. Lilypond encodes within it
standard formats that result in very good output for most ordinary
cases --- just as LaTeX did for TeX. Its input language uses Guile as
an extension, so is almost infinitely flexible. And the output *is*
beautifully readable.
Of course, Lilypond does have some drawbacks. In the talk, I'll give
a quick demo, and talk about the good things and the bad things in
Lilypond.
Peter Chubb is a kernel hacker, working with the open-source Gelato project
at UNSW.
jMusic is a programming library written for musicians in the Java
programming language. This project hopes to develop a library that is
simple enough for newbie programmers but sophisticated enough to enable
composers to accomplish real work, whatever form that may take. jMusic is
designed to be used as a compositional medium, therefore it is primarily
designed for musicians - not computer programmers. jMusic includes audio
synthesis and DSP, as well as full MIDI control. jMusic is
open-source(GPL), and runs on most computer platforms.
This presentation will introduce the audience to jMusic and the tools
that are contained within. A more indepth look at the audio synthesis
processing applications will then be given, including the audio tools I
am currently working on. The presentation will be given from more of a
compositional angle, which for a lot of computer programmers is probably
a very different angle, but it is the philosophy behind the structure and
a lot of the decision making for how things work in jMusic.
See also:
The PDAudio project uses Familiar Linux running on a HP/Compaq iPAQ
Personal Digital Assistant (PDA), and a purpose built I/O card to record
high quality digital audio at up to 96kHz, 24 bit, stereo onto Compact
Flash memory cards.
The project was initiated by Len Moskowitz in the US who brought together
hardware designers in the UK, Jaroslav Kysela in the Czech Republic who
wrote the ALSA driver for the hardware and the author based here in
Australia who wrote the recording application.
The project is interesting for the following reasons:
- The way the project came together and the fact that the code will be
released under the GPL.
- The target system consists of a Strong-ARM CPU and all development
work was done by cross-compiling from an x86 Linux machine.
- The application's GUI was built using the same GTK+ widget set that
is used by so many other Linux apps.
- An audio recorder like this has a soft-real-time requirements.
- The use of a number of advanced programming features of the Unix API
including fork, multi-threading, mprotect, mmap, sched_set_scheduler
and others.
- Many interesting problems and solution were found.
See also
Len Moskowitz's
web page for PDAudio
Erik is the author of
libsndfile and
Secret Rabbit Code.
He will be at this miniconf "with bells on!".
Erik presented a tutorial on Linux DSP development
at LCA2002 in Brisbane.
Remix is a C library for audio sequencing and mixing. It allows hierarchical,
recursive composition of samples, PCM synthesis modules and LADSPA
effects. It can be used for offline processing or within interactive
applications.
Conrad is the author of the sound editor
Sweep.
He presented a tutorial on using Sweep at LCA2003 in Perth.
Vinyl and turntables have been the traditional components of the DJ
for several decades. Even though musical technology has advanced
greatly in that time period--in particular with computers and digital
audio systems offering sound and music manipulation possibilities far
beyond that of turntable-based mixing setups--DJing software on
computers still seeks to emulate the traditional turntable metaphor in
their user interfaces. In this talk, we explore user interfaces and
concepts which permit live DJing to be performed much more easily than
using turntable-based metaphors. These different DJ interfaces enable
a new range of music manipulation techniques, such as just-in-time,
on-the-fly edits and remixes of songs which can be tailored to the DJ's
audience. To show that our ideas are not just theoretical, we will
show a demonstration of how DJing can be performed much more easily
than via the traditional turntable metaphor, using an open-source
prototype implementation of our ideas.
Originally inspired by the music from the demoscene, André placed
second in the Assembly'97 multichannel music competition, has a degree
in audio engineering, mixes DJ sets entirely on computer, and doesn't
do anywhere near enough clubbing as he should.
|