New Projects - Fresh from the Labs
This month, I'm covering projects I've wanted to showcase but have held off on due to space constraints. CountBeats is a cracker of a little application—it's simple, yet it covers such a need for so many musicians, so I'm proud to give it top billing here. 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.
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:
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!
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.
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
$ su # make install
Once wxGuitar is installed, you may have it in your system's menu, or you can run it with the command:
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.
John Knight is the New Projects columnist for Linux Journal.
Practical Task Scheduling Deployment
July 20, 2016 12:00 pm CDT
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.Register Now!
- SUSE LLC's SUSE Manager
- My +1 Sword of Productivity
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- Managing Linux Using Puppet
- Non-Linux FOSS: Caffeine!
- SuperTuxKart 0.9.2 Released
- Doing for User Space What We Did for Kernel Space
- Parsing an RSS News Feed with a Bash Script
- Google's SwiftShader Released
- Rogue Wave Software's Zend Server
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide