Better live streaming
The actual use cases
While talking to our customers, we saw a pattern emerge: there were three basic use cases, each having significantly different requirements from the platform.
The first case is “breaking news”. Whenever a reporter unexpectedly found something newsworthy they wanted to get it online as quickly as possible. Often, this was delivered from a phone or a rather simple camera.
What we discovered was that the set-up and event execution was significantly different for each use case.
The second case is "scheduled events" held at a certain point in time. It could be a press conference, a sports game, a festival, or a performance. These events have specific start and end times.
The third case is a "24×7 broadcast". Sometimes this is a re-transmission of a traditional broadcast, and sometimes a newly programmed linear signal.
- Go live now
- Scheduled event
- 24×7 broadcast
- Frequency of events
- Camera set-up
- Mobile phone or a simple camera set-up
- 1–3 cameras and a mixer
- Re-transmission of an existing broadcast
- Uplink bandwidth
- Mobile broadband over cellular or wifi (<3Mbps)
- Mobile broadband or DSL connection (~5Mbps)
- High quality fixed line internet connection (10+Mbps)
- Replay capability
- Instantly published after the event
- Instantly published after event with highlights
- No replays: content already available as VoD
- Low bandwidth, complex to set-up, recordings are hard
- Low bandwidth, equipment configuration, loss of signal
- Loss of signal
- One-click setup, an automatic replay of recordings
- Pre-configured equipment profiles, live sources, stream validation
- Stream validation
Therefore, what we did was to reimagine and to simplify the setup of the live stream from the perspective of these three use cases.
The most important thing for "go live now" was to make sure someone could quickly and easily get started with a live stream. In most cases, broadcasters use their mobile phones or a simple camera/microphone setup since there is little time to configure the device. So we made it possible to start a live stream with just one click.
For those doing a scheduled event, we noticed significant complexity around hardware configurations: it took time to configure the stream every time a new stream was created. Particularly with the lousy keyboard that many hardcode encoders have.
Flowplayer now allows reusing configurations. This not only simplified the setup but also reduced the number of configuration errors. Once the equipment was configured, it would work later on.
For a scheduled event, the key challenge is to publish the event stream ahead of time while indicating to viewers that there will soon be something to watch. We solved this by showing a countdown which tells viewers when to come back.
This countdown seemed helpful, but there was some uncertainty regarding the exact go-live time, so people often decided to set the start-time a few minutes before the actual event.
We also added the option of showing a pre-event video before the actual event in case it was published several days earlier.
This setup has been very successful, and widely adopted.
For live events, our customers were eagerly watching the analytics to see how many people tuned in. We started with a 15-minute delay for the analytics to be generated but realized it was not enough. By re-engineering our analytics processor we can now provide graphs in less than 60 seconds. You can see how people begin to watch your event almost in real-time.
In addition to the real-time analytics, people wanted to have more details. One of the obvious things was to see how many watched the video at each individual point in time. Now we can give you a continuously updated timeline to see when people enter your event, for how long they stay, and when they exit your event; very similar to the retention graph of a video.
We now provide a replay possibility immediately after the event is finished.
There is an option to automatically replace the event stream with the recording, or you can replace it with another video. You can also start the recording at a certain point in time, as most recordings tend to have a few minutes of waiting time before the event starts.
Improved video quality
The most common challenge with live streams outside a studio is the uplink bandwidth.
Think of a soccer field on the outskirts of town, where the cellular signal is average, but not strong. The test signal works well, but on the day of the game, there are 1000's of people at the stadium and of course, the cellular signal drops down.
To solve this common bandwidth problem we implemented pre-configured bitrate profiles. This allows broadcasters to tune their quality settings according to their bandwidth availability and content type.
Here are the default options:
- Input requirement
- Typical use case
~1Mbps / 480p
When lacking a good uplink or using a cellular network
360p @ 600kbps 480p @ 1200kbps
- Standard definition
- ~3Mbps/ 720p
- Normal stream in 720p
- 360p @ 600kbps 480p @ 1200kbps 720p @ 2000kbps
- High definition
- 5+Mbps / 1080p
- High-quality content with good bandwidth
- 360p @ 600kbps 480p @ 1500kbps 720p @ 2800kbps 1080p @ 4200kbps
- Standard definition + passthrough
- ~5Mbps 720p or 1080p H264 and AAC with keyframes every second
- Optimized quality for highest bitrate
- 360p @ 600kbps 480p @ 1500kbps 720p @ 3000kbps Input resolution @ input bitrate
The new pre-defined use cases will greatly simplify the setup, ensuring higher success rates for live streams. Please just try the feature – we hope you’ll like it.