Tag Archives: free software

PulseCaster released!

Yup, a new release of PulseCaster is finally out with some real improvements. Iffy design? You betcha. Ugly code? Don’t even get me started. Pernicious bugs lurking? Bring it on. But I’m still happy, and you know why?

Working VU meters. That’s right, it took me forever to find the answer that was right under my nose all the time: the GStreamer “level” element. Why build a bunch of bindings to PulseAudio, even if I love it, when I can just set up a GStreamer pipeline with a couple quick Python commands? It seemed to me I pored over the GStreamer docs constantly when I started working on this project, but somehow I just kept missing “level,” when it was all I needed.

The recording guts haven’t changed at all — PulseCaster is currently designed to do just one thing, which is allow you to record two sides of an audio conversation supported by a PulseAudio server to an Ogg Vorbis file you can immediately publish. So if you want to interview someone using a SIP application, you just dial them up, run PulseCaster and set the inputs, and hit the record button.

That being said, this is a 0.1.x series and is nowhere near what I want the interface to look like eventually. I have plans for that, <evil_laugh>mwahahaha</evil_laugh>. But it’s at least the teeny-tiniest bit useful as is, and because it’s Python, it’s eminently hackable if you have the inclination. Just wear shades when you read the code so you’re not blinded by the horror.

The git repo has a TODO list currently, but I’m going to make an effort to transfer its contents soon to Trac tickets at the upstream site, and do a better job at release management. You know, in my copious spare time.


Free hugs.

Now that’s a nice way to go on Valentine’s Day! I love my wife a lot more, of course, but I’m also proud to say that I love free software.

My most sincere thanks to all the people in Fedora and the free software community who work hard every day to make free software better. The daily effort you put in has inspired me and changed my life. Consider this your hug, and have a great Valentine’s Day.

Live from Fedora Moonbase Alpha, part 3.

Quite a while ago, I wrote about the dead-simple process for setting up a microphone with Fedora’s PulseAudio sound system. That was part 2 in a series that was meant to discuss creating a better podcast. At the time, I meant to follow up with a piece on how to do some audio sweetening to make your recording sound better to your listeners. Unfortunately, life and work got in the way, and I didn’t get to part 3 — so here it is, hopefully better late than never.

Thanks to John Poelstra for inspiring me to write this. We had a nice conversation about audio the other day, and I figured it would be worthwhile to capture some of what we spoke about, but also to explain better some of the concepts I tried to pass on to John but perhaps didn’t do it well.

I’m going to assume at this point you’ve been able to capture your audio from a reasonable mic source into Audacity using the record function. You should now have an audio capture with a visible waveform in your Audacity window. Before we move on, you may want to save your Audacity project, or maybe just write the audio to a simple .WAV format file using the Export function.

Audacity lets you not only record audio, but alter it based on algorithms that range from the simple to the highly complex. Audacity is compliant with the LADSPA standard and can use LADSPA plugins to perform some very interesting, useful, or even downright disturbing changes on your audio tracks.

Of course, you don’t have to search them out or build them on your own. There are tons of very useful LADSPA plugins for audio programs available in Fedora repositories. One set we’ll be using is the TAP (Tom’s Audio Processing) set. The package in Fedora is ladspa-tap-plugins; make sure you install that using the Software Manager or another tool before proceeding. Also, you’ll need to restart Audacity if it’s already running, so it will recognize the new plugins.

Keep in mind, however, that all the effects in the world won’t make a crummy recording suddenly sound great. A lot depends on the quality of the original recording, and of course that starts with using a decent mic. “Decent” need not mean “pristine” or “expensive” for amateur use, however. There are solid podcasting mics available at reasonable prices, some less than US $100. Here are a couple easy changes you can make on a moderately good recording that will help it sound better.

You won’t find precise settings below, because the recording you make is going to be different from anyone else’s. You’ll need to listen carefully to decide how to alter the settings for each of these effects. Don’t be too drastic — sometimes a subtle touch is all you need to go from “OK” to “wow”!

Here’s a final note about a setup tweak in Audacity: I find it’s really helpful to change the interface preferences so the VU meters show a wider signal range. By default, they go down to -48dB, which isn’t enough to see what’s happening with noise, especially when you’re working with digital audio that’s capable of a high dynamic range. Open Edit, Preferences and choose Interface in the dialog. Change the meter/waveform range to at least -96 dB, which is the range of 16-bit audio. (You can choose more range if you like, but at our level of work, it’s probably not necessary.)


First, let’s eliminate some noise in the recording. Do try to minimize noise by making your recordings in a quiet room, away from loud equipment like computer fans, air conditioners, your snoring dog, and so on. But I’ll assume you’re not doing your recording in a pristine environment like a treated studio. So you’ll likely have some significant noise in your recording. (If you are recording in a treated studio, good for you! But don’t lord it over everyone, though — remember no one likes a know-it-all.)

At the beginning or end of your recording, locate a section where there is no speaking or substantial background noises, such as from a squeaky chair. Use the mouse to drag through that section of your recording. You only need a second or so for this process to be effective. After you make the selection, you can hit Play to just play the section in question, to verify there’s no sudden noise other than the ambient environment. Watch the playback meters, and hopefully you’re seeing noise at somewhere around -70dB to -60dB or so.  That’s actually quite noisy, but hey, we’re all friends here!

Now from the menu select Effects, Noise Removal. In the dialog, select the Get Noise Profile control in the frame labeled Step 1 to analyze the ambient noise in your selected audio area. This should be a very quick operation, and the dialog disappears. Audacity has stored a frequency profile for the selected noise for you to use in the next step.

