mirror of
https://github.com/lubosz/overte.git
synced 2025-08-07 20:06:02 +02:00
retart the nextFrame and frameTimer on injector restart
This commit is contained in:
parent
6db8239d8a
commit
d3028606c5
1 changed files with 9 additions and 0 deletions
|
@ -102,6 +102,10 @@ void AudioInjector::restart() {
|
||||||
// reset the current send offset to zero
|
// reset the current send offset to zero
|
||||||
_currentSendOffset = 0;
|
_currentSendOffset = 0;
|
||||||
|
|
||||||
|
// reset the nextFrame and elapsed timer
|
||||||
|
_nextFrame = 0;
|
||||||
|
_frameTimer->invalidate();
|
||||||
|
|
||||||
// check our state to decide if we need extra handling for the restart request
|
// check our state to decide if we need extra handling for the restart request
|
||||||
if (_state == State::Finished) {
|
if (_state == State::Finished) {
|
||||||
// we finished playing, need to reset state so we can get going again
|
// we finished playing, need to reset state so we can get going again
|
||||||
|
@ -246,6 +250,11 @@ int64_t AudioInjector::injectNextFrame() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!_frameTimer->isValid()) {
|
||||||
|
// in the case where we have been restarted, the frame timer will be invalid and we need to start it back over here
|
||||||
|
_frameTimer->restart();
|
||||||
|
}
|
||||||
|
|
||||||
int totalBytesLeftToCopy = (_options.stereo ? 2 : 1) * AudioConstants::NETWORK_FRAME_BYTES_PER_CHANNEL;
|
int totalBytesLeftToCopy = (_options.stereo ? 2 : 1) * AudioConstants::NETWORK_FRAME_BYTES_PER_CHANNEL;
|
||||||
if (!_options.loop) {
|
if (!_options.loop) {
|
||||||
// If we aren't looping, let's make sure we don't read past the end
|
// If we aren't looping, let's make sure we don't read past the end
|
||||||
|
|
Loading…
Reference in a new issue