Suivez-nous sur X
|
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z,
ALL
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
A propos d'Obligement
|
|
David Brunet
|
|
|
|
Programmation : AmigaBasic - utilisation du son
(Article écrit par Christian Sager et extrait d'A-News (Amiga News) - juin 1990)
|
|
Cette partie sur le son termine enfin la deuxième partie de ma petite série sur l'AmigaBasic.
Sound
Mais voilà, le son avec cet interpréteur n'est pas terrible car il n'offre qu'une commande :
SOUND fréquence, durée, volume, canal
|
Voici les différentes explications. Avec la fréquence du son vous choisissez sa durée, le volume et l'un des quatre
canaux. Ces deux derniers éléments ne sont pas nécessaires. La fréquence vous permet d'indiquer la hauteur du son.
Vous verrez dans votre livre du BASIC à l'explication de la commande "SOUND" un tableau qui vous donne la valeur
jusqu'à quatre octaves. La puissance sonore de l'Amiga est bien plus importante puisqu'elle va de 20 à 15 000 hertz.
Pour avoir les fréquences des octaves non indiqués, sachez qu'il suffit de doubler la fréquence d'un son pour monter
d'un octave. La note do, par exemple, fait 440, le prochain do sera à 880.
Pour la durée, c'est déjà un peu plus compliqué. On utilise une valeur comprise entre 0 et 77. Vous avez aussi un
tableau pour cet élément du son. Si vous voulez un son pendant 0,40 seconde, il suffit de faire 18,2x0,40 = 7,28.
Le volume, quant à lui, peut varier de 0 à 255. Si la valeur est absente, elle est d'office à 127. Mais cela
ne suffit pas pour sortir un son de votre Amiga. Il faut aussi choisir un des quatre canaux de 0 à 3. Notez
bien que les canaux 0 et 3 utilisent le côté gauche et les 1 et 2 le côté droit. Si la valeur est absente, on
utilise le canal 0. A ce moment, nous pouvons entendre un son chaque fois que nous donnons en direct cette
commande et les différentes valeurs requises. Mais pour pouvoir utiliser les canaux simultanément, nous avons
besoin de la commande :
Cette commande prépare l'Amiga et...
...exécute ce qui a été emmagasiné (voir listing 1).
Listing 1 : petit exemple pour le son
Les sons sont exécutés les uns après les autres sur un canal. Je vous rends attentif sur un petit truc :
dans le programme, le volume est mis à zéro pour une bonne raison. A vous de voir...
(attendre lecture et question de synchro). Je ne vous en dirai pas plus !
Wave
La prochaine commande :
Pour vous résumer, mais sans nous emméler dans des explications de physique, je vous dirai qu'il y a
quatre formes d'onde : sinus, triangle, carré, bruit. Jusqu'à présent, le son est sous forme sinusoïdale.
Mais le rendu fait très artificiel. Pourquoi ? Parce que cette forme d'onde n'existe pas naturellement.
Alors, pour reproduire un instrument, il faut d'autres formes en utilisant un champ compris entre -128
et +127. Vous pouvez ainsi définir toute forme d'onde (voir listing 2).
Listing 2 : variation d'une note en fonction de la forme d'onde
Notez que pour revenir au mode standard, il suffit d'écrire :
Mais me direz-vous (du moins je le pense !) avec tout ça, nous n'avons pas de commande pour régler l'attaque !
Ne craignez rien car avec le listing 3, je vais essayer de pallier à cette lacune.
Listing 3 : exemple pour modifier l'attaque
C'est ainsi que je termine ma deuxième partie. Je sais que c'est très court pour le son, mais j'espère que je vous
aurai suffisamment intéressé pour que vous expérimentiez vous-même et plus que moi, qui me contente ici d'une initiation.
A vous de toujours approfondir pour découvrir autre choses et si possible de m'en faire part.
|