Archive for October, 2016

HTTP/2 Provides a Path to Delay-Free Live Streaming

Live streaming without a delay

One challenge facing media companies today is that live streaming isn’t actually live. It’s delayed by a few seconds or more. This is especially problematic when live broadcast viewers engage on social media with online viewers who are seconds behind in their viewing because the broadcast viewers can spoil the show for the online viewers.

In recent news, Twitter’s first NFL Thursday Night Football live stream ran on a 30-second delay. CNN reported that it was met with largely rave reviews. But the negative reviews were all about the delay. For example, here’s what Oriana Schwindt, TV News Editor at Variety, had to say about the stream:

One future solution to this challenge will be to leverage HTTP/2 in order to make live streaming work without a delay. In a technical presentation at IBC last month, I covered how to achieve this with a system for live streaming that compares well with broadcast.

Here’s the emerging best practices from that talk:

  • Minimize Video Segment Size — The size, in seconds, of a video segment dictates the minimum live delay in a system because it represents the amount of time that an encoder/packager needs to accumulate the segment. Live delay can be reduced by making the segment as small as possible, although the mechanics of congestion control over TCP puts a floor on how small we can make the segments and still keep the TCP channel full. A segment size of 2 seconds to 4 seconds provides a good balance of low delay and efficient use of the channel.
  • Use HTTP/2 Server Push — One downside of making segments really small is that the total number of network transactions goes up by an equivalent amount. HTTP/2’s server push counteracts this by pushing multiple segments in a single network transaction. It also allows for smaller segments than what would otherwise be possible due to the TCP slow start/congestion control issues mentioned above, by effectively creating large “virtual” segments.
  • Optimize Your Video Client for Low Latency — HTTP/2 helps the network deliver content with low delay, but you need a video player that operates with low delay as well. The player needs to carefully manage its playback buffer, and take action (skip frames, etc.) if it is falling behind. We are currently working to ensure that the Adobe Primetime TVSDK has a really low live delay.

These best practices will become relevant when both your content delivery network (CDN) and your video client endpoints support HTTP/2. So, ask your CDN about HTTP/2. And, for more details about the best practices listed above, download this zip file containing all the white papers from the IBC session, “Advanced Developments in Dynamic Video Streaming.” Then, read the paper in that batch titled, “Improving Live Performance in HTTP Adaptive Streaming Systems.

How Research Intern Gang Wu Enhanced Our Video Recommendations Solution

Research intern Gang Wu in front of his office at Adobe

With Adobe Primetime Recommendations, we’ve pioneered an experience where OTT and TV Everywhere viewers can look at the screen, see something they want to watch, and immediately start watching it.

To make this experience a reality, we leveraged the talents of people all throughout our organization, including Gang Wu, a research intern. Wu has worked at Adobe every summer for the past four years while he pursues a Ph.D focused on matrix completion.

This week, published an interview with Wu about his work in enhancing the ability of Adobe Primetime Recommendations to predict which shows a viewer is going to enjoy watching the most. The interview covered how the initial idea came about, the testing of the idea, and what Wu will be working on next.

Here are the key highlights:

    • While cleaning and structuring data for Adobe Primetime Recommendations, Wu came up with the idea that more information could be brought to bear in deciding which videos to recommend. Wu modified an algorithm to leverage information like the user’s device, the content, the language of the video, and more. In tests, Wu found that using the context versus not using the context could improve prediction accuracy by up to 20%.
    • After positive results with an Adobe Marketing Cloud customer, the Adobe Primetime team implemented Wu’s contextual improvements into the core product.
    • Now, Wu is working on a way for Adobe Primetime Recommendations to automatically identify other signals among the detailed session information collected by Adobe Analytics. Wu says, “In the future, we want to make our algorithm capable of automatically picking the information that gets used.”

Be sure to check out the full interview at To learn more about Adobe Primetime TVSDK and the additional benefits that it has beyond personalization, check out the product page.