Now use your Home key to move the time cursor and deselect the audio. This means the next process will run against your entire track. Select Effects, Noise Removal again, set the appropriate parameters for Step 2, and then select OK. If you’re not sure what to do, the defaults (24dB reduction, 150Hz frequency smoothing, and 0.15 seconds attack/decay time) are not bad for beginners, so feel free to try them out. You can use Ctrl+Z to undo each attempt after trying different parameters. What you’ll see is that after running the noise removal once, if you play a “silent” section again, the noise floor will be much lower!


Now it’s time to boost our signal. Unless you’ve taken a lot of time to set up a gain structure for your audio input hardware, your signal’s probably pretty low. Your speaking voice may only be peaking at -20dB to -15dB. That’s very quiet compared to everything else your listeners hear on their speakers, where music typically peaks at almost 0dB (and way too often, if you ask me, but that’s an entirely different topic for another article and another time).

Use the Effects, Amplify control to boost the volume of your audio track. Set a new peak amplitude of close to 0dB. I often use -1dB or -0.5dB. Select OK to apply the amplification, and you’ll see the amplitude of your signal (the “width” of the waveform) grow significantly. Before you go any further: TURN DOWN YOUR SPEAKERS! If you’ve been recording and listening for a while, you’ve likely turned them up a lot to make up for the lower signal of your earlier recording. Now is a good time to lower the volume, so you don’t blow yourself out of your chair by playing your newly amplified track.

Note: Depending on your recording situation, the equipment you’re using, and the recording you’ve made, you might want to use a high-pass filter or an EQ to gently roll off very low frequencies, such as under 80 Hz. If you’re recording a voice in a quiet room, signal under that level usually comes from bumping the mic or whatever it’s attached to. If it has a lack of shock protection, that bump sounds like a booming impact in your recording. Rolling off those low frequencies can lessen the effect. Of course, you’re always free to re-record and edit to fix a particularly glaring problem!

Adding some warmth

Now, if you’re heavily into music or audio, you might have already taken care of this step in your original input. In that case you probably didn’t need a lot more amplification of your track, either. But if you didn’t warm up your recording by running through a tube preamplification stage (preamp), you can fake it to some degree using an excellent LADSPA TAP plugin called, appropriately, TAP Tube Warmth.

In your Audacity menu, choose Effects and look at the bottom of the menu that appears. You’ll see numbered lists of plugins. Unfortunately, there are so many plugins available they won’t all fit in a single menu, so they’re numbered by Audacity when it starts up. Look through the list for TAP Tube Warmth. This plugin will add some of the subtle, pleasing harmonic overtones that help make good announcers — the Leo Laportes and Bill Goldsmiths of the world — sound so pleasing to the ear. Of course, if you sound like Gonzo the Muppet, TAP Tube Warmth may not be a total solution, but it might help!

The higher you set the Drive level, the more fuzz you may hear as a result. Try not to overdo it — you want enough harmonic content added to warm up your voice, but not enough to be distracting or overpowering. A setting of somewhere between 3-5 is usually best. Experiment with the tape/tube slider to find a pleasing combination of the sound of tube warmth and analog tape squeeze. Starting with all tube is typically best, and moving to the left a bit at a time until you’re happy with the result. (Leaving it at 10, all tube, is fine too.)


One of the best-loved and most often used (many would say overused) tools in the audio engineer’s bag of tricks is the compressor. A compressor allows you to reduce the difference between loud and quiet areas of your recording, so your voice feels more present to the listener. Using compression allows you to overcome passages where your voice changes volume drastically, for example if you moved slightly away or toward the mic while recording.

Like amplification, compression can help the listener pay attention to your voice even if they’re surrounded by other loud noises — like listening through earphones while on a subway car. Speaking volume that veers wildly between loud and soft, like loud hiss and poor recording quality, is the mark of a substandard podcast. It’s important to recognize, though, that a voice blaring at a single volume for long periods will make your listener feel fatigued or even agitated, even if they don’t know why. So do listen critically to your work, and avoid over-compressing.

Other sweetening

There are other effects you can apply, but be careful and sparing if you want the result to sound natural. You might find an EQ (equalization) plugin helpful to cut annoying frequencies or compensate for a flattening of the voice. Some people apply a curve to mimic the frequency response of a well-known microphone like the Electro-Voice RE20, although it’s really difficult to get the result to sound genuine. If you don’t have a genuinely deep voice, you may find it helpful to give a slight boost (be subtle!) to the low-mid range frequency.

Reverberation is another possibility, but don’t overdo it. It’s probably not your goal to sound like you’re in Mammoth Cave or St. Patrick’s Cathedral! A little goes a long way to establish a space around your voice. Again, experiment in a good listening environment to see if this is something you like or even need.


Hopefully this will put you on track to start creating better podcasts, or maybe if you weren’t interested in it already, you’ll try your hand at it. A minimal equipment investment can lead to hours of fun. But remember that the most important part of podcasting is that you have something interesting or informative to say. All the equipment, technique, and software in the world isn’t as important as creative expression that makes your listeners respond, laugh, and think.

Good luck!

How about that desktop?

I figured while I’m in a super-bloggy mood today I’d add this tidbit. Someone asked me a question about what might be missing from distributions like Fedora that would help it reach more users. This question isn’t new and I’ve given the subject a lot of thought over the last few years (even before being the project leader).

Red Hat and Fedora already invest a huge amount of time in desktop tech. We work upstream to make sure that ALL free software desktops are compelling, not just Fedora. When someone else has a compelling desktop in their free community distro, it means our work has been worthwhile.

Often people bring this point up in response to Fedora’s stance on software freedom. We believe strongly in software freedom, and that including proprietary software actively undermines our goals. We also have a goal of complete global freedom of reuse and redistribution, an objective with which proprietary software also often conflicts. We also believe in choice and that’s why we make it easy for third parties to provide very simple ways for people to get those technologies on their own in places where it’s free and legal.