DIAL Support

Ok, so, i went ahead and read a bit of the DIAL spec just to get an idea of what all Chromecast might be supporting that goes over and above the base DIAL spec.

The Google Cast API includes additional media controls that are NOT part of the DIAL spec.

So, if TiVo wanted to use the Google Cast API to let you control media playback on a TiVo so that app developers could use the Google Cast API to support the TiVo, then yes, they would have to work with Google for this.

However, if TiVo simply wants to support DIAL (which does nothing but launch the app and point it to the correct media) they need no permission from Google, no whitelist, no SDK, nothing. DIAL is a completed and free and open interface.

If you get your Roamio tomorrow, there is no technological reason why, when you pull up your youtube app on your phone, it won't show the Roamio in the list of screens you can play the video on. And when you hit play, it should launch the youtube app on the Roamio and start playing that video.

You will not be able to pause, stop, rewind, etc. from your phone. But you can LAUNCH youtube and play the video.

I think it's pretty clear that if TiVo has an app for a service and the companion app for that service on iOS/Android supports DIAL then you'll be able to cast it to the TiVo.

The only question mark is if the whether the Chrome tab mirroring is something standard that TiVo can emulate, or if it's something proprietary to Google. If it's part of the standard then I'm sure TiVo will support it. If it's something Google did specific for the Chromecast then we wont.

Chromecast is just DIAL with a chrome browser as the content player for 100% of the content. The browser downloads the HTML5 app and plays it.

I mean, it's still using DIAL to tell the Chromecast "play youtube" and chromecast is going "Ok, I play youtube with (looks) the chrome browser! I'll get on that! Man, I feel like I play everything with the chrome browser..."

DIAL would just tell the TiVo "play youtube" and the TiVo goes "OK! I play Youtube with the YouTube app! I'll get on that!"

That is how DIAL works. You just tell the device what it is you want to play, and the device figures out how to play it.

Click to expand...

I own a Chromecast and also a Tivo Premiere.

I thought I'd chime in and clarify some things real quick.

