Skip to content

castles/OSCWebMixer

Repository files navigation

OSCWebMixer

A server that allows multiple web clients to control their own mix for a DiGiCo sound desk. It currently works with SD and S-Series consoles.

Users can save the website as a homescreen app which makes it easy for them to reconnect when needed. Users can also flag channels as favourites so they filter the display to see channels they are interested in.

Example Server

SD Range Requirements

  • A SD Range DiGiCo Mixing desk with the OSC extension installed and enabled. The appropriate .dosc goes on the app drive in the SDx folder, usually drive D:/SD9/
  • A computer to run the server. Windows, macOS or Linux.
  • Node must be installed. On macOS you can install it with Homebrew (brew install node)
  • Server, Desk and other devices must all be on the same network

S-Series Requirements

  • A S-Series DiGiCo Mixing desk with the latest firmware installed.
  • A computer to run the server. Windows, macOS or Linux.
  • Node must be installed. On macOS you can install it with Homebrew (brew install node)
  • Server, Desk and other devices must all be on the same network

S-Series Known Bugs

  • Sends greater than 15 cannot be used. These will only be available if you have purchased the Channel Count Increase upgrade. The reason they can't be used is because the current version of the S-Series doesn't send the initial values for these channels, causing webmixer to never completely load. The best workaround for this for now is to only use the first 16 AUX channels with webmixer.

SD Basic Setup Instructions

  1. Download repository and navigate to the directory in a shell.
  2. Run "npm install" to download all the required node modules.
  3. Ensure OSC is enabled and configured under External Control on the sound desk. Make sure the OSC extension is installed and enabled.
  4. Rename config/default-SD.js to config/default.js
  5. Update the config to include the console IP and send + receive ports.
  6. Go to Layout > Channel List on the console and enter the AUX numbers and Input Channel numbers into your config file. Save the config.
  7. Run "node ." in the shell to start the server. If a connection is made to the sound desk the script should load all the values and print the URL for other devices to connect to.
  8. Open the IP address on another device and start mixing.

S-Series Basic Setup Instructions

  1. Download repository and navigate to the directory in a shell.
  2. Run "npm install" to download all the required node modules.
  3. Ensure OSC is enabled on the console. You will need to enter the IP of webmixer computer and enable the send and receive ports.
  4. Rename config/default-S.js to config/default.js
  5. Update the config to include the console IP and send + receive ports.
  6. Run "node . debug" in the shell to start the server. Move faders and take note of the numbers for channels and sends. You will need to update the numbers in the config file to match.
  7. Run "node ." in the shell to start the server. If a connection is made to the sound desk the script should load all the values and print the URL for other devices to connect to.
  8. Open the IP address on another device and start mixing.

FAQs

My External Devices won't connect Ensure the server is running and the devices are connected on the same network. Also check the External Control is configured correctly in the desk.
What devices work? Anything with a recent web browser can connect, that means it should work on iOS, Android, Windows, macOS and Linux.
How many devices can I connect at once? No limit has been set and we haved tested 20+ without any issues.
Can I test it without a sound desk? Yes, add skip parameter when running the server. eg. "node . skip"
Can I view OSC messages from the desk? Yes, add debug parameter when running the server. eg. "node . debug"
Why haven't you used Web Workers? Web workers require HTTPS to be enabled and that would be too much mucking around to get it working on clients. Feel free to reach out if you can come up with a nice way for this to work.
WebMixer doesn't finish loading Sometimes the information for a channel is not returned by the desk. Your config may be incorrect. In this case try removing channels and/or AUXs to determine which is causing webmixer not to load.

Donate

If you find this project useful why not make a donation to show your support?

paypal

About

A server that allows multiple web clients to control their own mix for a DiGiCo sound desk.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published