interview: Dave Phillips

Dave Phillips is known to a lot of Linux users for his Linux Sound and Music Apps page which has a pretty complete list of Linux audio apps. Dave has recently written a book on making music with Linux (available Oct 00 from No Starch Press). Here we talk to him about the general situation in Linux Audio, his music, and his book.

related links:
Linux Sound and Music Apps page
Linux Audio Dev list
Music and Sound book review

m-station: > The first question I'd like to ask is what is your sense > of the acceptance of Linux as a music making OS and > what do you think are the important next steps (if any)? Dave Phillips: Activities such as the work done on the low-latency kernel patches, the ALSA open-source sound drivers, and the Linux Audio Developers Simple Plugin Architecture (LADSPA) bode very well for Linux as a music-makers choice OS. I believe that such directions will help convince engineers and software designers that the system is viable and offers a technically superior platform for work in DSP, realtime audio synthesis, network audio, and so forth. Before suggesting what I believe are the important next steps, perhaps it would be illuminating to consider just what we have now, what's weak and where we're strong. Here's my assessment of a few obvious categories: MIDI sequencing *** hard-disk recording **** realtime synthesizers ***** software synthesis languages ***** media players/recorders *** soundfile editors **** IMO, MIDI sequencing remains a weak sister, but I want to especially point out KeyKit and Jazz++. I also want to mention the "odious comparison" syndrome: "But where's Cubase/Cakewalk/Logic Audio ?". Well, they don't seem to be very interested in joining the party, but that doesn't mean we lack tools to do similar things. KeyKit and Jazz++ are quite sophisticated applications. I believe that their lack of snazzy interfaces puts off some people from investigating them for their real power. And yes, users migrating from Windows will have to learn new things and new ways of working. Only the individual user can determine if he or she is ready to make the effort. Hard-disk recording got a real shot in the arm with the development of Ardour, a 24-track hdr (hard-disk recorder) that utilizes the powerful digital i/o available on the RME Hammerfall digital audio card. However, Ardour isn't the only hdr available to Linux users: Nick Copeland's SLab is an outstanding 64-track recorder with an amazing features list. Again, users coming from Windows will likely scratch their heads when seeing SLab for the first time, but it isn't at all difficult to use, and it is very powerful software. My book includes a chapter on hard-disk recording, and SLab is profiled there. I should also mention Kai Vehmanen's ecasound, a superb multi-track recorder and realtime soundfile processor. Ecasound has the distinction of being completely usable from the command-line as well as from its Qt GUI. Soundfile editors are a mixed blessing. Snd is arguably an incredible program, but it is certainly not what a Cool Edit user expects. DAP is actually closer to the Windows soundfile editors, but it cannot currently handle very large files. MiXViews possesses an interesting selection of LPC and phase vocoder tools, but its interface is archaic. Linux enjoys quite a collection of real-time software synthesizers. Stefan Nietschke's RTSynth is an outstanding example, but other neat synths include Xsynth, Freebirth, and Spiral Synth. The UltraMaster Juno6 and RS101 synths are very impressive. Tk3MU provides a nice Python/Tk GUI to 3MU, a TB303 emulator. Of course, aRts is also here, and with aRts we begin to blur the distinction between a software synthesis environment and a standalone software synthesizer. jMax is another good example of such a hybrid environment. Drum programmers include TK707, Green Box, and the outstanding Trommler. Software sound synthesis (SWSS) is a venerable UNIX research domain, and Linux has inherited a very rich legacy of such software. Csound, Cmix (and RTCmix), Music4C, and Common LISP Music (CLM) are only a few of the highly evolved SWSS languages available on Linux. Many of those languages enjoy a range of support software from GUIs (such as Cecilia for Csound) to various command-line utilities. On sufficiently fast enough machines Csound and RTCmix are both now powerful enough to act as realtime synthesizers... > SAOL is gathering adherents as well in this category Yes, I should certainly have mentioned SAOL: I profile it in the book. It's another consistently maintained project I need to pay more attention to. I ought to have mentioned Broadcast2000 too. Its interface is a little weird (again), but it is very powerful. Nick Bailey's Studio is another surprisingly good editor. Btw, I just heard from the author of DAP. He said he has a memory mapping routine he needs to polish up, but eventually he'll give DAP the ability to read large files. I'll keep pushing him... :) ...Linux enjoys a glut of players and recorders for common media formats, though of course we suffer when it comes to the proprietary formats from Microsoft (ASF), Apple (Quicktime), and (RealAudio and RealVideo). Fortunately has seen the light (courtesy Microsoft's blatant attempts to put Real out of business) and provides Linux versions of its RealPlayer (binary-only releases, alas). Media players such as XMMS and ALSAplayer certainly rival anything you can find in the Windows world. As usual, if a format isn't supported it's most likely a proprietary format which the manufacturer refuses to make available for Linux coders. Okay, so there's the 10-minute overview. What do we need next ? Well, IMHO, we really need to get interface upgrades for Jazz++ and the Rosegarden sequencer. It would be nice to accomodate the VST plug-ins in the available software (and I'd certainly like to see more development with LADSPA). We need to convince Linus Torvalds that Linux *is* an appropriate platform for multimedia, and that the low-latency patches are necessary to convince developers of the platform's inherent superiority. > I think this is going to happen regardless of Linus > Torvald's attitude ... whether go-faster comes with the > kernel or as an add-on - well, there are two add-ons already here. Another "something I really need to check out". I need to upgrade my kernel anyway, so I'll probably give the 2.2.16 low-latency patches a whirl very soon. > anecdotal reports have it that 2.2.15LL is better > ... and I think Benno Senoner's tests say that it's > faster. 2.2.16LL is "lumpy" but quite effective. > I only froze my box completely once :) (editor's note 22 Sep 00: subsequent testing by Benno Senoner shows that 2.2.15LL is much the same as 16 or 17. The real winner is 2.2.10) Okay, I'll try 2.2.15. The box here has a CD burner but my kernel isn't set up for SCSI emulation (the drive is a Creative Labs 4/2/24 IDE CD-RW). Might as well go for the low-latency while I'm at it... > Yeah, I wonder what happened to Steinberg/Cubase. I got the > impression a few months ago that an announcement was imminent > but everything seems to have gone quiet on that front. > That whole subject raises interesting questions about commercial > viability in Linux which I'll raise again in a separate question :) I was just wondering about Steinberg again recently. I think Paul Barton-Davis is the point person to ask. ...We also need a lot more cohesion in the development community. I see a too much repeated effort, lots of rebuilding the wheel, and far too many great ideas languishing for lack of an organized development plan. Ideas are truly easy, but the kind of work needed to create something like Bill Schottstaedt's Snd soundfile editor requires a dedication spanning years. SourceForge lists dozens of audio-related projects, but almost all are in the planning or early alpha stages. There's nothing terribly wrong about that scenario, but perhaps some more coordination of effort would result in more software of higher quality. I urge all Linux audio software developers to join the Linux Audio Development group at, whether you're writing audio code for games or hard-disk recording systems. > What's your opinion on the viability of commercial > developers in Linux? We don't have too many examples > yet - 4front are widely based in Unix generally and the > only other people I can think of are Mup, who have a > shareware notation program. Interesting question. When I started using Linux there was a soundfile editor called Ceres that had intentions of evolving into a multitrack recorder/editor for Linux. It was a commercial product and they went out of business. Jazz++ was originally a commercial product, but not any longer. The guys who make the UltraMaster synths seem to have a good plan, giving something back in open-sources, but it remains to be seen if their commercial venture will succeed. I suspect the market is narrow enough for Windows users, it's probably considerably smaller for Linux people (who are of course also used to getting most of their software for free). 4Front services almost every UNIX platform. That's one of their primary strengths. I don't know how well Mup does for sales. I hope they do well enough to stay in business, they make a very fine product. I think RealProducer is also commercially available for Linux. Main Actor is another commercial package, and of course there's the Augan Systems hardware. So some stuff exists, but obviously Steinberg et al have yet to consider the Linux community as a viable market for their software. > How did you first come to Linux? Was it a music related > need or a wider thing? A little background: I was studying music composition privately in Los Angeles in 1985/6 and my teacher was waxing enthusiastic about MIDI and its possibilities for composers. So I bought an XT (I think it was an 8 MHz 8086 with a 20 meg hard drive) and started running DOS MIDI software on it. I became quite handy with Voyetra's Sequencer Plus, and I got a lot of work done with it. I eventually became a beta tester for Voyetra products for a few years (through Sequencer Plus Gold). By the late 80s I realized that my needs were not met by the available commercial software, and that I would eventually have to learn how to program. I started learning the RAVEL MIDI programming language, then a chance message from a fellow named Chris DeChiara turned me on to the existence of Csound. Csound was much more like what I was looking for. I stayed with DOS/Windows until the mid 90s. By that time I realized again that commercial software vendors were still not coming up with the sort of music software I wanted, and I also realized that Microsoft had managed to lock its users into a constant expensive upgrade path, one I was increasingly unhappy about. My first experience with Linux was via Pat Volkerding's "Linux Configuration and Installation". The book was packaged with a CD with a Slackware system built around kernel 1.2.13. I installed it on a small spare drive, got it going, got X working, and was just generally thrilled by being able to do so much with the system. However, a quick look at the available music and sound software seemed to indicate that there wasn't much available, so I got involved. I worked on Linux versions of Csound, ported applications from SGI code and other sources, and I started the Linux Music & Sound Applications website. I want to emphasize that one of most intriguing aspects of all this activity was the sense of a real community behind it all. When I say "I worked on foo" I really mean "We worked on foo together". Doug Scott (MiXViews), Richard Kent (DAP, NoTAM DSP apps), Paul Barton-Davis (Softwerk, XPhat, Quasimodo), John ffitch (Csound), and Nicola Bernardini (everything) and many other true worthies have freely contributed their time and considerable skills toward better sound software for Linux. It says much that whenever I searched for help with Linux or its application software, someone always responded with advice and willingness to assist. I was inspired to keep working on the system, and eventually I ceased using Windows altogether. > Tell us about what you've > been doing musically. Well, the past year has been spent working on the book, so I've done more experimenting than composing. I have been collecting some basic material I plan to use in some new music, I just need some more time to work with what I have. I've been getting into playing with a band again, and I expect we'll be playing a lot more now that the book's done. We play blues, it's the music I most enjoy playing. I really want some time to explore possibilities I've found in applications like Ceres3 and ecasound. I feel that I've plenty of great tools to work with in Linux now, I just need to knuckle down and get some good music written with them. > Does your playing of the blues influence the sort of > ideas you might have in a computer composition > environment ... conciously anyway? Hard to say. Sometimes I'll use blues recordings as source material for sonic transformations. I guess it can't help being a prominent influence though. The composer Leo Brouwer remarked that hearing real flamenco music was the first time he'd ever heard a "complete" music. I know what he means, blues music had the same effect on me. I've written pieces in blues forms, but the formal aspects of blues are not the greater influence. I'm more interested in the emotion and personality of the performance, and I'd like to carry that sort of concern into what I do with music on my computer. I believe it's possible. As an aside, I should mention that I believe we already have a very strong collection of outstanding electroacoustic music. More people need to be made aware of this fact. Excellent computer music is out there from people diverse as Paul Lansky and Aphex Twin, but it seems that very few people are aware of it. > m-station's new XperimentS section will be highlighting > that sort of stuff. Excellent news. I once did up a page of Csound compositions by various composers, it was very cool. It included MP3 realizations and links to the original Csound code where possible. Unfortunately the MP3s chewed up yards of disk space and I was never able to find a host that would let me use that much room. The page was actually very pretty too. I still have it if you're at all interested in it. > Certainly am :) > What sort of basic material have you been collecting? Snippets of things done with the various software profiled in my book. The transforms available in the Ceres frequency domain editors are just amazing. You could build a Linux composition lab with nothing but Csound, Mix, and Ceres3. That's sort of what I'm planning to do. > Your book is pretty close to hitting the store shelves. > I guess you must be feeling some relief at getting to this > stage. It's very strange. I worked very hard at it for almost a year, now it seems like there's a big hole in my life. Guess I have to start another book... > Was getting it through the final stages of preprint etc > a big hassle or did it all go smoothly? Oh, everything went smooth as silk. It really did: No Starch is a great company, I was completely happy with everyone who helped me. My first-round editor was Nick Hoff, who now probably knows more about Linux music and sound software than he ever wanted to know. Nick did a terrific job getting my writing into readable condition. My project editor was Karol Jurado, she helped get me through the second and third rounds. Steve and Carol Lombard were editors in the final stages, and my amazing friend Nicola Bernardini did the technical editing. No Starch always deferred to my judgment, but I must say that I followed their leads. I figured they knew more about publishing a book than I did, and I was in a position to learn a lot from them. I've been exceptionally pleased with the relationship. > Would you like to outline the whole process? Nothing to it: I. Receive phone call from publisher Bill Pollock with offer to write book. II. Accept offer, write book. III. Do interviews. IV. Plan next book. > ROFL! Okay, really it went something more like this: Prepare broad outline Outline passes publisher's inspection Prepare more detailed outline Begin writing chapters Chapters are returned with edits Accept/reject edits Chapters go to next edit stage Accept/reject next round of edits Final edits Prepare CD Collect software for inclusion on disc Amass licensing information Make ISO image Send image to publisher Prepare front and back material (introduction, preface, ackowledgments, bibliography, glossary, CD description, etc) Of course, through all of this I had to keep up with the software. Some items I originally planned to include were eventually left out. Other items I decided against reviewing turned out to be better candidates that what I left in. Versions kept changing, people kept moving, nothing stands still. Writing a book like this is something of a thankless task: you know perfectly well that everything profiled will have changed by the time the book appears to the public. But I can't be depressed about that: the material is still eminently useful, URLs are included for everything listed, and the CD contains more up-to-date versions of the software. The basic material is solid stuff. I should also mention that it's probably a good thing I had no real idea what I was in for. I think this was one of those situations where ignorance was a blessing: if I'd known how much work I'd have to put into it I might never have taken the offer. > Good luck with it ... are you going to be 'touring' at all > for the launch? Not unless No Starch foots the bill. ;) I may do some local appearances: there's a Border's in Ann Arbor and a large Barnes & Noble's in Toledo, the publisher might set up something at those places. I've been doing some on-line interviews as well, so the advance publicity is definitely underway. I should also mention that I'm currently testing the new look for the Linux soundapps site. If I can iron out the CGI bugs I should put the new site on-line publicly later this week. I'll let you know when the prototype is ready, maybe you can look at it and let me know what you think ? Back to the hack. I'm trying to fix the ALSA support in Csound. It's always something... > Thanks Dave

 home  music  news  opinion  software  tips  email