Skip to content

Instantly share code, notes, and snippets.

@marius-serban
Last active December 17, 2015 15:07
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save marius-serban/ee00f3a5091ab780e098 to your computer and use it in GitHub Desktop.
Save marius-serban/ee00f3a5091ab780e098 to your computer and use it in GitHub Desktop.
Measuring playback quality

The purpose of this document is to present several ways in which the quality of music streaming can be measured in a quantitative way.

The benefit in continuously tracking these metrics is that we can measure the impact of improvements and and detect when we've done something wrong and broken the user's listening experience.

Basic benchmarks

Playback latency

Measuring the time it takes from the moment the user requests playback until the audio starts. This is equal to the sum of the connection time and the initial buffer load time. See an example graph(1): music latency graph

Stutters per track

The average number of stutters that happen when playing a track. This kind of graph gives us information about the percentage of tracks affected by stutter but also the amount of stutter. See an example graph(1): stutters per track graph

Average bitrate

The average bitrate at which the track was listened(3). This is not a quality indicator per-se but can inform decisions about bitrate level thresholds.

Other metrics

Rebuffer time

Rebuffer time(2) equals the total amount of time spent during all rebuffer events. This time represents interruptions of the listening experience. With a properly configured serving system, rebuffer time should be zero.

Connection success rate

Represents the ratio of the number of successful connections and the number of total attempted connections. The number of failed connections might be affected by retry mechanisms, for this reason one must be careful to retry a connection only when the Internet connection is available.

References and further reading

  1. http://www3.cs.stonybrook.edu/~phillipa/CSE390/spotify-p2p10.pdf
  2. http://www.streamingmedia.com/Articles/ReadArticle.aspx?ArticleID=64648
  3. https://www.akamai.com/us/en/multimedia/documents/technical-publication/video-stream-quality-impacts-viewer-behavior-inferring-causality-using-quasi-experimental-designs-technical-publication.pdf
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment