Luciano Iam
b298f44468
WS: improve mixer demo layout
2020-08-19 18:58:27 +02:00
Luciano Iam
864bcf09b7
WS: Add strip mute buttons to mixer demo
2020-08-19 18:58:26 +02:00
Luciano Iam
75338ad4c5
WS: Add a fullscreen toggle to the mixer demo
2020-08-19 18:58:26 +02:00
Luciano Iam
0b71764f44
WS: Add strip labels in the mixer demo
...
Plus some minor widget code and layout improvements
2020-08-19 18:58:26 +02:00
5218c104f9
Fix off by one (Lua arrays are 1-based)
2020-08-05 20:28:14 +02:00
0c6d369434
Tweak list-plugins script & add icon
2020-08-01 01:15:57 +02:00
591292da0f
a-amp: special case empty pin-mapping mode
2020-07-27 22:03:53 +02:00
44fc824128
Update Lua script to use new bounce API
2020-07-26 17:17:49 +02:00
134319bde6
Fix a/b and cross-fade plugins to handle unconnected inputs
2020-07-23 21:51:13 +02:00
affc28a0a0
Fix meter-point Lua script
2020-07-22 03:54:43 +02:00
Luciano Iam
52e80db8d5
WS: improve pan knob appearance in mixer demo
2020-07-21 06:49:28 +02:00
Luciano Iam
f1d96f5bf1
WS: fix some mixer layout glitches on Safari
2020-07-21 06:49:28 +02:00
Luciano Iam
e7e4fb3a81
WS: Use Ardour native scale for pan knobs
2020-07-21 06:49:28 +02:00
Luciano Iam
1109fc7983
WS: Improve mixer demo
2020-07-21 06:49:27 +02:00
398101ad92
Add cross-fade and A/B switch plugins
2020-07-13 00:53:45 +02:00
caprenter
b09d17ebc8
Adds a midi map for the M-Audio Oxygen 25 3rd Gen controller
...
The existing midi map for the M-Audio Oxygen controller did not work for me.
I note that my controller says 3rd Gen on the back
I used the documentation: https://manual.ardour.org/using-control-surfaces/generic-midi/midi-binding-maps/ to create a new map.
I think adding it to the rest of the files might be better than overwriting the old one, but happy for others to decide.
Maps the transport control buttons on the device only. They are labelled C10 to C15 on the controller, and map to 113 to 118 in the file.
2020-07-05 19:34:27 +02:00
Luciano Iam
c4ead80613
Extend 1de0542
...
Make Mixer and Transport subclasses of ChildComponent
2020-06-23 22:00:58 +02:00
Luciano Iam
d65e1170b9
WS: make ArdourClient extend Component
...
This allows the client object to be observed using the on()
method just like with the mixer and transport components,
instead of passing separate callbacks.
See mixer-demo/js/main.js for an example.
2020-06-23 22:00:58 +02:00
Luciano Iam
1369076c14
WS: improve Observable implementation
2020-06-23 22:00:58 +02:00
Luciano Iam
842b989e19
WS: improve ES6 import/export syntax
2020-06-23 22:00:58 +02:00
Luciano Iam
5929551b3b
WS: improve Component class hierarchy
2020-06-23 22:00:58 +02:00
Luciano Iam
cc8ed1580c
WS: use dot notation for JS properties
2020-06-23 22:00:58 +02:00
6f0e0000e6
Further updates to Scala to MTS script:
...
* allow non-realtime bulk transfers
* debug mode, dump .syx file
* add some comments and references
2020-06-22 23:06:19 +02:00
6c273e28f2
add Nektar Panorama midi map
2020-06-20 08:34:19 -06:00
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
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
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
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
9b9128f917
Better version of 1ee2d57d49
(a hi/lo bypass)
2020-05-29 19:55:58 +02:00
1ee2d57d49
Add a bypass/enable port to a-HP/LP
2020-05-29 17:29:52 +02:00
Luciano Iam
0a19e87646
WebSockets: match message.js constants to C++ code
2020-05-28 18:56:21 +02:00
Guido Aulisi
a5ec4fa3ac
Do not install wscript
2020-05-27 17:23:04 +02:00
Daniel Appelt
2e7992dd58
Use editor_add to avoid unwanted event points
2020-05-17 15:02:04 +02:00
Daniel Appelt
a7fa29d731
Delete as little automation data as possible
2020-05-17 14:14:36 +02:00
34fd8b5356
Bundle script to send raw MIDI to a given port
2020-05-09 23:43:04 +02:00
e424fdc197
Prototype an A/B x-fade plugin
2020-04-30 21:30:04 +02:00
e6de7957ee
Move US2400 device profile to shared data
...
This file is not referenced by any bundle script nor wscript
install directives. Perhaps it's not needed?
2020-04-27 16:20:07 +02:00
Luciano Iam
847eb93784
WebSockets: correct comment in mixer-demo/main.js
2020-04-24 13:23:32 +02:00
Luciano Iam
f983dfe6a7
WebSockets: workaround for index page on Windows
...
Avoid 404s when following surface links while the issue in https://github.com/Ardour/ardour/pull/491 is better investigated
2020-04-24 12:39:06 +02:00
5c127f35b1
Add a Lua script to map MIDI events for the AVL Drumkits
2020-04-24 06:52:01 +02:00
f72b05d3a5
Update Lua script descriptions, rename some scripts
2020-04-24 05:47:02 +02:00
Luciano Iam
742adad310
WebSockets: extend 57fdce8
2020-04-22 21:59:35 +02:00
Luciano Iam
b0733a0d20
WebSockets: fix JS client get* methods
2020-04-22 21:59:35 +02:00
Luciano Iam
32f0e4e8be
WebSockets: remove unnecessary import from mixer-demo/widget.js
2020-04-22 21:59:34 +02:00
1e57175471
Example Lua script to add plugins and sends
2020-04-22 21:40:46 +02:00
Luciano Iam
80dc3a38e0
WebSockets: let clients know if a strip is a VCA
...
This allows to hide the panner for example
2020-04-21 16:20:24 +02:00
Luciano Iam
744762f343
WebSockets: reduce transport surface buttons size
2020-04-20 22:59:17 +02:00
Luciano Iam
4579f5b4cd
WebSockets: transport surface minor optimizations
...
Layout tweaks on small screens (ie, phones)
Custom font for transport time
Fix ArdourClient constructor parameters
2020-04-20 22:59:17 +02:00
Luciano Iam
b7cdb63a95
WebSockets: optimize transport surf. layout
2020-04-20 22:59:16 +02:00
Luciano Iam
66b8a741ae
WebSockets: remove Firefox button focus border in transport surface
2020-04-20 22:59:16 +02:00
Luciano Iam
7118eff7eb
WebSockets: transport surface implementation
2020-04-20 22:59:16 +02:00
Luciano Iam
33fdd023ab
WebSockets: improve plugin params layout in mixer-demo
2020-04-20 22:59:16 +02:00
Luciano Iam
1d84cc0046
WebSockets: add transport methods to client JS
2020-04-20 22:59:16 +02:00
Luciano Iam
5105219076
WebSockets: rename *_desc nodes to *_description
2020-04-20 22:59:15 +02:00
656cd9c8a7
Fix Lua script auto-connect new tracks
...
Since c16ab3a248
Session::new_audio_track has an optional parameter
to auto-connect inputs. Lua scripts don't have a default parameter,
so bool input_auto_connect was assumed false and inputs left
unconnected.
2020-04-20 22:24:08 +02:00
8edc94edea
Update a-Amplifier, use Ardour::Amp
...
This fixes an issue with a-Amp interpolating the parameter in dB,
resulting in a double-exponential fade when the parameter changes.
Now fade is linear in dB, also using Ardour' Amp processor is more
efficient, since interpolation happens in C++.
2020-04-19 00:49:43 +02:00
Luciano Iam
28dd253231
WebSockets: make the mixer-demo look good on small screens
2020-04-17 20:15:11 +02:00
Luciano Iam
1a6997e0c8
WebSockets: change mixer-demo color palette to look closer to Ardour's default skin
2020-04-17 20:15:10 +02:00
Luciano Iam
50ba8dea96
WebSockets: improve JS client and demo
...
add methods to callback.js
automatically reconnect js client on disconnection
mixer-demo do not recreate UI on reconnection
NO-OP: indentation in message.js
make client JS reconnection optional
fix mixer-demo scrolling
minor JS client refactor
improve mixer-demo readability
2020-04-17 20:15:10 +02:00
Luciano Iam
2ba8dab95e
WebSockets: update JS client and demo
...
avoid hardcoded node name strings in mixer-demo
improve mixer-demo design
split ardour.js client into control and metadata mixins
rename JS client class Ardour to ArdourClient
JS client improve mixin implementation
JS client improve manifest parser
NO-OP whitespace and comments
NO-OP update websurface manifest versions
add Ardour icon in mixer-demo
improve mixer-demo scrolling on touch screens
2020-04-17 20:15:10 +02:00
Nikolaus Gullotta
4fffb39258
Fix Mixer Recall script
...
Add new Mixbus internal processors to well_known list, and ensure that
proc is not nil before invalidation
2020-04-16 10:59:44 -05:00
87626e0bdd
NO-OP: remove trailing whitespace
2020-04-16 16:53:48 +02:00
Nikolaus Gullotta
858bb4294d
Fix Mixer Store/Recall
...
Two main problems are addressed by this commit.
First, storage of
parameters was broken because the index for values was set by the
parameter count, not the control port count which set_processor_param()
expects.
Second, the value was not clamped to pd.upper and pd.lower causing some
parameters to fail when set.
This invalidates previous mixer store files.
2020-04-15 13:38:33 -05:00
Nikolaus Gullotta
07709b39c1
Reset master send control along with sends
2020-04-14 13:34:49 -05:00
Luciano Iam
83353b3125
WebSockets: add client getSurfaceManifest() example in mixer-demo
2020-04-13 16:29:42 +02:00
Luciano Iam
9fa7eb15ac
WebSockets: avoid hardcoding node names in mixer-demo, fix typo in message.js
2020-04-13 16:29:41 +02:00
Luciano Iam
da670aa186
WebSockets: improve support for callbacks in JS client lib
2020-04-13 16:29:41 +02:00
Luciano Iam
1f3b40f4bd
WebSockets: improve wording in latest commit instructions
2020-04-13 16:29:41 +02:00
Luciano Iam
e700e640c0
WebSockets: display usage instructions when loading index.html from a local file
2020-04-13 16:29:41 +02:00
Luciano Iam
eead6f9cac
WebSockets: make mixer-demo import ardour.js instead of lower level channel.js
2020-04-13 16:29:41 +02:00
Luciano Iam
1f0dfddde1
WebSockets: split channel.js into channel.js and message.js
2020-04-13 16:29:41 +02:00
Luciano Iam
1e3084d760
WebSockets: detect channel drop in ardour.js
2020-04-13 16:29:41 +02:00
Luciano Iam
236ba5c1c4
WebSockets: NO-OP update some code comments
2020-04-13 16:29:41 +02:00
Luciano Iam
8c2f7d42b8
WebSockets: improve mixer-demo look
2020-04-13 16:29:40 +02:00
Luciano Iam
a8dce60eb5
WebSockets: rename Node to ANode to avoid shadowing DOM Node class
2020-04-13 16:29:40 +02:00
Luciano Iam
b8f52a519a
WebSockets: add support for a message callback in ardour.js
2020-04-13 16:29:40 +02:00
Luciano Iam
c5366427d0
WebSockets: NO-OP update comments in mixer-demo code
2020-04-13 16:29:40 +02:00
Luciano Iam
bfcba85336
WebSockets: throw error if trying to send() before open() in MessageChannel
2020-04-13 16:29:40 +02:00
Luciano Iam
7aca159017
WebSockets: remove test code from ardour.js
2020-04-13 16:29:40 +02:00
Luciano Iam
089a4958ca
WebSockets: complete ardour.js client APIs
2020-04-13 16:29:40 +02:00
Luciano Iam
de7b76e77d
WebSockets: fix node+addr hash when addr is undefined
2020-04-13 16:29:39 +02:00
Luciano Iam
3fd7be9aba
WebSockets: NO-OP add a comment in mixer-demo code that explains approach
2020-04-13 16:29:39 +02:00
Luciano Iam
50fc366eeb
WebSockets: add mixer APIs in ardour.js
2020-04-13 16:29:39 +02:00
Luciano Iam
dbbd3b0eaf
WebSockets: export Node constants in channel.js
2020-04-13 16:29:39 +02:00
Luciano Iam
2b8e9ceb89
WebSockets: make Message.fromJsonText() a ES6 static method
2020-04-13 16:29:39 +02:00
Luciano Iam
feeda2c19d
WebSockets: avoid duplicated node+addr hash function in JS code
2020-04-13 16:29:39 +02:00
Luciano Iam
22199e8845
WebSockets: decouple Message from MessageChannel
2020-04-13 16:29:39 +02:00
Luciano Iam
a51ce18334
WebSockets: rename ArdourMessageChannel to MessageChannel
2020-04-13 16:29:39 +02:00
Luciano Iam
198590bc94
WebSockets: update index page JS to reflect latest two commits changes
2020-04-13 16:29:38 +02:00
Luciano Iam
e7f22cf989
WebSockets: rename resource index.json to more meaningful surfaces.json
2020-04-13 16:29:38 +02:00
Luciano Iam
17cbd65603
WebSockets: rename all occurrences of 'disk path' to 'filesystem path'
2020-04-13 16:29:38 +02:00
Luciano Iam
fef1ed81ed
WebSockets: improve index page design
2020-04-13 16:29:38 +02:00
Luciano Iam
320233b075
WebSockets: add surface version numbers to index page
2020-04-13 16:29:38 +02:00
Luciano Iam
b66b2858b1
WebSockets: add version field in manifests and update loader
2020-04-13 16:29:37 +02:00
Luciano Iam
d709d8b868
WebSockets: cleanup index page JS
2020-04-13 16:29:37 +02:00