X-Git-Url: https://scm.cri.ensmp.fr/git/minwii.git/blobdiff_plain/ee24fce216592a13d95977d7d4e3374692fd6924..cf0a97e6fca3155000772d961bba89c215e1b457:/src/app/synth.py diff --git a/src/app/synth.py b/src/app/synth.py index 9fb4a3e..1910643 100755 --- a/src/app/synth.py +++ b/src/app/synth.py @@ -8,6 +8,8 @@ $URL$ from os.path import realpath, sep, exists from fluidsynth import Synth as FSynth from log import console +import pygame +import events class Synth(FSynth) : """ @@ -33,10 +35,11 @@ class Synth(FSynth) : self.start() self.fsid = self.sfload(sfPath) self._octaveAjusts = {} - console.info('démarrage du synthétiseur\nsoundfont : %s', sfPath) + console.info('démarrage du synthétiseur') + console.info('soundfont : %s', sfPath) def __del__(self) : - console.info('arrêt du synthétiseur.') + console.info('arrêt du synthétiseur') self.delete() def adjust_octave(self, chan, octave) : @@ -57,7 +60,11 @@ class Synth(FSynth) : def noteon(self, chan, key, vel): key = key + self._octaveAjusts.get(chan, 0) * 12 FSynth.noteon(self, chan, key, vel) + evt = pygame.event.Event(events.NOTEON, chan=chan, key=key, vel=vel) + pygame.event.post(evt) def noteoff(self, chan, key) : key = key + self._octaveAjusts.get(chan, 0) * 12 FSynth.noteoff(self, chan, key) + evt = pygame.event.Event(events.NOTEOFF, chan=chan, key=key) + pygame.event.post(evt)