diff --git a/app/codec/samplebuffer.cpp b/app/codec/samplebuffer.cpp index 3c0096867..fd4dfa5a7 100644 --- a/app/codec/samplebuffer.cpp +++ b/app/codec/samplebuffer.cpp @@ -191,6 +191,13 @@ void SampleBuffer::transform_volume_for_sample_on_channel(int sample_index, int data_[channel][sample_index] *= volume; } +void SampleBuffer::clamp() +{ + for (int i=0; iproperty("enablewaveforms").toBool()) { - AudioVisualWaveform vis; - vis.set_channel_count(samples.audio_params().channel_count()); - vis.OverwriteSamples(samples, samples.audio_params().sample_rate()); - ticket_->setProperty("waveform", QVariant::fromValue(vis)); + if (samples.is_allocated()) { + samples.clamp(); + + if (ticket_->property("enablewaveforms").toBool()) { + AudioVisualWaveform vis; + vis.set_channel_count(samples.audio_params().channel_count()); + vis.OverwriteSamples(samples, samples.audio_params().sample_rate()); + ticket_->setProperty("waveform", QVariant::fromValue(vis)); + } } if (HeardCancel()) {