From 2c1f2f49d2ac878c13f9c59d86166a62bbd7573d Mon Sep 17 00:00:00 2001 From: "Tim E. Real" Date: Wed, 8 May 2013 08:52:52 +0000 Subject: Yet another MAJOR audio engine and plugin/synth process chain re-write. And much more, see ChangeLog, May 8 2013. --- muse2/muse/driver/dummyaudio.cpp | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) (limited to 'muse2/muse/driver/dummyaudio.cpp') diff --git a/muse2/muse/driver/dummyaudio.cpp b/muse2/muse/driver/dummyaudio.cpp index 172638b4..4e37bc33 100644 --- a/muse2/muse/driver/dummyaudio.cpp +++ b/muse2/muse/driver/dummyaudio.cpp @@ -135,6 +135,7 @@ class DummyAudioDevice : public AudioDevice { virtual QString portName(void*) { return QString("mops"); } + virtual unsigned int portLatency(void* /*port*/, bool /*capture*/) const { return 0; } virtual int getState() { // if(DEBUG_DUMMY) // printf("DummyAudioDevice::getState %d\n", state); @@ -224,17 +225,22 @@ DummyAudioDevice* dummyAudio = 0; DummyAudioDevice::DummyAudioDevice() { - // Added by Tim. p3.3.15 - // p3.3.30 - //posix_memalign((void**)&buffer, 16, sizeof(float) * dummyFrames); - - int rv = posix_memalign((void**)&buffer, 16, sizeof(float) * MusEGlobal::config.dummyAudioBufSize); + MusEGlobal::sampleRate = MusEGlobal::config.dummyAudioSampleRate; + MusEGlobal::segmentSize = MusEGlobal::config.dummyAudioBufSize; + int rv = posix_memalign((void**)&buffer, 16, sizeof(float) * MusEGlobal::segmentSize); if(rv != 0) { fprintf(stderr, "ERROR: DummyAudioDevice ctor: posix_memalign returned error:%d. Aborting!\n", rv); abort(); } - + if(MusEGlobal::config.useDenormalBias) + { + for(unsigned q = 0; q < MusEGlobal::segmentSize; ++q) + buffer[q] = MusEGlobal::denormalBias; + } + else + memset(buffer, 0, sizeof(float) * MusEGlobal::segmentSize); + dummyThread = 0; realtimeFlag = false; seekflag = false; @@ -310,9 +316,8 @@ static void* dummyLoop(void* ptr) // p3.3.30 //MusEGlobal::sampleRate = 25600; - MusEGlobal::sampleRate = MusEGlobal::config.dummyAudioSampleRate; //MusEGlobal::segmentSize = dummyFrames; - MusEGlobal::segmentSize = MusEGlobal::config.dummyAudioBufSize; +// MusEGlobal::segmentSize = MusEGlobal::config.dummyAudioBufSize; #if 0 //unsigned int tickRate = MusEGlobal::sampleRate / dummyFrames; unsigned int tickRate = MusEGlobal::sampleRate / MusEGlobal::segmentSize; -- cgit v1.2.3