Commit graph

2125 commits

Author SHA1 Message Date
Robin Gareus
b064b3c136 OSC: fix some compiler warnings 2021-02-28 20:01:06 +01:00
Robin Gareus
0c3eaf188b OSC: liblo compatibility fix
see also 770fd1519c
2021-02-28 20:00:04 +01:00
Robin Gareus
770fd1519c
Liblo compat fix
Upstream liblo changed the opaque type `lo_message` from void*
to a custom struct {}.

https://sourceforge.net/p/liblo/git/ci/2c1ef1c682e01aabec511223b52d9d845063d6dc/
2021-02-28 02:25:02 +01:00
John Emmas
d2cb383965 MSVC changes to support the new code modules (Tabbable API stuff) 2021-02-24 14:32:23 +00:00
Paul Davis
07c16d38a2 control surfaces: make methods used for transport control (BasicUI) do the right thing w.r.t. default speed 2021-02-12 09:36:52 -07:00
Robin Gareus
acfa04d700
Update Ctrl-surface MIDI port list when ports change
This is a better variant of bbb6851468, directly using
the GUI context without indirection.
2021-02-04 06:19:37 +01:00
Len Ovens
cd524f70dc OSC, strip and select share all main strip functions
Allow blocking strip commands for master or monitor
2021-01-23 21:18:32 -08:00
Len Ovens
a9f0f771c1 Reuse the same code for strip and select
Combine Maser and Monitor to reuse code

Started adding query functionality

	Added query functionality to all touchosc fixed commands
2021-01-23 21:17:46 -08:00
Robin Gareus
eed07770e1
Fix Faderport1 port-connection (amend bbb68514) 2021-01-22 18:46:17 +01:00
Robin Gareus
8386874a03
OSC: Allow to specify marker name #8543
Patch from atsampson
2021-01-18 23:36:35 +01:00
Robin Gareus
bbb6851468
Subscribe to pretty-port name changes (surfaces) 2021-01-18 03:18:20 +01:00
Robin Gareus
1737dc1869
Revert "Fix typo in OSC gain feedback message"
This was not a typo after all, but a way to show the gain in the
name-display, as per manual:
> In the case where Gainmode is set to position, the track name
> will show the dB value while values are changing.

This reverts commit 3290d66a43.
2020-12-17 17:30:24 +01:00
Robin Gareus
3290d66a43
Fix typo in OSC gain feedback message 2020-12-17 00:58:28 +01:00
Robin Gareus
ce43161d4e
WebSockets: log hostname and listen-port 2020-11-23 20:12:57 +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
Luciano Iam
9ee828b47b
WS: properly support MIDI strips 2020-11-19 17:03:36 +01:00
Len Ovens
ddcf3eb684 Generic Midi encoders fixed 2020-10-24 16:06:04 -07: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
dcea35191c
Consolidate code: use API to print plugin-type 1/2 2020-09-15 16:03:33 +02:00
Luciano Iam
9c08c058a3
WS: crash bugfix related to missing strip panner
Surface made Ardour crash when a client connected
and some session track was not a VCA nor had a panner,
like MIDI strips.
2020-09-04 01:59:53 +02:00
Robin Gareus
63a117bf93
And another boost/C++11 fix
This fixes Undefined symbols:
"ArdourSurface::hash_value(ArdourSurface::NodeState const&)", referenced from:
  boost::hash<ArdourSurface::NodeState>::operator()(ArdourSurface::NodeState const&) constin client.cc.1.o
  boost::hash<ArdourSurface::NodeState>::operator()(ArdourSurface::NodeState const&) constin server.cc.1.o
2020-08-31 08:28:50 +02:00
Robin Gareus
a9c2350e87
Fix yet another C++11ism 2020-08-31 07:52:48 +02:00
Robin Gareus
39110463f3
Amend cdd48926d1 use ScopedConnectionList directly 2020-08-31 07:41:11 +02:00
Robin Gareus
cdd48926d1
Remove more libwebsocket C++11isms
* amend previous commit, fix runtime_error implementation
* Do not copy-construct classes that have a PBD::scoped connection list.
  Replace std::map::emplace[C+11], an store shared pointers the std::map.
