Commit graph

20837 commits

Author SHA1 Message Date
Robin Gareus
bbbd023895
Add flag to hide internal plugins from user 2023-11-09 02:01:54 +01:00
Robin Gareus
5b77e348e7
Allow to clear LV2 plugin scan info 2023-11-09 02:01:14 +01:00
Paul Davis
9e4a695689 temporal: fix error in computation of timecnt_t::end() for specific conditions
parens were in the wrong place - we need to add the ::magnitude() of
the tick-based duration AFTER conversion of audio-time position to beats, not
before.
2023-11-06 20:38:08 -07:00
Paul Davis
58652f6268 launchpad pro: use "first fader" concept from lpx
we control the CC number sent by launchpad faders, and 0x20 is too large
because it causes the faders to overlap with some of the CC values
sent by RHS pads. Parametize the first fader and use it everywhere
2023-11-06 12:33:36 -07:00
Paul Davis
144756e602 launchpad: extend Dominik's LP Pro pad patch to LPX/Mini 2023-11-06 10:31:22 -07:00
dominik martinez
93a6849bdd lppro: Don't unbang trigger until pad is released
This was causing issues with cues when clips were set to gate triggering. A pad
long press was causing the clip to release. Additionally, remove an extra timer
that was being set.
2023-11-06 10:31:22 -07:00
Robin Gareus
3e8cde5ad6
Always allow playback w/o session-range 2023-11-06 16:49:46 +01:00
Paul Davis
3fc126b891 launchpads: add namespacing to make 1-source-2-surfaces work for X and Mini 2023-11-04 09:30:26 -06:00
Paul Davis
9b511ce973 launchpad: work on a single implementation for both Mini and X devices
This is not complete, because the symol names are identical, and there's no way (yet)
to ensure which versions Ardour will use if both are dynamically loaded.
2023-11-04 09:30:26 -06:00
Paul Davis
c4f8c84a75 region: in definition of ::end() use a slightly faster but entirely equivalent expression 2023-11-03 15:11:38 -06:00
Paul Davis
7d0b223330 region: end().decrement() IS nt_last(), so remove the explicit decrement call 2023-11-03 15:11:38 -06:00
Paul Davis
d309ab31e8 playlist partition_internal() uses exclusive end semantics
Do not pass "end-1" to it from Playlist::cut()
2023-11-03 15:11:38 -06:00
Robin Gareus
b27c804a7c
Prevent duplicate entries in recent session
This can happen with snapshots or after save-as with
.ardour session files having different "Names" in the same path.

Or simply by saving a session on macOS in /tmp (which is really
/private/tmp).
2023-11-01 23:17:47 +01:00
Paul Davis
53ad83c91c some extra debugging output for MerryIO to try to produce 2023-11-01 00:25:51 -06:00
Robin Gareus
a57076d203
Fix MIDI input monitoring without connections
This was seemingly accidentally committed in 07d7e0bf54.
MIDI Monitoring works now with MIDI devices that are not
connected to a Track or Bus.
2023-10-31 22:35:05 +01:00
Paul Davis
43c5f0ab46 launchpad X: 98% functionality 2023-10-31 09:56:40 -06:00
Paul Davis
dec9282110 midisurface: use correct virtual method for note off
This likely needs checking for all surfaces that inherit from MidiSurface. It is clearly
the correct thing to have in the code, but existing behavior might be predicated on
the former incorrect connection
2023-10-31 09:56:40 -06:00
Paul Davis
f45aec903b launchpad X: better general code design for Novation's use model 2023-10-31 09:56:40 -06:00
Paul Davis
e9858773ca launchpad X: change design of fader bank implementation to match the X way (not the Pro way) 2023-10-31 09:56:40 -06:00
Robin Gareus
6dd1ad24ab
IOPlug: implement reset to default values 2023-10-31 07:41:23 +01:00
Robin Gareus
eebc902564
Auditioner: fix stuck notes when auditioning different files
The MIDI Buffer is cleared when starting to process,
the panic message never made it to the plugin.
2023-10-31 02:17:05 +01:00
Robin Gareus
870172611f
Update message for relocated preference 2023-10-29 02:40:57 +01:00
Martin Vlk
562a6335de
Czech translation updates. 2023-10-29 02:41:18 +02:00
Paul Davis
638509738d launchpads: edge buttons are supposed to use CC not note messages
Apparently the LP Pro responds to either, but the LP X does not
2023-10-28 17:48:33 -06:00
Robin Gareus
49426a602f
Console1: Clean up previous commit 2023-10-28 23:04:39 +02:00
Holger Dehnhardt
03e3546422
Clean init process to prevent exceptions 2023-10-28 22:59:39 +02:00
Robin Gareus
828d45c6fa
Disambiguate In/Out etc for translations (2/2) #9512 2023-10-28 14:46:04 +02:00
Robin Gareus
bec4344546
Console1: leave some TODO notes for later 2023-10-27 21:23:33 +02:00
Robin Gareus
a5aff68053
Console1: remove unused dependencies 2023-10-27 21:23:33 +02:00
Robin Gareus
5cad7837fa
Console1: fix compiler warnings
For reasons unknown only the console1.h produces
 -Winconsistent-missing-override
