Application d'affichage de forme de son et exécution de celui-ci

Description

Application d?affichage de forme de son et exécution sonore de celui-ci avec fonctions de repositionnement.
Le but de cette application :
- Afficher la forme d?onde du son.
- Exécuter le son avec une barre qui se déplace en synchronisation sur la représentation graphique du son.
- Se repositionner à n?importe quel endroit dans le son par simple cliquage sur le graphe du son.
- Définir (avec la souris) des plages du son que l?on grossit, et que l?on peut exécuter de la même manière que le son complet (avec également repositionnement de l?exécution).
- Déplacer la plage affichée avec un curseur.
La première étape consiste à charger le son que l?on veut afficher/exécuter ; pour cela l?utilisateur clique le bouton « Charger » (en haut, à droite) ; une fenêtre de sélection de fichier apparaît alors, et l?utilisateur sélectionne un fichier dans le répertoire qu?il désire ; la forme du son apparaît alors dans la grande fenêtre d?affichage ; la durée totale du son est affichée dans la fenêtre « Durée (sous la forme : minutes :secondes.millisecondes).
L?utilisateur peut déplacer une barre verticale sur la forme du son ; la position correspondant à la barre verticale est affichée dans la fenêtre « Position ».
Lorsque l?utilisateur clique le bouton gauche de la souris dans le fenêtre du son, il définit alors le début d?une nouvelle plage : Une zone inversée apparaît alors entre la position cliquée et la position courante de la souris au fur et à mesure que la souris est bougée ; si l?utilisateur clique ensuite le bouton droit, la position courante de la souris désigne la fin de la nouvelle plage (à contrario, un nouveau cliquage du bouton gauche annule la sélection en cours) ; celle-ci est alors affichée de manière à occuper en totalité de la fenêtre d?affichage (le reste du son n?est alors plus visible) ; la fenêtre « Durée » affiche alors la durée de la plage sélectionnée, et les fenêtres « Début » et « Fin », qui apparaissent, indiquent les positions de début et de fin de la plage relativement au son complet.
On voit également apparaître un curseur qui permet de déplacer dynamiquement la plage dans le son (en même temps qu?il localise la plage dans le son).
Il est possible de redéfinir une nouvelle vue zoomée à l?intérieur d?une vue déjà zoomée.
Le bouton « Sortir du zoom » permet de sortir du zoom, et de réafficher le son dans sa totalité.
Le bouton « Exécuter » permet d?exécuter la plage couramment visualisée du son (soit le son complet, soit une vue zoomée) : On entend alors le son, et, au fur et à mesure de l?exécution du son, une barre (bleu sur fond blanc, et jaune sur fond noir) se déplace en synchronisation avec le son entendu.
Il est possible de se repositionner directement dans le son en cliquant sur un endroit de la représentation graphique du son : Le son entendu redémarre alors à partir de l?endroit correspondant à la position cliquée, et la barre d?exécution repart de cette position.
Normalement le son s?arrête lorsque la barre d?exécution a atteint le bord droit de la fenêtre d?affichage ; deux boutons permettent cependant de le redémarrer :
. Le bouton « Boucler », s?il est coché, permet de faire redémarrer le son à partir du début de la plage visualisée lorsque la fin de celle-ci est atteinte.
. Le bouton « Enchaîner » n?est actif qu ?en vue zoomée (et n?apparaît pas en vue complète), et son cochage permet, lorsque le bord droit de la plage est atteint, d?afficher la plage suivante du son, et du repartir du début de cette nouvelle plage.
En vue zoomée, en plus de la possibilité de repositionner l?exécution par cliquage dans la représentation graphique du son, on peut aussi déplacer dynamiquement la plage avec le curseur, et le son est au fur et à mesure rafraîchi.
En exécution, le bouton « Exécuter » devient « Arrêter », et son cliquage permet d?arrêter l?exécution sonore en cours.
Le bouton « SORTIE » (qui n?est pas actif en vue zoomée, ni en exécution sonore) permet de sortir de l?application.
Vous trouverez tous les détails de programmation dans le code qui est largement commenté.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.