Commit Graph

30934 Commits

Author SHA1 Message Date
Robin Gareus
cf0904f752 Handle vfork/exec failure
Don't call atexit, exit without cleanup.
2020-10-31 22:33:10 +01:00
Robin Gareus
a9bd7b2848 Remove unused compile-time option to not use vfork 2020-10-31 22:30:45 +01:00
Robin Gareus
edc70200c4 VST3: add generic uname -m fallback 2020-10-31 20:26:34 +01:00
Robin Gareus
7896c30508 Fix cmdline parameter escape 2020-10-31 13:42:14 +01:00
John Emmas
40ed19767a In a Windows build, support launching both older and newer versions of Jack (Stephane's + Filipe's) 2020-10-31 08:01:55 +00:00
John Emmas
5c06fdf1de In an MSVC build, modify our VC project to use weak Jack
(needed to support Jack v1.9.16)
2020-10-31 07:59:09 +00:00
Robin Gareus
85ecc40668 Tweak Mixbus pingback, follow http -> https redirects 2020-10-30 15:58:15 +01:00
Robin Gareus
c69dde96eb Ardour HTTPS verify that peer isn't lying about the cert
https://curl.haxx.se/libcurl/c/CURLOPT_SSL_VERIFYPEER.html
https://curl.haxx.se/libcurl/c/CURLOPT_SSL_VERIFYHOST.html
2020-10-30 15:58:04 +01:00
Robin Gareus
f509a7e003 Extend convenience API to query windows registry 2020-10-30 13:15:06 +01:00
Robin Gareus
1219271321 Cont'd work on implicit solo restore
This is an update to b90f057e6e, allowing processors
to configure when ports change. Fixes loading old sessions with
variable i/o polarity invert.
2020-10-29 19:55:27 +01:00
Robin Gareus
b90f057e6e Fix restoring implicit solo on session load
When a route's output is connected to multiple busses, re-establishing
port-connections on session-load calls Route::output_change_handler
multiple times.

Implicit solo counts are saved and restored by the route's SoloControl,
however the output_change_handler invalidated it on session load.

Since connections are restored iteratively, counting soloed downstream
routes will yield an incorrect result until all connections are
established.

This fixes the issue that implicit solo is lost on session-reload
in case a route has multiple connections with different up/downstream
solo states.
2020-10-28 22:31:26 +01:00
Robin Gareus
6e9d6934d9 Fix previous commit (OSX LV2) 2020-10-28 06:14:31 +01:00
Robin Gareus
1d5cb4150e Fix LV2 ontology install path for OSX bundles 2020-10-28 05:52:54 +01:00
Robin Gareus
7826a1a2a2 Increase plugin-scan progress display frequency 2020-10-27 22:21:49 +01:00
Robin Gareus
dc5b88f730 Pulse plugin scan progress-bar when timeout is disabled 2020-10-27 22:21:46 +01:00
Robin Gareus
722294075d VST3: fix UTF-16 host message 2020-10-26 18:33:10 +01:00
Robin Gareus
8f67fc9c35 Fix clock edited-text and cursor colors
This restores using the distinct colors for cursor and edited text,
which was lost in the theme overhaul in 7f80883eb1.
Since delta-clocks are not editable, the same color is used for
delta display and the edit cursor (orange in the default theme).
2020-10-26 17:41:12 +01:00
Robin Gareus
93b63b1b25 Fix clock cursor entry position
This shows the cursor to the right of the entry point.
2020-10-26 15:56:18 +01:00
Robin Gareus
b119758161 fix debug messages in prev commit 2020-10-25 20:31:50 +01:00
Robin Gareus
da1782d56e VST3: Keep preset in sync with plugin GUI
When a user loads a preset using the plugin's own GUI, update
Ardour's preset dropdown.
2020-10-25 19:50:22 +01:00
Robin Gareus
6c14e568f0 Streamline copying plugin state
Do only load (dlopen) plugin module when instantiating plugin.
Previously new instances were loaded, not used, and unloaded.
2020-10-25 13:14:02 +01:00
Len Ovens
ddcf3eb684 Generic Midi encoders fixed 2020-10-24 16:06:04 -07:00
Robin Gareus
421c52ba7d Fix bounce and freeze
* Include main-out channel-count when bouncing the output
* Do not de-activate disk-reader and mains-out when freezing a track
* Ignore meter when counting channels
2020-10-24 05:44:29 +02:00
Robin Gareus
54829492ca Fix glib/glibmm includes 2020-10-24 04:14:38 +02:00
Robin Gareus
f7cc5e1f38 Search for JACK on windows using the registry 2020-10-24 04:01:54 +02:00
Robin Gareus
9037c9fe22 Replace static registry lookup with library method 2/2 2020-10-24 03:57:44 +02:00
Robin Gareus
32d2ea6c41 Replace static registry lookup with library method 1/2 2020-10-24 03:57:16 +02:00
Robin Gareus
8852069ead Consolidate code: add library method to query Windows registry 2020-10-24 03:56:47 +02:00
Robin Gareus
5d193f7638 Add Preference option to customize VST3 search path 2020-10-24 03:36:44 +02:00
Robin Gareus
76c86ee96d VST3 path customization
Allow to add custom VST3 search to default. the VST3_PATH environment
variable is use to pre-seed this path at first start.
2020-10-24 03:36:41 +02:00
Robin Gareus
c6222caea6 VST3: Implement verbose scan option 2020-10-24 03:21:25 +02:00
Robin Gareus
9ab84a95f1 Fix crash when copying replicated plugins
When copying a plugin via drag/drop or copying plugin state, use
the main instance only. Plugins will later be replicated as
needed when configuring processors.
2020-10-23 23:44:20 +02:00
Robin Gareus
c6545e3436 Really fix typos 2020-10-23 19:51:52 +02:00
Robin Gareus
00f288742f Fix typos in e9144d1542 2020-10-23 16:10:52 +02:00
Robin Gareus
2e98c57fb8 Finalize experiment: always propagate solo via sends
See also caf057f06d
2020-10-23 00:24:06 +02:00
Robin Gareus
8b6e1d78f9 Fix external/sidechain send solo propagation
Since caf057f06d sends propagate solo, however so far
only internal-sends properly cleaned up after disconnect or
removal.
2020-10-22 23:52:01 +02:00
Robin Gareus
e9144d1542 Bundle LV2 ontology with ardour binaries
This is needed for LV2 classes inheritance and to expand
properties of parent classes.

