Wednesday, January 09, 2013

WD TV Live (3rd generation)

After moving to my new house I decided to stop using htpc's and see if I can live with alternative devices like this streaming box.  You can typically find these for around $80-100.  These 3rd generation devices have a Sigma Designs SMP8670AD 700mhz processor with 512MB of DDR2 memory which makes them quite capable little boxes.

- Small and silent.
- Relatively inexpensive.
- Extensive file format support.  You can pretty much throw any video (avi, mkv, vob, iso, ts, wmv, mpg, mp4, and many more), audio (mp3, aac, flac, ogg), or image (jpg, bmp, png, tiff, gif)  format at it and it will play it.  When I mean everything I mean everything like very high bitrate 1080p x264 MKVs, entire bluray ISO rips (no menus though, plays just the movie), DVD iso (full menus) and more.  It does this all natively with NO TRANSCODING.  This means almost no cpu utilization on your server.  All you have going is disk and network IO.  Recordings from hdhomerun (mpeg2 ts, ac3 audio) play just fine.
- Good support for streaming all that media off of network shares.  No plex or dlna server needed (though dlna is supported); just raw browsing of network shares - fast and efficient.  I like how you can set fetching meta data only on demand.  Keeps things lean and fast when browse vast quantities of content.
- Pretty good internet streaming support with youtube, netflix, hulu, pandora, and several others.  The only big name it's still missing is amazon VOD which I wish it had.  Youtube isn't HD though unfortunately but this is a lame restriction by google and isn't WD's fault.
- Great subtitle support even when streaming.  Those SRT files work just fine with your MKVs.  Good flexibility on size and positioning.
- Very good hdmi support and will pass through everything to your receiver like bitstream DTS and dolby trueHD.  DTS-HD master audio isn't supported and you will only get DTS core due to licensing issues.
- Good and easy to navigate UI.  You can browse LARGE collections of media pretty easily in list view and paging.  There are basically two ways to browse: add network share folders to your medial library and just a raw folder/file view of your shares.  The first gives you some nice features like sorting and resume but it takes a bit to build that library.  I only add my most commonly accessed folders to the media library.  Folder view is fast but you can't sort.  This is fine for the rest of my media collection.
- Resume doesn't work across multiple wd tv live devices.
- Very high WAF.  Works great with Logitech harmony remotes.
- Great iOS app that really saves time entering usernames and passwords for shares and internet services.
- Instant on from sleep state
- Firmware update over internet works fine.  It has built in 802.11bgn wifi (2.4ghz only) but I didn't test it since my house is fully wired with cat6 and gigabit switches.
- 2 usb ports.  Any attached storage shows up as shares too so you can access that attached storage over your LAN.
- If you have multiple wd tv lives on your network you should give each device a unique name otherwise odd things happen.
- Can play music in the background while doing other things.
- Screensaver kicks in while music is playing.
- Accuweather app.  Shows current temperature on main menu.
- If there is a power outage it will wake up the wd tv live.  Sometimes you have to add the network share back when this happens (though this happens pretty rarely).
- If the network shares go down for a period of time (say you turn off the computer that the shares are on) sometimes the wd tv live won't see the shares again until you do a complete power on/off.  Hold down the power button for 3 sec to completely turn off the wd tv live.  This one is a tad annoying and I hope they fix this in a future update.
- Power usage: killawatt - 6w under full load (1080p mkv), 4w idle on main menu, 4w sleep.
- You can scan 16X in either direction, skip in 10 min increments in either direction, or go to a specific point in time.  I really wish it had a 30 sec forward/ 10 sec back commercial skip.  Using 1-9 to jump to 10%-90% would have been nice too.  Too bad these navigation features are missing.
- Really cool RSS feature.  You can add the rss feeds to all your video podcasts and watch them.  The best way to enter the url's is to cut and paste them from an iPhone or iPad using the wd tv live app.  You can also access a variety of features by hitting the IP address of the wdtv live with a browser including setting up rss feeds.  This is tempting but do NOT DO IT.  IT IS BUGGED and will screw up all your rss feeds and you will need to factory reset your settings.  Add rss feeds directly through wdtv only.
- Roku 2 XS is an alternative but targets a different kind of user.  I think the wd tv live is great for somebody who primarily streams a large collection of local content in a variety of formats and codecs and also uses some online services.  Roku is great if you primarily stream everything from online services and have some light usage for local content.  Roku codec/file format support is pitifully small: video: mp4 (h.264); audio:  aac, mp3; image: jpg, png.  For anything else roku requires a plex server (a buggy bloated pos IMO, transcode errors, cpu intensive, disk io intensive when scanning media, etc).  So yeah Roku would be pretty much useless to me.

