Commit graph

37664 commits

Author SHA1 Message Date
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
Paul Davis
6ea7e8c8f4 improve button up/down tracking during velocity draw drag 2023-06-26 14:18:18 -06:00
Paul Davis
6d4bbae48c prototyping mouse-drag-paint velocity 2023-06-26 14:18:18 -06:00
Paul Davis
31de7e93bf lollis: show note selected status (using note selection outlien color) 2023-06-26 14:18:18 -06:00
Paul Davis
8a204bcf51 lollis: draw stems in fill color (optionally) 2023-06-26 14:18:18 -06:00
Paul Davis
f3e996bdb7 NOOP: remove unnecessary namespace qualifier
BTW, ColorMode needs to move from libardour into the GUI
2023-06-26 14:18:18 -06:00
Paul Davis
25bb43e285 lollis: color management during drag, and verbose cursor 2023-06-26 14:18:18 -06:00
Paul Davis
c75b9a11ef lollis: fix drawing and positioning glitches 2023-06-26 14:18:18 -06:00
Paul Davis
a6c1a3d9d0 lollis: potentially clip circle with a bounding parent 2023-06-26 14:18:18 -06:00
Paul Davis
62bb8ccbeb removed unnecessary files 2023-06-26 14:18:18 -06:00
Paul Davis
01381dad77 lollis: remove unnecessary drag object member 2023-06-26 14:18:18 -06:00
Paul Davis
2d9a2ad668 lollis: also adjust velocity bars during the drag 2023-06-26 14:18:18 -06:00