Slashdot Mirror


Making Music with Linux : Mastering, Bandwidth, and Synthesis

In the first part of Slashdot's 'Making Music with Linux' series, we discussed the possibilities of using Linux as an audio production operating system. While we lamented the lack of a fully-functional audio suite for Linux, we saw the silver lining in the cloud of patience, and witnessed a great number of free sound tools that were well on their way to greatness. In this installment, we talk a little more about high-end audio mastering, low-end sound transport, and using Linux as a tool for sound synthesis. Part II of a series.

Burning a CD under Linux is super-easy, and there are quite a few programs that make it possible under Linux. X-CD-Roast is a popular tool, and is used constantly by Linux enthusiasts to burn their own multi-session content onto a compact disc. The problem is that there is still no Linux equivalent for the huge multi-track mixer you'll find at professional recording studios. If you're hoping to mix down tracks and perform studio-quality takes and 'bounces' of your work, you're going to need an expensive chunk of professional digital audio hardware. Once you've got your finished master, you'll have no problem making as many copies as you want using your Linux machine. Until we have a real-time mixdown utility, the waiting game wins again.

The world of low-bandwidth sound transport is wide open on the Linux platform, except for the glaring exception of not being able to play Windows Media Player sound files on your machine. Although the 'media darling' of sound transport is the mp3 file format, there's no denying the fact that mp3 provides solid sound quality and a small file footprint. Mp3 still isn't the answer to all of our prayers, however. No matter what anyone tells you, mp3 is not CD-quality sound, and tends to boost the mid-range in most tunes.

When you're living with a low-bandwidth target, the sound you're streaming is secondary in importance to stretching that stream over a maximum number of clients with the least amount of lag. RealPlayer suffers from the same mid-range band pass issues as mp3, but in the grand scheme of things, you're a lot more likely to encounter RealPlayer as an option when you're surfing. Producing RealPlayer content is easy to do and easy to host, but the downside is that it's not free. RealProducer will run you $149.95 from RealNetworks.

Joseph Ottinger, Linux-savvy musician, shares his thoughts on streaming audio. "I choose mp3 because of the high quality and decent compression. Real's stuff is nice because it's streaming, but even on a fast connection, that stuff sounds like it's ground up. Microsoft's streaming format is worse, lacking even more of the fundamental sound's depth and clarity. The problem with mp3 is Napster. Napster makes it easy to send and find mp3's. A lot of people trade though, so people rip stuff at low quality just to get their numbers up and their bandwidth down."

Csound is a wonderfully portable and versatile sound synthesis package written entirely in C. Csound uses two files to work its magic; a score file that basically acts as a timed-event trigger file, and an orchestra file to interpret what voices it should use to play the score. This is a classical approach to sound synthesis, and can be used to either generate a sound file or, if your system is fast enough, to send the output directly to a DAC on your system's soundcard. If you like, you can even use a standard MIDI file to act as the score file. Csound has about a bazillion extensions, and nifty gadgets that use it.

For those interested in using their Linux machine as a powerful tool for creating original instruments and sounds, they'll find a friend in Cecilia, a wonderful sound synthesis tool that sits right on top of Csound, without you having to get your hands dirty. Cecilia provides real-time signal processing on sound files, live input, or can work as a software synthesizer on its own. If you're in love with real-time resonance or envelope filters, Cecilia lets you configure the software synth to the limit.

Next time, we discuss Linux sound hardware and support, and we're going acronym-diving! Find out what OSS and ALSA are, and why they've got something to do with those big speakers you bought. We'll also navigate the treacherous waters of musical notation with Linux. If you know of any fantastic audio production programs, please let us know! See you next time...

