#include "pbd/fpu.h"
#include "pbd/cpus.h"
-#include "midi++/manager.h"
-
#include "ardour/audioengine.h"
#include "ardour/dB.h"
#include "ardour/rc_configuration.h"
{
_store = ListStore::create (_model);
_view.set_model (_store);
- _view.append_column (_("Name"), _model.name);
+ _view.append_column (_("Control Surface Protocol"), _model.name);
_view.get_column(0)->set_resizable (true);
_view.get_column(0)->set_expand (true);
_view.append_column_editable (_("Enabled"), _model.enabled);
PBD::ScopedConnection protocol_status_connection;
};
-#ifdef WITH_VIDEOTIMELINE
class VideoTimelineOptions : public OptionEditorBox
{
public:
VideoTimelineOptions (RCConfiguration* c)
: _rc_config (c)
- , _show_xjadeo_setup_button (_("Show Video Monitor Option Dialog"))
, _show_video_export_info_button (_("Show Video Export Info before export"))
, _show_video_server_dialog_button (_("Show Video Server Startup Dialog"))
, _video_advanced_setup_button (_("Advanced Setup (remote video server)"))
{
- Table* t = manage (new Table (2, 7));
+ Table* t = manage (new Table (2, 6));
t->set_spacings (4);
t->attach (_video_advanced_setup_button, 0, 2, 0, 1);
t->attach (*l, 0, 1, 1, 2, FILL);
t->attach (_video_server_url_entry, 1, 2, 1, 2, FILL);
Gtkmm2ext::UI::instance()->set_tip (_video_server_url_entry,
- _("Base URL of the video-server including http prefix. This is usually 'http://hostname.example.org:1554/' and defaults to 'http://localhost:1554/' when the video-server is runing locally"));
+ _("Base URL of the video-server including http prefix. This is usually 'http://hostname.example.org:1554/' and defaults to 'http://localhost:1554/' when the video-server is running locally"));
l = manage (new Label (_("Video Folder:")));
l->set_alignment (0, 0.5);
/* small vspace y=3..4 */
- t->attach (_show_xjadeo_setup_button, 0, 2, 4, 5);
- _show_xjadeo_setup_button.signal_toggled().connect (sigc::mem_fun (*this, &VideoTimelineOptions::show_xjadeo_setup_toggled));
- Gtkmm2ext::UI::instance()->set_tip (_show_xjadeo_setup_button,
- _("<b>When enabled</b> an option dialog is presented before opening the video monitor"));
-
- t->attach (_show_video_export_info_button, 0, 2, 5, 6);
+ t->attach (_show_video_export_info_button, 0, 2, 4, 5);
_show_video_export_info_button.signal_toggled().connect (sigc::mem_fun (*this, &VideoTimelineOptions::show_video_export_info_toggled));
Gtkmm2ext::UI::instance()->set_tip (_show_video_export_info_button,
_("<b>When enabled</b> an information window with details is displayed before the video-export dialog."));
- t->attach (_show_video_server_dialog_button, 0, 2, 6, 7);
+ t->attach (_show_video_server_dialog_button, 0, 2, 5, 6);
_show_video_server_dialog_button.signal_toggled().connect (sigc::mem_fun (*this, &VideoTimelineOptions::show_video_server_dialog_toggled));
Gtkmm2ext::UI::instance()->set_tip (_show_video_server_dialog_button,
_("<b>When enabled</b> the video server is never launched automatically without confirmation"));
_rc_config->set_video_server_docroot (_video_server_docroot_entry.get_text());
}
- void show_xjadeo_setup_toggled ()
- {
- bool const x = _show_xjadeo_setup_button.get_active ();
- _rc_config->set_video_monitor_setup_dialog (x);
- }
-
void show_video_export_info_toggled ()
{
bool const x = _show_video_export_info_button.get_active ();
_video_server_url_entry.set_text (_rc_config->get_video_server_url());
} else if (p == "video-server-docroot") {
_video_server_docroot_entry.set_text (_rc_config->get_video_server_docroot());
- } else if (p == "video-monitor-setup-dialog") {
- bool const x = _rc_config->get_video_monitor_setup_dialog();
- _show_xjadeo_setup_button.set_active (x);
} else if (p == "show-video-export-info") {
bool const x = _rc_config->get_show_video_export_info();
_show_video_export_info_button.set_active (x);
RCConfiguration* _rc_config;
Entry _video_server_url_entry;
Entry _video_server_docroot_entry;
- CheckButton _show_xjadeo_setup_button;
CheckButton _show_video_export_info_button;
CheckButton _show_video_server_dialog_button;
CheckButton _video_advanced_setup_button;
};
-#endif
/** A class which allows control of visibility of some editor components usign
* a VisibilityGroup. The caller should pass in a `dummy' VisibilityGroup
tsf = new BoolOption (
"seamless-loop",
- _("Do seamless looping (not possible when slaved to MTC, JACK etc)"),
+ _("Do seamless looping (not possible when slaved to MTC, LTC etc)"),
sigc::mem_fun (*_rc_config, &RCConfiguration::get_seamless_loop),
sigc::mem_fun (*_rc_config, &RCConfiguration::set_seamless_loop)
);
sigc::mem_fun (*_rc_config, &RCConfiguration::set_show_track_meters)
));
+ add_option (_("Editor"),
+ new BoolOption (
+ "show-editor-meter",
+ _("Display master-meter in the toolbar"),
+ sigc::mem_fun (*_rc_config, &RCConfiguration::get_show_editor_meter),
+ sigc::mem_fun (*_rc_config, &RCConfiguration::set_show_editor_meter)
+ ));
+
bco = new BoolComboOption (
"use-overlap-equivalency",
_("Regions in active edit groups are edited together"),
sigc::mem_fun (*_rc_config, &RCConfiguration::set_monitoring_model)
);
-#ifndef __APPLE__
- /* no JACK monitoring on CoreAudio */
- if (AudioEngine::instance()->can_request_hardware_monitoring()) {
- mm->add (HardwareMonitoring, _("JACK"));
+ if (AudioEngine::instance()->port_engine().can_monitor_input()) {
+ mm->add (HardwareMonitoring, _("via Audio Driver"));
}
-#endif
+
mm->add (SoftwareMonitoring, _("ardour"));
mm->add (ExternalMonitoring, _("audio hardware"));
add_option (_("User interaction"), new KeyboardOptions);
- add_option (_("User interaction"), new OptionEditorHeading (_("Control surfaces")));
+ /* Control Surfaces */
- add_option (_("User interaction"), new ControlSurfacesOptions (*this));
+ add_option (_("Control Surfaces"), new ControlSurfacesOptions (*this));
ComboOption<RemoteModel>* rm = new ComboOption<RemoteModel> (
"remote-model",
rm->add (MixerOrdered, _("follows order of mixer"));
rm->add (EditorOrdered, _("follows order of editor"));
- add_option (_("User interaction"), rm);
+ add_option (_("Control Surfaces"), rm);
-#ifdef WITH_VIDEOTIMELINE
/* VIDEO Timeline */
add_option (_("Video"), new VideoTimelineOptions (_rc_config));
-#endif
/* INTERFACE */
- add_option (S_("GUI"),
+ add_option (S_("Preferences|GUI"),
new BoolOption (
"widget-prelight",
_("Graphically indicate mouse pointer hovering over various widgets"),
sigc::mem_fun (*_rc_config, &RCConfiguration::set_widget_prelight)
));
- add_option (S_("GUI"),
+ add_option (S_("Preferences|GUI"),
new BoolOption (
"use-tooltips",
_("Show tooltips if mouse hovers over a control"),
#ifndef GTKOSX
/* font scaling does nothing with GDK/Quartz */
- add_option (S_("GUI"), new FontScalingOptions (_rc_config));
+ add_option (S_("Preferences|GUI"), new FontScalingOptions (_rc_config));
#endif
- add_option (S_("GUI"),
- new BoolOption (
- "use-own-plugin-gui",
- string_compose (_("Use plugins' own interfaces instead of %1's"), PROGRAM_NAME),
- sigc::mem_fun (*_rc_config, &RCConfiguration::get_use_plugin_own_gui),
- sigc::mem_fun (*_rc_config, &RCConfiguration::set_use_plugin_own_gui)
- ));
add_option (S_("GUI"),
new BoolOption (
_mixer_strip_visibility.add (0, X_("MeterPoint"), _("Meter Point"));
add_option (
- S_("GUI"),
+ S_("Preferences|GUI"),
new VisibilityOption (
_("Mixer Strip"),
&_mixer_strip_visibility,
)
);
- add_option (S_("GUI"),
+ add_option (S_("Preferences|GUI"),
new BoolOption (
"default-narrow_ms",
_("Use narrow strips in the mixer by default"),
sigc::mem_fun (*_rc_config, &RCConfiguration::set_default_narrow_ms)
));
- add_option (S_("GUI"), new OptionEditorHeading (_("Metering")));
+ add_option (S_("Preferences|GUI"), new OptionEditorHeading (_("Metering")));
ComboOption<float>* mht = new ComboOption<float> (
"meter-hold",
- _("Meter hold time"),
+ _("Peak hold time"),
sigc::mem_fun (*_rc_config, &RCConfiguration::get_meter_hold),
sigc::mem_fun (*_rc_config, &RCConfiguration::set_meter_hold)
);
mht->add (MeterHoldMedium, _("medium"));
mht->add (MeterHoldLong, _("long"));
- add_option (S_("GUI"), mht);
+ add_option (S_("Preferences|GUI"), mht);
ComboOption<float>* mfo = new ComboOption<float> (
"meter-falloff",
- _("Meter fall-off"),
+ _("DPM fall-off"),
sigc::mem_fun (*_rc_config, &RCConfiguration::get_meter_falloff),
sigc::mem_fun (*_rc_config, &RCConfiguration::set_meter_falloff)
);
- mfo->add (METER_FALLOFF_OFF, _("off"));
- mfo->add (METER_FALLOFF_SLOWEST, _("slowest"));
- mfo->add (METER_FALLOFF_SLOW, _("slow"));
- mfo->add (METER_FALLOFF_MEDIUM, _("medium"));
- mfo->add (METER_FALLOFF_FAST, _("fast"));
- mfo->add (METER_FALLOFF_FASTER, _("faster"));
- mfo->add (METER_FALLOFF_FASTEST, _("fastest"));
+ mfo->add (METER_FALLOFF_OFF, _("off"));
+ mfo->add (METER_FALLOFF_SLOWEST, _("slowest [6.6dB/sec]"));
+ mfo->add (METER_FALLOFF_SLOW, _("slow [8.6dB/sec] (BBC PPM, EBU PPM)"));
+ mfo->add (METER_FALLOFF_SLOWISH, _("slowish [12.0dB/sec] (DIN)"));
+ mfo->add (METER_FALLOFF_MODERATE, _("moderate [13.3dB/sec] (EBU Digi PPM, IRT Digi PPM)"));
+ mfo->add (METER_FALLOFF_MEDIUM, _("medium [20dB/sec]"));
+ mfo->add (METER_FALLOFF_FAST, _("fast [32dB/sec]"));
+ mfo->add (METER_FALLOFF_FASTER, _("faster [46dB/sec]"));
+ mfo->add (METER_FALLOFF_FASTEST, _("fastest [70dB/sec]"));
+
+ add_option (S_("Preferences|GUI"), mfo);
+
+ ComboOption<MeterLineUp>* mlu = new ComboOption<MeterLineUp> (
+ "meter-line-up-level",
+ _("Meter line-up level; 0dBu"),
+ sigc::mem_fun (*_rc_config, &RCConfiguration::get_meter_line_up_level),
+ sigc::mem_fun (*_rc_config, &RCConfiguration::set_meter_line_up_level)
+ );
+
+ mlu->add (MeteringLineUp24, _("-24dBFS (SMPTE US: 4dBu = -20dBFS)"));
+ mlu->add (MeteringLineUp20, _("-20dBFS (SMPTE RP.0155)"));
+ mlu->add (MeteringLineUp18, _("-18dBFS (EBU, BBC)"));
+ mlu->add (MeteringLineUp15, _("-15dBFS (DIN)"));
+
+ Gtkmm2ext::UI::instance()->set_tip (mlu->tip_widget(), _("Configure meter-marks and color-knee point for dBFS scale DPM, set reference level for IEC1/Nordic, IEC2 PPM and VU meter."));
+
+ add_option (S_("Preferences|GUI"), mlu);
+
+ ComboOption<MeterLineUp>* mld = new ComboOption<MeterLineUp> (
+ "meter-line-up-din",
+ _("IEC1/DIN Meter line-up level; 0dBu"),
+ sigc::mem_fun (*_rc_config, &RCConfiguration::get_meter_line_up_din),
+ sigc::mem_fun (*_rc_config, &RCConfiguration::set_meter_line_up_din)
+ );
+
+ mld->add (MeteringLineUp24, _("-24dBFS (SMPTE US: 4dBu = -20dBFS)"));
+ mld->add (MeteringLineUp20, _("-20dBFS (SMPTE RP.0155)"));
+ mld->add (MeteringLineUp18, _("-18dBFS (EBU, BBC)"));
+ mld->add (MeteringLineUp15, _("-15dBFS (DIN)"));
+
+ Gtkmm2ext::UI::instance()->set_tip (mld->tip_widget(), _("Reference level for IEC1/DIN meter."));
+
+ add_option (S_("Preferences|GUI"), mld);
+
+ ComboOption<VUMeterStandard>* mvu = new ComboOption<VUMeterStandard> (
+ "meter-vu-standard",
+ _("VU Meter standard"),
+ sigc::mem_fun (*_rc_config, &RCConfiguration::get_meter_vu_standard),
+ sigc::mem_fun (*_rc_config, &RCConfiguration::set_meter_vu_standard)
+ );
+
+ mvu->add (MeteringVUfrench, _("0VU = -2dBu (France)"));
+ mvu->add (MeteringVUamerican, _("0VU = 0dBu (North America, Australia)"));
+ mvu->add (MeteringVUstandard, _("0VU = +4dBu (standard)"));
+ mvu->add (MeteringVUeight, _("0VU = +8dBu"));
+
+ add_option (S_("Preferences|GUI"), mvu);
+
+ Gtk::Adjustment *mpk = manage (new Gtk::Adjustment(0, -10, 0, .1, .1));
+ HSliderOption *mpks = new HSliderOption("meter-peak",
+ _("Peak threshold [dBFS]"),
+ mpk,
+ sigc::mem_fun (*_rc_config, &RCConfiguration::get_meter_peak),
+ sigc::mem_fun (*_rc_config, &RCConfiguration::set_meter_peak)
+ );
+
+ Gtkmm2ext::UI::instance()->set_tip
+ (mpks->tip_widget(),
+ _("Specify the audio signal level in dbFS at and above which the meter-peak indicator will flash red."));
+
+ add_option (S_("Preferences|GUI"), mpks);
+
+ add_option (S_("Preferences|GUI"),
+ new BoolOption (
+ "meter-style-led",
+ _("LED meter style"),
+ sigc::mem_fun (*_rc_config, &RCConfiguration::get_meter_style_led),
+ sigc::mem_fun (*_rc_config, &RCConfiguration::set_meter_style_led)
+ ));
- add_option (S_("GUI"), mfo);
}
void