Sunday, July 30, 2006
Application: FreeMind
Freemind is an application useful not only for music projects, but for any project worked on. Freemind is a program for mind mapping, a method of putting ideas into a chart that allow a person to think more freely about the project and make connections they may have otherwise missed. This method was outlined very well in the book, How to Think Like Leonardo Da Vinci. I read this a few years ago and have since used the methods for anything from school papers to music projects.
Freemind makes this extremely easy to do. In the example above, I have mapped out some of my current music projects so you can get an idea of what this is and how it might be useful to you.
It is a Java application so it's available for Linux, OSX, and Windows.
Links
Freemind Homepage
Mind Mapping (Wikipedia)
Keep checking back for more good stuff to come. Also, be sure and check out Benedict's SynthStudio Pack, a collection of VST's in use at Linux Rock Star. See the banner on the right.
Thursday, July 27, 2006
Update: 64 Studio
" 64 Studio is developing a collection of native software for digital content creation on x86_64 hardware (that's AMD's 64-bit CPUs and Intel's EM64T chips). It's based on the pure 64 port of Debian GNU/Linux, but with a specialised package selection and lots of other customisations." - from the 64 Studio Homepage.
According to Distrowatch.com, their is a new development version available.
Nice to see Linux music and sound apps compiled for 64 bit CPU's.
Tuesday, July 25, 2006
Virtual Instrument: Aeolus Virtual Pipe Organ
Here's an incredible synth that I've yet to see anything similar on Windows or Mac. This synth recreates (synthesizing, not with samples) a full sized pipe organ like those that have made beautiful music for hundreds of years.
This JACK enabled app is very small and light on CPU usage. Once it is started up, be sure an click on some of the options to produce sound, it doesn't make any noise by default.
I just saw the movie Pirates 2 and I won't ruin it for you, but keep an eye open for a very unique pipe organ. Also, there's a great NPR Pipe Organ radio show called Pipe Dreams. There are lots of archived shows.
Links: Aeolus Homepage, Aeolus Page @ MuSE Wiki
Monday, July 24, 2006
Effect: LADSPA Vocoder (Howto)
While working on a project, I decided I needed a Vocoder. A vocoder, for the uninitiated, makes the user sound like a robot, a cylon, a transformer... whatever you want. This is accomplished by mixing the formant (voice) with the carrier (synth sound, usually a drone). The combination results in something very strange and robot-like.
Back in the day, one needed an expensive vocoder unit to do something like this. Some VST plugins range up to $150 (Orange Vocoder). Now, however, Linux Rock Star's can do it with a plugin and a softsynth.
There's an excellent LADSPA plugin called, surprisingly enough, Vocoder. At the homepage, there is a good explanation of the workings of a vocoder. We'll look at making the vocoder work here, however. Having the regular LADSPA plugin pack, JACK, and Jack-Rack installed is a prerequisite for this. A realtime kernel patch doesn't hurt at all.
Pick up the plugin here. Now, you'll uncompress it in a directory and find a bunch of sourcecode. Before you compile and install this however, there is a patch that will make it work with Jack-Rack really well. Get the patch, provided by a very cool user on the Linux Audio Users group here.
Now the tricky part. Open up a shell and go to the directory where the files are. Make sure the patch is with the source code you unzipped. Now, type "patch vocoder.c stereo-0001.bin". This will modify the source code to make it jack-rack compatible. Now run "make" and "sudo make install" (it will ask for root password). It will put this with the rest of your LADSPA plugins, possibly overwriting the old vocoder (same thing without the jack-rack patch).
Now open up JACK and start it. Also launch jack-rack. Now you should see "Readable Clients" on one side, and "Writable Clients" on another. Both should have "alsa-pcm" in them. Now start up your favorite synth. This will be the 'carrier' of your robot voice. A good saw wave could do nicely, but be sure and try out all kinds of things. ZynAddSubFX, amSynth or a VST (polyiblit is shown) should do nicely.
Next, open up jack-rack. Click Add -> Uncategorized -> V -> Vocoder. This will add a vocoder to your effects chain in jack-rack. Here, you can choose the number of bands, etc. (I won't go into what that is here).
Now for the somewhat tricky part: First, in your mixer, select your recording source (microphone, for example) then go back to JACK connections. Click the (+) buttons next to jack_rack in "Writable Clients". Notice the two inputs. One of these will be the formant and one will be the carrier. Connect "alsa_pcm" under "Readable" to "in_1" under "jack_rack" in "Writable". Next, select the synth and connect it from its heading under "Readable" to "in_2" under "jack_rack" in "Writable". Click on the screenshot at the top of this entry to see what this looks like.
Everything's almost there. Next, either make the synth play a drone note and talk into the microphone, or play some notes and talk. By playing notes, the vocoder can, "sing" according to what is played. Welcome to robotland. Vocoder's can be a lot of fun. Experiment with it and have fun using Linux!
Acknowledgements: Thanks Linux Audio Users List.
Disclaimer: I'm not responsible if anything goes wrong or is messed up; you're on your own.
Saturday, July 22, 2006
Exclusive: Ardour Developer Interview (Sampo Savolainen)
Sampo Savolainen is a developer for the Ardour project, an open source digital audio workstation for Linux and Mac OSX (with a Windows version in the works).
Thanks for doing an interview with Linux Rock Star! I've really enjoyed using Ardour, an application to which you contribute as a coder. I understand you're a programmer and a musician?
No problem. I'm glad you like Ardour.
I am a programmer by day and play keyboards by night. I'm in a Helsinki based power-punk-pop band called Garage Flower (http://www.garageflower.net). I also engineer most of our bands' recordings and do that for a few other bands as well. Using Ardour, of course.
To be honest though, I'm also a programmer by night. After my work day is finished Paul Davis and the other developers are just starting their day on the other side of the pond. :)
How long have you worked on Ardour?
I started using Ardour myself in 2004. Back then the development was focused mostly on features. I started using Ardour and bumped into some bugs. Irritated by the issues, I started creating patches for Ardour. Eventually Paul offered me CVS access, probably only because he got tired of applying the plethora of patches I kept sending him.
What is your role on the Ardour team?
I focus mainly on quality. I enjoy squashing bugs. :)
The only "features" I've implemented in ardour so far are few. The main feature is the SSE assembler code for speeding things up on x86. I'm also responsible for the FFT analysis window in (the upcoming) 2.0 version.
What made you decide to get involved with an opensource project?
Simply put, I wanted Ardour to work for me.
Will the new version (2.00) of Ardour support VSTi instruments?
Yes.
Ardour got selected as a project for the Google summer of code. Dave Robillard got the job of doing MIDI for Ardour. By the end of the summer, Ardour should have rudimentary MIDI support. This means that Ardour will be able to record and send MIDI, but we still have to design and implement proper editing for MIDI.
With MIDI comes also VSTi support, as VSTi plugins are only VST plugins with a MIDI port.
Does Ardour support VST patch banks? Can people load presets? (I've noticed this feature lacking in FST and DSSI-VST, presumably because it's a host function?)
VST chunks are not supported by Ardour. We have our own mechanism for plugin presets. Alas, some VST plugins use chunks in ways which make them difficult or impossible to use without chunk support. Ardour supports presets for all plugin types (currently LADSPA and VST). But Ardour doesn't support presets for "plugin chains". In Ardour, a plugin preset consists of the settings for one plugin. We don't
currently have a scheme for saving presets for a set or chain of plugins. You can however copy or cut and paste multiple plugins within one session.
Is there some controversy with including VST support? Doesn't it use the non-opensource code from Steinberg?
Yes and no. We only use a header file from Steinberg's VST development kit. The header allows us to make sense and communicate properly with a binary (compiled) VST plugin. Also, compiling Ardour with VST support is perfectly legal.
The problem stems from not being able to redistribute the VST header file. The VST development kit license from Steinberg prohibits anyone from redistributing any part of the development kit. This means that we can't package the VST header file with Ardour. We (or anyone else) can't distribute binaries built with VST support because under the GPL we must be able to provide the full source code for the program.
(For the people who aren't programmers, you should think of a header file as the index of a book. The index tells you what is in the book and where in that book you can find what you are looking for. It doesn't tell you the plot, but it does reveal quite a bit of it's structure.).
Have you heard of anyone using Ardour in a professional studio setting yet?
Many people do and many have done so for years. For example:
Mirror Image Recording Studios in Minnesota, MI (http://multitrack.us/) has been using Ardour for recording sessions since 2004. Their involvement with Ardour has been the subject of an article on SoS (http://www.soundonsound.com/sos/feb04/articles/mirrorimage.htm)
Harrison/GLW (http://www.harrisonconsoles.com) is using Ardour as a part of their new product line. Here's a picture of the product from the NAB conference in April 2006: http://ardour.org/node/227
How can the end user contribute?
In my opinion, the best way to contribute is to tell us what you like and don't like about Ardour. If you run into a bug, tell us. If you think Ardour doesn't fit your work flow, come talk to us. If you have a compelling case, we just might make Ardour fit your needs better!
Also, reporting bugs is a very important way to contribute. You shouldn't just wait for a bug to get fixed. The more active you are, the sooner the bug will be fixed.
And of course, one shouldn't forget to mention the donation button on ardour.org ;)
What do you think of Linux as a music platform (past, present, future)
The past of Linux audio is filled with a lot of very interesting sketches for applications, but not many of them were "production quality". I took my first serious look at linux audio software in around 1999. At that time there were quite a lot of promising projects, but they had compilation issues and realtime support hadn't really matured yet. It was quite daunting even for a "veteran" Linux user.
Today we have many wonderful applications and it's more than possible to produce music on Linux. We have standards for plugins, jackd for audio plumbing and transport, a plethora of libraries to help development and proper realtime rights management is just about to hit the mainstream distributions.
All of this is making Linux an easier platform for both audio users and developers. For a long time now Linux has had really good realtime performance but it has been inaccessible to normal (non-root) users without kernel patches and a lot of hassle. When this gets easier (and adopted into all distributions), we should be seeing more users and hopefully Linux audio will become accessible also to less technical
users.
The technologies I'm waiting for currently are LASH and LV2.
LASH makes it possible to store complicated inter application setups. With LASH you can save the state of all applications at once. It makes it possible to restore a complicated multi-application session with only a few clicks of a mouse - LASH even takes care of launching the applications.
LV2 is the upcoming plugin standard. It does not bring anything new to LADSPA by itself, except for a wonderful model of adding abilities (extensions) to the plugin system without endangering compatibility with hosts / plugins. This means that new features can be rapidly tested and deployed with plugins and that widely adopted extensions will get standardized.
How's the weather in Finland today? =)
It's been unusually sunny and warm, thanks for asking. Nothing like the US east coast though, I hear it's so hot that the trees are whistling for the dogs. (the bad joke lent from http://phoenix.about.com/cs/wacky/a/hotjokes01.htm)
Kiitos paljon!
Ole hyvä!
Thursday, July 20, 2006
Essential Reading: Linuxaudio.org
At Linux Audio dot Org there are a number of very interesting articles in PDF format on Linux Audio. Very good reading.
Tuesday, July 18, 2006
Update: New Musix 0.50 in 24 Hours
Musix 0.50 will be ready for download in 24 hours, aprox.
http://www.musix.org.ar/en/
Update: BEAST (Bedevilled Audio System)
There's a new version just released of BEAST. I haven't tried it yet, but it looks awesome.
From the BEAST Homepage:
Beast is a powerful music composition and modular synthesis application released as free software under the GNU GPL and GNU LGPL, that runs under unix. It supports a wide range of standards in the field, such as MIDI, WAV/AIFF/MP3/OggVorbis/etc audio files and LADSPA modules. It has excellent technical abilities like multitrack editing, unlimited undo/redo support, real-time synthesis support, 32bit audio rendering, full duplex support, multiprocessor support, conditional MMX/SSE utilisation for plugins, precise timing down to sample granularity, on demand and partial loading of wave files, on the fly decoding, stereo mixing, FFT scopes, MIDI automation and full scriptability in scheme. The plugins, synthesis core and the user interface are actively being developed and translated into a variety of languages, regularly assimilating user feedback such as from our FeatureRequests page.
from the [linux-audio-user] mailing list:
BEAST/BSE version 0.7.0 and BSE-ALSA version 0.7.0 are
available for download at:
ftp://beast.gtk.org/pub/beast/v0.7/
or
http://beast.gtk.org/beast-ftp/v0.7/
Monday, July 17, 2006
Application: Hydrogen
One excellent must-have app for Linux audio is Hydrogen. Hydrogen is a fully capable drum machine program. There are a lot of kits available, and it is, of course, JACK compatible.
Hydrogen can act like the standard techno TR-909 but also does an excellent job with other styles. I was able to make metal syle double bass drum lines quite easily as there are a lot of editing options, such as 64 ticks per pattern that allow detailed editing of the pattern. It's also fairly simple to sync hydrogen with programs like Ardour.
You can find the Hydrogen homepage here: Hydrogen Music Homepage
Saturday, July 15, 2006
Virtual Instrument: ZynAddSubFX
ZynAddSubFX is a free instrument under the GNU liscence made by Nasca O. Paul from Romania. It is available natively compiled for Linux, but also for Windows, OSX and as a VSTi.
A Brief Look
Upon booting up ZynAddSubFX and patching it through JACK, I was greeted with a slightly boring gray interface. Being spoiled with today's flashy GUI's, ZynAddSubFX was initially a little disappointing. However, clicking on Instrument -> Instrument Bank made me more excited as a large list of instrument banks pulls up.
The presets are surprisingly diverse, with many of the standards used in making music. From Arpeggios, to Organs, to fat analog leads, to harsh digital FM and Rhodes, there's a lot here. The surpring thing was that it does a good job with nearly every kind of preset making ZynAddSubFX a very versatile program. Of particular interest are the "Choir and Voice" section with some very useful OHH's EEH's and AHH's. Choir and Voice patches seem less present in most synths and there are plenty here. Also nice are the strings section, Blade Runner, you say?
Some extra features include a virtual keyboard, a direct to WAV recording feature and several different types of effects (Reverb, Wah, etc.), also, a beginner and expert mode for the interface.
The sounds are amazingly convincing and sound like the real thing (at least what I've heard of the real thing from albums). My biggest disappointment was the GUI and programming interface, which I found confusing. I couldn't find, for example the resonance and cutoff for a synth bass patch.
The author does not ask for any donations on his homepage and states you are under no obligation to pay but encourages you to think about Jesus. With the amount of useful sounds this program has, this program could easily find a home in any musician's studio.
LinksZynAddSubFX Homepage
New Portable Linux Audio Machine: Trinity
I first saw this on Create Digital Music. This is a portable Linux audio workstation. It looks like a gaming handheld but apparently has Linux and phantom power and lasts up to 4 hours on batteries. This is pretty cool, but the price is fairly high, $999. Still, it's probably worth it if you need something like it.
Some details were revealed in an interview on Create Digital Music.
- Currently runs Debian / Blackbox / Audacity (I love Blackbox, very minimalistic and fast)
- USB Ports (Hopefully you could run a keyboard / mouse in them, or maybe a USB MIDI keyboard)
Keep checking back at Linux Rockstar, there are some great new articles coming up!
Friday, July 14, 2006
VST's in Linux (Followup)
There are some updates to my previous posts about VST's in Linux. Some information was slightly inaccurate and I apologize.
Here are the updated methods for VST support in Linux. Method #3 was inaccurate and there is now a "historical" method 3.
Method #1
FST
This program, once compiled and running, must first have "lashd" setup and running. Once this is accomplished, a synth can be loaded like: fst filename.dll
Note: This is technically what Ardour uses, the FST program, to load DLL's. Ardour has actually had VST support in previous builds, but it is now coded in Ardour 2.0.
Method #2
DSSI-VST
Once installed and running, use this: vsthost filename.dll
Method #3
vstserver
FST is a descendant of this development. No longer supported or worked on, this was the first method for using VST's in Linux.
LMMS support VST's also, but I am unsure which method it uses right now. Thanks, Sampo, for pointing out the inaccuracies.
Thursday, July 13, 2006
Application: Meterbridge (JACK capable)
One of the many useful Linux audio apps is Meterbridge. This program display a graphical representation of your sound in one of several forms. This program is JACK capable, which means you can monitor input levels coming from anywhere, for example, your microphone, or a virtual instrument. It connects like any standard JACK connection.
While this program comes standard in several linux music distributions, many may be unaware of the different display options options available.
They are
PPM - Peak Program Level Meter, a basic display. (basic gauge)
VU - Volume Unit meters (vintage looking)
DPM - Digital Peak Meter (like on a DAW)
JF - Jellyfish Meter (aka Goniometer) (Rather interesting)
SCO - Scope (basic oscilloscope)
for full information on each of these displays, including pictures, check out the Meterbridge homepage.
Keeping levels at proper amounts is an important task to keep away from having unwanted distortion in recordings. Hopefully, this post is enlightening about metrbridge and it's capabilites. Give it a shot.
Links
Meterbridge Homepage Here
ZR-3 Opensource VST (Organ VSTi Pictured in Screenshot) Here
Linux VST Database
Just a quick addition to the last post: there is a growing database of user experiences with VST plugins in Linux. Keep in mind that some entries may refer to outdated version of FST or DSSI-VST and they might work now.
Linux VST Compatibility Page
VST's in Linux
VST is a popular format for Virtual Synthesizer applications. The format was originally designed by Steinberg, the maker of Cubase. The format has become very popular and there are a wide variety of synthesizers (sometimes free): from classic analog emulations (Moog's, ARP's) to computer chiptunes (C64 SID, NES) to samplers, cell phone tones and much much more. The shere variety and innovation is pretty spectacular, even among the free ones.
This format was previously limited to Windows and Mac users. Indeed, the format goes somewhat against the philosophy of opensource and free software. Richard Stallman, "the" free software advocate, would probably not like you using VST's.
However, unless you're really adamant about that sort of thing, you probably just want to use cool software in Linux. Yes, you might lose some of your freedom (freedom to the source code, to make modifications, etc.), but there are some excellent synths out there (QuadraSID, for example).
There are currently several methods for using VST's under Linux. Before getting started, as with any Linux audio app, you may want to have realtime patches for your kernel that allow the synth to run with maximum performance (I'll cover this on a later post).
You will probably find that VST support does not come standard with most Linux distributions. This is because the source headers from Steinberg are necessary for this and they are not free/open source, though you can download them freely. You will need to get them before you can use any of these methods (probably).
Method #1
FST
This program, once compiled and running, must first have "lashd" setup and running. Once this is accomplished, a synth can be loaded like: fst filename.dll
Method #2
DSSI-VST
Once installed and running, use this: vsthost filename.dll
Method #3
Compile your software with VST Support
LMMS supports this and Ardour has this feature upcoming in Version 2.0.
There are varying degrees of compatibilty between the three methods. Try all of them for the method that works best with your synth. Note that if you can't get your VST's working, or you just don't want to use them, all is not lost! There are a number of great Linux open source synths available that we'll be taking a look at soon!
Links to some of the Great Free VST's pictured above:
Arppe2600 (ARP 2600 Clone, works in Linux) Here
Syntendo (NES Sound Chip Clone, works in Linux) Here
* Not Free * Wavesphere (Part of the SynthStudio pack - VERY affordable!)
Wednesday, July 12, 2006
JACK - The Cable Guy
Welcome back to Linux Rock Star. Today we'll take a brief look at JACK.
From the JACK homepage:
"JACK is a low-latency audio server, written for POSIX conformant operating systems such as GNU/Linux and Apple's OS X".
Jack is a way of hooking up your music applications to each other. For example, ALSA Modular Synth is used to record a synth pad. Ardour is used to record it. How do you get the signal from ALSA Modular to Ardour? JACK provides a connection that is direct and so the sound played back is exactly as it is generated. Alternately, the sound may be altered with the use of effects, which can also be "plugged" though in JACK.
This is a very useful system and can be used with a wide range of apps. Many have adopted the standard though some apps are not JACK compliant.
One useful feature you may not have tried is the Patchbay. The Patchbay remembers whatever settings you have saved and can have multiple configurations. It may be more convenient not to have to hook up your entire application setup every time you record. It can also be used to jumpstart your creativity this way. One could have different configurations for whatever style of music you are in the mood for. Feeling like techno? Hook up some 303 VSTi's through FST or DSSI-VST into your sequencer and start cranking some bass. Feel like guitar setup? You could have a tuner routed in and a meter bridge to analyze your signal.
Here are some links:
Sunday, July 02, 2006
Welcome to Linux Rock Star
Welcome to Linux Rock Star. This blog documents my various experiences using Linux for the making of music. I review and test all kinds of applications, most freely available under an open source license, including relevant links in case you want to try the application yourself.
There are many music apps available for Linux including Synthesizers, DAW's (Digital Audio Workstations), Trackers, Sequencers and much more. There are also complete Linux Distributions available with all of the programs setup and ready to use. My goal is to cover many of these available programs and make them accessible to the reader.
I'm a college student at Boise State University and have been playing around with Linux since I somehow got it on some 5 1/4” floppies on my 386. A few years ago, I was using Mandrake Linux (since renamed to Mandriva) and tried to compile and run Ardour (a Pro-Tools like DAW). I met with enormous failure as I couldn't get anything to work. I abandoned Linux for audio and used Windows and programs like ACID and Tracktion. These programs worked alright, but for the most part, with my low budget sound card I could never record anything or use softsynths without enormous amounts of lag. This often foiled any efforts I made to produce music.
Recently, I decided I would try Linux again on my desktop, after having a successful semester at school running Xandros and Kubuntu on my laptop. I was impressed by how much easier getting and installing programs had become in some respects, and by how much hardware support had gotten better and things in general had matured.
I had some luck with music specific distributions like Agnula/Demudi and Musix but eventually settled in with SuSE 10.1 which is my current operating system. I am looking into patching the kernel for realtime use.
Thanks for reading through my introductory post. With my next entry I will probably be taking a look at JACK, a “low-latency audio server, written for POSIX conformant operating systems such as GNU/Linux and Apple's OS X.”