Highly recommended.  For streaming local content and most internet content this box really does fully replace an HTPC for me.  It's small, quiet, sips power, relatively cheap, and plays pretty much every file format out there.  I have 4 of these now.

UPDATE 3/29/2013:
- Firmware update 1.15.10 was released yesterday.  I'm happy to report that the wd tv live now works with hdhomerun prime project connect (hdhr prime acts like a DLNA server) to stream live tv in full HD with 5.1 sound.  This is fantastic news.  I basically gained access to all my channels in 4 rooms for the low low price of $0.  WD TV Live just keeps getting better and better!

UPDATE 6/4/2014:
- For no reason at all pretty much all of my wd tv live boxes are locking up when starting playback of a file, after pausing, or after fast forwarding.  I spent a day troubleshooting.  It would usually happen after playing 10-20 files.  I looked into upnp, nfs vs smb, master browser, etc.  I rebooted everything I could think of but didn't reboot one 8 port dlink switch that shouldn't have even been hit in the chain of devices.  Anyways, rebooting that switch seemed to have fixed my issues.  The moral of the story is just reboot EVERYTHING on your network and I mean everything as a first step.  These boxes are very finicky with networks and just adding a new device or computer could mess up things.  I still have 5 of these boxes but I've just ordered my second med600x3d which will be replacing the heavily used wd tv live in the family room.  If you don't need netflix or amazon (chromecast or playon works in a pinch)  then the med600x3d is just far superior for streaming local media.  After this frustrating episode I'm thinking mede8er devices are worth the extra money.

Android Stick PC (mk808)

We recently moved so I decided to change things up a bit.  In my old house every hdtv had a pc hooked up to it.  This added a lot of flexibility but also quite a bit of bulk, kind of messy, and unwieldy.  I'm trying the opposite this time using WD TV Live (3rd gen) and now these cheap android stick PCs to add a bit  more general computing.  The mk808 is basically a dual core android device without the screen.  It has hdmi out that you hook up to your TV.

Here are the critical items I think you need to get started:

$56 MK808 - At the time I ordered it from the seller: Sain Store which had it in stock and was fulfilled by amazon so you got prime shipping.  Since then it seems they have sold out.  I know geekbuying is a pretty major seller of these devices but it gets shipped from China so it will take several weeks to get it.  I have no experience with geekbuying).

$17 USB to RJ45 Ethernet Adapter - Some people report issues with wifi dropping in and out.  It worked fine for me for the couple of hours I tested on wifi.  Still, if you plan to stream HD content it's best to go wired.  This works great with the mk808.  Just plug and play.  No drivers to deal with.

$35 Logitech K400 Wireless keyboard with multitouch pad - This is a great compact wireless keyboard with a multitouch touchpad (2 finger scrolling, etc) that is still easy to type on.  It has some nice dedicated keys that work with android like home and the power button will sleep the android pc.  It also duplicates the left mouse button in the upper left corner.  This is handy for clicking and holding and dragging.

$3 Mini hdmi to hdmi cable - The one included is a bit crap and way too short.  Get a nice one that works with all TV's and resolutions at monoprice.

$1 Mini usb cable - You should grab this too since the one included is also a bit cheap.  This will prevent any issues if you plan to flash a custom rom using the OTG usb port.

$19 2 amp USB Power Supply - The apple iPad one is recommended because it's very well built if a bit expensive.  Mine came with a cheap 1 amp power supply.  Highly recommended if you plan to overclock.

Total: $131

