verse-one's Introduction
Running Verse-One is quite an involved process given the amount of components needed. First we list the requisite hardware and software packages. HARDWARE 1 Windows Computer (Server) 2 Mac Computer (Client, could possibly run on Windows, but untested) 3 Kinect 4 A MIDI Keyboard Controller 5 Wireless Network SOFTWARE For Windows Computer: 1 Visual Studio 2 Kinect SDK installed For Mac Computer: 1 Node JS 2 Google Chrome 3 MainStage, or some other MIDI supported musical instrument PRELIMINARY NETWORK SETUP In order to make server and client communicate, they must be connected on the same local network. On the windows machine, find the local IP. Then in the file UI/index.html, find the line <input type="text" id="hostIp" value="http://192.168.0.101:8080/test"/> and replace the 192.168.0.101 with the correct local IP address of the Widows machine. (Keep the :8080/test part) You might also have to unblock the Windows port 8080. PRELIMINARY MIDI SETUP Make sure the MIDI keyboard is properly connected to your Mac. These instructions are for MainStage although similar steps can be made for other software. In MainStage create three patches. In Edit View, find the Attributes tab under Patch Settings and set the Program Change number to 1,2,3 for each channel respectively. Now in Layout view, click the foot pedal icon and set the MIDI port to "BUS 1 IAC Driver". Now in UI/js/main.js, find the line at the top let midiName = "MK-449C USB MIDI Keyboard" and replace the name with the name of the MIDI keyboard found in the Audio MIDI Setup app on Mac. RUNNING BACKEND To run the backend, open ShapeGame.sln with Visual Studio (in ADMINSTRATOR mode), and compile/run it. Check the url localhost:8080/test on the Windows computer to verify the backend is running. A screen should also appear that will show the skeleton once the user is detected. RUNNING FRONTEND Make sure Matplotlib and Numpy are installed for python cd into the folder "WebBackend". You will have to install some node packages: npm install express npm install glob Now run node index.js To start the web app. Open localhost:3000 in Google Chrome (other browsers do not have support for WebMIDI) ADDING SONGS Beat detection results are cached once computed. To test your own song, place a .WAV file (WITH 22050HZ SAMPLING RATE) in the beatDetection/5_beat/audio. (Note the .wav files included are actually 44100 Hz for better sound quality. We ran the algorithm on the 22050Hz version to generate the json and then replaced the .wav with the original 44100 Hz version. In future version we would want to do the sample conversion for you) ACKNOWLEDGEMENTS Beat detection based off algorithm and pset presented in Eran Egozy's 21M.387 class Kinect application built off of demo app provided by Microsoft, Shape Games
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.