The JMRI Manual
Download
Getting Started
Using DecoderPro®
DecoderPro® Programming Modes
The Basic Programmer
The Comprehensive Programmer
The Advanced Programmer
DecoderPro® Main Window
Creating a Decoder Definition
Error Messages

DecoderPro® Debug Menu

Virtual Sound Decoder

Back


Virtual Sound Decoder

The Virtual Sound Decoder provides a way for those who do not have sound-equipped locomotives (or who are not satisfied with the hardware sound decoder options in smaller scales) to enjoy throttle-controlled locomotive sounds from their computer speakers.

How it works

Locomotive sound "Profiles" are stored in a file called a "VSD File". When the Virtual Sound Decoder ("VSDecoder" or "VSD") is launched, the user chooses the desired Profile, and then assigns the VSDecoder an address. When the operator then controls the engine by pressing function buttons or changing the speed, the Virtual Sound Decoder responds just like a hardware sound decoder installed in the locomotive would by playing sounds through the computer speakers.

OpenAL Required

Virtual Sound Decoder requires that your system have the OpenAL audio lbirary installed. OpenAL is included by default on the Mac, but must be installed on Windows.

OpenAL is available free from Creative Labs. You can download the installer for your operating system from the OpenAL site.

If you do not have OpenAL installed, Virtual Sound Decoder will seem to work, except you will get no sound output.

Please NOTE: OpenAL is a separate project from JMRI and is neither maintained nor controlled by the JMRI team.

Quick Start - How to use Virtual Sound Decoder

To get started with Virtual Sound Decoder, follow these steps.

  1. Make sure your sound system is working, and (if needed) you have installed OpenAL
  2. Select Debug->Virtual Sound Decoder->VSDecoder Manager
  3. With the VSDecoder Manager window selected, click the Add Decoder button.
  4. Configure the new VSDecoder
    • Select a loco from the Roster or enter an address Manually
    • Click Load VSD File and load the "example.vsd" file
    • Choose a Profile from the Profile combo-box.
    • Click OK
  5. Press the "Engine Start" button.
  6. Run your train!!

Each time you Add Decoder a new control panel will be added to the Manager window. The buttons on the control panel are specific to that VSDecoder.

In the Configure Dialog, you can save a VSDecoder profile selection to a Roster Entry, so that the profile is automatically loaded when the locomotive is selected from the Roster. Select the Roster entry, choose a Profile, and click "Save".

For more detailed information on the VSDecoder Manager, see the VSDecoder Manager User's Guide page.

Throttle Compatibility

Virtual Sound Decoder requires a throttle that will report speed changes and function button presses to JMRI. Currently compatible throttles include:

*Support for these systems is expected but not confirmed. If you have one of these systems and can confirm that VSD responds to throttle changes, please mention this on the JMRI Users group.

Notably missing from this list is the popular NCE PowerCab system.

VSD is not compatible with the following systems because they do not send throttle information to JMRI.

The buttons on the Sounds tab can be used to trigger sounds if you are using an incompatible throttle system.

Location Following

(Note: This function will be active starting with test release 3.1.5.)

With input from locomotive tracking hardware, Virtual Sound Decoder is able to move the apparent source of the locomotive sound to follow the locomotive's position on the layout.

Location Following Setup
To enable location following you will need a hardware method of tracking the locomotive's position on the layout. VSD currently supports the following tracking systems:

If you have one of the systems noted as "not tested", and would like to help with testing and debug of this feature, please contact me on the JMRI Users group. More systems will be added in the future.

For details on setting up Location Following, see the Manage VSD Locations instructions.

When you have followed the above setup steps, launch a VSDecoder window, assign a locomotive and run it. As your locomotive moves around the layout, the sound will follow the locomotive's reported position.

Note: The sound will appear to "jump" from location to location as the locomotive's reported location changes. This effect will be smaller with additional and more closely spaced reporters.

Location Following using JMRI Operations

If you do not have a hardware tracking system, you can use the JMRI Operations feature to enable a rudimentary form of location following.

To set the Operations locations:

  1. Select Operations->Settings
  2. Select Tools->Options
  3. Check the "Enable physical locations for Virtual Sound Decoder" option, and save the changes.
  4. Follow the directions in Manage VSD Locations to assign locations.

To use Operations for location following, assign the specific locomotive to the train, then select the train in the locomotive's VSDecoder Options pane. When you MOVE the train in Operations, the sound will move to the next location on the Route.

For more information on Operations, see the JMRI® Operating User's Guide.

Note: Operations Locations following is temporarily disabled in version 3.1.6. It will be re-enabled in 3.1.7.

Menu Items
File->Load VSD File

Load the Sound Profiles from a VSD File. Profiles loaded will be available to any currently running or newly launched VSDecoder.

Edit->VSDecoder Preferences

Set preferences for VSDecoder operation. See below for details.

VSDecoder Preferences

The VSDecoder Preferences pane allows the user to change various preferences in how the VSDecoder works.

Auto Start Engine

If checked, the Engine sounds will react immediately to Throttle changes, without the Engine Start button first having to be pressed.

Auto-Load VSD File

If checked, the VSD File listed in the Default VSD File Path field will be automatically loaded on start-up. This can save a step for frequently used VSD Files.

Listener Position
These entries allow the Listener Position to be set relative to the user-chosen Origin of the sound field. This allows you to place the Origin at a convenient-for-you spot, such as a corner of the layout or of the room.
Cancel / Apply / Save Buttons

Choose Cancel to cancel changes to the Preferences

Choose Apply to apply changes to the Preferences

Choose Save to save changes to the Preferences

Back