mp3swift car audio system 
 home
 car
 sound
 hardware
software
 specifications
 gallery
 links

To complement the details of sound and hardware components, this section will bring together the software and applications running the system during operation. This includes details of the 'Auto-Play' InCar multimedia playback application, plus 'off the shelf' programs.

Jump to:requirementsoperating systemmp3car application
results/conclusionrelated documents

requirements

Before undertaking the project a few expectations were set that were expected of the final system software -

  • Support mp3 audio files and associated playlists allowing for cataloguing of tracks into genere/style/album.
  • Video/movie playing through the use of the DivX video codec, with features such as chapter support, pan-scan/wide-screen modes, etc.
  • Easy to navigate interface using the steering wheel IR remote control.
  • Clear text and easy to read menus/graphics for a 5.6 Inch TFT screen size.
  • With a graphic screen - it needs to look good.
  • The system needs a relatively quick bootup/startup time and run stable without crashes.

These are my ultimate aims for the system software at this time, some of the requirements I feel have been achieved well, whilst a bit of extra refinement and work is needed in a few areas. But at the end of the day, the software, along with the entire system will never really be completed.


operating system

Windows 98 second edition was chosen for the operating system due to its great hardware support, easy setup/configuration and in my experience very stable. The excellent 98lite was used for installing, which allows for an operating system excluding all the default 'bloat', such as the integrated HTML engine and Internet Explorer. This typically results in a smaller, faster to boot and more importantly stable setup. The 40GB hard drive was partitioned into a 400MB primary/boot to hold the operating system/software and a 38GB secondary partition just for mp3/video media.

Once installed a few changes were made to the win98 system settings -

  • Disabled the 'scandisk after bad shutdown' option - since powering off the system whilst running would result in un-required disk scans each bootup.
  • Turned off virtual memory, which eliminated the need for a windows swap file and extra disk reads/writes. With 128MB of RAM and running applications with limited overhead this is safe to do.
  • Removed windows 98 startup screens.

With changes made to the base OS, video & sound card drivers were installed (including DirectX 8.1) plus the following -

Currently Winamp is running the Crossfading Directsound, SqrSoft Limiter and Sexy Attached Analyzer plugins. AVS is sadly no longer being used since it turns out alot of the problems I was having with Auto-Play (such as massive slowdowns after playing an mp3 then returning to track/playlist selection screens) were due to problems with AVS. Sexy Attached Analyzer is a very close second though in my opinion anyway so I would rather have a stable running system that a bit of extra eye-candy.

At each major point of software installation a separate image file of the boot partition was taken using Norton Ghost, which will make things easier if I need to rollback the software setup for an upgrade/device change/etc. in the future. Choosing to place the OS/software into its own partition, separate from media files made this process much easier to handle.


mp3car application ('Auto-Play')

With Windows 98 as the choice of OS I decided to develop the core Auto-Play incar application using Visual Basic 6. The application can be divided into three main components/programs -

remote control setup utility -
IRman remote control setup/learning utility
This program basically allows the application to 'learn' remote controls. On startup it configures the IRman hardware device on the com port and then waits for incoming IR signals to be sent by the IRman. The signals can then be assigned to function key presses used in the mp3car app. Once the assignment of IR signals/key presses to functions is defined, the configuration can then be written to a settings file. Then upon load of the application within the car the settings from this file is loaded, ready to perform its actions based on the IR signals defined.

mp3 audio playlist builder -
With the ability to have more than a few hundred audio files to choose from via the system it becomes quite obvious that a system is needed to catalogue and database track/album/playlist details - that is where this second utility comes into play. It scans the mp3 directory residing on the hard drives media partition for sub-directories and creates a Winamp compatible .m3u playlist file for each.

To solve the problem of distinction between albums and playlists, sub directories containing their own .m3u playlist will be assumed as an album with the sequence of tracks inherited from that sub directories .m3u file. All other sub folders will have its tracks sorted into alphabetical ordering. The generated .m3u files and then written to a playlists sub folder with identified albums having their .m3u file prefixed with an exclamation mark (!) so the in-car mp3 software can make a distinction.

mp3car system software -
MP3 playback screen with winamp visulisation plugin
This is the major piece of software, executed upon bootup of the windows 98 OS in place of the shell. On startup it initializes the IRman device and loads up winamp, the IR signal file, mp3 playlists and scans the video directory for DivX movies and their related chapter info files (similar to DVD chapter marks). The user is then presented with the welcoming screen on the TFT display. The displays themselves can be 'skinned' to a basic level with a background image, fonts and colors of various elements. From this point the user can select a mp3 playlist/album and starting track or alternatively and DivX video to play.

With playback of mp3's the screen is split into two halves, with the top half displaying the track name, current/total track time and track number with the lower screen half showing the Winamp visualization plugin (as shown in the image). The user can control volume up/down/mute plus navigate prev/next in the track listing. Playlists identified as albums are played in sequential order, otherwise a random order selection is chosen. Winamp is used for the playback of all mp3 audio files.

Video/DivX playback makes use of the windows media internal API calls and the DivX 5 video CODEC. It allows the user to jump chapters/sections of the movie like DVD chapters, select between wide screen (letter box) and pan-scan viewing modes plus control volume output levels.


results/conclusion

Whilst in no way fully complete at this time, the software works very well with the current hardware configuration and views nicely on the TFT display. With release of the 'Auto-Play' software now to the public, I am getting alot of great feedback and ideas. Therefore my time and effort spent on improving it is greater than every before, meaning that newer features and fixes are included on a regular basis which is great.

A change in OS is now also being considered, with a move to XP embedded likely very soon, after reading of some great success stories had by other members at the mp3car.com forums.


related documents

Page Views
254328
Since July 2001
  Last Updated 19-Nov-02  
projects @ magnetikonline dot com
Get Firefox!