Super sweet network based media player

After much window shopping, I finally took the plunge, and picked up at TViX HDM-6500A to play rips of my DVD collection (following the logic that information in whatever form always wants to be made more available). It’s a tinker’s dream, and I have to say I tinked it to near perfection.

In short, the device doesn’t have a hard drive in it, and I NFS mount it’s root directory to my OpenSolaris NFS server. There are a few key directories (Video, Audio, Photo, etc.) that it automatically recognizes, and are all accessible via a dedicated button at the top of the remote. Within ‘Video’, I have a few TED Talk videos in there, as well as a categorized structure for finding the right movie to watch. Here’s the structure:

elysium:~$ /bin/ls -F1 /zion/tvix/root/Video/Movies/
All Movies/
By Country/
By Genre/
By MPAA Rating/
By Runtime/
By User Rating/
By User Rating then Genre/
By Year/

Within these directories is additional directories grouping the movies together. For me that’s pretty nice and clean, but I sure as hell ain’t going to input all that information for each movie! So the scratch was to write a Perl script that gleans IMDB for the movie, and scrapes lots of useful information (IMDB- thank you for letting me do this, and I give you full credit for creating one of the best sites on the Internet). With this information, I build a Movie Summary Page (see below), as well as dropping the movie into the right directories. So, with hosting this on Unix, I can use a hard link to put the same movie in 10’s of different directories without using up any additional space (one or more hard links while on different parts of the filesystem, all point back to the same file)- this is NOT the same as a symbolic link or a ’shortcut’ for you Windos folks, two files with the same hard link behave exactly as two atomic files. ANYWAY, the next step after creating and populating this directory structure was to create the ‘Movie Summary Page’- this is a 1280×720 jpg file, and I used Perl GD for the text writing, and alpha backgrounds, and POVRay to make the flat movie poster image I slurped from IMDB, and rotated it 22° on it’s Y-axis, and put a nice reflection below it. The end result is pretty damn cool:

Rich- wait until you and Amy come over to check this out. You’re going to love it!

Oh, forgot what I do about encoding! On Linux, the IMDB scraper Perl script also rips the DVD or ISO image, by finding the longest track, and using VLC to transcode it to H.264 (at 1.5Mb/s), and AC-3 (a52) in 6 channels to get full Dolby Digital surround. Sure, I could squeeze it a bit more, but with hard drive space so large, it’ll be a moot point fairly sooon. Plus, didn’t we say this about encoding MP3s at 128Kb/s a few years ago, now we won’t touch anything less. Overall the quality with streaming it over the network via NFS is as good as the DVD.

Overall TViX is an impressive piece of equipment, and I tip my hat to them. They even have the ability to change the system font, and to put passwords on any folder that you don’t want someone (read: kids watching R rated movies) to see.

One Response to “Super sweet network based media player”

  1. Rich Says:

    Gymkata? Classy!

    Sounds like a kick-ass setup! I’m dying to check it out. I hope it doesn’t end up like one of my projects, where I spend hours and hours setting it up, then don’t actually watch movies on it.

Leave a Reply

You must be logged in to post a comment.