mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-08 15:54:57 +01:00
Use soundtouch for vocal audio time stretching (2/2)
This commit is contained in:
parent
262281bc1f
commit
353ac8e106
2 changed files with 17 additions and 1 deletions
|
|
@ -234,6 +234,9 @@ static const gchar *_rb_opt_strings[] = {
|
||||||
N_("Crisp monophonic instrumental"),
|
N_("Crisp monophonic instrumental"),
|
||||||
N_("Unpitched solo percussion"),
|
N_("Unpitched solo percussion"),
|
||||||
N_("Resample without preserving pitch"),
|
N_("Resample without preserving pitch"),
|
||||||
|
#ifdef HAVE_SOUNDTOUCH
|
||||||
|
N_("Vocal"),
|
||||||
|
#endif
|
||||||
0
|
0
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
|
|
@ -218,7 +218,7 @@ Editor::time_fx (RegionList& regions, float val, bool pitching)
|
||||||
|
|
||||||
txt = current_timefx->stretch_opts_selector.get_active_text ();
|
txt = current_timefx->stretch_opts_selector.get_active_text ();
|
||||||
|
|
||||||
for (int i = 0; i <= 6; i++) {
|
for (size_t i = 0; i < rb_opt_strings.size(); i++) {
|
||||||
if (txt == rb_opt_strings[i]) {
|
if (txt == rb_opt_strings[i]) {
|
||||||
rb_current_opt = i;
|
rb_current_opt = i;
|
||||||
break;
|
break;
|
||||||
|
|
@ -273,6 +273,11 @@ Editor::time_fx (RegionList& regions, float val, bool pitching)
|
||||||
shortwin = true;
|
shortwin = true;
|
||||||
// peaklock = false;
|
// peaklock = false;
|
||||||
break;
|
break;
|
||||||
|
#ifdef HAVE_SOUNDTOUCH
|
||||||
|
case 7:
|
||||||
|
current_timefx->request.use_soundtouch = true;
|
||||||
|
break;
|
||||||
|
#endif
|
||||||
default:
|
default:
|
||||||
/* default/4 */
|
/* default/4 */
|
||||||
transients = Transients; peaklock = true; longwin = false; shortwin = false;
|
transients = Transients; peaklock = true; longwin = false; shortwin = false;
|
||||||
|
|
@ -379,7 +384,15 @@ Editor::do_timefx ()
|
||||||
fx = new Pitch (*_session, current_timefx->request);
|
fx = new Pitch (*_session, current_timefx->request);
|
||||||
} else {
|
} else {
|
||||||
#ifdef USE_RUBBERBAND
|
#ifdef USE_RUBBERBAND
|
||||||
|
#ifdef HAVE_SOUNDTOUCH
|
||||||
|
if (current_timefx->request.use_soundtouch) {
|
||||||
|
fx = new STStretch (*_session, current_timefx->request);
|
||||||
|
} else {
|
||||||
fx = new RBStretch (*_session, current_timefx->request);
|
fx = new RBStretch (*_session, current_timefx->request);
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
fx = new RBStretch (*_session, current_timefx->request);
|
||||||
|
#endif
|
||||||
#else
|
#else
|
||||||
fx = new STStretch (*_session, current_timefx->request);
|
fx = new STStretch (*_session, current_timefx->request);
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue