Comcast Getting it Right with WebRTC: Opts for Video Streaming over Video Chatting

May 15, 2014

Comcast nailed the technique behind using WebRTC.

Comcast X1 Platform with WebRTC Inside

Bumped into this one recently:

This one is about Comcast, a cable network operator in the US, using WebRTC in its latest addition to their X1 Platform.

The official announcement says nothing about voice or video calling. It deals with some new features related to user experience, and begins with this text:

X1 triple-play customers will soon be able to live stream personal video from their mobile devices, over the Internet, directly to the television.

This would be the equivalent of using Android to stream content to Chromecast – a use case that uses WebRTC somewhere in there. Just instead of Chromecast, there’s the set top box you have connected to the TV at all times (unless you are a cord cutter).

The quote to explain this new capability?

“Imagine you’re in Philadelphia and can live stream your son’s tee-ball game to his grandparents’ TV in San Francisco,” said Marcien Jenckes, Executive Vice President of Consumer Services for Comcast Cable.

Besides that tweet, and previous tweets by employees of Comcast, there is no indication that it uses WebRTC; though it is quite likely to be the case – The X1 platform is HTML5 based, so getting it “acquiainted” with WebRTC is the best approach. To make things even simpler, X1 is based on Comcast’s RDK which uses WebKit for rendering HTML5 – again, a place where WebRTC existed until Google decided to depart the WebKit effort (but Apple is doing some work on aligning with Blink’s WebRTC implementation).

Why is this important?

There is so much more to WebRTC besides the video call, and this is a great example that doesn’t even make use of the data channel.

Remember that there are 3 API sets for WebRTC:

Using PeerConnection for something other than voice and video by someone other than Google – and in this case a huge service provider – isn’t to be taken lightly.

Stop with obvious. Go for solving areal problem. Preferably one that isn’t obvious 🙂

Kudos for Comcast on this one. Can’t wait to see it working.


You may also like

Comment​

Your email address will not be published. Required fields are marked

  1. Hi Tsahi:
    This is really interesting and compelling.. You’d have to imagine Comcast and others are working on an interface that lets non-technical users like the grandparents here simply tune into their grandkid’s “channel” on the program guide–with access authentication-protected, and with DVR’ed content for when nothing’s live-streaming. It’s even better than going to the kid’s game in person, because you can FF past all the other stupid kids you don’t care about. ;)

    My question though is how does Comcast play this? It’s lots of high-value, high-bandwidth content for their network, so it should generate more revenue; but in a post-Net Neutrality world, can they really squeeze that kind of money out of a broad customer base?

    I do have to ask about WebRTC here–why would it have to be WebRTC at all? Isn’t a use case like this sort of inherently a closed system where it doesn’t matter whether you’re using standards-based technology or not?

    1. Eric,

      Good questions – thanks.

      For Comcast, this isn’t about bandwidth, but rather about user experience and fighting the OTT battle (think Netflix, Fire TV, Apple TV and a future Android TV). This is why they went to all the effort of investing in their X1 Platform and in beefing it up. It isn’t about increasing ROI but about reducing churn and owning the customer.

      Remember that WebRTC is a technology. And that it was designed for the web. Comcast’s X1 is cloud and HTML based, making it a web device. Using WebRTC there was a straightforward decision, with two possible reasons:
      1. Because the investment and rest is lower than other technical options
      2. Because it enables in the future to have other browser based webapps use it. Think getting Tawk.com or Peer5’s P2P streaming right on your TV, served from your X1

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}