At last I have succeeded in getting ripped DVDs to play from my Xbox 360's Media Center Extender, and here is how I did it. First off let me explain my goals:
- I want to be able to play my kid's DVDs via my home network, so they can avoid trashing the shiny discs any more than they already have
- Playback needs to be from something other than my PC, so my kids don't trash that
- I also want to avoid transcoding the DVDs into another format, because my time is extremely limited (thanks to having two kids)
- I'd like the original DVD menus and Extras to be available.
Ah well, 3 out of 4 ain't bad: the last goal is still unattainable.
- Media Center on Vista SP1
- Media Center Extender (I use an Xbox 360, I assume the 2nd gen extenders will also work but I don't have one)
- The ability to edit XML files (e.g. Notepad)
- Ripped DVDs
How I Did It
- First off I ripped the DVDs to my file server. I'm not going to tell you how to do this.
- Next I enabled "DVD Library" which lets you play ripped DVDs on the Vista machine itself in Media Center
- Next I got my Xbox 360 to see my Media Center on my Vista (64-bit) box. This was substantially harder than it is for most people as I run a Domain Controller on my home network, plus the files are on a file server, not on my Vista machine (here is a link to the magic for those with their own domain controller). Once I got it working I was crucially disappointed to see that "DVD Library" did not show up on the Xbox.
- The trick to getting "DVD Library" to show up is revealed here. This took me longer than it should because although "DVD Library" showed up on my Xbox soon enough, the only content was the Apollo 13 and Vertigo clips that come with Vista. No amount of me messing with the Extender Settings could change this. However, turns out I was an idiot: pressing the Info key brings up a sub-menu with "Add Movies" on it. Once I did that and added the share from my server, I was in business.
- Getting rid of Vertigo and Apollo 13 proved impossible except by removing the files physically from my Vista machine.
I created a new share on my server, called DVDs, to separate the kids rips from the general pool. For each desired movie, I made a new directory (whose name is what shows up in the "DVD Library"), and into it I placed:
- Folder.jpg - disc artwork borrowed from Amazon, cropped to DVD-shape when required
- VIDEO_TS.IFO - zero length file required
- The hardest bit: working out which VOBs are the actual movie. For each one, I created a hardlink MPEG from the VOB in the original rip directory.
- Foo.wvx - XML file as described in the link above. Only a few elements are supported, described in the Playlist section of this page. The name of this file makes no difference, the extension does though. For each VOB you worked out above, add an Entry/Ref section as described.
Hints & Tips
When playing DVDs this way, there is no trick play, and chapter skipping just seems to jump 30 seconds or so. Also when there is a transition of one MPEG to the next, there is a few seconds of blackness. Anamorphic DVDs look great, 4:3 ones as well as expected, but non-anamorphic widescreen titles have black bars on all sides.
Don't use Windows Media Player to work out which VOBs are which: it is too smart and recognizes its a DVD rip. I used Nero's Showtime instead. You can use WMP to check the WVX file works, but note that it will choose a seemingly random audio track for each MPEG file. Don't be alarmed, MCE chooses the right track when it plays them, WMP is broken in this regard.
I had problems using a VIDEO_TS directory: just placing the listed files directly into a suitably named directory worked much better for me.
In an ideal world you could play ripped DVDs on Extenders out-of-the-box, but you can't and some hoops are necessary. These hoops are worth it for me though. I can dream about DVD menu support I suppose...