note that this type is also declared by the GTK2 GUI, and at runtime that was the definition being
used, which leads to crashes due to differences in the type definition.
The usable length is based on data in the file, or the follow length, whichever
is smaller, as appropriate. The end of the clip (which could be stretched) is
not relevant to this length.
This will allow, theoretically, multiple instances of an OSC surface.
The osccontrollable.{cc,h} code is not used anywhere in the rest of the surface
support, and so was removed from the library but left in the repository
PortAudio can now successfully be used with Ardour when building on
Windows/MSYS. This will not work with MSYS packaged PortAudio, it
doesn't come with ASIO. You must build from source.
Glib::thread_init has been deprecated since 2.32,ib
is no longer necessary and no longer has any effect.
This fixes builds with modern glib[mm] versions, notably
with msys2 in Windows.
We cannot extend this to gtkmm2ext base classes yet, because there a 1-way
dependency between libs/widgets and libs/gtkmm2ext. May have to move
UIConfigurationBase into gtkmm2ext to allow that
The clause that was added in b65fe35f67 to allow passing
FQN including .ardour suffix on the comandline.
As side-effect this prevented loading sessions that were named
after a folder inside the session-bundle. e.g. "plugin" or
"interchage" or "dead" etc.
This happens when reimporting a MIDI file taken from Ardour, which
has sequencer specific data (namely, note-IDs). In that case
SMF::read_event() returns zero to indicate a meta event that we
should or could be interested in. For import, we are not interested,
hence the ignored_note_id variable
This would realloc a buffer for every event, making it absurdly slow for
large MIDI files (say, 10k events). Use the somewhat standard heuristic
of doubling the requested allocation every time we need to increase the size.
This results in a speedup of 40-100x when saving SMF to disk