diff --git a/pitivi/timeline/previewers.py b/pitivi/timeline/previewers.py index 66f4ce32cc3889a66a3e85727dcd0b75f62bd2c7..356d04602d8081c7f755a52ef7007cbd65711deb 100644 --- a/pitivi/timeline/previewers.py +++ b/pitivi/timeline/previewers.py @@ -989,11 +989,19 @@ class AudioPreviewer(Previewer, Zoomable, Loggable): if os.path.exists(filename): with open(filename, "rb") as samples: self.samples = list(numpy.load(samples)) + self._scale_samples_to_max() self.queue_draw() else: self.wavefile = filename self._launchPipeline() + def _scale_samples_to_max(self): + max_value = max(self.samples) + has_sound = max_value > 0.0001 + if has_sound: + factor = 100.0 / max_value + self.samples = [i * factor for i in self.samples] + def _launchPipeline(self): self.debug( 'Now generating waveforms for: %s', path_from_uri(self._uri)) @@ -1022,6 +1030,7 @@ class AudioPreviewer(Previewer, Zoomable, Loggable): proxy = self.ges_elem.get_parent().get_asset().get_proxy_target() self._wavebin.finalize(proxy=proxy) self.samples = self._wavebin.samples + self._scale_samples_to_max() def _busMessageCb(self, bus, message): if message.type == Gst.MessageType.EOS: