Live audio streaming

The business goal

Our client is a small music studio from Chicago. The business goal of this project is to provide a smooth experience for connecting up and coming music talent and producers using one app. This application would transmit voice/audio with close to real-time communication. For that purpose, they need a high-load and simple-to-use app.

The goal of the developed desktop application is to hook up audio stream playing on an ASIO sound card and send it to a remote party with minimal delay and with perfect quality.

Technical side

For this project, we designed an architecture from scratch. The framework consists of two parts: one is a desktop application.  The other is a backend server. We use VoIP approach similar to SIP/RTP, but use extremely optimized codes which work only with Vorbis audio codec. For reliable NAT traversal, the applications communicate with a rfc5766-compliant TURN server.  The HTTP backend is used as a signaling protocol.

The backend consists of two logical parts based on OpenResty and MediaRelay. Both components share one Redis instance as persistence storage. The backend is designed to be scalable and supports hundreds of connected clients and media streams.

Result

The project resulted in creating a Minimum Viable Product that our client used for bringing further rounds of investments. This application also attracts producers and artists.

Marcus Anderson
I will use them again. They do excellent work and are a pleasure to work with.
5/5
Get in touch

    logo

    Contact us on Upwork

    Hire us
    logo

    Contact us on Linkedin

    Reach out us
    logo

    Moscow, 117335,

    Russia