Commit Graph

30565 Commits

Author SHA1 Message Date
0d5e01eda6
Update Scala to MTS script:
* relax octave requirement, allow the scale
  to repeat at intervals other than 1200 cents
* fix frequency alignment of root note
  to use the given scale (not equal temperament)
2020-06-17 16:18:07 +02:00
0f95bf001d
Remove unused API (Input Metering)
Input metering is now handled by Track::prep_record_enabled()
explicitly setting meter positions.
2020-06-16 22:42:16 +02:00
d557fa5e33
Automatically meter MIDI track inputs on rec-arm 2020-06-16 22:28:19 +02:00
f70b53803d
Include SCL to MTS script with releases 2020-06-16 16:41:39 +02:00
c93ce8d6a4
Refine scala -> MTS script
* clean up, add comments
* skip out-of-bounds notes
* replace assert() with dialogs
* add simple icon
2020-06-16 16:41:07 +02:00
dc23b9e118
Update SCL -> MTS script to send events to tracks or plugins 2020-06-16 04:22:57 +02:00
175b665c97
Add Lua bindings to write immediate MIDI events 2020-06-16 04:22:23 +02:00
59fb0aed36
Add script to read scala files and generate MTS sysex
So far this script can only send MTS to async MIDI output ports
(from the GUI thread).
2020-06-16 03:32:46 +02:00
3294b1ce08
Allow to select pan-automation lanes - #8234
The GUI uses ::axis_view_by_control() if a controllable when
the CoreSelection contains a controllable.

CoreSelection::get_stripables() saves and looks up controllable
by PBD::ID. Panorama automation controls were previously
not found, since they are not directly owned by the route.
2020-06-14 20:31:50 +02:00
b6b95a1761
Amend 87bb0953d5 (Action script button text) 2020-06-13 00:58:32 +02:00
87bb0953d5
Use first char of bound script action in button
In case an action-script does not have a custom icon, use the first
character of the script's name.

see also https://discourse.ardour.org/t/new-ideas-for-2020/104235
2020-06-13 00:12:26 +02:00
cda2e004a8 Fix opening sessions using the Finder (OSX)
The ShouldLoad() signal is handled by flush_pending(). This is the first
time that normal application flow can be interrupted in ::starting()
after app->ready().

This calls ::load_from_application_api(), which in turn calls
startup_fsm->handle_path(). This sets off the complete initalization
process, loading the session, and concludes with ::sfsm_response(),
where there is a call to `delete startup_fsm;`

Previously execution continued in StartupFSM::start() which caused a
crash.
2020-06-12 22:13:58 +02:00
650fd31332
Improve debug message 2020-06-12 05:08:40 +02:00
9708987003
Fix automation write-mode (overwrite existing automation)
AutomationWatch::transport_state_change() is called at a time
when transport has just started to roll, but may not yet be rolling
(count-in, latency-preroll).

Later, after pre-roll is complete and transport starts moving,
AutomationWatch::transport_state_change() is not called again.

Thus set_in_write_pass(true); is never called, and writing
automation assumes that all changes happen while stopped.

In 'write" mode, guard points are added for each change, when
the transport is stopped.

Before this change, this happened at periodic intervals even
when rolling.
2020-06-12 05:08:29 +02:00
d33cc4a3dd
Document transport state semantics
This also adds transport_state_rolling() which can be used
from a TransportStateChanged callback.
2020-06-12 05:02:06 +02:00
e4ccf772f5
Fix MIDI-tracer formatting of samplecnt_t and size_t 2020-06-12 03:41:43 +02:00
5ce12a38e6
Retain connections of ctrl-data ports
Previously "Follow selection" disconnected a MIDI port from
control surfaces, even when it was marked as "MidiPortControl".
2020-06-11 23:24:55 +02:00
6677e9787e
Reserve generic MIDI control surface port-name 2020-06-11 23:19:05 +02:00
b0867b97ad
Don't bundle x42-plugins with Ardour windows binaries
This also allows to selectively include gratis plugins
2020-06-11 22:25:52 +02:00
0e37759495
Synchronize preset changes of plugin-instances
When adding or removing a plugin preset, all instances
of the same plugin need to be notified to update their
preset list.
2020-06-11 19:42:37 +02:00
1c24e9abef
Bump LV2 plugin version (and mark them stable)
> An odd minor or micro version, or minor version zero,
> indicates that the resource is a development version.

from http://lv2plug.in/ns/lv2core#minorVersion
2020-06-10 21:33:53 +02:00
Luciano Iam
8ff4bcfd68
WebSockets: improve JS client message handling code 2020-06-10 19:47:37 +02:00
Luciano Iam
176d803a55
WebSockets: move autoReconnect option in JS client to client ctor 2020-06-10 19:47:37 +02:00
Luciano Iam
a26a9018fd
WebSockets: code refactor
Terminology used by server and client was starting to diverge.

