|
|
@ -105,7 +105,7 @@ static void OutputCurrentFrame(const StereoFrame16& frame) {
|
|
|
|
std::vector<s16> stretched_samples = time_stretcher.Process(sink->SamplesInQueue());
|
|
|
|
std::vector<s16> stretched_samples = time_stretcher.Process(sink->SamplesInQueue());
|
|
|
|
sink->EnqueueSamples(stretched_samples.data(), stretched_samples.size() / 2);
|
|
|
|
sink->EnqueueSamples(stretched_samples.data(), stretched_samples.size() / 2);
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
constexpr size_t maximum_sample_latency = 1024; // about 32 miliseconds
|
|
|
|
constexpr size_t maximum_sample_latency = 2048; // about 64 miliseconds
|
|
|
|
if (sink->SamplesInQueue() > maximum_sample_latency) {
|
|
|
|
if (sink->SamplesInQueue() > maximum_sample_latency) {
|
|
|
|
// This can occur if we're running too fast and samples are starting to back up.
|
|
|
|
// This can occur if we're running too fast and samples are starting to back up.
|
|
|
|
// Just drop the samples.
|
|
|
|
// Just drop the samples.
|
|
|
|