This project aims to create a new multimedia server application for the Gateway Connected DVD Player series, including the ADC-220 and ADC-230 models. The original server software provided with the players will need to be reverse-engineered and studied to determine how to emulate the appropriate protocols.
Users of the Gateway Connected DVD Player series often find that the server application is adequate for most uses, but has serious drawbacks. One of the most serious drawback is the limited support for DivX AVI files with MP3 or AC3 audio. Another drawback is that the server application does not properly handle VBR MP3 audio tracks, so, if the user chooses to fast-forward or rewind such a file during playback, audio-video sync is lost. AC3 audio support is entirely broken -- there is no sync in files that have AC3 audio tracks. These aside, the GUI has a very poor system of letting the user organize video files into playlists or separate shows. Many users already sort their video files into a folder hierarchy, and the server software should allow the user to choose to display files in this way.
This project aims to rectify these problems and provide a much more robust server application. Initially, the server is aimed to run on the platform that the current software already runs on -- Windows 2000 & XP -- but may be expanded to other platforms later on. This may provide an excellent opportunity for users of Mac OS X or Linux to gain a server application for their OSes as well.
The primary goal is to determine how to emulate the protocol that is used to communicate to the DVD player. Packet monitoring programs like Ethereal will come in handy for this purpose. Once the protocol can be properly emulated, the next step is to actually implement transcoding of video files. In order to support the widest variety of formats, the new server should support DirectShow filters. Currently, Gateway's server application seems to use AVIFile access with codecs, which would explain the problems it has with VBR MP3 and AC3 audio; DirectShow filters could remedy this. The project will need to develop a way for the server to quickly transcode the video content that it receives from DirectShow into the MPEG-1 format that the player expects.