diff --git a/SConstruct b/SConstruct index 58e498d905..a2588d6ab5 100644 --- a/SConstruct +++ b/SConstruct @@ -364,7 +364,7 @@ def distcopy (target, source, env): return p.close () def tarballer (target, source, env): - cmd = 'tar -jcf ' + str (target[0]) + ' ' + str(source[0]) + " --exclude '*~'" + cmd = 'tar -jcf ' + str (target[0]) + ' ' + str(source[0]) + " --exclude '*~'" + " --exclude .svn --exclude '.svn/*'" print 'running ', cmd, ' ... ' p = os.popen (cmd) return p.close () @@ -767,15 +767,18 @@ def prep_libcheck(topenv, libinfo): prep_libcheck(env, env) -env['RUBBERBAND'] = True -libraries['rubberband'] = LibraryInfo (LIBS='rubberband', - LIBPATH='#libs/rubberband', - CPPPATH='#libs/rubberband', - CCFLAGS='-DUSE_RUBBERBAND') -libraries['vamp'] = LibraryInfo (LIBS='vampsdk', - LIBPATH='#libs/vamp-sdk', - CPPPATH='#libs/vamp-sdk/vamp') +libraries['vamp'] = LibraryInfo (LIBS='vampsdk', + LIBPATH='#libs/vamp-sdk', + CPPPATH='#libs/vamp-sdk/vamp') + +if conf.CheckHeader ('fftw3.h'): + env['RUBBERBAND'] = True + libraries['rubberband'] = LibraryInfo (LIBS='rubberband', + LIBPATH='#libs/rubberband', + CPPPATH='#libs/rubberband', + CCFLAGS='-DUSE_RUBBERBAND') + # # Check for libusb diff --git a/gtk2_ardour/ardour-sae.menus b/gtk2_ardour/ardour-sae.menus index a1818a9965..e3efc7a849 100644 --- a/gtk2_ardour/ardour-sae.menus +++ b/gtk2_ardour/ardour-sae.menus @@ -73,6 +73,7 @@ + diff --git a/gtk2_ardour/ardour.bindings.in b/gtk2_ardour/ardour.bindings.in index 990b74182b..1efdb1cdd4 100644 --- a/gtk2_ardour/ardour.bindings.in +++ b/gtk2_ardour/ardour.bindings.in @@ -25,16 +25,18 @@ (gtk_accel_path "/Transport/record-roll" "<%TERTIARY%>space") (gtk_accel_path "/Editor/set-fade-in-length" "slash") +(gtk_accel_path "/Editor/set-fade-in-length" "<%SECONDARY%>slash") (gtk_accel_path "/Editor/set-fade-out-length" "backslash") +(gtk_accel_path "/Editor/set-fade-out-length" "<%SECONDARY%>backslash") (gtk_accel_path "/Editor/trim-from-start" "<%TERTIARY%>braceleft") (gtk_accel_path "/Editor/trim-to-end" "<%TERTIARY%>braceright") (gtk_accel_path "/Editor/set-loop-from-edit-range" "bracketright") -(gtk_accel_path "/Editor/set-loop-from-region" "<%PRIMARY%><%SECONDARY%>bracketright") +(gtk_accel_path "/Editor/set-loop-from-region" "<%SECONDARY%>bracketright") (gtk_accel_path "/Editor/set-punch-from-edit-range" "bracketleft") -(gtk_accel_path "/Editor/edit-cursor-to-previous-region-end" "<%PRIMARY%>bracketleft") +(gtk_accel_path "/Editor/set-punch-from-region" "<%SECONDARY%>bracketleft") ;; letters @@ -47,6 +49,7 @@ (gtk_accel_path "/Editor/set-edit-point" "e") (gtk_accel_path "/Editor/select-all-before-edit-cursor" "<%PRIMARY%>e") (gtk_accel_path "/Editor/show-editor-mixer" "<%TERTIARY%>e") +(gtk_accel_path "/Common/goto-editor" "<%WINDOW%>e") (gtk_accel_path "/MouseMode/set-mouse-mode-range" "r") (gtk_accel_path "/Editor/redo" "<%PRIMARY%>r") (gtk_accel_path "/Transport/Record" "<%TERTIARY%>r") @@ -56,15 +59,16 @@ (gtk_accel_path "/Editor/invert-selection" "<%TERTIARY%>i") (gtk_accel_path "/Editor/addExistingAudioFiles" "<%SECONDARY%>i") (gtk_accel_path "/MouseMode/set-mouse-mode-object" "o") +(gtk_accel_path "/Common/ToggleOptionsEditor" "<%WINDOW%>o") (gtk_accel_path "/Editor/set-playhead" "p") (gtk_accel_path "/Editor/select-all-before-playhead" "<%PRIMARY%>p") ;; MIDDLE ROW (gtk_accel_path "/Editor/align-regions-sync-relative" "a") -(gtk_accel_path "/Editor/align-regions-start-relative" "<%TERTIARY%>a") -(gtk_accel_path "/Editor/align-regions-end" "<%PRIMARY%><%LEVEL4%>a") -(gtk_accel_path "/Editor/align-regions-sync" "<%LEVEL4%>a") +(gtk_accel_path "/Editor/align-regions-start-relative" "<%PRIMARY%>a") +(gtk_accel_path "/Editor/align-regions-end" "<%SECONDARY%>a") +(gtk_accel_path "/Editor/align-regions-sync" "<%TERTIARY%>a") (gtk_accel_path "/Editor/split-region" "s") (gtk_accel_path "/Common/Save" "<%PRIMARY%>s") (gtk_accel_path "/Editor/duplicate-region" "d") @@ -79,8 +83,10 @@ (gtk_accel_path "/Editor/play-selected-regions" "h") (gtk_accel_path "/Editor/trim-front" "j") (gtk_accel_path "/Editor/trim-back" "k") +(gtk_accel_path "/Common/ToggleKeyEditor" "<%WINDOW%>k") (gtk_accel_path "/Transport/Loop" "l") (gtk_accel_path "/Editor/select-all-in-loop-range" "<%PRIMARY%>l") +(gtk_accel_path "/Common/ToggleLocations" "<%WINDOW%>l") ;; HOME ROW @@ -89,23 +95,15 @@ (gtk_accel_path "/Editor/toggle-zoom" "<%TERTIARY%>z") (gtk_accel_path "/MouseMode/set-mouse-mode-zoom" "<%TERTIARY%>z") (gtk_accel_path "/Editor/editor-cut" "<%PRIMARY%>x") -(gtk_accel_path "/Editor/crop" "c") (gtk_accel_path "/Editor/editor-copy" "<%PRIMARY%>c") +(gtk_accel_path "/Common/ToggleColorManager" "<%WINDOW%>c") (gtk_accel_path "/Editor/set-region-sync-position" "v") (gtk_accel_path "/Editor/editor-paste" "<%PRIMARY%>v") (gtk_accel_path "/Editor/brush-at-mouse" "<%PRIMARY%>b") +(gtk_accel_path "/Common/ToggleBigClock" "<%WINDOW%>b") (gtk_accel_path "/Editor/normalize-region" "n") (gtk_accel_path "/Editor/mute-unmute-region" "m") - -;; window-letters - -(gtk_accel_path "/Common/goto-editor" "<%WINDOW%>e") -(gtk_accel_path "/Common/ToggleOptionsEditor" "<%WINDOW%>o") (gtk_accel_path "/Common/goto-mixer" "<%WINDOW%>m") -(gtk_accel_path "/Common/ToggleBigClock" "<%WINDOW%>b") -(gtk_accel_path "/Common/ToggleKeyEditor" "<%WINDOW%>k") -(gtk_accel_path "/Common/ToggleColorManager" "<%WINDOW%>c") -(gtk_accel_path "/Common/ToggleLocations" "<%WINDOW%>l") ;; arrow keys, navigation etc. @@ -180,8 +178,8 @@ (gtk_accel_path "/Editor/toggle-edit-mode" "1") (gtk_accel_path "/Editor/cycle-snap-mode" "2") (gtk_accel_path "/Editor/cycle-snap-choice" "3") -(gtk_accel_path "/Transport/ToggleClick" "5") (gtk_accel_path "/Transport/ToggleAutoReturn" "4") +(gtk_accel_path "/Transport/ToggleClick" "5") ;; ;; unbound actions diff --git a/gtk2_ardour/ardour.menus b/gtk2_ardour/ardour.menus index 122e3c2594..a42919f006 100644 --- a/gtk2_ardour/ardour.menus +++ b/gtk2_ardour/ardour.menus @@ -87,6 +87,7 @@ + diff --git a/gtk2_ardour/editor.h b/gtk2_ardour/editor.h index 9e08ba28a3..a6c548507e 100644 --- a/gtk2_ardour/editor.h +++ b/gtk2_ardour/editor.h @@ -1126,6 +1126,7 @@ class Editor : public PublicEditor void add_location_from_selection (); void set_loop_from_selection (bool play); void set_punch_from_selection (); + void set_punch_from_region (); void set_loop_from_edit_range (bool play); void set_loop_from_region (bool play); diff --git a/gtk2_ardour/editor_actions.cc b/gtk2_ardour/editor_actions.cc index 714d7e998a..862659f893 100644 --- a/gtk2_ardour/editor_actions.cc +++ b/gtk2_ardour/editor_actions.cc @@ -267,7 +267,8 @@ Editor::register_actions () ActionManager::session_sensitive_actions.push_back (act); act = ActionManager::register_action (editor_actions, "set-punch-from-edit-range", _("Set Punch From Edit Range"), mem_fun(*this, &Editor::set_punch_from_edit_range)); ActionManager::session_sensitive_actions.push_back (act); - + act = ActionManager::register_action (editor_actions, "set-punch-from-region", _("Set Punch From Region"), mem_fun(*this, &Editor::set_punch_from_region)); + ActionManager::session_sensitive_actions.push_back (act); act = ActionManager::register_action (editor_actions, "pitch-shift-region", _("Transpose"), mem_fun(*this, &Editor::pitch_shift_regions)); ActionManager::session_sensitive_actions.push_back (act); diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc index 30670029b2..e860ff185a 100644 --- a/gtk2_ardour/editor_ops.cc +++ b/gtk2_ardour/editor_ops.cc @@ -4788,7 +4788,7 @@ Editor::set_loop_from_region (bool play) nframes64_t start = max_frames; nframes64_t end = 0; - ensure_entered_region_selected (true); + ExclusiveRegionSelection esr (*this, entered_regionview); if (selection->regions.empty()) { info << _("cannot set loop: no region selected") << endmsg; @@ -4842,6 +4842,31 @@ Editor::set_punch_from_edit_range () set_punch_range (start, end, _("set punch range from edit range")); } +void +Editor::set_punch_from_region () +{ + nframes64_t start = max_frames; + nframes64_t end = 0; + + ExclusiveRegionSelection esr (*this, entered_regionview); + + if (selection->regions.empty()) { + info << _("cannot set punch: no region selected") << endmsg; + return; + } + + for (RegionSelection::iterator i = selection->regions.begin(); i != selection->regions.end(); ++i) { + if ((*i)->region()->position() < start) { + start = (*i)->region()->position(); + } + if ((*i)->region()->last_frame() + 1 > end) { + end = (*i)->region()->last_frame() + 1; + } + } + + set_punch_range (start, end, _("set punch range from region")); +} + void Editor::pitch_shift_regions () { diff --git a/libs/vamp-sdk/SConscript b/libs/vamp-sdk/SConscript index 2d3599708e..ddd3d8ebbc 100644 --- a/libs/vamp-sdk/SConscript +++ b/libs/vamp-sdk/SConscript @@ -36,4 +36,4 @@ env.Alias('tarball', env.Distribute (env['DISTTREE'], vamphostsdk_files + glob.glob('vamp/*.h') + glob.glob('vamp-sdk/*.h') + - glob.glob('vamp-sdk/host-ext/*.h'))) + glob.glob('vamp-sdk/hostext/*.h')))