diff --git a/src/tracks/SampleTrack.cpp b/src/tracks/SampleTrack.cpp index f113a3fb3..0af12de1b 100644 --- a/src/tracks/SampleTrack.cpp +++ b/src/tracks/SampleTrack.cpp @@ -95,7 +95,8 @@ bool SampleTrack::play( const TimePos & _start, const fpp_t _frames, if( _start >= sTco->startPosition() && _start < sTco->endPosition() ) { - if( sTco->isPlaying() == false && _start >= (sTco->startPosition() + sTco->startTimeOffset()) ) + if( sTco->isPlaying() == false && (_start >= (sTco->startPosition() + sTco->startTimeOffset()) + || sTco->isRecord ()) ) { auto bufferFramesPerTick = Engine::framesPerTick (sTco->sampleBuffer ()->sampleRate ()); f_cnt_t sampleStart = bufferFramesPerTick * ( _start - sTco->startPosition() - sTco->startTimeOffset() );