Commit Graph

20530 Commits

Author SHA1 Message Date
32ef2d5a0f temporal: add a music-time (BBT) point at the cut site 2023-08-25 17:39:00 -06:00
4d8ba938f1 temporal: during cut(), break out of loop once we pass the end time 2023-08-25 17:39:00 -06:00
848f74d803
MCU/UF8: Fix issue with windows build
Enable Surface, show GUI, disable surface. repeat.
Previously this cased a crash in glibmm:

The type name `glibmm__CustomBoxed_N13ArdourSurface6NS_UF86Button2IDE'
has been registered already.
2023-08-25 21:08:14 +02:00
c6b43155bc gain-like automation controls need to use the right limits for group value setting 2023-08-25 12:23:44 -06:00
4f7bd872be
MCU/UF8: use dedicated ctrl-protocol 2023-08-25 18:12:35 +02:00
c0366a5f13
MCU/UF8: Continued work to special case Mackie surface
* Use dedicated port-names for UFx
* Do not show SSL-UFx device-info files in MCU
* Fix Window namespacing/missing symbols
* Address Windows ambiguous symbols (Button, Surface)
  Those used to have a Mackie:: prefix, now they need
  MACKIE_NAMESPACE

When re-opening the GUI, there is still a somewha mysterious warning:
```
glibmm-WARNING **: file value_custom.cc: (Glib::custom_boxed_type_register): The type name `glibmm__CustomBoxed_N13ArdourSurface6NS_UF86Button2IDE' has been registered already.
```
2023-08-25 18:09:27 +02:00
70a4f29c59
Fix location ripple when cutting locations 2023-08-25 04:01:58 +02:00
f38a984396
Fix deadlock when undoing Location removal 2023-08-25 03:36:04 +02:00
efcef70d9a
Ensure that fatal does exit
Previously it was possible to just press "Esc" which closes the
dialog with Gtk::RESPONSE_DELETE_EVENT and Ardour continues
to run (and may or may not crash later).
2023-08-24 20:00:45 +02:00
ec365820d8
MCU/UF8: reuse and special-case Mackie ctrl surface for SSL-UF8
This adds a unique namespace to the MCU source code, so it can be
compiled multiple times resulting in different ctrl surfaces.
2023-08-24 19:19:10 +02:00
e3297a6a84
Fix MIDI deinterlace #9422
De-interlace works by first creating 16 SMF Sources, and then
only using sources that are actually required.

However SourceFactory::createWritable by default emits SourceCreated,
which added all the 16 Sources to the Session. Later adding only the
required Sources resulted in duplicate IDs.
2023-08-22 19:00:58 +02:00
dd4e5dfc96
Build-system: remove duplicate dis/en/able options
e.g. we had both --vst3 (default) and --no-vst3.
A user could specify both, which is confusing.
2023-08-21 19:25:26 +02:00
e9be3beb2a add get/set state methods to TimeDomainProvider
These are not used yet, because only the Session really acts as a Provider
and it uses the Config::default_time_domain to serialize that state
2023-08-16 16:33:17 -06:00
0227eab138 remove unused source file 2023-08-16 12:33:09 -06:00
c5a0c0f6e0 remove some debug output 2023-08-16 09:33:16 -06:00
0e40f030ad reversible domain swaps for Locations 2023-08-16 09:32:41 -06:00
06e9bf6ca4 domain swaps for MIDI CC and other controls 2023-08-16 09:06:10 -06:00
b240423e50 session: add API to get access to the current reversible command (if any) 2023-08-16 09:04:22 -06:00
f7fd015cb3 no, really, no Pitches handling (extends previous commit) 2023-08-15 11:29:52 -06:00
4246009864 no need for domain bouncing for "pitches" in a MIDI model
The Pitches representation is just an optimization in Evoral::Sequence, and just
represents note data differently
2023-08-15 11:25:54 -06:00
a50f38d164 domain bounce handling for sysex and patch changes 2023-08-15 10:27:21 -06:00
f92dcfa068 domain bouncing for Automatable/ControlLists 2023-08-15 08:34:42 -06:00
457b94ba65 fix computation of note length after tempo mapping 2023-08-15 00:04:19 -06:00
71d27e7d81 add a couple of #warnings 2023-08-14 23:42:08 -06:00
076cb86912 next iteration of changes to handle time domain bounces as undoable 2023-08-14 23:42:08 -06:00
fd5dfe27c5
region groups: some operations should implicitly group new regions
* imported regions
* newly-recorded regions
* regions that result from a Split or Separate
* pasted regions
2023-08-10 16:55:25 +02:00
d1ee95e886
region groups: use group-id instead of equivalent-region, when provided 2023-08-10 16:55:25 +02:00
8cd69a633b
region groups: save and restore the group-id counter for this session 2023-08-10 16:55:25 +02:00
1d5ec57794
region groups: define an API in region.h for grouped regions 2023-08-10 16:55:20 +02:00
92fbee6312 do not abort when handling a region whose length has the wrong time domain 2023-08-07 16:36:11 -06:00
e7c35cf601 API change for the start of making tempo mapping undoable 2023-08-07 16:33:16 -06:00
0223be5312 pbd: fairly unconscionable that Undo stuff in libpbd is not namespaced, so now it is 2023-08-07 16:33:16 -06:00
6b34578dfd minor fix for previous commit (this change is still pending) 2023-08-07 16:33:16 -06:00
afe5331a0b pbd: fairly unconscionable that Command in libpbd is not namespaced, so now it is 2023-08-07 16:33:16 -06:00
47a7a16c43 temporal: move another domain-swapping object to the right header 2023-08-07 16:33:16 -06:00
d87b10037b temporal: new object to try to make domain swaps undo-able 2023-08-07 16:33:16 -06:00
52c8a23aff
Add Lua bindings to print plugin control outputs 2023-08-06 21:58:33 +02:00
d035cb0834 some minor cleanups after rebase against master 2023-08-02 17:21:56 -06:00
ada7fc16aa temporal: another place to ensure that a BBT marker defines a beat position 2023-08-02 15:23:43 -06:00
ca348ce0d9 temporal: add TempoMap::replace_bartime() 2023-08-02 15:23:43 -06:00
206f7d3c40 fix compilation errors (last commit happened too early) 2023-08-02 15:23:43 -06:00
aa0e882c5f regions: force position time domain when a region is added to a playlist
Q: why not length time domain also?
2023-08-02 15:23:43 -06:00
1fd5f0d9e9 regions: attempt to prevent accidental time domain changes to length or position 2023-08-02 15:23:43 -06:00
f1b8a98a62 remove debug output 2023-08-02 15:23:43 -06:00
638978c527 fix thinko with tracks-follow-session-time when creating stripable 2023-08-02 15:23:42 -06:00
3367c03353 use tracks-follow-session-time option 2023-08-02 15:23:42 -06:00
08683674ce remove glue-new-regions-to-beats option, add new tracks follow session time option 2023-08-02 15:23:42 -06:00
3d64972ca2 libardour support for propagating track time domain changes into playlists and thence regions 2023-08-02 15:23:42 -06:00
7fe3becf2d temporal: fix TimeDomainProvider::set_time_domain_parent() to unset have_domain 2023-08-02 15:23:42 -06:00
71953a9929 locations: ensure they follow session time when start/end is set 2023-08-02 15:23:42 -06:00