warnings, other similar headers e.g. lppro.h do not.
2023-10-27 21:23:28 +02:00
Robin Gareus
68f55d62d0
Console1: cleanup, fix event loop initialization 2023-10-27 17:12:30 +02:00
Robin Gareus
cd5369c7cd
Unload VST3 modules when closing session
This is perhaps a better solution than b8551eed7e
and 8d0a655608 and 7942897d93. It is certainly less
fragile.

It is more consistent with other plugin standards,
where modules are closed with the last instance in a session.

Then again keeping the VST3 factory around is beneficial
when switching snapshots.

Discuss, and let's watch for issues when re-loading a
previously unloaded VST3 module.
2023-10-27 04:46:38 +02:00
Robin Gareus
49124ab987
Console1: properly shut down 2023-10-26 21:53:27 +02:00
Robin Gareus
61ec873481
Console1: another attempt to fix uncaught exeptions 2023-10-26 21:37:28 +02:00
Robin Gareus
85d9e333c9
Revert "Console1: catch some more uncaught exceptions"
This reverts commit 99e2546477.
2023-10-26 21:21:01 +02:00
Robin Gareus
53e24168b6
Partially revert "Clean init process to prevent exceptions"
This reverts commit 94fec7fd8a
except whitespace and intent changes as per discussion on
https://github.com/Ardour/ardour/pull/834
2023-10-26 21:20:06 +02:00
Robin Gareus
afc6c060a8
WebSockets: remove unsued variable after f34ce17bf0 2023-10-26 21:06:25 +02:00
Robin Gareus
b139bfdb88
VST3: add debug messages to trace ModuleExit 2023-10-25 00:37:03 +02:00
Paul Davis
f34ce17bf0 websocket: event loop names and thread/evloop pairs are set in BaseUI::main_thread()
There is no thread when an AbstractUI<T> is constructed. The event loop name and the
association between the event loop object and the thread that "runs" it must be
set from within the thread, which is not created until BaseUI::run() is called.

There appears to have been some confusion in e3569b64 about how this
all works; this commit should remove that
2023-10-24 16:26:50 -06:00
Hoger Dehnhardt
94fec7fd8a
Clean init process to prevent exceptions 2023-10-24 23:11:05 +02:00
Robin Gareus
1dbc3305fa
WebSockets: fix crash when switching snapshots #9506 2023-10-24 23:05:46 +02:00
Paul Davis
e0f543d8fb launchpad X: buttton/pad cleanup from the pro code
Edge button lighting is still not functional
2023-10-23 23:20:00 -06:00
Paul Davis
499912b07d get Launchpad X port names in the right order
Unlike the LP Pro, the "DAW" port comes first, not last
2023-10-23 17:45:41 -06:00
Paul Davis
ea02c49856 a better solution for the problem being addressed in b40513ff7 2023-10-22 17:31:29 -06:00
Paul Davis
b40513ff7d temporal: workaround (perhaps temporary) for rounding issues in ::midi_clock_beat_at_or_after() 2023-10-22 17:15:20 -06:00
Paul Davis
4228fce86b temporal: minor optimization for TempoMap::{tempo,meter}_at() to cover common case 2023-10-22 17:15:20 -06:00
Robin Gareus
d5d730ef8c
NO-OP: move implementation out of header file
This is in preparation to test directly flushing insert/send
buffers after Delivery::run like Ardour 7.4 to 8.0 does
see also 44a2ef9098
2023-10-22 00:17:08 +02:00
Robin Gareus
a59e64f1d8
Catch XDG_CONFIG_HOME is not an absolute path
see https://discourse.ardour.org/t/glib-converterror-arch-linux/109362
2023-10-22 00:14:24 +02:00
Robin Gareus
a7145661bc
NO-OP: cleanup after 44a2ef909 2023-10-21 15:40:12 +02:00
Paul Davis
4ca457bb9e use launchpad x icon 2023-10-19 23:46:58 -06:00