Module Doc.Data (.ml)

module Data: sig .. end


Exemples de jeux d'instruments historiques

Les orgues électromécaniques : à roues phoniques ou bien électroniques : soit à lampes soit à transistors discrets s'inspirent des orgues pneumatiques à tuyaux. Ceux-ci s'inspirent des instruments à vent ou à cordes frottées. Les instruments à vent cylindriques (trompette, clarinette, cor, trombone...) favorisent plus ou moins les harmoniques impaires et donnent un son clair ; les instruments à vent coniques (hautbois, basson, saxophone, cornet à bouquin, bugle et saxhorns...) favorisent les harmoniques paires et donnent un son relativement plus suave. Le cas des flûtes est différent.

TIRETTES des Hammond A100, B3, C3, RT3, XK*, XB* ; KeyB Solo, Duo, claviaNord C* en mode Hammond... Tirettes du clavier supérieur des Hammond M, M2, M3, M102...

  1. Bourdon 16' sous-fondamentale
  2. Quint 16/3' = 5+1/3' troisième harmonique de la sous-fondamentale
  3. Principal 8' fondamentale
  4. Octave 4' deuxième harmonique percussion percussion sur deuxième
  5. Nazard 8/3' = 2+2/3' troisième harmonique percussion sur troisième
  6. Block flöte 2' quatrième harmonique
  7. Tierce 8/5' = 1+3/5' cinquième harmonique
  8. Larigot 4/3' = 1+1/3' sixième harmonique -> percussion sur clavier supérieur de série M
  9. Sifflöte 1' huitième harmonique ne produit pas de son quand la percussion est active
La septième harmonique (deux octaves et une septième mineure) a été omise parce que les rapports de fréquences étaient trop compliqués. Rien n'empêche de la rajouter...

TIRETTES du clavier inférieur des Hammond M, M2, M3, M102...

  1. 8' fondamentale
  2. 4' deuxième harmonique
  3. 8/3' = 2+2/3' troisième harmonique
  4. 2' quatrième harmonique
  5. 8/5' = 1+3/5' cinquième harmonique
  6. 4/3' = 1+1/3' sixième harmonique
  7. 1' huitième harmonique
  8. II : 4/5' et 2/3' dixième et douzième harmoniques

TIRETTES du clavier des claviaNord C* en mode Vox...

  1. 16' fondamentale
  2. 8' harmonique 2
  3. 4' harmonique 4
  4. 2' harmonique 8
  5. II harmoniques 3 et 5
  6. III harmoniques 6, 8 et 16
  7. IV harmoniques 12, 16, 20 et 32
  8. ~ signal filtré doux et sombre
  9. vv signal non filtré brillant et intense

TIRETTES du clavier supérieur des Vox...

  1. 16'
  2. 8'
  3. 4'
  4. II
  5. III
  6. ~
  7. vv

TIRETTES du clavier inférieur des Vox...

  1. 16' (absent chez Native Instruments mais il y a un potentiomètre de basse)
  2. 8'
  3. 4'
  4. 2'
  5. IV
  6. ~
  7. vv

TIRETTES du clavier des claviaNord C* en mode Farfisa...

  1. Bass16 fondamentale
  2. Strings16 fondamentale
  3. Flute8 harmonique 2
  4. Oboe8 harmonique 2
  5. Trumpet8 harmonique 2
  6. Strings8 harmonique 2
  7. Flute4 harmonique 4
  8. Strings4 harmonique 4
  9. 2+2/3 harmonique 6

INTERRUPTEURS du Farfisa compact chez Native Instruments en mode multitone booster off

  1. Bass16 fondamentale
  2. Strings16 fondamentale
  3. Flute8 harmonique 2
  4. Oboe8 harmonique 2
  5. Trumpet8 harmonique 2
  6. Strings8 harmonique 2
  7. Flute4 harmonique 4
  8. Piccolo4 harmonique 4
  9. Strings4 harmonique 4

