hopefully a fix for the linux crash

pull/801/head
AlexandreRouma 2022-06-22 04:58:03 +02:00
rodzic b943e6e869
commit f2b8418a25
4 zmienionych plików z 14 dodań i 7 usunięć

Wyświetl plik

@ -89,17 +89,17 @@ namespace dsp::loop {
float maxAmp = 0;
for (int j = i; j < count; j++) {
if constexpr (std::is_same_v<T, complex_t>) {
inAmp = in[i].amplitude();
inAmp = in[j].amplitude();
}
if constexpr (std::is_same_v<T, float>) {
inAmp = fabsf(in[i]);
inAmp = fabsf(in[j]);
}
if (inAmp > maxAmp) { maxAmp = inAmp; }
}
amp = maxAmp;
gain = _setPoint / maxAmp;
gain = std::min<float>(_setPoint / amp, _maxGain);
}
// Scale output by gain
out[i] = in[i] * gain;
}

Wyświetl plik

@ -11,7 +11,12 @@ namespace dsp::sink {
public:
RingBuffer() {}
RingBuffer(stream<T>* in) { base_type::init(in); }
RingBuffer(stream<T>* in, int maxLatency) { init(in, maxLatency); }
void init(stream<T>* in, int maxLatency) {
data.init(maxLatency);
base_type::init(in);
}
int run() {
int count = base_type::_in->read();

Wyświetl plik

@ -318,11 +318,13 @@ private:
void selectDemod(demod::Demodulator* demod) {
// Stopcurrently selected demodulator and select new
afChain.stop();
if (selectedDemod) {
selectedDemod->stop();
delete selectedDemod;
}
selectedDemod = demod;
afChain.start();
// Give the demodulator the most recent audio SR
selectedDemod->AFSampRateChanged(audioSampleRate);

Wyświetl plik

@ -34,8 +34,8 @@ public:
_stream = stream;
_streamName = streamName;
s2m.init(_stream->sinkOut);
monoRB.init(&s2m.out);
stereoRB.init(_stream->sinkOut);
monoRB.init(&s2m.out, 480);
stereoRB.init(_stream->sinkOut, 480);
// monoPacker.init(&s2m.out, 240);
// stereoPacker.init(_stream->sinkOut, 240);