Casting everything to Chromecast

Casting everything to Chromecast

Last month, we took the long handle to Google’s Chromecast, hacked it solidly and loaded on the custom Eureka v22062 ROM – the main reason for doing so, to play Netflix US content natively on the device. Unfortunately, the hacking process not only requires you have a brand-new-in-box Chromecast never before connected to the web, it must come with the right firmware version (see box) and you also need an Arduino microcontroller board to get the dongle’s leaky bootloader to switch into a kind-of/sort-of recovery-mode for installing the ROM. Granted, it certainly wasn’t a simple hack and needed some white-knuckle courage and the patience of a saint to complete, but it could be done.

But if you already have an non-hackable Chromecast, native Netflix US content playback might be out of the question, but that doesn’t Netflix US content on an Australian Chromecast is impossible. In fact, with the right setup, you can jury-rig up a solution for virtually all of your media, whether local or streamed – wherever it comes from.

Screen casting from Android

Google continually tweaks its Chromecast features list and one new recent addition is the ability to mirror the screen of certain Android devices to the dongle for display on your TV screen – the Chromecast version of Miracast, if you like. You’ll find the current list of Android devices support screen-casting on the Chromecast support page. If your device isn’t there, don’t stress – it’s not an exhaustive list and the word is a bigger list is on the way. What you do need is a Chromecast dongle with the latest update (including hacked dongles with the latest Eureka ROM) and an Android device with 4.4.2 or later. Google says the feature is only in beta at the moment and only works on Android devices – iOS and Windows devices need not apply.

Casting everything to Chromecast

Select Cast Screen from the Chromecast app left-side menu.

But as something of a compatibility guide, we purchased a brand-new unopened 7-inch PendoPad PNDPP44Q7GPBLK tablet with KitKat/Android 4.4.2 and quad-core Allwinner A31 Cortex A7 CPU for $30 from the local Coles Supermarket just before Christmas last year. It’s not on the Google support list, but we had no trouble hooking it up to the Chromecast dongle, with screen-casting working perfectly through the Chromecast app. The same couldn’t be said for my Samsung Galaxy S3 phone running CyanogenMod 11/Android 4.4.4 – it tried but only crash repeatedly, which suggests you need a device with KitKat or later preinstalled (the Galaxy S3 supports Miracasting via Netgear’s PTV3000 Miracast adapter on Jelly Bean/Android 4.1-4.3, but better on 4.1 than 4.3, we think due to 4.3’s extra load).

Casting everything to Chromecast

Tap the Cast Screen button when the new screen appears.

Setting up screen-casting is pretty straightforward – make sure your Android device and Chromecast and plugged in, turned on and connected to the same network. Fire up the Chromecast app on your Android device (download it from Google Play if you haven’t already), select Cast Screen from the menu app, select the Chromecast device and within a few seconds, you should see the mirror of your Android screen appear on your telly.

We found that the mirror speed fast enough to handle audio/video playback with our $30 quad-core tablet, from both local storage and file-streamed from my Windows home server. We’re not certain whether dual-core tablets will have the CPU power to do the same job, although if there is a performance hit, it’ll likely work better with SD (standard-definition) rather than 1080p/HD content.

Casting local video

Once you have screen casting in operation, playing local video content becomes as easy as firing up your favourite media player. Right now, it seems the battle of the media players is between our perennial favourite, MX Player, and the long-awaited arrival of VLC for Android 1.0. Both have excellent video codec support, but VLC also supports the latest codecs such as H.265/HEVC video and recent Opus audio codecs. Both of these apps are available for free on Google Play. Make sure you grab the MX Player Codec Pack for maximum codec playback support – you want the ARMv7 version for most modern devices running an ARM Cortex-series processor. Chromecast screen-casting also takes care of the audio, so there’s no need for separate audio connections.

Casting everything to Chromecast

Select your Chromecast dongle from the small list.

Casting network content

