13
0
Commit Graph

17399 Commits

Author SHA1 Message Date
607af10012
PM: don't print ignore-lists to log (use PM-GUI) 2021-07-22 17:29:56 +02:00
8482172bd6
Remove old VST scan config variable 2021-07-22 17:21:27 +02:00
85d509a292
PM: change scan timeout to from out-out to opt-in 2021-07-22 17:20:08 +02:00
572138ba40
Prepare for new plugin scan timeout 2021-07-22 17:20:08 +02:00
6c6f2df849
Honor "floating windows are dialogs" for tearoffs 2021-07-22 05:45:30 +02:00
8869782c28
Cleanup plugin-scan API, allow to cancel individual scan 2021-07-21 23:04:47 +02:00
38a4bb6736
Fix prev commit (properly stop pulse) 2021-07-21 05:56:42 +02:00
03a17df68c
Pulseaudio: tweak freewheel recovery
Always cork stream before calling pa_stream_flush.
2021-07-21 05:03:54 +02:00
853b2a7f52
Make CoreaudioSource work again
existence_check() calls prevent_deletion() -> mark_immutable()
which since a4d7b45fe0 calls close().

So the file needs to be open()ed after the existence check.
2021-07-21 02:22:25 +02:00
9ae2e1044a
Prefix take name (to capture file name) by default 2021-07-20 23:28:04 +02:00
ba7237c152 Playlist UI Tweaks: Fix some bugs related to old playlists without pgroup_ids 2021-07-20 14:59:47 -05:00
a5220568af
Ensure each source has a corresponding whole-file region
This fixes loading old sessions that had an empty source-list
(previously the source-list showed sources, not whole-file regions).
2021-07-20 15:35:16 +02:00
5a9fde4a0b
Region loudness normalization/analysis #8777 2021-07-20 04:53:48 +02:00
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
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
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
89a4c98bfd
Allow vari-speed control via scroll-wheel 2021-07-19 02:57:45 +02: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
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
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
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
John Emmas
12e1c960b6 Add an extra dependency lib which was previously only needed for Debug builds 2021-07-15 09:30:08 +01: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
9fa71f9c2c
Really fix macOS builds (see 1ca2e4c, 2753c32) 2021-07-13 17:39:26 +02:00
1ca2e4c567
Fix macOS builds (amend 2753c32c0a) 2021-07-13 17:31:53 +02:00
4651ec8382
Unconditionally enable stacktrace for windows builds
This also fixes an issue introduced 7d39205350
(duplicate variable name "levels".
2021-07-13 13:47:26 +02:00
de3291d10b
Allow to skip setting MIDI patch on session-load #8743
Ardour MIDI tracks unconditionally remember any
MIDI CC/Patch changes that are received.

Patch changes are re-played after the session is loaded,
so that they can reach external synths after ports are
re-connected.

This can lead to issues with synth plugins. Their state
is set first. Receiving a patch-change may alter the synth's
state.
2021-07-13 03:29:28 +02:00
2753c32c0a
Consolidate scan-log (partial lines, newlines)
Particularly on macOS child process ReadStdout
may produce many partial lines unbuffered lines.
Since each log message appends a newline, the log
had entries like:

```
Thi
s is a
n examp
le
```
2021-07-12 23:49:47 +02:00
5ddb88724e
Add separator around stacktraces in scan-log 2021-07-12 23:33:03 +02:00
William Light
2ee5082b06 VST3: embarrassing missing closing paren
third time's the charm!
2021-07-12 18:34:23 +02:00
William Light
27c9c191d6 VST3: fix style issue and compilation warning 2021-07-12 17:31:22 +02:00
ebbd48289d
Only mark plugin-scan as complete if it succeeds w/o being canceled 2021-07-12 17:26:51 +02:00
William Light
127cf7aaae VST3: fix crash on fan-out 2021-07-12 17:01:21 +02:00
John Emmas
ebbf34b266 Pass 'localtime_r()' the correct form of 'time_t'
Even for a 32-bit build, MSVC expects 'time_t' to be 64-bit - whereas Glib (i.e. GStatBuf) seems to be using a 32-bit version. Since we're passing by address, this will cause problems in a Windows build.

We can kludge this by making sure we pass the expected type for 'time_t'. Ultimately though, it'd be safer to adapt 'localtime_r()' to accept its first parameter by value, rather than expecting a pointer.
2021-07-12 10:32:18 +01:00
3941ae526f
PM: emit signal when plugin-scan-log changes 2021-07-12 05:23:00 +02:00
ff88d4c9eb
Fix mac-build (amend 6af9b0194e) 2021-07-12 04:59:16 +02:00
778aa6ed9f
Fix windows builds (exception_info is a fn) 2021-07-12 04:57:53 +02:00
6af9b0194e
Print stacktrace when plugin-scanner app crashes 2021-07-12 04:23:24 +02:00
7d39205350
Allow to skip top stacktrace frames
This is useful to hide the call of `PBD::stacktrace` itself.
2021-07-12 04:01:07 +02:00
2e90a58611
Fix pre-roll rec trim near 00:00:00 2021-07-12 02:13:05 +02:00