If you've got something you'd like to write about or review that is suitable for the home page, please contact us
When I first heard about Chromecast, I was skeptical on whether I would end up buying one. I have always been annoyed and aggravating by streaming solutions for TVs. Interacting and watching TV hasn't evolved at the same rate as other technologies and seems to have been stuck in the same place for the past decade thanks in no small part to entrenched cable companies and content middlemen desperate to control every aspect of the viewing experience for fear that their slice of the pie may get smaller.
Most streaming boxes are closed systems, which only contain the ability to view certain content, and while the interfaces displayed by this streaming solutions on your TV usually provide some convenience, controlling them and searching via remote, especially to type in search terms for example, is often rather painful.
Some fail spectacularly just because content owners won't support them or explicitly block them, like the blocking of Google TV by several companies, most noticablely Viacom. Smart TVs often have the same exact problems, but exacerbated further as their app ecosystems being so walled off and upgrades that are seldom seen, so given that most people hold on to their TVs for the better part of the decade, these Smart TVs become dumber and dumber as years pass.
As such, the main TV in my house, a dumb 42-in Sharp HDTV, has an Windows 7 HTPC sitting underneath it, and the other TV in the house essentially goes unused. Thus, using the HTPC is the only way to watch Netflix, YouTube, etc, on the big screen in my house is to start up the HTPC.
This process combined with using a Bluetooth keyboard feels clunky, and if there is something quick I want to view or show, I'd rather not even turn it on, but at least when I want to watch some local content or view something on the web, nothing blocks or restricts me from doing so because it's essentially just a Windows 7 box with an oversized monitor.
Then I saw the price of the Chromecast was only $35, it came with a Netflix credit for 3-months worth of streaming, and you could cast browser tabs to your TV. I went ahead and ordered two thinking that this could finally replace or at least greatly reduce my need for a HTPC. After using Chromecast for a few weeks now, I'll give you my thoughts.
Chromecast arrived in a box about the size of three CD cases stacked on top of one another. Opening the box you will find the very simple installation instructions on the inner left hand side and the Chromecast on the right sitting in a plastic insert. When removing the plastic insert around the Chromecast, below it sits a micro-USB cable, an HDMI extender cable, and a power plug with a USB insert, which you may need some or all of.
The Chromecast itself looks and feels like a larger USB stick sporting a Chrome logo with one rounded fat end and the other end having the HDMI connector. On the round end, there is a Wi-Fi LED, a button for entering USB boot mode, and the micro-USB connection if needed for power.
This is a very portable streaming solution for your TV, which is a major advantage it enjoys over most other streaming solutions. Slipping this into your laptop bag while travelling for use in the hotel is a no-brainer. The trade off of course is that it only supports outputting video and audio over HDMI; however, given the benefits of lower cost and small size, and that HDMI is so ubiquitous, this is a great approach.
Chromecast's (codenamed Eureka) hardware is based around a Marvell DE3005-A1 ARM System-on-Chip, with network connectivity provided by a Azurewave AW-NH387, which has a 2.4 GHz Wi-Fi 802.11b/g/n radio but no 5 GHz support, along with 512 MB of RAM and 2GB of flash. The Marvell chip supports hardware decoding for the VP8 and H.264 codecs. Video is output over HDMI with a maximum of 1080p resolution and power is provided via the micro USB slot, provided that is cannot be powered through the HDMI slot itself, if your TV supports CEC.
Chromecast's software is not based on ChromeOS as the name would indicate, but rather it is a modified Google TV release, which itself is based on Android running only one app which is the Chrome content shell. Numberous blogs have reported Chromecast being based off Google TV, and if you look through the source code
, you can see numberous references to Google TV. The Chrome content shell code is also available under the directory 'out_arm_eureka'. Essentially, this a reworked fork of Google TV now running on a stick.
Chromecast uses the DIAL (Discovery and Launch) open protocol, co-developed by Netflix and YouTube as a competitor to Apple's Airplay, to discover and send commands between the DIAL clients, your computers, tablets, and smartphones, and the DIAL servers, which is the Chromecast. DIAL is not like Airplay, as it doesn't mirror your screen, but pulls down content from the cloud by itself, with the control coming from your device. DIAL builds upon UPnP for device discovery, so ensure the computers you use Chromecast with are able to accept incoming UDP packets destined to ports 32768 to 61000 that are sent from Chromecasts on your local network.
The Chromecast SDK is currently in Beta, and your device must be whitelisted by Google to enable development work with it. Having to whitelist your Chromecast for development concerns me a bit, as Chrome and Android didn't have this process at all, but Google TV did, and Google TV has been much more tightly controlled. I am concerned that the content owners may be strong arming Google here into not having Chromecast be as open as their other platforms, but nothing is definive as of yet.
Setting up Chromecast was very simple. I plugged the Chromecast into my HDMI port, and since I have an older (pre-1.4 HDMI) HDTV, I had to plug the micro-USB cable to the other end of the Chromecast as well to provide power. The instructions on the inside on the box tell you to go to the Chromecast setup URL; however, I just went straight ahead and downloaded the Android app.
The Chromecast Android app searched for any Chromecasts near by and challenged me to properly identify that I was indeed setting up the proper Chromecast by matching the code displayed on the TV to the one displayed in the app.
From there, the app warned me that I would lose my Wi-Fi connectivity and it proceeded to make a direct Wi-Fi connection to the Chromecast for configuration. The app prompted me for the SSID and security parameters for my network, and also displayed the dongle's MAC address.
After these parameters were entered, my phone was reconnected to my home network, and I could on the TV display that the Chromecast had successfully connected to my home network as well, as it displayed 'Ready to Cast' on the screen, and showed the SSID of my network underneath. Looking at the Netflix, YouTube, and Google Music apps on my Galaxy Nexus, I could see that all of them now had a Cast button at the top of their screens when I launched content on them. Bottom line is you don't have to be a computer wizard to do this.
As I mentioned earlier, Chromecast doesn't have a 5GHz radio, and if you are not aware of this going in and you have a hidden SSID, I can see people having some confusion when they have trouble setting things up.
As for setting up Chromecast using your browser, I didn't test this; however, if you want to be able to send browser tabs to your Chromecast, you need to install the Google Cast extension. Keep in mind the firewall issues I mentioned above, or you may not see any Chromecasts when clicking on the extension button. Also, you will not be able to set Chromecast up from a client with no wireless capability given that a direct Wi-Fi connection must be made for setup.
Chromecast is used either by launching one of the compatible apps from your smartphone or tablet, which right now consists of YouTube, Netflix, Google Music, and Google Movies & TV, or from your the Chrome browser on your computer by hitting Cast on whatever tab you want to mirror.
The first thing I used my Chromecast for is streaming from the Google Music App. The screen on the TV immediately showed the Google Music logo, then started playing my music presented with the album art along with the artist, title, track name, and a progess bar. Displaying this on the TV makes the listening experience feel richer and if you have people over, they can see immediately what's playing if they're enjoying it.
However, if they hate your music (which in my case most people do), they can launch Google Music on their phone and cast their music of choice instead. This is a great feature for social gatherings and so forth, just as long as you trust everyone that is on your network, as there is no authentication for Chromecast whatsoever. You can easily control music from your device just as if it were playing locally, as the app control makes no distinction between the two. Pause, next track, previous track are all supported seamlessly, and that goes for the music local screen controls as well.
Netflix and YouTube work control playback on the Chromecast much in the same way as the Google Music app. Lock screen widgets can control the playback for both the apps giving your phone a nice remote control feel and your device can still do other things, as it's only really acting as a remote control at this point, thus you can start a movie for the kids, and then reply to your email and use other app on your phone while Netflix streams. This interaction feels seemless and user-friendly, and furthermore this feels superior to other technologies like Miracast and Airplay that simply mirror the screen.
As far as tab casting, this only works the regular Chrome brower, and not the mobile version. Once the extension, Google Cast, is installed, you should see the Chromecasts available listed as dropdown when you click on the extension button, and you will have the option to cast the current tab you are on. Once again similar to the Android app capability, mirroring a tab does not take away you ability to use your computer for other things, you can switch tabs and go to another website and the tab you mirrored stays mirrored and only interactions with it are reflected on the Chromecast-connected TV.
I casted Google Maps and was pleased to see some traffic data on the big screen. I tried a few other websites and tab casting seems to work well; however, in typical Google fashion, tab casting makes the claim that it's in beta and for some video intensive web pages I did have issues.
I tried to use Hulu, and found that tab casting Flash doesn't work at all. HTML5 video did work; however, since the entire web page is being transcoded and sent to the Chromecast, you can see some performance issues such as occasional dropped frames, some pixelation, along with about a 1 second delay from your computer to the TV. I tab casting Angry Birds also, and saw similar performance to that of video.
The extension does have the ability to enable/disabled casting sounds associated with the tab as well, and when sounds are cast to the TV, sounds at the source is disabled, which is the right thing do to. I am glad that tab casting is in beta, as there is clearly some improvements that can be made to performance.
Full screen casting also exists but it only has experimental support, and crashed spectacularly once I tried it. For now, full screen casting is clearly a work-in-progress.
Now when it comes to local content, no one is sure what Google has in stock. Currently streaming local content is not directly supported, as no apps can be released to do so as the SDK has not been finalized and Google hasn't provided an app to do so. You can watch local content through Chromecast by opening video or music directly in the browser and tab casting it; however, this of course subjects you to the limits of tab casting described above, and while I did get decent performance, it's not something I want to tolerate if there is an alternative. You may get better or worst performace depending on your network and the horsepower of your source computer.
Two Android developers, Koush and Leon Nicholls, did develop apps, AllCast and Fling respectively, that can stream local content to your Chromecasts; however, they bypassed the Chromecast whitelist by reverse engineering the protocol and using a native video playback mechanism built into Chromecast that has since been disabled
, thus killing their workarounds. This is the cause for some concern, and I am not sure what Google's approach to Chromecast and application whitelisting will be. I run a DLNA server, to stream local content, and I would like to be able to stream that through Chromecast.
The number of apps currently available for Chromecast is also limited to the four listed plus Google Cast tab casting for now; however, it's well known the HBO Go, Hulu, and Redbox instant are on their way among others. The SDK is also still stuck in beta, so it's full potential hasn't been tapped yet.
: Chromecast is a cheap, portable device that is the simplest and easiest way to add internet video and audio streaming support to your HDTV. The DIAL protocol and the remote control ability it offers is a huge plus. With tab casting you can finally have a browser on your HDTV without a dedicated HTPC.Cons
: I am not sure about Google's approach to local content, and if only the big content companies will be whitelisted. Tab casting is still a bit rough around the edges, and full screen casting is completely broken.Final Word
: This is a wonderful portable streaming solution, and if you can still get it with the Netflix promotion, it is a steal. I would recommend Chromecast to anyone looking to add internet capability to their HDTV; however, I will always add the caveat that local content play may be unsupported and Google's approach to whitelisting Chromecasts for application development and applications themselves is a question mark. Chromecast is good, but it has the potential to be great.