CountBeats—BPM Finder

CountBeats is a cracker of a little application—it's simple, yet it covers such a need for so many musicians. To quote the README file:

This is a simple little program designed to help you determine the speed of a piece of music on the radio or on a CD.

To use it, just invoke the program from the command line. You'll be presented with a screen describing the program, a time-bar, and a few buttons. Most should be self-explanatory. Just start tapping the spacebar in time to the music...the tempo bar will update and show how many beats per second are being played.

CountBeats is an ingenious little program for determining the tempo of a song by simply tapping away on the keyboard in time to the music.

Installation

First, there is a library you probably won't have installed: Tkinter. This was under the package name python-tk on my system, but it's worth looking in your local package manager for yours. The only other requirement seems to be a working version of Python 2.x onward.

Otherwise, installing this thing is a walk in the park. Simply download the 1K (!) tarball from the Web site, extract it, and open a terminal in the new folder. From here, run CountBeats simply by entering:

$ ./countbeats

Usage

The README file did a pretty good job of explaining how it all works, but I can expand on it a little further. As soon as you have a song for which you want to find the BPM rate, start the program and press the spacebar in time with the music. The more times you do this, the more accurate the rating will be, so stick with it for a good minute or two. If you want to clear away previous readings and start again (perhaps when another song comes on), click Clear at the bottom-left corner.

Given the cumbersome nature of a spacebar, it's generally best if you track a song's quarter notes, as eighths or sixteenths may track a bit inaccurately. If you know your way around Python syntax (which I don't), you may want to change the key to something like Ctrl for faster music.

That small niggle aside, this is an invaluable tool for musicians. Many times I've been working on a project and forgotten to note what tempo a song was in, making tracking a nightmare at times. DJ-remixing types probably will use this most of all, as they can use it to gauge the speed of whatever songs they're piecing together and work out which samples will be compatible with each other. All in all, this is a brilliant tool that is simple to use and install, and it probably takes the prize for smallest file size of any project I've covered!

wxGuitar—Tuning Reference for Acoustic Guitars

If you like minimalism and are chasing a tuning reference for your acoustic guitar, this may well be the project for you. I especially meant that minimalism part—the only info I could find on the project's Freshmeat entry was the following: “wxGuitar is a useful application that will easily help the novice guitarist to faster (and better) tune the guitar.” And, that's pretty much it—that's all the information I can find anywhere on the Net. But, maybe I can illuminate things a little here.

wxGuitar is a very simple reference tool for tuning an acoustic guitar by ear. But an H string? An amusing typo!

Installation

I couldn't find an actual home page for wxGuitar, so you have to make do with the files provided on the (brief) Freshmeat page. Source is provided, along with Debian and Gentoo packages. As far as libraries go, the INSTALL file says you'll need wxWidgets >= 2.8.10 (I had to install libwxbase2.8-dev), along with alsa-utils, including aplay. If you're running with the source, once you have the needed libraries, grab the latest tarball, extract it, and open a terminal in the new folder. Enter the following commands to compile wxGuitar:

$ ./configure
$ make

If your distro supports sudo:

$ sudo make install 

If not:

$ su 
# make install

Once wxGuitar is installed, you may have it in your system's menu, or you can run it with the command:

$ wxGuitar

Usage

When you're inside the main screen, I think you'll find it rather straightforward. wxGuitar is very basic. Turn your speakers on and press any of the buttons on the left to play the corresponding note. The notes start from the highest note E string and go down to the lowest note E string. The second button is curiously marked H, but unless there's some kind of unique Eastern European scale I don't know about, logic dictates that should be a B string.

Press the button on the left for each string's note, and play the corresponding string on your own guitar as you fine-tune it. If you look on the bottom-left corner, there's a repeat option that will be set to every three seconds by default, which can be made longer or shorter if you so desire.

That's pretty much all there is to it. wxGuitar may not be complex (and if you're looking for a sophisticated tuning recognition program, you should look elsewhere), but if you want a minimalist program to tune by ear, this is probably for you.

CountBeats—BPM Finder -- www.mellowood.ca/countbeats/index.html

______________________

John Knight is the New Projects columnist for Linux Journal.

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

What the heck's going on here ?!

Dave Phillips's picture

Hey, I'm supposed to be the one who's up on this sort of thing ! :)

Just kidding, of course. This article is a good introduction to a neat program, John, thanks for the heads-up. wxGuitar looks like a helpful little app, I'll be sure to check it out and will add it to the list at linux-sound.org.

Best regards,

Dave Phillips

Similis sum folio de quo ludunt venti.

Hey! :)

John Knight's picture

G'day g'day!

Hey Dave, love you work! :) Check out the issue that would be... two months from now? Whenever this month's submission gets published in hard copy anyway... I'm covering VirtMus further after reading your blog and giving a Mr. Dave Phillips a bunch of kudos in the process, and quote your development appeal at the end...

And to the other two comments... yeah, I'm still getting email on that one, can you tell I'm actually a drummer, hehe?! ;) Surprised editorial left that in actually...

John Knight is the New Projects columnist for Linux Journal.

wxGuitar

Anonymous's picture

In the German speaking countries b is known as h - b being reserved for b-flat

The H-String

Macxcool's picture

H-String is not a typo. It is an older German way of designating the B-natural and so is quite appropriate for the B String. If this project was localized, it would read B for most and H for German-speakers.

Webinar
One Click, Universal Protection: Implementing Centralized Security Policies on Linux Systems

As Linux continues to play an ever increasing role in corporate data centers and institutions, ensuring the integrity and protection of these systems must be a priority. With 60% of the world's websites and an increasing share of organization's mission-critical workloads running on Linux, failing to stop malware and other advanced threats on Linux can increasingly impact an organization's reputation and bottom line.

Learn More

Sponsored by Bit9

Webinar
Linux Backup and Recovery Webinar

Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.

In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.

Learn More

Sponsored by Storix