Manual: Hidden Settings

From OpenMPT Wiki
Jump to: navigation, search
Advanced tab of the settings dialog

Some settings for advanced users cannot be changed directly in OpenMPT, however they can changed by modifying OpenMPT’s configuration file, mptrack.ini, or from the Advanced Settings. When using the latter method, it might be necessary to restart OpenMPT for some options ot take effect.


  • BlockASIO, BlockDirectSound, BlockPortAudio, BlockRtAudio, BlockWaveOut: If set to 1, the respective sound device types do not get initialized or queried by OpenMPT. You should not need to disable any of these unless told to do so by the OpenMPT developers in order to diagnose problems.
  • BlockACM_MP3: If set to 1, OpenMPT will not look for any ACM MP3 encoders.
  • BlockLibMP3Lame: If set to 1, OpenMPT will not use the Lame MP3 encoder.
  • BlockMediaFoundation: If set to 1, OpenMPT will not load any samples using MediaFoundation codecs.
  • BlockMpg123: If set to 1, OpenMPT will not load mpg123 to import MPEG samples.
  • BlockUXTheme: If set to 1, prevents OpenMPT from loading uxtheme.dll for styling the lower half of the General tab.
  • BlockWineWrapper: If set to 1, OpenMPT will not load the Wine native audio wrapper.
  • KeepLoaded: If set to 0, optional OpenMPT components (e.g. MP3 codecs) are unloaded after usage. This frees up memory used by these components but slows down subsequent uses.
  • LoadOnStartUp: If set to 1, some optional components are loaded right on statup instead of when they are first used.


Options in this section should generally only be changed if you are advised by an OpenMPT developer to do so.

  • DelegateToWindowsHandler: If set to 1, OpenMPT will invoke the Windows default crash handler after its own crash handler has finished generating the crash report which had been the behaviour in OpenMPT before 1.27.
  • StopSoundDeviceBeforeDump: By default, the sound device is closed after writing out a crash dump. Setting this option to 1 inverts the behaviour.
  • StopSoundDeviceOnCrash: If set to 0, OpenMPT will not close or otherwise touch the state of the sound device when writing out a crash dump. Only change this setting when asked by the OpenMPT developers to do so in order to diagnose sound device related crashes.
  • TraceAlwaysDump: If set to 1 and TraceEnable is also set to 1, OpenMPT will always write out the trace log on program exit even if no crash happened. Do not enable this setting unless you are advised by the developers to do so.
  • TraceEnable: If set to 1, a trace logging system is enabled which can be used by the OpenMPT developers to debug certain problems. Do not enable this setting unless you are advised by the developers to do so.
  • TraceSize: Configures the tracer buffer size. By default, it contains 1000000 entries.


  • FSUpdateInterval: OpenMPT watches the file system in order to update the instrument library tree view when files get added or removed to the directory while OpenMPT is running. This setting limits the rate of the GUI updates in these cases to the given value in milliseconds. The default is 500ms.
  • GUIUpdateInterval: Defines the update interval of the GUI in milliseconds (default: depends on the period value found in the sound card settings).
  • HighResUI: If enabled, OpenMPT reports itself to Windows as a DPI-aware application. This setting might have to disabled if you are using a high-DPI screen in combination with VST plugins that do not have a DPI-aware user interface.
  • ShowSplashScreen: If set to 0, no splash screen is shown when starting the program (same effect as command line option /NoLogo).
  • VuMeterUpdateInterval: Defines the update interval of the VU meters in milliseconds (default: 15ms).
  • VuMeterDecaySpeedDecibelPerSecond : Sets the VU meter's decay speed The default value is 88 dB/s.


  • DefaultToSoundcardSamplerate: By default, the export dialog presets the export frequency to the tracker’s currently selected sample rate. One reason for this behaviour is that some plugins do not like it when the sample rate is changed between normal playback and export. If you do not like this behaviour, you can set this value to 0. In this case, OpenMPT remembers the previously selected sample rate instead.
  • FLACCompressionLevel: When exporting to FLAC format, this value sets the FLAC compression level. Higher values mean better compression ratio and require more CPU time. For details, please refer to the FLAC documentation.
  • MP3ACMFast: When exporting to MP3 format using an ACM MP3 codec, this value can be used to enabled fast encoding mode. The exact meaning of this mode depends on the actual codec that is used. Please refer to the respective codec's documentation for further details.
  • MP3ID3v2MinPadding: This value is the minimum amount of padding bytes to add to ID3v2 tags.
  • MP3ID3v2PaddingAlignHint: This aligns the MP3 data after the ID3v2 tag in addition to the minimum padding to a multiple of the configured value. Set to 0 to disable additional aligning.
  • MP3ID3v2WriteReplayGainTXXX: Write ReplayGain information (if calculated, see MP3LameCalculateReplayGain and MP3LameCalculatePeakSample) to the ID3v2 tag. This setting defaults to 1.
  • MP3LameCalculateReplayGain and MP3LameCalculatePeakSample: When exporting to MP3 format using libmp3lame, calculate the ReplayGain track gain adjustment and the peak sample value (as require by ReplaGain) respectively. The calculated values get written to the VBR/Lame info header automatically in VBR mode. Additionally, the values can be written to the ID3v2 tags when enabled (see MP3ID3v2WriteReplayGainTXXX). Both settings default to 1.
  • MP3LameID3v2UseLame: If set to 1, when exporting to MP3 format using libmp3lame, uses the libmp3lame ID3v2.3 implementation instead of the OpenMPT ID3v2.4 implementation. ID3v2.3 is more widely supported by older player software.
  • MP3LameQuality: When exporting to MP3 format using libmp3lame, this value selects the internal algorithm quality used by LAME. Lower values mean better quality and require more CPU time. This is the same as the -q command line parameter for LAME. More details can be found e.g. on Hydrogenaudio.
  • OpusComplexity: When exporting to Opus format, this value selects the internal complexity used by libopus. Higher values mean better encoding efficiency and require more CPU time. Value -1 uses the libopus default value. For details, please refer to the libopus documentation.

