Dans cette fiche... |
Difficulté : ![]() |
Résultat |
La gestion des sons en Java est
proche de celle des images. C'est parti ! |
Important :
Pour être correctement lu par Java, un fichier son doit être au format Sun
(.au, µlaw), échantillonné à 8000 Hz.
Si vous venez du monde PC, vous pouvez utiliser un logiciel comme GoldWave pour
transformer un son WAV en son AU.
// -------------------------------------------------- // MANIPULATION DES SONS // --------------------------------------------------
import java.applet.*; import java.awt.*;
public class Son extends Applet { String s; AudioClip ac;
public void init() { // Couleur de fond de l'applet setBackground(Color.black);
// Lire le paramètre SON, de type chaîne s = getParameter("SON");
// Si le paramètre a été défini, le charger if (s != null) { ac = getAudioClip(getDocumentBase(), s);
// jouer le son ac.play(); } }
// Un petit message pour prévenir ! public void paint(Graphics g) { g.setColor(Color.orange); g.drawString("Quelqu'un a sonné ?", 10, 20); } }
AudioClip ac; |
On crée un objet de type AudioClip, qui servira à stocker et à manipuler le son. |
s = getParameter("SON"); ac = getAudioClip(getDocumentBase(), s); |
Charger le son dont le nom est donné par la chaîne s,
et l'affecter à l'objet ac. (on a vérifié au préalable
que la chaîne s était correcte). Pour plus de détails sur
le passage de paramètres à une applet, cliquez
ici.
Le chemin d'accès au son est donné par la fonction getDocumentBase(),
qui renvoie l'adresse Internet de la page HTML. On aurait pu également enregistrer l'image au même endroit que l'applet. im = getImage(getCodeBase(), s); On peut également vouloir charger une image située n'importe où sur le
disque (et même n'importe où sur le Web !). |
// jouer le son ac.play(); |
Faut-il rajouter quelque chose ? Ah si : vous pouvez aussi jouer le son en boucle, en changeant la ligne ac.play(); par ac.loop(); Mais vous allez rendre vos visiteurs fous ! En passant, pour forcer l'arrêt d'un son : ac.stop(); |
Voici le code qui a été utilisé dans cette page HTML pour faire apparaître l'applet :
<applet code="Son.class" width=200 height=50> <param name="SON" value="dingdong.au"> Votre navigateur n'est pas compatible Java ! </applet>
Pour plus de précisions sur l'intégration d'une applet, cliquez ici.