INTRODUCTION |
Il est également possible d’utiliser le système sonore pour enregistrer et sauvegarder des sons. Il faut pour cela commencer par connecter une source sonore telle qu’un microphone ou un appareil de lecture audio à l’entrée de la carte son. Les ordinateurs portables disposent en général d’un microphone rudimentaire intégré. |
ENREGISTREUR DE SONS |
Avant d’effectuer un enregistrement, il faut, pour préparer le système d’enregistrement, appeler la fonction openMonoRecorder() en spécifiant le taux d’échantillonnage en guise de premier paramètre. On peut ensuite démarrer l’enregistrement à l’aide de la fonction capture() qui est une fonction non bloquante retournant immédiatement. Pour terminer l’enregistrement, il faut appeler la fonction stopCapture(). Les échantillons ainsi enregistrés sont copiés dans une liste qu’il est possible de récupérer à l’aide de getCapturedSound(). Dans le programme suivant, on effectue un enregistrement de 5 secondes qui est ensuite rejoué immédiatement. from soundsystem import * openMonoRecorder(22050) print("Recording...") capture() delay(5000) stopCapture() print("Stopped") sound = getCapturedSound() openMonoPlayer(sound, 22050) play() |
MEMENTO |
Une commande telle que capture(), qui déclenche une action et retourne immédiatement est appelée « fonction non bloquante ». De telles fonctions permettent de contrôler depuis le programme des tâches de fond qui se déroulent indépendamment de l’exécution du programme principal. Cela permet par exemple de les interrompre en cours d’exécution. |
REPRÉSENTATION SONORE DU SON ENREGISTRÉ |
from soundsystem import * openMonoRecorder(22050) print("Recording...") capture() delay(5000) stopCapture() print("Stopped") sound = getCapturedSound() from gpanel import * makeGPanel(0, len(sound), -33000, 33000) for i in range(len(sound)): draw(i, sound[i])
|
MEMENTO |
On peut utiliser la longueur de la liste des échantillons pour déterminer le nombre d’échantillons enregistrés. Pour dessiner la représentation graphique il suffit d’utiliser une structure for. Amusez-vous quelques minutes en représentant graphiquement différents enregistrements sonores et assurez-vous de bien comprendre ce que représente la courbe du son. |
ENREGISTREMENT DE FICHIERS WAV |
Il est également possible de sauver le son enregistré dans un fichier WAV à l’aide de la fonction writeWavFile(). from soundsystem import * openMonoRecorder(22050) print("Recording...") capture() delay(5000) stopCapture() print("Stopped") sound = getCapturedSound() writeWavFile(sound, "mysound.wav") |
MEMENTO |
Après avoir enregistré le son dans un fichier, il est possible de le rejouer à l’aide d’un programme Python ou de tout autre lecteur multimédia installé sur votre machine. |
EXERCICES |
|