Hyperbeam API (YC W22) – Multiplayer embeds of any website

Hi HN, we’re Philip, Amby, and Declan from Hyperbeam (https://www.hyperbeam.dev). Hyperbeam is an API that makes it easy for developers to embed real-time multiplayer capabilities into their web apps—including any other web app that you want to provide multiplayer access to.

Building software to connect people in real time is hard. We experienced this in college when we built a “watch party” site for people to watch movies together (https://hyperbeam.com). Other watch party solutions were unreliable, so we spent two years building tech to allow friends to watch stuff together with ease.

The key piece was a “multiplayer web browser”. By that we mean a Chromium instance that you embed inside your own web app (i.e. web browser inception) which is actually hosted on a server and streamed via WebRTC, and so can be shared and controlled by multiple people at the same time.

For example, say you have an online tutoring platform. An instructor can open any application in the embedded web browser and then work on it with the student together.

Another use case is making non-multiplayer apps multiplayer. One of our customers wanted to add a collaborative version of Google Slides to their product, so multiple participants could navigate the slides at once. Google doesn't provide an API for that, so users had to screen share, which isn't multiplayer. With Hyperbeam, you just open up a shared instance of Google Slides and then multiple people can control it.

We didn’t learn about those use cases until later, though. What happened was that we grew hyperbeam.com to 150k monthly active users and over 1M hours of video per month, but then it stopped growing. Despite this, we got into YC, and soon had multiple companies asking to buy our multiplayer browsing tech. After closing three deals, we decided to sell our multiplayer web browsers as an API. That way other companies can build products to connect others without going through two years of WebRTC hell like we did.

We allow developers to embed multiplayer web browsers in their web apps with a few lines of code. Users can then visit any website from inside that web app together. Developers can specify control permissions, programmatically navigate to specific URLs, and hide the browser UI so apps appear as if they are natively integrated.

Unlike screen share solutions that upload your personal computer stream to participants, Hyperbeam’s multiplayer web browsers run on our own virtual machines. This eliminates the upload speed bottleneck that many users experience.

We host a Chromium browser instance on our server, record the video and audio output and stream it to all participants using WebRTC. That sounds simple, but hosting full-blown Chromium instances is challenging, especially doing it cost-effectively: what we learned is Chromium instances, at scale, love memory bandwidth a lot more than the amount of memory. Also, network unreliability, like last-mile packet loss, is also a problem, especially audio packet loss which is a lot more noticeable than video packet loss. A simple hack we have in place is literally sending every audio RTP packet twice, which improves audio quality drastically over spotty connections.

Anyone is welcome to get a free playground API key and try our product! Rather than spend time building a UI for that, we’ve just put up a Google Form in the spirit of do-things-that-don’t-scale. Go to https://forms.gle/RSQhbFXbdrcqwqsc9, fill in your email and we promise to send you an API key right away. The API docs are here: https://showy-backpack-b3f.notion.site/Hyperbeam-API-eb9874b...

Pricing is not transparent on our website yet—we’re still working it out. However, we’re going to use the same business model as CPaaS companies such as Agora and Twilio. We’ll charge customers a minimum amount per month and provide a set amount of participant hours. If a customer exceeds the provided participant hours, we continue charging at a fixed rate.

If you want to try our tech in action, you can do that by signing up for free and creating a room using our original Hyperbeam watch party platform: https://hyperbeam.com/app/register

Alternatively, we'll be answering questions live in our HN watch party here: https://gg.hyperbeam.com/invite/w0c6n-Ko

We’re happy to answer any questions you have, and would love to hear your ideas for other potential use cases as well. Thanks!

Get Top 5 Posts of the Week

best of all time best of today best of yesterday best of this week best of this month best of last month best of this year best of 2022 best of 2021 yc w23 yc s22 yc w22 yc s21 yc w21 yc s20 yc w20 yc s19 yc w19 yc s18 yc w18 yc all-time 3d algorithms animation android [ai] artificial-intelligence api augmented-reality big data bitcoin blockchain book bootstrap bot css c chart chess chrome extension cli command line compiler crypto covid-19 cryptography data deep learning elexir ether excel framework game git go html ios iphone java js javascript jobs kubernetes learn linux lisp mac machine-learning most successful neural net nft node optimisation parser performance privacy python raspberry pi react retro review my ruby rust saas scraper security sql tensor flow terminal travel virtual reality visualisation vue windows web3 young talents

andrey azimov by Andrey Azimov