GithubHelp home page GithubHelp logo

bosear-mach1-plugin-control's Introduction

BoseAR Mach1 Plugin Control

One challenge I approached as an audio mixing engineer is finding accessible tools for mixing ambisonic/spatial audio. Mach1 has built excellent VST plugins to spatialize audio signals, I wanted to build on their monitoring tools. Mach1 has a mobile app that acts as an OSC bridge between their monitoring plugin and BoseAR hardware, however this prevents audio monitoring through the BoseAR hardware without advanced audio routing. I was unable to find a desktop tool that allows me to control the monitor VST with BoseAR hardware, my goal was to build a tool that would enable an audio engineer to do this. This tool enables realtime spatial audio monitoring with BoseAR hardware.

Getting Started

Download the Project Files and install the prerequisities. A video demonstration of the project can be found here.

Prerequisites

You will need Unity version 2019.3.0f6 to act as the OSC bridge. This can be downloaded and used for free, make sure to install the Unity Hub first before downloading the verison.

You will need a digital audio workstation to set up the audio monitoring environment. Reaper is an excellent choice and it's evalution license can be used for free.

BoseAR hardware utilizes Mach1 for audio spatialization. You will need Mach1's plugins that will encode and decode the spatialized audio signals. You can request a 3-month trial license for free; It is worth noting that I requested my trial license during the COVID-19 outbreak and that the trial license terms could be changed in the future.

Installing

Follow the installation instructions for each prerequisite, they should be fairly simple. Add the project folder in this repo to Unity Hub and make sure the project can open without errors.

Running the tests

Open the Reaper project file included in this repo. On the monitor bus in Reaper, expose the M1-Monitor plugin parameters and make sure that the plugin is using the port 9898 for OSC messages. In Unity Hub, add the Unity project found in this repo. Connect your BoseAR hardware via USB to your computer and play the Unity scene. Follow the instructions in the Runtime/Game view, Unity will then identify your hardware and start sending OSC messages. In Reaper, switch your audio output device to your BoseAR hardware to monitor directly through the hardware.

Deployment

Unfortunetly, this app cannot be deployed to a standalone MacOS/Windows app. After reading many forum posts and attempting to manually add the USB provider to the WearableControl Runtime, I have decided to wait on further SDK updates to implement this function. If the need for a USB runtime provider becomes apparent to Bose AR, the addition of this feature can enable building tethered Bose AR applications.

The Bose package in this Unity project has been modified so it is able to build a MacOS or Windows standalone app if you are using the Debug runtime provider. It will also work with the USB runtime provider, however the app will not function properly. It may be possible to bridge communications between the USB provider and the Debug provider, this may be difficult without the USB provider plugin source code. Feel free to attempt to find this solution (just be sure to save a different, modified copy!)

Built With

Contributing

Please reach out to me directly - [email protected]

Authors

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Acknowledgments

bosear-mach1-plugin-control's People

Contributors

aldenbraverman avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.