13
0
Commit Graph

32420 Commits

Author SHA1 Message Date
a22fe3cdc8 Amend 285bb4ac7f: remove incomplete code 2021-07-19 20:32:11 -05:00
285bb4ac7f Mackie Control : Improve debug trace output by skipping meter write output 2021-07-19 12:25:27 -05:00
581589f080 Mackie Control: Don't call port write directly since it bypasses active chk
This keeps the master fader from sending midi output before everything
is initialized.
2021-07-19 12:24:36 -05:00
a6ef7df1fd
Fix TSC signal emission (monitoring and automation)
TransportStateChange() triggers various updates.
However at the time the signal is handled
`transport_rolling()` and/or `transport_state_rolling()`
may still return false.

This fixes incorrect In/Disk display on tracks (RouteUI)
and incorrect automation write-pass handling,
when toggling stop/play.
2021-07-19 19:17:57 +02:00
e9ed448994
Fix various shuttle ctrl issues
This reverts most of 50c555f1a1

* Never render from `map_transport_state()` callback
* re-instantiate deadzone, only update when last_speed_displayed
  differs by 0.5%
* Fix Pool OOM due to mapping state doing direct UI changes
  instead of delegating this to lower priority render()
2021-07-19 18:26:23 +02:00
3582c16871
Retain shuttle color regardless of speed
Even if the default text is boring, dark gray on black
is not readable. This makes Ardour behave like mixbus (which
always used default foreground).
2021-07-19 18:26:23 +02:00
c5e5659022
Fix crash when demangled symbol is n/a
std::string foo (NULL) can throw a std::__throw_logic_error
which was not caught.
2021-07-19 18:26:22 +02:00
572a69758a
Min playback speed is +/- (100/16)%
This is for at least two reasons: transport will effectively
move with 32 samples * 6.25% = 2 samples per cycle and the
resampler cannot up/downsample a factor of > 16 with
reasonable quality.
2021-07-19 18:26:19 +02:00
John Emmas
b454ff0e90 Add/remove source(s) in our MSVC project (libardour and gtk2_ardour) 2021-07-19 11:27:02 +01:00
f8c551db5c
Remove debug message 2021-07-19 04:16:12 +02:00
1eb0c1ec9b
Remove debug message 2021-07-19 04:12:56 +02:00
f680c69c27 request, do not try to directly set default play speed 2021-07-18 19:48:30 -06:00
e01f898f3b libardour: adjust names for default speed APIs and make ::set_default_play_speed() private 2021-07-18 19:48:13 -06:00
3bdf009e11 libardour: provide infrastructure for requesting default play speed 2021-07-18 19:40:21 -06:00
8b365e238e
NO-OP: clang-format 2021-07-19 02:58:51 +02:00
e764714157
Toggle varispeed dialog visibility when speed is 100% 2021-07-19 02:58:10 +02:00
89a4c98bfd
Allow vari-speed control via scroll-wheel 2021-07-19 02:57:45 +02:00
9a66bd6163
Consolidate Varispeed dialog
* localize speed changes into varispeed dialog
* make speed-changes idempotent
* remember window position (do not overlap with button)
  ideally the window would show up below the "Vari" button
2021-07-19 02:56:14 +02:00
0ca77db96d
Separate transport and varispeed dialog 2021-07-19 00:55:59 +02:00
fad1d07747 Fix the shuttle slider (TM) 2021-07-17 20:52:26 -05:00
e152b80abd Playlist UI Tweaks: add playlist-creation buttons to Playlist Selector dialog.
Also fix gtk packing so the list grows if you resize the window.
2021-07-17 20:52:26 -05:00
6813488025 Playlist UI Tweaks: check the return value of stamp_new_playlist so user can Cancel 2021-07-17 20:52:26 -05:00
b798d6cd77 Default_Play_Speed: varispeed dialog does not need Octaves 2021-07-17 20:52:26 -05:00
7f011f271f
Ignore symlinked, duplicated VST plugins
This happens with e.g. the IEM suite when a user has both
/usr/lib/vst and /usr/lib/lxvst in the search path.

The same plugin was found twice due to symlinks:

```
/usr/lib/lxvst/iem.at -> ../x86_64-linux-gnu/iem-plugin-suite/vst
/usr/lib/vst/iem.at -> ../x86_64-linux-gnu/iem-plugin-suite/vst
```

