Commit Graph

38804 Commits

Author SHA1 Message Date
Nils Philippsen
e995daa375 Fix failure to build with libxml2 version 2.12
This declared some xmlError pointers const, which probably was always
assumed, but not made explicit.

Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2023-11-25 00:30:04 +01:00
253dcb312b make note joining code a bit cleaner and preserve note velocities 2023-11-24 09:29:31 -07:00
d6beba67dc note joining should occur per-channel 2023-11-24 08:32:28 -07:00
f95e94bc29 note tupling tweaks, and note join added
bindings moved to s/S and j, no need to use split-by-grid first

split-by-grid still needs work for non-grid aligned notes
2023-11-23 22:42:04 -07:00
438bd7a720
Import Dialog: clean up MIDI information 2023-11-23 18:35:56 +01:00
b92b2389fd make note-tupling work on multiple notes 2023-11-22 19:37:46 -07:00
fb930e8f47 add invalidator() calls to MixerStrip as it connects to ParameterChanged
when the surround bus is removed, it (probably erroneously) causes
changes to the I/O routing for the auditioner, which will be
delivered to anyone who cares via an RCConfiguration ParameterChanged
signal. This will be emitted from a non-GUI thread, and so will not
be handled synchronously. The GUI thread will first handle the notification
that the surround bus was deleted, and that will include deleting the
MixerStrip for the surround bus. But another call_slot() request will
be pending to notify the now-deleted MixerStrip about the auditioner change.

Adding invalidator() calls ensures that the deletion of the MixerStrip removes
all of these pending call_slot() requests.
2023-11-22 17:24:26 -07:00
c3d14b1169 basic note-tupling functionality implemented 2023-11-21 17:07:42 -07:00
7f779bb934 define new MIDI note splitting actions 2023-11-21 17:07:42 -07:00
3792bf86e4 MidiRegionView: stubs for new methods 2023-11-21 17:07:42 -07:00
0f170ec87b MidiRegionView: initialize new members 2023-11-21 17:07:42 -07:00
e39709863a add new state and methods to MidiRegionView for note splitting 2023-11-21 17:07:42 -07:00
71e049202c
Fix crash when clicking on region boundary box to start Drag
The box outlines a given region, the grab position may be earlier
than the region's position.

Previously this caused a crash (uncaught exception):

