|
CONCLUSION
Merci à C.Bourdoncle et L.Favre pour leur participation à la rédaction de cet article
La synthèse sonore occupe une
place de choix autant pour les compositeurs que pour les
scientifiques.
L’intérêt
du compositeur pour la synthèse réside dans la
possibilité d’organiser le matériau sonore comme il
l’entend. Les possibilités de la synthèse sonore
s’étendent ainsi de la génération du son
(création), en passant par «l’hybridation »
pour réaliser des sonorités intermédiaires
(interpolation) jusqu’au dépassement des limites des
instruments naturels (extrapolation).
L’intérêt
du scientifique recouvre deux objectifs : accroître nos
connaissances relatives à la génération et à
la perception des sons (simuler pour mieux comprendre) et imaginer
des systèmes capables de structurer et de modifier ces
connaissances (comprendre pour mieux simuler, interpoler et
extrapoler).
Il y a encore
quelques années, on distinguait musique « électronique »
et acoustique ou analogique. La musique électronique était
alors destinée à un public d’amateurs avertis.
Souvent répétitive, elle était constituée
de sons relativement pauvres en harmoniques.
Aujourd’hui,
cette différence disparaît peu à peu ;
l’amélioration des performances permet d’effectuer des
traitements complexes en temps réel et ces technologies sont
largement utilisées dans la plupart des compositions modernes.
La nouvelle
tendance est même de mélanger les styles ; on
considère maintenant que la musique et les traitements
réalisés par l’intermédiaire d’appareils
électroniques peuvent apporter beaucoup de richesse à
une composition acoustique : nouvelles possibilités
d’effets sur les guitares et même création
d’instruments nouveaux …
ANNEXES
Le théorème
de Shannon
"L'information véhiculée
par un signal dont le spectre est à support borné n'est
pas modifiée par l'opération d'échantillonnage à
condition que la fréquence d'échantillonnage soit au
moins deux fois plus grande que la plus grande fréquence
contenue dans le signal.
La reconstitution du signal original
peut être effectuée par un filtre passe-bas idéal
de fréquence de coupure égale à la moitié
de la fréquence d'échantillonnage."
Démontrons ce théorème.
Soit
f(t) un signal dont le spectre est à support borné :
F(w)
= 0 pour |w| > wmax , avec :
Notons
que le module du spectre d'un signal à valeurs réelles
est une fonction paire de la fréquence, ce qui justifie
la symétrie en "w" de la condition.
Illustration
:
Le
signal échantillonné à la cadence Te
est :
étant
la distribution de Dirac
Son
spectre est :
(1)
Cette
expression exprime la répétition périodique
du spectre. On peut aussi écrire la transformée de
Fourier du signal échantillonné sous la forme :
qui
est aussi :
et
en définitive :
(2)
Or,
le fait que F(w) soit à support borné nous autorise à
écrire :
F(w)
= Te .
F*(w)
pour |w| < wmax
; F(w) = 0 pour |w| > wmax
(3)
sous
la condition que : we - wmax > wmax
, soit : we > 2. Wmax
(condition de Shannon)
Illustration
:
On
peut écrire la transformée inverse de Fourier de F(w):
,
car F(w) est nulle en dehors de cet intervalle.
Et
aussi en vertu de (3)
:
,
soit encore :
L'intégrale
vaut : 2.wmax . sinc [wmax.(t-n.Te)]
, ce qui donne pour f(t) :
Cette
dernière égalité signifie que f(t) est
entièrement déterminé par la connaissance de ses
échantillons (en nombre infini ...) aux instants n.Te
et que la fonction sinus cardinal sert à relier les
échantillons ; on l'appelle parfois "fonction
d'interpolation de Shannon". Il n'y a donc pas de perte
d'information si (et seulement si) l'on possède tous les
échantillons ; ceci est le cas puisqu'on possède f*(t)
après l'opération d'échantillonnage.
Afin
de générer les fonctions sinus cardinal, il suffit de
filtrer le signal f*(t), qui est une suite d'impulsions,
par un filtre dont la réponse impulsionnelle est un sinus
cardinal. Un tel filtre est bien connu : il s'agit du passe-bas
idéal. On obtiendra en sortie une reconstruction de f(t), à
une constante multiplicative près, et à un retard près.
Ce filtre n'est malheureusement pas causal, et donc est irréalisable
en temps réel, mais on peut bien sûr l'approcher ; c'est
ce qui est réalisé
dans toute opération
de reconstruction, à l'aide d'un filtre interpolateur. (Les
signaux à spectre à support borné sont de durée
infinie, ce qui les exclut d'emblée de toute expérimentation
: on les approche par des signaux de durée suffisante.)
Illustration
: un signal
original (-----)
comportant une composante à 1 rd/s et une autre à 1,5
rd/s est échantillonné à quatre fois 1,5 rd/s.
Les
différents sinus cardinaux (----)
pondérés par l'échantillon correspondant sont
ajoutés pour reconstituer (-----)
le signal. On peut noter une distorsion, dûe bien sûr à
la durée finie de la simulation.
Script
Matlab de génération de l'image ci-dessus :
Construction
de la "base" de sinus cardinaux .
t=-5:0.1:5;,
y=sin(t)+sin(1.5*t);
wm=1.5; , we=4*wm;, Te=2*pi/we; ,
tt=-5:Te:5;
yy=interp1(t,y,tt,'spline');
ysinc=[];
for
k=1:10,yyk=yy(k);,ttk=tt(k);,ysinc=[ysinc
yyk*sin(wm*(t'-ttk))./(wm*(t'-ttk))];,end
figure,plot(t,y,'-r',t,sum(ysinc'),'-b',t,ysinc,'--m'),grid
on
Une
dernière remarque : il a été dit que
l'échantillonnage vu précédemment ne perdait pas
d'information. On constatera pourtant que l'échantillonnage
d'un signal à spectre passe-bande étroit donne, une
fois reconstruit par un filtre passe-bas, un signal qui se situe dans
une bande différente de fréquences. Mais ceci ne
modifie pas le contenu informationnel, ce qui rejoint à
l'évidence les notions de transposition de fréquence
utilisées en transmission. De même, la stroboscopie
déplace le spectre sans forcément diminuer la quantité
d'information (elle la rend même plus "lisible" à
nos yeux).
Les DSP
Le
traitement numérique du signal est une technique en plein
essor. Cette technique s’appuie sur plusieurs disciplines, citons
simplement les principales :
-
l’électronique
analogique et numérique (préparations,
conditionnements des signaux, conversions numériques <-->
analogiques),
-
les microprocesseurs
(classiques ou dédiés au traitement du signal),
-
l’informatique
(algorithmes, systèmes de développements,
exploitations),
-
les mathématiques
du signal (traitements du signal).
Parmi ces disciplines, nous allons nous
intéresser plus précisément aux processeurs de
traitements des signaux, plus communément désignés
par l’acronyme Anglais DSP (Digital Signal Processor).
Les domaines d’applications du
traitement numérique du signal sont nombreux et variés
(traitements du son, de l’image, synthèse et reconnaissance
vocale, analyse, compression de données, télécommunications,
automatisme, etc.) Chacun de ces domaines nécessite un système
de traitement numérique, dont le cœur est un (parfois
plusieurs) DSP ayant une puissance de traitement adaptée, pour
un coût économique approprié.
Les microprocesseurs sont en
perpétuelle évolution, chaque nouvelle génération
est plus performante que l’ancienne, pour un coût moindre.
Les DSP, qui sont un type particulier de microprocesseur, n’échappent
pas à cette évolution.
Un DSP est un type particulier de
microprocesseur. Il se caractérise par le fait qu’il intègre
un ensemble de fonctions spéciales. Ces fonctions sont
destinées à le rendre particulièrement
performant dans le domaine du traitement numérique du signal.
Comme un microprocesseur classique, un
DSP est mis en œuvre en lui associant de la mémoire (RAM,
ROM) et des périphériques. Un DSP typique servira
plutôt dans des systèmes de traitements autonomes. Il se
présente donc généralement sous la forme d’un
microcontrôleur intégrant, selon les marques et les
gammes des constructeurs, de la mémoire, des timers, des ports
séries synchrones rapides, des contrôleurs DMA, des
ports d’E/S divers.
Un DSP est le cœur d’un système
de traitement numérique audio comme le représente la
figure 30.
Figure
1 : Représentation d’une chaîne typique d’un
système de traitement numérique du signal
Après avoir été
numérisé, le signal se présente sous la forme
d’une suite de valeurs numériques discrètes. Cette
suite de valeurs (ou échantillons) est prête à
être stockée et traitée par un système
informatique. Par nature, le traitement numérique du signal
revient à effectuer essentiellement des opérations
arithmétiques de base du type A = (B x
C) + D.
Actuellement, un DSP de gamme moyenne
effectue une opération MAC (Multiply and ACcumulate) sur des
données de 16 bits en moins de 25 nS, soit 40 000 000
opérations par seconde. De telles performances sont
indispensables pour effectuer des traitements rapides.
L’opération MAC étant
une multiplication suivie d’une addition, un débordement (au
sens informatique) de l’accumulateur est toujours possible,
c’est-à-dire que l’opération génère
un nombre supérieur au plus grand nombre pouvant être
manipulé par ce dernier. Pour contourner ce problème,
certains DSP possèdent un accumulateur adapté au MAC.
Ces accumulateurs ont un format spécial incorporant des bits
supplémentaires (bits de garde) par rapport à la taille
des données à manipuler. Les problèmes de
débordements sont alors contournés, car un programme de
traitement correctement conçu ne devrait pas générer
des suites d’opérations MAC telles qu’un résultat
excède la capacité élargie de l’accumulateur.
Outre l’opération MAC, une
autre caractéristique des DSP est leurs capacités à
réaliser plusieurs accès mémoire en un seul
cycle. Ceci permet à un DSP de chercher en mémoire une
instruction et ses données réalisant un MAC, et
simultanément, d’y ranger le résultant du MAC
précédent. Le gain de temps est évident.
Toutefois, sur certains DSP basiques, ce type d’opération
simultané est généralement limité à
des instructions spéciales. Ces instructions utilisent un mode
d’adressage restreint, c’est à dire ne portant que sur de
la mémoire vive intégrée au DSP.
Les modes d’adressages des données
sont un point particulier des DSP. Un DSP peut posséder
plusieurs unités logiques de génération
d’adresses, travaillant en parallèle avec la logique du cœur
du DSP. Une unité logique de génération
d’adresses est paramétrée une seule fois via les
registres appropriés. Elle génère alors toute
seule, en parallèle avec l’exécution d’une
opération arithmétique, les adresses nécessaires
à l’accès des données.
Ceci permet non seulement de réaliser
les accès mémoires simultanés en un seul cycle,
comme cela est décrit plus haut, mais également
d’incrémenter automatiquement les adresses générées.
Ce mode d’adressage particulier, généralement appelé
adressage indirect par registre avec post (ou pré) incrément,
est très utilisé pour effectuer des calculs répétitifs
sur une série de données rangées
séquentiellement en mémoire.
Si l’on ajoute la possibilité
de générer ces adresses selon un modulo
paramétrable, ce mode d’adressage devient circulaire, et
permet donc de créer des buffers circulaires en
mémoire. L’adressage circulaire indirecte (parfois également
indexé) par registre avec post (ou pré) incrément
prends toute son importance quand il est utilisé pour accéder
aux opérandes d’un MAC.
Tableau des
contrôleurs MIDI
|
N° de
contrôleur
|
Fonction
MIDI
|
N° de
contrôleur
|
Fonction
MIDI
|
N° de
contrôleur
|
Fonction
MIDI
|
N° de
contrôleur
|
Fonction
MIDI
|
|
O
|
Bank Select MSB
|
32
|
Bank Select LSB
|
64
|
Sustain Pedal
|
96
|
Data Increment
|
|
1
|
Modulation
|
33
|
Modulation LSB
|
65
|
Porta Pedal
|
97
|
Data decrement
|
|
2
|
Breath Control
|
34
|
Breath Control LSB
|
66
|
Sostenuto Pedal
|
98
|
NRPN LSB
|
|
3
|
Control 3
|
35
|
Aftertouch LSB
|
67
|
Soft Pedal
|
99
|
NRPN MSB
|
|
4
|
Foot Control
|
36
|
Foot Control LSB
|
68
|
Legato Footswitch
|
100
|
RPN LSB
|
|
5
|
Portamento Time
|
37
|
Portamento Time LSB
|
69
|
Hold Pedal 2
|
101
|
RPN MSB
|
|
6
|
Data Entry MSB
|
38
|
Data Entry LSB
|
70
|
Sound Variation
|
102
|
Control 102
|
|
7
|
Volume
|
39
|
Volume LSB
|
71
|
Resonnance
|
103
|
Control 103
|
|
8
|
Balance
|
40
|
Balance LSB
|
72
|
Release Time
|
104
|
Control 104
|
|
9
|
Control 9
|
41
|
Control 41(Control 9
LSB)
|
73
|
Attack Time
|
105
|
Control 105
|
|
10
|
Pan
|
42
|
Pan LSB
|
74
|
LPF Cutoff
|
106
|
Control 106
|
|
11
|
Expression
|
43
|
Expression LSB
|
75
|
Control 75
|
107
|
Control 107
|
|
12
|
Control 12
|
44
|
Control 44(Control 12
LSB)
|
76
|
Control 76
|
108
|
Control 108
|
|
13
|
Control 13
|
45
|
Control 45(Control 13
LSB)
|
77
|
Control 77
|
109
|
Control 109
|
|
14
|
Control 14
|
46
|
Control 46(Control 14
LSB)
|
78
|
Control 78
|
110
|
Control 110
|
|
15
|
Control 15
|
47
|
Control 47(Control 15
LSB)
|
79
|
Control 79
|
111
|
Control 111
|
|
16
|
Control 16
|
48
|
Control 48(Control 16
LSB)
|
80
|
Control 80
|
112
|
Control 112
|
|
17
|
Control 17
|
49
|
Control 49(Control 17
LSB)
|
81
|
Control 81
|
113
|
Control 113
|
|
18
|
Control 18
|
50
|
Control 50(Control 18
LSB)
|
82
|
Control 82
|
114
|
Control 114
|
|
19
|
Control 19
|
51
|
Control 51(Control 19
LSB)
|
83
|
Control 83
|
115
|
Control 115
|
|
20
|
Control 20
|
52
|
Control 52(Control 20
LSB)
|
84
|
Portamento
|
116
|
Control 116
|
|
21
|
Control 21
|
53
|
Control 53(Control 21
LSB)
|
85
|
Control 85
|
117
|
Control 117
|
|
22
|
Control 22
|
54
|
Control 54(Control 22
LSB)
|
86
|
Control 86
|
118
|
Control 118
|
|
23
|
Control 23
|
55
|
Control 55(Control 23
LSB)
|
87
|
Control 87
|
119
|
Control 119
|
|
24
|
Control 24
|
56
|
Control 56(Control 24
LSB)
|
88
|
Control 88
|
120
|
All Sound off
|
|
25
|
Control 25
|
57
|
Control 57(Control 25
LSB)
|
89
|
Control 89
|
121
|
Reset all Controllers
|
|
26
|
Control 26
|
58
|
Control 58(Control 26
LSB)
|
90
|
Control 90
|
122
|
Local Control
|
|
27
|
Control 27
|
59
|
Control 59(Control 27
LSB)
|
91
|
Reverb
|
123
|
All Note off
|
|
28
|
Control 28
|
60
|
Control 60(Control 28
LSB)
|
92
|
Tremolo depth
|
124
|
Omni Mode off
|
|
29
|
Control 29
|
61
|
Control 61(Control 29
LSB)
|
93
|
Chorus Depth
|
125
|
Omni Mode on
|
|
30
|
Control 30
|
62
|
Control 62(Control 30
LSB)
|
94
|
Detune
|
126
|
Mono Mode on
|
|
31
|
Control 31
|
63
|
Control 63(Control 31 LSB)
|
95
|
Phaser Depth
|
127
|
Poly Mode on
|
Bibliographie
* Les cahiers de l’IRCAM –
Recherche et musique
* Notices techniques des logiciels
fruity loops, soundforge et autres logiciels présentés
dans ce document.
* « Composer le son :
expérience avec l’ordinateur », 1964-1989 dans
« Contrechamps »n11 de J.C Risset.
* Musicrun : « Création
et information musicale »
* Notes de cours ISEN « synthèse
sonore » de S.Tassart (Equipe Analyse-Synthèse-IRCAM-
Cet e-mail est protégé contre les robots collecteurs de mails, votre navigateur doit accepter le Javascript pour le voir
)
* L’informatique musicale ENST
(Télécom Paris)-Jean PROVOST
* Musique Assistée par
ordinateur (Remars MICKAEL-Perrin NICOLAS)
* « La compression
dynamique du son » Psycom 05-01-2003
* Keyboards Magazine « Les
Cahiers de l’analogique » de Marc SIRGY
n177
les effets de synthèse
n173 les tables d’ondes
n172
contrôleurs sous contrôle
n175 la FM en pratique
n174 la synthèse FM
n170 la synthèse additive
n166 les oscillateurs
n179
comment naissent les effets
n167
les filtres
n169 comment créer les sons d’une basse ou d’une grosse caisse
par synthèse soustractive.
* Keynoards Magazine : Dossier
n172
« Les sons du futur » de C.WEBSTER
n176 du voice coder au vocoder
n174
les synchronisations entre systèmes
n168 « le traitement de la voix » de Ludovic LANEN
n179
« comment on transforme, on analyse et modifie un signal »
de G. CERDAN
*
http://www.tplm.com/rubriques/10.htm
*
http://www.djfrance.net/djoo/modules/sections/index.php?op=listarticles&secid=5
*
http://membres.lycos.fr/hhh/SYNTHES/Divers/Histoire.htm
*
http://fr.audiofanzine.com/apprendre/dossiers/index,page,1,idossier,13.html
*
http://viswiz.gmd.de/~eckel/publications/eckel93.html
*
http://www.ac-rouen.fr/pedagogie/formation_pr/logiciels/utilitaires/intro_son2.htm
*
http://www.zikinf.com
|