website logo
Auteur
avatar
zzd10h

Forum » » Création-Développement » » question multiview


Posté : 13-10-2012 17:32 icone du post

C'est bon Tony,
je viens de te mettre l'archive
http://zzd10h.amiga-ng.org/DataType/DataType_Sound_Signal.lha

Dans cette archive, 2 programmes, DataType_Sound et DataType_Sound_Break :

1) DataType_Sound,
comme avant permet de lancer le fichier son
mais désormais, il s'ouvre un port d'écoute de signaux (nom du port "DataType_Sound_Port")
Aprés, il joue le son tant qu'il ne reçoit pas les signaux suivants
-CTRL-C pour interrompre
-quand un cycle de son est terminé, il reçoit un signal de fin de "l'objet son lui-même" (fini le delay approximatif) et s'il reste des cycles à jouer en renvoie un, sinon quitte
-le message du 2éme programme pour le stopper (message "Coupe le son!")

2) DataType_Sound_Signal
recherche le port "DataType_Sound_Port", si il le trouve il lui envoie le message
"Coupe moi ce son!" qui provoque l'arrêt des sons.

Bref, en pratique, dans 2 shells différents
dans le 1er
DataType_Sound Test.wav 50 64 DEBUG (joue 50 fois le son Test.wav à volume max en mode DEBUG (facultatif))

ensuite dans le 2nd shell
DataType_Sound_Break DEBUG (pour arréter le programme DataType_Sound en mode DEBUG (facultatif))

Voila, ce que je pense qu'il resterait à faire (vu que tu vas peut-être en avoir besoin ;) )
-voir si possible de passer le nom du port de message en parm pour en avoir plusieurs en //
-si nb de cycle = 0, alors lecture en boucle du son
-voir si possible d'envoyer un message pour +/- le volume

Biensur dans le répertoire, il y a les sources pour ces 2 programmes, il y a juste un 'make' à faire ds chacun des répertoires.
Je me suis basé en grande partie sur les sources du Wiki AmigaOS (exec/messages)

Dis-moi si ça marche chez toi, stp.
et merci de me donner l'occasion de découvrir d'autres trucs systèmes ;)


Message édité par : zzd10h / 13-10-2012 17:33

Cet article provient de Le site des utilisateurs francophones actuels et futurs d'AmigaOS 4.x
https://amiga-ng.org/viewtopic.php?topic=1380&forum=14