diff options
| author | Carl Hetherington <cth@carlh.net> | 2017-04-26 10:04:06 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2017-04-27 10:59:45 +0100 |
| commit | e257ae9a74c608d308401f39fb113bff595df390 (patch) | |
| tree | 14164462a454afbad7baa023d1a77fe144eb569d /src | |
| parent | ba8a5a15cc27988e2bbc6acd470d8532f1d8e99f (diff) | |
Use orange for audio peaks that are quite near clipping and red for those that are very close (#1054).
Diffstat (limited to 'src')
| -rw-r--r-- | src/wx/audio_panel.cc | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/wx/audio_panel.cc b/src/wx/audio_panel.cc index cef82f9ff..707d9ab02 100644 --- a/src/wx/audio_panel.cc +++ b/src/wx/audio_panel.cc @@ -311,7 +311,7 @@ void AudioPanel::setup_peak () { ContentList sel = _parent->selected_audio (); - bool alert = false; + optional<float> peak_dB; if (sel.size() != 1) { _peak->SetLabel (wxT ("")); @@ -320,11 +320,8 @@ AudioPanel::setup_peak () playlist->add (sel.front ()); try { shared_ptr<AudioAnalysis> analysis (new AudioAnalysis (_parent->film()->audio_analysis_path (playlist))); - float const peak_dB = 20 * log10 (analysis->overall_sample_peak().first.peak) + analysis->gain_correction (playlist); - if (peak_dB > -3) { - alert = true; - } - _peak->SetLabel (wxString::Format (_("Peak: %.2fdB"), peak_dB)); + peak_dB = 20 * log10 (analysis->overall_sample_peak().first.peak) + analysis->gain_correction (playlist); + _peak->SetLabel (wxString::Format (_("Peak: %.2fdB"), *peak_dB)); } catch (...) { _peak->SetLabel (_("Peak: unknown")); } @@ -332,8 +329,10 @@ AudioPanel::setup_peak () static wxColour normal = _peak->GetForegroundColour (); - if (alert) { + if (peak_dB && *peak_dB > -0.5) { _peak->SetForegroundColour (wxColour (255, 0, 0)); + } else if (peak_dB && *peak_dB > -3) { + _peak->SetForegroundColour (wxColour (186, 120, 0)); } else { _peak->SetForegroundColour (normal); } |
