Saturday, July 10, 2010

A home media network - How hard can it be?

I've been toying with the idea of implementing some kind of home media network for a while now - being able to move audio and video files around the house over the network between multiple devices. As I've reported a few times in the past, I've had great success with the music side of things, being able to get my iTunes library to both my Roku Soundbridge and my Apple Airport Express.

Video is quite a different beast though. Being quite the Mac fan, I've been coveting the AppleTV for just such a purpose although I can't justify the cost at the moment. I wanted to get my toe in the water relatively cheaply, just to see what was possible.

My first purchase was a D-Link DNS-313 Network Attached Storage (NAS) enclosure. I had a large SATA drive kicking around doing nothing, so I thought that having a network-accessible repository for my video files - in the form of the NAS - would be a good starting point. My idea was that any media streaming devices I subsequently got would be able to see the NAS, browse the files, and then the data would be able to cross the network and play. That was the theory anyway.

Part of the reason I chose the D-Link is that it was advertised as having a built in DLNA/uPNP compatible media server - meaning any devices that adhered to the DLNA standard would automatically work together. This sounded ideal.

After installing my SATA drive into the DNS-313 (which was a pleasingly simple process) I copied a few video files over to it. I discovered that the process of sending 2GB movie files over the network was, unfortunately, excrutiatingly slow - but I figured the end justified the means. The video files were encodes of some of my DVDs, which I had ripped using Handbrake into M4V/H264 files - which is the standard format for Apple devices, and generally thought of to be a good combination of quality, size and compatibility. A superb tutorial on the process is over at the blog of Olitee.

So, I had my "media tank", complete with video files. Now I needed something to play them with.

For a while now, I had been lugging our laptop up to the bedroom to use as a DVD player with our 22" LCD TV. The laptop has an HDMI output for simple connection to the telly. I thought that the laptop would be able to see the files on the NAS and play them. I opted for the well-regarded VLC player for this purpose, due to its open-source nature and ability to deal with virtually any kind of file you throw at it.

And this is where problem one arose. I could see the files on the NAS, and VLC played them without an issue EXCEPT every few minutes, the playback would stop, VLC would rebuffer, and then the file would start to play again. This, in my opinion, rendered the whole thing unwatchable. I wasn't sure why this was, but I decided to try alternatives.

I'd had my eye on the range of Western Digital TV (WDTV) devices for some time, and they had been getting good reviews. The basic model relied on local storage of video files, whereas the better "Live" model had a network connection, and seemed to offer what I was looking for - "playback of files up to 1080p from local or network storage". When I secured a brand new one for £43 on eBay, I decided that it was definitely worth a try.

The WDTV Live is a very small unit, offering HMDI, component or composite connections to your TV. I opted for HDMI as the single cable carries both picture and audio. I hooked it up to the network and tested it out. Now the WDTV could see the NAS unit in two different ways - firstly as a basic SAMBA network share, or as a DLNA media server. Thinking that the media server seemed like the best option, I tried it. But what's this? Where are the video files? They're not there! The WDTV resolutely refused to display the M4V files contained on the NAS. Weird. I thought that the WDTV had fallen at the first hurdle - no M4V support.

So then I tried connecting to the NAS using the SAMBA share option. This time, all the M4V files showed up without a problem. Excellent. Maybe it wasn't a file format issue after all. So I tried playing one, and encountered exactly the same stopping/rebuffering/starting problem I had with the laptop. Bugger. But at least they played.

I decided that my network was to blame. Clearly, the videos can't transfer across quickly enough to satisfy the demands of the playback unit. I tested a few files playing back from a USB memory stick connected directly to the WDTV, just to check that I got smooth playback from the files and it wasn't my encoding that was to blame. This worked flawlessly, as I suspected it might. No problem with the format of the files themselves, obviously.

It was then that I saw my desktop iMac's shared "Movies" folder also displayed the WDTV's network menu. For the sake of completeness, I thought I'd try playing back the files from here, instead of from the NAS. And guess what? Once again, flawless uninterrupted playback. Obviously, the network speed wasn't an issue after all. This led me to suspect the blame lay with the NAS.

I had almost given up hope with the NAS as a source for my media files, but I thought I'd give it one last test before deciding to ditch it, and this test came in the form of a shiny new Sony Blu-Ray player, the BDP-S370.

This, in addition to being able to play blu-rays and DVDs was network-capable (having an ethernet port on the rear) and DLNA-compatible. Maybe I'd have more luck with the NAS's DLNA server this time. After setting it up and getting it on the network (which was incredibly easy!) I went to the menu and tried to find the NAS. There it was! Superb. So in I went, and encountered exactly the same problem I'd had with the WDTV. No M4V files. At all. What's up with that? I again hooked up my USB flash drive containing a few movie files to the bluray player's USB port to check compatibility, and unsurprisingly I got excellent playback without a problem.

I came to the conclusion that the DLNA server on the D-Link didn't like M4V files. I tried copying some AVI and DIVX files to it to test out this theory, and the WDTV and BDP-S370 could see them just fine. Playing them back smoothly, was - yet again - a non-starter though, and anyway, I wasn't about to start re-encoding my files. Olitee tells me MPEG4/H264 is the way forward, so that's what I'm sticking with.

So one upshot of all this is that my NAS is rubbish. So rubbish that I'm getting rid of it - it simply doesn't do what I need it to. It's DLNA-implementation doesn't support M4v, and as a SAMBA share it's simply not fast enough.

Overall, the issue is that I still don't have a "one stop" solution - yet. However, at least my encoding "strategy" works and my files are compatible with my devices. How I get those files to my devices, is - for the moment at least - open for discussion.