Commit Graph

31223 Commits

Author SHA1 Message Date
Robin Gareus
767d5f93ba Fix segfault when plugin insantiation fails
*PluginInfo::load() eventually calls `plugin->set_info()`
which depends on a valid PluginPtr. The method needs to return
early if `plugin` is unset or null.
2020-11-21 22:28:48 +01:00
Robin Gareus
a529122249 Optimize stem and direct-out export 2020-11-20 20:14:52 +01:00
Robin Gareus
a1f40979bd VST3: fix failed c'tor case
~VST3PI() may call terminate() w/o a VST3 component.
2020-11-20 19:48:39 +01:00
Robin Gareus
a329de9d2f NO-OP: help out clang-analyzer 2020-11-20 19:42:33 +01:00
Robin Gareus
7d4cd5c76a Fix C++11ism 2020-11-20 13:32:20 +01:00
Robin Gareus
6ca4980e71 FP8: Allow to sort plugin-params by priority 2020-11-20 06:04:32 +01:00
Robin Gareus
3ac7e11eea Support lv2:port-props:displayPriority 2020-11-20 06:03:49 +01:00
Robin Gareus
7558c1316e VST3: inform plugins about last bar 2020-11-20 02:07:49 +01:00
Robin Gareus
50d8eff0d6 Allow const tempo-map lookups 2020-11-20 02:07:37 +01:00
luna
8f00826803 Make sure VST3 projectTimeMusic is updated 2020-11-20 01:43:21 +01:00
Paul Davis
734dc78ed5 prevent possible crash in AudioClock setup 2020-11-19 17:11:48 -07:00
Robin Gareus
62a62eaeb3 VST3 resize quirks (Reason, macOS) 2020-11-20 00:05:34 +01:00
Robin Gareus
1effa1d888 Remove debug message (mac VST3 resizing) 2020-11-20 00:00:37 +01:00
Robin Gareus
7e2bb01ff1 VST3: ignore GUI size allocations before realizing the view
This fixes crashes with some VST3s when calling `onSize()` before
attaching thew view (e.g. Reason Rack Plug on macOS).
2020-11-19 23:12:52 +01:00
Robin Gareus
aef366c156 Fix AudioUnit window size for some non-resizable plugins
Some fixed size AU, do unset `autoresizesSubviews` (Apple's default
is enabled). This also results in the initial size, and position
below Ardour's toolbar to be set incorrectly.

This fixes e.g. Reason Rack Plug AU (and maybe others).
2020-11-19 23:12:52 +01:00
John Emmas
abfceea98c Add missing namespace qualifiers 2020-11-19 16:06:43 +00:00
Luciano Iam
9ee828b47b WS: properly support MIDI strips 2020-11-19 17:03:36 +01:00
bachstudies2020
dd833c89b9 Update package.sh
fixed a few typos
2020-11-19 17:01:20 +01:00
Porrumentzio
a8d924d9e1 Update and rework Basque translation 2020-11-19 16:48:58 +01:00
Robin Gareus
ff3b23d169 More codenames, thanks Eno 2020-11-18 22:33:30 +01:00
Hector Martin
4b9e46f11d Fix normalization in Temporal::Beats for times between -1 and 0 beats
Also fix normalization of times with negative beats and positive ticks
2020-11-18 13:40:31 -07:00
Robin Gareus
a7a389407b NO-OP: whitespace 2020-11-18 19:33:27 +01:00
Robin Gareus
44a6d9d164 Update Export Format dialog layout
* reduce height requirement
  https://tracker.ardour.org/view.php?id=8313#c25191
* group settings sensibly
2020-11-18 19:26:32 +01:00
Robin Gareus
94af225eaf Fix window parent when using different workspaces
This affects only windows opened from the mixer window,
in case the mixer is detached and on a different workspace (desktop).

Window::init (and Dialog::init) set transient parent early on,
and it defaults to the main window (with toolbar). It needs to be
unset before presenting the window, in order to show the window
on the same workspace as the eventual transient parent.

