diff options
| author | Chris Kiefer <chrisk13fer@gmail.com> | 2012-03-14 11:36:50 +0000 |
|---|---|---|
| committer | Chris Kiefer <chrisk13fer@gmail.com> | 2012-03-14 11:36:50 +0000 |
| commit | f82385459b7dd3915bebebf3e6daff87df811069 (patch) | |
| tree | 53fedf5c897c5710909eff0c092a8adb863eec59 /ofxMaxim | |
| parent | dcdea1838e6f2c0b3011f89d3d7fb41c8e43eb05 (diff) | |
Fixed sample looping
Diffstat (limited to 'ofxMaxim')
| -rw-r--r-- | ofxMaxim/ofxMaxim/libs/maximilian.cpp | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/ofxMaxim/ofxMaxim/libs/maximilian.cpp b/ofxMaxim/ofxMaxim/libs/maximilian.cpp index a6420b2..c0e08f1 100644 --- a/ofxMaxim/ofxMaxim/libs/maximilian.cpp +++ b/ofxMaxim/ofxMaxim/libs/maximilian.cpp @@ -433,15 +433,11 @@ bool maxiSample::read() double maxiSample::play() { - // long length=myDataSize*(1./myChannels); - double remainder; short* buffer = (short *)myData; - position=(position+1); - remainder = position - (long) position; - if ((long) position>length) position=0; - output = - (double) ((1-remainder) * buffer[1+ (long) position] + remainder * buffer[2+(long) position])/32767;//linear interpolation - return(output); + position++; + if ((long) position == length) position=0; + output = (double) buffer[(long)position]/32767.0; + return output; } double maxiSample::playOnce() { |