1. ChromeCast does not "require" a Chrome Browser to stream content from applications that support Chromcast (Google's implementation of DIAL).

For example, I'll load Youtube on my Nexus 10 tablet and click on the icon to select the disply, one shows my Chromecast and another shows my Vizio smart TV. I select the chromecast and then click on play, the video is displayed on the TV and I can even "TURN OFF MY TABLET" without interruption to the video.

Works great for NetFlix and is my work around for the craptastic Premiere Netflix app.

So Chromecast on my tablet is like DIAL would just tell the Chromecast "play youtube" and the Chromecast goes "OK! I play Youtube directly from the Youtube web source without a Chrome browser! After all Google 'owns' Youtube and is intimately familiar with the App."

2. Chromecast will work with a Chrome browser on a PC or MAC to stream "any" video content to the Chromecast without a browser boarder on the TV. Thus video content without an "app" can still be used via a Chrome browser.

It's the ability to work directly with the Chrome browser and because it has Chrome in it's name that one is easily confused into thinking it runs everything from an internal Chrome browser on the dongle. In fact on XDA devs, which has rooted the device, it actually runs...... Android. The Chrome is more of a marketing name than to indicate that it runs the Chrome OS on the dongle. Currently I still only see the Chrome OS actually on Chromebooks.

3. Tivo, if they chose to and implemented it using Google's SDK, could even send DIAL video display to the Chromecast device. Likely this won't happen... Why? Because a $35.00 dongle to view Tivo content would be a no brainer in comparision to the Mini's cost. It would cannibalize, thus won't likely be added.

4. If/when I upgrade to the new Roamio, and the DIAL implementation works well and is as broadly supported as the Chromecast feature, I likely won't use the Chromecast anymore. Thus I only am out the $35.00 ($11 actually as I was fortunate to order during the Netflix 3 months promotion and cut that cost from my current subscription) if I find that the Roamio satisfies all my DIAL needs.

Ok, we're having some several language problems here, and I am not helping things. Let's nail some stuff down, ok?

Chromecast is a device, not a standard or a communication method.

DIAL is the method that chromecast devices use to receive commands to show media.

DIAL is a completed standard, implemented on multiple devices and on multiple apps. I have used DIAL to launch Youtube on other devices.

Chromecast is a device which recieves DIAL commands and directs all of them to the Chrome browser.

Google has released an SDK to make it super easy to send DIAL commands to the Chromecast device. That SDK is not yet final and it is entirely possible (likely? I have not reviewed the sniffed packet data that has since hit the internet) that the Chromecast uses some non-standard DIAL based commands for some of its features. However, none of that would in any way stop TiVo from supporting DIAL for all of the same software that can use DIAL to send commands to a Chromecast.

It would be trivial for, let's say, Pandora, to support TiVo as well as Chromecast for their DIAL protocol, assuming TiVo works by running an Opera Browser. All of the work would be done (The HTML5 interface, the DIAL communications layer, etc) they would just have to correctly sniff the TiVo as a DIAL device and send the correct packets to it.

Click to expand...

I totally agree that TiVo can support DIAL for any app that they approve on the TiVo. However, the Cast API is much more involved than DIAL support. DIAL is only about the communication from client to server. The Cast API defines how the server handles the HTML5 app which is required to be downloaded at runtime.

So if Hulu adds DIAL support to their mobile apps, it doesn't mean it will work on the TiVo because the app on the TiVo will have to be updated to support DIAL. I highly doubt we will ever see that unless Hulu updates the TiVo app to HTML5.

The big feature of the ChromeCast system is that it does not require the server/host to have app installed (aka the ChromeCast doesn't have apps on it). You will probably see a lot of apps like this coming out later this year (like HBO Go). However, with the current setup, TiVo will not support them without an accompanying app on the TiVo.

Just the fact that TiVo supports HTML5 through Opera will probably help move along DIAL support though.

1. ChromeCast does not "require" a Chrome Browser to stream content from applications that support Chromcast (Google's implementation of DIAL).

For example, I'll load Youtube on my Nexus 10 tablet and click on the icon to select the disply, one shows my Chromecast and another shows my Vizio smart TV. I select the chromecast and then click on play, the video is displayed on the TV and I can even "TURN OFF MY TABLET" without interruption to the video.

Works great for NetFlix and is my work around for the craptastic Premiere Netflix app.

So Chromecast on my tablet is like DIAL would just tell the Chromecast "play youtube" and the Chromecast goes "OK! I play Youtube directly from the Youtube web source without a Chrome browser! After all Google 'owns' Youtube and is intimately familiar with the App."

2. Chromecast will work with a Chrome browser on a PC or MAC to stream "any" video content to the Chromecast without a browser boarder on the TV. Thus video content without an "app" can still be used via a Chrome browser.

It's the ability to work directly with the Chrome browser and because it has Chrome in it's name that one is easily confused into thinking it runs everything from an internal Chrome browser on the dongle. In fact on XDA devs, which has rooted the device, it actually runs...... Android. The Chrome is more of a marketing name than to indicate that it runs the Chrome OS on the dongle. Currently I still only see the Chrome OS actually on Chromebooks.

3. Tivo, if they chose to and implemented it using Google's SDK, could even send DIAL video display to the Chromecast device. Likely this won't happen... Why? Because a $35.00 dongle to view Tivo content would be a no brainer in comparision to the Mini's cost. It would cannibalize, thus won't likely be added.

4. If/when I upgrade to the new Roamio, and the DIAL implementation works well and is as broadly supported as the Chromecast feature, I likely won't use the Chromecast anymore. Thus I only am out the $35.00 ($11 actually as I was fortunate to order during the Netflix 3 months promotion and cut that cost from my current subscription) if I find that the Roamio satisfies all my DIAL needs.

Click to expand...

You're appear to either be misunderstanding a lot of things or you're just way over your head here.

The Chromecast (device) has a chrome browser in it. That browser loads HTML5 apps. Those apps do not show a border around them because they run as full screen apps. No one said a word about ChromeOS. We said Chrome browser. Just like I have a chrome browser on my android phone and tablet. No one said anything about it loading a chrome browser on your phone/tablet. It loads a chrome browser on the chromecast.

Saying the Chromecast runs android is a bit shady. It's closer to GoogleTV, which is branched from android. It's not entirely untrue, but it's not accurate either. It does not run the version of android my phone runs, though they share a common core.

BTW, it is called a Chromecast because it loads everything in a chrome browser. I.E. the Chromecast is an OS and a web browser. pew pew.

I think it's pretty clear that if TiVo has an app for a service and the companion app for that service on iOS/Android supports DIAL then you'll be able to cast it to the TiVo.

The only question mark is if the whether the Chrome tab mirroring is something standard that TiVo can emulate, or if it's something proprietary to Google. If it's part of the standard then I'm sure TiVo will support it. If it's something Google did specific for the Chromecast then we wont.

Click to expand...

Chrome Tab Mirroring is just a desktop Chrome Extension that sends compressed images to the Chrome Browser on the ChromeCast that "plays" them. It's not proprietary in the sense that the code is secret, but if Google wrote the extension in a way that allows for generic DIAL receivers to decode the information we're golden. The only difference between the TiVo DIAL implementation and the ChromeCast DIAL implementaion is the user of Opera on TiVo and Chrome on the ChromeCast.

I totally agree that TiVo can support DIAL for any app that they approve on the TiVo. However, the Cast API is much more involved than DIAL support. DIAL is only about the communication from client to server. The Cast API defines how the server handles the HTML5 app which is required to be downloaded at runtime.

Click to expand...

Well, i know the Chromecast has been sniffed and we know the data it sends back and forth. And I know it has control messages it sends. So we know it is at least SOMEWHAT more complicated than DIAL. But saying it is "much" more involved is premature. I mean, it might be? How do you know? Have you seen the core protocol? I have not.

So if Hulu adds DIAL support to their mobile apps, it doesn't mean it will work on the TiVo because the app on the TiVo will have to be updated to support DIAL. I highly doubt we will ever see that unless Hulu updates the TiVo app to HTML5.

Click to expand...

No. This is just not true. The Hulu app would not need to be updated at all. The TiVo has to be updated to know, when it receives a command to play Hulu video, where it should direct that command. The Hulu app does not need to know ANYTHING about that.

Imagine DIAL is a guy with a note pad. He comes to my house and knocks on my door and says "watch Sons of Anarchy tonight" and then turns around and leaves. He does not know or care HOW i watch sons of anarchy. He doesn't know where my remote is, or what channel it's on. He has simply delivered the command. My TV does not need to be updated to speak to this man with notepads. I do that. Then i control my TV.

That is how DIAL works.

So, TiVo could allow a DIAL command for Hulu to launch either the existing Hulu app (ugh) OR it could send the command to an Opera browser which would then load an HTML5 app that Hulu wrote that plays the video.

The issue there, however, becomes "how do you control playback?" And the answer right now is "well, oops, that sucks."

The big feature of the ChromeCast system is that it does not require the server/host to have app installed (aka the ChromeCast doesn't have apps on it). You will probably see a lot of apps like this coming out later this year (like HBO Go). However, with the current setup, TiVo will not support them without an accompanying app on the TiVo.

Click to expand...

That's all true. Do you know why the Chromecast does not need to have an app installed? Because it has the One True App(tm). A web browser. That web browser runs HTML5 apps downloaded and run in real time.

Which is exactly what the Roamio has.

Just the fact that TiVo supports HTML5 through Opera will probably help move along DIAL support though.

Chrome Tab Mirroring is just a desktop Chrome Extension that sends compressed images to the Chrome Browser on the ChromeCast that "plays" them. It's not proprietary in the sense that the code is secret, but if Google wrote the extension in a way that allows for generic DIAL receivers to decode the information we're golden. The only difference between the TiVo DIAL implementation and the ChromeCast DIAL implementaion is the user of Opera on TiVo and Chrome on the ChromeCast.

Click to expand...

It can't be that simple because it also supports audio. it has to be a little more complex than simply taking screen caps and sending them over HTTP.

It can't be that simple because it also supports audio. it has to be a little more complex than simply taking screen caps and sending them over HTTP.

Click to expand...

There is a way to unlock an advanced mode of the extension. It has parameters for bitrate, so it seems to be using some sort of realtime A/V encoding. If it's encoding to a generic HTML5 video stream then TiVo should be able to support it no problem. If it's rendering to some special Chrome format then it probably wont. Although there could still be some codec licensing issues here.

TiVo could easily implement their own control API, but I think that would be a mistake. My first response is that they need to call up Google and ask Google to share the API for Google Cast. But my fear there is that they did that, and Google said "no" and that's why the Roamio is running opera instead of chrome.

And if it's running Opera, is google going to be WILLING to share their control API?

We won't know until the Google Cast SDK is finalized and we see what google's terms of use say. If they say "You can't use this to cast to a non-Google device" then we'll know that the TiVo is not going to support the control portion of the spec and TiVo is on their own to map the "FF, Pause, Play, Back" etc. buttons to the browser... which sounds, ugly.

There is a way to unlock an advanced mode of the extension. It has parameters for bitrate, so it seems to be using some sort of realtime A/V encoding. If it's encoding to a generic HTML5 video stream then TiVo should be able to support it no problem. If it's rendering to some special Chrome format then it probably wont. Although there could still be some codec licensing issues here.

Click to expand...

My assumption, based on the quality settings and the strain it puts on the desktop PC, is that you are right and it is doing a real-time encoding of the browsers output and is streaming that video to the chromecast just like it's a youtube video. Basically, exactly what you are saying.

There are some very smart people hacking/unraveling the Google Cast API as we speak. I am sure those people are going to be able to tell us how it all works within the next 2-3 months.

I mean, a kid already wrote an app that basically hosts local files on your phone so the chromecast can play them and he did it without the SDK so Google couldn't stop him.

If enough apps add native DIAL support then generic casting of a Chrome tab will be mostly unnecessary. Plus, as someone else mentioned, it might be possible for a 3rd party to write a generic app like this and create the same effect without involving Google. It might require it's own extension, but that's about it.

It can't be that simple because it also supports audio. it has to be a little more complex than simply taking screen caps and sending them over HTTP.

Click to expand...

Screenshots was the wrong term to use, it is using either H.264 or likely WebM video to capture the entire screen (with audio) and stream it to the ChromeCast device live. Just like Apple's AirPlay Mirroring implementation.

You're appear to either be misunderstanding a lot of things or you're just way over your head here.

The Chromecast (device) has a chrome browser in it. That browser loads HTML5 apps. Those apps do not show a border around them because they run as full screen apps. No one said a word about ChromeOS. We said Chrome browser. Just like I have a chrome browser on my android phone and tablet. No one said anything about it loading a chrome browser on your phone/tablet. It loads a chrome browser on the chromecast.

Saying the Chromecast runs android is a bit shady. It's closer to GoogleTV, which is branched from android. It's not entirely untrue, but it's not accurate either. It does not run the version of android my phone runs, though they share a common core.

BTW, it is called a Chromecast because it loads everything in a chrome browser. I.E. the Chromecast is an OS and a web browser. pew pew.

Again, regardless of the OS/browser built into the device, that does not detract from the following.

1. I don't have to use a browser of any sort to control the Chromecast from my Tablet with any of the applications already extended (Netflix, Youtube, Google Play movies or music). I only need to use Chrome Browser to launch content from my PC (or a Macintosh) that is not extended yet for ChromeCast or DIAL.

2. Those videos once launched are streaming from the cloud and not my device, so I can actually power off the tablet and the videos continue to play. Google Play music is the only exception as it won't advance to the next song if powered off.

3. I can then turn on my Samsung phone and load Netflix and continue to control the video with pause, stop or play. Or I can keep both on and easily control from either. Yep, a super cheap Barnes and Noble Nook Color that has CyanogenMod can then become a super cheap power remote for the Chromecast. Smacks that Harmony remote for that specific function. Heck, load the Tivo Tablet application and between the two you have full on control for both systems.

As to if the device itself uses a browser, it's seamless 1080P video that actually looks sharper than my Roku 2 and deffintely than my Tivo Premiere.

Tivo Roamio needs to completely knock it out of the park or it's very easy to stick with my Tivo Premiere and use Chromecast for a superior Netflix experience.

If Tivo Roamio does knock it out of the park, I'll upgrade and then likely stop using the Chromecast as a redundant feature.

But Tivo needs to have support for PC/Mac, Iphone/Ipad, Android out of the gate as that's there with Chromecast.

But Tivo needs to have support for PC/Mac, Iphone/Ipad, Android out of the gate as that's there with Chromecast.

Click to expand...

Again, DIAL is not the same as Chromecast. TiVo doesn't have to support a single piece of hardware. The apps themselves that are installed on the TiVo must support the DIAL api. That is all. If you want full Chromecast support where a hardware agnostic HTML5 app is loaded from a remote server, I don't see that ever happening on the Roamio platform.

Again, DIAL is not the same as Chromecast. TiVo doesn't have to support a single piece of hardware. The apps themselves that are installed on the TiVo must support the DIAL api. That is all. If you want full Chromecast support where a hardware agnostic HTML5 app is loaded from a remote server, I don't see that ever happening on the Roamio platform.

Click to expand...

It "could" if the app store TiVo is talking about actually materializes... A third party app could use the existing Opera browser for that purpose.

A little research would have to go into the idea, but my point is that something might be developed independent of TiVo the company.

Sure. But nothing about the Chromecast server is open. So only reverse engineering would be possible. So I think people should set their expectations accordingly.

Click to expand...

And this is where my knowlege of the differences between Chromecast and DIAL services fails. Is there something specifically on either hardware our cloud services that google is doing that significanly differentiates itself from the open DIAL services.

I thought it was just bringing a browser into play - and everything worked via that mechanism.