Commit Graph

18377 Commits

Author SHA1 Message Date
Paul Davis
0fcc873ec5 correctly hide/show/position triggerbox in route processors 2021-12-13 16:24:13 -07:00
Paul Davis
2a9ab18f7b triggerbox: not visible by default in processor box 2021-12-13 15:27:58 -07:00
Paul Davis
087bdaa87b triggerbox: remove static signal added in dd842fdc5c
Bad design idea. Signal would be emitted from the triggerbox thread, and cannot
return a value from the GUI. Would also be problematic for clip loading
initiated from a control surface
2021-12-13 15:12:36 -07:00
Paul Davis
dd842fdc5c triggerbox: add static signal to let the GUI do something when we cannot determine tempo 2021-12-13 09:20:32 -07:00
Ben Loftis
e7569eabe7 Trigger Cues: implement master Stop button (libardour part) 2021-12-13 07:26:47 -06:00
Paul Davis
9d4a1f080d triggers: return a segment descriptor 2021-12-12 11:20:58 -07:00
Paul Davis
483bdd99cc libardour: new SegmentDescriptor type added (but not used) 2021-12-12 10:55:05 -07:00
Paul Davis
96e1735646 triggerbox: add heuristic to extract bpm from filename
If found, we do not do analysis of the audio data
2021-12-11 21:05:32 -07:00
Robin Gareus
3753d97599 Add Lua binding for Temporal::TempoMap::write_copy 2021-12-11 18:30:29 +01:00
Robin Gareus
ce15b6ed66 Cont'd work on TempoMap Lua bindings 2021-12-11 17:43:12 +01:00
Robin Gareus
3b18b025e3 Fix Lua TempoMap bindings
* Resolve ambiguity between typef'ed ARDOUR::timepos_t and
  Temporal::timepos_t (and timecnt_t, superclock_t)
* Add missing classes TempoPoint, MeterPoint, which are
  return value for various TempoMap methods.
* Change TempoMap into a shared_ptr<> class.
* Move Tempo and Meter out of ARDOUR into Temporal namespace.
* add various bindings to access the TempoMap
* move Temporal enums out of ARDOUR::Temporal namespace
2021-12-11 16:49:28 +01:00
Robin Gareus
60be0c27a1 Use updated temporal API 1/2 2021-12-11 14:42:36 +01:00
Robin Gareus
506bc3a6f6 Disambiguate zero(bool) constructor and is_zero() comparison
This is mainly for the benefit of Lua bindings, but also increases
overall API naming consistency with functions and methods
`is_XYZ()` being used elsewhere.

