Commit Graph

109 Commits

Author SHA1 Message Date
Ben Loftis 75ae0fd4b1 disambiguate trigger functions: cue_bang -> trigger_cue_row 2022-10-01 09:13:14 -05:00
Ben Loftis be28c9ff88 osc: add functions to trigger cue rows, and stop all triggers 2022-10-01 09:13:14 -05:00
Paul Davis 19db8f9c68 control protocols: fix design of trigger unbang method 2022-08-27 08:32:03 -06:00
Paul Davis 3cffca9178 control protocols: add trigger unbang method 2022-08-27 08:26:08 -06:00
Paul Davis 26c48aae1b control protocols: add trigger bang method to BasicUI 2022-08-27 08:15:17 -06:00
Paul Davis cc2e6b3cf8 libardour: change API of Session::request_locate() to include "force" argument
No behavior should be changed by this modification; the argument has a default value of false, which
matches previous semantics, and every instance where the argument is specified, it is given as false.
2022-05-27 18:49:11 -06:00
Remi Thebault a77ac7107f
fix websockets toggle_roll
Also fix BasicUI::toggle_roll who is supposed to do
the same as spacebar but doesn't.
2022-04-08 19:48:23 +02:00
Paul Davis fcf0c253ad control surface changes to follow TempoMap::sample_at() API change 2021-11-17 15:57:54 -07:00
Paul Davis 9adc336d50 control surfaces: fix BasicUI::jump_by_bars() to use tempo map correctly 2021-10-11 17:48:53 -06:00
Paul Davis 8bada4b5e1 remove public ::bbt_at (INTEGER) methods, because of superclock_t/samplepos_t confusion
libtemporal still needs ::bbt_at (superclock_t) fairly often so retain it as a private method, but public
interfaces take either Beats or timepos_t
2021-08-13 12:51:35 -06:00
Paul Davis 79763893b3 remove/hide Session::tempo_map() and use TempoMap::use() instead (thread local shared ptr) 2021-08-13 12:51:30 -06:00
Paul Davis f67029bd02 random commit to facilitate trivial move of work from laptop back to main system 2021-08-13 12:51:29 -06:00
Paul Davis 086e48796c surfaces: first round of conversion to use timeline types 2021-08-13 12:51:29 -06:00
Paul Davis f4490f54c5 change Timecode::BBT_Time to use Temporal namespace, plus a couple of other minor changes to enable compilation
This still uses the tempo map object in libs/ardour, not the new one in libs/temporal, and isn't likely to be functional
(though it could be)
2021-08-13 12:51:28 -06:00
Ben Loftis 3114ef4de2
Default_Play_Speed: prep work (libardour)
* remove unused variables in session.h
* move default play speed (varispeed(sic)) into fsm
* request_transport_speed should -never- set the default_play_speed
2021-07-03 19:06:02 +02:00
Robin Gareus 83b9ab1bee
Temporarily revert ongoing varispeed development
This reverts bf88f3fe64
until 35813db0f4

