mirror of
https://github.com/overte-org/overte.git
synced 2025-08-08 17:17:58 +02:00
repair to wrapped memcpy from AudioRingBuffer
This commit is contained in:
parent
87d1d0a49c
commit
ac0db04892
1 changed files with 3 additions and 3 deletions
|
@ -141,15 +141,15 @@ public:
|
||||||
}
|
}
|
||||||
|
|
||||||
void readSamples(int16_t* dest, int numSamples) {
|
void readSamples(int16_t* dest, int numSamples) {
|
||||||
auto samplesToEnd = _bufferLast - _at;
|
auto samplesToEnd = _bufferLast - _at + 1;
|
||||||
|
|
||||||
if (samplesToEnd >= numSamples) {
|
if (samplesToEnd >= numSamples) {
|
||||||
memcpy(dest, _at, numSamples * sizeof(int16_t));
|
memcpy(dest, _at, numSamples * sizeof(int16_t));
|
||||||
_at += numSamples;
|
_at += numSamples;
|
||||||
} else {
|
} else {
|
||||||
auto samplesFromStart = numSamples - samplesToEnd;
|
auto samplesFromStart = numSamples - samplesToEnd;
|
||||||
memcpy(dest, _at, samplesToEnd * sizeof(int16_t));
|
memcpy(dest, _at, samplesToEnd * sizeof(int16_t));
|
||||||
memcpy(dest, _at + samplesToEnd, samplesFromStart * sizeof(int16_t));
|
memcpy(dest + samplesToEnd, _bufferFirst, samplesFromStart * sizeof(int16_t));
|
||||||
|
|
||||||
_at = _bufferFirst + samplesFromStart;
|
_at = _bufferFirst + samplesFromStart;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue