summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gtk2_ardour/add_route_dialog.cc1
-rw-r--r--gtk2_ardour/add_video_dialog.cc1
-rw-r--r--gtk2_ardour/ardour_dialog.cc17
-rw-r--r--gtk2_ardour/ardour_dialog.h1
-rw-r--r--gtk2_ardour/ardour_ui.cc10
-rw-r--r--gtk2_ardour/ardour_ui_ed.cc11
-rw-r--r--gtk2_ardour/ardour_window.cc11
-rw-r--r--gtk2_ardour/au_pluginui.h6
-rw-r--r--gtk2_ardour/au_pluginui.mm129
-rw-r--r--gtk2_ardour/audio_region_view.cc1
-rw-r--r--gtk2_ardour/automation_controller.h7
-rw-r--r--gtk2_ardour/bundle_manager.cc2
-rw-r--r--gtk2_ardour/crossfade_edit.cc1
-rw-r--r--gtk2_ardour/edit_note_dialog.cc11
-rw-r--r--gtk2_ardour/edit_note_dialog.h8
-rw-r--r--gtk2_ardour/editor.cc23
-rw-r--r--gtk2_ardour/editor.h35
-rw-r--r--gtk2_ardour/editor_canvas_events.cc8
-rw-r--r--gtk2_ardour/editor_imageframe.cc1113
-rw-r--r--gtk2_ardour/editor_markers.cc1
-rw-r--r--gtk2_ardour/editor_mouse.cc92
-rw-r--r--gtk2_ardour/editor_ops.cc1
-rw-r--r--gtk2_ardour/editor_tempodisplay.cc7
-rw-r--r--gtk2_ardour/export_video_dialog.cc1
-rw-r--r--gtk2_ardour/export_video_infobox.cc1
-rw-r--r--gtk2_ardour/io_selector.cc2
-rw-r--r--gtk2_ardour/midi_port_dialog.cc1
-rw-r--r--gtk2_ardour/midi_region_view.cc2
-rw-r--r--gtk2_ardour/midi_time_axis.cc1
-rw-r--r--gtk2_ardour/mixer_strip.cc1
-rw-r--r--gtk2_ardour/note_base.cc2
-rw-r--r--gtk2_ardour/playlist_selector.cc1
-rw-r--r--gtk2_ardour/plugin_selector.cc1
-rw-r--r--gtk2_ardour/plugin_ui.cc29
-rw-r--r--gtk2_ardour/plugin_ui.h6
-rw-r--r--gtk2_ardour/processor_box.cc12
-rw-r--r--gtk2_ardour/public_editor.h9
-rw-r--r--gtk2_ardour/route_group_dialog.cc1
-rw-r--r--gtk2_ardour/splash.cc24
-rw-r--r--gtk2_ardour/step_editor.cc1
-rw-r--r--gtk2_ardour/system_exec.cc51
-rw-r--r--gtk2_ardour/time_fx_dialog.cc1
-rw-r--r--gtk2_ardour/transcode_video_dialog.cc1
-rw-r--r--gtk2_ardour/video_server_dialog.cc1
-rw-r--r--libs/ardour/ardour/vst_plugin.h1
-rw-r--r--libs/ardour/audio_unit.cc4
-rw-r--r--libs/ardour/linux_vst_support.cc29
-rwxr-xr-xlibs/ardour/lxvst_plugin.cc4
-rw-r--r--libs/ardour/test/data/sessions/rec_enabled/rec_enabled.ardour.bak158
-rw-r--r--libs/ardour/test/data/sessions/rec_enabled/rec_enabled.history.bak2
-rw-r--r--libs/ardour/test/profiling/sessions/1region/1region.ardour.bak148
-rw-r--r--libs/ardour/test/profiling/sessions/1region/1region.history.bak2
-rw-r--r--libs/ardour/test/profiling/sessions/32tracks/32tracks.ardour.bak1716
-rw-r--r--libs/ardour/test/profiling/sessions/32tracks/32tracks.history.bak2
-rw-r--r--libs/evoral/src/Sequence.cpp19
-rw-r--r--libs/pbd/dmalloc.cc102
-rw-r--r--libs/pbd/pbd/fastlog.h8
-rw-r--r--libs/pbd/wscript1
-rw-r--r--libs/surfaces/powermate/README21
-rw-r--r--libs/surfaces/powermate/i18n.h16
-rw-r--r--libs/surfaces/powermate/interface.cc57
-rw-r--r--libs/surfaces/powermate/powermate.cc258
-rw-r--r--libs/surfaces/powermate/powermate.h34
-rw-r--r--libs/surfaces/powermate/wscript37
-rw-r--r--libs/surfaces/wscript4
-rwxr-xr-xtools/osx_packaging/osx_build10
66 files changed, 255 insertions, 4024 deletions
diff --git a/gtk2_ardour/add_route_dialog.cc b/gtk2_ardour/add_route_dialog.cc
index f5f4c62dac..d039f67c0e 100644
--- a/gtk2_ardour/add_route_dialog.cc
+++ b/gtk2_ardour/add_route_dialog.cc
@@ -60,7 +60,6 @@ AddRouteDialog::AddRouteDialog (Session* s)
set_session (s);
set_name ("AddRouteDialog");
- set_position (Gtk::WIN_POS_MOUSE);
set_modal (true);
set_skip_taskbar_hint (true);
set_resizable (false);
diff --git a/gtk2_ardour/add_video_dialog.cc b/gtk2_ardour/add_video_dialog.cc
index 395e16142c..a005b74467 100644
--- a/gtk2_ardour/add_video_dialog.cc
+++ b/gtk2_ardour/add_video_dialog.cc
@@ -68,7 +68,6 @@ AddVideoDialog::AddVideoDialog (Session* s)
{
set_session (s);
set_name ("AddVideoDialog");
- set_position (Gtk::WIN_POS_MOUSE);
set_modal (true);
set_skip_taskbar_hint (true);
set_resizable (true);
diff --git a/gtk2_ardour/ardour_dialog.cc b/gtk2_ardour/ardour_dialog.cc
index c0e1708781..87b48d986a 100644
--- a/gtk2_ardour/ardour_dialog.cc
+++ b/gtk2_ardour/ardour_dialog.cc
@@ -34,12 +34,15 @@ sigc::signal<void> ArdourDialog::CloseAllDialogs;
ArdourDialog::ArdourDialog (string title, bool modal, bool use_seperator)
: Dialog (title, modal, use_seperator)
+ , _splash_pushed (false)
{
init ();
+ set_position (Gtk::WIN_POS_MOUSE);
}
ArdourDialog::ArdourDialog (Gtk::Window& parent, string title, bool modal, bool use_seperator)
: Dialog (title, parent, modal, use_seperator)
+ , _splash_pushed (false)
{
init ();
set_position (Gtk::WIN_POS_CENTER_ON_PARENT);
@@ -47,6 +50,13 @@ ArdourDialog::ArdourDialog (Gtk::Window& parent, string title, bool modal, bool
ArdourDialog::~ArdourDialog ()
{
+ if (_splash_pushed) {
+ Splash* spl = Splash::instance();
+
+ if (spl) {
+ spl->pop_front();
+ }
+ }
}
bool
@@ -73,15 +83,16 @@ ArdourDialog::on_unmap ()
void
ArdourDialog::on_show ()
{
+ Dialog::on_show ();
+
// never allow the splash screen to obscure any dialog
Splash* spl = Splash::instance();
- if (spl) {
+ if (spl && spl->is_visible()) {
spl->pop_back_for (*this);
+ _splash_pushed = true;
}
-
- Dialog::on_show ();
}
void
diff --git a/gtk2_ardour/ardour_dialog.h b/gtk2_ardour/ardour_dialog.h
index 4f53662c23..1008f63000 100644
--- a/gtk2_ardour/ardour_dialog.h
+++ b/gtk2_ardour/ardour_dialog.h
@@ -46,6 +46,7 @@ class ArdourDialog : public Gtk::Dialog, public ARDOUR::SessionHandlePtr
static void close_all_dialogs () { CloseAllDialogs(); }
private:
+ bool _splash_pushed;
void init ();
static sigc::signal<void> CloseAllDialogs;
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index eebd35aefb..c138fb1567 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -933,7 +933,6 @@ ARDOUR_UI::ask_about_saving_session (const vector<string>& actions)
window.get_vbox()->pack_start (dhbox);
window.set_name (_("Prompter"));
- window.set_position (Gtk::WIN_POS_MOUSE);
window.set_modal (true);
window.set_resizable (false);
@@ -1367,8 +1366,6 @@ ARDOUR_UI::open_recent_session ()
while (true) {
- session_selector_window->set_position (WIN_POS_MOUSE);
-
ResponseType r = (ResponseType) session_selector_window->run ();
switch (r) {
@@ -3246,7 +3243,6 @@ ARDOUR_UI::add_route (Gtk::Window* float_window)
if (add_route_dialog == 0) {
add_route_dialog = new AddRouteDialog (_session);
- add_route_dialog->set_position (WIN_POS_MOUSE);
if (float_window) {
add_route_dialog->set_transient_for (*float_window);
}
@@ -3771,12 +3767,14 @@ audio may be played at the wrong sample rate.\n"), desired, PROGRAM_NAME, actual
image->show();
hbox->show();
- switch (dialog.run ()) {
+ switch (dialog.run()) {
case RESPONSE_ACCEPT:
return 0;
default:
- return 1;
+ break;
}
+
+ return 1;
}
diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc
index 66335bb55b..3d3dacd868 100644
--- a/gtk2_ardour/ardour_ui_ed.cc
+++ b/gtk2_ardour/ardour_ui_ed.cc
@@ -142,17 +142,6 @@ ARDOUR_UI::install_actions ()
sigc::mem_fun (*editor, &PublicEditor::export_video));
ActionManager::session_sensitive_actions.push_back (act);
-#ifdef WITH_CMT
-
- std::string anicomp_file_path;
-
- if (PBD::find_file_in_search_path (Glib::getenv("PATH"), "AniComp", anicomp_file_path)) {
- act = ActionManager::register_action (main_actions, X_("aniConnect"), _("Connect"), (sigc::mem_fun (*editor, &PublicEditor::connect_to_image_compositor)));
- ActionManager::session_sensitive_actions.push_back (act);
- }
-
-#endif
-
act = ActionManager::register_action (main_actions, X_("Snapshot"), _("Snapshot..."), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::snapshot_session), false));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::write_sensitive_actions.push_back (act);
diff --git a/gtk2_ardour/ardour_window.cc b/gtk2_ardour/ardour_window.cc
index 616cfbcb66..6330ecd6ac 100644
--- a/gtk2_ardour/ardour_window.cc
+++ b/gtk2_ardour/ardour_window.cc
@@ -35,6 +35,7 @@ ArdourWindow::ArdourWindow (string title)
{
set_title (title);
init ();
+ set_position (Gtk::WIN_POS_MOUSE);
}
ArdourWindow::ArdourWindow (Gtk::Window& parent, string /*title*/)
@@ -75,5 +76,15 @@ void
ArdourWindow::init ()
{
set_border_width (10);
+
+ /* ArdourWindows are not dialogs (they have no "OK" or "Close" button) but
+ they should be considered part of the same "window level" as a dialog. This
+ works on X11 and Quartz, in that:
+
+ (a) utility & dialog windows are considered to be part of the same level
+ (b) they will float above normal windows without any particular effort
+ */
+
+ set_type_hint (Gdk::WINDOW_TYPE_HINT_UTILITY);
}
diff --git a/gtk2_ardour/au_pluginui.h b/gtk2_ardour/au_pluginui.h
index 6f90480457..424d81e901 100644
--- a/gtk2_ardour/au_pluginui.h
+++ b/gtk2_ardour/au_pluginui.h
@@ -76,9 +76,6 @@ class AUPluginUI : public PlugUIBase, public Gtk::VBox
void lower_box_realized ();
void cocoa_view_resized ();
void on_realize ();
- bool on_map_event (GdkEventAny*);
- bool on_focus_in_event (GdkEventFocus*);
- bool on_focus_out_event (GdkEventFocus*);
void forward_key_event (GdkEventKey*);
bool on_window_show (const std::string& /*title*/);
@@ -93,7 +90,7 @@ class AUPluginUI : public PlugUIBase, public Gtk::VBox
int prefwidth;
Gtk::HBox top_box;
- Gtk::EventBox low_box;
+ Gtk::HBox low_box;
Gtk::VBox vpacker;
Gtk::Label automation_mode_label;
Gtk::ComboBoxText automation_mode_selector;
@@ -105,6 +102,7 @@ class AUPluginUI : public PlugUIBase, public Gtk::VBox
NSWindow* cocoa_window;
NSView* au_view;
+ NSRect last_au_frame;
/* Carbon */
diff --git a/gtk2_ardour/au_pluginui.mm b/gtk2_ardour/au_pluginui.mm
index f394e305c8..7bebcee84f 100644
--- a/gtk2_ardour/au_pluginui.mm
+++ b/gtk2_ardour/au_pluginui.mm
@@ -1,5 +1,3 @@
-#include <gtkmm/stock.h>
-
#undef Marker
#define Marker FuckYouAppleAndYourLackOfNameSpaces
@@ -50,6 +48,26 @@ static const gchar* _automation_mode_strings[] = {
0
};
+static void
+dump_view_tree (NSView* view, int depth)
+{
+ NSArray* subviews = [view subviews];
+ unsigned long cnt = [subviews count];
+
+ for (int d = 0; d < depth; d++) {
+ cerr << '\t';
+ }
+ NSRect frame = [view frame];
+ cerr << " view @ " << frame.origin.x << ", " << frame.origin.y
+ << ' ' << frame.size.width << " x " << frame.size.height
+ << endl;
+
+ for (unsigned long i = 0; i < cnt; ++i) {
+ NSView* subview = [subviews objectAtIndex:i];
+ dump_view_tree (subview, depth+1);
+ }
+}
+
@implementation NotificationObject
- (NotificationObject*) initWithPluginUI: (AUPluginUI*) apluginui andCocoaParent: (NSWindow*) cp andTopLevelParent: (NSWindow*) tlp
@@ -170,13 +188,16 @@ AUPluginUI::AUPluginUI (boost::shared_ptr<PluginInsert> insert)
top_box.show ();
low_box.show ();
- _activating_from_app = false;
cocoa_parent = 0;
- _notify = 0;
cocoa_window = 0;
- carbon_window = 0;
+
+#ifdef WITH_CARBBON
+ _activating_from_app = false;
+ _notify = 0;
au_view = 0;
editView = 0;
+ carbon_window = 0;
+#endif
/* prefer cocoa, fall back to cocoa, but use carbon if its there */
@@ -227,6 +248,7 @@ AUPluginUI::~AUPluginUI ()
bool
AUPluginUI::test_carbon_view_support ()
{
+#ifdef WITH_CARBON
bool ret = false;
carbon_descriptor.componentType = kAudioUnitCarbonViewComponentType;
@@ -253,6 +275,9 @@ AUPluginUI::test_carbon_view_support ()
}
return ret;
+#else
+ return false;
+#endif
}
bool
@@ -282,7 +307,7 @@ AUPluginUI::plugin_class_valid (Class pluginClass)
int
AUPluginUI::create_cocoa_view ()
{
- BOOL wasAbleToLoadCustomView = NO;
+ bool wasAbleToLoadCustomView = false;
AudioUnitCocoaViewInfo* cocoaViewInfo = NULL;
UInt32 numberOfClasses = 0;
UInt32 dataSize;
@@ -380,7 +405,7 @@ AUPluginUI::create_cocoa_view ()
free (cocoaViewInfo);
}
- wasAbleToLoadCustomView = YES;
+ wasAbleToLoadCustomView = true;
}
}
@@ -390,14 +415,16 @@ AUPluginUI::create_cocoa_view ()
au->get_au()));
au_view = [[AUGenericView alloc] initWithAudioUnit:*au->get_au()];
DEBUG_TRACE (DEBUG::AudioUnits, string_compose ("view created @ %1\n", au_view));
- [(AUGenericView *)au_view setShowsExpertParameters:YES];
+ [(AUGenericView *)au_view setShowsExpertParameters:1];
}
// Get the initial size of the new AU View's frame
NSRect rect = [au_view frame];
+ prefheight = rect.size.height;
+ prefwidth = rect.size.width;
low_box.set_size_request (rect.size.width, rect.size.height);
-
+
return 0;
}
@@ -406,14 +433,11 @@ AUPluginUI::cocoa_view_resized ()
{
GtkRequisition topsize = top_box.size_request ();
NSWindow* window = get_nswindow ();
- NSSize oldContentSize= [window contentRectForFrameRect:[window frame]].size;
- NSSize newContentSize= [au_view frame].size;
NSRect windowFrame= [window frame];
-
- oldContentSize.height -= topsize.height;
+ NSRect new_frame = [au_view frame];
- float dy = oldContentSize.height - newContentSize.height;
- float dx = oldContentSize.width - newContentSize.width;
+ float dy = last_au_frame.size.height - new_frame.size.height;
+ float dx = last_au_frame.size.width - new_frame.size.width;
windowFrame.origin.y += dy;
windowFrame.origin.x += dx;
@@ -427,12 +451,30 @@ AUPluginUI::cocoa_view_resized ()
NSUInteger old_auto_resize = [au_view autoresizingMask];
[au_view setAutoresizingMask:NSViewNotSizable];
- [window setFrame:windowFrame display:YES];
+ [window setFrame:windowFrame display:1];
+
+ /* Some stupid AU Views change the origin of the original AU View
+ when they are resized (I'm looking at you AUSampler). If the origin
+ has been moved, move it back.
+ */
+
+ if (last_au_frame.origin.x != new_frame.origin.x ||
+ last_au_frame.origin.y != new_frame.origin.y) {
+ new_frame.origin = last_au_frame.origin;
+ [au_view setFrame:new_frame];
+ /* also be sure to redraw the topbox because this can
+ also go wrong.
+ */
+ top_box.queue_draw ();
+ }
+
[au_view setAutoresizingMask:old_auto_resize];
[[NSNotificationCenter defaultCenter] addObserver:_notify
selector:@selector(auViewResized:) name:NSViewFrameDidChangeNotification
object:au_view];
+
+ last_au_frame = new_frame;
}
int
@@ -526,7 +568,6 @@ AUPluginUI::activate ()
#ifdef WITH_CARBON
ActivateWindow (carbon_window, TRUE);
#endif
- // [cocoa_parent makeKeyAndOrderFront:nil];
}
void
@@ -603,7 +644,7 @@ AUPluginUI::parent_cocoa_window ()
return -1;
}
- [win setAutodisplay:YES]; // turn of GTK stuff for this window
+ [win setAutodisplay:1]; // turn of GTK stuff for this window
Gtk::Container* toplevel = get_toplevel();
@@ -620,7 +661,9 @@ AUPluginUI::parent_cocoa_window ()
NSPoint origin = { 0, a.height };
[au_view setFrameOrigin:origin];
- [view addSubview:au_view positioned:NSWindowBelow relativeTo:nil];
+ [view addSubview:au_view positioned:NSWindowBelow relativeTo:nil];
+
+ last_au_frame = [au_view frame];
// watch for size changes of the view
@@ -633,23 +676,6 @@ AUPluginUI::parent_cocoa_window ()
return 0;
}
-static void
-dump_view_tree (NSView* view, int depth)
-{
- NSArray* subviews = [view subviews];
- unsigned long cnt = [subviews count];
-
- for (int d = 0; d < depth; d++) {
- cerr << '\t';
- }
- cerr << " view @ " << view << endl;
-
- for (unsigned long i = 0; i < cnt; ++i) {
- NSView* subview = [subviews objectAtIndex:i];
- dump_view_tree (subview, depth+1);
- }
-}
-
void
AUPluginUI::forward_key_event (GdkEventKey* ev)
{
@@ -681,7 +707,7 @@ AUPluginUI::on_realize ()
NSWindow* win = get_nswindow ();
if (win) {
- [win setShowsResizeIndicator:NO];
+ [win setShowsResizeIndicator:0];
}
}
@@ -695,12 +721,6 @@ AUPluginUI::lower_box_realized ()
}
}
-bool
-AUPluginUI::on_map_event (GdkEventAny*)
-{
- return false;
-}
-
void
AUPluginUI::on_window_hide ()
{
@@ -710,8 +730,14 @@ AUPluginUI::on_window_hide ()
ActivateWindow (carbon_window, FALSE);
}
#endif
-
hide_all ();
+
+#if 0
+ NSArray* wins = [NSApp windows];
+ for (uint32_t i = 0; i < [wins count]; i++) {
+ id win = [wins objectAtIndex:i];
+ }
+#endif
}
bool
@@ -753,19 +779,4 @@ create_au_gui (boost::shared_ptr<PluginInsert> plugin_insert, VBox** box)
return aup;
}
-bool
-AUPluginUI::on_focus_in_event (GdkEventFocus*)
-{
- //cerr << "au plugin focus in\n";
- //Keyboard::magic_widget_grab_focus ();
- return false;
-}
-
-bool
-AUPluginUI::on_focus_out_event (GdkEventFocus*)
-{
- //cerr << "au plugin focus out\n";
- //Keyboard::magic_widget_drop_focus ();
- return false;
-}
diff --git a/gtk2_ardour/audio_region_view.cc b/gtk2_ardour/audio_region_view.cc
index 169c66874b..bfce754b70 100644
--- a/gtk2_ardour/audio_region_view.cc
+++ b/gtk2_ardour/audio_region_view.cc
@@ -1540,7 +1540,6 @@ AudioRegionView::show_region_editor ()
}
editor->present ();
- editor->set_position (Gtk::WIN_POS_MOUSE);
editor->show_all();
}
diff --git a/gtk2_ardour/automation_controller.h b/gtk2_ardour/automation_controller.h
index 88e6d87e01..29635c8488 100644
--- a/gtk2_ardour/automation_controller.h
+++ b/gtk2_ardour/automation_controller.h
@@ -21,6 +21,13 @@
#ifndef __ardour_gtk_automation_controller_h__
#define __ardour_gtk_automation_controller_h__
+#ifdef YES
+#undef YES
+#endif
+#ifdef NO
+#undef NO
+#endif
+
#include <boost/shared_ptr.hpp>
#include <gtkmm.h>
diff --git a/gtk2_ardour/bundle_manager.cc b/gtk2_ardour/bundle_manager.cc
index e9cddbd754..c7754f69cc 100644
--- a/gtk2_ardour/bundle_manager.cc
+++ b/gtk2_ardour/bundle_manager.cc
@@ -115,7 +115,6 @@ BundleEditorMatrix::add_channel (boost::shared_ptr<Bundle> b, DataType t)
if (b == _bundle) {
NameChannelDialog d;
- d.set_position (Gtk::WIN_POS_MOUSE);
if (d.run () != Gtk::RESPONSE_ACCEPT) {
return;
@@ -162,7 +161,6 @@ void
BundleEditorMatrix::rename_channel (BundleChannel bc)
{
NameChannelDialog d (bc.bundle, bc.channel);
- d.set_position (Gtk::WIN_POS_MOUSE);
if (d.run () != Gtk::RESPONSE_ACCEPT) {
return;
diff --git a/gtk2_ardour/crossfade_edit.cc b/gtk2_ardour/crossfade_edit.cc
index 214ba7fb06..c545a02b46 100644
--- a/gtk2_ardour/crossfade_edit.cc
+++ b/gtk2_ardour/crossfade_edit.cc
@@ -105,7 +105,6 @@ CrossfadeEditor::CrossfadeEditor (Session* s, boost::shared_ptr<Crossfade> xf, d
set_wmclass (X_("ardour_automationedit"), PROGRAM_NAME);
set_name ("CrossfadeEditWindow");
- set_position (Gtk::WIN_POS_MOUSE);
add_accel_group (ActionManager::ui_manager->get_accel_group());
diff --git a/gtk2_ardour/edit_note_dialog.cc b/gtk2_ardour/edit_note_dialog.cc
index 2782122dbf..3d72e080ed 100644
--- a/gtk2_ardour/edit_note_dialog.cc
+++ b/gtk2_ardour/edit_note_dialog.cc
@@ -146,16 +146,13 @@ EditNoteDialog::EditNoteDialog (MidiRegionView* rv, set<NoteBase*> n)
add_button (Gtk::Stock::CANCEL, Gtk::RESPONSE_CANCEL);
add_button (Gtk::Stock::APPLY, Gtk::RESPONSE_ACCEPT);
set_default_response (Gtk::RESPONSE_ACCEPT);
-
- show_all ();
}
-int
-EditNoteDialog::run ()
+void
+EditNoteDialog::done (int r)
{
- int const r = Dialog::run ();
if (r != RESPONSE_ACCEPT) {
- return r;
+ return;
}
/* These calls mean that if a value is entered using the keyboard
@@ -227,6 +224,4 @@ EditNoteDialog::run ()
for (set<NoteBase*>::iterator i = _events.begin(); i != _events.end(); ++i) {
(*i)->set_selected ((*i)->selected()); // change color
}
-
- return r;
}
diff --git a/gtk2_ardour/edit_note_dialog.h b/gtk2_ardour/edit_note_dialog.h
index 11fd70a91c..59e53722a0 100644
--- a/gtk2_ardour/edit_note_dialog.h
+++ b/gtk2_ardour/edit_note_dialog.h
@@ -28,11 +28,11 @@ class NoteBase;
class EditNoteDialog : public ArdourDialog
{
public:
- EditNoteDialog (MidiRegionView *, std::set<NoteBase*>);
+ EditNoteDialog (MidiRegionView* rv, set<NoteBase*> n);
- int run ();
-
-private:
+ void done (int);
+
+ private:
MidiRegionView* _region_view;
std::set<NoteBase*> _events;
Gtk::SpinButton _channel;
diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc
index bad7fb06ca..33f23951b8 100644
--- a/gtk2_ardour/editor.cc
+++ b/gtk2_ardour/editor.cc
@@ -119,10 +119,6 @@
#include "i18n.h"
-#ifdef WITH_CMT
-#include "imageframe_socket_handler.h"
-#endif
-
using namespace std;
using namespace ARDOUR;
using namespace PBD;
@@ -270,10 +266,6 @@ Editor::Editor ()
, _toolbar_viewport (*manage (new Gtk::Adjustment (0, 0, 1e10)), *manage (new Gtk::Adjustment (0, 0, 1e10)))
-#ifdef WITH_CMT
- , image_socket_listener(0)
-#endif
-
/* nudge */
, nudge_clock (new AudioClock (X_("nudge"), false, X_("nudge"), true, false, true))
@@ -768,18 +760,6 @@ Editor::Editor ()
Editor::~Editor()
{
-#ifdef WITH_CMT
- if(image_socket_listener) {
- if(image_socket_listener->is_connected())
- {
- image_socket_listener->close_connection() ;
- }
-
- delete image_socket_listener ;
- image_socket_listener = 0 ;
- }
-#endif
-
delete button_bindings;
delete _routes;
delete _route_groups;
@@ -3333,8 +3313,6 @@ Editor::duplicate_range (bool with_dialog)
win.add_button (_("Duplicate"), RESPONSE_ACCEPT);
win.set_default_response (RESPONSE_ACCEPT);
- win.set_position (WIN_POS_MOUSE);
-
spinner.grab_focus ();
switch (win.run ()) {
@@ -5417,7 +5395,6 @@ Editor::change_region_layering_order (bool from_context_menu)
if (layering_order_editor == 0) {
layering_order_editor = new RegionLayeringOrderEditor (*this);
- layering_order_editor->set_position (WIN_POS_MOUSE);
}
layering_order_editor->set_context (clicked_routeview->name(), _session, clicked_routeview, pl, position);
diff --git a/gtk2_ardour/editor.h b/gtk2_ardour/editor.h
index f9bbd6ef1a..0647b17089 100644
--- a/gtk2_ardour/editor.h
+++ b/gtk2_ardour/editor.h
@@ -97,14 +97,25 @@ class BundleManager;
class ButtonJoiner;
class ControlPoint;
class DragManager;
+class EditNoteDialog;
+class EditorCursor;
+class EditorGroupTabs;
+class EditorLocations;
+class EditorRegions;
+class EditorRoutes;
+class EditorRouteGroups;
+class EditorSnapshots;
+class EditorSummary;
class GroupedButtons;
class GUIObjectState;
class Marker;
class MidiRegionView;
class MixerStrip;
+class MouseCursors;
class NoteBase;
class PlaylistSelector;
class PluginSelector;
+class ProgressReporter;
class RhythmFerret;
class Selection;
class SoundFileOmega;
@@ -113,29 +124,9 @@ class TempoLines;
class TimeAxisView;
class TimeFXDialog;
class TimeSelection;
-class EditorGroupTabs;
-class EditorRoutes;
-class EditorRouteGroups;
-class EditorRegions;
-class EditorLocations;
-class EditorSnapshots;
-class EditorSummary;
class RegionLayeringOrderEditor;
-class ProgressReporter;
-class EditorCursor;
-class MouseCursors;
class VerboseCursor;
-/* <CMT Additions> */
-class ImageFrameView;
-class ImageFrameTimeAxisView;
-class ImageFrameTimeAxis;
-class MarkerTimeAxis ;
-class MarkerView ;
-class ImageFrameSocketHandler ;
-class TimeAxisViewItem ;
-/* </CMT Additions> */
-
class Editor : public PublicEditor, public PBD::ScopedConnectionList, public ARDOUR::SessionHandlePtr, public Gtkmm2ext::VisibilityTracker
{
public:
@@ -1506,7 +1497,7 @@ class Editor : public PublicEditor, public PBD::ScopedConnectionList, public ARD
void edit_tempo_marker (ArdourCanvas::Item*);
void edit_meter_marker (ArdourCanvas::Item*);
void edit_control_point (ArdourCanvas::Item*);
- void edit_notes (std::set<NoteBase*> const & s);
+ void edit_notes (TimeAxisViewItem&);
void marker_menu_edit ();
void marker_menu_remove ();
@@ -2110,7 +2101,7 @@ class Editor : public PublicEditor, public PBD::ScopedConnectionList, public ARD
bool _following_mixer_selection;
int time_fx (ARDOUR::RegionList&, float val, bool pitching);
-
+ void note_edit_done (int, EditNoteDialog*);
void toggle_sound_midi_notes ();
/** Flag for a bit of a hack wrt control point selection; see set_selected_control_point_from_click */
diff --git a/gtk2_ardour/editor_canvas_events.cc b/gtk2_ardour/editor_canvas_events.cc
index abc6ea96ad..4acd04a318 100644
--- a/gtk2_ardour/editor_canvas_events.cc
+++ b/gtk2_ardour/editor_canvas_events.cc
@@ -79,10 +79,10 @@ Editor::track_canvas_scroll (GdkEventScroll* ev)
temporal_zoom_step (false);
zoom_focus = temp_focus;
return true;
- } else if (Keyboard::modifier_state_equals (ev->state, Keyboard::SecondaryModifier)) {
+ } else if (Keyboard::modifier_state_equals (ev->state, Keyboard::TertiaryModifier)) {
direction = GDK_SCROLL_LEFT;
goto retry;
- } else if (Keyboard::modifier_state_equals (ev->state, Keyboard::TertiaryModifier)) {
+ } else if (Keyboard::modifier_state_equals (ev->state, Keyboard::SecondaryModifier)) {
if (!current_stepping_trackview) {
step_timeout = Glib::signal_timeout().connect (sigc::mem_fun(*this, &Editor::track_height_step_timeout), 500);
std::pair<TimeAxisView*, int> const p = trackview_by_y_position (event_coords.y);
@@ -108,10 +108,10 @@ Editor::track_canvas_scroll (GdkEventScroll* ev)
temporal_zoom_step (true);
zoom_focus = temp_focus;
return true;
- } else if (Keyboard::modifier_state_equals (ev->state, Keyboard::SecondaryModifier)) {
+ } else if (Keyboard::modifier_state_equals (ev->state, Keyboard::TertiaryModifier)) {
direction = GDK_SCROLL_RIGHT;
goto retry;
- } else if (Keyboard::modifier_state_equals (ev->state, Keyboard::TertiaryModifier)) {
+ } else if (Keyboard::modifier_state_equals (ev->state, Keyboard::SecondaryModifier)) {
if (!current_stepping_trackview) {
step_timeout = Glib::signal_timeout().connect (sigc::mem_fun(*this, &Editor::track_height_step_timeout), 500);
std::pair<TimeAxisView*, int> const p = trackview_by_y_position (event_coords.y);
diff --git a/gtk2_ardour/editor_imageframe.cc b/gtk2_ardour/editor_imageframe.cc
deleted file mode 100644
index e36250f8b5..0000000000
--- a/gtk2_ardour/editor_imageframe.cc
+++ /dev/null
@@ -1,1113 +0,0 @@
-/*
- Copyright (C) 2000-2003 Paul Davis
- Written by Colin Law, CMT, Glasgow
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-*/
-
-#include "imageframe_view.h"
-#include "imageframe_time_axis.h"
-#include "imageframe_time_axis_view.h"
-#include "imageframe_time_axis_group.h"
-#include "marker_time_axis_view.h"
-#include "marker_time_axis.h"
-#include "marker_view.h"
-#include "editor.h"
-#include "i18n.h"
-
-#include <gtkmm2ext/gtk_ui.h>
-#include "pbd/error.h"
-
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <unistd.h>
-#include <arpa/inet.h>
-
-#include "imageframe_socket_handler.h"
-#include "ardour_image_compositor_socket.h"
-#include "public_editor.h"
-#include "gui_thread.h"
-
-using namespace Gtk;
-using namespace PBD;
-using namespace std;
-
-TimeAxisView*
-Editor::get_named_time_axis(const string & name)
-{
- TimeAxisView* tav = 0 ;
-
- for (TrackViewList::const_iterator i = track_views.begin(); i != track_views.end(); ++i)
- {
- if (((TimeAxisView*)*i)->name() == name)
- {
- tav = ((TimeAxisView*)*i) ;
- break ;
- }
- }
- return(tav) ;
-}
-
-/* <CMT Additions file="editor.cc"> */
-
-void
-Editor::add_imageframe_time_axis(const string & track_name, void* src)
-{
- // check for duplicate name
- if(get_named_time_axis(track_name))
- {
- warning << "Repeated time axis name" << std::endl ;
- }
- else
- {
- Gtkmm2ext::UI::instance()->call_slot (boost::bind (&Editor::handle_new_imageframe_time_axis_view, this,track_name, src));
- }
-}
-
-void
-Editor::connect_to_image_compositor()
-{
- if(image_socket_listener == 0)
- {
- image_socket_listener = ImageFrameSocketHandler::create_instance(*this) ;
- }
-
- if(image_socket_listener->is_connected() == true)
- {
- return ;
- }
-
- // XXX should really put this somewhere safe
- const char * host_ip = "127.0.0.1" ;
-
- bool retcode = image_socket_listener->connect(host_ip, ardourvis::DEFAULT_PORT) ;
-
- if(retcode == false)
- {
- // XXX need to get some return status here
- warning << "Image Compositor Connection attempt failed" << std::endl ;
- return ;
- }
-
- // add the socket to the gui loop, and keep the retuned tag value of the input
- gint tag = gdk_input_add(image_socket_listener->get_socket_descriptor(), GDK_INPUT_READ,ImageFrameSocketHandler::image_socket_callback,image_socket_listener) ;
- image_socket_listener->set_gdk_input_tag(tag) ;
-}
-
-void
-Editor::scroll_timeaxis_to_imageframe_item(const TimeAxisViewItem* item)
-{
- // GTK2FIX
- //framepos_t offset = static_cast<framepos_t>(frames_per_unit * (edit_hscroll_slider_width/2)) ;
- framepos_t offset = 0;
-
- framepos_t x_pos = 0 ;
-
- if (item->get_position() < offset) {
- x_pos = 0 ;
- } else {
- x_pos = item->get_position() - offset + (item->get_duration() / 2);
- }
-
- reset_x_origin (x_pos);
-}
-
-void
-Editor::add_imageframe_marker_time_axis(const string & track_name, TimeAxisView* marked_track, void* src)
-{
- // Can we only sigc::bind 2 data Items?
- // @todo we really want to sigc::bind the src attribute too, for the moment tracks can only be added remotely,
- // so this is not too much of an issue, however will need to be looked at again
- Gtkmm2ext::UI::instance()->call_slot (boost::bind (&Editor::handle_new_imageframe_marker_time_axis_view, this, track_name, marked_track));
-}
-
-void
-Editor::popup_imageframe_edit_menu(int button, int32_t time, ArdourCanvas::Item* ifv, bool with_item)
-{
- ImageFrameTimeAxis* ifta = dynamic_cast<ImageFrameTimeAxis*>(clicked_axisview) ;
-
- if(ifta)
- {
- ImageFrameTimeAxisGroup* iftag = ifta->get_view()->get_selected_imageframe_group() ;
-
- if(iftag)
- {
- ImageFrameView* selected_ifv = ifta->get_view()->get_selected_imageframe_view() ;
- ifta->popup_imageframe_edit_menu(button, time, selected_ifv, with_item) ;
- }
- }
-}
-
-void
-Editor::popup_marker_time_axis_edit_menu(int button, int32_t time, ArdourCanvas::Item* ifv, bool with_item)
-{
- MarkerTimeAxis* mta = dynamic_cast<MarkerTimeAxis*>(clicked_axisview) ;
-
- if(mta)
- {
- MarkerView* selected_mv = mta->get_view()->get_selected_time_axis_item() ;
- if(selected_mv)
- {
- mta->popup_marker_time_axis_edit_menu(button,time, selected_mv, with_item) ;
- }
- }
-}
-/* </CMT Additions file="editor.cc"> */
-
-/* <CMT Additions file="editor_canvas_events.cc"> */
-bool
-Editor::canvas_imageframe_item_view_event (GdkEvent *event, ArdourCanvas::Item* item, ImageFrameView *ifv)
-{
- gint ret = FALSE ;
- ImageFrameTimeAxisGroup* iftag = 0 ;
-
- switch (event->type)
- {
- case GDK_BUTTON_PRESS:
- case GDK_2BUTTON_PRESS:
- case GDK_3BUTTON_PRESS:
- clicked_axisview = &ifv->get_time_axis_view();
- iftag = ifv->get_time_axis_group() ;
- dynamic_cast<ImageFrameTimeAxis*>(clicked_axisview)->get_view()->set_selected_imageframe_view(iftag, ifv);
- ret = button_press_handler (item, event, ImageFrameItem) ;
- break ;
- case GDK_BUTTON_RELEASE:
- ret = button_release_handler (item, event, ImageFrameItem) ;
- break ;
- case GDK_MOTION_NOTIFY:
- ret = motion_handler (item, event, ImageFrameItem) ;
- break ;
- default:
- break ;
- }
- return(ret) ;
-}
-
-bool
-Editor::canvas_imageframe_start_handle_event (GdkEvent *event, ArdourCanvas::Item* item, ImageFrameView *ifv)
-{
- gint ret = FALSE ;
- ImageFrameTimeAxisGroup* iftag = 0 ;
-
- switch (event->type)
- {
- case GDK_BUTTON_PRESS:
- case GDK_2BUTTON_PRESS:
- case GDK_3BUTTON_PRESS:
- clicked_axisview = &ifv->get_time_axis_view() ;
- iftag = ifv->get_time_axis_group() ;
- dynamic_cast<ImageFrameTimeAxis*>(clicked_axisview)->get_view()->set_selected_imageframe_view(iftag, ifv);
-
- ret = button_press_handler (item, event, ImageFrameHandleStartItem) ;
- break ;
- case GDK_BUTTON_RELEASE:
- ret = button_release_handler (item, event, ImageFrameHandleStartItem) ;
- break;
- case GDK_MOTION_NOTIFY:
- ret = motion_handler (item, event, ImageFrameHandleStartItem) ;
- break ;
- case GDK_ENTER_NOTIFY:
- ret = enter_handler (item, event, ImageFrameHandleStartItem) ;
- break ;
- case GDK_LEAVE_NOTIFY:
- ret = leave_handler (item, event, ImageFrameHandleStartItem) ;
- break ;
- default:
- break ;
- }
- return(ret) ;
-}
-
-bool
-Editor::canvas_imageframe_end_handle_event (GdkEvent *event, ArdourCanvas::Item* item, ImageFrameView *ifv)
-{
- gint ret = FALSE ;
- ImageFrameTimeAxisGroup* iftag = 0 ;
-
- switch (event->type)
- {
- case GDK_BUTTON_PRESS:
- case GDK_2BUTTON_PRESS:
- case GDK_3BUTTON_PRESS:
- clicked_axisview = &ifv->get_time_axis_view() ;
- iftag = ifv->get_time_axis_group() ;
- dynamic_cast<ImageFrameTimeAxis*>(clicked_axisview)->get_view()->set_selected_imageframe_view(iftag, ifv);
-
- ret = button_press_handler (item, event, ImageFrameHandleEndItem) ;
- break ;
- case GDK_BUTTON_RELEASE:
- ret = button_release_handler (item, event, ImageFrameHandleEndItem) ;
- break ;
- case GDK_MOTION_NOTIFY:
- ret = motion_handler (item, event, ImageFrameHandleEndItem) ;
- break ;
- case GDK_ENTER_NOTIFY:
- ret = enter_handler (item, event, ImageFrameHandleEndItem) ;
- break ;
- case GDK_LEAVE_NOTIFY:
- ret = leave_handler (item, event, ImageFrameHandleEndItem);
- break ;
- default:
- break ;
- }
- return(ret) ;
-}
-
-bool
-Editor::canvas_imageframe_view_event (GdkEvent* event, ArdourCanvas::Item* item, ImageFrameTimeAxis* ifta)
-{
- gint ret = FALSE ;
- switch (event->type)
- {
- case GDK_BUTTON_PRESS:
- case GDK_2BUTTON_PRESS:
- case GDK_3BUTTON_PRESS:
- clicked_axisview = ifta ;
- ret = button_press_handler (item, event, ImageFrameTimeAxisItem) ;
- break ;
- case GDK_BUTTON_RELEASE:
- ret = button_release_handler (item, event, ImageFrameTimeAxisItem) ;
- break ;
- case GDK_MOTION_NOTIFY:
- break ;
- default:
- break ;
- }
- return(ret) ;
-}
-
-bool
-Editor::canvas_marker_time_axis_view_event (GdkEvent* event, ArdourCanvas::Item* item, MarkerTimeAxis* mta)
-{
- gint ret = FALSE ;
- switch (event->type)
- {
- case GDK_BUTTON_PRESS:
- case GDK_2BUTTON_PRESS:
- case GDK_3BUTTON_PRESS:
- clicked_axisview = mta ;
- ret = button_press_handler(item, event, MarkerTimeAxisItem) ;
- break ;
- case GDK_BUTTON_RELEASE:
- ret = button_release_handler(item, event, MarkerTimeAxisItem) ;
- break ;
- case GDK_MOTION_NOTIFY:
- default:
- break ;
- }
- return(ret) ;
-}
-
-
-bool
-Editor::canvas_markerview_item_view_event (GdkEvent* event, ArdourCanvas::Item* item, MarkerView* mta)
-{
- gint ret = FALSE ;
- switch (event->type)
- {
- case GDK_BUTTON_PRESS:
- case GDK_2BUTTON_PRESS:
- case GDK_3BUTTON_PRESS:
- clicked_axisview = &mta->get_time_axis_view() ;
- dynamic_cast<MarkerTimeAxis*>(clicked_axisview)->get_view()->set_selected_time_axis_item(mta);
- ret = button_press_handler(item, event, MarkerViewItem) ;
- break ;
- case GDK_BUTTON_RELEASE:
- ret = button_release_handler(item, event, MarkerViewItem) ;
- break ;
- case GDK_MOTION_NOTIFY:
- ret = motion_handler(item, event, MarkerViewItem) ;
- break ;
- default:
- break ;
- }
- return(ret) ;
-}
-
-bool
-Editor::canvas_markerview_start_handle_event (GdkEvent* event, ArdourCanvas::Item* item, MarkerView* mta)
-{
- gint ret = FALSE ;
- switch (event->type)
- {
- case GDK_BUTTON_PRESS:
- case GDK_2BUTTON_PRESS:
- case GDK_3BUTTON_PRESS:
- clicked_axisview = &mta->get_time_axis_view() ;
- dynamic_cast<MarkerTimeAxis*>(clicked_axisview)->get_view()->set_selected_time_axis_item(mta) ;
- ret = button_press_handler(item, event, MarkerViewHandleStartItem) ;
- break ;
- case GDK_BUTTON_RELEASE:
- ret = button_release_handler(item, event, MarkerViewHandleStartItem) ;
- break ;
- case GDK_MOTION_NOTIFY:
- ret = motion_handler(item, event, MarkerViewHandleStartItem) ;
- break ;
- case GDK_ENTER_NOTIFY:
- ret = enter_handler(item, event, MarkerViewHandleStartItem) ;
- break ;
- case GDK_LEAVE_NOTIFY:
- ret = leave_handler(item, event, MarkerViewHandleStartItem) ;
- break ;
- default:
- break ;
- }
- return(ret) ;
-}
-
-bool
-Editor::canvas_markerview_end_handle_event (GdkEvent* event, ArdourCanvas::Item* item, MarkerView* mta)
-{
- gint ret = FALSE ;
- switch (event->type)
- {
- case GDK_BUTTON_PRESS:
- case GDK_2BUTTON_PRESS:
- case GDK_3BUTTON_PRESS:
- clicked_axisview = &mta->get_time_axis_view() ;
- dynamic_cast<MarkerTimeAxis*>(clicked_axisview)->get_view()->set_selected_time_axis_item(mta) ;
- ret = button_press_handler(item, event, MarkerViewHandleEndItem) ;
- break ;
- case GDK_BUTTON_RELEASE:
- ret = button_release_handler(item, event, MarkerViewHandleEndItem) ;
- break ;
- case GDK_MOTION_NOTIFY:
- ret = motion_handler(item, event, MarkerViewHandleEndItem) ;
- break ;
- case GDK_ENTER_NOTIFY:
- ret = enter_handler(item, event, MarkerViewHandleEndItem) ;
- break ;
- case GDK_LEAVE_NOTIFY:
- ret = leave_handler(item, event, MarkerViewHandleEndItem) ;
- break ;
- default:
- break ;
- }
- return(ret) ;
-}
-
-
-/* </CMT Additions file="editor_canvas_events.cc"> */
-
-
-/*
- ---------------------------------------------------------------------------------------------------
- ---------------------------------------------------------------------------------------------------
- ---------------------------------------------------------------------------------------------------
-*/
-
-
-
-/* <CMT Additions file="editor_mouse.cc"> */
-
-void
-Editor::start_imageframe_grab(ArdourCanvas::Item* item, GdkEvent* event)
-{
- ImageFrameView* ifv = ((ImageFrameTimeAxis*)clicked_axisview)->get_view()->get_selected_imageframe_view() ;
- drag_info.copy = false ;
- drag_info.item = item ;
- drag_info.data = ifv ;
- drag_info.motion_callback = &Editor::imageframe_drag_motion_callback;
- drag_info.finished_callback = &Editor::timeaxis_item_drag_finished_callback;
- drag_info.last_frame_position = ifv->get_position() ;
-
- drag_info.source_trackview = &ifv->get_time_axis_view() ;
- drag_info.dest_trackview = drag_info.source_trackview;
-
- /* this is subtle. raising the regionview itself won't help,
- because raise_to_top() just puts the item on the top of
- its parent's stack. so, we need to put the trackview canvas_display group
- on the top, since its parent is the whole canvas.
-
- however, this hides the measure bars within that particular trackview,
- so move them to the top afterwards.
- */
-
- drag_info.item->raise_to_top();
- drag_info.source_trackview->canvas_display->raise_to_top();
- //time_line_group->raise_to_top();
- cursor_group->raise_to_top ();
-
- start_grab(event) ;
-
- drag_info.pointer_frame_offset = pixel_to_sample(drag_info.grab_x) - drag_info.last_frame_position;
-}
-
-
-void
-Editor::start_markerview_grab(ArdourCanvas::Item* item, GdkEvent* event)
-{
- MarkerView* mv = ((MarkerTimeAxis*)clicked_axisview)->get_view()->get_selected_time_axis_item() ;
- drag_info.copy = false ;
- drag_info.item = item ;
- drag_info.data = mv ;
- drag_info.motion_callback = &Editor::markerview_drag_motion_callback;
- drag_info.finished_callback = &Editor::timeaxis_item_drag_finished_callback;
- drag_info.last_frame_position = mv->get_position() ;
-
- drag_info.source_trackview = &mv->get_time_axis_view() ;
- drag_info.dest_trackview = drag_info.source_trackview;
-
- /* this is subtle. raising the regionview itself won't help,
- because raise_to_top() just puts the item on the top of
- its parent's stack. so, we need to put the trackview canvas_display group
- on the top, since its parent is the whole canvas.
-
- however, this hides the measure bars within that particular trackview,
- so move them to the top afterwards.
- */
-
- drag_info.item->raise_to_top();
- drag_info.source_trackview->canvas_display->raise_to_top();
- //time_line_group->raise_to_top();
- cursor_group->raise_to_top ();
-
- start_grab(event) ;
-
- drag_info.pointer_frame_offset = pixel_to_sample(drag_info.grab_x) - drag_info.last_frame_position ;
-}
-
-
-void
-Editor::markerview_drag_motion_callback(ArdourCanvas::Item*, GdkEvent* event)
-{
- double cx, cy ;
-
- MarkerView* mv = reinterpret_cast<MarkerView*>(drag_info.data) ;
- framepos_t pending_region_position ;
- framepos_t pointer_frame ;
-
- pointer_frame = canvas_event_frame(event, &cx, &cy) ;
-
- snap_to(pointer_frame) ;
-
- if (pointer_frame > (framepos_t) drag_info.pointer_frame_offset)
- {
- pending_region_position = pointer_frame - drag_info.pointer_frame_offset ;
- snap_to(pending_region_position) ;
-
- // we dont allow marker items to extend beyond, or in front of the marked items so
- // cap the value to the marked items position and duration
- if((pending_region_position + mv->get_duration()) >= ((mv->get_marked_item()->get_position()) + (mv->get_marked_item()->get_duration())))
- {
- pending_region_position = (mv->get_marked_item()->get_position() + mv->get_marked_item()->get_duration()) - (mv->get_duration()) ;
- }
- else if(pending_region_position <= mv->get_marked_item()->get_position())
- {
- pending_region_position = mv->get_marked_item()->get_position() ;
- }
- }
- else
- {
- pending_region_position = mv->get_marked_item()->get_position() ;
- }
-
- drag_info.last_frame_position = pending_region_position ;
-
- // we treat this as a special case, usually we want to send the identitiy of the caller
- // but in this case, that would trigger our socket handler to handle the event, sending
- // notification to the image compositor. This would be fine, except that we have not
- // finished the drag, we therefore do not want to sent notification until we have
- // completed the drag, only then do we want the image compositor notofied.
- // We therefore set the caller identity to the special case of 0
- mv->set_position(pending_region_position, 0) ;
-
- show_verbose_time_cursor(pending_region_position) ;
-}
-
-void
-Editor::imageframe_drag_motion_callback(ArdourCanvas::Item*, GdkEvent* event)
-{
- double cx, cy ;
-
- ImageFrameView* ifv = reinterpret_cast<ImageFrameView*>(drag_info.data) ;
-
- framepos_t pending_region_position;
- framepos_t pointer_frame;
-
- pointer_frame = canvas_event_frame(event, &cx, &cy) ;
-
- snap_to(pointer_frame) ;
-
- if (pointer_frame > (framepos_t) drag_info.pointer_frame_offset)
- {
- pending_region_position = pointer_frame - drag_info.pointer_frame_offset ;
- snap_to(pending_region_position) ;
- }
- else
- {
- pending_region_position = 0 ;
- }
-
- drag_info.grab_x = cx;
- //drag_info.last_frame_position = pending_region_position ;
- drag_info.current_pointer_frame = pending_region_position ;
-
- // we treat this as a special case, usually we want to send the identitiy of the caller
- // but in this case, that would trigger our socket handler to handle the event, sending
- // notification to the image compositor. This would be fine, except that we have not
- // finished the drag, we therefore do not want to sent notification until we have
- // completed the drag, only then do we want the image compositor notofied.
- // We therefore set the caller identity to the special case of 0
- ifv->set_position(pending_region_position, 0) ;
-
- show_verbose_time_cursor(pending_region_position) ;
-}
-
-void
-Editor::timeaxis_item_drag_finished_callback(ArdourCanvas::Item*, GdkEvent* event)
-{
- framepos_t where ;
- TimeAxisViewItem* tavi = reinterpret_cast<TimeAxisViewItem*>(drag_info.data) ;
-
- bool item_x_movement = (drag_info.last_frame_position != tavi->get_position()) ;
-
- hide_verbose_canvas_cursor() ;
-
- /* no x or y movement either means the regionview hasn't been moved, or has been moved
- but is back in it's original position/trackview.*/
-
- if(!item_x_movement && event && event->type == GDK_BUTTON_RELEASE)
- {
- /* No motion: either set the current region, or align the clicked region
- with the current one.
- */
- return;
- }
-
- if(item_x_movement)
- {
- /* base the new region position on the current position of the regionview.*/
- where = drag_info.current_pointer_frame ;
-
- // final call to set position after the motion to tell interested parties of the new position
- tavi->set_position(where, this) ;
- }
- else
- {
- //where = tavi->get_position() ;
- }
-
-/*
- //locate so user can audition the edit
- if ( !session->transport_rolling() && Config->get_always_play_range()) {
- locate_with_edit_preroll ( arv->region()->position() );
- }
-*/
-}
-
-
-void
-Editor::imageframe_start_handle_op(ArdourCanvas::Item* item, GdkEvent* event)
-{
- // get the selected item from the parent time axis
- ImageFrameTimeAxis* ifta = dynamic_cast<ImageFrameTimeAxis*>(clicked_axisview) ;
- if(ifta)
- {
- ImageFrameView* ifv = ifta->get_view()->get_selected_imageframe_view() ;
-
- if (ifv == 0) {
- fatal << _("programming error: no ImageFrameView selected") << endmsg;
- /*NOTREACHED*/
- return ;
- }
-
- drag_info.item = ifv->get_canvas_frame() ;
- drag_info.data = ifv;
- drag_info.grab_x = event->motion.x;
- drag_info.cumulative_x_drag = 0;
- drag_info.motion_callback = &Editor::imageframe_start_handle_trim_motion ;
- drag_info.finished_callback = &Editor::imageframe_start_handle_end_trim ;
-
- start_grab(event) ;
-
- show_verbose_time_cursor(ifv->get_position(), 10) ;
- }
-}
-
-void
-Editor::imageframe_end_handle_op(ArdourCanvas::Item* item, GdkEvent* event)
-{
- // get the selected item from the parent time axis
- ImageFrameTimeAxis* ifta = dynamic_cast<ImageFrameTimeAxis*>(clicked_axisview) ;
-
- if(ifta)
- {
- ImageFrameView* ifv = ifta->get_view()->get_selected_imageframe_view() ;
-
- if (ifv == 0)
- {
- fatal << _("programming error: no ImageFrameView selected") << endmsg ;
- /*NOTREACHED*/
- return ;
- }
-
- drag_info.item = ifv->get_canvas_frame() ;
- drag_info.data = ifv ;
- drag_info.grab_x = event->motion.x ;
- drag_info.cumulative_x_drag = 0 ;
- drag_info.motion_callback = &Editor::imageframe_end_handle_trim_motion ;
- drag_info.finished_callback = &Editor::imageframe_end_handle_end_trim ;
-
- start_grab(event, trimmer_cursor) ;
-
- show_verbose_time_cursor(ifv->get_position() + ifv->get_duration(), 10) ;
- }
-}
-
-void
-Editor::imageframe_start_handle_trim_motion(ArdourCanvas::Item* item, GdkEvent* event)
-{
- ImageFrameView* ifv = reinterpret_cast<ImageFrameView*> (drag_info.data) ;
-
- framepos_t start = 0 ;
- framepos_t end = 0 ;
- framepos_t pointer_frame = canvas_event_frame(event) ;
-
- // chekc th eposition of the item is not locked
- if(!ifv->get_position_locked()) {
- snap_to(pointer_frame) ;
-
- if(pointer_frame != drag_info.last_pointer_frame) {
- start = ifv->get_position() ;
- end = ifv->get_position() + ifv->get_duration() ;
-
- if (pointer_frame > end) {
- start = end ;
- } else {
- start = pointer_frame ;
- }
-
- // are we getting bigger or smaller?
- framepos_t new_dur_val = end - start ;
-
- // start handle, so a smaller pointer frame increases our component size
- if(pointer_frame <= drag_info.grab_frame)
- {
- if(ifv->get_max_duration_active() && (new_dur_val > ifv->get_max_duration()))
- {
- new_dur_val = ifv->get_max_duration() ;
- start = end - new_dur_val ;
- }
- else
- {
- // current values are ok
- }
- }
- else
- {
- if(ifv->get_min_duration_active() && (new_dur_val < ifv->get_min_duration()))
- {
- new_dur_val = ifv->get_min_duration() ;
- start = end - new_dur_val ;
- }
- else
- {
- // current values are ok
- }
- }
-
- drag_info.last_pointer_frame = pointer_frame ;
-
- /* re-calculatethe duration and position of the imageframeview */
- drag_info.cumulative_x_drag = new_dur_val ;
-
- // we treat this as a special case, usually we want to send the identitiy of the caller
- // but in this case, that would trigger our socket handler to handle the event, sending
- // notification to the image compositor. This would be fine, except that we have not
- // finished the drag, we therefore do not want to sent notification until we have
- // completed the drag, only then do we want the image compositor notofied.
- // We therefore set the caller identity to the special case of 0
- ifv->set_duration(new_dur_val, 0) ;
- ifv->set_position(start, 0) ;
- }
- }
-
- show_verbose_time_cursor(start, 10) ;
-}
-
-void
-Editor::imageframe_start_handle_end_trim(ArdourCanvas::Item* item, GdkEvent* event)
-{
- ImageFrameView* ifv = reinterpret_cast<ImageFrameView *> (drag_info.data) ;
-
- if (drag_info.cumulative_x_drag == 0)
- {
- /* just a click */
- }
- else
- {
- framepos_t temp = ifv->get_position() + ifv->get_duration() ;
-
- ifv->set_position((framepos_t) (temp - drag_info.cumulative_x_drag), this) ;
- ifv->set_duration((framepos_t) drag_info.cumulative_x_drag, this) ;
- }
-}
-
-void
-Editor::imageframe_end_handle_trim_motion(ArdourCanvas::Item* item, GdkEvent* event)
-{
- ImageFrameView* ifv = reinterpret_cast<ImageFrameView *> (drag_info.data) ;
-
- framepos_t start = 0 ;
- framepos_t end = 0 ;
- framepos_t pointer_frame = canvas_event_frame(event) ;
- framepos_t new_dur_val = 0 ;
-
- snap_to(pointer_frame) ;
-
- if (pointer_frame != drag_info.last_pointer_frame)
- {
- start = ifv->get_position() ;
- end = ifv->get_position() + ifv->get_duration() ;
- if (pointer_frame < start)
- {
- end = start ;
- }
- else
- {
- end = pointer_frame ;
- }
-
- new_dur_val = end - start ;
-
- // are we getting bigger or smaller?
- if(pointer_frame >= drag_info.last_pointer_frame)
- {
- if(ifv->get_max_duration_active() && (new_dur_val > ifv->get_max_duration()))
- {
- new_dur_val = ifv->get_max_duration() ;
- }
- }
- else
- {
- if(ifv->get_min_duration_active() && (new_dur_val < ifv->get_min_duration()))
- {
- new_dur_val = ifv->get_min_duration() ;
- }
- }
-
- drag_info.last_pointer_frame = pointer_frame ;
- drag_info.cumulative_x_drag = new_dur_val ;
-
- // we treat this as a special case, usually we want to send the identitiy of the caller
- // but in this case, that would trigger our socket handler to handle the event, sending
- // notification to the image compositor. This would be fine, except that we have not
- // finished the drag, we therefore do not want to sent notification until we have
- // completed the drag, only then do we want the image compositor notofied.
- // We therefore set the caller identity to the special case of 0
- ifv->set_duration(new_dur_val, 0) ;
- }
-
- show_verbose_time_cursor(new_dur_val, 10) ;
-}
-
-
-void
-Editor::imageframe_end_handle_end_trim (ArdourCanvas::Item* item, GdkEvent* event)
-{
- ImageFrameView* ifv = reinterpret_cast<ImageFrameView *> (drag_info.data) ;
-
- if (drag_info.cumulative_x_drag == 0)
- {
- /* just a click */
- }
- else
- {
- framepos_t new_duration = (framepos_t)drag_info.cumulative_x_drag ;
- if((new_duration <= ifv->get_max_duration()) && (new_duration >= ifv->get_min_duration()))
- {
- ifv->set_duration(new_duration, this) ;
- }
- }
-}
-
-
-void
-Editor::markerview_item_start_handle_op(ArdourCanvas::Item* item, GdkEvent* event)
-{
- MarkerView* mv = reinterpret_cast<MarkerTimeAxis*>(clicked_axisview)->get_view()->get_selected_time_axis_item() ;
-
- if (mv == 0)
- {
- fatal << _("programming error: no MarkerView selected") << endmsg ;
- /*NOTREACHED*/
- return ;
- }
-
- drag_info.item = mv->get_canvas_frame() ;
- drag_info.data = mv;
- drag_info.grab_x = event->motion.x;
-
- drag_info.cumulative_x_drag = 0 ;
- drag_info.motion_callback = &Editor::markerview_start_handle_trim_motion ;
- drag_info.finished_callback = &Editor::markerview_start_handle_end_trim ;
-
- start_grab(event, trimmer_cursor) ;
-}
-
-void
-Editor::markerview_item_end_handle_op(ArdourCanvas::Item* item, GdkEvent* event)
-{
- MarkerView* mv = reinterpret_cast<MarkerTimeAxis*>(clicked_axisview)->get_view()->get_selected_time_axis_item() ;
- if (mv == 0)
- {
- fatal << _("programming error: no MarkerView selected") << endmsg ;
- /*NOTREACHED*/
- return ;
- }
-
- drag_info.item = mv->get_canvas_frame() ;
- drag_info.data = mv ;
- drag_info.grab_x = event->motion.x ;
- drag_info.cumulative_x_drag = 0 ;
-
- drag_info.motion_callback = &Editor::markerview_end_handle_trim_motion ;
- drag_info.finished_callback = &Editor::markerview_end_handle_end_trim ;
-
- start_grab(event, trimmer_cursor) ;
-}
-
-
-void
-Editor::markerview_start_handle_trim_motion(ArdourCanvas::Item* item, GdkEvent* event)
-{
- MarkerView* mv = reinterpret_cast<MarkerView*> (drag_info.data) ;
-
- framepos_t start = 0 ;
- framepos_t end = 0 ;
- framepos_t pointer_frame = canvas_event_frame(event) ;
-
- // chekc th eposition of the item is not locked
- if(!mv->get_position_locked())
- {
- snap_to(pointer_frame) ;
- if(pointer_frame != drag_info.last_pointer_frame)
- {
- start = mv->get_position() ;
- end = mv->get_position() + mv->get_duration() ;
-
- if (pointer_frame > end)
- {
- start = end ;
- }
- else
- {
- start = pointer_frame ;
- }
-
- // are we getting bigger or smaller?
- framepos_t new_dur_val = end - start ;
-
- if(pointer_frame <= drag_info.grab_frame)
- {
- if(mv->get_max_duration_active() && (new_dur_val > mv->get_max_duration()))
- {
- new_dur_val = mv->get_max_duration() ;
- start = end - new_dur_val ;
- }
- else
- {
- // current values are ok
- }
- }
- else
- {
- if(mv->get_min_duration_active() && (new_dur_val < mv->get_min_duration()))
- {
- new_dur_val = mv->get_min_duration() ;
- start = end - new_dur_val ;
- }
- else
- {
- // current values are ok
- }
- }
-
- drag_info.last_pointer_frame = pointer_frame ;
-
- /* re-calculatethe duration and position of the imageframeview */
- drag_info.cumulative_x_drag = new_dur_val ;
-
- // we treat this as a special case, usually we want to send the identitiy of the caller
- // but in this case, that would trigger our socket handler to handle the event, sending
- // notification to the image compositor. This would be fine, except that we have not
- // finished the drag, we therefore do not want to sent notification until we have
- // completed the drag, only then do we want the image compositor notofied.
- // We therefore set the caller identity to the special case of 0
- mv->set_duration(new_dur_val, 0) ;
- mv->set_position(start, 0) ;
- }
- }
-
- show_verbose_time_cursor(start, 10) ;
-}
-
-void
-Editor::markerview_start_handle_end_trim(ArdourCanvas::Item* item, GdkEvent* event)
-{
- MarkerView* mv = reinterpret_cast<MarkerView*> (drag_info.data) ;
-
- if (drag_info.cumulative_x_drag == 0)
- {
- /* just a click */
- }
- else
- {
- framepos_t temp = mv->get_position() + mv->get_duration() ;
-
- mv->set_position((framepos_t) (temp - drag_info.cumulative_x_drag), this) ;
- mv->set_duration((framepos_t) drag_info.cumulative_x_drag, this) ;
- }
-}
-
-void
-Editor::markerview_end_handle_trim_motion(ArdourCanvas::Item* item, GdkEvent* event)
-{
- MarkerView* mv = reinterpret_cast<MarkerView*> (drag_info.data) ;
-
- framepos_t start = 0 ;
- framepos_t end = 0 ;
- framepos_t pointer_frame = canvas_event_frame(event) ;
- framepos_t new_dur_val = 0 ;
-
- snap_to(pointer_frame) ;
-
- if (pointer_frame != drag_info.last_pointer_frame)
- {
- start = mv->get_position() ;
- end = mv->get_position() + mv->get_duration() ;
-
- if(pointer_frame < start)
- {
- end = start ;
- }
- else
- {
- end = pointer_frame ;
- }
-
- new_dur_val = end - start ;
-
- // are we getting bigger or smaller?
- if(pointer_frame >= drag_info.last_pointer_frame)
- {
- // we cant extend beyond the item we are marking
- ImageFrameView* marked_item = mv->get_marked_item() ;
- framepos_t marked_end = marked_item->get_position() + marked_item->get_duration() ;
-
- if(mv->get_max_duration_active() && (new_dur_val > mv->get_max_duration()))
- {
- if((start + mv->get_max_duration()) > marked_end)
- {
- new_dur_val = marked_end - start ;
- }
- else
- {
- new_dur_val = mv->get_max_duration() ;
- }
- }
- else if(end > marked_end)
- {
- new_dur_val = marked_end - start ;
- }
- }
- else
- {
- if(mv->get_min_duration_active() && (new_dur_val < mv->get_min_duration()))
- {
- new_dur_val = mv->get_min_duration() ;
- }
- }
-
-
- drag_info.last_pointer_frame = pointer_frame ;
- drag_info.cumulative_x_drag = new_dur_val ;
-
- // we treat this as a special case, usually we want to send the identitiy of the caller
- // but in this case, that would trigger our socket handler to handle the event, sending
- // notification to the image compositor. This would be fine, except that we have not
- // finished the drag, we therefore do not want to sent notification until we have
- // completed the drag, only then do we want the image compositor notofied.
- // We therefore set the caller identity to the special case of 0
- mv->set_duration(new_dur_val, 0) ;
- }
-
- show_verbose_time_cursor(new_dur_val, 10) ;
-}
-
-
-void
-Editor::markerview_end_handle_end_trim (ArdourCanvas::Item* item, GdkEvent* event)
-{
- MarkerView* mv = reinterpret_cast<MarkerView*> (drag_info.data) ;
-
- if (drag_info.cumulative_x_drag == 0)
- {
- /* just a click */
- }
- else
- {
- framepos_t new_duration = (framepos_t)drag_info.cumulative_x_drag ;
- mv->set_duration(new_duration, this) ;
- }
-}
-
-
-/* </CMT Additions file="editor_mouse.cc"> */
-
-
-
-
-
-
-
-/* <CMT Additions file="editor_route_list.cc"> */
-
-void
-Editor::handle_new_imageframe_time_axis_view(const string & track_name, void* src)
-{
- ImageFrameTimeAxis* iftav ;
- iftav = new ImageFrameTimeAxis(track_name, *this, *session, *track_canvas) ;
- iftav->set_time_axis_name(track_name, this) ;
- track_views.push_back(iftav) ;
-
- TreeModel::Row row = *(route_display_model->append());
-
- row[route_display_columns.text] = iftav->name();
- row[route_display_columns.tv] = iftav;
- route_list_display.get_selection()->select (row);
-
- iftav->gui_changed.connect(sigc::mem_fun(*this, &Editor::handle_gui_changes)) ;
-}
-
-void
-Editor::handle_new_imageframe_marker_time_axis_view(const string & track_name, TimeAxisView* marked_track)
-{
- MarkerTimeAxis* mta = new MarkerTimeAxis (*this, *this->session(), *track_canvas, track_name, marked_track) ;
- ((ImageFrameTimeAxis*)marked_track)->add_marker_time_axis(mta, this) ;
- track_views.push_back(mta) ;
-
- TreeModel::Row row = *(route_display_model->append());
-
- row[route_display_columns.text] = mta->name();
- row[route_display_columns.tv] = mta;
- route_list_display.get_selection()->select (row);
-}
-
-
-/* </CMT Additions file="editor_route_list.cc"> */
diff --git a/gtk2_ardour/editor_markers.cc b/gtk2_ardour/editor_markers.cc
index ff28f7b56a..c9a151f96e 100644
--- a/gtk2_ardour/editor_markers.cc
+++ b/gtk2_ardour/editor_markers.cc
@@ -17,7 +17,6 @@
*/
-#include <sigc++/retype.h>
#include <cstdlib>
#include <cmath>
diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc
index 0e4b54c7a2..e75d51313e 100644
--- a/gtk2_ardour/editor_mouse.cc
+++ b/gtk2_ardour/editor_mouse.cc
@@ -1001,10 +1001,6 @@ Editor::button_press_handler_1 (ArdourCanvas::Item* item, GdkEvent* event, ItemT
}
if (internal_editing ()) {
- if (event->type == GDK_2BUTTON_PRESS && event->button.button == 1) {
- Glib::RefPtr<Action> act = ActionManager::get_action (X_("MouseMode"), X_("toggle-internal-edit"));
- act->activate ();
- }
break;
}
@@ -1140,31 +1136,6 @@ Editor::button_press_handler_1 (ArdourCanvas::Item* item, GdkEvent* event, ItemT
break;
}
-#ifdef WITH_CMT
- case ImageFrameHandleStartItem:
- imageframe_start_handle_op(item, event) ;
- return(true) ;
- break ;
- case ImageFrameHandleEndItem:
- imageframe_end_handle_op(item, event) ;
- return(true) ;
- break ;
- case MarkerViewHandleStartItem:
- markerview_item_start_handle_op(item, event) ;
- return(true) ;
- break ;
- case MarkerViewHandleEndItem:
- markerview_item_end_handle_op(item, event) ;
- return(true) ;
- break ;
- case MarkerViewItem:
- start_markerview_grab(item, event) ;
- break ;
- case ImageFrameItem:
- start_imageframe_grab(item, event) ;
- break ;
-#endif
-
case MarkerBarItem:
break;
@@ -1510,14 +1481,6 @@ Editor::button_release_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemT
edit_control_point (item);
break;
- case NoteItem:
- {
- NoteBase* e = reinterpret_cast<NoteBase*> (item->get_data ("notebase"));
- assert (e);
- edit_notes (e->region_view().selection ());
- break;
- }
-
default:
break;
}
@@ -1601,21 +1564,6 @@ Editor::button_release_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemT
popup_control_point_context_menu (item, event);
break;
-#ifdef WITH_CMT
- case ImageFrameItem:
- popup_imageframe_edit_menu(1, event->button.time, item, true) ;
- break ;
- case ImageFrameTimeAxisItem:
- popup_imageframe_edit_menu(1, event->button.time, item, false) ;
- break ;
- case MarkerViewItem:
- popup_marker_time_axis_edit_menu(1, event->button.time, item, true) ;
- break ;
- case MarkerTimeAxisItem:
- popup_marker_time_axis_edit_menu(1, event->button.time, item, false) ;
- break ;
-#endif
-
default:
break;
}
@@ -1895,19 +1843,11 @@ Editor::enter_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item_
break;
case StartSelectionTrimItem:
-#ifdef WITH_CMT
- case ImageFrameHandleStartItem:
- case MarkerViewHandleStartItem:
-#endif
if (is_drawable()) {
set_canvas_cursor (_cursors->left_side_trim);
}
break;
case EndSelectionTrimItem:
-#ifdef WITH_CMT
- case ImageFrameHandleEndItem:
- case MarkerViewHandleEndItem:
-#endif
if (is_drawable()) {
set_canvas_cursor (_cursors->right_side_trim);
}
@@ -2082,13 +2022,6 @@ Editor::leave_handler (ArdourCanvas::Item* item, GdkEvent*, ItemType item_type)
case EndSelectionTrimItem:
case PlayheadCursorItem:
-#ifdef WITH_CMT
- case ImageFrameHandleStartItem:
- case ImageFrameHandleEndItem:
- case MarkerViewHandleStartItem:
- case MarkerViewHandleEndItem:
-#endif
-
_over_region_trim_target = false;
if (is_drawable()) {
@@ -2376,7 +2309,6 @@ Editor::edit_control_point (ArdourCanvas::Item* item)
}
ControlPointDialog d (p);
- d.set_position (Gtk::WIN_POS_MOUSE);
ensure_float (d);
if (d.run () != RESPONSE_ACCEPT) {
@@ -2387,19 +2319,33 @@ Editor::edit_control_point (ArdourCanvas::Item* item)
}
void
-Editor::edit_notes (MidiRegionView::Selection const & s)
+Editor::edit_notes (TimeAxisViewItem& tavi)
{
+ MidiRegionView* mrv = dynamic_cast<MidiRegionView*>(&tavi);
+
+ if (!mrv) {
+ return;
+ }
+
+ MidiRegionView::Selection const & s = mrv->selection();
+
if (s.empty ()) {
return;
}
- EditNoteDialog d (&(*s.begin())->region_view(), s);
- d.set_position (Gtk::WIN_POS_MOUSE);
- ensure_float (d);
+ EditNoteDialog* d = new EditNoteDialog (&(*s.begin())->region_view(), s);
+ d->show_all ();
+ ensure_float (*d);
- d.run ();
+ d->signal_response().connect (sigc::bind (sigc::mem_fun (*this, &Editor::note_edit_done), d));
}
+void
+Editor::note_edit_done (int r, EditNoteDialog* d)
+{
+ d->done (r);
+ delete d;
+}
void
Editor::visible_order_range (int* low, int* high) const
diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc
index 1bd1a5c82e..4037f7a83d 100644
--- a/gtk2_ardour/editor_ops.cc
+++ b/gtk2_ardour/editor_ops.cc
@@ -2377,7 +2377,6 @@ Editor::rename_region ()
d.add_button(Gtk::Stock::OK, Gtk::RESPONSE_OK);
d.set_size_request (300, -1);
- d.set_position (Gtk::WIN_POS_MOUSE);
entry.set_text (rs.front()->region()->name());
entry.select_region (0, -1);
diff --git a/gtk2_ardour/editor_tempodisplay.cc b/gtk2_ardour/editor_tempodisplay.cc
index 400f427ee5..5e1c72af97 100644
--- a/gtk2_ardour/editor_tempodisplay.cc
+++ b/gtk2_ardour/editor_tempodisplay.cc
@@ -192,7 +192,6 @@ Editor::mouse_add_new_tempo_event (framepos_t frame)
TempoMap& map(_session->tempo_map());
TempoDialog tempo_dialog (map, frame, _("add"));
- tempo_dialog.set_position (Gtk::WIN_POS_MOUSE);
//this causes compiz to display no border.
//tempo_dialog.signal_realize().connect (sigc::bind (sigc::ptr_fun (set_decoration), &tempo_dialog, Gdk::WMDecoration (Gdk::DECOR_BORDER|Gdk::DECOR_RESIZEH)));
@@ -235,8 +234,6 @@ Editor::mouse_add_new_meter_event (framepos_t frame)
TempoMap& map(_session->tempo_map());
MeterDialog meter_dialog (map, frame, _("add"));
- meter_dialog.set_position (Gtk::WIN_POS_MOUSE);
-
//this causes compiz to display no border..
//meter_dialog.signal_realize().connect (sigc::bind (sigc::ptr_fun (set_decoration), &meter_dialog, Gdk::WMDecoration (Gdk::DECOR_BORDER|Gdk::DECOR_RESIZEH)));
@@ -292,8 +289,6 @@ Editor::edit_meter_section (MeterSection* section)
{
MeterDialog meter_dialog (*section, _("done"));
- meter_dialog.set_position (Gtk::WIN_POS_MOUSE);
-
ensure_float (meter_dialog);
switch (meter_dialog.run()) {
@@ -324,8 +319,6 @@ Editor::edit_tempo_section (TempoSection* section)
{
TempoDialog tempo_dialog (*section, _("done"));
- tempo_dialog.set_position (Gtk::WIN_POS_MOUSE);
-
ensure_float (tempo_dialog);
switch (tempo_dialog.run ()) {
diff --git a/gtk2_ardour/export_video_dialog.cc b/gtk2_ardour/export_video_dialog.cc
index 417f793f3a..309e3af48f 100644
--- a/gtk2_ardour/export_video_dialog.cc
+++ b/gtk2_ardour/export_video_dialog.cc
@@ -91,7 +91,6 @@ ExportVideoDialog::ExportVideoDialog (PublicEditor& ed, Session* s)
set_session (s);
set_name ("ExportVideoDialog");
- set_position (Gtk::WIN_POS_MOUSE);
set_modal (true);
set_skip_taskbar_hint (true);
set_resizable (false);
diff --git a/gtk2_ardour/export_video_infobox.cc b/gtk2_ardour/export_video_infobox.cc
index a7508702c2..92180462d4 100644
--- a/gtk2_ardour/export_video_infobox.cc
+++ b/gtk2_ardour/export_video_infobox.cc
@@ -33,7 +33,6 @@ ExportVideoInfobox::ExportVideoInfobox (Session* s)
set_session (s);
set_name ("ExportVideoInfobox");
- set_position (Gtk::WIN_POS_MOUSE);
set_modal (true);
set_skip_taskbar_hint (true);
set_resizable (false);
diff --git a/gtk2_ardour/io_selector.cc b/gtk2_ardour/io_selector.cc
index db165b8b3c..544963f666 100644
--- a/gtk2_ardour/io_selector.cc
+++ b/gtk2_ardour/io_selector.cc
@@ -224,8 +224,6 @@ IOSelectorWindow::IOSelectorWindow (ARDOUR::Session* session, boost::shared_ptr<
add (_selector);
- set_position (Gtk::WIN_POS_MOUSE);
-
io_name_changed (this);
show_all ();
diff --git a/gtk2_ardour/midi_port_dialog.cc b/gtk2_ardour/midi_port_dialog.cc
index 4aaa620399..f4c7e5a26b 100644
--- a/gtk2_ardour/midi_port_dialog.cc
+++ b/gtk2_ardour/midi_port_dialog.cc
@@ -42,7 +42,6 @@ MidiPortDialog::MidiPortDialog ()
set_modal (true);
set_skip_taskbar_hint (true);
set_resizable (false);
- set_position (Gtk::WIN_POS_MOUSE);
set_name (N_("MidiPortDialog"));
vector<string> str = internationalize (PACKAGE, mode_strings);
diff --git a/gtk2_ardour/midi_region_view.cc b/gtk2_ardour/midi_region_view.cc
index e5a48994f8..d681bb43de 100644
--- a/gtk2_ardour/midi_region_view.cc
+++ b/gtk2_ardour/midi_region_view.cc
@@ -3755,8 +3755,6 @@ MidiRegionView::edit_patch_change (PatchChange* pc)
{
PatchChangeDialog d (&_source_relative_time_converter, trackview.session(), *pc->patch (), instrument_info(), Gtk::Stock::APPLY, true);
- d.set_position (Gtk::WIN_POS_MOUSE);
-
int response = d.run();
switch (response) {
diff --git a/gtk2_ardour/midi_time_axis.cc b/gtk2_ardour/midi_time_axis.cc
index 1b0db3edb5..69e9bcad5f 100644
--- a/gtk2_ardour/midi_time_axis.cc
+++ b/gtk2_ardour/midi_time_axis.cc
@@ -515,7 +515,6 @@ MidiTimeAxisView::toggle_channel_selector ()
_channel_selector->set_default_channel_color ();
}
- _channel_selector->set_position (WIN_POS_MOUSE);
_channel_selector->show_all ();
} else {
_channel_selector->cycle_visibility ();
diff --git a/gtk2_ardour/mixer_strip.cc b/gtk2_ardour/mixer_strip.cc
index 90d2a2912a..79d4b224f6 100644
--- a/gtk2_ardour/mixer_strip.cc
+++ b/gtk2_ardour/mixer_strip.cc
@@ -1358,7 +1358,6 @@ void
MixerStrip::setup_comment_editor ()
{
comment_window = new ArdourWindow (""); // title will be reset to show route
- comment_window->set_position (Gtk::WIN_POS_MOUSE);
comment_window->set_skip_taskbar_hint (true);
comment_window->signal_hide().connect (sigc::mem_fun(*this, &MixerStrip::comment_editor_done_editing));
comment_window->set_default_size (400, 200);
diff --git a/gtk2_ardour/note_base.cc b/gtk2_ardour/note_base.cc
index 9331674159..e792fcba7d 100644
--- a/gtk2_ardour/note_base.cc
+++ b/gtk2_ardour/note_base.cc
@@ -342,7 +342,7 @@ NoteBase::event_handler (GdkEvent* ev)
case GDK_BUTTON_PRESS:
set_mouse_fractions (ev);
if (ev->button.button == 3 && Keyboard::no_modifiers_active (ev->button.state) && _selected) {
- show_channel_selector();
+ _region.get_time_axis_view().editor().edit_notes (_region);
return true;
}
break;
diff --git a/gtk2_ardour/playlist_selector.cc b/gtk2_ardour/playlist_selector.cc
index b0bc515a61..cdc144d1b7 100644
--- a/gtk2_ardour/playlist_selector.cc
+++ b/gtk2_ardour/playlist_selector.cc
@@ -44,7 +44,6 @@ PlaylistSelector::PlaylistSelector ()
{
rui = 0;
- set_position (WIN_POS_MOUSE);
set_name ("PlaylistSelectorWindow");
set_modal(true);
add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK);
diff --git a/gtk2_ardour/plugin_selector.cc b/gtk2_ardour/plugin_selector.cc
index 5bca4c7be0..81adf40896 100644
--- a/gtk2_ardour/plugin_selector.cc
+++ b/gtk2_ardour/plugin_selector.cc
@@ -66,7 +66,6 @@ PluginSelector::PluginSelector (PluginManager& mgr)
, manager (mgr)
{
- set_position (Gtk::WIN_POS_MOUSE);
set_name ("PluginSelectorWindow");
add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK);
diff --git a/gtk2_ardour/plugin_ui.cc b/gtk2_ardour/plugin_ui.cc
index 2dd8741a13..8868279cf5 100644
--- a/gtk2_ardour/plugin_ui.cc
+++ b/gtk2_ardour/plugin_ui.cc
@@ -82,11 +82,10 @@ using namespace Gtkmm2ext;
using namespace Gtk;
PluginUIWindow::PluginUIWindow (
- Gtk::Window* win,
boost::shared_ptr<PluginInsert> insert,
bool scrollable,
bool editor)
- : parent (win)
+ : ArdourWindow (string())
, was_visible (false)
, _keyboard_focused (false)
#ifdef AUDIOUNIT_SUPPORT
@@ -96,7 +95,6 @@ PluginUIWindow::PluginUIWindow (
{
bool have_gui = false;
-
Label* label = manage (new Label());
label->set_markup ("<b>THIS IS THE PLUGIN UI</b>");
@@ -147,7 +145,6 @@ PluginUIWindow::PluginUIWindow (
signal_unmap_event().connect (sigc::mem_fun (*pu, &GenericPluginUI::stop_updating));
}
- // set_position (Gtk::WIN_POS_MOUSE);
set_name ("PluginEditor");
add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK|Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK);
@@ -171,18 +168,9 @@ PluginUIWindow::~PluginUIWindow ()
}
void
-PluginUIWindow::set_parent (Gtk::Window* win)
-{
- parent = win;
-}
-
-void
PluginUIWindow::on_map ()
{
Window::on_map ();
-#ifdef __APPLE__
- set_keep_above (true);
-#endif // __APPLE__
}
bool
@@ -226,19 +214,25 @@ PluginUIWindow::on_show ()
}
if (_pluginui) {
+#if defined (HAVE_AUDIOUNITS) && defined(GTKOSX)
+ if (pre_deactivate_x >= 0) {
+ move (pre_deactivate_x, pre_deactivate_y);
+ }
+#endif
+
if (_pluginui->on_window_show (_title)) {
Window::on_show ();
}
}
-
- if (parent) {
- // set_transient_for (*parent);
- }
}
void
PluginUIWindow::on_hide ()
{
+#if defined (HAVE_AUDIOUNITS) && defined(GTKOSX)
+ get_position (pre_deactivate_x, pre_deactivate_y);
+#endif
+
Window::on_hide ();
if (_pluginui) {
@@ -560,7 +554,6 @@ PlugUIBase::latency_button_clicked ()
if (!latency_gui) {
latency_gui = new LatencyGUI (*(insert.get()), insert->session().frame_rate(), insert->session().get_block_size());
latency_dialog = new ArdourWindow (_("Edit Latency"));
- latency_dialog->set_position (WIN_POS_MOUSE);
/* use both keep-above and transient for to try cover as many
different WM's as possible.
*/
diff --git a/gtk2_ardour/plugin_ui.h b/gtk2_ardour/plugin_ui.h
index 6b886cf268..be03e6ede4 100644
--- a/gtk2_ardour/plugin_ui.h
+++ b/gtk2_ardour/plugin_ui.h
@@ -50,6 +50,7 @@
#include "automation_controller.h"
#include "ardour_button.h"
+#include "ardour_window.h"
namespace ARDOUR {
class PluginInsert;
@@ -278,11 +279,10 @@ class GenericPluginUI : public PlugUIBase, public Gtk::VBox
bool integer_printer (char* buf, Gtk::Adjustment &, ControlUI *);
};
-class PluginUIWindow : public Gtk::Window
+class PluginUIWindow : public ArdourWindow
{
public:
- PluginUIWindow (Gtk::Window*,
- boost::shared_ptr<ARDOUR::PluginInsert> insert,
+ PluginUIWindow (boost::shared_ptr<ARDOUR::PluginInsert> insert,
bool scrollable=false,
bool editor=true);
~PluginUIWindow ();
diff --git a/gtk2_ardour/processor_box.cc b/gtk2_ardour/processor_box.cc
index 16088786cd..335861883c 100644
--- a/gtk2_ardour/processor_box.cc
+++ b/gtk2_ardour/processor_box.cc
@@ -1183,7 +1183,6 @@ ProcessorBox::weird_plugin_dialog (Plugin& p, Route::ProcessorStreams streams)
dialog.add_button (Stock::OK, RESPONSE_ACCEPT);
dialog.set_name (X_("PluginIODialog"));
- dialog.set_position (Gtk::WIN_POS_MOUSE);
dialog.set_modal (true);
dialog.show_all ();
@@ -1550,7 +1549,6 @@ outputs will not work correctly."));
dialog.add_button (Stock::OK, RESPONSE_ACCEPT);
dialog.set_name (X_("PluginIODialog"));
- dialog.set_position (Gtk::WIN_POS_MOUSE);
dialog.set_modal (true);
dialog.show_all ();
@@ -2094,20 +2092,16 @@ ProcessorBox::toggle_edit_processor (boost::shared_ptr<Processor> processor)
/* these are both allowed to be null */
- Container* toplevel = get_toplevel();
- Window* win = dynamic_cast<Gtk::Window*>(toplevel);
-
Window* w = get_processor_ui (plugin_insert);
if (w == 0) {
- plugin_ui = new PluginUIWindow (win, plugin_insert);
+ plugin_ui = new PluginUIWindow (plugin_insert);
plugin_ui->set_title (generate_processor_title (plugin_insert));
set_processor_ui (plugin_insert, plugin_ui);
} else {
plugin_ui = dynamic_cast<PluginUIWindow *> (w);
- plugin_ui->set_parent (win);
}
gidget = plugin_ui;
@@ -2155,9 +2149,7 @@ ProcessorBox::toggle_edit_generic_processor (boost::shared_ptr<Processor> proces
return;
}
- Container* toplevel = get_toplevel();
- Window* win = dynamic_cast<Gtk::Window*>(toplevel);
- PluginUIWindow* plugin_ui = new PluginUIWindow(win, plugin_insert, true, false);
+ PluginUIWindow* plugin_ui = new PluginUIWindow (plugin_insert, true, false);
plugin_ui->set_title(generate_processor_title (plugin_insert));
if (plugin_ui->is_visible()) {
diff --git a/gtk2_ardour/public_editor.h b/gtk2_ardour/public_editor.h
index d95b29d814..c76dd35196 100644
--- a/gtk2_ardour/public_editor.h
+++ b/gtk2_ardour/public_editor.h
@@ -288,6 +288,7 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulDestructible {
virtual void add_to_idle_resize (TimeAxisView*, int32_t) = 0;
virtual framecnt_t get_nudge_distance (framepos_t pos, framecnt_t& next) = 0;
virtual Evoral::MusicalTime get_grid_type_as_beats (bool& success, framepos_t position) = 0;
+ virtual void edit_notes (TimeAxisViewItem&) = 0;
virtual void queue_visual_videotimeline_update () = 0;
virtual void toggle_ruler_video (bool) = 0;
@@ -299,14 +300,6 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulDestructible {
virtual void embed_audio_from_video (std::string, framepos_t n = 0) = 0;
virtual void export_video () = 0;
-#ifdef WITH_CMT
- virtual void connect_to_image_compositor() = 0;
- virtual void add_imageframe_time_axis(const std::string & track_name, void*) = 0;
- virtual void add_imageframe_marker_time_axis(const std::string & track_name, TimeAxisView* marked_track, void*) = 0;
- virtual void scroll_timeaxis_to_imageframe_item(const TimeAxisViewItem* item) = 0;
- virtual TimeAxisView* get_named_time_axis(const std::string & name) = 0;
-#endif
-
virtual RouteTimeAxisView* get_route_view_by_route_id (const PBD::ID& id) const = 0;
virtual void get_equivalent_regions (RegionView* rv, std::vector<RegionView*>&, PBD::PropertyID) const = 0;
diff --git a/gtk2_ardour/route_group_dialog.cc b/gtk2_ardour/route_group_dialog.cc
index 945219d4f2..bba72fb4a8 100644
--- a/gtk2_ardour/route_group_dialog.cc
+++ b/gtk2_ardour/route_group_dialog.cc
@@ -50,7 +50,6 @@ RouteGroupDialog::RouteGroupDialog (RouteGroup* g, bool creating_new)
set_modal (true);
set_skip_taskbar_hint (true);
set_resizable (true);
- set_position (Gtk::WIN_POS_MOUSE);
set_name (N_("RouteGroupDialog"));
VBox* main_vbox = manage (new VBox);
diff --git a/gtk2_ardour/splash.cc b/gtk2_ardour/splash.cc
index 0922ec75ba..99adff68e9 100644
--- a/gtk2_ardour/splash.cc
+++ b/gtk2_ardour/splash.cc
@@ -25,6 +25,10 @@
#include "ardour/ardour.h"
#include "ardour/filesystem_paths.h"
+#ifdef check
+#undef check
+#endif
+
#include "gui_thread.h"
#include "splash.h"
@@ -96,15 +100,33 @@ Splash::~Splash ()
void
Splash::pop_back_for (Gtk::Window& win)
{
+#ifdef __APPLE__
+ /* April 2013: window layering on OS X is a bit different to X Window. at present,
+ the "restack()" functionality in GDK will only operate on windows in the same
+ "level" (e.g. two normal top level windows, or two utility windows) and will not
+ work across them. The splashscreen is on its own "StatusWindowLevel" so restacking
+ is not going to work.
+
+ So for OS X, we just hide ourselves.
+ */
+ hide();
+#else
set_keep_above (false);
get_window()->restack (win.get_window(), false);
- win.signal_hide().connect (sigc::mem_fun (*this, &Splash::pop_front));
+#endif
}
void
Splash::pop_front ()
{
+
+#ifdef __APPLE__
+ if (get_window()) {
+ show ();
+ }
+#else
set_keep_above (true);
+#endif
}
void
diff --git a/gtk2_ardour/step_editor.cc b/gtk2_ardour/step_editor.cc
index 2f35772deb..0774252a44 100644
--- a/gtk2_ardour/step_editor.cc
+++ b/gtk2_ardour/step_editor.cc
@@ -82,7 +82,6 @@ StepEditor::start_step_editing ()
step_edit_region_view->show_step_edit_cursor (step_edit_beat_pos);
step_edit_region_view->set_step_edit_cursor_width (step_editor->note_length());
- step_editor->set_position (WIN_POS_MOUSE);
step_editor->present ();
}
diff --git a/gtk2_ardour/system_exec.cc b/gtk2_ardour/system_exec.cc
index 1f178a6c68..566c87dfbb 100644
--- a/gtk2_ardour/system_exec.cc
+++ b/gtk2_ardour/system_exec.cc
@@ -38,6 +38,8 @@
using namespace std;
void * interposer_thread (void *arg);
+static void close_fd (int* fd) { if (!fd) return; if (*fd >= 0) ::close (*fd); *fd = -1; }
+
SystemExec::SystemExec (std::string c, std::string a)
: cmd(c)
{
@@ -483,18 +485,18 @@ SystemExec::start (int stderr_mode)
pid=r;
/* check if execve was successful. */
- ::close(pok[1]);
+ close_fd(&pok[1]);
char buf;
for ( ;; ) {
ssize_t n = ::read(pok[0], &buf, 1 );
if ( n==1 ) {
/* child process returned from execve */
pid=0;
- ::close(pok[0]);
- ::close(pin[1]);
- ::close(pin[0]);
- ::close(pout[1]);
- ::close(pout[0]);
+ close_fd(&pok[0]);
+ close_fd(&pin[1]);
+ close_fd(&pin[0]);
+ close_fd(&pout[1]);
+ close_fd(&pout[0]);
pin[1] = -1;
return -3;
} else if ( n==-1 ) {
@@ -503,7 +505,7 @@ SystemExec::start (int stderr_mode)
}
break;
}
- ::close(pok[0]);
+ close_fd(&pok[0]);
/* child started successfully */
#if 0
@@ -519,17 +521,17 @@ SystemExec::start (int stderr_mode)
}
if (r == 0) {
/* 2nd child process - catch stdout */
- ::close(pin[1]);
- ::close(pout[1]);
+ close_fd(&pin[1]);
+ close_fd(&pout[1]);
output_interposer();
exit(0);
}
- ::close(pout[1]);
- ::close(pin[0]);
- ::close(pout[0]);
+ close_fd(&pout[1]);
+ close_fd(&pin[0]);
+ close_fd(&pout[0]);
#else /* use pthread */
- ::close(pout[1]);
- ::close(pin[0]);
+ close_fd(&pout[1]);
+ close_fd(&pin[0]);
int rv = pthread_create(&thread_id_tt, NULL, interposer_thread, this);
thread_active=true;
@@ -543,15 +545,15 @@ SystemExec::start (int stderr_mode)
}
/* child process - exec external process */
- ::close(pok[0]);
+ close_fd(&pok[0]);
::fcntl(pok[1], F_SETFD, FD_CLOEXEC);
- ::close(pin[1]);
+ close_fd(&pin[1]);
if (pin[0] != STDIN_FILENO) {
::dup2(pin[0], STDIN_FILENO);
}
- ::close(pin[0]);
- ::close(pout[0]);
+ close_fd(&pin[0]);
+ close_fd(&pout[0]);
if (pout[1] != STDOUT_FILENO) {
::dup2(pout[1], STDOUT_FILENO);
}
@@ -569,7 +571,7 @@ SystemExec::start (int stderr_mode)
}
if (pout[1] != STDOUT_FILENO && pout[1] != STDERR_FILENO) {
- ::close(pout[1]);
+ close_fd(&pout[1]);
}
if (nicelevel !=0) {
@@ -596,7 +598,7 @@ SystemExec::start (int stderr_mode)
/* if we reach here something went wrong.. */
char buf = 0;
(void) ::write(pok[1], &buf, 1 );
- (void) ::close(pok[1]);
+ close_fd(&pok[1]);
exit(-1);
return -1;
}
@@ -631,11 +633,10 @@ void
SystemExec::close_stdin()
{
if (pin[1]<0) return;
- ::close(pin[0]);
- ::close(pin[1]);
- ::close(pout[0]);
- ::close(pout[1]);
- pin[1] = - 1; // mark as closed
+ close_fd(&pin[0]);
+ close_fd(&pin[1]);
+ close_fd(&pout[0]);
+ close_fd(&pout[1]);
}
int
diff --git a/gtk2_ardour/time_fx_dialog.cc b/gtk2_ardour/time_fx_dialog.cc
index 1fd52cebc3..15d46f10ad 100644
--- a/gtk2_ardour/time_fx_dialog.cc
+++ b/gtk2_ardour/time_fx_dialog.cc
@@ -68,7 +68,6 @@ TimeFXDialog::TimeFXDialog (Editor& e, bool pitch)
set_modal (true);
set_skip_taskbar_hint (true);
set_resizable (false);
- set_position (Gtk::WIN_POS_MOUSE);
set_name (N_("TimeFXDialog"));
if (pitching) {
diff --git a/gtk2_ardour/transcode_video_dialog.cc b/gtk2_ardour/transcode_video_dialog.cc
index 5ac73a581b..f3373c0376 100644
--- a/gtk2_ardour/transcode_video_dialog.cc
+++ b/gtk2_ardour/transcode_video_dialog.cc
@@ -77,7 +77,6 @@ TranscodeVideoDialog::TranscodeVideoDialog (Session* s, std::string infile)
aborted = false;
set_name ("TranscodeVideoDialog");
- set_position (Gtk::WIN_POS_MOUSE);
set_modal (true);
set_skip_taskbar_hint (true);
set_resizable (false);
diff --git a/gtk2_ardour/video_server_dialog.cc b/gtk2_ardour/video_server_dialog.cc
index 5ee4c02844..8838409ccf 100644
--- a/gtk2_ardour/video_server_dialog.cc
+++ b/gtk2_ardour/video_server_dialog.cc
@@ -53,7 +53,6 @@ VideoServerDialog::VideoServerDialog (Session* s)
set_session (s);
set_name ("VideoServerDialog");
- set_position (Gtk::WIN_POS_MOUSE);
set_modal (true);
set_skip_taskbar_hint (true);
set_resizable (false);
diff --git a/libs/ardour/ardour/vst_plugin.h b/libs/ardour/ardour/vst_plugin.h
index d9cfd87bad..7ca973cbb7 100644
--- a/libs/ardour/ardour/vst_plugin.h
+++ b/libs/ardour/ardour/vst_plugin.h
@@ -73,7 +73,6 @@ public:
AEffect * plugin () const { return _plugin; }
VSTState * state () const { return _state; }
- void set_state (VSTState* s) { _state = s; }
int set_state (XMLNode const &, int);
diff --git a/libs/ardour/audio_unit.cc b/libs/ardour/audio_unit.cc
index 89aa99bac8..399ce8aba7 100644
--- a/libs/ardour/audio_unit.cc
+++ b/libs/ardour/audio_unit.cc
@@ -1299,8 +1299,8 @@ AUPlugin::render_callback(AudioUnitRenderActionFlags*,
{
/* not much to do with audio - the data is already in the buffers given to us in connect_and_run() */
- DEBUG_TRACE (DEBUG::AudioUnits, string_compose ("%1: render callback, frames %2 bufs %3\n",
- name(), inNumberFrames, ioData->mNumberBuffers));
+ // DEBUG_TRACE (DEBUG::AudioUnits, string_compose ("%1: render callback, frames %2 bufs %3\n",
+ // name(), inNumberFrames, ioData->mNumberBuffers));
if (input_maxbuf == 0) {
error << _("AUPlugin: render callback called illegally!") << endmsg;
diff --git a/libs/ardour/linux_vst_support.cc b/libs/ardour/linux_vst_support.cc
index 9106d69009..99251f08e4 100644
--- a/libs/ardour/linux_vst_support.cc
+++ b/libs/ardour/linux_vst_support.cc
@@ -34,8 +34,6 @@
#include <glibmm/fileutils.h>
#include "ardour/linux_vst_support.h"
-#include "ardour/vst_plugin.h"
-
#include "pbd/basename.h"
#include "pbd/error.h"
@@ -295,43 +293,36 @@ vstfx_unload (VSTHandle* fhandle)
return 0;
}
-/**
- Instantiates a VST plugin and also set _state of its plugin argument
- */
+/*This instantiates a plugin*/
-VSTState*
-vstfx_instantiate (VSTHandle* fhandle, audioMasterCallback amc, void *ptr)
+VSTState *
+vstfx_instantiate (VSTHandle* fhandle, audioMasterCallback amc, void* userptr)
{
VSTState* vstfx = vstfx_new ();
- ARDOUR::VSTPlugin* plugin = reinterpret_cast<ARDOUR::VSTPlugin*> (ptr);
- if (fhandle == 0) {
+ if(fhandle == 0)
+ {
vstfx_error( "** ERROR ** VSTFX : The handle was 0\n" );
return 0;
}
- if ((vstfx->plugin = fhandle->main_entry (amc)) == 0) {
+ if ((vstfx->plugin = fhandle->main_entry (amc)) == 0)
+ {
vstfx_error ("** ERROR ** VSTFX : %s could not be instantiated :(\n", fhandle->name);
free (vstfx);
return 0;
}
vstfx->handle = fhandle;
- vstfx->plugin->user = plugin;
+ vstfx->plugin->user = userptr;
- if (vstfx->plugin->magic != kEffectMagic) {
+ if (vstfx->plugin->magic != kEffectMagic)
+ {
vstfx_error ("** ERROR ** VSTFX : %s is not a VST plugin\n", fhandle->name);
free (vstfx);
return 0;
}
-
- /* need to set this here because some plugins make audioMaster
- * callbacks from within effOpen, and _state must be set for
- * that to work.
- */
- plugin->set_state (vstfx);
-
vstfx->plugin->dispatcher (vstfx->plugin, effOpen, 0, 0, 0, 0);
/*May or May not need to 'switch the plugin on' here - unlikely
diff --git a/libs/ardour/lxvst_plugin.cc b/libs/ardour/lxvst_plugin.cc
index 80e6b9c286..6e30e0c443 100755
--- a/libs/ardour/lxvst_plugin.cc
+++ b/libs/ardour/lxvst_plugin.cc
@@ -32,7 +32,7 @@ LXVSTPlugin::LXVSTPlugin (AudioEngine& e, Session& session, VSTHandle* h)
{
/* Instantiate the plugin and return a VSTState* */
- if (vstfx_instantiate (_handle, Session::vst_callback, this) == 0) {
+ if ((_state = vstfx_instantiate (_handle, Session::vst_callback, this)) == 0) {
throw failed_constructor();
}
@@ -44,7 +44,7 @@ LXVSTPlugin::LXVSTPlugin (const LXVSTPlugin &other)
{
_handle = other._handle;
- if (vstfx_instantiate (_handle, Session::vst_callback, this) == 0) {
+ if ((_state = vstfx_instantiate (_handle, Session::vst_callback, this)) == 0) {
throw failed_constructor();
}
_plugin = _state->plugin;
diff --git a/libs/ardour/test/data/sessions/rec_enabled/rec_enabled.ardour.bak b/libs/ardour/test/data/sessions/rec_enabled/rec_enabled.ardour.bak
deleted file mode 100644
index 106de1153d..0000000000
--- a/libs/ardour/test/data/sessions/rec_enabled/rec_enabled.ardour.bak
+++ /dev/null
@@ -1,158 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Session version="3001" name="rec_enabled" sample-rate="48000" id-counter="121" event-counter="0">
- <Config>
- <Option name="xfade-model" value="FullCrossfade"/>
- <Option name="xfade-choice" value="ConstantPowerMinus3dB"/>
- <Option name="auto-xfade" value="1"/>
- <Option name="short-xfade-seconds" value="0.015"/>
- <Option name="destructive-xfade-msecs" value="2"/>
- <Option name="use-region-fades" value="1"/>
- <Option name="show-region-fades" value="1"/>
- <Option name="native-file-data-format" value="FormatFloat"/>
- <Option name="native-file-header-format" value="WAVE"/>
- <Option name="auto-play" value="0"/>
- <Option name="auto-return" value="0"/>
- <Option name="auto-input" value="1"/>
- <Option name="punch-in" value="0"/>
- <Option name="punch-out" value="0"/>
- <Option name="subframes-per-frame" value="100"/>
- <Option name="timecode-format" value="timecode_30"/>
- <Option name="raid-path" value=""/>
- <Option name="audio-search-path" value=""/>
- <Option name="midi-search-path" value=""/>
- <Option name="auditioner-output-left" value="default"/>
- <Option name="auditioner-output-right" value="default"/>
- <Option name="timecode-source-is-synced" value="1"/>
- <Option name="jack-time-master" value="1"/>
- <Option name="use-video-sync" value="0"/>
- <Option name="video-pullup" value="0"/>
- <Option name="show-summary" value="1"/>
- <Option name="show-group-tabs" value="1"/>
- <Option name="external-sync" value="0"/>
- <Option name="sync-source" value="JACK"/>
- <Option name="insert-merge-policy" value="InsertMergeRelax"/>
- <Option name="timecode-offset" value="0"/>
- <Option name="timecode-offset-negative" value="1"/>
- <Option name="glue-new-markers-to-bars-and-beats" value="0"/>
- <Option name="midi-copy-is-fork" value="0"/>
- <Option name="glue-new-regions-to-bars-and-beats" value="0"/>
- </Config>
- <Metadata/>
- <Sources/>
- <Regions/>
- <Locations>
- <Location id="86" name="Loop" start="0" end="1" flags="IsAutoLoop,IsHidden" locked="no" position-lock-style="AudioTime"/>
- <Location id="87" name="Punch" start="0" end="1" flags="IsAutoPunch,IsHidden" locked="no" position-lock-style="AudioTime"/>
- </Locations>
- <Bundles/>
- <Routes>
- <Route id="88" name="Audio 1" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 1" id="105" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 1/audio_in 1">
- <Connection other="system:capture_1"/>
- </Port>
- </IO>
- <IO name="Audio 1" id="106" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 1/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 1/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="90" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="92" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="96" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="100" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="98" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="102" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="104" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="107" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="109" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="110" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="111" name="Audio 1" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 1" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="113" flags="Toggle" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 1.1" name="Audio 1" id="115" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="21" name="master" default-type="audio" flags="MasterOut" active="yes" phase-invert="00" denormal-protection="no" meter-point="MeterPostFader" order-keys="EditorSort=318:MixerSort=318" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no">
- <IO name="master" id="38" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="master/audio_in 1">
- <Connection other="Audio 1/audio_out 1"/>
- </Port>
- <Port type="audio" name="master/audio_in 2">
- <Connection other="Audio 1/audio_out 2"/>
- </Port>
- </IO>
- <IO name="master" id="39" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="master/audio_out 1">
- <Connection other="system:playback_1"/>
- </Port>
- <Port type="audio" name="master/audio_out 2">
- <Connection other="system:playback_2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="23" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="25" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="29" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="33" flags="" value="1.000000000000"/>
- <Controllable name="pan-elevation" id="31" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="35" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="37" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="40" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="42" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="43" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="44" name="master" active="yes" user-latency="0" own-input="yes" own-output="no" output="master" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Equal Power Stereo"/>
- </PannerShell>
- </Processor>
- </Route>
- </Routes>
- <Playlists>
- <Playlist id="116" name="Audio 1.1" type="audio" orig-track-id="88" frozen="no" combine-ops="0"/>
- </Playlists>
- <UnusedPlaylists/>
- <RouteGroups/>
- <Click>
- <IO name="click" id="46" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="click/audio_out 1">
- <Connection other="system:playback_1"/>
- </Port>
- <Port type="audio" name="click/audio_out 2">
- <Connection other="system:playback_2"/>
- </Port>
- </IO>
- <Processor id="47" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="49" flags="GainLike" value="1.000000000000"/>
- </Processor>
- </Click>
- <Speakers>
- <Speaker azimuth="0" elevation="0" distance="1"/>
- <Speaker azimuth="180" elevation="0" distance="0"/>
- </Speakers>
- <TempoMap>
- <Tempo start="1|1|0" beats-per-minute="120.000000" note-type="4.000000" movable="no"/>
- <Meter start="1|1|0" note-type="4.000000" divisions-per-bar="4.000000" movable="no"/>
- </TempoMap>
- <ControlProtocols>
- <Protocol name="Open Sound Control (OSC)" active="no"/>
- <Protocol name="Generic MIDI" feedback="0" feedback-interval="10000" active="yes">
- <Controls/>
- </Protocol>
- <Protocol name="Mackie" bank="0" ipmidi-base="21928" device-profile="" device-name="Mackie Control Universal Pro" active="yes"/>
- </ControlProtocols>
-</Session>
diff --git a/libs/ardour/test/data/sessions/rec_enabled/rec_enabled.history.bak b/libs/ardour/test/data/sessions/rec_enabled/rec_enabled.history.bak
deleted file mode 100644
index 6dd2506a89..0000000000
--- a/libs/ardour/test/data/sessions/rec_enabled/rec_enabled.history.bak
+++ /dev/null
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<UndoHistory/>
diff --git a/libs/ardour/test/profiling/sessions/1region/1region.ardour.bak b/libs/ardour/test/profiling/sessions/1region/1region.ardour.bak
deleted file mode 100644
index 4a3e63f351..0000000000
--- a/libs/ardour/test/profiling/sessions/1region/1region.ardour.bak
+++ /dev/null
@@ -1,148 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Session version="3001" name="1region" sample-rate="48000" id-counter="120" event-counter="0">
- <Config>
- <Option name="xfade-model" value="FullCrossfade"/>
- <Option name="xfade-choice" value="ConstantPowerMinus3dB"/>
- <Option name="auto-xfade" value="1"/>
- <Option name="short-xfade-seconds" value="0.015"/>
- <Option name="destructive-xfade-msecs" value="2"/>
- <Option name="use-region-fades" value="1"/>
- <Option name="show-region-fades" value="1"/>
- <Option name="native-file-data-format" value="FormatFloat"/>
- <Option name="native-file-header-format" value="WAVE"/>
- <Option name="auto-play" value="0"/>
- <Option name="auto-return" value="0"/>
- <Option name="auto-input" value="1"/>
- <Option name="punch-in" value="0"/>
- <Option name="punch-out" value="0"/>
- <Option name="subframes-per-frame" value="100"/>
- <Option name="timecode-format" value="timecode_30"/>
- <Option name="raid-path" value=""/>
- <Option name="audio-search-path" value=""/>
- <Option name="midi-search-path" value=""/>
- <Option name="auditioner-output-left" value="default"/>
- <Option name="auditioner-output-right" value="default"/>
- <Option name="timecode-source-is-synced" value="1"/>
- <Option name="jack-time-master" value="1"/>
- <Option name="use-video-sync" value="0"/>
- <Option name="video-pullup" value="0"/>
- <Option name="show-summary" value="1"/>
- <Option name="show-group-tabs" value="1"/>
- <Option name="external-sync" value="0"/>
- <Option name="sync-source" value="JACK"/>
- <Option name="insert-merge-policy" value="InsertMergeRelax"/>
- <Option name="timecode-offset" value="0"/>
- <Option name="timecode-offset-negative" value="1"/>
- <Option name="glue-new-markers-to-bars-and-beats" value="0"/>
- <Option name="midi-copy-is-fork" value="0"/>
- <Option name="glue-new-regions-to-bars-and-beats" value="0"/>
- </Config>
- <Metadata/>
- <Sources/>
- <Regions/>
- <Locations>
- <Location id="86" name="Loop" start="0" end="1" flags="IsAutoLoop,IsHidden" locked="no" position-lock-style="AudioTime"/>
- <Location id="87" name="Punch" start="0" end="1" flags="IsAutoPunch,IsHidden" locked="no" position-lock-style="AudioTime"/>
- </Locations>
- <Bundles/>
- <Routes>
- <Route id="21" name="master" default-type="audio" flags="MasterOut" active="yes" phase-invert="00" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=0:signal=0" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no">
- <IO name="master" id="38" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="master/audio_in 1"/>
- <Port type="audio" name="master/audio_in 2"/>
- </IO>
- <IO name="master" id="39" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="master/audio_out 1">
- <Connection other="system:playback_1"/>
- </Port>
- <Port type="audio" name="master/audio_out 2">
- <Connection other="system:playback_2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="23" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="25" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="318"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="29" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="33" flags="" value="1.000000000000"/>
- <Controllable name="pan-elevation" id="31" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="35" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="37" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="40" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="42" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="43" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="44" name="master" active="yes" user-latency="0" own-input="yes" own-output="no" output="master" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Equal Power Stereo"/>
- </PannerShell>
- </Processor>
- </Route>
- <Route id="88" name="MIDI 1" default-type="midi" active="yes" phase-invert="" denormal-protection="no" meter-point="MeterPostFader" order-keys="signal=2" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" note-mode="Sustained" step-editing="no" input-active="yes">
- <IO name="MIDI 1" id="105" direction="Input" default-type="midi" user-latency="0">
- <Port type="midi" name="MIDI 1/midi_in 1"/>
- </IO>
- <IO name="MIDI 1" id="106" direction="Output" default-type="midi" user-latency="0">
- <Port type="midi" name="MIDI 1/midi_out 1"/>
- </IO>
- <Controllable name="solo" id="90" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="92" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="2"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="96" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="100" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="98" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="102" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="104" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="107" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="109" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="110" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="111" name="MIDI 1" active="yes" user-latency="0" own-input="yes" own-output="no" output="MIDI 1" type="main-outs" role="Main">
- <PannerShell bypassed="no"/>
- </Processor>
- <Controllable name="recenable" id="113" flags="Toggle" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="MIDI 1.1" name="MIDI 1" id="115" speed="1.000000" capture-alignment="Automatic" channel-mode="AllChannels" channel-mask="0xffff"/>
- </Route>
- </Routes>
- <Playlists>
- <Playlist id="116" name="MIDI 1.1" type="midi" orig-track-id="88" frozen="no" combine-ops="0"/>
- </Playlists>
- <UnusedPlaylists/>
- <RouteGroups/>
- <Click>
- <IO name="click" id="46" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="click/audio_out 1">
- <Connection other="system:playback_1"/>
- </Port>
- <Port type="audio" name="click/audio_out 2">
- <Connection other="system:playback_2"/>
- </Port>
- </IO>
- <Processor id="47" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="49" flags="GainLike" value="1.000000000000"/>
- </Processor>
- </Click>
- <NamedSelections/>
- <Speakers>
- <Speaker azimuth="0" elevation="0" distance="1"/>
- <Speaker azimuth="180" elevation="0" distance="0"/>
- </Speakers>
- <TempoMap>
- <Tempo start="1|1|0" beats-per-minute="120.000000" note-type="4.000000" movable="no"/>
- <Meter start="1|1|0" note-type="4.000000" divisions-per-bar="4.000000" movable="no"/>
- </TempoMap>
- <ControlProtocols>
- <Protocol name="Open Sound Control (OSC)" active="no"/>
- <Protocol name="Generic MIDI" feedback="0" feedback-interval="10000" active="yes">
- <Controls/>
- </Protocol>
- <Protocol name="Mackie" bank="0" ipmidi-base="21928" device-profile="" device-name="Mackie Control Universal Pro" active="yes"/>
- </ControlProtocols>
-</Session>
diff --git a/libs/ardour/test/profiling/sessions/1region/1region.history.bak b/libs/ardour/test/profiling/sessions/1region/1region.history.bak
deleted file mode 100644
index 6dd2506a89..0000000000
--- a/libs/ardour/test/profiling/sessions/1region/1region.history.bak
+++ /dev/null
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<UndoHistory/>
diff --git a/libs/ardour/test/profiling/sessions/32tracks/32tracks.ardour.bak b/libs/ardour/test/profiling/sessions/32tracks/32tracks.ardour.bak
deleted file mode 100644
index 6794c67bc9..0000000000
--- a/libs/ardour/test/profiling/sessions/32tracks/32tracks.ardour.bak
+++ /dev/null
@@ -1,1716 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Session version="3001" name="32tracks" sample-rate="44100" id-counter="2430" event-counter="0">
- <Config>
- <Option name="xfade-model" value="FullCrossfade"/>
- <Option name="xfade-choice" value="ConstantPowerMinus3dB"/>
- <Option name="auto-xfade" value="1"/>
- <Option name="short-xfade-seconds" value="0.015"/>
- <Option name="destructive-xfade-msecs" value="2"/>
- <Option name="use-region-fades" value="1"/>
- <Option name="show-region-fades" value="1"/>
- <Option name="native-file-data-format" value="FormatFloat"/>
- <Option name="native-file-header-format" value="WAVE"/>
- <Option name="auto-play" value="0"/>
- <Option name="auto-return" value="0"/>
- <Option name="auto-input" value="1"/>
- <Option name="punch-in" value="0"/>
- <Option name="punch-out" value="0"/>
- <Option name="subframes-per-frame" value="100"/>
- <Option name="timecode-format" value="timecode_30"/>
- <Option name="raid-path" value=""/>
- <Option name="audio-search-path" value=""/>
- <Option name="midi-search-path" value=""/>
- <Option name="auditioner-output-left" value="default"/>
- <Option name="auditioner-output-right" value="default"/>
- <Option name="timecode-source-is-synced" value="1"/>
- <Option name="jack-time-master" value="1"/>
- <Option name="use-video-sync" value="0"/>
- <Option name="video-pullup" value="0"/>
- <Option name="show-summary" value="1"/>
- <Option name="show-group-tabs" value="1"/>
- <Option name="external-sync" value="0"/>
- <Option name="sync-source" value="JACK"/>
- <Option name="insert-merge-policy" value="InsertMergeRelax"/>
- <Option name="timecode-offset" value="0"/>
- <Option name="timecode-offset-negative" value="1"/>
- <Option name="glue-new-markers-to-bars-and-beats" value="0"/>
- <Option name="midi-copy-is-fork" value="0"/>
- <Option name="glue-new-regions-to-bars-and-beats" value="0"/>
- </Config>
- <Metadata/>
- <Sources/>
- <Regions/>
- <Locations>
- <Location id="81" name="Loop" start="0" end="1" flags="IsAutoLoop,IsHidden" locked="no" position-lock-style="AudioTime"/>
- <Location id="82" name="Punch" start="0" end="1" flags="IsAutoPunch,IsHidden" locked="no" position-lock-style="AudioTime"/>
- </Locations>
- <Bundles/>
- <Routes>
- <Route id="22" name="master" default-type="audio" flags="MasterOut" active="yes" phase-invert="00" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=0:signal=0" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no">
- <IO name="master" id="39" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="master/audio_in 1">
- <Connection other="Audio 1/audio_out 1"/>
- <Connection other="Audio 2/audio_out 1"/>
- <Connection other="Audio 3/audio_out 1"/>
- <Connection other="Audio 4/audio_out 1"/>
- <Connection other="Audio 5/audio_out 1"/>
- <Connection other="Audio 6/audio_out 1"/>
- <Connection other="Audio 7/audio_out 1"/>
- <Connection other="Audio 8/audio_out 1"/>
- <Connection other="Audio 9/audio_out 1"/>
- <Connection other="Audio 10/audio_out 1"/>
- <Connection other="Audio 11/audio_out 1"/>
- <Connection other="Audio 12/audio_out 1"/>
- <Connection other="Audio 13/audio_out 1"/>
- <Connection other="Audio 14/audio_out 1"/>
- <Connection other="Audio 15/audio_out 1"/>
- <Connection other="Audio 16/audio_out 1"/>
- <Connection other="Audio 17/audio_out 1"/>
- <Connection other="Audio 18/audio_out 1"/>
- <Connection other="Audio 19/audio_out 1"/>
- <Connection other="Audio 20/audio_out 1"/>
- <Connection other="Audio 21/audio_out 1"/>
- <Connection other="Audio 22/audio_out 1"/>
- <Connection other="Audio 23/audio_out 1"/>
- <Connection other="Audio 24/audio_out 1"/>
- <Connection other="Audio 25/audio_out 1"/>
- <Connection other="Audio 26/audio_out 1"/>
- <Connection other="Audio 27/audio_out 1"/>
- <Connection other="Audio 28/audio_out 1"/>
- <Connection other="Audio 29/audio_out 1"/>
- <Connection other="Audio 30/audio_out 1"/>
- <Connection other="Audio 31/audio_out 1"/>
- <Connection other="Audio 32/audio_out 1"/>
- </Port>
- <Port type="audio" name="master/audio_in 2">
- <Connection other="Audio 1/audio_out 2"/>
- <Connection other="Audio 2/audio_out 2"/>
- <Connection other="Audio 3/audio_out 2"/>
- <Connection other="Audio 4/audio_out 2"/>
- <Connection other="Audio 5/audio_out 2"/>
- <Connection other="Audio 6/audio_out 2"/>
- <Connection other="Audio 7/audio_out 2"/>
- <Connection other="Audio 8/audio_out 2"/>
- <Connection other="Audio 9/audio_out 2"/>
- <Connection other="Audio 10/audio_out 2"/>
- <Connection other="Audio 11/audio_out 2"/>
- <Connection other="Audio 12/audio_out 2"/>
- <Connection other="Audio 13/audio_out 2"/>
- <Connection other="Audio 14/audio_out 2"/>
- <Connection other="Audio 15/audio_out 2"/>
- <Connection other="Audio 16/audio_out 2"/>
- <Connection other="Audio 17/audio_out 2"/>
- <Connection other="Audio 18/audio_out 2"/>
- <Connection other="Audio 19/audio_out 2"/>
- <Connection other="Audio 20/audio_out 2"/>
- <Connection other="Audio 21/audio_out 2"/>
- <Connection other="Audio 22/audio_out 2"/>
- <Connection other="Audio 23/audio_out 2"/>
- <Connection other="Audio 24/audio_out 2"/>
- <Connection other="Audio 25/audio_out 2"/>
- <Connection other="Audio 26/audio_out 2"/>
- <Connection other="Audio 27/audio_out 2"/>
- <Connection other="Audio 28/audio_out 2"/>
- <Connection other="Audio 29/audio_out 2"/>
- <Connection other="Audio 30/audio_out 2"/>
- <Connection other="Audio 31/audio_out 2"/>
- <Connection other="Audio 32/audio_out 2"/>
- </Port>
- </IO>
- <IO name="master" id="40" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="master/audio_out 1">
- <Connection other="system:playback_1"/>
- </Port>
- <Port type="audio" name="master/audio_out 2">
- <Connection other="system:playback_2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="24" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="26" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="318"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="30" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="34" flags="" value="1.000000000000"/>
- <Controllable name="pan-elevation" id="32" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="36" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="38" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="41" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="43" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="44" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="45" name="master" active="yes" user-latency="0" own-input="yes" own-output="no" output="master" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Equal Power Stereo"/>
- </PannerShell>
- </Processor>
- </Route>
- <Route id="83" name="Audio 1" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=1:signal=1" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 1" id="101" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 1/audio_in 1">
- <Connection other="system:capture_1"/>
- </Port>
- </IO>
- <IO name="Audio 1" id="102" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 1/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 1/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="86" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="88" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="2"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="92" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="96" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="94" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="98" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="100" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="103" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="105" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="106" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="107" name="Audio 1" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 1" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="85" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 1.1" name="Audio 1" id="109" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="115" name="Audio 2" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=2:signal=2" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 2" id="133" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 2/audio_in 1">
- <Connection other="system:capture_2"/>
- </Port>
- </IO>
- <IO name="Audio 2" id="134" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 2/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 2/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="118" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="120" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="3"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="124" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="128" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="126" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="130" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="132" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="135" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="137" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="138" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="139" name="Audio 2" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 2" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="117" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 2.1" name="Audio 2" id="141" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="147" name="Audio 3" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=3:signal=3" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 3" id="165" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 3/audio_in 1"/>
- </IO>
- <IO name="Audio 3" id="166" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 3/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 3/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="150" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="152" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="4"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="156" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="160" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="158" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="162" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="164" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="167" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="169" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="170" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="171" name="Audio 3" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 3" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="149" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 3.1" name="Audio 3" id="173" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="179" name="Audio 4" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=4:signal=4" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 4" id="197" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 4/audio_in 1"/>
- </IO>
- <IO name="Audio 4" id="198" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 4/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 4/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="182" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="184" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="5"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="188" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="192" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="190" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="194" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="196" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="199" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="201" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="202" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="203" name="Audio 4" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 4" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="181" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 4.1" name="Audio 4" id="205" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="211" name="Audio 5" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=5:signal=5" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 5" id="229" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 5/audio_in 1"/>
- </IO>
- <IO name="Audio 5" id="230" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 5/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 5/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="214" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="216" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="6"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="220" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="224" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="222" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="226" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="228" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="231" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="233" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="234" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="235" name="Audio 5" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 5" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="213" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 5.1" name="Audio 5" id="237" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="243" name="Audio 6" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=6:signal=6" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 6" id="261" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 6/audio_in 1"/>
- </IO>
- <IO name="Audio 6" id="262" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 6/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 6/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="246" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="248" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="7"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="252" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="256" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="254" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="258" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="260" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="263" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="265" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="266" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="267" name="Audio 6" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 6" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="245" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 6.1" name="Audio 6" id="269" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="275" name="Audio 7" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=7:signal=7" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 7" id="293" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 7/audio_in 1"/>
- </IO>
- <IO name="Audio 7" id="294" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 7/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 7/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="278" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="280" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="8"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="284" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="288" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="286" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="290" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="292" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="295" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="297" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="298" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="299" name="Audio 7" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 7" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="277" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 7.1" name="Audio 7" id="301" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="307" name="Audio 8" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=8:signal=8" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 8" id="325" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 8/audio_in 1"/>
- </IO>
- <IO name="Audio 8" id="326" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 8/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 8/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="310" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="312" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="9"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="316" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="320" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="318" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="322" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="324" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="327" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="329" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="330" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="331" name="Audio 8" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 8" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="309" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 8.1" name="Audio 8" id="333" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="339" name="Audio 9" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=9:signal=9" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 9" id="357" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 9/audio_in 1"/>
- </IO>
- <IO name="Audio 9" id="358" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 9/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 9/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="342" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="344" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="10"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="348" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="352" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="350" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="354" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="356" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="359" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="361" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="362" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="363" name="Audio 9" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 9" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="341" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 9.1" name="Audio 9" id="365" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="371" name="Audio 10" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=10:signal=10" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 10" id="389" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 10/audio_in 1"/>
- </IO>
- <IO name="Audio 10" id="390" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 10/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 10/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="374" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="376" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="11"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="380" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="384" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="382" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="386" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="388" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="391" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="393" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="394" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="395" name="Audio 10" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 10" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="373" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 10.1" name="Audio 10" id="397" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="403" name="Audio 11" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=11:signal=11" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 11" id="421" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 11/audio_in 1"/>
- </IO>
- <IO name="Audio 11" id="422" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 11/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 11/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="406" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="408" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="12"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="412" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="416" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="414" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="418" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="420" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="423" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="425" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="426" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="427" name="Audio 11" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 11" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="405" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 11.1" name="Audio 11" id="429" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="435" name="Audio 12" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=12:signal=12" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 12" id="453" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 12/audio_in 1"/>
- </IO>
- <IO name="Audio 12" id="454" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 12/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 12/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="438" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="440" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="13"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="444" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="448" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="446" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="450" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="452" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="455" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="457" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="458" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="459" name="Audio 12" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 12" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="437" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 12.1" name="Audio 12" id="461" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="467" name="Audio 13" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=13:signal=13" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 13" id="485" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 13/audio_in 1"/>
- </IO>
- <IO name="Audio 13" id="486" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 13/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 13/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="470" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="472" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="14"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="476" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="480" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="478" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="482" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="484" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="487" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="489" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="490" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="491" name="Audio 13" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 13" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="469" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 13.1" name="Audio 13" id="493" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="499" name="Audio 14" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=14:signal=14" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 14" id="517" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 14/audio_in 1"/>
- </IO>
- <IO name="Audio 14" id="518" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 14/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 14/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="502" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="504" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="15"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="508" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="512" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="510" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="514" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="516" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="519" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="521" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="522" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="523" name="Audio 14" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 14" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="501" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 14.1" name="Audio 14" id="525" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="531" name="Audio 15" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=15:signal=15" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 15" id="549" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 15/audio_in 1"/>
- </IO>
- <IO name="Audio 15" id="550" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 15/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 15/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="534" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="536" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="16"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="540" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="544" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="542" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="546" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="548" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="551" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="553" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="554" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="555" name="Audio 15" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 15" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="533" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 15.1" name="Audio 15" id="557" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="563" name="Audio 16" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=16:signal=16" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 16" id="581" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 16/audio_in 1"/>
- </IO>
- <IO name="Audio 16" id="582" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 16/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 16/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="566" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="568" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="17"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="572" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="576" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="574" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="578" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="580" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="583" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="585" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="586" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="587" name="Audio 16" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 16" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="565" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 16.1" name="Audio 16" id="589" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="595" name="Audio 17" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=17:signal=17" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 17" id="613" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 17/audio_in 1"/>
- </IO>
- <IO name="Audio 17" id="614" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 17/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 17/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="598" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="600" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="18"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="604" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="608" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="606" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="610" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="612" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="615" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="617" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="618" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="619" name="Audio 17" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 17" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="597" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 17.1" name="Audio 17" id="621" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="627" name="Audio 18" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=18:signal=18" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 18" id="645" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 18/audio_in 1"/>
- </IO>
- <IO name="Audio 18" id="646" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 18/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 18/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="630" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="632" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="19"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="636" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="640" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="638" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="642" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="644" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="647" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="649" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="650" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="651" name="Audio 18" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 18" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="629" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 18.1" name="Audio 18" id="653" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="659" name="Audio 19" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=19:signal=19" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 19" id="677" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 19/audio_in 1"/>
- </IO>
- <IO name="Audio 19" id="678" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 19/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 19/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="662" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="664" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="20"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="668" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="672" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="670" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="674" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="676" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="679" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="681" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="682" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="683" name="Audio 19" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 19" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="661" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 19.1" name="Audio 19" id="685" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="691" name="Audio 20" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=20:signal=20" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 20" id="709" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 20/audio_in 1"/>
- </IO>
- <IO name="Audio 20" id="710" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 20/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 20/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="694" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="696" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="21"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="700" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="704" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="702" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="706" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="708" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="711" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="713" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="714" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="715" name="Audio 20" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 20" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="693" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 20.1" name="Audio 20" id="717" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="723" name="Audio 21" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=21:signal=21" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 21" id="741" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 21/audio_in 1"/>
- </IO>
- <IO name="Audio 21" id="742" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 21/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 21/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="726" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="728" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="22"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="732" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="736" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="734" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="738" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="740" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="743" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="745" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="746" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="747" name="Audio 21" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 21" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="725" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 21.1" name="Audio 21" id="749" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="755" name="Audio 22" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=22:signal=22" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 22" id="773" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 22/audio_in 1"/>
- </IO>
- <IO name="Audio 22" id="774" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 22/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 22/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="758" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="760" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="23"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="764" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="768" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="766" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="770" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="772" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="775" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="777" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="778" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="779" name="Audio 22" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 22" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="757" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 22.1" name="Audio 22" id="781" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="787" name="Audio 23" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=23:signal=23" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 23" id="805" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 23/audio_in 1"/>
- </IO>
- <IO name="Audio 23" id="806" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 23/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 23/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="790" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="792" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="24"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="796" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="800" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="798" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="802" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="804" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="807" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="809" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="810" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="811" name="Audio 23" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 23" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="789" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 23.1" name="Audio 23" id="813" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="819" name="Audio 24" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=24:signal=24" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 24" id="837" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 24/audio_in 1"/>
- </IO>
- <IO name="Audio 24" id="838" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 24/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 24/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="822" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="824" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="25"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="828" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="832" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="830" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="834" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="836" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="839" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="841" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="842" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="843" name="Audio 24" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 24" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="821" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 24.1" name="Audio 24" id="845" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="851" name="Audio 25" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=25:signal=25" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 25" id="869" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 25/audio_in 1"/>
- </IO>
- <IO name="Audio 25" id="870" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 25/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 25/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="854" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="856" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="26"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="860" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="864" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="862" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="866" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="868" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="871" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="873" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="874" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="875" name="Audio 25" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 25" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="853" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 25.1" name="Audio 25" id="877" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="883" name="Audio 26" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=26:signal=26" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 26" id="901" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 26/audio_in 1"/>
- </IO>
- <IO name="Audio 26" id="902" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 26/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 26/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="886" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="888" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="27"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="892" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="896" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="894" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="898" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="900" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="903" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="905" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="906" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="907" name="Audio 26" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 26" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="885" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 26.1" name="Audio 26" id="909" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="915" name="Audio 27" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=27:signal=27" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 27" id="933" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 27/audio_in 1">
- <Connection other="system:capture_1"/>
- </Port>
- </IO>
- <IO name="Audio 27" id="934" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 27/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 27/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="918" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="920" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="28"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="924" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="928" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="926" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="930" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="932" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="935" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="937" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="938" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="939" name="Audio 27" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 27" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="917" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 27.1" name="Audio 27" id="941" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="947" name="Audio 28" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=28:signal=28" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 28" id="965" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 28/audio_in 1">
- <Connection other="system:capture_2"/>
- </Port>
- </IO>
- <IO name="Audio 28" id="966" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 28/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 28/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="950" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="952" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="29"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="956" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="960" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="958" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="962" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="964" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="967" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="969" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="970" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="971" name="Audio 28" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 28" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="949" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 28.1" name="Audio 28" id="973" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="979" name="Audio 29" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=29:signal=29" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 29" id="997" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 29/audio_in 1"/>
- </IO>
- <IO name="Audio 29" id="998" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 29/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 29/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="982" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="984" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="30"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="988" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="992" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="990" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="994" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="996" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="999" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="1001" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="1002" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="1003" name="Audio 29" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 29" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="981" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 29.1" name="Audio 29" id="1005" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="1011" name="Audio 30" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=30:signal=30" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 30" id="1029" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 30/audio_in 1"/>
- </IO>
- <IO name="Audio 30" id="1030" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 30/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 30/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="1014" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="1016" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="31"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="1020" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="1024" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="1022" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="1026" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="1028" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="1031" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="1033" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="1034" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="1035" name="Audio 30" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 30" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="1013" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 30.1" name="Audio 30" id="1037" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="1043" name="Audio 31" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=31:signal=31" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 31" id="1061" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 31/audio_in 1"/>
- </IO>
- <IO name="Audio 31" id="1062" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 31/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 31/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="1046" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="1048" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="32"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="1052" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="1056" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="1054" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="1058" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="1060" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="1063" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="1065" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="1066" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="1067" name="Audio 31" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 31" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="1045" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 31.1" name="Audio 31" id="1069" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- <Route id="1075" name="Audio 32" default-type="audio" active="yes" phase-invert="0" denormal-protection="no" meter-point="MeterPostFader" order-keys="editor=32:signal=32" self-solo="no" soloed-by-upstream="0" soloed-by-downstream="0" solo-isolated="no" solo-safe="no" monitoring="" saved-meter-point="MeterPostFader" mode="Normal">
- <IO name="Audio 32" id="1093" direction="Input" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 32/audio_in 1"/>
- </IO>
- <IO name="Audio 32" id="1094" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="Audio 32/audio_out 1">
- <Connection other="master/audio_in 1"/>
- </Port>
- <Port type="audio" name="Audio 32/audio_out 2">
- <Connection other="master/audio_in 2"/>
- </Port>
- </IO>
- <Controllable name="solo" id="1078" flags="Toggle" value="0.000000000000"/>
- <Controllable name="mute" id="1080" flags="Toggle" value="0.000000000000"/>
- <MuteMaster mute-point="PreFader,PostFader,Listen,Main" muted="no"/>
- <RemoteControl id="33"/>
- <Pannable>
- <Controllable name="pan-azimuth" id="1084" flags="" value="0.500000000000"/>
- <Controllable name="pan-width" id="1088" flags="" value="0.000000000000"/>
- <Controllable name="pan-elevation" id="1086" flags="" value="0.000000000000"/>
- <Controllable name="pan-frontback" id="1090" flags="" value="0.000000000000"/>
- <Controllable name="pan-lfe" id="1092" flags="" value="0.000000000000"/>
- <Automation/>
- </Pannable>
- <Processor id="1095" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="1097" flags="GainLike" value="1.000000000000"/>
- </Processor>
- <Processor id="1098" name="Meter" active="yes" user-latency="0" type="meter"/>
- <Processor id="1099" name="Audio 32" active="yes" user-latency="0" own-input="yes" own-output="no" output="Audio 32" type="main-outs" role="Main">
- <PannerShell bypassed="no">
- <Panner type="Mono to Stereo Panner"/>
- </PannerShell>
- </Processor>
- <Controllable name="recenable" id="1077" flags="" value="0.000000000000"/>
- <Diskstream flags="Recordable" playlist="Audio 32.1" name="Audio 32" id="1101" speed="1.000000" capture-alignment="Automatic" channels="1"/>
- </Route>
- </Routes>
- <Playlists>
- <Playlist id="142" name="Audio 2.1" type="audio" orig-track-id="115" frozen="no" combine-ops="0"/>
- <Playlist id="110" name="Audio 1.1" type="audio" orig-track-id="83" frozen="no" combine-ops="0"/>
- <Playlist id="206" name="Audio 4.1" type="audio" orig-track-id="179" frozen="no" combine-ops="0"/>
- <Playlist id="174" name="Audio 3.1" type="audio" orig-track-id="147" frozen="no" combine-ops="0"/>
- <Playlist id="270" name="Audio 6.1" type="audio" orig-track-id="243" frozen="no" combine-ops="0"/>
- <Playlist id="238" name="Audio 5.1" type="audio" orig-track-id="211" frozen="no" combine-ops="0"/>
- <Playlist id="334" name="Audio 8.1" type="audio" orig-track-id="307" frozen="no" combine-ops="0"/>
- <Playlist id="302" name="Audio 7.1" type="audio" orig-track-id="275" frozen="no" combine-ops="0"/>
- <Playlist id="398" name="Audio 10.1" type="audio" orig-track-id="371" frozen="no" combine-ops="0"/>
- <Playlist id="366" name="Audio 9.1" type="audio" orig-track-id="339" frozen="no" combine-ops="0"/>
- <Playlist id="462" name="Audio 12.1" type="audio" orig-track-id="435" frozen="no" combine-ops="0"/>
- <Playlist id="430" name="Audio 11.1" type="audio" orig-track-id="403" frozen="no" combine-ops="0"/>
- <Playlist id="526" name="Audio 14.1" type="audio" orig-track-id="499" frozen="no" combine-ops="0"/>
- <Playlist id="494" name="Audio 13.1" type="audio" orig-track-id="467" frozen="no" combine-ops="0"/>
- <Playlist id="590" name="Audio 16.1" type="audio" orig-track-id="563" frozen="no" combine-ops="0"/>
- <Playlist id="558" name="Audio 15.1" type="audio" orig-track-id="531" frozen="no" combine-ops="0"/>
- <Playlist id="654" name="Audio 18.1" type="audio" orig-track-id="627" frozen="no" combine-ops="0"/>
- <Playlist id="622" name="Audio 17.1" type="audio" orig-track-id="595" frozen="no" combine-ops="0"/>
- <Playlist id="718" name="Audio 20.1" type="audio" orig-track-id="691" frozen="no" combine-ops="0"/>
- <Playlist id="686" name="Audio 19.1" type="audio" orig-track-id="659" frozen="no" combine-ops="0"/>
- <Playlist id="782" name="Audio 22.1" type="audio" orig-track-id="755" frozen="no" combine-ops="0"/>
- <Playlist id="750" name="Audio 21.1" type="audio" orig-track-id="723" frozen="no" combine-ops="0"/>
- <Playlist id="846" name="Audio 24.1" type="audio" orig-track-id="819" frozen="no" combine-ops="0"/>
- <Playlist id="814" name="Audio 23.1" type="audio" orig-track-id="787" frozen="no" combine-ops="0"/>
- <Playlist id="910" name="Audio 26.1" type="audio" orig-track-id="883" frozen="no" combine-ops="0"/>
- <Playlist id="878" name="Audio 25.1" type="audio" orig-track-id="851" frozen="no" combine-ops="0"/>
- <Playlist id="974" name="Audio 28.1" type="audio" orig-track-id="947" frozen="no" combine-ops="0"/>
- <Playlist id="942" name="Audio 27.1" type="audio" orig-track-id="915" frozen="no" combine-ops="0"/>
- <Playlist id="1038" name="Audio 30.1" type="audio" orig-track-id="1011" frozen="no" combine-ops="0"/>
- <Playlist id="1006" name="Audio 29.1" type="audio" orig-track-id="979" frozen="no" combine-ops="0"/>
- <Playlist id="1102" name="Audio 32.1" type="audio" orig-track-id="1075" frozen="no" combine-ops="0"/>
- <Playlist id="1070" name="Audio 31.1" type="audio" orig-track-id="1043" frozen="no" combine-ops="0"/>
- </Playlists>
- <UnusedPlaylists/>
- <RouteGroups/>
- <Click>
- <IO name="click" id="47" direction="Output" default-type="audio" user-latency="0">
- <Port type="audio" name="click/audio_out 1">
- <Connection other="system:playback_1"/>
- </Port>
- <Port type="audio" name="click/audio_out 2">
- <Connection other="system:playback_2"/>
- </Port>
- </IO>
- <Processor id="2320" name="Amp" active="yes" user-latency="0" type="amp">
- <Controllable name="gaincontrol" id="2322" flags="GainLike" value="1.000000000000"/>
- </Processor>
- </Click>
- <NamedSelections/>
- <Speakers>
- <Speaker azimuth="0" elevation="0" distance="1"/>
- <Speaker azimuth="180" elevation="0" distance="0"/>
- </Speakers>
- <TempoMap>
- <Tempo start="1|1|0" beats-per-minute="120.000000" note-type="4.000000" movable="no"/>
- <Meter start="1|1|0" note-type="4.000000" divisions-per-bar="4.000000" movable="no"/>
- </TempoMap>
- <ControlProtocols>
- <Protocol name="Open Sound Control (OSC)" active="no"/>
- <Protocol name="Generic MIDI" feedback="0" feedback-interval="10000" active="yes">
- <Controls/>
- </Protocol>
- <Protocol name="Mackie" bank="0" ipmidi-base="21928" device-profile="" device-name="Mackie Control Universal Pro" active="yes"/>
- </ControlProtocols>
- <Extra>
- <UI>
- <Window name="R-22-41" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="R-22-44" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="R-22-45" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-22-41" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-22-44" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-22-45" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-83-103" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-83-106" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-83-107" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-115-135" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-115-138" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-115-139" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-147-167" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-147-170" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-147-171" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-179-199" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-179-202" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-179-203" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-211-231" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-211-234" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-211-235" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-243-263" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-243-266" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-243-267" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-275-295" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-275-298" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-275-299" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-307-327" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-307-330" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-307-331" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-339-359" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-339-362" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-339-363" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-371-391" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-371-394" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-371-395" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-403-423" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-403-426" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-403-427" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-435-455" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-435-458" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-435-459" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-467-487" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-467-490" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-467-491" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-499-519" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-499-522" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-499-523" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-531-551" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-531-554" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-531-555" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-563-583" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-563-586" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-563-587" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-595-615" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-595-618" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-595-619" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-627-647" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-627-650" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-627-651" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-659-679" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-659-682" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-659-683" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-691-711" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-691-714" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-691-715" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-723-743" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-723-746" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-723-747" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-755-775" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-755-778" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-755-779" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-787-807" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-787-810" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-787-811" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-819-839" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-819-842" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-819-843" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-851-871" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-851-874" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-851-875" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-883-903" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-883-906" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-883-907" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-915-935" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-915-938" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-915-939" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-947-967" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-947-970" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-947-971" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-979-999" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-979-1002" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-979-1003" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-1011-1031" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-1011-1034" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-1011-1035" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-1043-1063" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-1043-1066" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-1043-1067" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-1075-1095" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-1075-1098" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <Window name="M-1075-1099" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
- <GUIObjectState>
- <Object id="route 22" color="28156:3060:40485"/>
- <Object id="rtav 22" height="60" visible="1"/>
- <Object id="automation 43" height="60" visible="0"/>
- <Object id="automation 30" height="60" visible="0"/>
- <Object id="automation 34" height="60" visible="0"/>
- <Object id="strip 22" visible="1" strip-width="Wide">
- <Object id="processor 41"/>
- </Object>
- <Object id="route 83" color="41214:6238:37268"/>
- <Object id="rtav 83" height="60" visible="1"/>
- <Object id="automation 105" height="60" visible="0"/>
- <Object id="automation 92" height="60" visible="0"/>
- <Object id="route 115" color="30107:2538:43272"/>
- <Object id="rtav 115" height="60" visible="1"/>
- <Object id="automation 137" height="60" visible="0"/>
- <Object id="automation 124" height="60" visible="0"/>
- <Object id="route 147" color="45907:43976:29990"/>
- <Object id="rtav 147" height="60" visible="1"/>
- <Object id="automation 169" height="60" visible="0"/>
- <Object id="automation 156" height="60" visible="0"/>
- <Object id="route 179" color="28824:2764:526"/>
- <Object id="rtav 179" height="60" visible="1"/>
- <Object id="automation 201" height="60" visible="0"/>
- <Object id="automation 188" height="60" visible="0"/>
- <Object id="route 211" color="3188:10144:2761"/>
- <Object id="rtav 211" height="60" visible="1"/>
- <Object id="automation 233" height="60" visible="0"/>
- <Object id="automation 220" height="60" visible="0"/>
- <Object id="route 243" color="8803:25061:18421"/>
- <Object id="rtav 243" height="60" visible="1"/>
- <Object id="automation 265" height="60" visible="0"/>
- <Object id="automation 252" height="60" visible="0"/>
- <Object id="route 275" color="45836:4494:3812"/>
- <Object id="rtav 275" height="60" visible="1"/>
- <Object id="automation 297" height="60" visible="0"/>
- <Object id="automation 284" height="60" visible="0"/>
- <Object id="route 307" color="45754:9969:15307"/>
- <Object id="rtav 307" height="60" visible="1"/>
- <Object id="automation 329" height="60" visible="0"/>
- <Object id="automation 316" height="60" visible="0"/>
- <Object id="route 339" color="34367:13830:24287"/>
- <Object id="rtav 339" height="60" visible="1"/>
- <Object id="automation 361" height="60" visible="0"/>
- <Object id="automation 348" height="60" visible="0"/>
- <Object id="route 371" color="37491:9780:8407"/>
- <Object id="rtav 371" height="60" visible="1"/>
- <Object id="automation 393" height="60" visible="0"/>
- <Object id="automation 380" height="60" visible="0"/>
- <Object id="route 403" color="12158:35400:1621"/>
- <Object id="rtav 403" height="60" visible="1"/>
- <Object id="automation 425" height="60" visible="0"/>
- <Object id="automation 412" height="60" visible="0"/>
- <Object id="route 435" color="6748:19025:20080"/>
- <Object id="rtav 435" height="60" visible="1"/>
- <Object id="automation 457" height="60" visible="0"/>
- <Object id="automation 444" height="60" visible="0"/>
- <Object id="route 467" color="45639:1015:17987"/>
- <Object id="rtav 467" height="60" visible="1"/>
- <Object id="automation 489" height="60" visible="0"/>
- <Object id="automation 476" height="60" visible="0"/>
- <Object id="route 499" color="41615:1541:46811"/>
- <Object id="rtav 499" height="60" visible="1"/>
- <Object id="automation 521" height="60" visible="0"/>
- <Object id="automation 508" height="60" visible="0"/>
- <Object id="route 531" color="44379:40654:38351"/>
- <Object id="rtav 531" height="60" visible="1"/>
- <Object id="automation 553" height="60" visible="0"/>
- <Object id="automation 540" height="60" visible="0"/>
- <Object id="route 563" color="42876:47427:47155"/>
- <Object id="rtav 563" height="60" visible="1"/>
- <Object id="automation 585" height="60" visible="0"/>
- <Object id="automation 572" height="60" visible="0"/>
- <Object id="route 595" color="8289:3239:44991"/>
- <Object id="rtav 595" height="60" visible="1"/>
- <Object id="automation 617" height="60" visible="0"/>
- <Object id="automation 604" height="60" visible="0"/>
- <Object id="route 627" color="12783:18546:42745"/>
- <Object id="rtav 627" height="60" visible="1"/>
- <Object id="automation 649" height="60" visible="0"/>
- <Object id="automation 636" height="60" visible="0"/>
- <Object id="route 659" color="11104:31186:29113"/>
- <Object id="rtav 659" height="60" visible="1"/>
- <Object id="automation 681" height="60" visible="0"/>
- <Object id="automation 668" height="60" visible="0"/>
- <Object id="route 691" color="24934:39593:18604"/>
- <Object id="rtav 691" height="60" visible="1"/>
- <Object id="automation 713" height="60" visible="0"/>
- <Object id="automation 700" height="60" visible="0"/>
- <Object id="route 723" color="23066:29567:19114"/>
- <Object id="rtav 723" height="60" visible="1"/>
- <Object id="automation 745" height="60" visible="0"/>
- <Object id="automation 732" height="60" visible="0"/>
- <Object id="route 755" color="10467:1647:25863"/>
- <Object id="rtav 755" height="60" visible="1"/>
- <Object id="automation 777" height="60" visible="0"/>
- <Object id="automation 764" height="60" visible="0"/>
- <Object id="route 787" color="29492:19635:23502"/>
- <Object id="rtav 787" height="60" visible="1"/>
- <Object id="automation 809" height="60" visible="0"/>
- <Object id="automation 796" height="60" visible="0"/>
- <Object id="route 819" color="30507:6798:5469"/>
- <Object id="rtav 819" height="60" visible="1"/>
- <Object id="automation 841" height="60" visible="0"/>
- <Object id="automation 828" height="60" visible="0"/>
- <Object id="route 851" color="20400:45150:38201"/>
- <Object id="rtav 851" height="60" visible="1"/>
- <Object id="automation 873" height="60" visible="0"/>
- <Object id="automation 860" height="60" visible="0"/>
- <Object id="route 883" color="1406:32657:33077"/>
- <Object id="rtav 883" height="60" visible="1"/>
- <Object id="automation 905" height="60" visible="0"/>
- <Object id="automation 892" height="60" visible="0"/>
- <Object id="route 915" color="833:18000:29718"/>
- <Object id="rtav 915" height="60" visible="1"/>
- <Object id="automation 937" height="60" visible="0"/>
- <Object id="automation 924" height="60" visible="0"/>
- <Object id="route 947" color="4072:12746:42501"/>
- <Object id="rtav 947" height="60" visible="1"/>
- <Object id="automation 969" height="60" visible="0"/>
- <Object id="automation 956" height="60" visible="0"/>
- <Object id="route 979" color="22618:30211:41958"/>
- <Object id="rtav 979" height="60" visible="1"/>
- <Object id="automation 1001" height="60" visible="0"/>
- <Object id="automation 988" height="60" visible="0"/>
- <Object id="route 1011" color="5804:37167:7244"/>
- <Object id="rtav 1011" height="60" visible="1"/>
- <Object id="automation 1033" height="60" visible="0"/>
- <Object id="automation 1020" height="60" visible="0"/>
- <Object id="route 1043" color="33750:44634:30311"/>
- <Object id="rtav 1043" height="60" visible="1"/>
- <Object id="automation 1065" height="60" visible="0"/>
- <Object id="automation 1052" height="60" visible="0"/>
- <Object id="route 1075" color="15317:22497:40778"/>
- <Object id="rtav 1075" height="60" visible="1"/>
- <Object id="automation 1097" height="60" visible="0"/>
- <Object id="automation 1084" height="60" visible="0"/>
- <Object id="strip 83" visible="1">
- <Object id="processor 103"/>
- </Object>
- <Object id="strip 115" visible="1">
- <Object id="processor 135"/>
- </Object>
- <Object id="strip 147" visible="1">
- <Object id="processor 167"/>
- </Object>
- <Object id="strip 179" visible="1">
- <Object id="processor 199"/>
- </Object>
- <Object id="strip 211" visible="1">
- <Object id="processor 231"/>
- </Object>
- <Object id="strip 243" visible="1">
- <Object id="processor 263"/>
- </Object>
- <Object id="strip 275" visible="1">
- <Object id="processor 295"/>
- </Object>
- <Object id="strip 307" visible="1">
- <Object id="processor 327"/>
- </Object>
- <Object id="strip 339" visible="1">
- <Object id="processor 359"/>
- </Object>
- <Object id="strip 371" visible="1">
- <Object id="processor 391"/>
- </Object>
- <Object id="strip 403" visible="1">
- <Object id="processor 423"/>
- </Object>
- <Object id="strip 435" visible="1">
- <Object id="processor 455"/>
- </Object>
- <Object id="strip 467" visible="1">
- <Object id="processor 487"/>
- </Object>
- <Object id="strip 499" visible="1">
- <Object id="processor 519"/>
- </Object>
- <Object id="strip 531" visible="1">
- <Object id="processor 551"/>
- </Object>
- <Object id="strip 563" visible="1">
- <Object id="processor 583"/>
- </Object>
- <Object id="strip 595" visible="1">
- <Object id="processor 615"/>
- </Object>
- <Object id="strip 627" visible="1">
- <Object id="processor 647"/>
- </Object>
- <Object id="strip 659" visible="1">
- <Object id="processor 679"/>
- </Object>
- <Object id="strip 691" visible="1">
- <Object id="processor 711"/>
- </Object>
- <Object id="strip 723" visible="1">
- <Object id="processor 743"/>
- </Object>
- <Object id="strip 755" visible="1">
- <Object id="processor 775"/>
- </Object>
- <Object id="strip 787" visible="1">
- <Object id="processor 807"/>
- </Object>
- <Object id="strip 819" visible="1">
- <Object id="processor 839"/>
- </Object>
- <Object id="strip 851" visible="1">
- <Object id="processor 871"/>
- </Object>
- <Object id="strip 883" visible="1">
- <Object id="processor 903"/>
- </Object>
- <Object id="strip 915" visible="1">
- <Object id="processor 935"/>
- </Object>
- <Object id="strip 947" visible="1">
- <Object id="processor 967"/>
- </Object>
- <Object id="strip 979" visible="1">
- <Object id="processor 999"/>
- </Object>
- <Object id="strip 1011" visible="1">
- <Object id="processor 1031"/>
- </Object>
- <Object id="strip 1043" visible="1">
- <Object id="processor 1063"/>
- </Object>
- <Object id="strip 1075" visible="1">
- <Object id="processor 1095"/>
- </Object>
- </GUIObjectState>
- </UI>
- </Extra>
-</Session>
diff --git a/libs/ardour/test/profiling/sessions/32tracks/32tracks.history.bak b/libs/ardour/test/profiling/sessions/32tracks/32tracks.history.bak
deleted file mode 100644
index 6dd2506a89..0000000000
--- a/libs/ardour/test/profiling/sessions/32tracks/32tracks.history.bak
+++ /dev/null
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<UndoHistory/>
diff --git a/libs/evoral/src/Sequence.cpp b/libs/evoral/src/Sequence.cpp
index 738d5a19c9..b56c234d75 100644
--- a/libs/evoral/src/Sequence.cpp
+++ b/libs/evoral/src/Sequence.cpp
@@ -257,7 +257,6 @@ Sequence<Time>::const_iterator::operator++()
throw std::logic_error("Attempt to iterate past end of Sequence");
}
- DEBUG_TRACE(DEBUG::Sequence, "Sequence::const_iterator++\n");
assert(_event && _event->buffer() && _event->size() > 0);
const MIDIEvent<Time>& ev = *((MIDIEvent<Time>*)_event.get());
@@ -378,30 +377,30 @@ Sequence<Time>::const_iterator::operator++()
// Set event to reflect new position
switch (_type) {
case NOTE_ON:
- DEBUG_TRACE(DEBUG::Sequence, "iterator = note on\n");
+ // DEBUG_TRACE(DEBUG::Sequence, "iterator = note on\n");
*_event = (*_note_iter)->on_event();
_active_notes.push(*_note_iter);
break;
case NOTE_OFF:
- DEBUG_TRACE(DEBUG::Sequence, "iterator = note off\n");
+ // DEBUG_TRACE(DEBUG::Sequence, "iterator = note off\n");
assert(!_active_notes.empty());
*_event = _active_notes.top()->off_event();
_active_notes.pop();
break;
case CONTROL:
- DEBUG_TRACE(DEBUG::Sequence, "iterator = control\n");
+ //DEBUG_TRACE(DEBUG::Sequence, "iterator = control\n");
_seq->control_to_midi_event(_event, *_control_iter);
break;
case SYSEX:
- DEBUG_TRACE(DEBUG::Sequence, "iterator = sysex\n");
+ //DEBUG_TRACE(DEBUG::Sequence, "iterator = sysex\n");
*_event = *(*_sysex_iter);
break;
case PATCH_CHANGE:
- DEBUG_TRACE(DEBUG::Sequence, "iterator = patch change\n");
+ //DEBUG_TRACE(DEBUG::Sequence, "iterator = patch change\n");
*_event = (*_patch_change_iter)->message (_active_patch_change_message);
break;
default:
- DEBUG_TRACE(DEBUG::Sequence, "iterator = end\n");
+ //DEBUG_TRACE(DEBUG::Sequence, "iterator = end\n");
_is_end = true;
}
@@ -1025,12 +1024,12 @@ Sequence<Time>::append_note_off_unlocked (NotePtr note)
_edited = true;
- #ifdef PERCUSSIVE_IGNORE_NOTE_OFFS
+#ifdef PERCUSSIVE_IGNORE_NOTE_OFFS
if (_percussive) {
DEBUG_TRACE(DEBUG::Sequence, "Sequence Ignoring note off (percussive mode)\n");
return;
}
- #endif
+#endif
bool resolved = false;
@@ -1073,7 +1072,7 @@ template<typename Time>
void
Sequence<Time>::append_control_unlocked(const Parameter& param, Time time, double value, event_id_t /* evid */)
{
- DEBUG_TRACE (DEBUG::Sequence, string_compose ("%1 %2 @ %3\t=\t%4 # controls: %5\n",
+ DEBUG_TRACE (DEBUG::Sequence, string_compose ("%1 %2 @ %3 = %4 # controls: %5\n",
this, _type_map.to_symbol(param), time, value, _controls.size()));
boost::shared_ptr<Control> c = control(param, true);
c->list()->add (time, value);
diff --git a/libs/pbd/dmalloc.cc b/libs/pbd/dmalloc.cc
deleted file mode 100644
index 0e730946c8..0000000000
--- a/libs/pbd/dmalloc.cc
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * file that facilitates C++ program debugging.
- *
- * Copyright 1995 by Gray Watson
- *
- * This file is part of the dmalloc package.
- *
- * Permission to use, copy, modify, and distribute this software for any
- * NON-COMMERCIAL purpose and without fee is hereby granted, provided
- * that the above copyright notice and this permission notice appear
- * in all copies, and that the name of Gray Watson not be used in
- * advertising or publicity pertaining to distribution of the document
- * or software without specific, written prior permission.
- *
- * Please see the PERMISSIONS file or contact the author for information
- * about commercial licenses.
- *
- * Gray Watson makes no representations about the suitability of the
- * software described herein for any purpose. It is provided "as is"
- * without express or implied warranty.
- *
- * The author may be contacted via http://www.letters.com/~gray/
- *
- * $Id$
- */
-
-/*
- * This file is used to effectively redirect new to the more familiar
- * malloc and delete to the more familiar free so they can be debugged
- * with the debug malloc library.. They also give the known error
- * behavior, too.
- *
- * Compile and link this in with the C++ program you want to debug.
- *
- * NOTE: I am not a C++ hacker so feedback in the form of other hints
- * and ideas for C++ users would be much appreciated.
- */
-
-#ifdef DEBUG_MALLOC
-
-extern "C" {
-#include <stdlib.h>
-#include <dmalloc.h>
-#include "/usr/local/src/dmalloc-4.1.2/return.h"
-}
-
-/*
- * An overload function for the C++ new.
- */
-void *
-operator new(size_t size)
-{
- char *file;
- GET_RET_ADDR(file);
-
- /* handle correct C++ semantics for an alloc of size 0 */
-
- if (size == 0) size = 1;
-
- return _malloc_leap(file, 0, size);
-}
-
-/*
- * An overload function for the C++ new[].
- */
-void *
-operator new[](size_t size)
-{
- char *file;
- GET_RET_ADDR(file);
-
- /* handle correct C++ semantics for an alloc of size 0 */
-
- if (size == 0) size = 1;
-
- return _malloc_leap(file, 0, size);
-}
-
-/*
- * An overload function for the C++ delete.
- */
-void
-operator delete(void *pnt)
-{
- char *file;
- GET_RET_ADDR(file);
- _free_leap(file, 0, pnt);
-}
-
-/*
- * An overload function for the C++ delete[]. Thanks to Jens Krinke
- * <j.krinke@gmx.de>
- */
-void
-operator delete[](void *pnt)
-{
- char *file;
- GET_RET_ADDR(file);
- _free_leap(file, 0, pnt);
-}
-
-#endif
diff --git a/libs/pbd/pbd/fastlog.h b/libs/pbd/pbd/fastlog.h
index 9897da773a..f64ad996cf 100644
--- a/libs/pbd/pbd/fastlog.h
+++ b/libs/pbd/pbd/fastlog.h
@@ -1,6 +1,10 @@
-/* Copyright unknown. Code by Laurent de Soras <laurent@ohmforce.com>.
- */
+/*
+Copyright © 2013 Laurent de Soras <laurent.de.soras@free.fr>
+This work is free. You can redistribute it and/or modify it under the
+terms of the Do What The Fuck You Want To Public License, Version 2,
+as published by Sam Hocevar. See http://www.wtfpl.net/ for more details.
+*/
#ifndef __pbd_fastlog_h__
#define __pbd_fastlog_h__
diff --git a/libs/pbd/wscript b/libs/pbd/wscript
index 4d0c09f410..64dd2a332f 100644
--- a/libs/pbd/wscript
+++ b/libs/pbd/wscript
@@ -43,7 +43,6 @@ libpbd_sources = [
'debug.cc',
'enumwriter.cc',
'event_loop.cc',
- 'dmalloc.cc',
'enums.cc',
'epa.cc',
'error.cc',
diff --git a/libs/surfaces/powermate/README b/libs/surfaces/powermate/README
deleted file mode 100644
index d786b1d898..0000000000
--- a/libs/surfaces/powermate/README
+++ /dev/null
@@ -1,21 +0,0 @@
-
-This module works with the Griffin Powermate and allows some basic transport control.
-
-It autodetects the Powermate on any input device of the form "/dev/input/event*". This means you must have the powermate module in your kernel. It works out-of-the-box with 64Studio and presumably lots of other modern distributions.
-
-Turning the wheel left and right will act as a "Shuttle" wheel, adjusting playback speed up and down
-Pushing the knob will switch between play and stop
-Pushing the knob while turning will jump to the next or previous markers
-
-
-In order for the powermate to work, you have to have permission to open the input device for reading.
-In debian, I changed /etc/udev/rules.d/0_permissions.rules to have the line:
-KERNEL=="event[0-9]*", MODE="0666"
-but there are other ways to achieve this
-
-
-Feedback, tweaks, bug fixes and feature ideas are encouraged
-
--Ben Loftis, ben@benloftis.com
-
- \ No newline at end of file
diff --git a/libs/surfaces/powermate/i18n.h b/libs/surfaces/powermate/i18n.h
deleted file mode 100644
index dcbbfcf52e..0000000000
--- a/libs/surfaces/powermate/i18n.h
+++ /dev/null
@@ -1,16 +0,0 @@
-#ifndef __i18n_h__
-#define __i18n_h__
-
-#include "pbd/compose.h"
-#include "pbd/convert.h"
-#include "gettext.h"
-
-#include <vector>
-#include <string>
-
-#define _(Text) dgettext (PACKAGE,Text)
-#define N_(Text) gettext_noop (Text)
-#define X_(Text) Text
-#define I18N(Array) PBD::internationalize (PACKAGE, Array)
-
-#endif // __i18n_h__
diff --git a/libs/surfaces/powermate/interface.cc b/libs/surfaces/powermate/interface.cc
deleted file mode 100644
index 02ddf97722..0000000000
--- a/libs/surfaces/powermate/interface.cc
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- Ardour9pin interface file
- Ben Loftis
- Created: 05/18/06 11:07:56
- Copyright Harrison Audio, LLC, 2007
-*/
-
-#include "powermate.h"
-
-using namespace ARDOUR;
-
-ControlProtocol*
-new_powermate_protocol (ControlProtocolDescriptor* /*descriptor*/, Session* s)
-{
- PowermateControlProtocol* pcp = new PowermateControlProtocol (*s);
-
- if (pcp->set_active (true)) {
- delete pcp;
- return 0;
- }
-
- return pcp;
-
-}
-
-void
-delete_powermate_protocol (ControlProtocolDescriptor* /*descriptor*/, ControlProtocol* cp)
-{
- delete cp;
-}
-
-bool
-probe_powermate_protocol (ControlProtocolDescriptor* /*descriptor*/)
-{
- return PowermateControlProtocol::probe ();
-}
-
-static ControlProtocolDescriptor powermate_descriptor = {
- name : "powermate",
- id : "uri://ardour.org/ardour/powermate:0",
- ptr : 0,
- module : 0,
- mandatory : 0,
- supports_feedback : false,
- probe : probe_powermate_protocol,
- initialize : new_powermate_protocol,
- destroy : delete_powermate_protocol
-};
-
-
-extern "C" {
-ControlProtocolDescriptor*
-protocol_descriptor () {
- return &powermate_descriptor;
-}
-}
-
diff --git a/libs/surfaces/powermate/powermate.cc b/libs/surfaces/powermate/powermate.cc
deleted file mode 100644
index 0475603a51..0000000000
--- a/libs/surfaces/powermate/powermate.cc
+++ /dev/null
@@ -1,258 +0,0 @@
-/*
- powermate.cc
- Ben Loftis
- Created: 03/26/07 20:07:56
-*/
-
-
-#include <linux/input.h>
-#include <cstring>
-#include <cerrno>
-#include <cstdio>
-#include <unistd.h>
-#include <fcntl.h>
-
-#include <glibmm.h>
-
-#include "pbd/pthread_utils.h"
-#include "pbd/xml++.h"
-#include "pbd/error.h"
-
-#include "ardour/debug.h"
-
-#include "powermate.h"
-#include "i18n.h"
-
-using namespace ARDOUR;
-using namespace std;
-using namespace sigc;
-using namespace PBD;
-
-#define NUM_VALID_PREFIXES 2
-
-static const char *valid_prefix[NUM_VALID_PREFIXES] = {
- "Griffin PowerMate",
- "Griffin SoundKnob"
-};
-
-#define NUM_EVENT_DEVICES 16
-
-int open_powermate (const char *dev, int mode)
-{
- if (!Glib::file_test (dev, Glib::FILE_TEST_EXISTS)) {
- return -1;
- }
-
- int fd = open(dev, mode);
- int i;
- char name[255];
-
- if (fd < 0) {
- if (errno != EACCES) {
- error << string_compose ("Unable to open \"%1\": %2", dev, strerror(errno)) << endmsg;
- }
- return -1;
- }
-
- /* placate valgrind */
- name[0] = '\0';
-
- if (ioctl (fd, EVIOCGNAME (sizeof(name)), name) < 0) {
- error << string_compose ("\"%1\": EVIOCGNAME failed: %2", dev, strerror(errno)) << endmsg;
- close (fd);
- return -1;
- }
-
- // it's the correct device if the prefix matches what we expect it to be:
- for (i = 0; i < NUM_VALID_PREFIXES; ++i) {
- if (!strncasecmp (name, valid_prefix[i], strlen (valid_prefix[i]))) {
- return fd;
- }
- }
-
- close (fd);
- return -1;
-}
-
-int find_powermate(int mode)
-{
- char devname[256];
- int i, r;
-
- for (i = 0; i < NUM_EVENT_DEVICES; i++) {
- sprintf (devname, "/dev/input/event%d", i);
- r = open_powermate (devname, mode);
- if (r >= 0) {
- return r;
- }
- }
-
- return -1;
-}
-
-PowermateControlProtocol::PowermateControlProtocol (Session& s)
- : ControlProtocol (s, "powermate")
-{
-}
-
-PowermateControlProtocol::~PowermateControlProtocol ()
-{
- set_active (false);
-}
-
-bool
-PowermateControlProtocol::probe ()
-{
- int port = find_powermate( O_RDONLY );
-
- if (port < 0) {
- if (errno == ENOENT) {
- DEBUG_TRACE (DEBUG::ControlProtocols, "Powermate device not found; perhaps you have no powermate connected");
- } else {
- DEBUG_TRACE (DEBUG::ControlProtocols, string_compose ("powermate: Opening of powermate failed - %1\n", strerror(errno)));
- }
- return false;
- }
-
- close (port);
- return true;
-}
-
-int
-PowermateControlProtocol::set_active (bool inActivate)
-{
- if (inActivate != _active) {
-
- if (inActivate) {
-
- mPort = find_powermate(O_RDONLY);
-
- if ( mPort < 0 ) {
- return -1;
- }
-
- if (pthread_create_and_store ("Powermate", &mThread, SerialThreadEntry, this) == 0) {
- _active = true;
- } else {
- return -1;
- }
-
- printf("Powermate Control Protocol activated\n");
-
- } else {
- pthread_cancel (mThread);
- close (mPort);
- _active = false;
- printf("Powermate Control Protocol deactivated\n");
- }
- }
-
- return 0;
-}
-
-XMLNode&
-PowermateControlProtocol::get_state ()
-{
- XMLNode* node = new XMLNode (X_("Protocol"));
- node->add_property (X_("name"), _name);
- return *node;
-}
-
-int
-PowermateControlProtocol::set_state (const XMLNode& /*node*/, int /*version*/)
-{
- return 0;
-}
-
-
-void*
-PowermateControlProtocol::SerialThreadEntry (void* arg)
-{
- static_cast<PowermateControlProtocol*>(arg)->register_thread ("Powermate");
- return static_cast<PowermateControlProtocol*>(arg)->SerialThread ();
-}
-
-#define BUFFER_SIZE 32
-
-bool held = false;
-bool skippingMarkers = false;
-
-void
-PowermateControlProtocol::ProcessEvent(struct input_event *ev)
-{
-#ifdef VERBOSE
- fprintf(stderr, "type=0x%04x, code=0x%04x, value=%d\n",
- ev->type, ev->code, (int)ev->value);
-#endif
-
- switch(ev->type){
- case EV_MSC:
- printf("The LED pulse settings were changed; code=0x%04x, value=0x%08x\n", ev->code, ev->value);
- break;
- case EV_REL:
- if(ev->code != REL_DIAL)
- fprintf(stderr, "Warning: unexpected rotation event; ev->code = 0x%04x\n", ev->code);
- else{
- if (held) {
- //click and hold to skip forward and back by markers
- skippingMarkers = true;;
- if (ev->value > 0)
- next_marker();
- else
- prev_marker();
- } else {
- //scale the range so that we can go from +/-8x within 180 degrees, with less precision at the higher speeds
- float speed = get_transport_speed();
- speed += (float)ev->value * 0.05;
- if (speed > 1.5 || speed < -1.5 )
- speed += ev->value;
- set_transport_speed( speed );
- }
- }
- break;
- case EV_KEY:
- if(ev->code != BTN_0)
- fprintf(stderr, "Warning: unexpected key event; ev->code = 0x%04x\n", ev->code);
- else
- if (ev->value)
- held = true;
- else {
- held = false;
- if (skippingMarkers) {
- skippingMarkers = false;
- } else {
- if (get_transport_speed() == 0.0) {
- set_transport_speed(1.0);
- } else {
- set_transport_speed(0.0);
- }
- }
- }
- break;
- }
-
- fflush(stdout);
-}
-
-void*
-PowermateControlProtocol::SerialThread ()
-{
- struct input_event ibuffer[BUFFER_SIZE];
- int r, events, i;
-
- while(1){
- r = read(mPort, ibuffer, sizeof(struct input_event) * BUFFER_SIZE);
- if( r > 0 ){
- events = r / sizeof(struct input_event);
- for(i=0; i<events; i++)
- ProcessEvent(&ibuffer[i]);
- }else{
- fprintf(stderr, "read() failed: %s\n", strerror(errno));
- return (void*) 0;
- }
- }
-
- return (void*) 0;
-}
-
-
diff --git a/libs/surfaces/powermate/powermate.h b/libs/surfaces/powermate/powermate.h
deleted file mode 100644
index b8fd2b5789..0000000000
--- a/libs/surfaces/powermate/powermate.h
+++ /dev/null
@@ -1,34 +0,0 @@
-#ifndef ardour_powermate_h
-#define ardour_powermate_h
-
-#include <sys/time.h>
-#include <pthread.h>
-
-#include "control_protocol/control_protocol.h"
-
-class PowermateControlProtocol : public ARDOUR::ControlProtocol
-{
- public:
- PowermateControlProtocol (ARDOUR::Session&);
- virtual ~PowermateControlProtocol();
-
- int set_active (bool yn);
- static bool probe ();
-
- XMLNode& get_state ();
- int set_state (const XMLNode&, int version);
-
- private:
-
- static void* SerialThreadEntry (void* arg);
- void* SerialThread ();
-
- void ProcessEvent(struct input_event *ev);
-
- int mPort;
- pthread_t mThread;
-
-};
-
-
-#endif
diff --git a/libs/surfaces/powermate/wscript b/libs/surfaces/powermate/wscript
deleted file mode 100644
index fb97607169..0000000000
--- a/libs/surfaces/powermate/wscript
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/usr/bin/env python
-from waflib.extras import autowaf as autowaf
-import os
-
-# Library version (UNIX style major, minor, micro)
-# major increment <=> incompatible changes
-# minor increment <=> compatible changes (additions)
-# micro increment <=> no interface changes
-LIBARDOUR_POWERMATE_LIB_VERSION = '4.1.0'
-
-# Mandatory variables
-top = '.'
-out = 'build'
-
-def options(opt):
- autowaf.set_options(opt)
-
-def configure(conf):
- autowaf.configure(conf)
-
-def build(bld):
- obj = bld(features = 'cxx cxxshlib')
- obj.source = '''
- interface.cc
- powermate.cc
- '''
- obj.export_includes = ['.']
- obj.cxxflags = '-DPACKAGE="ardour_powermate"'
- obj.includes = ['.' ]
- obj.name = 'libpowermate'
- obj.target = 'powermate'
- obj.use = 'libardour libardour_cp'
- obj.vnum = LIBARDOUR_POWERMATE_LIB_VERSION
- obj.install_path = os.path.join(bld.env['LIBDIR'], 'ardour3', 'surfaces')
-
-def shutdown():
- autowaf.shutdown()
diff --git a/libs/surfaces/wscript b/libs/surfaces/wscript
index 20ad07d60f..3a4b562629 100644
--- a/libs/surfaces/wscript
+++ b/libs/surfaces/wscript
@@ -25,7 +25,6 @@ children = [
'generic_midi',
'mackie',
'osc',
- 'powermate',
'tranzport',
'wiimote'
]
@@ -48,7 +47,6 @@ def configure(conf):
#if Options.options.tranzport and conf.is_defined('HAVE_USB'):
# conf.define('BUILD_TRANZPORT', 1)
- conf.check_cc (header_name='linux/input.h', define_name='BUILD_POWERMATE',mandatory=False)
autowaf.check_pkg (conf, 'liblo', mandatory=False, uselib_store="LO", atleast_version="0.24")
conf.check_cc (header_name='cwiid.h', define_name='HAVE_CWIID_H',mandatory=False)
@@ -68,8 +66,6 @@ def build(bld):
bld.recurse('mackie')
if bld.is_defined ('HAVE_LO'):
bld.recurse('osc')
- if bld.is_defined('BUILD_POWERMATE'):
- bld.recurse('powermate')
if bld.is_defined('BUILD_WIIMOTE'):
bld.recurse('wiimote')
if bld.is_defined('BUILD_TRANZPORT'):
diff --git a/tools/osx_packaging/osx_build b/tools/osx_packaging/osx_build
index d750674d36..af582ff3bf 100755
--- a/tools/osx_packaging/osx_build
+++ b/tools/osx_packaging/osx_build
@@ -62,9 +62,13 @@ while [ $# -gt 0 ] ; do
esac
done
-#release_version=`grep -m 1 '[^A-Za-z_]OSX_VERSION = ' ../../wscript | cut -d' ' -f 3 | sed "s/'//g"`
-release_version=3.0
-revision=`grep -m 1 'revision =' ../../libs/ardour/revision.cc | cut -d' ' -f 8 | sed 's/[^0-9]//g'`
+if test -z "$PRODUCT_PKG_DIR" -o -z "$APPNAME"; then
+ echo "application or product-name was not specified"
+ exit 1
+fi
+
+release_version=`grep -m 1 '[^A-Za-z_]OSX_VERSION = ' ../../wscript | cut -d"'" -f2`
+revision=`grep -m 1 'revision =' ../../libs/ardour/revision.cc | cut -d'"' -f 2 | sed 's/^.*-//g'`
echo "Version is $release_version / $revision"
info_string="$release_version/$revision built on `hostname` by `whoami` on `date`"
echo "Info string is $info_string"