Robin Gareus
2c8746eda9
Fix shuttle wheel semi-tone mode
...
Previously it was not possible to return from reverse playback
since left-scroll decreased pitch, even during reverse playback.
This also fixes an edge-case when quickly scrolling through
zero. use_shuttle_fract() ignores rapid events, map_transport_state()
can round speed to zero and next scroll-event set the default +1st
speed (really should have been 0st).This is solved by starting at
-24st, similar to how percentage does not start at 100%.
2021-04-20 13:53:35 +02:00
Paul Davis
62f47e75c9
fix double semi-colon
2021-04-19 16:38:23 -06:00
Paul Davis
180f333cd7
export needs to start transport, not just set speed
2021-04-19 16:14:09 -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
4b095aad62
additional debugging for TransportFSM events
2021-04-19 16:14:09 -06:00
Paul Davis
48f3719661
correctly initialize transport FSM's last speed request
2021-04-19 16:14:09 -06:00
Paul Davis
5f2d043ca4
update macro and call site for sending a TransportFSM::SetSpeed event
2021-04-19 16:14:09 -06:00
Paul Davis
12d361f43d
clear clicks when starting transport
2021-04-19 16:14:08 -06:00
Paul Davis
fc6cf7ddac
simplify, improve and correct logic in Session::set_transport_speed()
2021-04-19 16:14:08 -06:00
Paul Davis
14c2fdccf4
use correct API in a do-nothing-but-forced locate to start rolling
2021-04-19 16:14:08 -06:00
Paul Davis
b8c7ad6a9b
better/correct logic (and macro) to reset default speed at stop (when relevant)
...
This also resets things after rewind/ffwd
2021-04-19 16:14:08 -06:00
Paul Davis
3fa027f19d
correctly use a valid out-of-bounds value for Session::_requested_transport_speed
2021-04-19 16:14:08 -06:00
Paul Davis
eb1468718a
fix ambiguity in TransportFSM Event constructors
2021-04-19 16:14:08 -06:00
Paul Davis
dc19aa866b
change API for Session::set_transport_speed() to include "at-next-start" option
2021-04-19 16:14:08 -06:00
Paul Davis
81c08b6efb
restore sprung shuttle behavior (mistakenly altered in a recent commit
2021-04-19 16:14:08 -06:00
Paul Davis
0bc5f88a65
fix logic error in transport FSM (compare with adjacent conditionals)
2021-04-19 16:14:08 -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
0bccc4bffd
fix mispelling of actual in shuttle control code
2021-04-19 16:14:08 -06:00
Paul Davis
cc8dcb9859
use StartRoll and EndRoll events in request_start() and request_roll()
...
Rather than ::request_transport_speed
2021-04-19 16:14:08 -06:00
Paul Davis
6d5cafb3b6
move various transport logic chunks into Session::realtime_stop(), Session::stop_transport() and Session::start_transport
2021-04-19 16:14:08 -06:00
Paul Davis
79f1ff3df3
fix thinko in TransportFSM's handling of deferred events
...
If a deferred event was used in process_event() but was deferred again, we deleted it. That was wrong,
it should remain in the deferred_events queue.
2021-04-19 16:14:08 -06:00
Paul Davis
11416bf9d1
improve/fix/simplify logic for TransportFSM speed handling
2021-04-19 16:14:08 -06:00
Paul Davis
c65daaa3d6
libardour: change API for Session::set_transport_speed()
...
We no longer need the abort/clear_state arguments because this method only controls speed,
not transport state
2021-04-19 16:14:08 -06:00
Paul Davis
229ea31f34
transport masters: use Session::request_stop() rather than Session::request_transport_speed()
2021-04-19 16:14:08 -06:00
Paul Davis
e5790c6b70
incoming MIDI: use Session::request_stop() rather than Session::request_transport_speed()
2021-04-19 16:14:08 -06:00
Paul Davis
6b7be1083b
no need to request stop if locating with MustStop
2021-04-19 16:14:08 -06:00
Paul Davis
5a159abe1f
new SessionEvents for start/stop transport
2021-04-19 16:14:08 -06:00
Paul Davis
aeed50b1cc
add Session::reset_transport_speed()
2021-04-19 16:14:08 -06:00
Paul Davis
1d97220cff
use Session::request_transport_roll() in main GUI call site
2021-04-19 16:13:38 -06:00
Paul Davis
ec367f49e1
add Session::request_transport_roll()
...
Start separation of API for controlling rolling state from that used for speed
2021-04-19 16:13:38 -06:00
Paul Davis
7cbecaedff
improve GUI behavior of the tempo dialog by preselecting the start bpm text field
...
most common user action will be: show dialog, type keys, press return. This works now.
2021-04-19 16:13:38 -06:00
Robin Gareus
905ea49f05
Prevent libXML read error in case file does not exist
2021-04-19 04:55:17 +02:00
Robin Gareus
71788ecfe4
Update to fluidsynth-2.2
2021-04-18 22:02:57 +02:00
Robin Gareus
dd060b04dc
RecorderUI: Fix monitoring when hot-plugging devices
...
When there are no input ports at the time the engine starts
running, MonitorInputChanged signal was not subscribed to.
This breaks AFL solo. This happens e.g. when re-starting the
engine with ALSA slave devices.
2021-04-18 19:03:35 +02:00
John Emmas
d0f4665d5e
Add/remove source(s) in our MSVC project (gtk2_ardour)
2021-04-17 11:22:11 +01:00
John Emmas
8437d0a54a
Add/remove source(s) in our MSVC project (audiographer)
2021-04-17 11:21:33 +01:00
Robin Gareus
e0a6aba28d
Ignore saved port-name when loading ctrl-surface state
...
In some cases old and/or conflicting port names were saved
with the session (e.g. "Faderport" for FP1,8). Loading old sessions
then merges this state into the config, which could lead to
port-registration failure when the surfaces was enabled.
2021-04-17 02:07:09 +02:00
Robin Gareus
c212909282
Ctrl-surface: do not name single-channel bundle ports
...
Follow Session::setup_bundles() lead for single channel
MIDI bundles. This cleans-up the port-matrix display and
removes redundant names. The underlying engine port-name
is not of interest to the user.
2021-04-17 00:43:20 +02:00
Robin Gareus
271860f630
Consistent port-matrix channel name display
...
Previously the columns always displayed port-names unconditionally,
while rows only showed them if there was one more port per bundle.
2021-04-17 00:27:38 +02:00
Robin Gareus
209536a967
Option to hide "-none-" from instrument dropdown
...
This is useful for the audition instrument selector.
2021-04-16 22:25:41 +02:00
Robin Gareus
c0fe67427d
Fix crash if no audition synth is unset
...
This was possible if a user explicitly selects "-none-" from
the instrument dropdown.
2021-04-16 22:14:25 +02:00
Robin Gareus
b928c62e49
Remove unused auditioner MIDI port
...
Since 2014 Ardour always has and uses a synth for MIDI
auditioning. External synth for audition was never really
supported.
2021-04-16 22:13:12 +02:00
Robin Gareus
32acfbd52c
Fix blurry text in connection manager
...
Text that that is not on extract pixels will be anti-aliased
leading to blurry rendering.
2021-04-16 21:42:49 +02:00
Robin Gareus
b23f260d21
Move glib include out of PBD namespace
...
strictly speaking the include is not needed here since
g_atomic_compat.h includes glib.h. However it is idempotent,
the file does use glib methods, and g_atomic_compat.h may
one day be removed again.
2021-04-16 17:43:31 +02:00
Robin Gareus
f40973658e
Update export preset dithering
...
amend 7c087839f8
prefer triangular dither over white noise
2021-04-16 15:25:23 +02:00
Robin Gareus
725c00236c
Disambiguate export formats with same loudness but different true-peal
...
Amend 75829d20f2
2021-04-16 04:29:16 +02:00
Robin Gareus
861417c07c
Disable rec-arm on export
...
Previously this wasn't the case when latched-record-enable
preference was enabled.
2021-04-16 04:29:12 +02:00
Robin Gareus
7c087839f8
Update Streaming Preset
2021-04-16 04:29:05 +02:00
Robin Gareus
d5696d456f
CD and DVD-A formats are identical, remove redundancy
2021-04-16 04:15:33 +02:00