From de230254bda2b476068c0bd99ad0004e92a31f94 Mon Sep 17 00:00:00 2001 From: Paul Licameli Date: Sat, 12 May 2018 21:47:19 -0400 Subject: [PATCH] Add to recording preferences for pre-roll and crossfade --- src/AudioIO.h | 6 ++++++ src/prefs/RecordingPrefs.cpp | 28 +++++++++++++++++++++++++++- 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/src/AudioIO.h b/src/AudioIO.h index 22c0bb384..c9ee5578d 100644 --- a/src/AudioIO.h +++ b/src/AudioIO.h @@ -85,6 +85,12 @@ class AudioIOListener; #define DEFAULT_LATENCY_DURATION 100.0 #define DEFAULT_LATENCY_CORRECTION -130.0 +#define AUDIO_PRE_ROLL_KEY (wxT("/AudioIO/PreRoll")) +#define DEFAULT_PRE_ROLL_SECONDS 5.0 + +#define AUDIO_ROLL_CROSSFADE_KEY (wxT("/AudioIO/Crossfade")) +#define DEFAULT_ROLL_CROSSFADE_MS 10.0 + #ifdef EXPERIMENTAL_AUTOMATED_INPUT_LEVEL_ADJUSTMENT #define AILA_DEF_TARGET_PEAK 92 #define AILA_DEF_DELTA_PEAK 2 diff --git a/src/prefs/RecordingPrefs.cpp b/src/prefs/RecordingPrefs.cpp index cee059adb..c2b475a82 100644 --- a/src/prefs/RecordingPrefs.cpp +++ b/src/prefs/RecordingPrefs.cpp @@ -19,6 +19,7 @@ *//********************************************************************/ #include "../Audacity.h" +#include "../Experimental.h" #include "RecordingPrefs.h" #include @@ -222,8 +223,33 @@ void RecordingPrefs::PopulateOrExchange(ShuttleGui & S) } S.EndStatic(); #endif - S.EndScroller(); +#ifdef EXPERIMENTAL_PUNCH_AND_ROLL + S.StartStatic(_("Punch and Roll Recording")); + { + S.StartThreeColumn(); + { + auto w = S.TieNumericTextBox(_("Pre-ro&ll duration:"), + AUDIO_PRE_ROLL_KEY, + DEFAULT_PRE_ROLL_SECONDS, + 9); + S.AddUnits(_("seconds")); + w->SetName(w->GetName() + wxT(" ") + _("seconds")); + } + { + auto w = S.TieNumericTextBox(_("Cross&fade:"), + AUDIO_ROLL_CROSSFADE_KEY, + DEFAULT_ROLL_CROSSFADE_MS, + 9); + S.AddUnits(_("milliseconds")); + w->SetName(w->GetName() + wxT(" ") + _("milliseconds")); + } + S.EndThreeColumn(); + } + S.EndStatic(); +#endif + + S.EndScroller(); } bool RecordingPrefs::Commit()