Commit graph

34340 commits

Author SHA1 Message Date
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
0e5b259cf0
Allow to create new trigger-tracks via file DnD 2022-01-03 23:57:50 +01:00
Robin Gareus
e0c07e2306
Add ImportAsTrigger mode
This is like ImportAsTrack, except the imported region is not
added to the timeline, but the first trigger slot.
2022-01-03 23:51:33 +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
66b170075b triggerbox: add Forward/ReverseTrigger follow actions (GUI edition) 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
4ded1e7df4 fitted_canvas: second part of 3784aa 2022-01-02 16:10:36 -06:00
Ben Loftis
942e362e18 fitted_canvas: virtual accessor will be useful for mb 2022-01-02 16:06:06 -06:00
Ben Loftis
e784aa5d34 Extend midi regions to their natural bar length on import 2022-01-02 16:06:06 -06:00
Dan Church
b95078ae46 Fix mime package install location
<prefix>/share/mime/applications gets clobbered with data from
<prefix>/share/mime/packages/*.xml every time "update-mime-database" is
run.
2022-01-02 14:49:02 -07:00
mlachand
603697654d Update AKAI_MPK225_Plugins.map
Switching mute, solo and rec for up tu 10 selected tracks
2022-01-02 14:47:43 -07:00
mlachand
90f7c15269 Add midi maps for Akai mpk225
Here are two midi maps for the Akai MPK225. They work with the 6th preset of the controller.
The "Normal" version mainly controls gain and panoramic.
The "eq+comp+sends" version also controls plugins, such as equalizer, compressor and sends.
2022-01-02 14:47:43 -07:00
Robin Gareus
d31773d2de
Fix header include #once macro 2022-01-02 21:51:54 +01:00
Robin Gareus
6c3c38e924
Replace Tabs with Space in python script 2022-01-02 14:34:53 +01:00
Paul Davis
e3293db126 triggerbox UI: clean up class heirachy for *TriggerPropertiesBox and catch trigger swaps 2022-01-01 16:19:13 -07: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
Robin Gareus
bd12509910
Add trigger-page visibility to "Tracks & Busses" TV 2022-01-01 16:52:55 +01:00
Robin Gareus
7a1f1eafb8
Add context menu to trigger-strip's name button 2022-01-01 15:43:52 +01:00
Robin Gareus
0a17d8e66a
Use shared static method to count plugins
This moves MixersStrip::help_count_plugins to RouteUI,
so that it can be shared with other Strip implementations.
2022-01-01 15:34:47 +01:00
Robin Gareus
4318d25ec7
Backport from mixbus, prepare trigger-strip ctx menu 2022-01-01 15:16:03 +01:00
Robin Gareus
c16631f8f8
Fix tiny memory leak
Route context menu remained after a route was deleted
2022-01-01 15:15:40 +01:00
Robin Gareus
48815bcd1d
Happy New Year, Ardour 2022-01-01 12:47:05 +01: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
Ben Loftis
233491c88a Fix Consolidate-without-processing abort 2021-12-31 13:44:52 -06:00
Robin Gareus
1e7e4b3037
VST3: fix legacy MIDI output - thanks to paulfd 2021-12-31 15:58:51 +01:00
Robin Gareus
5d711dc3f2
Fix non-virtual-dtor in TriggerUI baseclass 2021-12-31 04:46:38 +01:00
Ben Loftis
854e359f56 build-fix: remove unused file reference 2021-12-30 21:44:21 -06:00
Ben Loftis
cdaa9a7262 trigger_ui: refactor shared features into TriggerUI base 2021-12-30 21:25:39 -06:00
Ben Loftis
9180a985a4 trigger_ui: TriggerEntry is-a TriggerUI 2021-12-30 21:25:39 -06:00
Ben Loftis
ab92f205aa trigger_ui: replace missing update => smoother progress-circles 2021-12-30 21:25:39 -06:00
Ben Loftis
1dc756142c trigger_ui: disambiguate set_triggerbox() from set_trigger() 2021-12-30 21:25:39 -06:00
Ben Loftis
81a011b786 trigger_ui: another FA probability fix 2021-12-30 21:25:39 -06:00
Ben Loftis
c5b6d7f9d2 trigger_ui: TriggerEntry is-a TriggerUI 2021-12-30 21:25:39 -06:00