provide user preference for pre-roll

This commit is contained in:
Ben Loftis 2015-11-19 16:55:34 -06:00
parent ceab8cf313
commit ca381a908e
3 changed files with 19 additions and 1 deletions

View File

@ -2532,7 +2532,7 @@ Editor::play_selection ()
framepos_t
Editor::get_preroll ()
{
return 1.0 /*Config->get_edit_preroll_seconds()*/ * _session->frame_rate();
return Config->get_preroll_seconds() * _session->frame_rate();
}

View File

@ -2062,6 +2062,23 @@ RCOptionEditor::RCOptionEditor ()
"that occurs when fast-forwarding or rewinding through some kinds of audio"));
add_option (_("Transport"), tsf);
ComboOption<float>* psc = new ComboOption<float> (
"preroll-seconds",
_("Preroll"),
sigc::mem_fun (*_rc_config, &RCConfiguration::get_preroll_seconds),
sigc::mem_fun (*_rc_config, &RCConfiguration::set_preroll_seconds)
);
Gtkmm2ext::UI::instance()->set_tip (tsf->tip_widget(),
(_("The amount of preroll (in seconds) to apply when Play with Preroll is initiated.\n\n"
"If <b>Follow Edits</b> is enabled, the preroll is applied to the playhead position when a region is selected or trimmed.")));
psc->add (0.0, _("0 (no pre-roll)"));
psc->add (0.1, _("0.1 second"));
psc->add (0.25, _("0.25 second"));
psc->add (0.5, _("0.5 second"));
psc->add (1.0, _("1.0 second"));
psc->add (2.0, _("2.0 seconds"));
add_option (_("Transport"), psc);
add_option (_("Transport"), new OptionEditorHeading (S_("Sync/Slave")));
_sync_source = new ComboOption<SyncSource> (

View File

@ -161,6 +161,7 @@ CONFIG_VARIABLE (bool, stop_recording_on_xrun, "stop-recording-on-xrun", false)
CONFIG_VARIABLE (bool, create_xrun_marker, "create-xrun-marker", true)
CONFIG_VARIABLE (bool, stop_at_session_end, "stop-at-session-end", false)
CONFIG_VARIABLE (bool, seamless_loop, "seamless-loop", false)
CONFIG_VARIABLE (float, preroll_seconds, "preroll-seconds", 1.0f)
#ifdef USE_TRACKS_CODE_FEATURES
CONFIG_VARIABLE (bool, loop_is_mode, "loop-is-mode", true)
#else