https://github.com/iurie-sw/geonkick/issues/130#issuecomment-714416342
2020-10-22 13:43:10 +02:00
Robin Gareus
32a0c6a3ff Drop TMM ports when closing session, or backend goes away
TMM ports cannot exist without a backend.
This fixes crashes where the PortEngine is re-initialized
(backend change):

Previously, TMM ports were only dropped (and recreated)
in TMM::restart() called from ARDOUR::init_post_engine().
When starting a new backend the old one is already destroyed,
but TM still held reference to Ports owned by that backend.
Calling the port's d'tor caused a memory corruption trying to
acquire the backend's port_callback_mutex:

e.g. When creating new session with a different backend
from a running instance, or unit-test after call to
AudioEngine::destroy(): https://pastebin.com/4D6pLA5s
2020-10-22 07:38:00 +02:00
Robin Gareus
8bc3e86066 Clean up TMM at exit 2020-10-22 07:38:00 +02:00
Robin Gareus
f3fbb96d6a Fix VST3 PSL channel-index order
While Ardour uses separate indices when naming tracks and busses
("track 1", "track 2", "bus 1", "bus 2"), the indices are contiguous
(0: "track 1", 1: "track 2", 2: "bus 1", 3: "bus 2").
2020-10-22 01:37:40 +02:00
Carlo Stemberger
e96c7e9b84 Fix broken link
Lua scripts moved to `share` subfolder
2020-10-21 15:57:58 +02:00
Robin Gareus
136919fc19 Ignore generaed translation files 2020-10-18 17:45:32 +02:00
Robin Gareus
a266a2d5b9 Use session API to set solo
This is required so that ::update_route_solo_state() is called
to propagate solo/mute state
2020-10-18 15:28:10 +02:00
Robin Gareus
72736289c8 NO-OP: rename API rename
CP selection API is now implemented as functions, not signals.
2020-10-18 14:47:05 +02:00
Robin Gareus
84bf97aa49 Update ControlProtocol API, use CoreSelection
* replace signal-emission with direct calls to CoreSelecton
  using BaseUI's session pointer
* remove unused leftmost strip API
* use CoreSelection for first-selected strip
* Accessing CoreSelection does not modify the session
  (allow access from const callbacks)
* replace static calls in P2 surface

This removes indirection and dependency on the GUI for
managing strip selection.
2020-10-18 14:44:38 +02:00
Robin Gareus
9b382fe1c5 VST3: use CoreSelection API
This implements bc78629788 properly, without relying
on libardour_cp static methods.
2020-10-18 14:36:09 +02:00
Robin Gareus
26a1d55f7a Implement _first_selected_stripable as part of CoreSelection 2020-10-18 14:29:12 +02:00
Robin Gareus
e6fe0e8cca Prepare for static CP API removal 2/2
This partially reverts bc78629788
2020-10-18 14:28:45 +02:00
Robin Gareus
818a81aa40 Prepare removing static selection API 1/2 2020-10-18 14:28:38 +02:00
Robin Gareus
d0e1ed403c Update some messages 2020-10-17 18:28:10 +02:00