[MIDI Input Ports][edit]

In this section, you can set “friendly names” for all MIDI input ports. If you have lots of MIDI ports with undescriptive names (such as “MIDI Device Port 1”, “MIDI Device Port 2”, …), it can be useful to replace those names with more suitable names, e.g. to describe which device is connected to a specific port. To replace a name, add a pair like MIDI Device Port 1=Synthesizer 1 to this section.

[MIDI Output Ports][edit]

Same as [MIDI Input Ports], but for MIDI output ports.


  • AllowMultipleCommandsPerKey: By default, a key combination can be used by only one command. Setting this to 1 allows you to bind more than one command to a key combination. Beware that this might lead to problems with existing keyboard mappings with overlapping commands!
  • DistinguishModifiers: Enable this option to distinguish between left and right Ctrl / Alt / Shift modifiers, e.g. to create FastTracker 2-like pattern play shortcuts.
  • FlushFileBuffersOnSave: Disabling this option avoids flushing of file buffers after saving modules, samples and other files on disk. This can speed up the write operation but increases the risk of data loss e.g. in case of a power failure.
  • ITCompressionMono: Enables IT-compressed mono samples when saving IT/MPTM files, depending on the value. To enable saving for normal IT files, add 1 to the value, for IT files saved through Compatibility Export, add 2, and for MPTM files add 4. So to enable saving of compressed samples in compatible ITs and MPTMs only, you would use the value 6. Some caveats regarding the usage of compressed samples have been written down on the forum.
  • ITCompressionStereo: Enables IT-compressed stereo samples when saving IT/MPTM files, depending on the value (see above).
  • MRUListLength: Sets the maximum length of the most recently used file list in the file menu. Allowed values are between 0 (no list) and 15 entries.
  • ProcessPriorityClass: Set the Windows process priority class for OpenMPT. Possible values are: "idle", "below", "normal", "above", "high", "realtime". The default is "normal". See further discussion on the forum. Warning: Changing this setting can cause system lockups requiring hard system reset.
  • SaveChannelMuteStatus: If set to 0, OpenMPT will not save the channel mute status in IT, MPTM and S3M files.
  • ShowSettingsOnNewVersion: If set to 0, OpenMPT will never show the settings dialog when upgrading to a new version.
  • SmoothFT2Ramping: If set to 1, XM files made with Fasttracker 2 will automatically use very smooth sample ramping settings (like Fasttracker 2 did).


  • Export_Directory: The default export directory for lossless and lossy audio export. OpenMPT always uses the last used directory for exporting, so changing this setting does not make a lot of sense.
  • UseAppDataDirectory: By default, this is set to 1. If set to 0, portable mode is enabled and mptrack.ini and other configuration files are placed directly in the same directory as OpenMPT’s executable (by default they are placed in %APPDATA%\OpenMPT). This setting is only considered if the configuration file is already placed in the same directory as OpenMPT’s executable! See also: System Setup.

