Those of you familiar with linux-audio hackery might know the great time-frequency analyser software called baudline. It is an amazing tool for frequency domain visualization of sound, and it also has scientific measurement tools and time domain visualization features built-in.
The application runs on Linux and Solaris SPARC natively, and is not open source. The GPL source is for sale though but the site says “The source code is expensive and it is intended for qualified corporate or institutional buyers” about the price.
And unfortunately there is no port of this beautiful piece of software for the Mac OS X platform yet, so Mac users are out of luck on running this one natively on their computers. Frankly, this was the one and the only one software I happened to miss after my switch from Linux to Mac OS X for doing audio stuff (the things I was using in Linux are mostly also available for OS X so the transition was smooth for the most part).
Being frustrated about the lack of proper realtime frequency domain analyzer software for my platform of choice, and feeling the slight irritation of the awarence of doing little about it for some long time, last week, I decided to try to run this beast in a virtual machine running Linux inside Mac OS X, and to my surprise, it ran quite well; so I wanted to share my experience.
The worst thing about this is that you need to own a virtualization software called VMware Fusion (Parallels Desktop might also work, I haven’t tried it). There are many great free and open source virtualization softwares out there (like Qemu, VirtualBox etc.), but none of the free ones support audio input under Mac OS X, and audio-in support for your virtual machine is a must, if you want to run a software like Baudline that relies on incoming audio. If there is a better option, I’d like to know!
The Linux distro of my choice was Damn Small Linux, which is only 50megs in size, and it “just works”. It even has a premade VMware Fusion virtual machine image available for downloading from its site. Plug it in and it works (it works as a Live CD, and the distro is based on Knoppix).
You will also need a software to route audio from your applications to VMware Fusion. I usually use JackOSX for audio routing but VMware seems to have issues with it so instead, I used SoundFlower, which seemed to work fine.
Now let’s get our hands dirty:
Here are the steps you need, to get it working:
- Get VMware Fusion running on your machine.
- Download Damn Small Linux VMware image from http://damnsmalllinux.org/ (The file you are looking is named something like dsl-x.x.xx-vmx.zip under /current/ directory in the repository.)
- Download and install Soundflower.
- Launch Soundflowerbed (it’s under /Applications/)
- Go to System Preferences on your Mac, then into Sound, select “SoundFlower (2ch)” for your inputs and outputs.
- Click the Soundflowerbed icon on your menu bar and select your soundcard.
- Now extract the dsl-x.x.xx-vmx.zip archive somewhere on your hard drive and run the dsl.vmx file with VMware Fusion. Damn Small Linux will boot and you will see the desktop. From within the virtual machine, launch Firefox go to http://www.baudline.com and download the “Linux x86″ version.
- After the download is complete, launch terminal in Linux and launch these commands:
tar -xzvf baudline_1.07_linux_i686.tar.gz
- Now that Baudline is working, we need to set it up; right click on the display, select input and then devices. Set the sample rate to 44100Hz (or whatever your sound card using at the moment). For further settings and tweaks, refer to the Baudline documentation.
You can now open an audio application on your mac, and if you route its outputs to SoundFlower, you will see the STFT analysis of it on Baudline spectrogram view.
(Spectral image excerpt from Ryoji Ikeda – Matrix 2.6 1111011111)
When you are done with it, right click on the screen, select pause and suspend the machine from VMware Fusion. When you need the tool again, just start the machine and it will be ready for the job in a few seconds. Enjoy…