summaryrefslogtreecommitdiff
path: root/src/wx/audio_dialog.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2015-09-03 13:52:10 +0100
committerCarl Hetherington <cth@carlh.net>2015-09-14 10:21:11 +0100
commitb0834f33e972a6e7b0d234d09e420007943a136d (patch)
treeaac5cde453a18983a7c87462e1042ecd520218a4 /src/wx/audio_dialog.cc
parentd2bd0c628fd0616fe3b7dd02bd955b2c07ab48d5 (diff)
Peak value of audio into the audio tab.
Diffstat (limited to 'src/wx/audio_dialog.cc')
-rw-r--r--src/wx/audio_dialog.cc25
1 files changed, 3 insertions, 22 deletions
diff --git a/src/wx/audio_dialog.cc b/src/wx/audio_dialog.cc
index d4108f89c..27b345406 100644
--- a/src/wx/audio_dialog.cc
+++ b/src/wx/audio_dialog.cc
@@ -150,7 +150,7 @@ AudioDialog::try_to_load_analysis ()
}
_plot->set_analysis (_analysis);
- _plot->set_gain_correction (gain_correction ());
+ _plot->set_gain_correction (_analysis->gain_correction (_playlist));
setup_peak_time ();
/* Set up some defaults if no check boxes are checked */
@@ -220,7 +220,7 @@ AudioDialog::content_changed (int p)
/* We can use a short-cut to render the effect of this
change, rather than recalculating everything.
*/
- _plot->set_gain_correction (gain_correction ());
+ _plot->set_gain_correction (_analysis->gain_correction (_playlist));
setup_peak_time ();
} else {
try_to_load_analysis ();
@@ -259,7 +259,7 @@ AudioDialog::setup_peak_time ()
return;
}
- float const peak_dB = 20 * log10 (_analysis->peak().get()) + gain_correction ();
+ float const peak_dB = 20 * log10 (_analysis->peak().get()) + _analysis->gain_correction (_playlist);
_peak_time->SetLabel (
wxString::Format (
@@ -283,22 +283,3 @@ AudioDialog::Show (bool show)
try_to_load_analysis ();
return r;
}
-
-/** @return gain correction in dB required to be added to raw gain values to render
- * the dialog correctly.
- */
-float
-AudioDialog::gain_correction ()
-{
- if (_playlist->content().size() == 1 && _analysis->analysis_gain ()) {
- /* In this case we know that the analysis was of a single piece of content and
- we know that content's gain when the analysis was run. Hence we can work out
- what correction is now needed to make it look `right'.
- */
- shared_ptr<const AudioContent> ac = dynamic_pointer_cast<const AudioContent> (_playlist->content().front ());
- DCPOMATIC_ASSERT (ac);
- return ac->audio_gain() - _analysis->analysis_gain().get ();
- }
-
- return 0.0f;
-}