Mercurial > hg > svcore
diff base/Preferences.cpp @ 1365:3382d914e110
Merge from branch 3.0-integration
author | Chris Cannam |
---|---|
date | Fri, 13 Jan 2017 10:29:44 +0000 |
parents | ea28ee929034 |
children | 07f23b90701a |
line wrap: on
line diff
--- a/base/Preferences.cpp Mon Nov 21 16:32:58 2016 +0000 +++ b/base/Preferences.cpp Fri Jan 13 10:29:44 2017 +0000 @@ -40,11 +40,12 @@ m_tuningFrequency(440), m_propertyBoxLayout(VerticallyStacked), m_windowType(HanningWindow), - m_resampleQuality(1), + m_runPluginsInProcess(true), m_omitRecentTemps(true), m_tempDirRoot(""), m_fixedSampleRate(0), m_resampleOnLoad(false), + m_gapless(true), m_normaliseAudio(false), m_viewFontSize(10), m_backgroundMode(BackgroundFromTheme), @@ -64,9 +65,10 @@ (settings.value("property-box-layout", int(VerticallyStacked)).toInt()); m_windowType = WindowType (settings.value("window-type", int(HanningWindow)).toInt()); - m_resampleQuality = settings.value("resample-quality", 1).toInt(); + m_runPluginsInProcess = settings.value("run-vamp-plugins-in-process", true).toBool(); m_fixedSampleRate = settings.value("fixed-sample-rate", 0).toDouble(); m_resampleOnLoad = settings.value("resample-on-load", false).toBool(); + m_gapless = settings.value("gapless", true).toBool(); m_normaliseAudio = settings.value("normalise-audio", false).toBool(); m_backgroundMode = BackgroundMode (settings.value("background-mode", int(BackgroundFromTheme)).toInt()); @@ -99,6 +101,7 @@ props.push_back("Resample Quality"); props.push_back("Omit Temporaries from Recent Files"); props.push_back("Resample On Load"); + props.push_back("Use Gapless Mode"); props.push_back("Normalise Audio"); props.push_back("Fixed Sample Rate"); props.push_back("Temporary Directory Root"); @@ -141,6 +144,9 @@ if (name == "Resample On Load") { return tr("Resample mismatching files on import"); } + if (name == "Use Gapless Mode") { + return tr("Load mp3 files in gapless mode"); + } if (name == "Fixed Sample Rate") { return tr("Single fixed sample rate to resample all files to"); } @@ -198,6 +204,9 @@ if (name == "Resample On Load") { return ToggleProperty; } + if (name == "Use Gapless Mode") { + return ToggleProperty; + } if (name == "Fixed Sample Rate") { return ValueProperty; } @@ -259,13 +268,10 @@ return int(m_windowType); } - if (name == "Resample Quality") { - if (min) *min = 0; - if (max) *max = 2; - if (deflt) *deflt = 1; - return m_resampleQuality; + if (name == "Run Vamp Plugins In Process") { + return m_runPluginsInProcess; } - + if (name == "Omit Temporaries from Recent Files") { if (deflt) *deflt = 1; return m_omitRecentTemps ? 1 : 0; @@ -412,8 +418,8 @@ setPropertyBoxLayout(value == 0 ? VerticallyStacked : Layered); } else if (name == "Window Type") { setWindowType(WindowType(value)); - } else if (name == "Resample Quality") { - setResampleQuality(value); + } else if (name == "Run Vamp Plugins In Process") { + setRunPluginsInProcess(value ? true : false); } else if (name == "Omit Temporaries from Recent Files") { setOmitTempsFromRecentFiles(value ? true : false); } else if (name == "Background Mode") { @@ -506,15 +512,15 @@ } void -Preferences::setResampleQuality(int q) +Preferences::setRunPluginsInProcess(bool run) { - if (m_resampleQuality != q) { - m_resampleQuality = q; + if (m_runPluginsInProcess != run) { + m_runPluginsInProcess = run; QSettings settings; settings.beginGroup("Preferences"); - settings.setValue("resample-quality", q); + settings.setValue("run-vamp-plugins-in-process", run); settings.endGroup(); - emit propertyChanged("Resample Quality"); + emit propertyChanged("Run Vamp Plugins In Process"); } } @@ -561,6 +567,19 @@ } void +Preferences::setUseGaplessMode(bool gapless) +{ + if (m_gapless != gapless) { + m_gapless = gapless; + QSettings settings; + settings.beginGroup("Preferences"); + settings.setValue("gapless", gapless); + settings.endGroup(); + emit propertyChanged("Use Gapless Mode"); + } +} + +void Preferences::setFixedSampleRate(sv_samplerate_t rate) { if (m_fixedSampleRate != rate) {