But the screen-casting feature also works with your local networked media content – and you can do it with free software and a standard (non-hacked) Chromecast dongle. All you need is ES File Explorer file manager. The beauty of ES File Explorer is that it will use CIFS/Samba Windows network protocol to stream media files across your Wi-Fi network to your Android device, which decodes and plays the files, but then re-stream the video back over the Wi-Fi network to the Chromecast dongle.

We tested this accessing content on a Windows 8.1 home server which had standard username/password login. Install ES File Explorer if you haven’t already done so, launch it and select LAN from the left-side menu. From the bottom-row menu, choose Scan and allow it to search out the devices on your network. Once your server is found, select it – enter your login details into ES File Explorer when asked and you’ll get limited access to the server system (basically only Users folders are accessible on Windows 8.1). From there, select a video file and Android will give you a choice of media players to use. MX Player is the preferred choice for its wide codec support, but once your choice of player is selected, you should be on your way.

Casting everything to Chromecast

You should soon see this display on your telly. Tap to disconnect.

Just one other sidepoint, if you’re having trouble playing AVI files, try that MX Player codec pack and switch to software decoding (top-right of playback window) – some Android players will open the AVI file container, but we’ve found MX Player’s software decoding will handle most of the codecs inside them as well.

Casting Netflix US content

Hacking a new-in-box Chromecast dongle and loading it with the Eureka ROM is the only way for now to get the native Netflix US app onto the device, but if your Chromecast can’t be hacked, it’s not the only way to get Netflix US content streaming to it.

We’ve explained before how to use DNS rerouting services such as Unblock-us.com to bypass geo-blocking and force Google Play to push the Netflix US app onto your Android device. If you’re still not sure, read up on it here.

Once you have geo-block bypassing and the Netflix US app up and running, you can again use screencasting feature to cast the Netflix US display to Chromecast and your TV over Wi-Fi. We had it working on our $30 quad-core tablet with smooth video playback and no obvious frame dropping at SD resolution. That said, there was a minor delay in the audio, which is possibly due to the fact that the data stream must come to your Android device via a DNS rerouting service and go back out the same way to your Chromecast device. Depending on where your DNS server is located, that could be quite a distance. Bottom line, the overall performance will depend on the distance to that DNS server, the speed of your network and the speed of your Android device’s CPU. Or in other words, your mileage may vary.

Stream to Chromecast via Plex

But if you have a Chromecast dongle, the best way to stream your local and network content to the device is via Plex for Android. Plex has been around for a while on Android but it also has a native Chromecast app you control via the Android app. The Plex Android app will cost you US$5, but the server-side app is free – it’s also available for Windows, Mac OS X, Linux and, more recently, FreeBSD operating systems. Download the app onto your Android device and grab the appropriate server app for your home media content library – we used the Plex server app on a Windows 8.1 home server. Once it’s installed, it’ll automatically fire up your web browser and launch Plex’s Media Manager web interface on localhost (127.0.0.1:32400). You’ll also find a new Plex icon in the System Tray.

Casting everything to Chromecast

Select Movies from the Add Library window and press the Next button.

If you’ve not used the Plex server app before, when you hit the Media Manager, you’ll see a plus sign ‘+’ next to your server name at the top-left of the window. Click on the plus symbol and it’ll launch the Add Library window. Select a media library type – Movies is a good place to start. Click Next on the next screen and choose the Add Folder button on the following window. Select the folder location of your movies directory from the following window and press the Add button. That will return you back a screen – choose the Add Library button, sit tight and wait as Plex rounds up the media content in that folder. By default, Plex also heads out and brings back movie poster display tiles for your movies it knows about. When it’s complete, repeat this process for your music library and the server is pretty well good to go.

Casting everything to Chromecast

Choose Add Folder, locate your movie library and press the Add button.