INTERRUPTEURS du Farfisa compact chez Native Instruments en mode multitone booster on

  1. 16 fondamentale
  2. 8 harmonique 2
  3. 4 harmonique 4
  4. ALL booster toutes harmoniques non filtrées
Il y a un potentiomètre de basse indépendant des modes.

Novachord Hammond

Le novachord Hammond comporte douze oscillateurs à tubes électroniques et des diviseurs de fréquence pour fabriquer les soixante-douze notes de la tessiture.

Le timbre des notes est changé par filtrage : il s'agit plutôt de synthèse soustractive à partir d'oscillateurs riches en harmoniques.

Exemples de réglages d'instruments historiques

RÉGLAGES PRINCIPAUX des orgues Hammond

  1. vibrato 1, 2, 3 : différentes profondeurs sur la ligne à retard,
  2. chorus 1, 2, 3 (chorus = vibrato mélangé avec le son droit),
  3. percussion decay: slow, fast ; level: normal, soft ; sur deuxième ou troisième harmonique.

RÉGLAGES PRINCIPAUX des novachords Hammond

  1. chant ou bien percussion avec six formes d'enveloppes,
  2. vibrato petit ou normal,
  3. équilibrage de timbre (filtre passe-bas dépendant du clavier),
  4. trois résonateurs avec trois niveaux chacun (filtres passe-bande).

RÉGLAGES PRINCIPAUX des enceintes Leslie

  1. fast (tremolo),
  2. slow (chorale),
  3. brake.

Quelques données physiques

Le moteur des générateurs de Hammond tourne à 20 Hz quand le secteur est à 60 Hz et les roues comportent 2, 4, 8, 16, 32, 64, 128, 192 voire 256 dents.

