From e76055d63dd98b0df859d1390839fb1f09004949 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Sun, 4 Oct 2020 16:37:29 +0200 Subject: [PATCH] LAN: Display messages for edge-case errors (#8437) --- gtk2_ardour/loudness_dialog.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/gtk2_ardour/loudness_dialog.cc b/gtk2_ardour/loudness_dialog.cc index d8d72de77b..7404bd672c 100644 --- a/gtk2_ardour/loudness_dialog.cc +++ b/gtk2_ardour/loudness_dialog.cc @@ -499,6 +499,12 @@ LoudnessDialog::analyze () /* done */ _status->finish (TRS_UI); + + if (!_status->aborted() && _status->result_map.size () != 1) { + ArdourMessageDialog (_("Loudness measurement returned no results. Likely because the analyzed range is to short."), false, MESSAGE_ERROR).run (); + return 1; + } + return _status->aborted() ? 1 : 0; } @@ -576,6 +582,10 @@ LoudnessDialog::display_results () assert (ar.size () == 1); ExportAnalysisPtr p = ar.begin()->second; + if (!p->have_loudness || !p->have_dbtp) { + ArdourMessageDialog (_("True-peak and loudness measurement failed. Likely Ardour's VAMP analysis plugin is missing from your installation. Please contact your vendor."), false, MESSAGE_ERROR).run (); + } + _dbfs = accurate_coefficient_to_dB (p->peak); _dbtp = accurate_coefficient_to_dB (p->truepeak); _lufs_i = p->integrated_loudness > -200 ? p->integrated_loudness : -std::numeric_limits::infinity();