🚨🚧Work in progress!!!🚧🚨
This project is intended for audio producers that want to hear what their track sounds like on other devices in real-time. It streams audio from your computer via PortAudio and WebSockets to your phone! Or really any device you want.
Clone the repository and run npm install in the root directory. You need
node.js to be installed on your computer.
You need to set up two servers, one backend to capture the audio and stream over WebSockets, and one frontend to serve the website. To start the backend server run
npm run dev:backendYou will be promted to select a device. I've done my best to narrow down the options. For example, you won't get options for devices with "microphone" in the name. Just follow the instructions on the screen. If you see it print a bunch of stuff, your device may not be open. It should say "Stream started" when the input device is streaming.
In a separate terminal, run
npm run dev:frontendThis should host an HTTP server on your computer. This command should return a few IP addresses, and you should connect to one. On Windows, I suggest setting up a mobile hotspot and connecting your device to your computer.
I've done my best to account for the most common failure modes. I would say this project is in a usable state. I made music with it for like 3 hours straight and I love it, but getting everything connected at the start is a pain.
- Fix buffer issue when user resumes playback.
- If possible: Allow background playback (iOS is super strict though)
- Optimization: Don't broadcast audio when there are no clients.