* Update ArdourMixerStrip is-a ScopedConnectionList (not has-a)
2020-08-30 22:57:43 +02:00
Robin Gareus
8eb4dcb675
Fix websocket C++11ism 2020-08-30 21:15:33 +02:00
Robin Gareus
af79240c81
Namespace libwebsocket surface classes
Using the global names-pace for classes named "Json", "TypedValue",
"ArdourTransport", "ArdourMixerPlugin" etc is not acceptable.
2020-08-30 21:15:07 +02:00
Luciano Iam
665e0686e5
WS: noop use a namespace for JSON utilities
Instead of a class with static methods

Also correct some whitespace to prevent triggering of OCD cycles
2020-08-30 19:29:28 +02:00
Luciano Iam
aa38491b7d
WS: move VCA detection to mixer strip interface
Expose the wrapped Stripable the least as possible
2020-08-30 19:29:28 +02:00
Luciano Iam
e510c0cb75
WS: consistent naming of strip/plugin/param identifiers
Rename all {object}_n variables and arguments to {object}_id

Parts of code were using the former convention, now use the latter everywhere
Another step towards supporting visual position agnostic identifiers in the future
2020-08-30 19:29:28 +02:00
Luciano Iam
c32a5917f3
WS: handle strips and plugins removal 2020-08-30 19:29:27 +02:00
Luciano Iam
a8f917e7e2
WS: prepare for handling object disconnections
Use maps instead of vectors for holding strips and plugins
This allows to deal with "holes" after objects are removed

Also paves the way for a future improved way of identifying
individual strips and plugins
2020-08-30 19:29:27 +02:00
Luciano Iam
7521d8ab6f
WS: add some meaningful error messages 2020-08-30 19:29:27 +02:00
Luciano Iam
3509fe1589
WS: use an object-oriented internal API for the mixer
- This allows to better handle strips & plugins connection lifecycles
- Coherent with the JS client design
2020-08-30 19:29:27 +02:00
Luciano Iam
4a4734fbb1
WebSockets: properly release strips and plugins when removed
This should fix some crashes reported by the beta testing team
2020-08-30 19:29:27 +02:00
Len Ovens
87f7dcc5f6 OSC Panner feedback crash with no panner
both select and route feedback now test for both
	route and panner (not VCA)
2020-08-29 17:08:56 -07:00
Len Ovens
1cc9573dba OSC toggle roll make return to zero optional 2020-08-20 16:26:07 -07:00
Len Ovens
b8da1d0265 fix toggle_roll will only start but not stop PH 2020-08-20 16:26:07 -07:00
Robin Gareus
dfe2270c9f
Revert "WebSockets: properly release strips and plugins when removed"
This reverts commit f007ba6b46.
2020-08-19 23:59:38 +02:00
Luciano Iam
f007ba6b46
WebSockets: properly release strips and plugins when removed
This should fix some crashes reported by the beta testing team
2020-08-19 19:01:18 +02:00
Len Ovens
c8bc9a25b3 Added strip feedback for new automation states
for mute, trim and panner
2020-08-19 09:45:44 -07:00
Len Ovens
5ce796f0b5 Added strip feedback for new automation states
for mute, trim and panner
2020-08-19 09:45:44 -07:00
Len Ovens
ab0217f3a2 Added touch to more stripable controls
pan azimuth and width
	mute and trim
2020-08-19 09:45:44 -07:00
Len Ovens
d5016f80d3 Added automation control to the rest stripable controls
Pan azimuth
	Pan Width
	trim
	mute
2020-08-19 09:45:44 -07:00
Robin Gareus
fcd347fe0c
Fix --no-nls, i18n include order in libs -- #8361
Ardour's "pbd/i18n.h" needs to be included last,
after any include that may indirectly pull in getext or libintl.

For that reason "pbd/i18n.h" must not be used in header files either.
2020-08-19 17:39:32 +02:00
Len Ovens
7ab67c42dc Fixes OSC panner issues: 8338 and 8246
8338 - crash with midi and no audio strip
		detect no panner
	8246 - send feedback of panner type
2020-08-12 08:08:39 -07:00
Len Ovens
5c6e8954ed Add pre/post fader to foldback send creation
add position param to send creation
	default all to prefader as first step
2020-08-08 18:41:03 -07:00
Luciano Iam
e7e4fb3a81
WS: Use Ardour native scale for pan knobs 2020-07-21 06:49:28 +02:00