13
0
Commit Graph

34172 Commits

Author SHA1 Message Date
2755847294 triggerbox UI: fix crash caused by uninitialized member variable 2022-01-06 16:50:26 -07:00
caba23ff4f remove misleading/out-of-date instructions in comment 2022-01-06 14:22:07 -07:00
b909c07a2d triggerbox: fix failure of triggers to end at the right time when something happens to stop them early
nframes needed to be reduced to reflect the expected transition time. This change also consolidates any adjustment to
nframes and dest_offset for "starts within the interval" cases.
2022-01-06 13:48:23 -07:00
436b81be9a NOOP: change code pattern to return early from conditional rather than leaving body inside true condition scope 2022-01-06 12:07:22 -07:00
0baf0d859d GUI side of cue behavior (makes it available in the ruler context menu) 2022-01-06 12:00:18 -07:00
8bf494e5a8 change nature of CueBehavior enum to be bitwise
This allows us to OR-in the ImplicitlyIgnoreCues bits, and still toggle
FollowCues on and off to indicate user-requested behavior
2022-01-06 11:59:58 -07:00
44d52133ae triggerbox: ignore cue-marker cues if told to do so 2022-01-06 11:23:02 -07:00
85b8816287 NOOP: remove spurious character in comment 2022-01-06 11:12:49 -07:00
4e482076ea add config param to control response to cue markers 2022-01-06 11:10:28 -07:00
45df39bd0e fix mysterious incorrect copy constructor call for AutomatableSequence
msvc calls this out, but gcc/clang do not. It is not clear why, and it might be worth understanding why
2022-01-06 10:36:50 -07:00
a1c627aa24 triggerbox: minor changes after change in how timeline cues are implemented 2022-01-06 00:23:49 -07:00
a187b5e1fb triggerbox: reimplement timeline cues without session events 2022-01-06 00:23:27 -07:00
7c35783d63 various fixes for cue marker creation, dragging, naming 2022-01-05 13:27:47 -07:00
fd2f2f46cc triggerbox: implement cue-triggering session event handling (sync with location markers)
Still requires handling tempo changes
2022-01-05 13:27:47 -07:00
f1a81b303a add several newer enums to libs/ardour/enums.cc 2022-01-05 13:27:47 -07:00
acdc1cd707 extend/adjust Location API to handle cue markers 2022-01-05 13:27:47 -07:00
93b30976e5 cue events: some basic handling framework for syncing cue markers with session events that implement them
This doesn't actually do anything yet
2022-01-05 13:27:47 -07:00
5783664b9e locations: provide Location::cue_change signal to notify about cue marker changes 2022-01-05 13:27:47 -07:00
73ca08933d fix default naming of cue markers 2022-01-05 13:27:47 -07:00
54aa57a297 fix naming of unnamed cue locations 2022-01-05 13:27:47 -07:00
1d2fa465d3 remove mistaken handling of cue marker bar events 2022-01-05 13:27:47 -07:00
7e65097ded trigger_ui: corner button has menu to set ALL clips in the grid
...likely only useful for troubleshooting+development ... tbd
2022-01-04 16:45:11 -06:00
fdd92c82fb trigger_ui: implement icons for new launch-styles and follow-actions 2022-01-04 16:45:11 -06:00
8a49d274fb fix luabindings for Editor.mouse_add_new_marker(), since API changed 2022-01-04 15:23:51 -07:00
b1f73d25bf actual GUI interaction for cue marker ruler 2022-01-04 15:23:51 -07:00
77d83540b1 copy-n-paste addition of cue marker ruler (based on cd marker ruler) 2022-01-04 15:23:51 -07:00
c2d18dabd5 add new location flag, IsCueMarker 2022-01-04 15:23:51 -07:00
Jim Ramsay
79a365edce
Allow latency measurements even if inverted wiring is detected
Inverted wiring is important to call out when detected, but the measured
latency is still valid and should be applicable.
2022-01-04 15:54:49 +01:00
547465e1fa
Implement ImportAsTrigger w/ImportSerializeFiles
Place imported files on the same new track on consecutive
trigger slots.
2022-01-04 02:26:04 +01:00
02b94123ef
Implement new trigger-track from region drop 2022-01-04 02:26:04 +01:00
aa3806d875 triggerbox: support for ReTrigger launch style 2022-01-03 17:45:21 -07:00
58d4c1e317 triggerbox: add ReTrigger launch style; do not stop running slots when cue launching 2022-01-03 17:45:21 -07:00
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
0e5b259cf0
Allow to create new trigger-tracks via file DnD 2022-01-03 23:57:50 +01:00
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
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
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
ca5043288c remove debug output 2022-01-02 17:23:01 -07:00
41310d9b8a brace style (braces missing) 2022-01-02 17:20:39 -07:00
66b170075b triggerbox: add Forward/ReverseTrigger follow actions (GUI edition) 2022-01-02 17:20:39 -07:00
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
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
987df219e0
Fix building libardour unit-tests, disable BBT tests for now 2022-01-03 01:11:54 +01:00
e295e1c8d7
Disable evoral unit-tests -- nutempo update is needed 2022-01-03 01:11:54 +01:00
4ded1e7df4 fitted_canvas: second part of 3784aa 2022-01-02 16:10:36 -06:00
942e362e18 fitted_canvas: virtual accessor will be useful for mb 2022-01-02 16:06:06 -06:00