Appends music list
This commit is contained in:
23
pitches/pitches/all.h
Normal file
23
pitches/pitches/all.h
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "pitches.h"
|
||||||
|
|
||||||
|
// Include all the individual song headers
|
||||||
|
#include "music/amazing_grace.h"
|
||||||
|
#include "music/an_die_freude.h"
|
||||||
|
#include "music/auld_lang_syne.h"
|
||||||
|
#include "music/canon_pachelbel.h"
|
||||||
|
#include "music/clair_de_la_lune.h"
|
||||||
|
#include "music/douce_nuit.h"
|
||||||
|
#include "music/frere_jacques.h"
|
||||||
|
#include "music/fur_elise.h"
|
||||||
|
#include "music/god_save_the_queen.h"
|
||||||
|
#include "music/greensleeves.h"
|
||||||
|
#include "music/happy_birthday.h"
|
||||||
|
#include "music/indiana_jones.h"
|
||||||
|
#include "music/jingle_bells.h"
|
||||||
|
#include "music/mario.h"
|
||||||
|
#include "music/marseillaise.h"
|
||||||
|
#include "music/tetris.h"
|
||||||
|
#include "music/twinkle_twinkle.h"
|
||||||
|
#include "music/vive_le_vent.h"
|
||||||
40
pitches/pitches/music/amazing_grace.h
Normal file
40
pitches/pitches/music/amazing_grace.h
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array amazing_grace = {
|
||||||
|
// --- PHRASE 1 ---
|
||||||
|
Note{ D4, 500 }, // A-
|
||||||
|
Note{ G4, 1000 }, Note{ B4, 250 }, Note{ G4, 250 }, // -ma-zing
|
||||||
|
Note{ B4, 1000 }, Note{ A4, 500 }, // grace, how
|
||||||
|
Note{ G4, 1000 }, Note{ E4, 500 }, // sweet the
|
||||||
|
Note{ D4, 1000 }, Note{ silent, 100 }, // sound
|
||||||
|
|
||||||
|
// --- PHRASE 2 ---
|
||||||
|
Note{ D4, 500 }, // That
|
||||||
|
Note{ G4, 1000 }, Note{ B4, 250 }, Note{ G4, 250 }, // saved a
|
||||||
|
Note{ B4, 1000 }, Note{ A4, 500 }, // wretch like
|
||||||
|
Note{ D5, 1500 }, Note{ silent, 100 }, // me!
|
||||||
|
|
||||||
|
// --- PHRASE 3 ---
|
||||||
|
Note{ B4, 500 }, // I
|
||||||
|
Note{ D5, 1000 }, Note{ B4, 250 }, Note{ G4, 250 }, // once was
|
||||||
|
Note{ B4, 1000 }, Note{ A4, 500 }, // lost, but
|
||||||
|
Note{ G4, 1000 }, Note{ E4, 500 }, // now am
|
||||||
|
Note{ D4, 1000 }, Note{ silent, 100 }, // found
|
||||||
|
|
||||||
|
// --- PHRASE 4 ---
|
||||||
|
Note{ D4, 500 }, // Was
|
||||||
|
Note{ G4, 1000 }, Note{ B4, 250 }, Note{ G4, 250 }, // blind, but
|
||||||
|
Note{ B4, 1000 }, Note{ A4, 500 }, // now I
|
||||||
|
Note{ G4, 1500 }, Note{ silent, 500 } // see.
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
42
pitches/pitches/music/an_die_freude.h
Normal file
42
pitches/pitches/music/an_die_freude.h
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array an_die_freude = { // Ode à la joie
|
||||||
|
// Main thème
|
||||||
|
Note{ E5, 300 }, Note{ E5, 300 }, Note{ F5, 300 }, Note{ G5, 300 },
|
||||||
|
Note{ G5, 300 }, Note{ F5, 300 }, Note{ E5, 300 }, Note{ D5, 300 },
|
||||||
|
Note{ C5, 300 }, Note{ C5, 300 }, Note{ D5, 300 }, Note{ E5, 300 },
|
||||||
|
Note{ E5, 450 }, Note{ D5, 150 }, Note{ D5, 600 },
|
||||||
|
Note{ silent, 100 },
|
||||||
|
|
||||||
|
// Repeat with varied ending
|
||||||
|
Note{ E5, 300 }, Note{ E5, 300 }, Note{ F5, 300 }, Note{ G5, 300 },
|
||||||
|
Note{ G5, 300 }, Note{ F5, 300 }, Note{ E5, 300 }, Note{ D5, 300 },
|
||||||
|
Note{ C5, 300 }, Note{ C5, 300 }, Note{ D5, 300 }, Note{ E5, 300 },
|
||||||
|
Note{ D5, 450 }, Note{ C5, 150 }, Note{ C5, 600 },
|
||||||
|
Note{ silent, 100 },
|
||||||
|
|
||||||
|
// Central section
|
||||||
|
Note{ D5, 300 }, Note{ D5, 300 }, Note{ E5, 300 }, Note{ C5, 300 },
|
||||||
|
Note{ D5, 300 }, Note{ E5, 150 }, Note{ F5, 150 }, Note{ E5, 300 }, Note{ C5, 300 },
|
||||||
|
Note{ D5, 300 }, Note{ E5, 150 }, Note{ F5, 150 }, Note{ E5, 300 }, Note{ D5, 300 },
|
||||||
|
Note{ C5, 300 }, Note{ D5, 300 }, Note{ G4, 600 },
|
||||||
|
Note{ silent, 100 },
|
||||||
|
|
||||||
|
// Final reprise
|
||||||
|
Note{ E5, 300 }, Note{ E5, 300 }, Note{ F5, 300 }, Note{ G5, 300 },
|
||||||
|
Note{ G5, 300 }, Note{ F5, 300 }, Note{ E5, 300 }, Note{ D5, 300 },
|
||||||
|
Note{ C5, 300 }, Note{ C5, 300 }, Note{ D5, 300 }, Note{ E5, 300 },
|
||||||
|
Note{ D5, 450 }, Note{ C5, 150 }, Note{ C5, 600 },
|
||||||
|
Note{ silent, 200 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
36
pitches/pitches/music/auld_lang_syne.h
Normal file
36
pitches/pitches/music/auld_lang_syne.h
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array auld_lang_syne = {
|
||||||
|
// --- COUPLET ---
|
||||||
|
Note{ D4, 375 }, Note{ G4, 750 }, Note{ FS4, 375 }, Note{ G4, 750 }, Note{ B4, 375 }, // Should auld ac-quain-
|
||||||
|
Note{ A4, 750 }, Note{ G4, 375 }, Note{ A4, 750 }, Note{ B4, 375 }, // -tance be for-got,
|
||||||
|
Note{ G4, 750 }, Note{ G4, 375 }, Note{ B4, 750 }, Note{ D5, 375 }, // and ne-ver brought to
|
||||||
|
Note{ E5, 1500 }, Note{ silent, 100 }, // mind?
|
||||||
|
|
||||||
|
Note{ E5, 375 }, Note{ D5, 750 }, Note{ B4, 375 }, Note{ B4, 750 }, Note{ G4, 375 }, // Should auld ac-quain-
|
||||||
|
Note{ A4, 750 }, Note{ G4, 375 }, Note{ A4, 750 }, Note{ B4, 375 }, // -tance be for-got,
|
||||||
|
Note{ G4, 750 }, Note{ E4, 375 }, Note{ E4, 750 }, Note{ D4, 375 }, // and days of auld lang
|
||||||
|
Note{ G4, 1500 }, Note{ silent, 200 }, // syne?
|
||||||
|
|
||||||
|
// --- REFRAIN ---
|
||||||
|
Note{ E5, 375 }, Note{ D5, 750 }, Note{ B4, 375 }, Note{ B4, 750 }, Note{ G4, 375 }, // For auld lang syne,
|
||||||
|
Note{ A4, 750 }, Note{ G4, 375 }, Note{ A4, 750 }, Note{ E5, 375 }, // my dear,
|
||||||
|
Note{ D5, 750 }, Note{ B4, 375 }, Note{ B4, 750 }, Note{ D5, 375 }, // for auld lang
|
||||||
|
Note{ E5, 1500 }, Note{ silent, 100 }, // syne,
|
||||||
|
|
||||||
|
Note{ E5, 375 }, Note{ D5, 750 }, Note{ B4, 375 }, Note{ B4, 750 }, Note{ G4, 375 }, // we'll take a cup o'
|
||||||
|
Note{ A4, 750 }, Note{ G4, 375 }, Note{ A4, 750 }, Note{ B4, 375 }, // kind-ness yet,
|
||||||
|
Note{ G4, 750 }, Note{ E4, 375 }, Note{ E4, 750 }, Note{ D4, 375 }, // for auld lang
|
||||||
|
Note{ G4, 1500 } // syne.
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
41
pitches/pitches/music/canon_pachelbel.h
Normal file
41
pitches/pitches/music/canon_pachelbel.h
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array canon_pachelbel = {
|
||||||
|
// --- LE THÈME DE BASE (La structure de 8 notes) ---
|
||||||
|
Note{ D5, 1000 }, Note{ A4, 1000 },
|
||||||
|
Note{ B4, 1000 }, Note{ FS4, 1000 },
|
||||||
|
Note{ G4, 1000 }, Note{ D4, 1000 },
|
||||||
|
Note{ G4, 1000 }, Note{ A4, 1000 },
|
||||||
|
|
||||||
|
// --- VARIATION 1 (Mélodie classique) ---
|
||||||
|
Note{ FS5, 1000 }, Note{ E5, 1000 },
|
||||||
|
Note{ D5, 1000 }, Note{ CS5, 1000 },
|
||||||
|
Note{ B4, 1000 }, Note{ A4, 1000 },
|
||||||
|
Note{ B4, 1000 }, Note{ CS5, 1000 },
|
||||||
|
|
||||||
|
// --- VARIATION 2 (Plus fluide) ---
|
||||||
|
Note{ D5, 500 }, Note{ CS5, 500 }, Note{ D5, 500 }, Note{ FS4, 500 },
|
||||||
|
Note{ A4, 500 }, Note{ G4, 500 }, Note{ FS4, 500 }, Note{ D4, 500 },
|
||||||
|
Note{ FS4, 500 }, Note{ E4, 500 }, Note{ D4, 500 }, Note{ B3, 500 },
|
||||||
|
Note{ D4, 500 }, Note{ CS4, 500 }, Note{ B3, 500 }, Note{ A3, 500 },
|
||||||
|
|
||||||
|
// --- VARIATION 3 (Les célèbres triolets) ---
|
||||||
|
Note{ G4, 500 }, Note{ FS4, 500 }, Note{ G4, 500 }, Note{ B4, 500 },
|
||||||
|
Note{ A4, 500 }, Note{ G4, 500 }, Note{ FS4, 500 }, Note{ E4, 500 },
|
||||||
|
Note{ D4, 500 }, Note{ E4, 500 }, Note{ FS4, 500 }, Note{ G4, 500 },
|
||||||
|
Note{ A4, 500 }, Note{ B4, 500 }, Note{ CS5, 500 }, Note{ A4, 500 },
|
||||||
|
|
||||||
|
// --- FINAL ---
|
||||||
|
Note{ D5, 2000 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
46
pitches/pitches/music/clair_de_la_Lune.h
Normal file
46
pitches/pitches/music/clair_de_la_Lune.h
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array au_clair_lune = {
|
||||||
|
// "Au clair de la lune"
|
||||||
|
Note{ C4, 400 }, Note{ C4, 400 }, Note{ C4, 400 }, Note{ D4, 400 },
|
||||||
|
Note{ E4, 800 }, Note{ D4, 800 },
|
||||||
|
|
||||||
|
// "Mon ami Pierrot"
|
||||||
|
Note{ C4, 400 }, Note{ E4, 400 }, Note{ D4, 400 }, Note{ D4, 400 },
|
||||||
|
Note{ C4, 1200 }, Note{ silent, 200 },
|
||||||
|
|
||||||
|
// "Prête-moi ta plume"
|
||||||
|
Note{ C4, 400 }, Note{ C4, 400 }, Note{ C4, 400 }, Note{ D4, 400 },
|
||||||
|
Note{ E4, 800 }, Note{ D4, 800 },
|
||||||
|
|
||||||
|
// "Pour écrire un mot"
|
||||||
|
Note{ C4, 400 }, Note{ E4, 400 }, Note{ D4, 400 }, Note{ D4, 400 },
|
||||||
|
Note{ C4, 1200 }, Note{ silent, 200 },
|
||||||
|
|
||||||
|
// "Ma chandelle est morte"
|
||||||
|
Note{ D4, 400 }, Note{ D4, 400 }, Note{ D4, 400 }, Note{ D4, 400 },
|
||||||
|
Note{ A3, 800 }, Note{ A3, 800 },
|
||||||
|
|
||||||
|
// "Je n'ai plus de feu"
|
||||||
|
Note{ D4, 400 }, Note{ C4, 400 }, Note{ B3, 400 }, Note{ A3, 400 },
|
||||||
|
Note{ G3, 1200 }, Note{ silent, 200 },
|
||||||
|
|
||||||
|
// "Ouvre-moi ta porte"
|
||||||
|
Note{ C4, 400 }, Note{ C4, 400 }, Note{ C4, 400 }, Note{ D4, 400 },
|
||||||
|
Note{ E4, 800 }, Note{ D4, 800 },
|
||||||
|
|
||||||
|
// "Pour l'amour de Dieu"
|
||||||
|
Note{ C4, 400 }, Note{ E4, 400 }, Note{ D4, 400 }, Note{ D4, 400 },
|
||||||
|
Note{ C4, 1200 }, Note{ silent, 200 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
45
pitches/pitches/music/douce_nuit.h
Normal file
45
pitches/pitches/music/douce_nuit.h
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array douce_nuit = {
|
||||||
|
// "Douce nuit, sainte nuit"
|
||||||
|
Note{ G4, 900 }, Note{ A4, 300 }, Note{ G4, 600 },
|
||||||
|
Note{ E4, 1200 }, Note{ silent, 100 },
|
||||||
|
Note{ G4, 900 }, Note{ A4, 300 }, Note{ G4, 600 },
|
||||||
|
Note{ E4, 1200 }, Note{ silent, 100 },
|
||||||
|
|
||||||
|
// "Dans les cieux, l'astre luit"
|
||||||
|
Note{ D5, 1200 }, Note{ D5, 600 },
|
||||||
|
Note{ B4, 1200 }, Note{ silent, 100 },
|
||||||
|
Note{ C5, 1200 }, Note{ C5, 600 },
|
||||||
|
Note{ G4, 1200 }, Note{ silent, 100 },
|
||||||
|
|
||||||
|
// "Le mystère annoncé"
|
||||||
|
Note{ A4, 1200 }, Note{ A4, 600 },
|
||||||
|
Note{ C5, 900 }, Note{ B4, 300 }, Note{ A4, 600 },
|
||||||
|
Note{ G4, 900 }, Note{ A4, 300 }, Note{ G4, 600 },
|
||||||
|
Note{ E4, 1200 }, Note{ silent, 100 },
|
||||||
|
|
||||||
|
// "S'accomplit cette nuit"
|
||||||
|
Note{ A4, 1200 }, Note{ A4, 600 },
|
||||||
|
Note{ C5, 900 }, Note{ B4, 300 }, Note{ A4, 600 },
|
||||||
|
Note{ G4, 900 }, Note{ A4, 300 }, Note{ G4, 600 },
|
||||||
|
Note{ E4, 1200 }, Note{ silent, 100 },
|
||||||
|
|
||||||
|
// "Noël! Noël! Voici le Rédempteur"
|
||||||
|
Note{ D5, 1200 }, Note{ D5, 600 },
|
||||||
|
Note{ F5, 900 }, Note{ D5, 300 }, Note{ B4, 600 },
|
||||||
|
Note{ C5, 1800 }, Note{ silent, 100 },
|
||||||
|
Note{ E5, 1800 },
|
||||||
|
Note{ C5, 2400 }, Note{ silent, 200 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
31
pitches/pitches/music/frere_jacques.h
Normal file
31
pitches/pitches/music/frere_jacques.h
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array frere_jacques = {
|
||||||
|
// "Frère Jacques, Frère Jacques"
|
||||||
|
Note{ C4, 400 }, Note{ D4, 400 }, Note{ E4, 400 }, Note{ C4, 400 },
|
||||||
|
Note{ C4, 400 }, Note{ D4, 400 }, Note{ E4, 400 }, Note{ C4, 400 },
|
||||||
|
|
||||||
|
// "Dormez-vous? Dormez-vous?"
|
||||||
|
Note{ E4, 400 }, Note{ F4, 400 }, Note{ G4, 800 },
|
||||||
|
Note{ E4, 400 }, Note{ F4, 400 }, Note{ G4, 800 },
|
||||||
|
|
||||||
|
// "Sonnez les matines, Sonnez les matines"
|
||||||
|
Note{ G4, 300 }, Note{ A4, 120 }, Note{ G4, 180 }, Note{ F4, 280 }, Note{ E4, 400 }, Note{ C4, 400 },
|
||||||
|
Note{ G4, 300 }, Note{ A4, 120 }, Note{ G4, 180 }, Note{ F4, 280 }, Note{ E4, 400 }, Note{ C4, 400 },
|
||||||
|
|
||||||
|
// "Ding, dang, dong. Ding, dang, dong."
|
||||||
|
Note{ C4, 400 }, Note{ G3, 400 }, Note{ C4, 800 },
|
||||||
|
Note{ C4, 400 }, Note{ G3, 400 }, Note{ C4, 800 },
|
||||||
|
Note{ silent, 200 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
32
pitches/pitches/music/fur_elise.h
Normal file
32
pitches/pitches/music/fur_elise.h
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array fur_elise = {
|
||||||
|
// Introduction célèbre (répétée 2 fois)
|
||||||
|
Note{ E5, 150 }, Note{ DS5, 150 }, Note{ E5, 150 }, Note{ DS5, 150 },
|
||||||
|
Note{ E5, 150 }, Note{ B4, 150 }, Note{ D5, 150 }, Note{ C5, 150 },
|
||||||
|
Note{ A4, 300 }, Note{ silent, 150 },
|
||||||
|
Note{ C4, 150 }, Note{ E4, 150 }, Note{ A4, 150 },
|
||||||
|
Note{ B4, 300 }, Note{ silent, 150 },
|
||||||
|
Note{ E4, 150 }, Note{ GS4, 150 }, Note{ B4, 150 },
|
||||||
|
Note{ C5, 300 }, Note{ silent, 150 },
|
||||||
|
Note{ E4, 150 }, Note{ E5, 150 }, Note{ DS5, 150 },
|
||||||
|
|
||||||
|
// Répétition
|
||||||
|
Note{ E5, 150 }, Note{ DS5, 150 }, Note{ E5, 150 }, Note{ B4, 150 },
|
||||||
|
Note{ D5, 150 }, Note{ C5, 150 }, Note{ A4, 300 }, Note{ silent, 150 },
|
||||||
|
Note{ C4, 150 }, Note{ E4, 150 }, Note{ A4, 150 },
|
||||||
|
Note{ B4, 300 }, Note{ silent, 150 },
|
||||||
|
Note{ E4, 150 }, Note{ C5, 150 }, Note{ B4, 150 },
|
||||||
|
Note{ A4, 450 }, Note{ silent, 150 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
34
pitches/pitches/music/god_save_the_queen.h
Normal file
34
pitches/pitches/music/god_save_the_queen.h
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array god_save_the_queen = {
|
||||||
|
// --- SECTION 1 ---
|
||||||
|
Note{ G4, 600 }, Note{ G4, 600 }, Note{ A4, 600 }, // God save our
|
||||||
|
Note{ FS4, 900 }, Note{ G4, 300 }, Note{ A4, 600 }, // gra-cious Queen (ou King)
|
||||||
|
Note{ B4, 600 }, Note{ B4, 600 }, Note{ C5, 600 }, // Long live our
|
||||||
|
Note{ B4, 900 }, Note{ A4, 300 }, Note{ G4, 600 }, // no-ble Queen
|
||||||
|
Note{ A4, 600 }, Note{ G4, 600 }, Note{ FS4, 600 }, // God save the
|
||||||
|
Note{ G4, 1200 }, Note{ silent, 300 }, // Queen!
|
||||||
|
|
||||||
|
// --- SECTION 2 ---
|
||||||
|
Note{ D5, 600 }, Note{ D5, 600 }, Note{ D5, 600 }, // Send her vic-
|
||||||
|
Note{ D5, 900 }, Note{ C5, 300 }, Note{ B4, 600 }, // -to-ri-ous
|
||||||
|
Note{ C5, 600 }, Note{ C5, 600 }, Note{ C5, 600 }, // Hap-py and
|
||||||
|
Note{ C5, 900 }, Note{ B4, 300 }, Note{ A4, 600 }, // glo-ri-ous
|
||||||
|
|
||||||
|
// --- FINAL ---
|
||||||
|
Note{ B4, 450 }, Note{ C5, 150 }, Note{ B4, 300 }, Note{ A4, 300 }, Note{ G4, 600 }, // Long to reign
|
||||||
|
Note{ B4, 600 }, Note{ C5, 600 }, Note{ D5, 600 }, // o - ver us
|
||||||
|
Note{ E5, 450 }, Note{ C5, 150 }, Note{ B4, 600 }, Note{ A4, 600 }, // God save the
|
||||||
|
Note{ G4, 1800 } // Queen!
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
38
pitches/pitches/music/greensleeves.h
Normal file
38
pitches/pitches/music/greensleeves.h
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array greensleeves = {
|
||||||
|
// --- Part A (major theme: "Alas, my love, you do me wrong") ---
|
||||||
|
Note{ A4, 300 },
|
||||||
|
Note{ C5, 600 }, Note{ D5, 300 }, Note{ E5, 450 }, Note{ F5, 150 }, Note{ E5, 300 },
|
||||||
|
Note{ D5, 600 }, Note{ B4, 300 }, Note{ G4, 450 }, Note{ A4, 150 }, Note{ B4, 300 },
|
||||||
|
Note{ C5, 600 }, Note{ A4, 300 }, Note{ A4, 450 }, Note{ GS4, 150 }, Note{ A4, 300 },
|
||||||
|
Note{ B4, 600 }, Note{ GS4, 300 }, Note{ E4, 500 }, Note{ silent, 100 },
|
||||||
|
|
||||||
|
Note{ A4, 300 },
|
||||||
|
Note{ C5, 600 }, Note{ D5, 300 }, Note{ E5, 450 }, Note{ F5, 150 }, Note{ E5, 300 },
|
||||||
|
Note{ D5, 600 }, Note{ B4, 300 }, Note{ G4, 450 }, Note{ A4, 150 }, Note{ B4, 300 },
|
||||||
|
Note{ C5, 450 }, Note{ B4, 150 }, Note{ A4, 300 }, Note{ GS4, 450 }, Note{ FS4, 150 }, Note{ GS4, 300 },
|
||||||
|
Note{ A4, 900 }, Note{ A4, 800 }, Note{ silent, 100 },
|
||||||
|
|
||||||
|
// --- Part B (minor theme: "Greensleeves was all my joy") ---
|
||||||
|
Note{ G5, 900 }, Note{ G5, 450 }, Note{ F5, 150 }, Note{ E5, 300 },
|
||||||
|
Note{ D5, 600 }, Note{ B4, 300 }, Note{ G4, 450 }, Note{ A4, 150 }, Note{ B4, 300 },
|
||||||
|
Note{ C5, 600 }, Note{ A4, 300 }, Note{ A4, 450 }, Note{ GS4, 150 }, Note{ A4, 300 },
|
||||||
|
Note{ B4, 600 }, Note{ GS4, 300 }, Note{ E4, 800 }, Note{ silent, 100 },
|
||||||
|
|
||||||
|
Note{ G5, 900 }, Note{ G5, 450 }, Note{ F5, 150 }, Note{ E5, 300 },
|
||||||
|
Note{ D5, 600 }, Note{ B4, 300 }, Note{ G4, 450 }, Note{ A4, 150 }, Note{ B4, 300 },
|
||||||
|
Note{ C5, 450 }, Note{ B4, 150 }, Note{ A4, 300 }, Note{ GS4, 450 }, Note{ FS4, 150 }, Note{ GS4, 300 },
|
||||||
|
Note{ A4, 1200 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
35
pitches/pitches/music/happy_birthday.h
Normal file
35
pitches/pitches/music/happy_birthday.h
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array happy_birthday = {
|
||||||
|
// "Happy birthday to you"
|
||||||
|
Note{ C4, 300 }, Note{ C4, 150 }, Note{ D4, 600 },
|
||||||
|
Note{ C4, 600 }, Note{ F4, 600 },
|
||||||
|
Note{ E4, 1200 }, Note{ silent, 100 },
|
||||||
|
|
||||||
|
// "Happy birthday to you"
|
||||||
|
Note{ C4, 300 }, Note{ C4, 150 }, Note{ D4, 600 },
|
||||||
|
Note{ C4, 600 }, Note{ G4, 600 },
|
||||||
|
Note{ F4, 1200 }, Note{ silent, 100 },
|
||||||
|
|
||||||
|
// "Happy birthday dear [name]"
|
||||||
|
Note{ C4, 300 }, Note{ C4, 150 }, Note{ C5, 600 },
|
||||||
|
Note{ A4, 600 }, Note{ F4, 600 },
|
||||||
|
Note{ E4, 600 }, Note{ D4, 600 },
|
||||||
|
Note{ silent, 100 },
|
||||||
|
|
||||||
|
// "Happy birthday to you"
|
||||||
|
Note{ AS4, 300 }, Note{ AS4, 150 }, Note{ A4, 600 },
|
||||||
|
Note{ F4, 600 }, Note{ G4, 600 },
|
||||||
|
Note{ F4, 1200 }, Note{ silent, 200 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
37
pitches/pitches/music/indiana_jones.h
Normal file
37
pitches/pitches/music/indiana_jones.h
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array indiana_jones = {
|
||||||
|
// --- MOTIF CÉLÈBRE (L'appel) ---
|
||||||
|
Note{ E4, 250 }, Note{ F4, 150 }, Note{ G4, 150 }, Note{ C5, 600 }, // Ta-ta-ta-Taaa !
|
||||||
|
Note{ silent, 50 },
|
||||||
|
Note{ D4, 250 }, Note{ E4, 150 }, Note{ F4, 900 }, // Ta-ta-Taaaa
|
||||||
|
Note{ silent, 50 },
|
||||||
|
|
||||||
|
Note{ G4, 250 }, Note{ A4, 150 }, Note{ B4, 150 }, Note{ F5, 600 }, // Ta-ta-ta-Taaa !
|
||||||
|
Note{ silent, 50 },
|
||||||
|
Note{ A4, 250 }, Note{ B4, 150 }, Note{ C5, 450 }, Note{ D5, 450 }, Note{ E5, 450 }, // Montée finale
|
||||||
|
|
||||||
|
// --- DEUXIÈME PHRASE (Le thème principal) ---
|
||||||
|
Note{ E4, 150 }, Note{ F4, 150 }, Note{ G4, 150 }, Note{ C5, 600 },
|
||||||
|
Note{ silent, 50 },
|
||||||
|
Note{ D5, 150 }, Note{ E5, 150 }, Note{ F5, 900 },
|
||||||
|
Note{ silent, 50 },
|
||||||
|
|
||||||
|
Note{ G5, 150 }, Note{ G5, 150 }, // Les deux notes rapides avant la fin
|
||||||
|
Note{ E5, 450 }, Note{ D5, 150 }, Note{ G5, 450 }, Note{ E5, 150 },
|
||||||
|
Note{ D5, 450 }, Note{ G5, 150 }, Note{ E5, 450 }, Note{ D5, 150 },
|
||||||
|
|
||||||
|
// Résolution
|
||||||
|
Note{ C5, 900 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
39
pitches/pitches/music/jingle_bells.h
Normal file
39
pitches/pitches/music/jingle_bells.h
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array jingle_bells = {
|
||||||
|
// "Dashing through the snow"
|
||||||
|
Note{ E5, 400 }, Note{ E5, 400 }, Note{ E5, 800 },
|
||||||
|
Note{ E5, 400 }, Note{ E5, 400 }, Note{ E5, 800 },
|
||||||
|
Note{ E5, 400 }, Note{ G5, 400 }, Note{ C5, 400 }, Note{ D5, 400 },
|
||||||
|
Note{ E5, 1200 }, Note{ silent, 100 },
|
||||||
|
|
||||||
|
// "In a one-horse open sleigh"
|
||||||
|
Note{ F5, 400 }, Note{ F5, 400 }, Note{ F5, 400 }, Note{ F5, 400 },
|
||||||
|
Note{ F5, 400 }, Note{ E5, 400 }, Note{ E5, 400 }, Note{ E5, 200 }, Note{ E5, 200 },
|
||||||
|
Note{ E5, 400 }, Note{ D5, 400 }, Note{ D5, 400 }, Note{ E5, 400 },
|
||||||
|
Note{ D5, 800 }, Note{ G5, 800 },
|
||||||
|
Note{ silent, 100 },
|
||||||
|
|
||||||
|
// Refrain: "Jingle bells, jingle bells"
|
||||||
|
Note{ E5, 400 }, Note{ E5, 400 }, Note{ E5, 800 },
|
||||||
|
Note{ E5, 400 }, Note{ E5, 400 }, Note{ E5, 800 },
|
||||||
|
Note{ E5, 400 }, Note{ G5, 400 }, Note{ C5, 400 }, Note{ D5, 400 },
|
||||||
|
Note{ E5, 1200 }, Note{ silent, 100 },
|
||||||
|
|
||||||
|
// "Oh what fun it is to ride"
|
||||||
|
Note{ F5, 400 }, Note{ F5, 400 }, Note{ F5, 400 }, Note{ F5, 400 },
|
||||||
|
Note{ F5, 400 }, Note{ E5, 400 }, Note{ E5, 400 }, Note{ E5, 200 }, Note{ E5, 200 },
|
||||||
|
Note{ G5, 400 }, Note{ G5, 400 }, Note{ F5, 400 }, Note{ D5, 400 },
|
||||||
|
Note{ C5, 1200 }, Note{ silent, 200 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
61
pitches/pitches/music/mario.h
Normal file
61
pitches/pitches/music/mario.h
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array mario = {
|
||||||
|
// --- L'INTRODUCTION (Fanfare) ---
|
||||||
|
Note{ E5, 125 }, Note{ E5, 125 }, Note{ silent, 125 }, Note{ E5, 125 },
|
||||||
|
Note{ silent, 125 }, Note{ C5, 125 }, Note{ E5, 125 }, Note{ silent, 125 },
|
||||||
|
Note{ G5, 125 }, Note{ silent, 375 }, Note{ G4, 125 }, Note{ silent, 375 },
|
||||||
|
|
||||||
|
// --- SECTION A (Le Thème Principal) ---
|
||||||
|
Note{ C5, 250 }, Note{ G4, 250 }, Note{ E4, 250 },
|
||||||
|
Note{ A4, 250 }, Note{ B4, 250 }, Note{ AS4, 125 }, Note{ A4, 250 },
|
||||||
|
Note{ G4, 175 }, Note{ E5, 175 }, Note{ G5, 175 },
|
||||||
|
Note{ A5, 250 }, Note{ F5, 125 }, Note{ G5, 125 },
|
||||||
|
Note{ silent, 125 }, Note{ E5, 125 }, Note{ silent, 125 }, Note{ C5, 125 },
|
||||||
|
Note{ D5, 125 }, Note{ B4, 125 }, Note{ silent, 250 },
|
||||||
|
|
||||||
|
// --- REPRISE SECTION A ---
|
||||||
|
Note{ C5, 250 }, Note{ G4, 250 }, Note{ E4, 250 },
|
||||||
|
Note{ A4, 250 }, Note{ B4, 250 }, Note{ AS4, 125 }, Note{ A4, 250 },
|
||||||
|
Note{ G4, 175 }, Note{ E5, 175 }, Note{ G5, 175 },
|
||||||
|
Note{ A5, 250 }, Note{ F5, 125 }, Note{ G5, 125 },
|
||||||
|
Note{ silent, 125 }, Note{ E5, 125 }, Note{ silent, 125 }, Note{ C5, 125 },
|
||||||
|
Note{ D5, 125 }, Note{ B4, 125 }, Note{ silent, 250 },
|
||||||
|
|
||||||
|
// --- SECTION B (La Descente) ---
|
||||||
|
Note{ silent, 250 }, Note{ G5, 125 }, Note{ FS5, 125 }, Note{ F5, 125 },
|
||||||
|
Note{ DS5, 250 }, Note{ E5, 250 }, Note{ silent, 125 },
|
||||||
|
Note{ GS4, 125 }, Note{ A4, 125 }, Note{ C5, 125 }, Note{ silent, 125 },
|
||||||
|
Note{ A4, 125 }, Note{ C5, 125 }, Note{ D5, 125 },
|
||||||
|
|
||||||
|
Note{ silent, 250 }, Note{ G5, 125 }, Note{ FS5, 125 }, Note{ F5, 125 },
|
||||||
|
Note{ DS5, 250 }, Note{ E5, 250 }, Note{ silent, 125 },
|
||||||
|
Note{ C6, 125 }, Note{ silent, 125 }, Note{ C6, 125 }, Note{ C6, 125 },
|
||||||
|
Note{ silent, 250 }, Note{ G4, 125 }, Note{ silent, 250 },
|
||||||
|
|
||||||
|
// --- SECTION C (Le Pont - Rythme Syncopé) ---
|
||||||
|
Note{ C5, 250 }, Note{ G4, 250 }, Note{ E4, 250 },
|
||||||
|
Note{ A4, 250 }, Note{ B4, 250 }, Note{ AS4, 125 }, Note{ A4, 250 },
|
||||||
|
Note{ G4, 175 }, Note{ E5, 175 }, Note{ G5, 175 },
|
||||||
|
Note{ A5, 250 }, Note{ F5, 125 }, Note{ G5, 125 },
|
||||||
|
Note{ silent, 125 }, Note{ E5, 125 }, Note{ silent, 125 }, Note{ C5, 125 },
|
||||||
|
Note{ D5, 125 }, Note{ B4, 125 }, Note{ silent, 250 },
|
||||||
|
|
||||||
|
// Final de la boucle (Transition vers le début)
|
||||||
|
Note{ E5, 125 }, Note{ C5, 250 }, Note{ G4, 250 }, Note{ GS4, 125 },
|
||||||
|
Note{ A4, 250 }, Note{ F5, 125 }, Note{ F5, 125 }, Note{ A4, 250 },
|
||||||
|
Note{ B4, 125 }, Note{ A5, 125 }, Note{ A5, 125 }, Note{ A5, 125 },
|
||||||
|
Note{ G5, 125 }, Note{ F5, 125 }, Note{ E5, 125 }, Note{ C5, 125 },
|
||||||
|
Note{ A4, 125 }, Note{ G4, 125 }, Note{ silent, 500 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
32
pitches/pitches/music/marseillaise.h
Normal file
32
pitches/pitches/music/marseillaise.h
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array marseillaise = {
|
||||||
|
// --- Allons enfants de la Patrie ---
|
||||||
|
Note{ D4, 450 }, Note{ D4, 150 },
|
||||||
|
Note{ G4, 600 }, Note{ G4, 600 }, Note{ A4, 600 }, Note{ A4, 600 },
|
||||||
|
Note{ D5, 900 }, Note{ B4, 300 }, Note{ G4, 600 }, Note{ silent, 50 },
|
||||||
|
|
||||||
|
// --- Le jour de gloire est arrivé ---
|
||||||
|
Note{ G4, 450 }, Note{ B4, 150 }, Note{ D5, 600 }, Note{ B4, 600 }, Note{ G4, 600 },
|
||||||
|
Note{ A4, 1200 }, Note{ silent, 200 },
|
||||||
|
|
||||||
|
// --- Aux armes citoyens ! (Refrain) ---
|
||||||
|
Note{ A4, 450 }, Note{ B4, 150 }, Note{ C5, 600 }, Note{ C5, 600 },
|
||||||
|
Note{ B4, 600 }, Note{ A4, 600 }, Note{ G4, 600 },
|
||||||
|
Note{ FS4, 600 }, Note{ G4, 600 }, Note{ A4, 900 }, Note{ D4, 300 },
|
||||||
|
|
||||||
|
// --- Formez vos bataillons ---
|
||||||
|
Note{ B4, 600 }, Note{ C5, 600 }, Note{ D5, 600 }, Note{ G4, 600 },
|
||||||
|
Note{ B4, 900 }, Note{ A4, 300 }, Note{ G4, 1200 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
38
pitches/pitches/music/tetris.h
Normal file
38
pitches/pitches/music/tetris.h
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array tetris = {
|
||||||
|
// Main theme
|
||||||
|
Note{ E5, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ B4, 125 }, Note{ C5, 125 }, Note{ D5, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ C5, 125 }, Note{ B4, 125 }, Note{ A4, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ A4, 125 }, Note{ C5, 125 }, Note{ E5, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ D5, 125 }, Note{ C5, 125 }, Note{ B4, 375 }, Note{ silent, 62 },
|
||||||
|
Note{ C5, 125 }, Note{ D5, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ E5, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ C5, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ A4, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ A4, 250 }, Note{ silent, 500 },
|
||||||
|
|
||||||
|
// Variation 1
|
||||||
|
Note{ D5, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ F5, 125 }, Note{ A5, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ G5, 125 }, Note{ F5, 125 }, Note{ E5, 375 }, Note{ silent, 62 },
|
||||||
|
Note{ C5, 125 }, Note{ E5, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ D5, 125 }, Note{ C5, 125 }, Note{ B4, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ B4, 125 }, Note{ C5, 125 }, Note{ D5, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ E5, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ C5, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ A4, 250 }, Note{ silent, 62 },
|
||||||
|
Note{ A4, 250 }, Note{ silent, 500 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
39
pitches/pitches/music/twinkle_twinkle.h
Normal file
39
pitches/pitches/music/twinkle_twinkle.h
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array twinkle_twinkle = {
|
||||||
|
// "Twinkle, twinkle, little star"
|
||||||
|
Note{ C4, 400 }, Note{ C4, 400 }, Note{ G4, 400 }, Note{ G4, 400 },
|
||||||
|
Note{ A4, 400 }, Note{ A4, 400 }, Note{ G4, 800 },
|
||||||
|
|
||||||
|
// "How I wonder what you are"
|
||||||
|
Note{ F4, 400 }, Note{ F4, 400 }, Note{ E4, 400 }, Note{ E4, 400 },
|
||||||
|
Note{ D4, 400 }, Note{ D4, 400 }, Note{ C4, 800 },
|
||||||
|
|
||||||
|
// "Up above the world so high"
|
||||||
|
Note{ G4, 400 }, Note{ G4, 400 }, Note{ F4, 400 }, Note{ F4, 400 },
|
||||||
|
Note{ E4, 400 }, Note{ E4, 400 }, Note{ D4, 800 },
|
||||||
|
|
||||||
|
// "Like a diamond in the sky"
|
||||||
|
Note{ G4, 400 }, Note{ G4, 400 }, Note{ F4, 400 }, Note{ F4, 400 },
|
||||||
|
Note{ E4, 400 }, Note{ E4, 400 }, Note{ D4, 800 },
|
||||||
|
|
||||||
|
// "Twinkle, twinkle, little star"
|
||||||
|
Note{ C4, 400 }, Note{ C4, 400 }, Note{ G4, 400 }, Note{ G4, 400 },
|
||||||
|
Note{ A4, 400 }, Note{ A4, 400 }, Note{ G4, 800 },
|
||||||
|
|
||||||
|
// "How I wonder what you are"
|
||||||
|
Note{ F4, 400 }, Note{ F4, 400 }, Note{ E4, 400 }, Note{ E4, 400 },
|
||||||
|
Note{ D4, 400 }, Note{ D4, 400 }, Note{ C4, 800 },
|
||||||
|
Note{ silent, 200 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
39
pitches/pitches/music/vive_le_vent.h
Normal file
39
pitches/pitches/music/vive_le_vent.h
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "../pitches.h"
|
||||||
|
|
||||||
|
#include <array>
|
||||||
|
|
||||||
|
namespace pitches
|
||||||
|
{
|
||||||
|
// clang-format off
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
constexpr std::array vive_le_vent = {
|
||||||
|
// "Vive le vent, vive le vent"
|
||||||
|
Note{ E5, 400 }, Note{ E5, 400 }, Note{ E5, 800 },
|
||||||
|
Note{ E5, 400 }, Note{ E5, 400 }, Note{ E5, 800 },
|
||||||
|
Note{ E5, 400 }, Note{ G5, 400 }, Note{ C5, 400 }, Note{ D5, 400 },
|
||||||
|
Note{ E5, 1200 }, Note{ silent, 100 },
|
||||||
|
|
||||||
|
// "Vive le vent d'hiver"
|
||||||
|
Note{ F5, 400 }, Note{ F5, 400 }, Note{ F5, 400 }, Note{ F5, 400 },
|
||||||
|
Note{ F5, 400 }, Note{ E5, 400 }, Note{ E5, 400 }, Note{ E5, 200 }, Note{ E5, 200 },
|
||||||
|
Note{ E5, 400 }, Note{ D5, 400 }, Note{ D5, 400 }, Note{ E5, 400 },
|
||||||
|
Note{ D5, 800 }, Note{ G5, 800 },
|
||||||
|
Note{ silent, 100 },
|
||||||
|
|
||||||
|
// "Qui s'en va sifflant, soufflant"
|
||||||
|
Note{ E5, 400 }, Note{ E5, 400 }, Note{ E5, 800 },
|
||||||
|
Note{ E5, 400 }, Note{ E5, 400 }, Note{ E5, 800 },
|
||||||
|
Note{ E5, 400 }, Note{ G5, 400 }, Note{ C5, 400 }, Note{ D5, 400 },
|
||||||
|
Note{ E5, 1200 }, Note{ silent, 100 },
|
||||||
|
|
||||||
|
// "Dans les grands sapins verts"
|
||||||
|
Note{ F5, 400 }, Note{ F5, 400 }, Note{ F5, 400 }, Note{ F5, 400 },
|
||||||
|
Note{ F5, 400 }, Note{ E5, 400 }, Note{ E5, 400 }, Note{ E5, 200 }, Note{ E5, 200 },
|
||||||
|
Note{ G5, 400 }, Note{ G5, 400 }, Note{ F5, 400 }, Note{ D5, 400 },
|
||||||
|
Note{ C5, 1200 }, Note{ silent, 200 }
|
||||||
|
};
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
// clang-format on
|
||||||
|
}; // namespace pitches
|
||||||
Reference in New Issue
Block a user