Extended Windows
ListMaker
The fourth step was to automate the process through MCE in a manner that works over an Xbox Extender. The main part of the UI involves a type of MCE AddIn called a ListMaker. The ListMaker provides the UI to select the video(s) that you want to view and then it kicks off some process. For this app, the processing just uses the Windows Media Encoder SDK to automate streaming of a video file (or a series of video files). To install, run the deploy.bat file that is included in the source code zip below. Started to create an installer, but never finished it.
Extended Windows
DivX 6.1 did give me some other problems though, because it was trying to open a window ... which a Media Center Extender session does not allow. To get past this I ran the 'DivX Toolbar Toggle Tool' to turn it off. You can tell if you have this problem by checking the Event Log for Applications. It will look say something like 'Unauthorized window was detect while running the Media Center Experience, '', with file name 'C:\WINDOWS\system32\DivXsm.exe'.
The MS AntiSpyware Beta had this same problem. Ended up uninstalling it because it seemed to be randomly ending some of my extender sessions. Looks like some other people have had this problem too. Not entirely sure it needed to be uninstalled; I'll have to reinstall it and see if this still works but hopefully this will be fixed when MS AntiSpyware is released.
Usage
After everything is installed (detailed above), go to your Xbox 360 and start a Media Center Session. Then go into 'More Programs' and select the /mceDivX360 icon. NOTE: the adultdvdempire icon next to it ... that's called research :) er, um ... I have to see how other people are developing MCE Add-Ins. Going to have to try and write off a dirty movie this year.
This will bring up a display asking for a list name, currently 'Untitled'. The list does not get saved, and the list name does not matter, so just click 'OK'. I wish there was a way that I could bypass that screen altogether, but it doesn't look like I can.
Then it will display the 'My Videos' folder which you can drill into to select which videos you want to be streamed. NOTE: you can select multiple videos to play back to back. After selecting the videos, click 'View List'. NOTE: wish I could remove the 'Select All' button or add an 'Unselect All' button.
The next screen will show the list of videos to stream. You can change the order and remove videos from the list here. Finally, click 'Stream List' to start Media Encoder in the background. NOTE: when selecting multiple files, make sure they are all of the same aspect ratio, else they will be distorted. NOTE: wish I could remove the 'Change Name' button.
This will bring up a dialog with a progress bar. NOTE: that the progress bar will be incorrect for DivX files. A lot of times it will just stay at 0% even though it really is streaming. I think it has problems with the codec? Regardless, dismiss the dialog by pressing 'OK'. Media Encoder will still be streaming in the background. NOTE: wish that I could change the text of that dialog to show that it was streaming, and not copying.
NOTE: if the progress dialog opens up real quick and immediately goes away, then you've got a problem and streaming has stopped. First, check the permissions on the file(s) you are trying to play (see below). Second, check that you've got the proper codecs installed by trying to stream it manually using the Media Encoder UI from your MCE PC.
Now use your remote to exit 'My Programs' and go to 'My Videos'. Select the _MediaEncoder.asx file to start watching the stream. NOTE: it will take a couple seconds to display as the stream is buffered. NOTE: if you do this real quick, sometimes the Media Encoder hasn't fully started yet, and you'll get a 'Video Error'. Just select the _MediaEncoder.asx again and it should work the 2nd time.
Wish that I could automatically redirect you to the 'My Videos' screen, but the ListMaker Add-In does not provide access to the Host in the same manner that other MCE AddIns do. Tried to send the corresponding keystrokes for that remote event too, but the Media Center Extender user account can only be controlled by remote control commands. Having a reference to Host would have been nice to let me popup my own dialog for exceptions too.
When the stream is complete, it will display a dialog asking if you want to process the list again. If you click 'Create' then it will start the video streaming again, else you can just click 'Done'. NOTE: wish that I could change the text of that dialog.
If you want to exit the stream, then just back out of 'My Videos' and go to 'My Programs' and select the /mceDivX360 icon again. This will bring up the progress dialog again, allowing you to stop the stream. NOTE: if the video is still playing in the preview window (bottom left), then it will take a couple seconds for it to stop, because of the buffer. After stopping the stream, you can reselect the /mceDivX360 icon to choose a different video to stream. NOTE: wish that I could change the text of that dialog.
HEXUS.links: Check out casey's homepage at www.brains-N-brawn.com.