From: werner s. <wsc...@us...> - 2006-04-22 13:53:20
|
Update of /cvsroot/lmuse/muse/muse In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17893/muse Modified Files: audiotrack.h synth.cpp synth.h Log Message: fixed software synthesizer regressions Index: synth.h =================================================================== RCS file: /cvsroot/lmuse/muse/muse/synth.h,v retrieving revision 1.50 retrieving revision 1.51 diff -C2 -d -r1.50 -r1.51 *** synth.h 16 Jan 2006 16:00:01 -0000 1.50 --- synth.h 22 Apr 2006 13:53:16 -0000 1.51 *************** *** 119,122 **** --- 119,123 ---- virtual void close() {} virtual Track* newTrack() const { return 0; } + virtual void collectInputData(); public: Index: synth.cpp =================================================================== RCS file: /cvsroot/lmuse/muse/muse/synth.cpp,v retrieving revision 1.84 retrieving revision 1.85 diff -C2 -d -r1.84 -r1.85 *** synth.cpp 16 Jan 2006 16:00:01 -0000 1.84 --- synth.cpp 22 Apr 2006 13:53:16 -0000 1.85 *************** *** 475,479 **** memset(buffer[port], 0, n * sizeof(float)); ! // seems to be negative when sequencer not running, still working when entering notes from editor though. weird :-) (ml) int frameOffset = audio->getFrameOffset(); int curPos = pos; --- 475,481 ---- memset(buffer[port], 0, n * sizeof(float)); ! // seems to be negative when sequencer not running, still ! // working when entering notes from editor though. weird :-) (ml) ! int frameOffset = audio->getFrameOffset(); int curPos = pos; *************** *** 497,501 **** } else { ! printf("MessSynthIF::getData - ports < channels: TBW! (when does this occur? does it ever occur? mono/stereo?)"); } return i; --- 499,504 ---- } else { ! printf("MessSynthIF::getData - ports < channels: TBW!" ! "(when does this occur? does it ever occur? mono/stereo?)"); } return i; *************** *** 516,534 **** } - #if 0 //--------------------------------------------------------- ! // getData //--------------------------------------------------------- ! bool SynthI::getData(unsigned pos, int ports, unsigned n, float** buffer) { while (!_eventFifo.isEmpty()) _playEvents.add(_eventFifo.get()); iMPEvent ie = _playEvents.begin(); ! _sif->getData(&_playEvents, ie, pos, ports, n, buffer); _playEvents.clear(); - return true; } - #endif --- 519,536 ---- } //--------------------------------------------------------- ! // collectInputData //--------------------------------------------------------- ! void SynthI::collectInputData() { + bufferEmpty = false; while (!_eventFifo.isEmpty()) _playEvents.add(_eventFifo.get()); iMPEvent ie = _playEvents.begin(); ! unsigned pos = 0; ! _sif->getData(&_playEvents, ie, pos, channels(), segmentSize, buffer); _playEvents.clear(); } Index: audiotrack.h =================================================================== RCS file: /cvsroot/lmuse/muse/muse/audiotrack.h,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** audiotrack.h 16 Jan 2006 22:52:49 -0000 1.5 --- audiotrack.h 22 Apr 2006 13:53:16 -0000 1.6 *************** *** 81,85 **** #endif - - - --- 81,82 ---- |