NAME
Music::ChordBot::Song - Generate ChordBot songs.
SYNOPSIS
use Music::ChordBot::Song;
song "All Of Me";
tempo 105;
section "All Of Me 1";
style "Chicago";
C 4; C; E7; E7; A7; A7; Dm7; Dm7;
E7; E7; Am7; Am7; D7; D7; Dm7; G7;
section "All Of Me 2";
style "Swingatron";
C 4; C; E7; E7; A7; A7; Dm7; Dm7;
Dm7; Ebdim7; Em7; A9; Dm7b5; G13;
C 2; Ebdim7; Dm7; G7;
DESCRIPTION
Music::ChordBot::Song exports a number of subroutines that can be used to construct a CordBot song. Upon program termination, the song is written out to standard output in JSON format, suitable for import into the ChordBot app.
SUBROUTINES
song title
Starts a new song with the given title.
tempo bpm
Sets the tempo in beats per minute.
section name
Starts a song section. A section groups a number of bars with chords. Each section can have a style associated although it is common to have a single style for the whole song.
style preset
Associate the given style to the current section. For a list of presets, see http://chordbot.com/style-lookup.php .
chord key, type, duration
Append a chord with given key, type and duration. Note that duration is measured in number of beats. The three arguments may also be specified in a single string argument, space separated.
You can specify a bass note for the chord by separating the key and bass with a slash. E.g., "C/B"
denotes a C chord with B bass.
QUICK ACCESS CHORDS
For convenience, subroutines are exported for quick access to chords. So instead of
chord "C", "Maj", 4;
you can also write:
C 4;
If you omit the duration it will use the duration of the previous chord:
C 4; C; F; G; # same as C 4; C 4; F 4; G 4;
The subroutine name is the key of the chord, optionally followed by a chord modifier. So C
is C major, Cm
is C minor, and so on.
Chord keys are A B C D E F G Ab Bb Db Eb Gb Ais Cis Dis Fis Gis.
Modifiers are m 7 m7 maj7 9 11 13 auf 7b5 m7b5 dim dim7.
DISCLAIMER
There is currently NO VALIDATION of argument values. Illegal values will result in program crashes and songs that cannot be imported, or played, by ChordBot.
AUTHOR, COPYRIGHT & LICENSE
See Music::ChordBot.