The SuperStreamer team from Ericsson, Finland consisted of Arjun Kamath, a developer and Ella Kaila, an industrial designer. Since the field of TAD (Telecom Application Development) is young, a conscious decision was made to develop not just a hack but a a service concept as well. TADHack 2014 was also seen as a place to meet other TADHackers and have interesting conversations around the area of development using telecom capabilities.
The SuperStreamer hack was initially developed during an internal hackathon held some weeks before TADHack 2014 by a team consisting of Arjun and Afaqu Hussain. The idea was to enable the user to instantly setup a video broadcasting service for viewing within an office environment. The focus was on ease of setup and sharing and minimal configuration.
It was obvious from the very beginning that WebRTC was to be the underlying technology behind the service, given its power and maturity. One of the coolest things about WebRTC is its ability to set up a peer-to-peer (one-to-one) video conference between browsers without any external proprietary plugins. This is relatively easy and there are examples galore of sample apps and code.
However, the challenge lay in setting up a video broadcasting service, i.e one-to-many. Far from making it easy to setup, it was not clear whether such a thing was even possible with WebRTC. Internet searches for existing solutions were disappointing. The crux of the problem lay in identifying new connections and allocating resources appropriately. A little bit of trial and error and viola there was a working prototype. To be wholly honest, the working solution was in all respects and glory a hack.
The setup involved just two clients with their Chrome browsers with socket.io on the server side. The beauty in the hack lies in its simplicity. Once the server is running, it’s all about sending the URL to the concerned participants. Anyone who opens the URL with a WebRTC enabled browser can choose to become the broadcaster by clicking the ‘Start Streaming’ button. The next visitors to the link are now able to view the stream from the broadcaster’s webcam. Another person can become the broadcaster just as easily. The code is available on github here: https://github.com/afaquejam/WebRTC-Tutorials/tree/master/CThaQ
Demonstrating this hack at TADHack was easier said than done. There were several issues with the WiFi, but in the end the presentation went pretty smoothly even though the HDMI connector decided to play hide and seek 🙂
Overall, TADHack was superbly organized for a first time event. The venue and location were prefect. The timing of the event is also appropriate as the TAD community is just growing and companies like Nexmo, Apidaze, Tropo, and many more are building a sizable business operators and developers. It’s a great time to be a TADHacker!