Message #3487
Sujet: Playlist IrrKlang
| Type | Date | Auteur | Contenu |
|---|---|---|---|
| Création du message | 14-01-2008 01:19:00 | ptitfred |
Après une recherche rapide dans la document d'Irrklang on trouve de quoi personnaliser le contrôle des sons que tu joues de façon événementielle (http://www.ambiera.com/irrklang/docu/index.html#events).
Il s'agit en effet du modèle classique de contrôle pour tout traitement qui s'exécutera en parallèle (puisque Irrklang "joue" les media en parallèle de ton code, sinon, tu aurais des soucis à l'affichage). L'idée de base et de permettre à l'utilisateur (ie toi, l'utilisateur de la bibliothèque) d'écrire du code qui va être déclenché à des instants particuliers, dont tu ne maîtrises pas l'apparition (des événements asynchrones). Donc tu trouveras dans la document de l'API toutes les informations détaillées pour implémenter tes propres gestionnaires d'événements. Ce patron de conception est très répandu dans les API d'interfaces graphiques (où c'est l'utilisateur humain qui déclenche les événements par ses entrées souris et clavier). Je pense que tu toucheras du doigt une autre difficulté : comment faire que ton gestionnaire d'événement s'intègre dans la boucle principale de ton moteur ? Si l'objectif est d'enchaîner les lectures de mp3, tu peux faire que ton gestionnaire d'événements de lecture déclenche la lecture du fichier suivant à la fin du précédent (en pensant bien à charger et décharger les ressources au besoin). Et si tu souhaites que l'utilisateur puissent contrôler la lecture (pause, suivant, précédent, lecture...) tu ajoutes le code de lecture à ton gestionnaire du clavier (ou de l'ihm pour la souris). Et là c'est encore un autre problème d'architecture globale. Ta question est donc peut-être bien plus importante que tu pouvais ne l'imaginer à la base J'espère répondre à ta question. Je m'excuse de ne pas avoir posté de code : je ne pense pas pouvoir faire mieux que la doc de l'Irrklang. cdlt |
| Options | Liens officiels | Caractéristiques | Statistiques | Communauté |
|---|---|---|---|---|
|
Préférences cookies Corrections |
![]() ![]() ![]() ![]() |
Propulsé par Django xhtml 1.0 css 2.1 |
884 membres 1440 sujets 11337 messages |
Dernier membre inscrit: Saidov17 551 invités en ligne membre en ligne: - RSS Feed |