This follows 6dc9134 and f3fbf58.
2020-11-18 16:26:36 +01:00
Robin Gareus
ff51e315e3 VST3: fix kMaxSendLevel, on Mixbus 15dB gain can be added 2020-11-17 14:54:31 +01:00
Robin Gareus
5a27cb9780 Fix copy/edit in 0d8f4eb95a 2020-11-17 03:16:30 +01:00
Robin Gareus
5fd2d6cc81 VST3: add debug message for preset/state restore 2020-11-17 02:44:11 +01:00
Robin Gareus
0d8f4eb95a VST3: Fix uninitialized variable, likely fixes #8460 2020-11-17 02:43:55 +01:00
Robin Gareus
4a8e9f28f3 VST3: unconditionally set controller's component state
This synchronizes component and controller when loading presets
like the VST3 SDK does.
2020-11-17 00:56:54 +01:00
Robin Gareus
de76d583b4 Remove unused variable 2020-11-17 00:16:36 +01:00
Robin Gareus
f9e9c6248d Initialize inline_ctrl variable, fix erratic inline ctrls 2020-11-16 18:27:09 +01:00
Robin Gareus
5950df2b74 VST3: fix duplicate plugin list (windows bundle vs dll) 2020-11-16 18:26:29 +01:00
Robin Gareus
6dc91348d7 Fix transient parent for plugin windows w/detached mixer
This follows f3fbf58185 which unconditionally set the main window
as transient parent. However when detaching the mixer, plugins should
be transient for the detached parent window.
2020-11-16 15:47:05 +01:00
Robin Gareus
3c25281203 Increase taglib version requirement
taglib-1.9 (Oct 2013) added support for INFO tags in WAV files.
2020-11-15 15:04:44 +01:00
Robin Gareus
962d8922ab Enforce session-util app name
This fixes an issue with some macOS that create index oe
meta-data files e.g. `session_utils/._export.cc`.
Besides that it increases consistency.
2020-11-15 01:21:40 +01:00
Robin Gareus
b6ae22cfed Fix script name of pre-seeded scripts (amend c2ffa07e28) 2020-11-15 00:41:24 +01:00
Robin Gareus
cbe4de0f5a Add tagged wav export-format 2020-11-14 19:38:00 +01:00
Robin Gareus
29b0775508 GUI: allow to enable wav/aiff tagging 2020-11-14 19:31:01 +01:00
Robin Gareus
f149a82688 Add support for RIFF and ID3v2 tags (wav, aiff) 2020-11-14 19:30:54 +01:00
Robin Gareus
a95d87ef6e NO-OP: whitespace and private variable-name
This pipes export source-code though clang-format, and some
manual cleanup step.
2020-11-14 17:44:48 +01:00
Robin Gareus
f7cb1b0b48 LXVST2: only call effEditIdle after realizing the GUI
This fixes an issue with some plugin-wrappers, notably
ff021d0581
2020-11-14 02:49:50 +01:00
Robin Gareus
fec37c58bd Flush plugins from rt-thread, prevent concurrent processing
Route::realtime_handle_transport_stopped() does have insufficient
information (PostTransportLocate), so "flush" is called from
Route::non_realtime_transport_stop in the butler thread.

However plugin de/activate() must not be called concurrently with
processing. e.g. https://lv2plug.in/ns/lv2core explicitly states:

"Hosts MUST guarantee that: An Instantiation function for an instance
is never called concurrently with any other function for that instance."
2020-11-14 02:49:50 +01:00
Paul Davis
f41d752cb3 additional update GUI RU translation (Alexandre Prokoudine) 2020-11-13 15:51:29 -07:00
Paul Davis
40edc10f4b update libs RU translation (Alexandre Prokoudine) 2020-11-13 13:17:30 -07:00
Paul Davis
6326ba7be3 update GUI RU translation (Alexandre Prokoudine) 2020-11-13 13:17:16 -07:00
Paul Davis
5b182f65be transport: remove apparently unnecessary code related to locates with auto-play turned off 2020-11-12 18:54:44 -07:00
Paul Davis
8b048bb351 transport: use butler seek count, not PostTransportLocate to decide whether to call non_realtime_locate(), and update butler seek count at end 2020-11-12 18:54:44 -07:00
Paul Davis
ef4d825232 TransportFSM: set _last_locate when doing an interrupted locate 2020-11-12 18:54:44 -07:00
Paul Davis
ab6a1d062d add new butler seek counter 2020-11-12 18:54:44 -07:00
Robin Gareus
ee74a932c6 Zero length Events are illegal
This would later trigger an assert() in MidiRingBuffer<T>::read
when reading the status-byte, and cause undefined behavior down
in optimized builds.

It is unsure if this can happen, but it may explain
https://marcan.st/paste/LHDXNQ9x.txt
2020-11-12 16:51:48 +01:00