in order to move development into a branch, until after the
upcoming 6.8 release
2021-06-26 18:58:24 +02:00
Ben Loftis 006055a2ff Default_Play_Speed: prep work (libardour)
* remove unused variables in session.h
* move default play speed (varispeed(sic)) into fsm
* request_transport_speed should -never- set the default_play_speed
2021-06-25 11:51:34 -05:00
Paul Davis b75a37abdb fix arguemnts to transport call in shared control surface code for transport_play() 2021-06-08 08:32:19 -06:00
Paul Davis 2e501fd77a ensure the BasicUI implementation of rewind/ffwd is the same as the ARDOUR_UI one 2021-05-19 18:32:00 -06:00
Paul Davis 57b3df8b22 copy over (boo!) transport control changes to BasicUI (control surfaces) 2021-05-08 09:20:21 -06:00
Paul Davis 1757cfb8ef use rewind/ffwd option to alter behavior of control surface rewind/ffwd buttons
This does not affect GUI equivalents (yet)
2021-05-04 20:52:01 -06:00
Paul Davis cd4aaa808e use button_varispeed() in BasicUI::rewind() and BasicUI::ffwd() 2021-05-04 16:38:28 -06:00
Paul Davis 009e971bfb correct the implementation of BasicUI::button_varispeed() to provide incremental speed shifting (by semitones) in both directions 2021-05-04 16:38:02 -06:00
Paul Davis fbd1221833 move FaderPort8 method "button_varispeed()" into BasicUI for more general use 2021-05-04 16:10:24 -06:00
Paul Davis 8e868fc743 remove unnecessary 2nd argument from Session::request_locate() calls (default value is identical) (surfaces edition) 2021-05-03 17:40:41 -06:00
Paul Davis f94aec5a59 fix/improve BasicUI's methods for rewind/ffwd/play (used by various surfaces) 2021-04-19 16:14:09 -06:00
Paul Davis 48e5607f7c use Session::request_roll() instead of request_transport_speed (1.0, ...) 2021-04-19 16:14:08 -06:00
Paul Davis 52b7e68102 use new Session transport API calls in GUI 2021-04-19 16:14:08 -06:00
Paul Davis 07c16d38a2 control surfaces: make methods used for transport control (BasicUI) do the right thing w.r.t. default speed 2021-02-12 09:36:52 -07:00
Ben Loftis 276baee8ad surfaces transport hotfix: BasicUI: prefer actual_speed() and transport_stopped_or_stopping() for current Transport FSM 2020-02-23 09:02:21 -06:00
Paul Davis 47767738b9 rename DoTheRightThing to RollIfAppropriate 2020-01-18 08:49:18 -07:00
Paul Davis 3c00048b0c Session::request_locate() takes a tri-valued second argument for "roll-after-locate"
This allows callers to defer logic about auto-play/current rolling state and more to TransportFSM where it
can be cnentralized and is less ambiguous
2020-01-18 08:49:18 -07:00
Paul Davis a8cc5b1303 provide new methods for BasicUI that wrap the "complexity" of how to show transport state via lit buttons 2019-12-29 18:43:51 -07:00
Paul Davis 7b25a89944 part 1 of replicating semantics of ARDOUR_UI::toggle_roll() in BasicUI::toggle_roll()
This can be done better, even without sharing code
2019-11-02 16:32:18 -06:00
Paul Davis a072228de5 remove seamless looping as an option (it's now the only kind of looping we support) 2019-11-01 14:04:28 -06:00
Robin Gareus 365f6d6337
Update plugins/addons GPL boilerplate and (C) from git log 2019-08-03 15:53:18 +02:00
Johannes Mueller 89f39d14f2 Add some options for surfaces to jump in the timeline
* ::jump_by_beats()
* request transport to keep rolling after jump
2019-05-18 13:27:49 +02:00
Paul Davis 4c7e5dbc74 move away from "sync source" concepts 2018-10-05 14:15:02 -04:00
Paul Davis 30b087ab3d globally change all use of "frame" to refer to audio into "sample".
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode
and video in order to keep the legible
2017-09-18 12:39:17 -04:00
Johannes Mueller f7452c2a3a Addressing #7371: don't trigger session->undo() from non-GUI-thread
When triggering Session::undo() or Session::redo() from a
non-GUI-thread (e.g. from a surface protocol) Ardour crashes if setting a
CairoWidget dirty due to a ENSURE_GUI_THREAD assertion. (see #7371)

By triggering undo by BasicUI::access_action() rather than by Session::undo()
we ensure that the GUI thread will finally call Session::undo().

So more like a workaround ... but better than crashing :)
2017-07-01 01:04:44 +02:00
Tim Mayberry 4d927c6bd4 Use braces in BasicUI::jump_by_bars() 2017-05-23 09:13:27 +10:00
Tim Mayberry 7fe188ec92 Use braces in BasicUI::jump_by_seconds() 2017-05-23 09:13:27 +10:00
Tim Mayberry df185e575e Use correct variable in BasicUI::jump_by_seconds 2017-05-23 09:13:27 +10:00
Ben Loftis 6b8be8fa71 Fix set-*-from-edit-range actions, when accessed from control surfaces. 2017-04-01 09:57:06 -05:00
Len Ovens f69808b372 BasicUI moved toggle_click,toggle_roll and stop_forget from menu action to session calls 2017-03-19 23:09:45 -07:00
Len Ovens 1af7e97fd0 basic_ui send midi_panic directly to session rather than through GUI 2017-03-19 07:27:24 -07:00
Len Ovens caae0546a7 OSC fix toggle_monitor_mute/dim/mono in basic_ui 2017-03-18 14:14:02 -07:00
Paul Davis 220fbbe0d8 fix another action name in BasicUI after Editor=>Control migration 2017-01-28 18:51:03 +01:00
Paul Davis e92c169275 fix action names in BasicUI after Editor=>Control migration 2017-01-28 18:51:03 +01:00
Paul Davis 6dbe3a1e3b post-rebase fixes 2016-09-27 14:59:30 -05:00