Shallow Thoughts : : 22

Akkana's Musings on Open Source Computing and Technology, Science, and Nature.

Thu, 22 Feb 2024

Transposing a Song in Audacity

I've been learning guitar. I've tried this several times in the past without much success, concluding that although I love music, it's just not where my talents lie. But this time I'm following a course (Justin Guitar), doing things more or less in the recommended order rather than jumping around randomly, and I feel like I'm doing a lot better than in past attempts.

So far I know about five chords, and surprisingly, there are a lot of songs you can play with only three to five chords. But a lot of them don't actually use those chords, they use more difficult ones, and the trick is to use a capo (one of those little dinguses you can clamp around the guitar's neck to transpose everything a few notes higher) to transpose the song so that it only uses the beginner chords.

I don't have a capo, and getting one sounds like a hassle, but I would like to be able to try to play along with recordings. Justin Guitar has a phone app that supposedly can transpose, but I wouldn't know about that, because it doesn't work for me, just spins forever any time I try to load a song. But surely there must be a way to transpose on my Linux machine? Sure enough: audacity can do it.

So, suppose I want to play "Somebody to Love" by Jefferson Airplane. To play that with A, D, Em and G, you put the capo on the second fret, meaning you're transposing up two semitones. So if I don't want to use a capo, I'll be playing too low, so I'd need to transpose the recording down two semitones.

Run audacity on the MP3 file, and type Ctrl-A to Select All. (Audacity isn't smart enough to figure you want to operate on a whole sound file at once; it will only operate on a selection.)

[Audacity's Change Pitch dialog, set to -2.00 semitones] Then call up Effect→Pitch and Tempo→Change Pitch... Ignore the "from <key> to <key>" and just edit the Semitones field: if the capo is supposed to be on the second fret, set Semitones to -2.00. If instead you want to play Surfin USA by the Beach Boys with easy chords, that needs the sixth fret, so set Semitones to -6.00. Be sure to try Preview and make sure it's in the right key for your guitar. (Surfin' sounds really weird with the Beach Boys singing that low — but it sure is fun to play along with.)

You probably want to enable "Use high-quality stretching (slow)" as well. The song is going to sound a little weird anyway (especially Surfin' USA with the Beach Boys singing that low — but it sure is fun to play along with!) but no need to make it weirder than strictly necessary by doing a low quality transposition. Then click Apply and wait a few minutes. When it's done, Click Play to make sure it's still in the right key.

After verifying that it sounds okay, you can File→Export Audio..., choose MP3 Files (or whatever other format you'd prefer to use) and save it. No need to Save Project when you exit, unless you think you might want to make further tweaks later.

And now you have a file that lets you play along, without needing a capo. (

Tags: , ,
[ 18:48 Feb 22, 2024    More misc | permalink to this entry | ]

towebhost: a Handy Script for Mirroring Multiple Websites

I maintain quite a few small websites. I have several of my own under different domains (, and so forth), plus a few smaller projects like flask apps running on a different port. In addition, I maintain websites for several organizations on a volunteer basis (because if you join any volunteer organization and they find out you're at all technical, that's the first job they want you to do).

I typically maintain a local copy of each website, so I can try out any change locally first.

Read more ...

Tags: , ,
[ 16:18 Feb 22, 2024    More linux | permalink to this entry | ]