13
0
Commit Graph

39837 Commits

Author SHA1 Message Date
7455b99b45 account for clip recording when computing monitoring state 2024-10-17 07:44:32 -06:00
a357575954 less debugging 2024-10-17 07:44:32 -06:00
1e193d0363 GUI side of clip recording (recording indicators etc.) 2024-10-17 07:44:32 -06:00
423148c2af tweaks to cleanup and get much closer to full audio clip recording 2024-10-17 07:44:32 -06:00
26fb50d1a9 a bit more type-safety when handling audio data during clip recording 2024-10-17 07:44:32 -06:00
d7c424c440 attempt to write and use audio data to disk for audio clip recording 2024-10-17 07:44:32 -06:00
0959696070 NO-OP: remove pointless embedded whitespace 2024-10-17 07:44:32 -06:00
b4d0b06d95 const-ify first "src" argument in AudioSource::write() and derivatives 2024-10-17 07:44:32 -06:00
8069a4a514 remove some debug output 2024-10-17 07:44:32 -06:00
74132b60a0 get the data collection and initial setup part of audio clip recording working
Not yet implemented: writing the data to disk and creating a new Region
2024-10-17 07:44:32 -06:00
fa6da8818f first functioning MIDI clip recording (GUI) 2024-10-17 07:44:32 -06:00
ac4bb55f13 first functioning MIDI clip recording (libs) 2024-10-17 07:44:32 -06:00
a2d44ba97d remove ClipRecProcessor, whose functionality will move into TriggerBox where it should have been 2024-10-17 07:44:32 -06:00
1fa42dcb95 provide rec-enable state for TriggerBoxen 2024-10-17 07:44:32 -06:00
052ef18c4a cliprec: add processor to tracks, and get MIDITrigger prepared for capture 2024-10-17 07:44:32 -06:00
86b01a5d2f provide an interesting method to convert an RTMidiBuffer<samples> to RTMidiBuffer<beats> without any memory reallocation 2024-10-17 07:44:32 -06:00
88c326aee0 more clip recording refactoring 2024-10-17 07:44:32 -06:00
aa9a998f60 small steps towards clip recording 2024-10-17 07:44:32 -06:00
107706af8a some tiny steps towards using new data structures for clip recording 2024-10-17 07:44:32 -06:00
ca1583cdad the great onceification (gui)
Replace use of #ifndef header guards with #pragma once

Modern C++, baby!
2024-10-17 07:44:31 -06:00
75f56cd3e1 the great onceification (libs)
Replace use of #ifndef header guards with #pragma once

Modern C++, baby!
2024-10-17 07:44:31 -06:00
8fbec13e9c script for once-ification
This still tends to require by-hand cleanups of bare #endif lines
2024-10-17 07:44:31 -06:00
56ce9c33c0 renaming: AutomationLineBase => AutomationLine, AutomationLine => EditorAutomationLine 2024-10-17 07:44:31 -06:00
90c8726c6d wideranging changes to get automation editing working in cue editor 2024-10-17 07:44:31 -06:00
4169f11ddd cue automation lines: take height into consideration 2024-10-17 07:44:31 -06:00
a9205ffd55 use nullptr, not NULL 2024-10-17 07:44:31 -06:00
71d5b50a94 kinda-sorta get an automation line for modwheel in the cue editor 2024-10-17 07:44:31 -06:00
afa15a0061 get velocity editing working in both the cue editor and MIDI region views
Quite a bit of hairy coordinate system stuff in here that ought to be commented more
clearly
2024-10-17 07:44:31 -06:00
ee305a7169 catch up on TriggerReference API changes in GUI 2024-10-17 07:44:31 -06:00
8baaa7eb66 TriggerReference requires some sort of lifetime tracking
For now we use std::weak_ptr and std::enable_shared_from_this to accomplish tracking. There
may be an argument for using our own (PBD::Destructible) mechanisms instead.
2024-10-17 07:44:31 -06:00
e3ff81efcb remove dangling line of code that does nothing 2024-10-17 07:44:31 -06:00
a72bde5d3c add the final virtual GhostRegion method to VelocityGhostRegion 2024-10-17 07:44:31 -06:00
76104f994b velocity display: clear must invalidate optimization iterator 2024-10-17 07:44:31 -06:00
a44e8ac088 fix drawing of lollipops.
There may be more virtual GhostRegion methods that VelocityGhostRegion has to proxy
to VelocityDisplay
2024-10-17 07:44:31 -06:00
54fdf90cc2 lots of detailed fixes to get lollipops in tracks working again, post re-factor 2024-10-17 07:44:31 -06:00
7901b4119f we're gonna need a bigger debug set 2024-10-17 07:44:31 -06:00
739d58840f manually reimplement 3766b22e06 from master (sysex deletion)
Things have changed
2024-10-17 07:44:31 -06:00
15258b9aa4 new base class for automation lines 2024-10-17 07:44:31 -06:00
fa993ec9f4 various fixes to get lollipops to display (cue editor only so far) 2024-10-17 07:44:31 -06:00
c8924f4133 fix lollipop drawing
Cairo coordinate/argument limits are much smaller than the canvas. Trying
to clip to a gigantic rectangle throws cairo into a weird state, so
make sure we only clip to a part an exposed area
2024-10-17 07:44:31 -06:00
0399cd9d02 initial use of refactored VelocityDisplay 2024-10-17 07:44:31 -06:00
96e074d78c refactor velocity display so that it can be used in the editor and elsewhere 2024-10-17 07:44:31 -06:00
c232525e94 remove broken out loop iteration 2024-10-17 07:44:31 -06:00
69871e0021 trigger page: use a VPane so we can enlarge the cue editor if desired
Plus fixup to get MIDI notes redrawn as pane is resized
2024-10-17 07:44:31 -06:00
12519ef621 add a new automation group rect to the midi cue editor, and size it 2024-10-17 07:44:31 -06:00
45e4b97a6f move some methods from Editor to Editing context so that drawing controls work everywhere 2024-10-17 07:44:31 -06:00
fa79645c19 move most of AutomationLine into AutomatonLineBase, a class not strongly tied to the editor 2024-10-17 07:44:31 -06:00
0b05ec93c8 use correct item for stream, automation track and region drags 2024-10-17 07:44:31 -06:00
e67a3387fd Fix Editor Lua bindings
Methods that have been moved to EditingContext need
to reference the abstract definition there, and PublicEditor's
first parent class also need to be EditingContext (same
memory address)
2024-10-17 07:44:31 -06:00
7e7440bc33 Fix Lua bindings, Session is-a HistoryOwner
For derived classes to work in Lua w/o explicit cast,
it needs to be the first parent.
2024-10-17 07:44:31 -06:00