File Input: extended acceleration up to x1000

This commit is contained in:
f4exb 2018-10-14 02:58:14 +02:00
parent db4ba51360
commit 85f7e69da5
3 changed files with 21 additions and 2 deletions

View File

@ -475,6 +475,21 @@
<string>100</string>
</property>
</item>
<item>
<property name="text">
<string>200</string>
</property>
</item>
<item>
<property name="text">
<string>500</string>
</property>
</item>
<item>
<property name="text">
<string>1k</string>
</property>
</item>
</widget>
</item>
<item>

View File

@ -174,7 +174,7 @@ bool FileSourceInput::start()
m_ifstream.seekg(sizeof(FileRecord::Header), std::ios::beg);
}
if(!m_sampleFifo.setSize(m_sampleRate * sizeof(Sample))) {
if(!m_sampleFifo.setSize(m_settings.m_accelerationFactor * m_sampleRate * sizeof(Sample))) {
qCritical("Could not allocate SampleFifo");
return false;
}
@ -405,6 +405,10 @@ bool FileSourceInput::applySettings(const FileSourceSettings& settings, bool for
if (m_fileSourceThread)
{
QMutexLocker mutexLocker(&m_mutex);
if (!m_sampleFifo.setSize(m_settings.m_accelerationFactor * m_sampleRate * sizeof(Sample))) {
qCritical("FileSourceInput::applySettings: could not reallocate sample FIFO size to %lu",
m_settings.m_accelerationFactor * m_sampleRate * sizeof(Sample));
}
m_fileSourceThread->setSampleRateAndSize(settings.m_accelerationFactor * m_sampleRate, m_sampleSize); // Fast Forward: 1 corresponds to live. 1/2 is half speed, 2 is double speed
}
}

View File

@ -18,7 +18,7 @@
#include "filesourcesettings.h"
const unsigned int FileSourceSettings::m_accelerationMaxScale = 1;
const unsigned int FileSourceSettings::m_accelerationMaxScale = 2;
FileSourceSettings::FileSourceSettings()
{