I posted this on the AVS forums and I thought some of you might be interested in it.
I do want to say that the company I do own is a Crestron and Kaleidescape dealer. I did the following just to see 1, if my idea would work and 2, to develop and test a Crestron module that will control Apple systems via IP.
Ok here is what I did. A little on the extreme side. I decided to build a "Kaleidescape" type system using mostly open source software and Apple hardware. This setup consists of various Apple Xserve G4's, G5's and Intel Xserve's along with Apple Xserve Raids. Most of the Xserve's have been updated with a DVI video Card and all are running on a gigabit network with LACP and jumbo frames enabled.
Software - Software used for this projects is as follows.
The very 2 bottom servers are the ones that are used to rip the CD or DVD and import the data. All servers are running off the RAID and all data is stored on the Xserve Raids. The top server is used to import CD's and the bottom is used to import DVD's
I will just give a VERY BRIEF overview how the system works. I will not go into detail on how the code is written, modules, etc.
DVD Import Steps.
When you insert a DVD there is a Automator/Apple script that will execute and do the following.
1) Look up DVD on Amazon.com and retrieve the Title, DVD information and DVD Cover Image and stores all that in the MySQL Database
2) Next the script calls Handbrake to start ripping the DVD, giving the DVD a file name based on the index key of the information above thats stored in MySQL and saving that file to a folder (all files, movies and music, are saved in the same folder).
Thats pretty much it.
To watch a DVD
All the other Xserves you see are the "movie/cd" players. One for every "Zone". They are a mix of G4, G5 and Intel Apple Xserve. These are connected to a AV switch. We have written a custom Crestron control script (We are also a Crestron Dealer) for our experiment that controls the players. To select a DVD to watch is like selecting a DVD from any other media server. Our UI is Flash based (Dynamic) and is always up and running. It's basically a web page (php) with Flash embedded . You use the arrow key to navigate up, down, left, right. Flash is pulling the data from the MySQL database displaying title, product description and cover image.
Thats pretty much how that works.
Issues - Currently there is no support for the following;
As far as ripping a CD it's pretty much the same as above except the script calls in iTunes to do the ripping.
Now a few questions that I thought you might have.Why did I do this?
Just to see if my idea would work.Do you use it as a media server?
Sorta we use it in the office for Audio only not to watch DVD's. I actually use it more to test the Crestron module that we are working on than anything else. Think of it like a concept car. I got a lot of ideas out of it and solved a few issues as far as controlling a Apple system using Crestron.Why so many servers?
We are an all Apple shop these were old server we had lying around, and I had the idea of trying to "Roll my own" media server. We have been working on this for over a year . .actually about 2 years.Have you tried using Mac Minis?
We have and there are no issues. I will try to post a pic of the Mac Mini's later. I don't have one right now.How's performance?
Well the tests we did were not scientific but we were able to run all the "movie players" Xserve and Mac Mini, about 20 servers all together, with out any issues. As far as audio goes we ran a total for about 40+ servers with out any issues.What do you plan to do with it?
Pretty much nothing. I don't really plan on going any further with it. In fact I have already pulled 2 of the "movie/audio players" servers and repurposed them.Did you do this by yourself?
No. I had 3 of my employees working on it along with myself, when we had the time. Thats why it took 2 years.How come there are no images of the UI or Crestron TP?
I have applied for patent and copyright on the interface and all coding. Until that is granted I am keeping that portion under wraps. Hence why I did not go into programming details.
So that's it. I thought I would post something thats a little different.