Mom's autoharp.

Mom use to have an autoharp. She would play it once in a while. Kind of missed that old thing. Did not want to go out and purchase one. Saw a minimal bash script to let a linux box with sound emulate an autoharp. I modified that script to do a bit more.  It only has a few chords, but it is the most I will need for a while. Working on a super version,

Just like a regular autoharp, all you have to do is press a key for the chord sounding.


Use it. (super simple example):


On Top of Old Smokie 
 
Old 
(C)On top of old (F)Smokie, all covered in (C)snow,
I lost my true (G7 3)lover, by courtin' too (C)slow
(C)on top of old (F)Smokie, I went there to (C)weep
For a false hearted (G7)lover, is worse than a (C)thief

(C)A thief he will (F)rob you, and take what you (C)save
But a false hearted (G7)lover, will put you in your (C)grave
(C)On top of old (F)Smokie, all covered in (C)snow
I lost my true (G7)lover, by courtin' too (C)slow

(C) They'll hug you and (F)kiss you, then tell you more (C)lies
Than the crossties on the (G7) railroad, or the stars in the (C)skies
(C)on top of old (F)Smokie, all covered in (C) snow
I lost my true (G7)lover, by courtin' too (C)slow

New
(1) On top of old (4)Smokie, all covered in (1)snow,
I lost my true (3)lover, by courtin' too (1)slow
(1)on top of old (4)Smokie, I went there to (1)weep
For a false hearted (3)lover, is worse than a (1)thief

(1)A thief he will (4)rob you, and take what you (1)save
But a false hearted (3)lover, will put you in your (1)grave
(1)On top of old (4)Smokie, all covered in (1)snow
I lost my true (3)lover, by courtin' too (1)slow

(1) They'll hug you and (4)kiss you, then tell you more (1)lies
Than the crossties on the (3) railroad, or the stars in the (1)skies
(1)on top of old (4)Smokie, all covered in (1)snow
I lost my true (3)lover, by courtin' too (1)slow

Rock progressions:


Here is the source code that you can cut and paste into your favorite linux editor.

#!/bin/bash
#
# Script to emulate an autoharp.
#
while :
do
clear
echo "************************"
echo "* Mom's autoharp       *"
echo "************************"
echo "* [1] C major          *"
echo "* [2] A minor          *"
cho "* [3] G 7th            *"
echo "* [4] F major          *"
echo "* [5] D minor          *"
echo "* [6] E minor          *"
echo "* [7] E 7th            *"
echo "* [8] A 7th            *"
echo "* [9] C 7th            *"
echo "* [+] D 7th            *"
echo "* [-] G major          *"
echo "*                      *"
echo "* [0] Exit/Stop        *"
echo "************************"
echo
echo "Enter your menu choice [1-9, +, - or 0]: "
read -n 1 yourch
case $yourch in
1) play -n synth pl C2 pl E2 pl G2 pl C3 pl E3 pl G3 delay 0 .05 .1 .15 .2 .25 remix - fade 0 1.5 .1 norm -1  ;;
2) play -n synth pl A2 pl C2 pl E2 pl A3 pl C3 pl E3 delay 0 .05 .1 .15 .2 .25 remix - fade 0 1.5 .1 norm -1  ;;
3) play -n synth pl G2 pl B2 pl D2 pl F4 pl G3 pl B3 pl D3 pl F4 delay 0 .05 .1 .15 .2 .25 remix - fade 0 1.5 .1 norm -1  ;;
4) play -n synth pl F2 pl A2 pl C2 pl F3 pl A3 pl C3 delay 0 .05 .1 .15 .2 .25 remix - fade 0 1.5 .1 norm -1  ;;
5) play -n synth pl D2 pl F2 pl A2 pl D3 pl A3 pl F4 delay 0 .05 .1 .15 .2 .25 remix - fade 0 1.5 .1 norm -1  ;;
6) play -n synth pl E2 pl G2 pl B2 pl E3 pl B3 pl G4 delay 0 .05 .1 .15 .2 .25 remix - fade 0 1.5 .1 norm -1  ;;
7) play -n synth pl E2 pl G#2 pl B2 pl D2 pl E3 pl B3 pl G#4 delay 0 .05 .1 .15 .2 .25 remix - fade 0 1.5 .1 norm -1  ;;
8) play -n synth pl A2 pl C#2 pl E2 pl G2 pl A3 pl C#3 pl E3 pl G3 delay 0 .05 .1 .15 .2 .25 remix - fade 0 1.5 .1 norm -1  ;;
9) play -n synth pl C2 pl E2 pl G2 pl A#2  pl C3 pl E3 pl G3 pl A#3 delay 0 .05 .1 .15 .2 .25 remix - fade 0 1.5 .1 norm -1  ;;
+)  play -n synth pl D2 pl F#2 pl A2 pl C3  pl D3 pl F#3 pl A3 pl C4 delay 0 .05 .1 .15 .2 .25 remix - fade 0 1.5 .1 norm -1  ;;
-) play -n synth pl G2 pl B2 pl D2 pl G3 pl B3 pl D3 delay 0 .05 .1 .15 .2 .25 remix - fade 0 1.5 .1 norm -1  ;;
0) exit 0;;
*) echo "Oopps!!! Please select choice 1,2,3,4,5,6,7,8,9,-, or +"
echo "Press Enter to continue. . ." ; read ;;
esac
done

Note: make sure sox is installed.
$ sudo apt-get install sox

Comments

Popular posts from this blog

Guiless?

Web.com and Network Solutions, the Walmart of the internet.

MSOffice vs Libreoffice