Hack74.Use Neocar Media Center as Your Car PC Frontend


Hack 74. Use Neocar Media Center as Your Car PC Frontend

Neocar Media Center is a very popular, highly customizable car PC frontend with a large European following.

A couple of years ago, I started planning my own car PC installation. I was very excited, and I thought, "In a few days I'll be playing any multimedia files I want in my car!" Assembling the hardware was easy, as there were already plenty of choices for a good car multimedia installation [Hack #52]. I just needed to find good, powerful software to manage all the new functions.

And that was the problemnothing I found worked how I wanted it to. Some good applications were available, but none of them had all the functions I needed. So, I decided to make my own software.

This hack is about the Neocar Media Center application that I wrote (http://www.neocarmediacenter.com/?language=EN). After reading it, you should have a pretty good idea of whether you want to use my software as the frontend to your car PC.

7.7.1. Neocar Media Center

When I started working on NMC, I had a big problem: I had only rudimentary Visual Basic skills, and I wasn't an experienced programmer. Perhaps this is what led me to really think about the design of my software before I wrote any code. Besides making a frontend application, I wanted a program that was user-configurable, because I wanted users to be able to run it they way they wanted. I also wanted a program that was skinnable, so that I (and other users) could change its appearance with ease. Finally, I wanted to include all the functions I wanted in one program, because I hate having to install multiple pieces of software when one could do the job.

NMC is coded to enable you to sort of build your own car PC software. That is, NMC has a lot of functions that the user can choose to use in his particular skin, or not. It's all based on different NMC modules that accomplish the main functions, such as music playing, movie playback, and image display (see Figure 7-17).

Figure 7-17. Neocar Media Center main module


Installing NMC is simplejust download the latest development version from http://www.neocarmediacenter.com and install it with a double-click. After installing, NMC will automatically load Neocar Manager so that you can enter the only required options: the location of your media folders for music, movies, and images. Once you've saved the configuration, all the other options will be available so that you can set up NMC how you want.

Neocar is comprised of three components:


Neocar Media Center (NMC)

The frontend program itself. This is what you will interact with on a daily basis.


Neocar Skin Workshop (NSW)

Using this, you can make a custom NMC skin design from scratch, or simply open an existing skin and modify it. You can change the fonts (color, name, size, format), button positions and sizes, text sizes, and more, all without having to redesign any image files!


Neocar Manager (NM)

With NM, you can set all the available options, even if your skin doesn't support them. Options are ordered in categories for better readability.

7.7.2. NMC Features

NMC derives its functionality from several different modules. It is up to the user to select which modules to display on the main NMC window. Each module can have up to three view modes, which are fully customizable by the user. Using the view modes, you can show all the available options or just a subset, or display the module in full-screen mode. Here are brief descriptions of the currently available modules:


Main module

When you launch NMC, by default the Main module will load (see Figure 7-18). This menu displays buttons for all of the functions enabled by the skin. If you return to the main menu while audio files are playing, not only does the music continue, but NMC will also show audio controls to let you play, stop, or change the music.

Figure 7-18. The NMC Main module (with audio controls)



Music module

This is probably the most-used part of NMC (see Figure 7-19). The Music module allows you to play audio files (naturally), but it also lets you open Winamp playlists and playlists in NMC's custom format, which allows you to include virtual folders. Once you've starting playing music, it will continue to play when you switch to other modules.

Figure 7-19. The NMC Music module


The Music module can play MP3, WAV, WMA, and OGG files. It also supports reading of cue sheet files, which are text files that prepare audio files to be burned to CD (like a summary of the included tracks, with start and end times). This feature is for those who don't want to rip individual tracks for each audio CD. It allows the whole CD to exist as a single file on the hard disk, while preserving an index of the subdivided tracks that NMC will read and display for you.


Movie module

The Movie module supports every function supported by the Music module. You can use cue sheets, use playlists to manage your playing order, go to full-screen video with an auto-hiding control bar, and so on. The Movie module can play AVI, MPEG, ASF, WMV, and MPV files.


Images module

With the Images module (Figure 7-20), you can open your image files, make automatic slideshows, and adjust the slideshow speed. The auto-hiding control bar is present, as in other modules. The Image module can display JPG, GIF, BMP, and PNG images.


External Applications module

A major feature of NMC is the External Applications module, which allows you to embed any external application as if it were part of NMC.

Figure 7-20. The NMC Images module


To use this feature, you define a list of software in the Neocar Manager that NMC will show in the External Applications module (Figure 7-21). If you click on an application in that list, you will see a brief description, and clicking another time will run it. NMC then switches to fullscreen mode, showing the launched application embedded inside the NMC skin (Figure 7-22). As in the other modules, the control bar automatically hides after a configurable delay.


Keyboard module

The Keyboard module is a fully working onscreen keyboard (Figure 7-23), allowing you to enter information in NMC or in any launched external application. Like the other modules, you can design the keyboard exactly how you want it; you aren't constrained by a normal keyboard layout. NMC includes a function to let you choose the keyboard scheme to fit your language requirements.


File List module

This module (see Figure 7-24) lets you navigate through your filesystem and search for multimedia files. It can show you information about each file that can be played in NMC and will open the appropriate module for any selected file. You can also use the file list to manage audio or video playlists, by simply adding or removing tracks using dedicated buttons.

Figure 7-21. The NMC External Applications module


Figure 7-22. Full-screen navigation with control bar


Figure 7-23. The NMC Keyboard module


Figure 7-24. The NMC File List module



Equalizer module

You can use this module to adjust sound EQ settings to your liking. You can also use it to set common levels, such as the volumes for main, WAV, line-in, audio CD, or microphone, just like the Volume Control panel in Windows.

7.7.3. Configuring NMC

Using skins, you can quickly customize the entire look of the application. Since skinning is an important feature to me, I wanted to make it easy to do, and I wanted to include the ability to edit the available skins and create new skins, not just apply existing ones. You can do all of this using the Neocar Skin Workshop (NSW).

The interface is similar to other image-editing software (see Figure 7-25). Using the mouse, you select a button to add to the interface, then click on the skin where you want that button to appear. NSW will then display a list of available module controls to assign to that button.

Figure 7-25. Neocar Skin Workshop


After you've created or modified a skin, NSW lets you validate it for errors. Once you've validated your creation, NSW can make an installer for your skin (using Nullsoft's NSIS installer) and upload the skin directly to http://www.neocarmediacenter.com, where it will be made available for others to use.

Each skin is made from just four images:


Background image

This is the image on which you place all other images, such as your interface buttons.


Normal buttons image

This image combines the background image and the interface buttons in their "released" or up positions.


Pressed buttons image

This shows the interface with the buttons in the "pressed" or down position.


Hover buttons image

This is what the interface looks like when the mouse is hovering over each of the buttons.

The skin.xml file (present in the folder for each individual skin) is a file containing information about the position and size of each used control. It also contains text display properties and some skin-related options.

While loading, NMC will list the positions and sizes of each of the skin's controls and draw the buttons where you placed them. The image will then be copied from the "normal buttons" skin image, and the background will be painted on the module.

With this system, it's easy to remove a button from the skin and just let NMC use the background image to paint the module without that button. So, if NMC doesn't find a control's information, it will simply not paint or load it, so that button's commands will be unavailable.

7.7.4. Neocar Manager

The Neocar Manager is where you can configure all NMC-related options. You can associate files with NMC, manage your albums, manage your movies, add or remove external apps, and more. There are too many features and configuration options to describe here; the best way to get to know it is to experiment.

7.7.5. Future Plans

Neocar is far from finished. I'm working on several stunning new functions, including full GPS embedding, keyboard support, DVD support, audio CD support, character LCD support, and database-driven filesystem support, as well as lots of function improvements and general performance tuning.

The best source of feature and support information about NMC is the main web site, http://www.neocarmediacenter.com/?language=EN. There you can find updates on the progress of development, the to-do list, requests, bugs, and more.

Stéphane Monnier



    Car PC Hacks
    Car PC Hacks
    ISBN: 0596008716
    EAN: 2147483647
    Year: 2005
    Pages: 131

    flylib.com © 2008-2017.
    If you may any questions please contact us: flylib@qtcs.net