Jukebox MID WAV MP3  
   
  • On a vu dans le tutorial Yupanki comment écouter des fichiers MIDI à partir d'une Liste
    on va procéder de même pour écouter des fichiers
    WAV - la seule différence est l'action Jouer... liée au double-clic dans la Liste
  • cf. Yupanki et l'exemple du CD Bonus de MMF2 : CD :\Examples\Objects\Direct Show\Direct Show.mfa - je remercie Yves Lamoureux pour l'aide qu'il m'a apportée -
  • 2 MFA pour ce tutorial
  • le choix du chemin indiqué pour l'évènement En début de scène > action Charger la liste de fichiers et l'évènement double-clic dans la Liste > action Jouer... est important : dépend du répertoire où le Jukebox sera installé
  • dans les Propriétés de l'objet Liste / Configuration, cocher Trier si vous souhaitez avoir la liste par ordre alphabétique

évènements

 

actions Son

 

actions Liste

 

paramètres MID

 

paramètres WAV

                   
  • 1 vous installez le Jukebox et vous mettez vos mid et wav préférés dans le même répertoire que le Jukebox
Début de scène       Charger la Liste Fichiers   Apppath$ + "*.mid"   Apppath$ + "*.wav"
"Liste double-cliquée"
+
List Select("Liste") <> -1
  Jouer...       List Select$("Liste")   List Select$("Liste")
                 
  • 2 vous installez le Jukebox dans le vrac de vos mid - ou wav -
Début de scène       Charger la Liste Fichiers   "mid\*.mid" ou
Apppath$+"mid\*.mid"
  "wav\*.wav" ou
Apppath$+"wav\*.wav"
"Liste double-cliquée"
+ List Select("Liste") <> -1
  Jouer...       "mid\"+List Select$( "Liste" ) ou
Apppath$+"mid\"+List Select$( "Liste" )
  "wav\"+List Select$( "Liste" ) ou
Apppath$+"wav\"+List Select$( "Liste" )
                 
  • 3 vous créez un sous-répertoire Jukebox\Data dans lequel vous mettez, en vrac, vos mid et wav préférés - cf. le MFA -
Début de scène       Charger la Liste Fichiers   Apppath$+"data\*.*"   Apppath$+"data\*.*"
"Liste double-cliquée"
+ List Select("Liste") <> -1
  Jouer...       Apppath$+"data\"+List Select$( "Liste" )   Apppath$+"data\"+List Select$( "Liste" )
   
  • pour lire les fichiers WAV, quand on Double clic sur la liste, choisir Echantillons sonores / Jouer un fichier sur un canal spécifique
    entrer le paramètre
    Apppath$+"data\"+List Select$( "Liste" ) dans la boîte de dialogue Sélectionner un fichier son, et indiquer un Numéro de canal dans la boîte de dialogue Numéro de canal
  • Les canaux sont joués ensemble. Vous avez 32 canaux à votre disposition, donc vous pouvez jouer 32 sons en même temps. Quand vous jouez un son avec l'une des actions Jouer Son sans préciser le numéro de canal, MMF2 le met dans le premier canal disponible. Les actions permettant de spécifier le canal vous permettent d'affecter un canal à certaines tâches (par exemple les bruits de tel personnage sur tel canal, la musique de fond sur un autre, etc.), ça permet de limiter le nombre de sons joués en même temps, que certains sons soient interrompus par d'autres éventuellement (quoique 32 sons en même temps c'est difficile à atteindre), etc.
  • si on ne veut pas double-cliquer sur chaque son, on peut programmer l'action Jouer... avec la touche Entrée, et naviguer avec les flèches Haut et Bas
 
 
  • encore mieux, transformer la Liste en Play-List - cf. le MFA - : il suffit de lancer le son suivant dans la liste quand le précédent se termine
    par exemple, si vous avez lancé un fichier
    WAV sur un canal donné - et ou un fichier MID -
    utiliser l'évènement
    Le canal xxx n'est pas en train de jouer (pour les WAV), et ou Aucune musique n'est en train de jouer (pour les MID) + List Select("Liste") <> -1
    avec les actions Jouer un fichier échantillon sur le canal xxx (pour les WAV), et ou Jouer fichier musical (pour les MID) pour les Sons
    et Fixer la ligne courante, paramètre List Select( "Liste" )+1 pour l'objet Liste
  • enfin, important, cocher dans les Propriétés/Options du runtime de l'application Ne pas arrêter les sons quand l'application perd le focus, c-à-d quand on travaille sur une autre application
  • vous pourrez modifier le MFA pour Yupanki...
  • 3 soucis :
    la
    play-Liste démarre de suite
  • le 2ème souci - le dernier fichier est joué en boucle à la fin du denier morceau de la play-Liste - je souhaiterais que le Jukebox soit stoppé, ou que la play-Liste redémarre - pas tout à fait résolu :
    j'ai utilisé un
    compteur pour montrer la progression de la play-Liste - Type Barre horizontale -, ça fonctionne en gros, mais le dernier morceau n'est pas joué - normal, puisque je programme l'action stopper tout son ou relancer l'application en comparant la valeur du compteur et le nombre de lignes de la liste -
    j'ai donc triché en mettant en fin de liste un
    mid "vide"
    si cette solution ne convient pas, il suffit d'enlever la ligne 5
  • le 3ème est un gros souci, il concerne les WAV - pas les MID - lus avec une play-Liste :
    si en mode
    test/runtime ça fonctionne bien, une fois l'application construite - EXE -, les WAV ne sont pas joués, donc pas entendus...

    mais Yves m'a donné l'explication et la solution :
    C'est un problème connu. Je pensais l'avoir corrigé dans le build 248, ça sera corrigé dans le build 249. Pour le corriger dans les applications où ça arrive, il faut cliquer sur "
    Filtres sons" dans les propriétés de l'application, désélectionner "Automatique" et sélectionner manuellement les filtres à inclure.

    Le problème vient du fait que
    MMF2 ne détecte pas les actions pour jouer des sons "externes" et n'inclut automatiquement les filtres que si on joue des sons internes. Dans le prochain build la détection de ces actions sera automatique.
  • si vous avez déjà téléchargé jukebox1.zip, il suffit d'effectuer cette manip.

  • pour lire les fichiers MP3, il faut insérer l'objet Direct Show
  • cf. sur http://www.clickteam.com/eng/learning_resources.php l'exemple Fusion Player - pour lire les videos, mais aussi les mp3, wav... -
  • attention, inspirez-vous du tableau ci-dessus pour les paramètres des chemins, en fonction du répertoire où vous installerez votre Jukebox
  • En début de scène, même évènement que pour les MID et les WAV pour Charger la liste des fichiers MP3 - Apppath$ + "*.mp3" - ou Apppath$+"mp3\*.mp3"
    évènement
    "Liste double-cliquée" + List Select("Liste") <> -1 pour lire les MP3
    avec comme action pour
    Direct Show : Général / Charger Vidéo
    paramètre
    List Select$( "Liste" ) - ou Apppath$+"mp3\"+List Select$( "Liste" ) dans la boîte de dialogue Sélectionner un nom de fichier + Jouer Vidéo
   
  • on va personnaliser ces deux applications, en leur donnant une forme particulière - objet Forme fenêtre -
    la forme personnalisée implique que le
    Titre et la Barre de menu soient décochés dans les Propriétés de la Fenêtre de l'Application - cf. Forme Fenêtre - et que les fichiers images PNG soient joints aux MFA et à l'EXE 
  • illustrations créées par Simon-Pierre CHACORNAC