| 4931 | } |
| 4932 | |
| 4933 | void AudioEngine::saveClientFinalLimiterSettings() const |
| 4934 | { |
| 4935 | if (!m_clientFinalLimiterTx) return; |
| 4936 | auto& s = AppSettings::instance(); |
| 4937 | s.setValue("ClientFinalLimiterTxEnabled", |
| 4938 | m_clientFinalLimiterTx->isEnabled() ? QString("True") : QString("False")); |
| 4939 | s.setValue("ClientFinalLimiterTxCeilingDb", |
| 4940 | QString::number(m_clientFinalLimiterTx->ceilingDb())); |
| 4941 | s.setValue("ClientFinalLimiterTxOutputTrimDb", |
| 4942 | QString::number(m_clientFinalLimiterTx->outputTrimDb())); |
| 4943 | s.setValue("ClientFinalLimiterTxDcBlock", |
| 4944 | m_clientFinalLimiterTx->dcBlockEnabled() ? QString("True") : QString("False")); |
| 4945 | } |
| 4946 | |
| 4947 | // Aetherial Tube Pre-Amp TX — nested-JSON persistence (Principle V). |
| 4948 | // One AppSettings key holds a JSON object so future mic-preamp toggles |
no test coverage detected