Paul Davis
a8c2585cdc
remove AudioEngine::destroy() calls from various test/util code
...
ARDOUR::cleanup() does this, and the engine must exist during port deregistration.
2023-06-30 12:58:43 -06:00
Paul Davis
bfa13ad714
temporal: reference time for BBT_Argument is always superclocks (GUI)
2023-06-30 12:10:50 -06:00
Paul Davis
3307dcfcb2
temporal: reference time for BBT_Argument is always superclocks
2023-06-30 12:10:50 -06:00
Paul Davis
16c9d91641
temporal: remove impossible get_tempo_and_meter (..., bbt, ...) method
2023-06-30 12:10:50 -06:00
Paul Davis
a591fb64a3
temporal: rework ::get_grid() to avoid get_tempo_and_meter (..., bbt, ...)
2023-06-30 12:10:50 -06:00
Paul Davis
3513debba8
temporal: NO-OP (tiny variable rename)
2023-06-30 12:10:50 -06:00
Paul Davis
d94382f8a3
another autofication
2023-06-30 12:10:50 -06:00
Robin Gareus
d0fe0993a7
LV2: allow to split cycles w/MIDI
...
See also 64e2f16e06
2023-06-30 17:46:05 +02:00
Robin Gareus
be3d3a6d00
LuaProc: allow plugin to prefer a regular block length
...
This equivalent to http://lv2plug.in/ns/ext/buf-size#coarseBlockLength
2023-06-30 17:21:49 +02:00
Robin Gareus
45b2791341
MidiStateTracker micro-optimization
...
This replaces 128 multiplications in each inner loop with
a single bit-shift.
2023-06-30 17:12:16 +02:00
Robin Gareus
b51cf0ed95
Plugin: fix additive note resolution
...
When stopping transport in the middle of a note, each plugin
will resolve the note, resulting in multiple duplicate note-off
events.
2023-06-30 17:12:16 +02:00
Robin Gareus
71d45286f4
LuaProc: sort MIDI events
...
This allows plugins to produce an unsorted list of events.
see also https://discourse.ardour.org/t/lua-arpeggiator-plugin-anyone/108862/64?u=x42
2023-06-30 17:12:16 +02:00
Robin Gareus
c5511040ec
MidiBuffer: allow for partial processing with offset
...
AudioBuffer::read_from() only replaces data within the given
range (offset .. n_samples + offset) leaving the rest of the
buffer untouched.
With in-place processing, where the same MIDI buffer is used
for input and output, each sub-cycle must only clear the
processed range, while leaving the rest of the buffer
untouched.
2023-06-30 17:12:16 +02:00
Robin Gareus
64e2f16e06
LV2: apply offset to MIDI events
2023-06-30 17:12:16 +02:00
Robin Gareus
8558b1f99e
AudioUnit: apply offset to MIDI events
2023-06-30 17:12:16 +02:00
Robin Gareus
c352347eaa
LuaProc: offset MIDI events when splitting cycles
2023-06-30 17:12:16 +02:00
Robin Gareus
9242e615ce
Plugin: track only events for current cycle
2023-06-30 17:12:15 +02:00
Paul Davis
e756786a13
bbt markers: remove tempo&meter marker on deletion
2023-06-28 18:05:34 -06:00
Paul Davis
ac491fce0e
bbt markers: now have an (insensitive) tempo and meter marker visible
...
probably needs more work for event handling on the tempo and
meter markers.
2023-06-28 18:03:38 -06:00
Paul Davis
b490f7d2a1
markers: fix position of BBT marker text (tiny tweak)
2023-06-28 18:03:38 -06:00
Robin Gareus
e6bed9330f
CoreMIDI: fix capture/playback alignment
...
MIDI playback used samples instead of usec.
MIDI capture used time-stamp from previous cycle.
buffer-size changes were not applied to MIDI port latency
2023-06-29 00:32:46 +02:00
Robin Gareus
bef4596dd1
NO-OP: whitespace
2023-06-29 00:32:46 +02:00
Robin Gareus
651dcbc96e
CoreAudio: Remove unused API
2023-06-29 00:32:46 +02:00
Robin Gareus
9a010404d1
CoreMIDI: Remove unused API
2023-06-29 00:32:43 +02:00
Paul Davis
c53a476f15
allow drawing automation control points in mouse object mode
...
This is a tentative change and if it proves unwise we can back it out.
I just find it awkward to have to change modes to draw when it is
completely obvious whether I am drawing or not.
2023-06-28 13:44:59 -06:00
Paul Davis
99c87e0614
no smart mode behavior for automation region views (it makes no sense)
2023-06-28 13:44:59 -06:00
Paul Davis
36769dd94c
part 2 of showing region selection in MIDI CC (automation) tracks
2023-06-28 13:44:59 -06:00
Paul Davis
64b08a1c70
when a parent (audio/MIDI) regionview is selected, raise matching AutomationRegionView
...
Currently, we only use AutomationRegionView to show MIDI CC data
2023-06-28 13:44:59 -06:00
Paul Davis
78037a532c
when displaying region selecting, compare regions not regionviews
...
This worked before because nothing happened to AutomationRegionViews
when an AudioRegionView or MIDIRegionView was selected, and so
testing based on the regionview worked (the potential RV could
be the actual RV).
But when displaying region selection (in any way) on other TimeAxisViews,
the correct test is whether the RegionView shows the same region
as the selected region(view).
2023-06-28 13:44:59 -06:00
Paul Davis
ed48758fb6
NO-OP: add comment
2023-06-28 13:44:59 -06:00
Robin Gareus
ee0693d121
Properly clear preset-list (compare to invalidate_preset_cache)
2023-06-28 19:16:16 +02:00
Robin Gareus
f9396cc19b
Add example lua script presets
2023-06-28 19:10:34 +02:00
Robin Gareus
fc08771651
LuaProc: implement factory presets
2023-06-28 19:10:34 +02:00
Paul Davis
e54e24a7a0
no need for two raise-to-top; set_velocity_mode() will do it
2023-06-27 14:07:47 -06:00
Paul Davis
58a6fcfe37
lollis: note selection should move corresponding lolli to top
2023-06-27 14:07:31 -06:00
Paul Davis
ce1ec1107c
fix layering of automation views
...
This code is awful, and ought to be restricted only to velocity lanes by
a better design
2023-06-27 12:53:08 -06:00
Paul Davis
294de8d64f
no automation line event stuff for velocity tracks (for now)
2023-06-27 09:42:14 -06:00
Paul Davis
e6b4d38e52
remove debug output
2023-06-27 09:21:56 -06:00
Paul Davis
1febe07480
lollis: use layering to enable editing of overlapping regions
2023-06-27 09:19:29 -06:00
Paul Davis
f7176b411e
lollis: fix crash when a note is removed
2023-06-26 16:28:32 -06:00
Paul Davis
57fc25c28d
lollis: tweak color of dragging line (still not sure about this)
2023-06-26 14:18:18 -06:00
Paul Davis
7dc532a646
lollis: only allow velocity editing on currently selected region
2023-06-26 14:18:18 -06:00
Paul Davis
6ef84ca376
increase transparency of velocity ghost regions
2023-06-26 14:18:18 -06:00
Paul Davis
b3de53eb95
when a playlist is relayered, relayer ghost regions too
2023-06-26 14:18:18 -06:00
Paul Davis
b5c9c6a5c4
fix displayed name for velocity automation
2023-06-26 14:18:18 -06:00
Paul Davis
296d0756a1
lollis: add left/right|earlier/later outlines to ghost region
2023-06-26 14:18:18 -06:00
Paul Davis
744208f556
lollis: no more channel-based choice, just a single check menu item like gain/pan/etc.
2023-06-26 14:18:18 -06:00
Paul Davis
60256282e3
lollis: make a single drag be represented by a single Command object (for undo/redo)
2023-06-26 14:18:18 -06:00
Paul Davis
006779d4c3
lollis: better selection algorithm during drag, plus drawn line
2023-06-26 14:18:18 -06:00
Paul Davis
91500795d8
canvas: extend PolyItem API with ::add_point()
2023-06-26 14:18:18 -06:00