Le balayeur de vibrato -vibrato scanner- (par couplage capacitif vers différents points d'une ligne à retard) tourne à 412 tours par minute, soit environ 6,87 Hz.

Copyright Stéphane Grognet
IREM des Pays de la Loire - Université de Nantes
Laboratoire de mathématiques Jean Leray UMR 6629 CNRS
version 0.3


Données générales


val adresse_phase_generateurs : string
val adresse_phase_bf : string
val adresse_rotation : string
val adresse_ancien_echantillon : string
val adresse_etat_clavier : string
val adresse_etat_orgue : string
val adresse_etat_jeux : string
val adresse_etat_reglages : string
val adresse_archive_jeux : string
val adresse_archive_reglages : string
val adresse_son : string
val adresse_archive_son : string
val adresse_entete : string
val frequence_d_echantillonnage : int

44100 = ( 2 * 3 * 5 * 7 ) ^ 2
val taille_d_echantillon : int
let taille_d_echantillon = 441 ;; let taille_d_echantillon = 882 ;; let taille_d_echantillon = 1536 ;; let taille_d_echantillon = 1764 ;; let taille_d_echantillon = 4410 ;;
val pred_taille_d_echantillon : int
val taille_d_echantillon_reelle : float
val pred_taille_d_echantillon_reelle : float
val duree_d_echantillon : float
val pas : float
Constantes de dosage entre deux quantités pour un paramètre variant de 0 à 127 avec une perception logarithmique.
val pas2 : float
0.5 ^ ( 1/64 )
val pas4 : float
0.5 ^ ( 1/32 )
val pas8 : float
0.5 ^ ( 1/16 )
val pas16 : float
0.5 ^ ( 1/8 )
val pas32 : float
0.5 ^ ( 1/4 )
val pas64 : float
0.5 ^ ( 1/2 )
val antipas : float
val antipas2 : float
1 - pas
val antipas4 : float
1 - pas2
val antipas8 : float
1 - pas4
val antipas16 : float
1 - pas8
val antipas32 : float
1 - pas16
val antipas64 : float
1 - pas32

1 - pas64
val coefficient_gain : float

coefficient_gain ^ 64 correspond à 10 ^ (-1.5) c'est-à-dire -30 dBV.

Dans la norme general midi, le la du diapason (440 à 442 hz) porte le numéro 69, et le do en-dessous (do médian) le numéro 60.
val excursion_pitch : float

2.01 ^ (1/(64*3)). La fréquence du la du diapason est excursion ^ ( parametres.(molette_pitch) - 64 ) * f0 où f0 est la fréquence du la du diapason (=~= 441hz). Ceci donne une excursion maximale de 2 tons du diapason (pitch bend).
val coefficient_diapason : float

2.01 ^ (1/(64*12)). La fréquence du la du diapason avec molette de pitch au repos est coefficient_diapason ^ ( parametres.(bouton_diapason) - 64 ) * 441 hz. Ceci donne une excursion maximale d'un demi-ton.
val un_douzieme : float
L'octave correspond à une multiplication de la fréquence par une valeur proche de 2. Les coefficients multiplicateurs de la fréquence pour monter ou descendre d'un demi-ton en découlent.
val rose_zero : float
Avec 0.35 l'amplitude est limitée ; elle devrait rester entre -1 et 1 si aucun effet n'est rajouté.
val modulo_vibrato : int
val angle_mini : float

2 * pi / 127.0
val pi_sur_quatre : float
val pi_sur_deux : float
val pi : float
val facteur_pulsation : float
val nombre_de_parametres_clavier : int
val nombre_de_parametres_orgue : int
val coefficient_octave : float

COEFFICIENT_OCTAVE = 1/6400. L'octave correspond à une multiplication de la fréquence par 2 + COEFFICIENT_OCTAVE * parametres.(bouton_octave). Ceci donne 2 pour 0 ; 2.01 pour 64 et 2.01984375 pour 127.
val coeff_delai : float

Numéros des paramètres de commande


val molette_pitch : int
val tirette0 : int
molette modulation ou curseur 0
val tirette1 : int
curseur 1
val tirette2 : int
curseur 2
val tirette3 : int
curseur 3
val tirette4 : int
curseur 4
val tirette5 : int
curseur 5
val tirette6 : int
curseur 6
val tirette7 : int
curseur 7
val tirette8 : int
curseur 8
val bouton_swell : int
bouton 1
val bouton_saturation : int
bouton 8
val bouton_inflexion : int
bouton 2
val bouton_dephasage_inflexion : int
bouton 3
val bouton_dephasage_creneaux : int
bouton 4
val bouton_niveau_inflexion : int
bouton 5
val bouton_rien_0 : int
bouton 6
val bouton_niveau_creneaux : int
bouton 7
val bouton_longueur_clic : int
bouton 2
val bouton_diff_enveloppe_percu : int
bouton 3
val bouton_diff_niveau_percu : int
bouton 4
val bouton_niveau_clic : int
bouton 5
val bouton_enveloppe_percu : int
bouton 6
val bouton_niveau_percu : int
bouton 7
val bouton_diff_excursion_vibrato : int
bouton 2
val bouton_diff_basse_frequence : int
bouton 3
val bouton_diff_dephasage_rotation : int
bouton 4
val bouton_excursion_vibrato : int
bouton 5
val bouton_basse_frequence : int
bouton 6
val bouton_dephasage_rotation : int
bouton 7
val bouton_diapason : int
bouton 2
val bouton_octave : int
bouton 3
val bouton_rose : int
bouton 4
val bouton_coupure : int
bouton 5
val bouton_timbre : int
bouton 6
val bouton_equilibre : int
bouton 7
val bouton_delai_reverb : int
bouton 2
val bouton_rien_1 : int
bouton 3
val bouton_diff_tremolo : int
bouton 4
val bouton_niveau_reverb : int
bouton 5
val bouton_rien_2 : int
bouton 6
val bouton_tremolo : int
bouton 7
val poussoir_vibrato_chorus : int
boucle ; modulo MODULO_VIBRATO
val polyphonie : int
nombre de notes simultanées
val detache : int
une touche a récemment été enfoncée

Valeurs des tirettes en demi-tons d'écart par rapport à la fondamentale


val tirettes : int array

Fabrication des fréquences et décroissances d'amplitudes


val pulsation : float -> float -> float -> string -> unit
Parameters:
() : float
() : float
() : float
() : string