24 of 117 comments (clear)

  1. Re:Real Time problems by mosch · · Score: 2

    Yes, but this is irrelevant. We're talking about high-end digital audio. I work with this stuff all the time, my digital I/O is via Motu 2408, a card which is considered an absolute bargain at $1000. ASM doesn't help anything, it helps performance a little, by completely destroying portability. I'd much rather have something that can be ported to run on new/different architectures than something which runs incredibly fast on one low-end chipset and doesn't run at all on anything else.
    ----------------------------

  2. Re:Digidesign HW support? by emerson · · Score: 2

    I asked several of the digi tech guys about this at the 1999 Winter NAMM (yah, almost 15 months ago, now), and mostly they just looked at me funny. The one guy who'd ever HEARD of Linux said something best paraphrased as "we're still getting our WINDOWS support stabilized, man, why would we want to take on another platform?"

    I pestered them for hardware info on their AMIII cards, just to get a foot in the door, but never got anywhere productive.

    digi's a very strange company, VERY proprietary about their hardware and software, and, like most of the MI industry, VERY myopic about their computing platforms.
    --

  3. Electronic Musician article, Mark II by emerson · · Score: 2

    In a comment posted to part I of this series, I talked about an article I wrote for Electronic Musician about the state of music hardware and software for Linux as of about this time last year.

    Since then, I've cleaned up the ASCII version of the article, and placed it online myself, since EM's parent company can't seem to run a website to save their lives.

    Please check it out, but maybe wait a bit -- it's only a DSL line, and I'd prefer people not mirror it, since _I'm_ even publishing it without explicit permission.


    --

  4. SoundStudio by Paul Sharpe by farrellj · · Score: 2

    This package is pretty good for basic recording/effects processing on a single stereo track...pretty basic, but good. I don't think that it is maintained anymore, since the last maintainer, Nick Bailey, has no reference to it on his home pages. It is written in TK/TCL + a tiny bit of C as a graphical interface to SOX. Very well done.

    I've been using to digitize the songs that the person who has been recording in my studio.

    ttyl
    Farrell J. McGovern
    3Light Studio

    --
    CAN-CON 2019 - Ottawa's only book oriented Science Fiction Convention! October 18-20, Sheraton Hotel, Ottawa, Canada h
  5. Re:Best Sound Card and 3D Video Card for Linux by heroine · · Score: 2

    Avoid the soundblasters. The soundblaster 2^n cards are limited at -2dB for recording so you only get 15 bits for recording and noise.

  6. Linux Was The First OS Streaming Mp3 by szyzyg · · Score: 2

    Or at least I made the first server available to the public which would stream live mp3 to any number of listeners - over a year before Nullsoft grabbed all the glory with Shi^Houtcast ;-)

    Ok... hardly commercial quality - but it was good fun... and there is one thing about my original server that set it apart from anything else I've seen - The whole thing was implemented in abotu 15 lines of bourne shell.

    Sometimes linux leads the way, sometimes it follows, but when it follows it does it better.

  7. RTcmix, MAX, and other stuff by deity · · Score: 2
    A few underrated/underknown projects:
    • RTcmix - a real time sound synthesis/processing language/library. RTcmix is dope. I don't think the newest version (2.1), which adds really good Linux support, is publicly available yet, but it should be out the door real soon if it isn't yet. RTcmix can be easily interfaced with applications, because it can listen for commands on a TCP/IP socket. Trust me, it's very cool, and much easier to use/learn than CSOUND. Dave Topper (topper@virginia.edu) is the primary maintainer or RTcmix, as far as I know.
    • Max - jMax was released by IRCAM under the GPL recently, but it needs crazy work in order to get to the state that the Mac version is in. Max is probably the coolest music application ever written. For those of you who don't know, it is a visual programming environment for real time control of anything MIDI controllable. Work is underway, as far as I know, to hook up RTcmix to Max as a signal processing engine (similar to MSP).
    • Rt - Paul Lansky's real-time digital mixing program is a fabulous tool for mixing sounds. I haven't used it for performances yet, but it is damn good for constructing certain kinds of pieces. Several attempts at porting to Linux are in progress, but none of them are terribly stable yet. Check out Dave Phillips' page for more info.
  8. Re:Support for high end recording cards by clifyt · · Score: 2

    Echo has announced earlier on their web site that they are not supporting OpenSource for their line of cards. I don't know if this means the driver will never be available or if they just won't OpenSource them and maybe provide a binary at some point. Check their website for more information.

    clif

  9. I just got jazz last weekend by josepha48 · · Score: 2
    jazz 4.0 was released and it is open source. So I got it and fired it up. It was a little difficult to get started up. It comes configured for Also I think so I had to change it to OSS and then I had problems with it starting up and not finding my synth device. I then looked at my MAKDEV script and discovered sequencer2 was comment out. Not sure why RH6.1 does this though, but I uncommented this out and ran the script and I was off and making music. Then my roommate came in and wanted me to put this score in and so I did and he was impressed. It has a piano that allows you to pick your notes, and also allows you to set up drum tracks. The help has to be downloaded seperately but I just played with it and learned how it works. I did not think it was that difficult to do. However I do recommend that they should not hard code the sequencer. They should probably make it an option in their option file. I mean if you have an option file why not really make use of it. I'd love to see them move away from the motif interface, and to qt or gtk. I love to see Rosegarden do the same thing too.This is just my 2 cents, but I think that this time next year linux will be a real good and viable option to Windows, in all aspects. But by then Mac OS X will be out and I may need a new Mac instead of a PC. OS X sounds hot. The power of UNIX OS with a windows/Mac like GUI.

    send flames > /dev/null

    --

    Only 'flamers' flame!

  10. Re:Support for high end recording cards by ed__ · · Score: 2

    There is an opensource driver in ALSA for among others, RME's hammerfall (rme-audio.com). It has digital io for i believe 3 adat lightpipes and something like 52 channels. see the page for full details and what not.

  11. GLAME? by EnderWiggnz · · Score: 2

    I've got high hopes for GLAME... the internals are starting to to look good, and there is a lot of activity. Now we need some audio experts to come in and lend their knowledge to make this a great tool.

    ANd a question - what soundcard would you use for processing with linux?

    --
    ... hi bingo ...
  12. Multitrack HD recording by wct · · Score: 2
    In the multitrack HD recording area, Paul Barton-Davies is working a on a promising looking application called Ardour, developed synchronously with the ALSA RME Digi96 driver. This looks like the beginning of Pro Audio sound support under Linux, and we all know it only takes one application to get the ball rolling :)

    His other project Quasimodo is even more ambitious - a modular synth system, where the modules are written in CSound code. This makes a whole bunch of modules instantly available, and I can see an application like this being embraced by the audio/DSP Education sector, where CSound is used to test pretty much everything. I'm mentioning theses programs not because I have any affiliation with the project, but Ardour and Quasimodo are two of the most promising Linux audio applications out there, and it's a shame not more developers are working to get them finished.

  13. Digidesign HW support? by Wohali · · Score: 2
    I wonder if anyone has spoken to Digidesign about supporting their Pro Tools hardware. You can pick up older Pro Tools III hardware I/O for a good price these days (compared with the latest Pro Tools/24 stuff), and while they are PCI cards "designed for the Mac," I don't believe that there's anything specific to the hardware itself that would prevent x86-based Linux drivers from being written for them (even for LinuxPPC! My prayers are with you, Jason!) Then again, I could be wrong...

    I'd be willing to work on this project, as I've found out that I may not be able to bring my G3 Mac with me to my new abode for space considerations, but I still want to have my Pro Tools audio setup....

    --
    "But always she's the spectre of uncertainty I first endured, then faded, then embraced..."
    1. Re:Digidesign HW support? by barleyguy · · Score: 2

      Actually, the Pro Tools hardware works on the PC, as well as the Mac. They have NT Software for it, though it's still not as nice as the Mac stuff. Actually, I don't believe NT is robust enough in general to use for music production. 95 is actually better for this type of thing.

      I have a side job as the computer tech for a small recording studio. I'd love to use something other than Windows, but unfortunately, multitrack audio support is very difficult to find on other platforms. BeOS probably has the most potential, because of its real time scheduling and large file size capability. BeOS handles large files really well. I've heard that its limitation is somewhere around 5 pentabytes or so, which should be sufficient for quite a long time.

      If there was a Linux distribution with a different filesystem (Ext2 doesn't like large files, by large files I mean multiple gigabytes), hardware support for 4 and 8 track audio cards (I've got an Antex Studiocard and a Gadget Labs 8/24 card), and some software that musicians can use comfortably (my brother, who runs the studio, is a drummer, not a computer person) we'd be set. Unfortunately, we're not even close to there yet.
      P.S. Cool edit pro for Linux would be really cool. But without all the other pieces to support it, Syntrillium would be wasting their time.

      --
      --- "So THAT's what an invisible barrier looks like!" - Time Bandits
  14. Multitrack recorders/mixers by Eponymous,+Showered · · Score: 2

    There are apparently several. I have used SLab and it's quite decent. Certainly full featured. I haven't used it enough to know if it's ready for primetime, but if it's not, it must indeed be close.

  15. Re: Soundcards for Pro Audio by Christopher+Whitt · · Score: 2
    First of all, this may have already been mentioned, but there's an excellent linux audio site here.

    As for soundcards, I'm not heavy into PC-based recording, but I know names like Creative and Turtle Beach are NOT the choice picks.

    There's a report on PC sound cards at PC AV Tech that does some real quantitative comparisons, and includes some pro cards. The summary is here.

    As for brands, start with


    Somebody mentioned older Pro Tools hardware available cheaply, but I don't know if that's usable without the Digidesign software.

    I think most pro applications and users would be covered by the brands above. I know the basement hobbiest may not go for those cards, but I think most people coming from a music/studio background will.

    Are these brands supported under *nix? It's hard enough getting stable drivers for some pro cards for NT or 9x. I don't imagine that there's the audio equivalent of the gaming industry pushing manufacturers to release hardware specs so that open drivers can be written by the community.

    I have to think that driver support for the pro audio cards will be a critical issue in the near term... I would even consider getting involved in this type of project over the summer once I'm finished school (12 days until I finish classes for my EE!!).

    Still, I'd love for somebody to correct me.

    Christopher
  16. Music/Demo Scene by Kagato · · Score: 2

    I think what has been lacking is a real scene that drives the need for tracking utils. North America (which slashdot is pretty centric too) has never been a huge hot bed of demo's and music. Sure, there were arists making some cool stuff here but the tracking/demo parties held in North America were never as big/good as the European counterpart.

    That being said the main point it Linux is at the point where the hardware support can work well with tracking. Linux has a great potential and that isn't being tapped.

    The biggest area is in the ALSA-Project. There is a fair amount of chatter around the new RME support. Another company which I think get's looked over but is already supported by ALSA are the Hoontech products. Hoontech makes some of the most unusual sound products I've seen. With the ability to expand Digital and Midi I/O and insanely cheap prices I think the poor mans (linux) mixing console is near.

  17. Real Time problems by Farq+Fenderson · · Score: 2

    One big problem I've noticed in real time audio for Linux lies in the code. Decent trackers for DOS are written in 90-100% assembly. It seems no one who does sound development for Linux is prepared to write a lot of assembly routines.

    There's a real-time virtual 8-track called Goat Studio (or Goat Tape, by some) that come with the source. It's for DOS, and it's got a chunk of assembly in it. I would port it, but I'd have to learn two styles of ASM for the x86 -- which I don't have time to do. Goat Studio is very useful for laying down tracks, since it uses full duplex to play the non-muted tracks for you while you record one. The only physical limitation is that you can only record one track at a time, but this won't concern most solitary musicians.

    Back to the point. Many real-time apps must be written in ASM since the processing has to be fast, perhaps you can get away with C these days, since we're no longer dealing with 386s, but PII/400s -- but I still keep a 386 with a tracker and some other stuff on it to bring to tracking parties (like MGF). I'm not going to take my best box on the road with me if I'm going to need it for something else, but a 386 or 486 plus a soundcard I can pick up for nothing.
    ---
    script-fu: hash bang slash bin bash

  18. Recording studio for Linux? by Bodero · · Score: 2

    my golly, I'm still recording with my bash script that 'cat's from '/dev/dsp' ;)

  19. Re:This is a little different but same topic... by JDax · · Score: 2

    Anyway I was told to price solutions for producing audio and video content. Windows Media encoder and the server is free with IIS and RealProducts are EXPENSIVE.

    I want the ease of WMP in WMP format on the stability of *nix/BSD. Oh and free too.


    Real offers the free "basic version" of Realserver 7 for Red Hat and its clones. &nbsp Catch is that you're limited to 25 streams (and something else is missing, I think). &nbsp I have it running on Mandrake 6.5 and Red Hat 6.1 and although I haven't really put it through its paces, it's still a nice piece of work - and for free! &nbsp To do the live streams, you need RealProducer 7, which they also offer as a free basic version for Linux. &nbsp This product is unfortunately beta (or better, alpha) and needs a little work - but I'll putz around with it some more.

    The one reason why I prefer Real's products is the fact that you have more granular management of bandwidth consumption - critical for dial-in users with slow modems, and I've seen some WMP stuff that is REALLY crap! &nbsp You also get a real nice web interface to configure and graphically monitor the server.

    As an ISP, I expect that you'd obviously have far more than 25 simultaneous streams, but if you distribute 25-stream licenses across several cheap Linux boxes, you'd save yourself some bucks... &nbsp It would probably make sense to distribute this kind of stuff anyway.

    --
    -- Win2k: "It's not so much that it's only 65,000 bugs, it's just that they stopped at 65,535 to prevent an overflow."
  20. Re:Best Sound Card and 3D Video Card for Linux by JDax · · Score: 2

    I am going to build or buy a Linux box and was wondering what Sound card is best supported in Linux? Preferably one that RedHat 6.1 will autodetect and configure for me.

    If you pick a Sound Blaster card (including the recent Sound Blaster Live!), then you'll be pretty safe and good to go. &nbsp I setup the basic version of RealServer 7 on Red Hat 6.1 and stuck in a cheapy Sound Blaster 16 ISA card (in an EISA slot) and RH's "sndconfig" utility found it right away. &nbsp This is in preparation for giving RealProducer 7 a shot. &nbsp I found that RealProducer doesn't seem to like ALSA drivers (prefers the OSS drivers), so if you have a Sound Blaster card, you probably won't have much of a prob.

    Also, does anyone have any recommendations for what Video Card has the best combination of speed 2D/3D, OpenGL implementation, and open source drivers (though they don't have to absolutely be open source, it is a preference)

    As for video cards, I'm not into that stuff but Matrox cards are supposedly very good and have decent Linux support.

    I am mid-level user who can compile my own kernel and I have 4 or 5 Linux boxes, but none with high end video or sound. Thanks for any help, Fox

    Kernel compiling is fun... ;-) &nbsp Although I've discovered that most of the latest kernels shipping with the "Red Hats" (like Red Hat 6.x and Mandrake 6.x/7.x) are precompiled with sound modules enabled, so you might not have to do anything. &nbsp It's also preferable that you load your sound as modules anyway...

    --
    -- Win2k: "It's not so much that it's only 65,000 bugs, it's just that they stopped at 65,535 to prevent an overflow."
  21. Re:This bugs me by reaper · · Score: 3

    Sorry to say this, but I know plenty of musicians who use windows for music production. Live. Even such "Kiddie Grade" programs, like MixMan Studio, are amizingly effective if you use your own samples, and throw a little beat matching with wax on it. Most of the Mac stuff is production quality, and the BeOS stuff is still not too well known.

    So why is linux good for this? Simple:

    • Multithreaded across multiple processors. Win 98 can't do this, and NT won't support a lot of hardware, or run some of the software.
    • Efficiency. Running X with a lightweight WM, and very little other stuff will generally beat out Windows in terms of OS overhead, and available clock cylces to mix it up wit' (,yo!).
    • Stability. I have had stuff crash on stage for me. Uncool.

    OK, so what does windows have going for it? Glad you asked:

    • Lots of software. 'nuff said.
    • Support for peripherals. Nothing sucks more than the sound chips in a laptop. Almost any outboard processor would be better. The real high-end stuff like the Event Layla, won't run on Linux. Forget USB devices.

    So if I wuz going to sit down and write my ultimate appz for live performance, what would I do? 1] KeyKit for MIDI support. 2] Something like TerminatorX for loops, but with the ability to sync to a clock. 3] a software synth like re-birth. Add some turntables, and my board, and life will be good.

    opinions? Am I wrong? Better ideas?

    --
    - Dan
  22. Why Linux ain't gonna cut it for DAWs yet. by dragonfly_blue · · Score: 3
    DAWs (Digital Audio Workstations) have to fit specific needs to be interesting to many musicians. There are a few serious obstacles for home studios and pro studios before Linux as a DAW operating system can be a viable choice.

    Aside from the fact that I can't get Linux drivers out of Event (actually Echo Audio) for my Gina/Darla/Layla cards (strangely enough, I can get BeOS drivers and even NT drivers now) here is a short synopses of why I, a lowly amateur musician, won't be looking at Linux as a Music OS for a long time.

    I am not a big MS fan, but music composition/ sequencing/ sampling/ recording/ effects software (lots of categories here) for Windows 9x is pretty decent. I've played with a lot of them, and they work. Doesn't mean I won't look at other choices though, primarily because Windows crashes frequently. The plugins architecture is an excellent touch. (i.e. a reverb plugin becomes available in all DirectX-compatible recording programs when it's installed.)

    Unfortunately, I think a lot of energy that could have gone into interesting Open Source music projects has been used by programmers writing music shareware/freeware for Windows. AudioMulch, Anvil Studio, and many others, are good examples of excellent, innovative (especially AudioMulch) software written for poor working musicians without high budgets. And, yes, they are only for Windows, sadly. I'm not sure why, except that for a long time it was difficult to get sound cards working under Linux.

    Why do most of the projects I see on Linux just copy other software? Why can't somebody write some audio software for Linux that just blows my socks off? I've seen some pretty freaky, damn cool programs come out for Macs, hell, even Windows, in the last year or two. They were innovative. They weren't knockoffs of software on other platforms. Maybe I'm not looking in the right place, but it is not enough for Linux to ape whatever MS and MacOS does.

    Even if some cool audio programs were written for Linux (and I know there are some available), I don't think I would use Linux for my multimedia stuff yet. Why? The desktop environments and GUIs are (how can I put this without getting flamed) not quite comfortable to work in yet.

    Fonts are aliased, widgets are inconsistent, etc; maybe it's just the fact that I use KDE (should I switch to Gnome?), but it just plain doesn't do it for me yet. And yes, I know, "but that's what I love about Linux, is it's totally customizable." Well, not everyone wants to have to customize every damn thing on their system just to get it to work, Spunky.

    Even Netscape (a universally available browser under Linux) looks like crap compared to certain Windows browsers. Why is this??? It's not like it's a 1.0 release or something. And please don't tell me to copy my Windows TT fonts into the appropriate system directory in Linux; that is just another in a long line of things I shouldn't have to do to make Linux work out of the box. If I won't do it, you better believe most musicians (no offense to pro musicians out there) won't even know where to start.

    I don't know how the latency issues are compared to BeOS or Windows, and quite frankly I don't think I care. Even under a high latency system like Windows 9x I have been getting acceptable results, probably because I don't use MIDI stuff.

    Please don't misinterpret this to read that I think MS RULEZ! or that LINUX SUX! because hopefully we are all intelligent enough to realize that is not what I am saying at all. If I thought that, I wouldn't have multiple boxes running multiple OS's and wouldn't be hanging out at Slashdot in the first place.

    Don't get me wrong, I would love to see somebody come along and fix these things in the next generation of Linux distros. But the fact is, I need music software/hardware support in 1997, not in 2003 (it has been around in one form or another for 20+ years now). I love Linux for my servers, but for a DAW it needs a serious, or maybe just a whole bunch of tiny tweaks ;-) makeover.

    --
    Free music from Jack Merlot.
  23. Let's Be Honest to Ourselves by Listen+Up · · Score: 3

    Here is what the real problem is with audio and Linux. I am not going to be taking sides on this issue, so please don't flame me as such. Linux, as far as I know, cannot process realtime audio. This has do with really, really bad latencies in the kernel (especially)and underlying subsystems with prevent realtime audio from working in Linux at all. This is the same story with WinNT. I purchased BeOS because of its incredible audio applications and its ability to do things with audio and video that I have never seen before. So being curious I decided to do some research on the subject of why other OS's cannot do things such as realtime crossfading and realtime input/output/mixing. If you do some honest research you will discover a lot of things that will really open your eyes. Most notably that although everyone here loves Linux, it was never meant to be or designed to be a realtime audio processing OS. Has anybody else done real honest research into this topic like myself?