So what starts off as being a cheap $55 ish android stick pc over doubles in price if you want to go for a good quality and highly reliable/usable setup.  It also has a microSDHC slot.  I dropped in a 32GB class 6 ($22) just for kicks.  It's not really needed unless you need more local storage or you want to use something like Titanium Backup between rom flash upgrades to quickly restore your apps.  With finless 1.6 you get 2GB internal app storage space and 4GB internal SD.

The first thing I did was install a full rooted custom rom: finless 1.6.  The process was pretty easy.  Just follow the instructions in the readme carefully.  The only thing I got stuck on was getting it into flash mode.  I ended up having to do the alternative paperclip method but that was easy enough.  After that flashing went smoothly.  I did play with it briefly with the factory default rom.  Google play store seemed to work fine.  I was even able to install onlive from the play store just fine.  Still, I wanted to take advantage of some of the neat apps out there that require a rooted system like being able to safely shutdown. I've been reading pulling the power isn't generally a good idea with some risk of corruption.  You also get 2GB of app install space which is nice.

- If you want full screen youtube app grab this version (though it doesn't seem to see the ethernet connection).  I just use the desktop version of the website which still lets you go full screen.  UPDATE: Grab the APK mentioned in this thread for the best full screen HD youtube experience.
- This thing is pretty tiny.  I stuck a killawatt on it.  1w sleep, 2w idle (screen on), 4w under max load (AnTuTu benchmark cpu).
- Performance isn't too bad.  9827 on AnTuTu benchmark.  Think Galaxy S2 speeds.
- Heat doesn't seem to be much of an issue.
- Only does 720p native and scales up to 1080p.  Native 1080p coming in 1.7.  Still, 720p upscaled looks pretty good and text is quite legible on the TV.
- If you completely shutdown the device there is no way to power it back up except unplugging it and plugging it back in.  That is why I'm choosing to just sleep it when not in use (1w of power I can live with) and hooking it up to a UPS I had laying around for safety.  Of course you could also try one of these IR controlled AC outlets.
- Boot time is around 30 sec.  Finless seems to take quite a bit longer than the stock rom.  This is another reason I choose to just sleep the device so it's truly instant on.
- Keyboard support is a bit inconsistent out of the box.  Depending on the app, sometimes the virtual keyboard still pops up and sometimes it doesn't.  When entering URLs into the default browser the enter key launches the site.  In chrome enter does nothing and you have to click on the GO button on the virtual keyboard.  After buying External Keyboard Helper app things work much better as you can actually select external keyboard as your input device.  Before, external keyboard wouldn't even show up as an option.
- No gameloft game support out of the box without some hacking.
- I think ethernet support feels a bit like a hack.  I've come across a few apps now (like the older full screen version of youtube, 1 password, and some games) that don't detect a network connection if wifi is turned off.  That means they won't work over an ethernet connection.
- When you cold boot the device ethernet usually doesn't work until you toggle it off and back on again.

Things you can do with this thing:
- Competent mobile Chrome browser with flash support.  It's still a bit clunky.  Scrolling is still pretty jerky and page load times are longer than I like but it is serviceable.  Do NOT expect iPad like silky smooth scrolling and responsiveness.
- All the usual streaming services like netflix, hulu,  pandora, spotify, etc are there.  You have the entire google play store of apps to explore.
- Stream local content either directly using es file explorer and the built in video player or something like plex or xbmc ( which is not hw accelerated yet so hd is choppy. You need to configure it to work with an external player like mx player.  I haven't tried this yet).  Subsonic is nice for audio.  I found the built in video player to handle 1080p mkv just fine natively.  Even subtitles worked.  Playback was smooth over ethernet but hitched over wifi (even in the same room as the router).  Seeking to different points in the MKV while streaming over a network share was quick and responsive.
- Play games that don't require multi-touch like angry birds.
- Use rkremote.  RKRemote.APK is in the finless distribution.  Just side load it on your android phone or tablet to control your mk808.
- Skype if you hook up a compatible web cam.
- Hook up an xbox 360 controller and load up a bunch of emulators and play a bunch of retro classic games from atari 2600 up through playstation one. (Going to dig into this next.  Will update post when I do.).
- Remote into your desktop using splashtop, teamviewer, etc.
- Tried out Airtight which is an airplay receiver so you can stream from your iOS devices to the mk808.  It works fine with audio and some video.  The built in video player works and so dies air video but goodplayer, netflix, slingplayer do not work.  All audio works fine though.  It's pretty limited but for 99 cents it isn't too bad.

I have one question for those of you more experienced with the MK808. Is there any way to output AC3 or DTS bitstream so I can get true 5.1 sound out of my receiver? Right now 720p MKVs decode just fine but all audio gets down sampled to 2 channel audio. It kind of defeats the purpose of having a nice home theater setup. I have mine hooked up to a pioneer VSX-1021-k receiver. I've tried a variety of players like mx player, xbmc, and plex. Nothing seems to work. When I set xbmc to output ac3/dts over hdmi all I get is static. So I'm just wondering if it's my pioneer being picky (and I know it's a bit finicky with some sources) or the mk808 just doesn't support what I'm trying to do.

Recommended.  It's a fun relatively inexpensive android hacking box dream if you don't mind spending time fiddling with things.  It's definitely not for the type of user that just wants to plug something in and just start using it expecting everything to work.  Without 5.1 audio support I can't recommend this for streaming video.  It's fine for more general purpose use but for media streaming the wd tv live beats the pants off of this thing in overall usability and capability.

UPDATE: 2/25/2013
- XBMC Revisted.
Installed the neon version of mx player and xbmc neon set top box.  Make sure you launch mx player once before installing xbmc.  This new build is suppose to use mx player as an external player for hw accelerated video right out of the box.  This is partially true.  It doesn't work with files streamed over shares (internal player still gets used).  The work around is pre-mount all your shares outside of xbmc using cifsmanager.  So install that first.  Use your favorite file explorer app (I use root explorer) and head over to /mnt/cifs and create a directory for each share you plan to mount.  Once that is done fire up cifsmanager and create all your mounts.  Make sure you click on the share to mount after you create it.  Now that is done head back into xbmc and when you add video source pick root file system instead of network share and browse to /mnt/cifs/yourmount.  That basically tricks xbmc to think the content is local so mx player gets proper launched.  Just remember if you reboot your android you will need to head back into cifsmanager and mount all your shares again.  Performance is pretty solid.  I tried MKV 720p/1080p, mov, avi, divx, flv, mp3, wmv, mp4, ts and pretty much everything plays (granted with 2 channel sound only UGGGG).  DVD iso's don't seem to work.  HD Mpeg2 .ts recordings from hdhomerun play but not 100% smooth.  It's very close but just slightly off.  It's still very watchable.  Plugins are hit and miss with this weird external player version.  Make sure you go into android settings | display | zoom it so there is NO overscan.  Also, hide the bottom menu bar before firing up xbmc and you'll get 16:9 video that nicely fills the entire screen.  UI is nice and responsive.  This really isn't a bad setup if all you need is 2.0 sound.  Unfortunately that doesn't cut it for me.

UPDATE: 2/10/2014
- Updated to finless ROM 2.1 using 6gb app space and 1080p kernal patch.  Used titanium backup pro to help with app migration.  Do not try and flash on windows 8.1 specifically and waste hours of time like I did.  Find a win 8 or win 7 machine.
- Man, I forgot how sluggish these things feel.  I haven't used it in ages.  Cold boot times are really long now too.
- Stopped working with one of the hdmi ports on my pioneer receiver.  Swapped ports with my 360 and both devices work now.  I'm not sure what's going on.  Everything goes pink once in a while now and I have no idea why (happens when hooked directly to the TV too and also on my asus monitor).  Unplugging and replugging in the hdmi fixes it or sometimes it fixes itself after a while.  UPDATE:  pink issue seems to be mostly gone now.
- I'm kind of done with this device.  It just screams cheap flakey Chinese junk.  I wasted a weekend hoping 1080p and the new ROM would help with hdmi compatibility but it hasn't.  I'm using a monoprice hdmi cable (I have 2 of them and tried both) so I know it's not the cable.  If I want to share a browser on the big screen chromecast + chromebook works about 100000X better.  This device really doesn't add any functionality I can do better with other devices.  The only thing that is kind of handy is airtight but when the new appletv finally gets released I'll probably just pick up one of those.