Qosifire Review: Testing the Live Stream Monitor and Debugger
To some degree, the data reported by Qosifire will vary by protocol, and I’ll cover each in turn. Atop each streams page is the Stream status, which shows the number of successful and failed transfers. I tested using Softvelum connections during a server update of the test system, which apparently produced the large number of errors shown in Figure 5.
Figure 5. The Stream status chart shows the number of successful events and errors over the period selected on the upper right.
Beneath the Stream status chart for HLS streams is the Playlists flow panel (Figure 6), which shows the downloads of the chunk lists and chunks. The playlist shows the M3U8 playlist and the media playlist for each stream as updated during the live feed. There are two display modes for the Flow data: regular and details. In the details mode, which is shown in Figure 6, you can see the DTS and PTS timestamps for audio and video and the delta between the last samples of audio and video PTS.
Figure 6. HLS information includes DTS and PTS timestamps for video and audio and the delta between the last PTS of audio and video.
When this delta is under 0.5 seconds, it should not affect playback. However, this delta may impact playback when it is between 0.5 and 1 second, so Qosifire highlights this in yellow. When the timestamp differential exceeds 1 second, it probably will impact playback, so Qosifire highlights these instances in red. If you’re experiencing playback issues, this data can point you to a synchronization problem during encoding or another origin-related problem.
Beneath the Playlists flow panel are graphs showing overall traffic, average bandwidth, and the buffer status (Figure 7). While the throughput numbers are always interesting, buffer status is where the rubber meets the road, showing whether the client was able to download data fast enough to keep the stream alive.
Figure 7. Traffic, bandwidth, and buffer status for each stream in the adaptive bitrate (ABR) group
On the right beneath the Stream status chart is the Downloads chart, which shows the download of chunk lists and chunks for each rendition of the HLS stream (Figure 8).
Figure 8. Downloads streams for HLS
Beneath that is the Events stream (Figure 9), which shows general events (task started and finished), Domain Name System (DNS)-related and network events (hostname resolved, failed to resolve host, redirect, connected to host, failed to connect), and multiple HLS-specific events (stream info, invalid task, bad playlist, bad chunk list, request timeout, gap in chunk list, wrong media sequence, checklist parameters changed, bad chunk, bad init segment, buffer too short, buffer too long). See this page on monitoring HLS streams for additional details on these events.
Figure 9. Events stream for HLS
Most error conditions and many other events have a details button to reveal additional status and diagnostic information. Events in red are transmitted to admins and users via email alerts or notifications in the iOS or Android apps.
With end-user delivery via RTMP on the wane, most RTMP monitoring these days will relate to either encoding/delivery issues from the live-streaming encoder or connections between origins and edges. Note that if you use Qosifire to monitor your outbound capture stream, you’ll be doubling your outbound bandwidth requirements, which could be a big deal.
In terms of data provided, RTMP stream monitoring is similar to HLS. On top is the Stream status chart, again configurable as to duration (Figure 10). Graphs on the left show traffic (data received per second), bandwidth (average transmission speed per second), and buffer size available for audio and video.
Figure 10. Stream-monitoring data for RTMP
In the Events stream for RTMP events, Qosifire tracks the same general, DNS-related, and network events as HLS and multiple RTMP-specific events, including stream, video info, audio info, buffer too short, buffer too long, and general error; most have additional details available on the right. For more information, see the support page on RTMP stream monitoring.
Finally, the data tracked for Icecast is shown in Figure 11 from the Android app on my Samsung Galaxy Tab A. The now familiar Stream status chart (not shown) is above the Traffic and Buffer graphs, which are above the Events feed. The Events feed for Icecast streams shows the same general, DNS-related, and network events as RTMP and HLS, along with Icecast-specific events like streams info, metadata, buffer too short, buffer too long, audio quality events, and general errors. You can read more about Icecast streaming.
Figure 11. Icecast reporting from the Qosifire Android app
What does all this add up to? QoE and QoS are crowded fields, with a range of typically expensive and highly capable products that can perform advanced functions like video quality monitoring and switching CDNs to optimize delivery performance or cost. Qosifire approaches the market from the other direction, allowing you to build and configure your own basic QoS monitoring system according to your needs and budget. Documentation is outstanding for such a new, developer-oriented product, which should really simplify installation and usage.
It’s worth noting that Qosifire’s Icecast decoding capability allows it to perform basic QoE monitoring on audio streams that it can’t match for video. Otherwise, if you’re looking for a highly customizable and affordable way to monitor and debug your live streams, Qosifire is worth a look.
[This article appears in the September 2019 issue of Streaming Media Magazine as "Review: Qosifire."]
"We want to be the defacto standard for video processing, workflow automation, and quality management," says Telestream CEO Scott Puopolo.
Engaging with fans through brand-sponsored live events can drive tremendous value, but getting them right means facing unique challenges.
It wasn't easy for silent film directors to make the jump to talkies, and it isn't easy these days for video producers to get the hang of live streaming.
From the big games to corporate events, live video remains the cutting edge of streaming video. Will 2019 be the year that many decide to cut the cord and stream their live channels?