This is somehow a follow up of this question:
How can I detect the BPM (beats per minute) of a song?
But now instead of detecting them in songs, I want to generate them.
I am looking for an application that will output a sound (something short like a beep) a configurable number of times per minute.
If I say 20bpm, it will output that sound every 3 seconds. (60/20)
If 60bpm, every sec.
If 120bpm every half a sec.
The reason for this is that I am learning how to play drum sets and the bpm looks really important. I am following this video on youtube.
update
Seems they are called metronomes
and even Google got one. Cool Stuff.
https://www.google.com/search?q=metronomes
Thanks Nick.
As mentioned in a comment, I couldn't get the mentioned metronomes (existing for Linux/Ubuntu) working on 16.04, at least not out of the box. I didn't spend much time in getting it to work, since practically all of them give the impression to be abandoned.
Time to write one...
This answer (work in progress) should eventually lead to a metronome, including GUI. A good time to mention possible features you'd like.
1. CLI metronome
Creating a straightforward metronome turns out to be shockingly simple:
How to use
The metronome needs vorbis-tools, to play the sound
Run it with the bpm as argument:
e.g.:
To run it with 100 beats per minute
Note
For the sound, I used the file
/usr/share/sounds/ubuntu/stereo/bell.ogg
, which should be on your system by default (tested 14.04/16.04). You can however use any (.ogg
) sample you like. In the final version, A number of options (sounds) will be available.2. Shockingly simple GUI version
As a next step, a very basic version, the last version without an installer:
The script
The image
How to use
Like the cli version, this one needs
vorbis-tools
:Copy the script into an empty file, save it as
metro.py
icon.png
.Simply run the metronome by the command:
3. PPA for the Orange Metronome
It is done!
The metronome is ready for installation.
The Orange Metronome comes with a set of different sounds to choose from, and the beats can be grouped. All changes are applied immediately on the running metronome:
To install:
Work to do
Currently, the metronome comes with four different sounds to choose from. Probably a few will be added in the next few days, some of them will be replaced/updated
On the longer term
For the longer term, I am thinking of adding the option for (custom) complex structures like 3+3+2, 2+2+2+3 etc., which I always missed in existing metronomes.
Finally
The latest (current) version
0.5.3
adds a number of sounds, but more importantly, the option to run irregular (composite) beats. In this version, they are hard coded. Will be customizable from version > 1.It sounds like you're looking for a metronome!
The audio-editing software Audacity can generate a steady, metronome-like beat or tone (look under the "Generate" menu), though there are simpler programs that I'll list below. Audacity is in the Ubuntu software repositories and can be installed through the Software Center or by typing
sudo apt install audacity
in a terminal window.Online metronomes are plentiful, if you plan on having internet access during your practice.
Other metronome software available in the Ubuntu software repositories includes gtick, klick, gtklick, and kmetronome, though I haven't tried any of them myself.
Simple Bash metronome
Usage
Info
metronome-core.sh
For example
Script
I play Guitar and I use gtick. It works pretty well for me. I can adjust the beats per minute, volume and even time signatures, 1/4,2/4,3/4, and so on. You can install it from the command line using:
Have you tried kmetronome? Should be able to use apt-get/synaptic.