Your ZFS home fileserver / NAS is a great place to store your music, photo and video media, and if you’ve setup your ZFS file systems similar to the way described in Home Fileserver: ZFS File Systems, then it will be quite simple to view this media from a media center.
The nice thing about storing your media on your fileserver is that if your original CDs or DVDs get scratched, you will always have your backup available on your fileserver. The other huge advantage of having your media on your NAS is that you don’t have to go hunting through your DVD library to find the right box, only to find that it never got put back in the right box. And with a network-enabled media center hooked up to your ZFS fileserver / NAS, you can locate any media at the touch of a remote control.
There are many different media centers or HTPC products out there and they vary in openness, price, power and usability.
Video is the most difficult media for these devices to handle well, due to the large number of different video formats that exist. To support a large variety of different video formats, a media center needs to provide many video and audio codecs to decode the video media correctly for a good viewing experience. Ideally, your chosen media center should be open enough to be extendable to allow addition of new audio & video codecs, or upgrading of existing ones. Generally, open source solutions will be more open than proprietary products, and will continue to be supported long after a proprietary product has been retired, or the company selling it goes out of business.
Media centers vary enormously in terms of their computing power. This is important if the video is highly compressed when encoded, as it needs to be decoded in real time when viewed. Also, the media center hardware needs to be powerful enough to handle the resolution of the encoded video. Therefore, a media center having a low power CPU will struggle or fail to decode highly compressed and/or high resolution formats.
Usability of a media center solution will depend on its processor power and also the ergonomics of the user interface. Again, this is where open source projects can score highly over some closed, proprietary products — for example, see what people think about the usability of Blu-ray media and players in the comments here: People just not that into Blu-ray.
XBMC: Xbox Media Center
Here I will detail just one possible media center, as it is open source, is well supported, has great usability and runs on a variety of different hardware and even operating systems.
Originally Xbox Media Center (XBMC) started development on the original Xbox, but it has since been ported to Windows, Linux and Mac operating systems.
Due to the success of the original Xbox, a large number of people probably already own one, and with either a hardware modification (modchip) or software modification, the original Xbox can be made to run unsigned code, which is required in order to run software like XBMC. If that interests you, there are many sources of information on the internet. Be warned though, modification is not a trivial subject, but neither is it too difficult for someone with a little tech savvy.
Also, the original Xbox, due to its use of an Intel Celeron processor running at 733 MHz, is not enormously powerful, and it will struggle to decode highly compressed video in real time, leading to dropped frames — i.e. completely unacceptable viewing experience.
However, the original Xbox is powerful enough to decode MPEG2 video as used by DVD films, and also things like DivX or Xvid-encoded video etc.
The original Xbox also has a 100Mbit/sec ethernet connector to transfer data to which is sufficient for streaming MPEG2 (DVD), DivX and Xvid format video to from your ZFS fileserver.
However, the original Xbox’s main strength is that with XBMC software, it makes a terrific media center with great usability, and it is very cheap to buy one second hand from ebay etc, and you may even have an old one gathering dust in the attic, or know someone wanting to get rid of one.
Assuming you have shared your video file system from your ZFS fileserver using a CIFS share (SMB protocol), then it is simple to setup XBMC to access it in order to watch your videos.
If we assume you setup your video file systems as described here, then you will be able to setup XBMC like this:
- Start XBMC
- Select the ‘Videos’ item from the main XBMC screen
- Select the ‘Add source’ item
- Select the ‘Browse’ button
- Select the ‘Add network location’ item from the list shown
- Select the ‘Windows network (SMB)’ item from the ‘Protocol’ box
- Select the ‘Server name’ field and in the next screen select the IP address box and enter the IP address of your ZFS fileserver, then select ‘Done’
- Select the ‘Shared folder’ field and enter the name you gave to your share within ZFS — e.g. ‘media_video’ from the setup page
- Enter the relevant username and password in the fields shown and select the OK button (as setup on the ZFS fileserver file system)
- Click on OK button in the last screen
Now you will be able to watch video stored on your ZFS fileserver. Enjoy!
To setup access to your music and photo file systems on your ZFS fileserver, follow the same procedure for the ‘Music’ and ‘Pictures’ items on the XBMC main screen.
Plex is a media center that runs on Mac OS X, and I understand this makes a very capable and modern media center. See here for more information. As it runs on modern Mac hardware it will have a lot more processor power to decode video, and I think I heard it can even decode Blu-ray Full HD video. However, the problem with Blu-ray video is the file size, so you would either need a huge array of 2TB drives to store your original Blu-ray discs or you will need to play them only directly from the discs in your Blu-ray player.