diff --git a/SpiralSound/Plugins/DiskWriterPlugin/DiskWriterPlugin.C b/SpiralSound/Plugins/DiskWriterPlugin/DiskWriterPlugin.C index 2ea70a4..dd72122 100644 --- a/SpiralSound/Plugins/DiskWriterPlugin/DiskWriterPlugin.C +++ b/SpiralSound/Plugins/DiskWriterPlugin/DiskWriterPlugin.C @@ -114,27 +114,17 @@ void DiskWriterPlugin::Execute() if(m_Recording && m_Wav.IsOpen()) { int on=0; - float t; - short Buffer[host->BUFSIZE*Bps]; + float LeftBuffer[host->BUFSIZE], RightBuffer[host->BUFSIZE]; for (int n=0; nBUFSIZE; n++) { // stereo channels - interleave - t=GetInput(0,n); - if (t>1) t=1; - if (t<-1) t=-1; - Buffer[on]=lrintf(t*SHRT_MAX); - on++; - - t=GetInput(1,n); - if (t>1) t=1; - if (t<-1) t=-1; - Buffer[on]=lrintf(t*SHRT_MAX); - on++; + LeftBuffer[n]=GetInput(0,n); + RightBuffer[n]=GetInput(1,n); } // stereo Bps * bufsize - m_Wav.Save(Buffer,host->BUFSIZE*2*Bps); + m_Wav.Save(LeftBuffer, RightBuffer, host->BUFSIZE); } }