295 |
} |
} |
296 |
} |
} |
297 |
} |
} |
298 |
|
|
299 |
void Voice::SetSampleStartOffset() { |
void Voice::SetSampleStartOffset() { |
300 |
if (DiskVoice && RgnInfo.SampleStartOffset > pSample->MaxOffset) { |
AbstractVoice::SetSampleStartOffset(); |
301 |
|
|
302 |
|
if (DiskVoice && Pos > pSample->MaxOffset) { |
303 |
// The offset is applied to the RAM buffer |
// The offset is applied to the RAM buffer |
304 |
finalSynthesisParameters.dPos = 0; |
finalSynthesisParameters.dPos = 0; |
305 |
Pos = 0; |
Pos = 0; |
|
} else { |
|
|
finalSynthesisParameters.dPos = RgnInfo.SampleStartOffset; // offset where we should start playback of sample |
|
|
Pos = RgnInfo.SampleStartOffset; |
|
306 |
} |
} |
307 |
} |
} |
308 |
|
|