[Pattern Editor][edit]

  • AccessibilityFormat: Defines the description of the pattern editor that can be obtained by screen readers. The string may contain the following variables: %sequence%, %order%, %pattern%, %row%, %channel%, %column_type%, %column_description%.
  • AlwaysDrawWholePatternOnScrollSlow: If set to 1, OpenMPT will always repaint the whole pattern display instead of re-using parts of the window that have only moved and not changed. This will be measurably slower, however in some situation the display will look broken otherwise (like jittering play cursor, not updating regions of the pattern display properly when switching to and from the window, or generally sluggish/jerky display). The problem is related to certain graphics drivers (known examples are systems with multiple AMD GPUs in Windows 7, Windows XP in VirtualBox, and all Wine systems). By default, this setting is 0. On Wine, this setting has no effect and is treated as always 1, regardless of its actual value.
  • DefaultSequenceMargins: Defines how many order items are shown at least before and after the currently selected order item (0 by default).
  • EditStepAppliesToCommands: When set to 1, the edit step setting is also applied when entering a command into the volume or effect column.
  • FontDot: Overriding this setting allows to specify a custom character to be used for empty cells with user-configured pattern fonts.
  • NoEditPopup: Disables the reminder popup when trying to edit patterns while editing is disabled and treats all channel columns like the note column to simplify jamming (keyjazz).
  • RowDisplayOffset: Defines the displayed number of the first pattern row; by default, it is 0. This does not affect the Goto dialog or break commands in patterns.

[Sound Settings][edit]

  • BoostedThreadPriority: Set the priority (for Windows XP) used for sound devices which have "Boost thread priority" set. Possible values are -15,-2,-1,0,1,2,15 (or the full range -15..15 if [Misc]ProcessPriorityClass is set to "realtime"). Default value is 2. See further discussion on the forum. Warning: Changing this setting can cause system lockups requiring hard system reset.
  • BoostedThreadMMCSSClass: Set the Multimedia Class Scheduler Service (MMCSS) class (for Windows Vista and later) used for sound devices which have "Boost thread priority" set. Possible values are "Pro Audio", "Games", "Audio" or anything else that may be configured on your systems MMCSS. Default value is "Pro Audio". See further discussion on the forum. Warning: Changing this setting can cause system lockups requiring hard system reset.
  • MorePortaudio: If set to 1, OpenMPT will show another set of WaveOut and DirectSound devices. The first bunch is handled via OpenMPT's own sound device code as usual, and the additional bunch will be handled via the included PortAudio library (which by default will only be used for WASAPI and WDM-KS/WaveRT devices).
  • MoreRtaudio: If set to 1, OpenMPT will show another set of DirectSound devices. The first bunch is handled via OpenMPT's own sound device code as usual, and the second bunch will be handled via the included RtAudio library.
  • PreferSameTypeIfDeviceUnavailable: Changes the algorithm for selecting the fallback sound device if the device selected by the user (or read from the configuration) is currently unavailable. When this setting is set to 1, a device of the same type as the currently selected is preferred instead of just defaulting to wave mapper.
  • ResamplerWFIRCutoff: Configures the bandwidth of the audio signal that is retained by the 8-tap Sinc filter (without low-pass) in percent. The default of 97% offers a good compromise between “freshness” and quality of the resampled sound.
  • SampleRates: A comma-separated list of sample rates that OpenMPT will show in the sound device settings (if supported by the device) and when exporting a WAVE or FLAC file.
  • XMMSModplugResamplerWFIRType: Configures the windowing function of the 8-tap Sinc filter (without low-pass). The windowing functions, from 0 to 7, are: Hann, Hamming, Blackman Exact, Blackman 3-Tap 61, Blackman 3-Tap 67, Blackman-Harris, Blackman 4-Tap 74, Kaiser α=7.5


  • SuggestDifferentBuildVariants: By default, if the currently installed OpenMPT version is not optimal for the computer (e.g. using the version for Windows Vista and older on Windows 10), it will suggest to install a different build variant. This check can be disabled by setting this variable to 0.

[VST Plugins][edit]

  • BridgeAllPlugins: All plugins are forced to be used through the integrated plugin bridge.
  • EnableAutoSuspend: Enables auto-suspend for all plugins. If a plugin did not emit any sound during the last four seconds, it is suspended until new notes or sound data are fed into the plugin.
  • EnableMidiMappingInEditor: If set to 0, holding Shift while modifying a plugin parameter does not open the MIDI Mapping dialog.
  • HostProductString: Here you can enter a custom host name that is sent to VST plugins. This can be useful if a plugin claims to only run in certain hosts and refuses to run in others.
  • HostVendorString: Here you can enter the host vendor name for the same reasons as above.
  • HostVendorVersion: Here you can enter the host version as a 32-Bit integer for the same reasons as above.
  • ProjectPath: Some plugins can store extra data alongside the module file. This behaviour can be overriden so that plugins use a different path. This setting can be either a normal absolute path or use the variables %1 (module path) and %2 (module filename) to build a path relative to the module location. So if all external plugin data should be stored in the folder module.mptm-data (assuming module.mptm is the module filename) next to the module, this value should be set to %1%2-data.
    Due to restrictions posed by the VST architecture, this path must not contain characters outside the current Windows ANSI code page.