C++ classes ArdourStrips and ArdourGlobals classes have been
renamed to ArdourMixer and ArdourTransport respectively.

State node values for transport functionality have been simplified
and prefixed with 'transport_' to match what was done for strips.
2020-06-10 19:47:37 +02:00
Luciano Iam
ae4df127ad
WebSockets: implement a JavaScript object-oriented client API
Replace previous callback based basic client with an easier
to use object-oriented API that further abstracts the low level
details of the WebSockets Server surface messaging protocol.

All built-in web surface demos were updated to use the new API.
2020-06-10 19:47:37 +02:00
5296ed141f
Fix support for older libwebsocket versions
LWS_WITH_EXTERNAL_POLL a new optional define for libwebsocket 4.x.
Earlier versions always supported it, without the compile-time define.

This fixes support for libwesocket 2.x (Debian, Ubuntu), and 3.x.
Also for Windows, LWS_WITH_GLIB is not available.
2020-06-10 15:58:47 +02:00
f0d5d1323a
Fix MIDI tracer time display for async and transport-master ports 2020-06-10 00:16:54 +02:00
4c5ad08e81
Add mono separate regions to source-list
The "whole-file" property is now mainly used as indicator whether
a region should be in the source list.
2020-06-09 22:49:12 +02:00
Nils Philippsen
f6e38219bc
Don't refer to never used external variable
Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2020-06-09 21:11:21 +02:00
Nils Philippsen
2a456c1921
Add cycles_t type definition on ppc64
Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2020-06-09 21:11:21 +02:00
00346353a3
Prevent entering an illegal session name via copy/paste or otherwise 2020-06-09 20:30:57 +02:00
50e96a2135
Do not allow ctrl chars in session names (2/2)
The GUI applies this to new sessions only, old sessions that
may now have illegal names can still be loaded.
2020-06-09 20:30:55 +02:00
72d45c154a
Do not allow ctrl chars in file (or session) names (1/2) 2020-06-09 20:30:51 +02:00
Hiroki Inagaki
e848afe2ec
Update Japanese translation 2020-06-09 17:48:09 +02:00
Vincenzo Reale
c87edcbf04
Adding appdata and gtkmm2ext Italian translations 2020-06-09 17:44:15 +02:00
Vincenzo Reale
f27e7dadf5
Italian translation update 2020-06-09 17:43:28 +02:00
Matthias von Faber
e3dcd1f5d7
Only try using __pthread_get_minstack on glibc
This is a glibc-only extension, so don't bother on other platforms.
Also, according to POSIX, PTHREAD_STACK_MIN is defined in limits.h, so
include climits just to be safe.
2020-06-09 17:39:24 +02:00
Matthias von Faber
662ff1bd39
Fall back to non-realtime threads again
Makes Ardour start into sessions again when realtime scheduling is
unavailable.
2020-06-09 17:39:24 +02:00
Matthias von Faber
4b7efac3dc
Report true error when tasklist threads cannot be created
pthreads doesn't use errno, so the error message was misleading.
2020-06-09 17:39:24 +02:00
Peter Kovář
630a3d07d2
Added support for the original Contour Design ShuttlePRO 2020-06-09 17:29:01 +02:00
c822f0b370
Re-order windows installer options (non-optional first) 2020-06-09 17:27:32 +02:00
Nikolaus Gullotta
e6bbbe18c6
Skip recent sessions with empty strings for names
This can happen if the recent sessions file has new lines with no
characters on it which can be the direct loading sessions with wacky
names. For example, one that has a carriage return or newline in it.
2020-06-08 09:38:29 -05:00
c7edc28383
Keep aux-send names when duplicating tracks 2020-06-07 21:39:50 +02:00
c7bce4b685
NO-OP: whitespace 2020-06-07 18:25:18 +02:00
21b8885fe9
Remove debug output (also fix some builds, missing stdio.h) 2020-06-07 18:18:58 +02:00
b2c62db450
Fix initial action-button tooltip
The same string is used in ARDOUR_UI::action_script_changed()
when an action is un-assigned.
2020-06-07 18:13:23 +02:00
27e45c585f
Fix another stupid typo 2020-06-06 23:03:21 +02:00
e0548fa798
Offset stack-size by current TLS #8200
Some libraries use thread locals and hence increase the min
requirement.

This is seen on void-linux for example:

> linking a minimal program against cairo gives a
> __static_tls_size of 43008 bytes.
> Doing the same on Ubuntu focal and Debian bullseye,
> __static_tls_size is only 4608.
2020-06-06 19:04:26 +02:00
09aa0a3d1a
Consolidate code using pthread_attr_setstacksize
This also adds some stack constraint to rt and fallback threads
that didn't have those before (ALSA MIDI for example)
2020-06-06 18:35:44 +02:00
515ffbdfe2
Add API to create threads with given stacksize 2020-06-06 18:32:09 +02:00