This API change breaks builds!
2021-12-11 14:33:45 +01:00
Paul Davis
6f91dc0799 canvas: fix an issue with event coordinate translation by ScrollGroup
If there's a grabbed item (GtkCanvas only at present) then unless it belongs to the scroll
group used for scroll offset translation, the event coordinates should not be translated,
even if the mouse pointer moves into the scroll group.
2021-12-10 18:17:58 -07:00
Paul Davis
08e50934c9 canvas: add scroll offset info to Item::dump() 2021-12-10 17:16:10 -07:00
Ben Loftis
972229a02f Remove some spurious printouts 2021-12-08 13:39:38 -06:00
Ben Loftis
3918ee2ed6 Add New Region variables for Clips
Properties are created for announcing changes, but values are not actually stored as undo-able properties.
2021-12-08 12:57:48 -06:00
Ben Loftis
dc826c6521 ArdourCanvas Rectangle: allow subclasses access to _rect 2021-12-07 16:32:49 -06:00
Robin Gareus
0ee628d170 Add preference to show fader on meter-bridge 2021-12-07 17:56:35 +01:00
Paul Davis
7b8be04623 triggerbox: fix mis-designed handling of dest_offset when a trigger starts within the same run() call as another 2021-12-06 14:06:48 -07:00
Paul Davis
bc7e14c8ac remove misleading content from a comment 2021-12-06 14:05:59 -07:00
Paul Davis
0a0ca81e11 triggerbox: add missing property defn 2021-12-06 10:36:57 -07:00
Paul Davis
ef9cca2c07 triggerbox: add missing property defn 2021-12-06 10:27:59 -07:00
Paul Davis
a14bcc455b triggerbox: more properties for Triggers 2021-12-06 09:26:18 -07:00
Paul Davis
4918e4bcb9 triggerbox: change return type for Triggerbox::currently_playing(); add position-as-fraction to Triggerbox 2021-12-06 09:06:46 -07:00
Paul Davis
9a89dd8981 triggerbox: add TriggerBox currently_playing property, and rename ::currently_running() to ::currently_playing 2021-12-06 08:57:06 -07:00
Paul Davis
86f239f185 triggerbox: add 3 additional property descriptors for Triggers 2021-12-06 08:47:29 -07:00
Paul Davis
96b21c4824 fix crash in Playlist::relayer() when there are no regions 2021-12-05 10:36:26 -07:00
Paul Davis
17832e9f86 remove another instance of std::numeric_limits<timecnt_t>::max() 2021-12-05 09:24:13 -07:00
Paul Davis
887cd070b0 remove another instance of std::numeric_limits<timepos_t>::max() 2021-12-05 09:23:33 -07:00
Paul Davis
a72108636b remove another instance of std::numeric_limits<timecnt_t>::max() 2021-12-05 09:23:05 -07:00
Paul Davis
646d1e9a22 remove use of std::numeric_limits<time{pos,cnt}_t> from Playlist
::max() is time-domain dependent, and cannot be encapsulated via a single value.
2021-12-05 09:01:49 -07:00
Robin Gareus
d29d40c1ec Fix stacked region view
Previously this looped endlessly in RegionView::update_coverage_frame()
if the return value was undefined (or wrong time-domain) and smaller
than pos.
2021-12-05 15:05:12 +01:00
Paul Davis
af0e6872b4 triggerbox: handle None trigger follow action 2021-12-04 13:33:32 -07:00
Paul Davis
c1de82f833 triggerbox: fix return value from MidiTrigger::run() when there was an event
last_event_samples was being set to buffer/process()-relative samples, but
needed to be timeline-relative samples.
2021-12-04 13:25:33 -07:00
Paul Davis
65c69b6818 triggerbox: resolve MIDI notes at end of buffer, not one beyond the end 2021-12-04 11:50:31 -07:00
Paul Davis
b3f866b86e triggerbox: more debug trace statements 2021-12-04 11:50:31 -07:00
Paul Davis
4a13a1fa62 triggerbox: fix up what happens at the end of a MIDI trigger 2021-12-04 11:50:31 -07:00
Paul Davis
050b046e4d triggerbox: stop immediately when stop_all() is used 2021-12-04 11:50:31 -07:00
Paul Davis
0c7d578199 NOOP: comments to document Trigger state enum and some methods 2021-12-04 11:50:31 -07:00
Houston4444
36a2fb1ba8 JACK: re-create backend when re-connecting to the server
This updates the client-name when re-connecting to the
server, which is apparently useful with NSM.
2021-12-04 14:39:22 +01:00
John Emmas
6eb1559f79 Use std::vector<Sample*> rather than a simple array
(for a simple stack-based array, MSVC requires that the size should be known at compile time)
2021-12-03 14:31:45 +00:00
Robin Gareus
948fc37b47 Remove '\0' from source file 2021-12-03 13:53:08 +01:00
Robin Gareus
cc34eac4a5 Fix new_midi_track Lua binding
see also e9401a945f
and 1c0593201c
2021-12-03 13:34:42 +01:00
Robin Gareus
1c0593201c Allow Lua bindings up to 12 method arguments 2021-12-03 13:32:49 +01:00
Paul Davis
2b6b7226b0 triggerbox: more substantial changes to the new (justifiable) design; audio triggers seem ok, MIDI triggers untested 2021-12-02 11:27:35 -07:00
Robin Gareus
3b5dbf2252 Mark new Tracks with TB to present them 2021-12-01 23:10:07 +01:00
Robin Gareus
3a2566b4af Add API to set TriggerTrack flag
This is intended to decide if a track will be visible on the
Trigger-Tab/Page. It should be kept in sync with trigger-processor
enable.
2021-12-01 23:10:04 +01:00
Paul Davis
7edbf06420 PluginInsert::silence() should never change the status of _active 2021-12-01 13:26:27 -07:00
Paul Davis
ebc5195490 switch to a more efficient implementation of Processor::check_active() 2021-12-01 13:26:27 -07:00