And then blacklisted itself:
> "Ignoring plugin 'MultiBandCompressor'.
> VST-ID conflicts with other plugin 'MultiBandCompressor' files:
> '/usr/lib/x86_64-linux-gnu/iem-plugin-suite/vst/MultiBandCompressor.so' vs
> '/usr/lib/x86_64-linux-gnu/iem-plugin-suite/vst/MultiBandCompressor.so'
2021-07-18 01:22:26 +02:00
cd20282fdd
PM-GUI: allow to re-index plugins (cache only, not scan) 2021-07-17 01:10:29 +02:00
4d15326a78
Hint that plugin-scan may wait for user-interaction after 30sec 2021-07-17 01:08:05 +02:00
1ef0c49aee
Show plugin-manager after scanning from prefs
This points users to the new plugin-manager
when they initiate a scan from the preferences.
2021-07-17 01:04:04 +02:00
adf93c85fe
PM: scan-timeout count-down even if timeout is stopped
This allows the GUI to determine for how long the scanner
ran after the timeout was canceled. Count up to 90 sec.
2021-07-17 01:02:21 +02:00
6cf19dac18
Fix crash on xrun-reset when recording
Since 80c11a763a the GUI is notified when the xrun counter
is reset (previously the rec-ui xrun counter never returned
to zero).

However when create-xrun-marker is enabled ARDOUR_UI::xrun_handler
tried to create a marker at -1 which causes various issues.
2021-07-16 21:14:00 +02:00
c3978cefb1
Rename pluginlist button color
There was no "pluginlist radio button" button but there
now is a radio button.
2021-07-16 18:47:13 +02:00
39a43f2042
PM-UI: add tags, extend search 2021-07-16 18:47:13 +02:00
c4f855d13a
PM-Sel: remove hidden toggle, turn Fav into a checkbox 2021-07-16 18:47:13 +02:00
82c536ec81
Fix test/profiling tools
* use dummy-backend (don't expect engine to be running)
* add required TestUI / Receiver

Lots of regions: add scope to prevent SessionHandleRef
  existing across session deletion

RunPC: take process-lock before processing, prevents various
  assert() and concurrency issues.
2021-07-16 18:47:13 +02:00
John Emmas
efb0d077d1 Substitute %T when calling 'strftime()' (%T isn't supported by all compilers) 2021-07-16 12:29:07 +01:00
a3fa94d06e
PM-UI: NO-OP clang-format, fix typos 2021-07-16 07:34:43 +02:00
b98ff56397
PM-GUI: NOOP, use GTK namespace 2021-07-16 07:21:01 +02:00
1e0d2a233b
PM-UI: Update sensitivity on deselect 2021-07-16 07:12:24 +02:00
65674e4704
PM-UI: implement search 2021-07-16 05:52:16 +02:00
1d993d586d
Clean up vfork_exec_wrapper static intialization
Print a less cryptic error message in case the wrapper app
cannot be found. Also address a future race condition (once
we start parallel plugin scans and will exec-wrapper from a
helper thread).
2021-07-15 21:41:16 +02:00
d9877d5c99 prevent add-location-at-playhead-cursor etc. from adding multiple marks at the same location 2021-07-15 09:03:16 -06:00
3c43fe54bb
Fix C++11ism (template argument uses local type) 2021-07-15 16:18:43 +02:00
John Emmas
12e1c960b6 Add an extra dependency lib which was previously only needed for Debug builds 2021-07-15 09:30:08 +01:00
f5b0206a14
PM-UI: extended plugin count 2021-07-14 22:30:55 +02:00
c92dfed706
Fix windows builds (stacktrace pthread debug) 2021-07-14 16:04:07 +02:00
46251c2068
Fix Windows debug builds 2021-07-14 15:07:26 +02:00
15fd9f23f3
Fix OSX builds 2021-07-14 15:07:26 +02:00
ff1d5e7aeb When reconnecting ports, don't give up on first failure.
If there are multiple connections, one might fail due to missing hardware,
but the rest could still be valid.

An easy way to reproduce this was to route "mackie control out" to a device
and to the Midi tracer port. When you opened the session again, connection
from the "mackie control out" to the device would not get restored because
the Midi tracer port does not exist at session start.

This most likely caused other issues with connections when changing backends.
2021-07-13 17:47:33 -05:00
30811989ef
PM-UI: show plugin install path in file-browser
This is currently only available in debug builds,
re-arranging plugin files/bundles is not something
that should happen while Mixbus is running.
2021-07-13 21:02:29 +02:00
d69d918580 slightly extend debug trace output 2021-07-13 12:47:16 -06:00
048636ed0a Escape in internal editing modes should trigger same action as when in other mouse modes 2021-07-13 12:47:16 -06:00