Now head back to the Plex app on your Android device and make sure you have the Chromecast dongle plugged into your telly and powered up. Select the ‘Recently Added’ tab and you should see your movie list. Choose a movie and press the Play button – within a second or two, your movie will begin playing on your Android device. But up in the top-right corner, you’ll see the Chromecast cast icon – tap on it, select your Chromecast device and that will trigger Chromecast to load the native Plex app and take over playback of your movie on your TV. From now on, Chromecast is talking to your Plex server directly, with your Android device just working as the remote control – you can test this by simply shutting down your Android device and the movie will keep playing. We saw no audio delay on Plex, which lends weight to the idea that global DNS shifting can push things just a little out of kilter.

Casting everything to Chromecast

The Plex server will then search out your movie library and be ready to go.

Backdrop your photos

One last recent arrival on Chromecast is the new Backdrop function – this allows you to stream photos stored on your Google+ account direct to the dongle for play on your TV as a backdrop. Again, the process is pretty simple – fire up the Chromecast app, select Backdrop from the app menu. If you’re not hooked up to the dongle, select it and then use the menu button top-right of screen to select the Backdrop Preferences menu. You’ll be asked to allow the Chromecast app to access your Google+ account photos. Click yes if you want this and set what gets backdropped to your dongle. You can choose photos from your Google+ stream or just your own photos. Once set, Chromecast will create a slideshow on rotation.

Chromecast or mini PC?

It’s certainly annoying that Chromecast can’t natively load the Netflix US app without starting from a new-in-box model and hacking the daylights out of it. But overall, Chromecast is surprisingly simple to use and without the need for a media circus sitting behind your TV. Still, personally, I also like having something a little more versatile plugged into the telly in the form of a mini PC, which gives you a full mini dual-core computer or better with Android 4.2/Jelly Bean minimum, on which, you can run any Google Play app you like – including the Netflix US app (with the usual geo-block help) – and for around the same price as Chromecast.

Casting everything to Chromecast

Our $30 PendoPad quad-core KitKat tablet screen-casts to Chromecast.

Chromecast hack running out of time

At the time we performed the ROM hack on our Google Chromecast dongle, retail versions available in Australia shipped with an older version 15xxx ROM. Google fixed the bootloader vulnerability that enabled custom ROM installation in firmware build 19084. That means it is inevitable Chromecast dongles will eventually reach the market with firmware 19084 or later pre-loaded – when that happens, the bootloader hack will no longer work and unless another way in is found, Chromecast will no longer be hackable.

However, the word from XDA-Developers is that dongles with serial numbers beginning ‘3922’ are around the cut-off period for Google changing to firmware that is no longer rootable. The talk is also that Canadian and European versions launched in March 2014 with serials starting at ‘41xx’ were also not rootable. That said, the one we purchased in Sydney just before Christmas last year started with serial ‘4327’ and had a firmware version 15xxx on-board. Using the method we outlined last month, we were able to gain root access and update the ROM to Eureka’s latest version 22062.

  • That means it is inevitable Chromecast dongles will eventually reach the market with firmware 19084 or later pre-loaded – when that happens, the bootloader hack will no longer work and unless another way in is found, Chromecast will no longer be hackable.

  • it definitely wasn’t a very simple hack and necessary some white-knuckle courage and the patience of a saint to finish, nevertheless it may be performed.

  • Google fixed the bootloader vulnerability that enabled custom ROM installation in firmware build 19084.

  • Greg

    The Chromecast’s firmware’s terrible stability, along with the same with associated apps, means it’s nearly unusable. It worked fine for the first month, then never again well. Probably a firmware update, but with as “user-friendly” (ie. opaque) the thing is, I have no idea.

    My opinion seconded by lots of users complaining in the app’s ratings.

  • daniel

    I started using this new app called megacast, it transcodes the video on the fly on your device and supports avi, mkv, 3gp and all other file formats and it’s great for casting local videos

  • coolbeans2016

    Has any other hack been found for newer Chrome Cast’s?