13
0
Commit Graph

39746 Commits

Author SHA1 Message Date
1e8b2c521c provide a better method to decide if a trigger(slot) is occupied
This is necessary with clip recording because for some short time after recording,
a trigger may be playable despite not yet having a region.

libs edition.
2024-10-17 07:44:32 -06:00
e089953e78 get blinking rec status closer to correct for clip recording 2024-10-17 07:44:32 -06:00
596c54d742 fix ups for record state in TriggerBox 2024-10-17 07:44:32 -06:00
1146a4ad07 move RecordState enum from ARDOUR::Session to ARDOUR so we can use it in TriggerBox (GUI) 2024-10-17 07:44:32 -06:00
d7d208dc34 move RecordState enum from ARDOUR::Session to ARDOUR so we can use it in TriggerBox (libs) 2024-10-17 07:44:32 -06:00
90858279bc tweak drawing of clip recording rec-enable icon 2024-10-17 07:44:32 -06:00
6ef4a74728 cleanup of bits of clip recording code 2024-10-17 07:44:32 -06:00
4466563a89 avoid double delete of clip recording audio buffers 2024-10-17 07:44:32 -06:00
25400a4936 fix appending new audio data during clip recording 2024-10-17 07:44:32 -06:00
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