Paul Davis
4376185a6b
temporal: fix TempoPoint::superclock_at (Beats)
...
a negative beat position needs to be legal, so the assert was moved and modified. The only check
for a negative value is that the TempoPoint being used is at absolute zero.
This check might turn out to be wrong in the future, but for now we still require a tempo and
meter point at absolute zero
2021-10-29 12:55:14 -06:00
Paul Davis
2b9b08aa22
triggerbox: sort-of-mostly get MIDITriggers to work
...
Repeated loops can eventually go wrong, as can arbitrary stops
2021-10-27 22:54:40 -06:00
Paul Davis
031f39d9d1
triggerbox: remove unused member vars from MIDITrigger
2021-10-27 22:52:58 -06:00
Paul Davis
282707ee32
add ::shift() to RTMidiBuffer to allow shifting time origin of events
2021-10-27 22:51:25 -06:00
Paul Davis
e1c874b299
manually reverse 948500bbc7 (final code is not identical to previous state)
2021-10-27 08:36:52 -06:00
Paul Davis
66fe6e937a
triggerbox: vaguely working MIDI triggers
2021-10-26 17:34:06 -06:00
Paul Davis
32408db777
fix bug in RTMidiBuffer::bytes() method
...
bytes[0] does not contain data, only the offset for a blob, if relevant
2021-10-26 17:33:46 -06:00
Paul Davis
948500bbc7
further API changes to MIDIRegion::render() to allow for use by triggers
2021-10-26 17:32:36 -06:00
Paul Davis
787e5a2ea8
midiregion: remove internal_offset local variable
...
Even in 6.9, the logic of this conditional would always generate an
internal_offset value of zero samples.
2021-10-25 13:55:03 -06:00
Paul Davis
54f5c65f02
generalize MidiRegion::render() to provide MidiRegion::render_range()
2021-10-25 13:30:26 -06:00
Paul Davis
f5fb65a3f8
remove unused local variabl
2021-10-25 13:17:18 -06:00
Paul Davis
f9b604b614
triggerbox: start to work on details of MidiTrigger::run()
2021-10-25 12:53:49 -06:00
Paul Davis
76d3238fa6
triggerbox: member variable rename to make things slightly clearer
2021-10-25 12:53:27 -06:00
Paul Davis
8fd25e15c0
triggerbox: cleanup parts of Trigger API and finish initial pass of MidiTrigger implementation
2021-10-24 09:27:14 -06:00
Paul Davis
2b754568a0
changes/extensions to RTMidiBuffer API to make it more suitable for slots/triggers
2021-10-24 09:26:35 -06:00
Paul Davis
7339aa7c0d
triggerbox: new API to set from region (selection)
2021-10-24 09:25:11 -06:00
Paul Davis
600e0b21e8
fix a misleading comment
2021-10-21 11:16:55 -06:00
Paul Davis
ef20e8e5df
triggerbox: remove unused midi_trigger_map
2021-10-20 16:58:00 -06:00
Paul Davis
d252beb807
triggerbox: add MIDI triggers when asked
2021-10-20 16:53:52 -06:00
Paul Davis
d4ef49b504
triggerbox: skeleton framework for MIDI triggers (non-functional)
2021-10-20 16:19:09 -06:00
Paul Davis
6695423fe7
triggerbox: replace implicit queue with single pointer (up_next)
2021-10-19 19:08:52 -06:00
Robin Gareus
7215b10007
Remove accidentally commited file
2021-10-20 01:27:04 +02:00
Paul Davis
9f55e7f5d3
triggerbox: add scalable MIDI velocity effect for gain control of triggers
2021-10-19 12:52:32 -06:00
Paul Davis
2d3371c049
triggerbox: fix ::set_state() to pick Processor state too
2021-10-19 12:07:52 -06:00
Paul Davis
211b3ea668
canvas text: generalize ::font_size_for_height() to handle different font families
2021-10-19 10:54:27 -06:00
Paul Davis
1d1cc04b32
triggerbox: add Trigger -> TriggerBox accessor
2021-10-17 17:57:43 -06:00
Paul Davis
ab22733fe4
canvas: continuously variable Canvas::Text height if packed inside a layout-sensitive container
2021-10-17 17:56:27 -06:00
Robin Gareus
d6e4e0fb35
Remove false-positive VST log message
...
Ardour prevents repeat crashes by first marking a plugin
as blacklisted, and after a successful scan the plugin is
whitelisted.
When not scanning for plugins, but reading the cache
and successfully parsing the cashed content, a VST2 plugin
is whitelisted, even though it may not have been blacklisted.
In case the blacklist is empty, this lead to a logging:
"Expected VST Blacklist file does not exist."
PS. This also consolidates VST2 + VST3 code for white/blacklist
2021-10-16 20:33:22 +02:00
Paul Davis
bc61ff74ad
triggerbox: fix quantization involving bars
...
The code for this feels potentially expensive. Maybe there's a better way.
2021-10-14 21:08:34 -06:00
Paul Davis
7b2559fe07
triggerbox: fix behavior when bang()-ing a trigger while another is playing
...
This should queue up the bang-ed one and get the currently playing one to stop
2021-10-14 21:08:19 -06:00
Paul Davis
480907d613
add sstream header file, since the header file requires the defn
2021-10-14 13:12:31 -06:00
Paul Davis
bb87ba49d9
remove unnecessary boost header (we have our own ratio_t)
2021-10-14 13:12:31 -06:00
Paul Davis
c831c26c4d
triggerbox: make legato mode be off by default
2021-10-14 13:12:31 -06:00
Paul Davis
27572a2bce
fix problem with SrcFileSource
...
::length() was non-virtual, and so calling SrcFileSource::length() would access
the base class (AudioFileSource)'s version. Since SrcFileSource is essentially
a pimpl-like pattern, this was incorrect; we need to make sure we call the
pimpl-style method instead.
2021-10-14 13:12:31 -06:00
Robin Gareus
2066b6b33a
websockets: require Windows7 (with pollfd)
2021-10-13 21:40:39 +02:00
Paul Davis
bedf09fbdb
triggerbox: add new property called "order" and use it to decide whether to respond to a given MIDI note/pad (Push 2-centric for now)
2021-10-13 09:07:15 -06:00
Robin Gareus
2e0a069c51
WebSockets: use v7 tempo-map correctly
2021-10-12 15:32:41 +02:00
Paul Davis
7b14c5666a
triggerbox: handle active processor state correctly
2021-10-11 17:57:10 -06:00
Paul Davis
24a09e381a
triggerbox: don't fail/crash/assert if set_from_path() is called on an illegal slot
2021-10-11 17:56:56 -06:00
Paul Davis
43993da7b4
triggerbox: if bpm detection fails, don't try to stretch
2021-10-11 17:56:31 -06:00
Paul Davis
9e763c2672
remove all dangling event-loop-precall code
2021-10-11 17:48:53 -06:00
Paul Davis
9adc336d50
control surfaces: fix BasicUI::jump_by_bars() to use tempo map correctly
2021-10-11 17:48:53 -06:00
Paul Davis
b97c5f94c6
triggerbox: do nothing if disabled
2021-10-11 17:48:53 -06:00
Robin Gareus
a2a36de98f
Fix minor memory leak when querying Windows registry
2021-10-11 18:20:07 +02:00
Paul Davis
cf392f73fc
triggerbox: improve MIDI sidechain port naming
2021-10-10 17:35:15 -06:00
Paul Davis
187ef1c214
triggerbox: better implementation of mono/stereo/nchannels mapping fix
2021-10-10 13:53:24 -06:00
Paul Davis
c2004772c4
triggerbox: map available channels across all output channels
...
This means that mono regions get played in stereo (or higher)
2021-10-10 13:10:20 -06:00
Paul Davis
55209b5df7
triggerbox: respond to changes in default trigger input port
2021-10-09 16:58:58 -06:00
Paul Davis
52decdd1b4
push2: prevent crash caused by missing per-thread tempo map ptr
2021-10-09 11:47:13 -06:00
Paul Davis
3475350d7c
push2: session button should be lit
2021-10-09 11:46:53 -06:00