mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-16 03:36:32 +01:00
overhaul region/range spectrum analysis
This commit is contained in:
parent
ef365d0310
commit
1b3b42403b
6 changed files with 481 additions and 455 deletions
|
|
@ -41,20 +41,14 @@
|
|||
using namespace ARDOUR;
|
||||
using namespace PBD;
|
||||
|
||||
AnalysisWindow::AnalysisWindow() :
|
||||
|
||||
source_selection_label (_("Signal source")),
|
||||
source_selection_ranges_rb (_("Selected ranges")),
|
||||
source_selection_regions_rb (_("Selected regions")),
|
||||
|
||||
display_model_label (_("Display model")),
|
||||
display_model_composite_separate_rb (_("Composite graphs for each track")),
|
||||
display_model_composite_all_tracks_rb (_("Composite graph of all tracks")),
|
||||
|
||||
show_minmax_button (_("Show frequency power range")),
|
||||
show_normalized_button (_("Normalize values")),
|
||||
|
||||
fft_graph (16384)
|
||||
AnalysisWindow::AnalysisWindow()
|
||||
: source_selection_label (_("Signal source"))
|
||||
, source_selection_ranges_rb (_("Selected ranges"))
|
||||
, source_selection_regions_rb (_("Selected regions"))
|
||||
, show_minmax_button (_("Show frequency power range"))
|
||||
, show_normalized_button (_("Fit dB range"))
|
||||
, show_proportional_button (_("Proportional Spectum, -18dB"))
|
||||
, fft_graph (16384)
|
||||
{
|
||||
set_name(_("FFT analysis window"));
|
||||
set_title (_("Spectral Analysis"));
|
||||
|
|
@ -107,49 +101,31 @@ AnalysisWindow::AnalysisWindow() :
|
|||
sigc::bind ( sigc::mem_fun(*this, &AnalysisWindow::source_selection_changed), &source_selection_regions_rb));
|
||||
}
|
||||
|
||||
vbox.pack_start(hseparator1, false, false);
|
||||
|
||||
// "Display model"
|
||||
vbox.pack_start(display_model_label, false, false);
|
||||
{
|
||||
Gtk::RadioButtonGroup group = display_model_composite_separate_rb.get_group();
|
||||
display_model_composite_all_tracks_rb.set_group (group);
|
||||
|
||||
display_model_composite_separate_rb.set_active();
|
||||
|
||||
vbox.pack_start (display_model_composite_separate_rb, false, false);
|
||||
vbox.pack_start (display_model_composite_all_tracks_rb, false, false);
|
||||
|
||||
// "Composite graphs for all tracks"
|
||||
display_model_composite_separate_rb.signal_toggled().connect (
|
||||
sigc::bind ( sigc::mem_fun(*this, &AnalysisWindow::display_model_changed), &display_model_composite_separate_rb));
|
||||
|
||||
// "Composite graph of all tracks"
|
||||
display_model_composite_all_tracks_rb.signal_toggled().connect (
|
||||
sigc::bind ( sigc::mem_fun(*this, &AnalysisWindow::display_model_changed), &display_model_composite_all_tracks_rb));
|
||||
}
|
||||
|
||||
// Analyze button
|
||||
|
||||
refresh_button.set_name("EditorGTKButton");
|
||||
refresh_button.set_label(_("Re-analyze data"));
|
||||
|
||||
|
||||
refresh_button.signal_clicked().connect ( sigc::bind ( sigc::mem_fun(*this, &AnalysisWindow::analyze_data), &refresh_button));
|
||||
|
||||
vbox.pack_start(refresh_button, false, false, 10);
|
||||
|
||||
vbox.pack_start(hseparator1, false, false);
|
||||
|
||||
// Feature checkboxes
|
||||
|
||||
// normalize, fit y-range
|
||||
show_normalized_button.signal_toggled().connect( sigc::mem_fun(*this, &AnalysisWindow::show_normalized_changed));
|
||||
vbox.pack_start(show_normalized_button, false, false);
|
||||
|
||||
// minmax
|
||||
show_minmax_button.signal_toggled().connect( sigc::mem_fun(*this, &AnalysisWindow::show_minmax_changed));
|
||||
vbox.pack_start(show_minmax_button, false, false);
|
||||
|
||||
// normalize
|
||||
show_normalized_button.signal_toggled().connect( sigc::mem_fun(*this, &AnalysisWindow::show_normalized_changed));
|
||||
vbox.pack_start(show_normalized_button, false, false);
|
||||
|
||||
|
||||
// pink-noise / proportional spectrum
|
||||
show_proportional_button.signal_toggled().connect( sigc::mem_fun(*this, &AnalysisWindow::show_proportional_changed));
|
||||
vbox.pack_start(show_proportional_button, false, false);
|
||||
|
||||
|
||||
|
||||
|
|
@ -185,6 +161,12 @@ AnalysisWindow::show_normalized_changed()
|
|||
fft_graph.set_show_normalized(show_normalized_button.get_active());
|
||||
}
|
||||
|
||||
void
|
||||
AnalysisWindow::show_proportional_changed()
|
||||
{
|
||||
fft_graph.set_show_proportioanl(show_proportional_button.get_active());
|
||||
}
|
||||
|
||||
void
|
||||
AnalysisWindow::set_rangemode()
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue