Live-streaming software and hardware development
Software used: Xamarin, Visual Studio
After researching available options to live-stream my wedding in 2015, I decided to create my own solution that would be more reliable and easy to use than any other product on the market.
New Zealand has its own set of challenges relating to live-streaming, including poor cellular coverage in much of the country (which results in low quality/hiccuping/no upload) and less than a handful of vendors offering the service to couples getting married. Those that do offer the service are often simply uploading a video after the event, or using a technology such as Skype to run the broadcast.
Realising the need to develop a solution that would be easy for the couple, as well as the viewer at home, to use, I decided to create ‘Watch My Wedding‘ – a live-streaming service that delivers the necessary equipment to the couple’s door.
About the software
In light of the poor cellular coverage in New Zealand, the software developed for the product needed a custom compression algorithm that could drop the size of the file being uploaded, depending on the amount of data coverage available. Plus, this compression adjustment needed to be determined on-the-fly as the network bandwidth fluctuated. This algorithm has resulted in a smooth stream even where there is minimal network coverage.
The software also checks the strength of the available networks before it starts streaming. With the ability to autonomously switch between all 3 of New Zealands cellular providers, the software can find and use the strongest network available to broadcast the stream.
About the hardware
In order to create a product that suited our requirements, we built our own hardware solution to operate the live-stream. The resulting device has:
- An on-board USB to record the wedding while also broadcasting it
- 3 in-built data connections – the strongest network on the day is automatically chosen to broadcast the stream
- On-board lithium base power management unit to power the unit and camera
- Quad-core ARM processor to run all the software elements
These peripherals are all connected to a custom circuit board which runs our software.
About the app
We have developed an app to complement the existing hardware system, to allow users and on-site technicians to have full access over a variety of controls including:
- Available networks
- Data upload rates
- Settings to force network change
- Video preview
- Adjust camera settings (including exposure compensation and camera orientation).
You can read more about the Watch My Wedding product at the official website: www.watchmywedding.co.nz