compositeur virtuel : comment gérer le paramètre "tempo" - Divers - Programmation
Marsh Posté le 28-02-2012 à 14:29:00
Retour aux sources : http://fr.wikipedia.org/wiki/Tempo
Citation : |
T'as ta réponse : tu dois intégrer partout où tu joues des notes la variable Tempo pour déterminer la durée que chaque note sera tenue
Ps : plutôt que de nous balancer des 100ènes de lignes de codes en Ada (que je doute que qq'un lise), je pense que tu ferais mieux, avant le codage, de définir l'ensemble des algos qui te seront nécessaires + définir l'architecture de ton appli, bref faire de la conception Après, le codage ira tout seul...
Marsh Posté le 28-02-2012 à 14:40:18
Bonjour rufo,
Donc, je fais une piste supplémentaire dans mes page de séquenceur pour le tempo et je synchronise à chaque changement.
Pour le code, c'est la première chose que demande Gilou et franchement, j'ai rien d'autre à poster.
Si tu me donne ton adresse, je t'envoie les kilo de papier que j'écris.
Mais je suis complètement incapable de produire autre chose que du français ou Ada ici.
Marsh Posté le 28-02-2012 à 14:54:48
Lutin, si je concevais les chose de manière indiscutable je posterais pas, et personne d'autre d'ailleurs, tu serais tout seul sur le site.
Marsh Posté le 28-02-2012 à 15:01:26
Je voulais pas te vexer. Mais à la vue de tes différents posts sur ce sujet (composer virtuel), j'ai l'impression que ton pb se situait plus au niveau archi et/ou algo que développement pur en Ada.
Marsh Posté le 28-02-2012 à 15:13:58
Je suis préoccupé par la partie "génération infini de fusion/fission de classique et de techno".
Mais chaque chose en son temps, donc, je me suis soulagé de la partie gestion des messages en boucle ici.
Reste à composer la musique et à la faire entrer dans les cases.
Je conçois/Analyse/Fais des choix/implémente en boucle depuis 15 ans, et je suis incapable de changer de méthode.
Marsh Posté le 28-02-2012 à 20:19:19
Merci rufo.
j'ai fait une piste tempo dans mes deux pages de séquence de pas.
J'ai ajouté une entrée sync à la tache "Tempo_Drive" que j'appelle depuis le scheduler.
Au cas ou ça intéresse, j'ai ajouter un groupe instruction en fin de select dans la boucle not suspended,
Comme ceci, en décalant en toute fin le mise à jour de Step_Date,
Code :
|
(Gilou mon astuce pour conserver l'indentation marche plus...
edit: aben si ça marche, j'ai zuté quelque part.
Amoins que :
test :
Code :
|
Marsh Posté le 28-02-2012 à 13:05:44
Bonjour, bonjour à tous.
J'ai donc réalisé un petit programme qui pour le moment se contente de répéter ce qui est joué sur les périphérique MIDI.
Mon objectif est de réaliser un compositeur virtuel interactif.
J'ai immédiatement un soucis particulier, la gestion du tempo, que je souhaite modifier au cours du temps.
Le tempo et envoyé aux périphériques sous forme de séries de messages "tempo" toute les 1/24 de noire pour une signature 4/4, si je ne m'abuse (je ne compte pas modifier la signature, toujours 4/4).
Je cherche comment passer et exploiter le paramètre tempo depuis le composer et le scheduler.
Voici mon implémentation : Le code c'est Ada, mais le problème reste à mon sens entier au niveau supérieur.
Libmy.MIDI : spec
Libmy.MIDI.Composer : spec
Libmy.MIDI.Composer : impl
Libmy.MIDI.Scheduler : spec
Libmy.MIDI.Scheduler : impl
Main : impl (initialize device address)
Vous savez tout, à vos cerveau !
Si vous avez des interrogations, n'hésitez pas. Merci déjà de m'avoir lu.
edit : j'avais oublié le tempo_type et message_type dans la lib libmy.MIDI.
Message édité par Profil supprimé le 28-02-2012 à 13:56:33