```gdb
__cxa_throw () at /lib/x86_64-linux-gnu/libstdc++.so.6
Temporal::timecnt_t::timecnt_t(Temporal::timecnt_t const&, Temporal::timepos_t const&) at ../libs/temporal/timeline.cc:79
RegionMoveDrag::setup_pointer_offset() at ../gtk2_ardour/editor_drag.cc:2226
```
2023-11-21 20:17:20 +01:00
f01f4eeded MIDI state tracking doesn't care about size 2023-11-20 21:40:12 -07:00
cb91334cc6 basic work to permit "MIDI catchup" for MIDI state at any point on the timeline
This currently does nothing and cannot be enabled
2023-11-20 21:32:49 -07:00
4647dd6b41 fix crash when freezing a track with > 1 region (#9539)
deleting regionviews changed the region selection, but the regionview
ptr had not been removed from the RegionViewList. The selection change signal
caused an iteration over the list, and manipulated the deleted regionview.
2023-11-20 19:13:22 -07:00
Mate Pušić
e010cf91b9
Fixed a typo 2023-11-20 20:04:27 +01:00
Albert Graef
8c38d8fbbc
raptor_arp: Fix looper bug reported in the Ardour forum by Schmitty2005. 2023-11-20 14:03:56 +01:00
Albert Graef
520ed0390e
Enable regular_block_length in all arpeggiators, to hopefully work around audio driver issues on Windows. 2023-11-20 14:03:19 +01:00
bea9215a0e
Remove noop include (deprecated, unused gtk header) 2023-11-19 20:28:48 +01:00
4d7c4bf183
Clearlooks: GtkCList is deprecated and not used by Ardour 2023-11-19 20:28:44 +01:00
da175cc2e8 temporal: remove TempoMap::insert_time() and use shift() instead
The former was incorrectly implemented, and the latter has already been tested more
in real life.

We should likely remove ::remove_time also and use shift() there too, but that
requires testing negative shifts more broadly.
2023-11-19 12:14:10 -07:00
Nils Philippsen
a33514e270 Make option to disable VST3 support consistent
Previously, the option was called "--vst3", yet disabled building
support for VST3 plugins (as described in the help string).

Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2023-11-17 22:23:58 +01:00
b76c3b11d9 when importing SMF tempo map, use copy&paste to keep position 2023-11-17 10:02:34 -07:00
e0d9970056 remove mistakenly retained stacktrace() call 2023-11-14 19:47:17 -07:00
7762fa47ea make an attempt to show note length with verbose cursor
Likely much more intelligent string formatting is needed to make this
actually useful to most people
2023-11-14 11:05:13 -07:00
f5af821aba startup: in the usual weird logic, mark startupFSM complete from startup_done()
this disconnects the startupFSM from signals it should no longer
handle, even if its existence continues as a leak (noted
elsewhere in the code).
2023-11-14 11:03:09 -07:00
729eb60de3 startupFSM: move definition of ::set_complete into source file
and also disconnect from Keyboard signal when called.
2023-11-14 11:02:08 -07:00
8e583f4c4c startup FSM: save connection to Keyboard::HideMightMeanQuit signal 2023-11-14 11:01:39 -07:00
5723c9bf9c temporal: slightly more debug info when computing quarters from superclock 2023-11-13 22:32:15 -07:00
04523dee97 temporal: NOOP reindent #ifdef'ed out code 2023-11-13 22:32:15 -07:00
ce4d1ffe51 temporal: after loading an old tempo map, reset it to compute omega etc. 2023-11-13 22:32:15 -07:00
fbc578fdb6 temporal: use "pulses" info from old tempo maps
Note: pulses are whole notes
2023-11-13 22:32:15 -07:00
f8d86c8d19 temporal: add a new ::set_tempo() method for use when loading older tempo maps 2023-11-13 22:32:15 -07:00
7be61b0909
Fix typo in 69c7db8595 2023-11-13 22:19:03 +01:00
5b7e008cad
Fix missing sources after cleanup/rec #9536
Ardour accidentally removed nascent source-files during cleanup.
This can lead to missing files when recording directly after a
cleanup.

This also ensures that there are no duplicates in the
dead-sources (file sources unused in the current snapshot) list.
2023-11-13 22:15:42 +01:00
69c7db8595
Add Mute button to recorder view 2023-11-13 00:08:38 +01:00
adb508b189 no-strobe behavior for varispeed blink 2023-11-11 10:11:30 -07:00
a5ac6e097e switch no-strobe from cmdline to UI config preference 2023-11-10 15:50:44 -07:00
cc5bd6c63a provide a (visible) UI preferences option for no-strobe 2023-11-10 14:33:39 -07:00
863ad01a90 no strobe for rec-enable buttons (all of them) 2023-11-10 11:18:17 -07:00
1b35d5824b remove non-existent method decl 2023-11-10 11:17:53 -07:00
9c5600ad87 no strobe for mixer ui meters 2023-11-10 10:56:03 -07:00
5e087864f6 no strobe for editor-visible meters 2023-11-10 10:55:44 -07:00
08af0fe04a no strobe for the transport peak meter 2023-11-10 10:54:54 -07:00
036596ba3f no-strobe changes for clocks 2023-11-10 10:37:07 -07:00
6b5b63240b fix missing inclusion of 's' in opts list 2023-11-10 10:21:28 -07:00
d60dae8cbe new command line flag to control strobe-like effects in the GUI 2023-11-10 10:18:58 -07:00
6b3eb55ff6
Fix Lua 1Hz timer signal (#9529) 2023-11-10 14:27:19 +01:00
db9e11d973
Hide internal plugins from users in the GUI 2023-11-09 02:02:43 +01:00