Paul Davis
722a159ac1
Session constructor should create a new tempo map
...
This may be the wrong place to do this. It might be more appropriate in ::set_state(0
so that we either use existing XML state or a default tempo map
2021-12-21 17:38:42 -07:00
Paul Davis
9c6c05dfac
triggerbox: audio triggers get a deletion queue (WIP)
2021-12-21 17:38:42 -07:00
Paul Davis
4f8be5a6c3
triggerbox: amend previous commit that failed to notice 2 uses of which_follow_action
2021-12-21 17:38:37 -07:00
Ben Loftis
e112a86af2
triggerbox: fix uninitalized var
2021-12-21 15:32:42 -06:00
Robin Gareus
2072cc5fd8
Add Config variable for custom sample-libraries
2021-12-20 02:32:12 +01:00
Paul Davis
d4145f0cb1
triggerbox: slight rationalization of member order in AudioTrigger
2021-12-18 17:34:06 -07:00
Paul Davis
30123a2106
triggerbox: cleanup what is a property and what isn't
2021-12-18 14:11:54 -07:00
Paul Davis
9b5e910717
temporal: add additional required string_to/to_string functions for BBT_Offset & BBT_Time
2021-12-18 14:11:25 -07:00
Paul Davis
c3a48ff9c9
triggerbox: add explanatory comment about how the triggerbox thread quit msg works
2021-12-18 09:35:10 -07:00
Paul Davis
afd8554b43
triggerbox: waking up the triggerbox thread has nothing to do with RT, so remove comment etc.
2021-12-18 09:33:51 -07:00
Paul Davis
4d980bee6a
triggerbox: catch file-name-based incorrect types when loading into slots
2021-12-18 09:31:44 -07:00
Paul Davis
16dfb410bc
triggerbox: catch failure to load files
2021-12-18 08:29:48 -07:00
Paul Davis
8e3e3ea01f
triggerbox: fix load-from-file for MIDI
2021-12-18 08:29:48 -07:00
Paul Davis
d28422d420
MIDI import: load MIDI model after writing/copying MIDI to a new file
...
Fixes problem with edits to newly imported MIDI not changing what is played back, because
there was no model to connect the region/playlist to, and thus no notifications about
the changes to the model were sent
2021-12-17 19:24:12 -07:00
Paul Davis
2111cfe557
triggerbox: allow set_region_threaded() to "unset" the region
2021-12-17 19:24:12 -07:00
Paul Davis
c6e141aaba
triggerbox: avoid float/double warning
2021-12-17 19:24:12 -07:00
Paul Davis
9f957f8220
triggerbox: change type of _follow_count property to avoid signed/unsigned warnings
2021-12-17 19:24:12 -07:00
Paul Davis
95355f943f
triggerbox: start encapsulating audio trigger data object
...
The goal will be to be able to swap out the data, atomically, when stopped
2021-12-17 19:24:12 -07:00
Paul Davis
689c569319
triggerbox: extend debugging info
2021-12-17 19:24:12 -07:00
Ben Loftis
243ddae928
triggerbox: implement trigger gain as a save-able property (libardour)
2021-12-17 13:09:49 -06:00
Ben Loftis
dd7f474125
triggerbox: scene-isolate property for triggers (libardour part)
2021-12-17 13:09:49 -06:00
Robin Gareus
ec04ab3865
Fix Triggerbox mono to stereo playback
2021-12-17 17:50:50 +01:00
Robin Gareus
6b6ae5dedb
Fix file-extension check
...
If the extension is not found, string::rfind() returns -1,
That can still match unrelated file if the file-name is one
char longer than an arbitrary extension.
eg. "foo" matched ".aiff" because
-1 = strlen("foo") - strlen(".aiff")
Also due to a missing comma ".VOC.vwe" matched any file shorter
than 7 chars in length.
2021-12-16 19:08:03 +01:00
Robin Gareus
9f7114f761
Add dir names for media-folder
2021-12-16 19:08:03 +01:00
Paul Davis
21ed6a2626
add Config variable for trigger enable
2021-12-16 10:39:43 -07:00
Paul Davis
f7792cb425
triggerbox: fix typo that caused crash when handling unstretched audio
2021-12-16 10:39:43 -07:00
Paul Davis
899c217511
triggerbox: fix passthru handling and default to off
2021-12-16 09:31:12 -07:00
Ben Loftis
f8432d0647
Triggerbox: these properties will not be stored in Region (reverts 3918ee)
2021-12-16 08:15:29 -06:00
Robin Gareus
fc0dfd5d38
Wreturn-type, fixes unconfigured processors
2021-12-16 14:47:10 +01:00
Paul Davis
8a58155dcf
triggerbox: use Session::import_files() to load from file
...
This uses the SRC infrastructure set up for normal imports, which
is desirable.
2021-12-15 18:19:20 -07:00
Paul Davis
02eb39325f
triggerbox: fix channel handling for audio
...
We do not modify the audio I/O of the parent route, and process
at most std::min (route_inputs,region_channels).
2021-12-15 18:19:20 -07:00
Ben Loftis
382f73fa51
triggerbox: use stretching() internally but change property name to stretchable (libardour)
2021-12-15 18:08:22 -06:00
Paul Davis
40c1a7016a
triggerbox: NOOP - add explanatory comment
2021-12-15 15:39:28 -07:00
Paul Davis
ca7b418281
triggerbox: NOOP - commented out extra debugging info
2021-12-15 14:58:24 -07:00
Paul Davis
1ecdc5c515
triggerbox: try to avoid tempo that results in fractional bar cnts
...
If minibpm's estimate of tempo implies that the clip has a duration measured in
fractional bars, use the estimate as a starting point to get to a tempo that
will lead to an integer number of bars (and quarters)
2021-12-15 14:58:03 -07:00
Paul Davis
ed6121d76e
triggerbox: continued work on Repeat trigger mode
2021-12-15 12:26:46 -07:00
Paul Davis
2688c02e0e
triggerbox: do not use follow action if Trigger::_use_follow is not set
2021-12-15 11:19:36 -07:00
Paul Davis
347a17cdb2
triggerbox: telling a Toggle/Gate/Repeat launch mode slots to not use a follow action when stopped
2021-12-15 11:03:53 -07:00
Ben Loftis
ab03e09a79
triggerbox: publish the loop_cnt for the gui
2021-12-15 11:43:48 -06:00
Paul Davis
71f7f7a09b
triggerbox: add stretching property, virtualize computation of expected end sample, maybe fix position_as_fraction()
2021-12-15 10:21:28 -07:00
Paul Davis
97eb164b91
triggerbox: clean up part of the state machine for audio triggers
2021-12-14 21:59:33 -07:00
Paul Davis
12847b0125
remove Session::bbt_time() and use TempoMap::use()->bbt_at() explicitly everywhere
2021-12-14 21:59:33 -07:00
Ben Loftis
3335757276
triggerbox: add Properties for velocity and probability
2021-12-14 13:11:08 -06:00
Ben Loftis
977f6aec94
Triggerbox: save and recall the follow_count property (lib part)
2021-12-14 10:40:37 -06:00
Paul Davis
58796e6b19
fix likely crash in faderport8 support, from calling TempoMap::use() and not TempoMap::fetch()
2021-12-13 21:07:18 -07:00
Marijn Kruisselbrink
0e799357a8
Fix crash in mackie strip code.
...
Strip::notify_property_changed accesses _stripable without verifying
that is not null. However it is possible for this to be null, so
add a null check.
2021-12-13 21:03:38 -07:00
Todd Naugle
d04d25e7c7
Mackie Control: Clean up detection of QCon master display and meter.
...
Only enable the master display and meter modes for Qcon devices if this
surface is in the master position. Extenders don't have master meters
or master displays.
2021-12-13 21:26:45 -06:00
Todd Naugle
d60a5187bd
Mackie Control: Fix detection of QCon Extenders so 2nd LCD is correct
...
Logic to detect an extender has to be based on if this surface object is
the master position. Has master fader is true for all surfaces in this
"device".
2021-12-13 21:25:07 -06:00
Paul Davis
5f810843bb
triggerbox: only require a MIDI output if the data type is MIDI
...
This was a thinko that occured when I added the sidechain for audio tracks to handle
trigger input
2021-12-13 16:50:31 -07:00
Paul Davis
0fcc873ec5
correctly hide/show/position triggerbox in route processors
2021-12-13 16:24:13 -07:00