Paul Davis
58d4c1e317
triggerbox: add ReTrigger launch style; do not stop running slots when cue launching
2022-01-03 17:45:21 -07:00
Robin Gareus
b72268f6e1
triggerbox: rename sidechain port when track's name chanes
...
Just like PluginInsert::update_sidechain_name, the name is
implicitly set, using the owning route's name, suffixed with the
[i18n localized] Processor name.
This fixes an issue if a track is renamed and a new track with
the old name is created. This commonly happens during File Import:
For each ImportAsTrack a generic named track (e.g. "Audio") is created
before it is renamed.
Previously this lead to
Failed to register port "Audio 1-trig/midi_in 1", reason is unknown from here
2022-01-04 01:22:34 +01:00
Robin Gareus
3c2878974c
Always create a triggerbox with new tracks
...
This fixes an issue when creating tracks from the import dialog,
or via Drag/Drop, or using a template.
All tracks should always have trigger-boxes.
2022-01-03 23:41:58 +01:00
Robin Gareus
47d34bfbfb
Tweak FPU test for FMA
...
FMA may return *more precise* results since there is no intermediate
rounding when computing (a + b * c).
(b * c) is evaluate with infinite precision and only the final result
after adding a is rounded to float32. This allows for a FLT_EPSILON
difference compared to rounding (b * c) first.
2022-01-03 02:34:53 +01:00
Ayan Shafqat
b90bfa2597
Fix pointer math for prefetch
2022-01-03 02:01:12 +01:00
Ayan Shafqat
25fac546d5
Removing _mm256_zeroupper()
...
This is probably not needed in 2021 as compilers will insert them
automatically. See stackoverflow reference:
https://stackoverflow.com/a/68738289
2022-01-03 02:01:12 +01:00
Ayan Shafqat
5fc3ae79ae
Tune performance for AVX optimized find_peaks
...
Propagating the changes from compute_peaks to find_peaks
2022-01-03 02:01:12 +01:00
Ayan Shafqat
a07ae169a3
Fine tune AVX optimized routine
...
In some instances, AVX optimized routines were slower than compiler
generated output. This commit addresses a few of those issues by
tuning code for better branch prediction and appropriate loop unrolls.
2022-01-03 02:01:12 +01:00
Paul Davis
ca5043288c
remove debug output
2022-01-02 17:23:01 -07:00
Paul Davis
41310d9b8a
brace style (braces missing)
2022-01-02 17:20:39 -07:00
Paul Davis
0f6aa118f0
triggerbox: add Forward/ReverseTrigger follow actions
...
Live's Next/Prev do not skip empty slots or wrap. So do both-and
2022-01-02 17:20:38 -07:00
Robin Gareus
8e7810f40c
Disable session unit-tests for now
...
Converting, loading old sessions/templates fails:
#0 0x00005555568a2590 in ()
#1 0x00007ffff7b8dfd9 in ARDOUR::SessionEventManager::merge_event(ARDOUR::SessionEvent*) (this=0x55555d89c3f0, ev=0x555555cfb510) at ../libs/ardour/session_events.cc:204
#2 0x00007ffff7bb1c79 in ARDOUR::Session::queue_event(ARDOUR::SessionEvent*) (this=0x55555d89c260, ev=0x555555cfb510) at ../libs/ardour/session_process.cc:836
#3 0x00007ffff7b8d780 in ARDOUR::SessionEventManager::clear_events(ARDOUR::SessionEvent::Type, boost::function<void ()>) (this=0x55555d89c3f0, type=ARDOUR::SessionEvent::Skip, after=...)
at ../libs/ardour/session_events.cc:156
#4 0x00007ffff7b17991 in ARDOUR::Session::sync_locations_to_skips() (this=0x55555d89c260) at ../libs/ardour/session.cc:1752
#5 0x00007ffff7b175bd in ARDOUR::Session::update_skips(ARDOUR::Location*, bool) (this=0x55555d89c260, loc=0x0, consolidate=false) at ../libs/ardour/session.cc:1701
#6 0x00007ffff7b18bed in ARDOUR::Session::_locations_changed(std::__cxx11::list<ARDOUR::Location*, std::allocator<ARDOUR::Location*> > const&)
(this=0x55555d89c260, locations=empty std::__cxx11::list) at ../libs/ardour/session.cc:1877
#7 0x00007ffff7b3ff7d in ARDOUR::Locations::apply<ARDOUR::Session>(ARDOUR::Session&, void (ARDOUR::Session::*)(std::__cxx11::list<ARDOUR::Location*, std::allocator<ARDOUR::Location*> > const&)) const (this=0x55555e19ed10, obj=..., method=
(void (ARDOUR::Session::*)(ARDOUR::Session * const, const ARDOUR::Locations::LocationList &)) 0x7ffff7b18b38 <ARDOUR::Session::_locations_changed(std::__cxx11::list<ARDOUR::Location*, std::allocator<ARDOUR::Location*> > const&)>) at ../libs/ardour/ardour/location.h:263
#8 0x00007ffff7b18b35 in ARDOUR::Session::locations_changed() (this=0x55555d89c260) at ../libs/ardour/session.cc:1858
#9 0x00007ffff7bc4914 in ARDOUR::Session::set_state(XMLNode const&, int) (this=0x55555d89c260, node=..., version=7000) at ../libs/ardour/session_state.cc:1666
2022-01-03 01:11:54 +01:00
Robin Gareus
987df219e0
Fix building libardour unit-tests, disable BBT tests for now
2022-01-03 01:11:54 +01:00
Robin Gareus
e295e1c8d7
Disable evoral unit-tests -- nutempo update is needed
2022-01-03 01:11:54 +01:00
Ben Loftis
e784aa5d34
Extend midi regions to their natural bar length on import
2022-01-02 16:06:06 -06:00
Robin Gareus
6c3c38e924
Replace Tabs with Space in python script
2022-01-02 14:34:53 +01:00
Paul Davis
4be38042a2
triggerbox: consolidate some code that is used in both MIDITrigger and AudioTrigger::run()
...
This comments out the reset of transition_beats that had been necessary to get
MIDI triggers to work correctly. Testing doesn't show a problem with it (so far).
2022-01-01 16:19:13 -07:00
Paul Davis
fb82750bfb
triggerbox: fix retrigger of MIDItrigger to start at next repeat of clip
2021-12-31 12:55:09 -07:00
Paul Davis
ad5b0bac32
triggerbox: improved method of handling launch-style while cue launched
2021-12-31 12:55:09 -07:00
Paul Davis
a7c9b2094a
triggerbox: expanded debug trace output
2021-12-31 12:55:09 -07:00
Paul Davis
6059687fb2
export MidiTrack::{set_,}input_active() to Lua
2021-12-31 12:55:02 -07:00
Paul Davis
8d97439281
triggerbox: save properties and use Toggle launch style if started from a cue
2021-12-31 12:54:06 -07:00
Paul Davis
027e7302b8
triggerbox: don't get a new trigger if there isn't a current one and allstop is set
2021-12-31 12:54:06 -07:00
Paul Davis
27dfbecd54
triggerbox: add skeleton for push/pop of cue-affected trigger properties
2021-12-31 12:54:06 -07:00
Paul Davis
88e9db30e3
triggerbox: NO-OP move code around
2021-12-31 12:54:06 -07:00
Robin Gareus
1e7e4b3037
VST3: fix legacy MIDI output - thanks to paulfd
2021-12-31 15:58:51 +01:00
Ben Loftis
854e359f56
build-fix: remove unused file reference
2021-12-30 21:44:21 -06:00
Ben Loftis
9180a985a4
trigger_ui: TriggerEntry is-a TriggerUI
2021-12-30 21:25:39 -06:00
Ben Loftis
133b51922a
trigger_ui: move old triggerui implementation into slot_properties where it is used
2021-12-30 21:25:39 -06:00
Ben Loftis
7a53c4140d
trigger_ui: add a color-picker button
2021-12-30 21:25:39 -06:00
Ben Loftis
d87b1053df
ArdourButton: ColorBox flag is for color-picker buttons
2021-12-30 21:25:39 -06:00
Robin Gareus
c29f5471b2
Handle all enum cases, prevent accessing unintialized ptr object
2021-12-31 02:47:50 +01:00
Robin Gareus
1f5649ef28
Fix vfork edge-case
...
Calling c_str() after vfork is prohibited after a successful vfork.
Also the string needs to remain in scope until exec() completed.
2021-12-31 01:39:39 +01:00
Robin Gareus
96c80e88ac
Lua binding for MidiTrack::set_input_active
2021-12-30 19:00:14 +01:00
Florian Walpen
10d367fdae
Fix plugin manager build with VST3 disabled.
...
ARDOUR::SystemExec is also used for scanning VST2 and AU plugins, yet
the corresponding header ardour/system_exec.h is not included when VST3
support is disabled in the build configuration.
2021-12-29 23:33:39 +01:00
Paul Davis
24269acb97
triggerbox: update relevant comment
2021-12-29 09:37:43 -07:00
Paul Davis
645262c26a
triggerbox: fix incorrect behavior in MIDITrigger::run() caused by taking dest_offset into account twice
2021-12-29 08:58:55 -07:00
Paul Davis
87974562d3
triggerbox: add TriggerBox::active_scene()
2021-12-28 18:02:13 -07:00
Paul Davis
2c00379220
triggerbox: continuing fixups for MIDITrigger
2021-12-28 18:01:41 -07:00
Ben Loftis
c97a28015e
triggerbox: default probability should be 0 (100% left)
2021-12-28 08:37:08 -06:00
Ben Loftis
a43e3d88e5
triggerbox: notify the UI when we Clear a trigger
2021-12-27 18:03:13 -06:00
Ben Loftis
3a506ac7a1
triggerbox: mark session dirty when a Trigger's properties are changed
...
also make an effort to damp callbacks that are prone to gui feedback loops
i.e. CheckMenu Items and Adjustments
2021-12-27 18:03:13 -06:00
Ben Loftis
cc5fb209ab
triggerbox: Triggers may be assigned a color
...
colors can be transmitted to some surfaces (Launchpad et al), so must be store in Trigger::
2021-12-27 18:03:13 -06:00
Paul Davis
12dbcd90bf
triggerbox: fix quantized stop via ::unbang()
2021-12-27 16:24:35 -07:00
Paul Davis
163fc541d2
triggerbox: alter MIDITrigger::run() to work like its AudioTrigger counterpart
2021-12-27 15:08:20 -07:00
Paul Davis
af37a51b65
triggerbox: triggers estimated to be 1 bar long are not one-shots
2021-12-27 15:07:44 -07:00
Paul Davis
f9903a7a8b
triggerbox: use custom (threaded) deleter for MIDITriggers just like AudioTriggers
2021-12-27 12:04:39 -07:00
Paul Davis
3755c04786
triggerbox: fix some const qualifier usage
2021-12-27 12:04:21 -07:00
Paul Davis
8e2b36d43d
triggerbox: NOOP: add explanatory comment
2021-12-27 11:24:21 -07:00
Paul Davis
610125b87c
remove call to #ifdef'ed code
2021-12-27 11:24:03 -07:00