HauptwerkTM Version 3.11 Release Notice

Release notice version: 1.01

July 2008

© Crumhorn Labs Ltd 2001-2008


The most current source of information about Hauptwerk, known bugs etc., is the Crumhorn Labs website, which should also be consulted when required.


Overview

Hauptwerk version 3 supersedes versions 2 and 1, and is owned and developed by Crumhorn Labs Ltd., directed by Martin Dyde, the original author of version 1. Version 2 included many, many major new features above version 1, aimed at providing the most realistic and best-performing model of an organ possible on current computer hardware, and to provide a solid foundation for future development for years to come. Version 3 significantly extends the functionality provided in version 2, and will continue to do so in forthcoming releases.

Version 3.00 was a major release, containing various major functional and performance enhancements, and many other minor enhancements and bug fixes. Some of the highlights above version 2 included native multi-monitor/multi-touchscreen support, additional user voicing adjustments, improved memory handling, better performance from given hardware, a much more robust audio recording system, additional 14 and 20-bit audio options (saving memory over the existing 16 and 24-bit), redesigned bass/melody couplers and a new/extended easy but very powerful organ definition format suitable for amateur/hobbyist sample set producers and theatre organs. Another important focus was to provide full native support for the new Windows Vista operating systems (32 and 64-bit versions) and for Apple Mac OS X Leopard (10.5). Please note that Hauptwerk currently runs as a 32-bit application on Mac OS X, but we hope to produce 64-bit Hauptwerk for Mac OS X 10.5 in a future release as soon as possible.

Version 3.10 was a maintenance release that included some more major performance enhancements, a new native user data backup/restore mechanism, plus various other minor enhancements and many bug fixes. Probably the main highlight was a completely new, ultra-fast sample set loading mechanism.

Version 3.11 is a patch that contains mainly bug fixes for problems found in version 3.10 and earlier versions. We strongly recommend that all version 3 users install version 3.11 as soon as possible.

As well as Windows PCs, since version 2.20 Hauptwerk is also supported on Mac OS X (10.4 and above) on all Intel-based Macs and PowerPC G4/G5-based Macs. Currently there is no plug-in (Audio Unit) version of Hauptwerk on the Mac platform, but that is planned for a future release. The PC and Mac versions of the Hauptwerk software are available on separate installation media, due to their size, and can be ordered or downloaded from the Crumhorn Labs website. However, any Hauptwerk version 3 licence (and USB licence key dongle) is valid on any computer, Mac or PC; you are free to change your computer hardware as often as you like, with no registration, licence updates or cross-grade charges required for such changes.

Also planned for future version 3 releases soon: 64-bit Hauptwerk for Mac OS X 10.5, much quicker and easier initial MIDI configuration, plus plenty of other performance, usability and functional enhancements as always. We will also be aiming to provide native high-performance convolution reverb within Hauptwerk.


Compatibility, Support and Licensing Policies

All existing Hauptwerk sample sets should be compatible with this version of Hauptwerk. Version 3 is fully and seamlessly backwardly-compatible with version 2, hence all settings are preserved and all sample sets that worked in version 2 remain natively fully compatible with version 3. Sample sets in Hauptwerk version 1 format can be imported and used in this version, as they could in version 2.

Version 3 can perform better in every way than version 1, with much higher audio quality and more realism, and many more features, and version 1 is thus now considered obsolete and is no longer available or supported. If you have a licence for version 1 you must upgrade to version 3 in order to continue receiving support from us. A very affordable upgrade is available from version 1 to the lower-cost version 3 Basic Edition (previously known as the Studio Edition).

Version 3 should also out-perform version 2 on any given supported computer hardware and has significant additional functionality above version 2. We will continue to support version 2 for a maximum period of 12 months from the date you purchased a licence for it (either a new licence or an upgrade). After that you must upgrade to the current version in order to continue receiving support from us. In particular, version 2 will no longer be supported in any way after October 2008 (being 12 months after the release of version 3.00). There will be no more version 2 releases, and we reserve the right not to assist with issues that would be resolved by upgrading to the current version. In other cases we will attempt to provide reasonable assistance and, if necessary, work-arounds to supported customers.

Reasonably-priced upgrades to version 3 are available from Hauptwerk version 2 editions.

It is our policy to release new functionality in regular medium-sized enhancement releases, typically very approximately every 6 months, rather than accumulating many enhancements for very large releases every few years. Versions 2.10, 2.20 and 3.00 were medium-sized enhancement releases in line with this policy. We believe this benefits customers because they receive new functionality much earlier. However, this needs to be balanced with our need to continue financing ongoing support and development for existing customers.

We do not charge an ongoing subscription for support and continued upgrades since we feel it would be logistically difficult and expensive to administer, confusing to end-users, and might be considered unfair in cases where no enhancements were released in a given subscriptions period that were of interest to a given user. Hence from version 3 onwards we have instead adopted a policy of charging a relatively modest upgrade cost for an enhancement release approximately every 18 months. Thus some enhancement releases will be free to appropriately-licensed users, as versions 2.10 and 2.20 were to users with a licence for version 2, whilst others are chargeable, as version 3.00 is. Chargeable enhancement releases are not necessarily any larger than their free counterparts; an increment of major version simply means that some upgrade cost is involved.

Version 3.11 is a free upgrade for licensed version 3 users. Users currently on version 2 need to purchase a licence upgrade to version 3 in order to be able to use it.

It is also our intention that all future Hauptwerk versions remain fully and seamlessly backwardly-compatible with version 2.00 and above; Hauptwerk and its installer will automatically and transparently update your settings to each new version, and all existing sample sets will remain fully compatible with it, as with this version. Thus an increment of major version number does not involve any break in compatibility.

From version 3 onwards the previous Concert Edition has been renamed to the Advanced Edition and the Studio Edition to the Basic Edition. There is no loss of functionality from the Basic (previously Studio) Edition; these are simply changes of name to clarify that the Basic Edition has a subset of the functionality of the full Advanced (previously Concert) Edition, rather than being aimed at any specific type of users.


Media, Downloads, Installation and Upgrading

We very strongly recommend that you read the User Guide for Hauptwerk, which includes important prerequisites and installation instructions, and is included on the Hauptwerk CD and on-line on the Crumhorn Labs website before attempting to install or upgrade Hauptwerk. Please ensure that you follow the instructions in the relevant installation section.

In particular, please ensure that you have at least 512 MB of memory, and at least 4 GB of free disk space, otherwise Hauptwerk's installer may not function correctly. On Windows platforms, please also ensure that you have Windows Vista or Windows XP Service Pack 2, Microsoft Direct-X version 9.0 or above installed. On Mac platforms you must have OS X Leopard 10.5.4 or later or OS X Tiger 10.4.11 or later installed. Please also make sure that you have the latest drivers installed for your audio and MIDI interface(s).

Since version 2.10 a small hardware USB dongle is used to license Hauptwerk and some third-party sample sets for it.

Hauptwerk licences, licence upgrades and evaluation or update CDs or downloads can be ordered from the Crumhorn Labs on-line shop or from your re-seller. The software itself is identical in all cases, and contains the full Hauptwerk software and installer at the latest version. The installer will install Hauptwerk on the computer if Hauptwerk version 2.00 or later is not already installed on it, or upgrade your existing Hauptwerk installation to the latest version if version 2.00 or later is already installed. No settings will be lost when upgrading and no sample set sets need to be re-installed.

You can obtain the current Hauptwerk software either as a free download or on CD at a minimal cost. Both are available via our website. Whether the software functions as licensed software or as an evaluation is determined by the presence or absence of the USB licence key dongle, and whether it contains a valid licence for the version of the software you have installed.

If you do not have a licence for Hauptwerk version 3 the software will function as an evaluation copy. If you had an evaluation copy of version 2 installed then the installer will upgrade it to an evaluation copy of version 3.

If you do not have a licence for Hauptwerk version 2 or 3 and you buy a licence for version 3 then you will be sent the necessary USB licence key dongle as well as a copy of the software CD containing the latest version of Hauptwerk. You just need to make sure that you have the latest version of Hauptwerk installed then attach the licence key dongle to the computer.

If you currently have a licence for Hauptwerk version 2 then you need to purchase an upgrade to version 3 in order to be able to use this version as licensed software. Once you have purchased an upgrade we, or your re-seller, will contact you to arrange to update your existing USB licence key dongle remotely to enable version 3 on it. This is a simple process that requires exchanging two small files by email, and full instructions will be sent to you following your order. If your Hauptwerk computer does not have an Internet connection you can transfer the files via a writeable CD, floppy disk, USB memory stick or similar.

IMPORTANT: If your licence is for version 2 and you do not update your licence for the current version before installing, Hauptwerk will revert to running in evaluation mode but allow you to apply the licence upgrade at any time to restore full licensed functionality. A computer can only have one version of Hauptwerk installed on it at any one time. Once a new version has been installed it is not possible to revert to a previous version without un-installing Hauptwerk completely (selecting the option to remove all files) then re-installing the older version, which would wipe any existing settings. Hence there is no easy way to revert to a licensed installation once version 3 has been installed other than by purchasing a licence upgrade.

If you have a licence for the version 3 Basic Edition of Hauptwerk and wish to evaluate the additional features of the Advanced Edition with a view to upgrading your licence, simply disconnect your licence key dongle temporarily (although never connect or disconnect it whilst Hauptwerk is actually running). Hauptwerk will then start in evaluation mode, allowing all of the features of the Advanced Edition to be evaluated (except for the wind supply model). No settings will be lost in the process, and you simply need to reconnect your licence key dongle to revert it to the licensed Basic Edition.


Testing

This release has primarily been developed and tested on the following systems: Additional beta testing has been carried out for versions 2.00, 2.10, 2.20, 3.00 and 3.10 by third parties on many other systems, old and new.


Changes to Hauptwerk

Please note that enhancement and bug numbers refer to the corresponding pages on the website. All Hauptwerk releases since version 2.00 are cumulative, thus each includes all changes from previous Hauptwerk versions.


Changes in version 3.11

Version 3.11 includes mainly bug-fixes and work-arounds for problems found with versions 2.00 to 3.10. We strongly recommend that all version 3 users install this release. The following are included:


ENHANCEMENT HW-000868: Option to disable high-speed sample set loading mechanism renamed.

Hauptwerk version 3.10 and later include a high-speed multi-threaded sample set loading mechanism (see version 3.10 ENHANCEMENT HW-000676 for details). An option on the 'General settings | General options' screen exists to disable it (which might save some memory at the expense of loading times, depending on the sample set). The option to disable the mechanism was previously named 'Disable multi-CPU/core sample set loading speed optimisations?'. However, that name was a little misleading because a cut-down version of the loading mechanism specially-optimised for single-core CPUs is also included (and selected automatically depending on the number of CPU cores present in the computer). Hence the option would have an effect even on older single-core computers. The option has been renamed to 'Disable sample set loading acceleration?' for clarity. There is no functional change.


ENHANCEMENT HW-000862: Diagnostics: current size of Windows page file logged on application start-up (Windows only).

This is to help in diagnosing performance problems.


ENHANCEMENT HW-000864: Diagnostics: new menu function to extract/view contents of diagnostic files/backups.

The new 'File | View/extract contents of a backup or diagnostic file' menu function is provided mainly for use by support providers and sample set producers to allow them to extract and view the contents of diagnostic files or backups that their users have sent to them to help diagnose problems. It would not normally be used by end-users. However, there might be occasions in which advanced computer users might wish to examine the contents of a backup they have previously made without restoring it. The function simply extracts all of the files stored within a selected diagnostic file or backup into sub-folders of the folder containing the selected file.


ENHANCEMENT HW-000874: Diagnostics: CPU speed and Mac model shown in log (Mac OS X only).

This is to help your support provider diagnose performance issues. Previously the CPU speed and model were only logged on Windows. The Mac model, revision and CPU speed is now also logged on Apple Macs.


BUG HW-000866: Audio distortion or crash was possible if notes sustained after first time (only) that some Sonus Paradisi sample sets had been loaded.

The first time that Hauptwerk loads a sample set (or after Hauptwerk has been upgraded, or if you change any audio routing settings), Hauptwerk will re-generate its sample set data cache for that sample set. Subsequent times that you load the sample set it will instead load from the cached version (which is much faster). After regenerating a sample set data cache it had been found that sustaining long notes could cause sudden and severe audio distortion and/or a crash with certain recent Sonus Paradisi sample sets, notably the Sonus Paradisi Forcalquier, Prague Baroque and Zwolle sample sets. Specifically, the problem could occur if the default release sample for a pipe was stored in a separate file to the default attack sample. (The bug has existed since Hauptwerk version 2.00 but had only become apparent recently since until recently no sample sets had been created that contained samples formatted in that specific way. The problem was also more likely to be noticed in version 3.10 because memory is reused more aggressively internally due to the loading speed improvements in version 3.10 and above.)


BUG HW-000867: Errors 4669 or 4664 could be incorrectly reported when loading certain sample sets.

Error 4669 ("... this sample object is configured to read the pitch from the sample file, but the sampler chunk in the file does not contain a valid pitch.") or 4664 ("... the specified loop range does not exist within the file.") might have been reported incorrectly when loading certain sample sets. The problem had mainly been reported on 32-bit Windows platforms with the Sonus Paradisi Litomysl Dry sample set, the Sygsoft Boezemkerk sample set and some user-created organ definitions generated with the Oberwerk software that use samples that are not part of Oberwerk's native sample set. It was possible but much less likely to occur on 64-bit Windows or Mac OS X or with other sample sets. (The bug had existed since Hauptwerk version 2.10 but was more likely to be seen in version 3.10 because memory is reused more aggressively internally due to the loading speed improvements in version 3.10 and above.)


BUG HW-000871: Error 4403 occasionally incorrectly reported when loading sample sets on single-core computers.

The first time that Hauptwerk loads a sample set (or after Hauptwerk has been upgraded, or if you change any audio routing settings), Hauptwerk will re-generate its sample set data cache for that sample set. Subsequent times that you load the sample set it will instead load from the cached version (which is much faster). Error 4403 ("Could not load an image file from the sample set data cache. Please try re-loading the sample set so that the cache is regenerated (which might be slow).") could occasionally and incorrectly be reported when loading sample sets from their caches on single-core computers (only) unless the high-speed sample set loading mechanism was disabled. This has now been fixed so it is safe to enable the high-speed loading mechanism again if you previously disabled it as a work-around for this problem.


BUG HW-000865: Documentation: installation/upgrade instructions were slightly ambiguous regarding Windows page file recommendations (Windows only).

It is very strongly recommended that the Windows page file should be left set specifically to 'system managed size' (which is the default for a new Windows installation). This has been clarified in the installation/upgrade instructions in the user guide. An incorrect page file size can cause severe operating system, driver or application stability or performance issues, especially with 64-bit Windows, even if the amount of memory being used by Hauptwerk is less than the amount of free physical memory (as it should be).


BUG HW-000863: Installer: desktop icons sometimes didn't work properly after upgrading Hauptwerk on OS X Tiger until computer rebooted (Mac OS X only).

The desktop icons are sometimes not refreshed properly until OS X 10.4 ('Tiger') has been rebooted after upgrading Hauptwerk via the installer. The upgrade instructions now specifically recommend rebooting after upgrading on OS X Tiger (only). This should not be necessary on OS X 10.5 ('Leopard').


BUG HW-000872: Tuning randomisation model was not being bypassed in 'original organ pitch' mode.

Hauptwerk's tuning randomisation model is designed to model the slight drift in tuning between pipes that occurs naturally in real pipe organs, imparting movement to the sound. However, the model should only apply when a temperament other than 'original organ tuning' is selected. Previously it was also incorrectly being applied in 'original organ tuning' mode.


BUG HW-000869: Documentation: some stop codes and custom coupler codes were incorrect in CODM user guide.

A stop code range was incorrect for one division. Some of the custom coupler codes were also listed incorrectly.



Changes in version 3.10

Version 3.10 was a maintenance release which included some major performance enhancements, a new native user data backup/restore mechanism, plus various other minor enhancements and many bug fixes (some of them critical). The following are included:


ENHANCEMENT HW-000676: Performance: new ultra-fast loading mechanism loads sample sets in a fraction of the time.

Hauptwerk's organ loading mechanism has been massively optimised, redesigned and extended to allow a sample set to load in a fraction of the time that was possible with any previous version, and to take full advantage of multi-core computers and RAID arrays (RAID 1 or RAID 5 are probably best and safest). For example, with all default rank/memory options the St. Anne's, Moseley sample set now loads in only 8.9 seconds in total on our main testing PC, whereas Hauptwerk version 2.21 previously took around 40 seconds. Similarly (with all default rank/memory options) the Milan Digital Audio Cappel Schnitger sample set now loads in only 18.0 seconds, whereas it took about 90 seconds with Hauptwerk version 2.21.

The new mechanism attempts to tune itself automatically for the number of CPU cores and the amount of free memory available. Fastest possible results will be achieved with computers that have four CPU cores (or more), but loading times should still be very significantly reduced even with older single-core computers. During the loading process, the mechanism needs to use some memory for buffering to try to get best possible performance from the disk drive(s). The mechanism is very carefully designed to minimise the amount of memory it needs at each point in time, and in many cases no more memory overall will be needed when loading a sample set. However, if minimising memory usage in all circumstances is more important to you than minimising loading times then you can disable the new mechanism completely using the new 'Disable multi-CPU/core sample set loading speed optimisations?' (renamed to 'Disable sample set loading acceleration?' in version 3.11) option on the 'General settings | General options' screen. Even with the mechanism disabled sample sets will still load faster than in previous versions (because of many other speed optimisations), but not as fast as with the mechanism enabled.

Extensive performance and diagnostic information relating to the loading of each sample sets is written to the log file (Help | View recent error/activity log).

As before, the first time that you load a sample set, or if you change its rank/memory options, the sample set will still be slow to load because Hauptwerk will need to regenerate its cached version of the sample set data. However, subsequent loads should then be extremely fast.

Information for sample set developers: Image files are now stored in the sample set data caches for speed. When working on the virtual console graphics for a sample set you can use the new 'Force source images to be loaded, bypassing sample set data cache' option via 'Design tools | Load organ (with design options)' to bypass this behaviour, avoiding the need for the sample set data caches to be regenerated each time you want to test a change to an image file. Organ definition (and other XML) files are also now automatically 'compacted' by stripping out any blank attributes or attributes that have their default values, thus very significantly reducing XML parsing times. If you wish to edit the XML files in a text or XML editor, you can turn off auto-compacting using the three new settings on the 'General settings | General options | Design tools' screen tab (options previously on that tab have been moved to a new 'Database' tab). To force an organ definition file to be regenerated using the current settings, a new option 'Force organ definition to be regenerated' setting exists on the 'Design tools | Load organ (with design options)' screen. The organ definition files have a new attribute: _General.Control_FileIsCompacted_AlwaysSetThisToNIfEditingManually which Hauptwerk uses to determine whether it needs to regenerate the file in auto-compacted form. Sample set developers should always set the attribute to N whenever an organ definition file is changed in any way, so that Hauptwerk will then auto-compact it properly.


ENHANCEMENT HW-000695: Performance: combinations files now load almost instantaneously.

The combination file loading process has been extensively optimised and combination files are now automatically 'compacted' when they are saved or first accessed to allow the load almost instantaneously in most cases. (Blank/default attributes are stripped from the XML files to reduce XML parsing times massively. A new option on the 'General settings | General options | Design tools' screen tab allows this behaviour to be disabled in cases where sample set developers might want to extract data from the XML files.)


ENHANCEMENT HW-000851: Performance: CPU load from tremulant model massively reduced.

It has been possible to reduce the processor overhead incurred by the tremulant model very significantly. This should be especially beneficial to the recent very large theatre organ sample sets, where a huge number of tremulant waveforms often need to run simultaneously, for which even recent computers could struggle. For example, the load on the CPU core used by the tremulant model has been reduced by 30-40 percent on our main test PC when using the KeyMedia 3-35 theatre organ with all tremulants running.


ENHANCEMENT HW-000418: New native functionality to backup/restore user data and/or to import between computers.

Native functionality is now included in Hauptwerk to backup and restore some or all user data (settings, combination files, Custom Organ Design Module organ definitions, voicing, etc.). Two new functions are available on the menu for this purpose: 'File | Backup your current Hauptwerk settings and personal data' and 'File | Restore your current Hauptwerk settings or personal data from a backup'. IMPORTANT: please make sure you use the backup function periodically, and especially once you have Hauptwerk configured as you want it, so that you have a means to recover your settings in case your computer ever needs to be reinstalled (for example following a hard-drive failure or a virus). The backup function always backs up all user data into a single ZIPped archive file, which can be written to CD/DVD or emailed easily. Please make sure you store that file securely (not on your computer's hard-drive). For example, write it to DVD/CD. The restore function uses a wizard with Simple and Advanced modes. The Simple mode restores all user data from the backup, whereas the Advanced mode also allows types of data to be restored separately. As well as making it simple to recover your data, the backup/restore functionality can also be used to import all user data very easily from one computer or configuration to another: just create a backup from the original computer and then restore it on the new computer or configuration. Hauptwerk performs any necessary computer/configuration or platform-specific migrations automatically, so that it is simply necessary to select the desired audio/MIDI drivers/ports after importing on the new computer, and then to adjust any performance settings appropriately for the new hardware. (Please note that although Crumhorn Labs makes every effort to ensure that Hauptwerk's backup/restore functionality works reliably, we would always recommend also making your own independent backups of your data for maximum possible safety.)


ENHANCEMENT HW-000731: Performance: component installer no longer causes slow sample set cache regeneration if just installing or un-installing components.

Previously all installed sample sets would have their sample set data caches regenerated (making them very slow to load the next time they were used) whenever the component installer was run. Now the component installer only causes all caches to be regenerated if any sample set data packages are upgraded; not when the only actions are to install or un-install components (the most common cases). This significantly reduces the number of times that sample set caches need to be regenerated overall.


ENHANCEMENT HW-000795: Performance: log file now automatically archived periodically to prevent application becoming sluggish.

Previously there was no native functionality within Hauptwerk to trim or archive the log file data, so the log file could become very large over time unless maintained manually. If the log file had become extremely large then it would be difficult and slow to view its contents and the whole application could become sluggish since writing a new entry to the log file could be slow. For example, this could make sample sets unnecessarily slow to load or the audio/MIDI systems slow to start or stop. Hauptwerk now checks the size of the log file on start-up and automatically moves its contents to an 'archived' log file if it has exceeded a certain size. This ensures that the main log file remains small, easy to view, and the application remains fast and responsive. A new menu function 'Help | View archived error/activity log' allows access to the archived log data (whose contents are kept and added to indefinitely) in case that should be necessary for diagnostic purposes.


ENHANCEMENT HW-000818: Performance: sample set data caches no longer regenerated (slow) if audio devices change.

Previously, adding or removing an audio interface/driver could cause the sample set data caches to be regenerated, causing a sample set to load slowly the next time it was used. This was not necessary.


ENHANCEMENT HW-000819: Performance: all sample set data caches no longer regenerated (slow) if Hauptwerk v1 sample set imported.

Previously, importing a Hauptwerk v1 set would cause the sample set data caches to be regenerated for all sample sets, causing each sample set to load slowly the next time it was used. The import mechanism is now much more intelligent, and only marks the sample set data cache for regeneration for the specific sample set being (re)imported.


ENHANCEMENT HW-000825: Performance: ultra-fast sample set loading now also possible in evaluation version.

Previously, when Hauptwerk was running in evaluation mode (when no USB licence key dongle was attached), the sample set data caching mechanism was disabled so sample sets would always be slow to load. Now the data caching mechanism also works in evaluation mode, allowing sample sets to load extremely quickly. (Copy-protected sample sets licensed via the dongle still cannot be used in evaluation mode.)


ENHANCEMENT HW-000841: Performance: sample caches no longer regenerated (slow) after running Hauptwerk installer unless absolutely necessary.

Previously, whenever Hauptwerk's installer had been run (including to upgrade or reinstall/repair Hauptwerk), the installer would always force all sample set data caches to be regenerated, causing each sample set to load slowly the next time it was used. Now Hauptwerk has a more intelligent mechanism that only regenerates a given sample set data cache if it was created with an earlier version of Hauptwerk and if the current version requires a different cache format. Please note that the cache format has changed for version 3.10, so all sample set data caches do still need to be regenerated after installing version 3.10.


ENHANCEMENT HW-000268: Performance: Intel HyperThreading processors automatically detected and audio engine tuned accordingly (Windows only).

Previously, if a PC's processor had HyperThreading support, poor performance would be obtained unless HyperThreading was disabled in the PC's BIOS. Now Hauptwerk automatically detects HyperThreading and tunes its audio engine appropriately for best performance, without needing to disable HyperThreading in the BIOS. In fact, for processors that support HyperThreading, slightly higher performance might now be obtained if HyperThreading is left enabled in the BIOS (the default).


ENHANCEMENT HW-000419: Diagnostics: new native functionality to create diagnostic ZIP file for support provider.

A new menu function is provided to assist your support provider if you need to contact them for assistance: 'File | Create a diagnostic file to send to your support provider'. The function stores copies of your Hauptwerk settings, logs, and other key files into a single ZIPped archive file, which can be emailed easily. IMPORTANT: please always use the function and attach the resulting file to an email if you need to contact your support provider. Most issues can be answered very quickly if your support provider has the diagnostic file. If you have an issue relating to a specific sample set, please create the diagnostic file whilst that sample set is loaded. Hauptwerk will then include the settings for the sample set in the diagnostic file.


ENHANCEMENT HW-000592: Settings auto-saved periodically.

Hauptwerk always saves it settings on exit and when you un-load an organ. It now also auto-saves periodically to guard against computer or driver crashes. The mechanism should ensure that any outstanding settings changes are saved before anything is attempted that might risk a computer or driver crash (e.g. starting/stopping a driver or loading a large amount of data into memory). Note that, to avoid the risk of audio glitches, it does not auto-save whilst an organ is actively producing audio output - see also enhancement HW-000256 for a new menu function to force voicing changes to be saved immediately.


ENHANCEMENT HW-000768: Performance: application start-up time and basic memory footprint reduced.

Various components are now built into the Hauptwerk executable, rather than being loaded separately as files on start-up. This has allowed the application start-up time to be reduced and has also slightly reduced the overall memory footprint. Other optimisations have also been made to reduce start-up time.


ENHANCEMENT HW-000853: Performance: warns when operating system running low on free memory.

By default Hauptwerk version 3.00 locked its sample data into physical memory on Windows in order to guard against audio glitches that could otherwise be caused by data being cached to the operating system's disk page file. (Except on OS X Tiger 10.4, on which it is essential for reasonable performance), Hauptwerk version 3.10 no longer locks its sample data into physical memory because of relatively widespread and severe compatibility and stability issues found with some drivers and other applications as a result (see BUG HW-000692 and BUG HW-000691) on Windows platforms. Instead, to try to minimise the risk of the operating system paging its sample data to disk, Hauptwerk monitors the amount of memory that the operating system reports as free and, by default, warns when that memory is becoming very low. It is possible to ignore the warning, although there might then be a risk of audio glitches or other performance problems (or even stability issues if the addressable memory is exceeded with 32-bit versions, or on OS X Tiger 10.4, or if the operating system page file is disabled on Windows). The new 'Action if operating system reports low memory' setting on the 'General settings | General options' screen allows the behaviour to be changed. The setting applies on both Windows and Mac OS X. Note that the warning is designed to be reported slightly BEFORE all free memory is exhausted, so it's possible that a sample set that just fitted within the available memory under previous versions of Hauptwerk will now give the warning. You may chose to ignore the warning, but please think carefully before disabling it.


ENHANCEMENT HW-000023: Sample set developers: semi-transparent PNG files supported, avoiding the need for separate 1-bit mask images.

Hauptwerk natively handles PNG files with transparency (including semi-transparency), so it isn't necessary to create and specify separate 1-bit mask images via ImageSet.TransparencyMaskBitmapFilename. Set ImageSet.Transparent to N if using PNG files in the ImageSetElement table that have built-in transparency. Note that backgrounds are still not redrawn when a virtual control's state changes (for performance reasons), which must still be planned for when designing a virtual console display.


ENHANCEMENT HW-000256: New menu function to force settings to be saved.

Hauptwerk always saves it settings on exit and when you un-load an organ. In version 3.10 and later it also auto-saves periodically (see enhancement HW-000592) to guard against computer or driver crashes. However, to avoid the risk of audio glitches, it does not auto-save whilst an organ is actively producing audio output. If you are making a lot of changes to an organ's voicing (Advanced Edition only) and want to force the settings to be saved straight away (and are not worried about the possibility of an audio glitch) you can use the new 'File | Save any unsaved settings changes' menu function. There should be no need to use this function in any other circumstances, since Hauptwerk's auto-save mechanism should ensure that any outstanding settings changes are saved before anything is attempted that might risk a computer or driver crash (e.g. starting/stopping a driver or loading a large amount of data into memory).


ENHANCEMENT HW-000741: Now possible to control Hauptwerk remotely via Windows Remote Desktop (Windows only).

Some users wish to use Window Remote Desktop to control 'headless' computers installed inside consoles. Previously Hauptwerk would fail to find the licence key dongle and start in evaluation mode if launched via Remote Desktop. It now allows use of Remote Desktop with the dongle. Please note that you must also have the Remote Desktop connection property: 'Local Resources | Remote computer sound' set to 'Leave at remote computer', otherwise MIDI and audio drivers won't be visible to Hauptwerk.


ENHANCEMENT HW-000757: Documentation: user guide now also covers uninstalling and moving installation between hard-drives/computers.

Previously these were only covered in FAQs on the website.


ENHANCEMENT HW-000758: Documentation: user guide covers backing up data and routine maintenance tasks.

See also enhancement HW-000418 for the new native backup and restore functionality.


ENHANCEMENT HW-000765: Diagnostics: installation locations now shown in log.

This is especially useful in cases where users have had multiple previous partly-removed installations and are unsure which folders Hauptwerk is currently using.


ENHANCEMENT HW-000767: Configuration and installation locations determined automatically from location or name of Hauptwerk executable.

Previously the working directory of the short-cut/alias used to launch Hauptwerk was used. However, this sometimes caused problems in cases where users had created their own short-cuts/aliases. Now the configuration is determined from the path to the executable and the search path used to find the FileLocations.Hauptwerk.xml file is constructed using rules based on the configuration and allowed installation locations (corresponding to the rules used within the installer).


ENHANCEMENT HW-000772: Diagnostics: unique organ IDs logged.

When loading an organ its unique ID is now written to the log file to assist in providing support involving third-party sample sets.


ENHANCEMENT HW-000773: Diagnostics: key audio routing and performance settings logged when loading an organ.

This is to help in diagnosing performance problems.


ENHANCEMENT HW-000775: Diagnostics: component installer source paths and file sizes logged.

This is to help diagnose problems that relate to CD/DVD drives or file systems that have problems with large files (such as Windows FAT32).


ENHANCEMENT HW-000776: Diagnostics: all present audio and MIDI drivers/ports logged on start-up.

This is to help your support provider determine whether the most appropriate drivers are selected for Hauptwerk to use.


ENHANCEMENT HW-000779: Diagnostics: CPU manufacturer, stepping and speed logged (Windows only).

This is to help your support provider diagnose performance issues.


ENHANCEMENT HW-000787: Component installer: tries to allow very large sample sets to install from DVD when Windows FAT32 file system used (Windows only).

The (largely obsolete) Windows FAT32 file system does not work properly with very large files. Previously this could prevent Hauptwerk's component installer working if trying to install a very large sample set onto a FAT32 hard-disk since Hauptwerk always copied the file to the hard-disk first to verify it before extracting. Now, if installing a very large file from DVD, if the file cannot be copied reliably to hard-disk because the hard-disk uses the FAT32 file system (or for any other reason), the component installer attempts to extract directly from the DVD. This allows some sample sets to install on FAT32 that would not otherwise be able to do so. However, please note that we still strongly recommend using the current NTFS file system in preference to the older FAT32 file system, since FAT32 might still be insufficient for handling sample set caches for extremely large sample sets.


ENHANCEMENT HW-000790: Options to disable error message output and to beep removed.

The option to disable display of error messages has been removed because it caused problems in cases where users had mistakenly disabled it and were then unaware of genuine critical error conditions. The option was originally provided to allow for 'headless' operation (with no monitor attached to the computer), on the assumption that MIDI error indicators would always be used instead. However, handling of all messages that could previously have been reported in non-critical situations has now been redesigned so that a message will only ever be shown in a genuinely critical situation that requires human interaction with the computer. The option to beep on error has also been removed since it could cause audio driver crashes in cases where the same audio interface was being used for system beeps as for Hauptwerk output.


ENHANCEMENT HW-000799: Evaluation mode welcome message clarified.

The welcome message displayed when Hauptwerk is launched in evaluation mode now clarifies that evaluation mode has the full functionality of the Advanced Edition (as opposed to the Basic Edition) with the listed exceptions.


ENHANCEMENT HW-000816: Performance: settings archiving turned off during migration.

In Hauptwerk versions 2.00 to 2.11 the 'Keep archived configuration settings backups' setting on the 'General settings | General options' screen was on by default. In our experience most users who have upgraded from those versions still have the setting turned on. However, in versions 2.20 and later Hauptwerk automatically keeps a 'last known good' primary backup, and recovers from it transparently if needed, providing a robust mechanism to guard against data loss in the event of a crash or power failure, hence there is no need for most users still to have settings archiving enabled. Settings archiving significantly degrades performance and version 3.10 also includes new native data backup/restore functionality (see enhancement HW-000418), so version 3.10 now always turns settings archiving off when it is first run (only). IMPORTANT: if you genuinely still want to have settings archiving enabled, then please just turn it back on. Probably the only reason to have it enabled might be if you are making a lot of voicing changes and want to be able to restore to any given point in time, but don't want to use the native backup functionality for the purpose.


ENHANCEMENT HW-000844: Error handler now only displays main (first) message when reporting an error.

When an error occurs, a primary message is always displayed. Other errors may arise as a result of that error condition, and might give further relevant diagnostic details. Previously those consequential messages were displayed on the screen in the same window (identified as consequential messages) when the primary error was reported. Now only the primary message is displayed (any consequential messages are still logged) to avoid the user being flooded with too much (possibly confusing) information.


ENHANCEMENT HW-000860: LoopBe 64-bit and 32-bit virtual MIDI cable software fully supported (Windows only).

LoopBe from Nerds.de is a 'virtual MIDI cable' that allows MIDI to be routed between a MIDI sequencer and Hauptwerk running on the same PC, as the popular MIDI Yoke does. However, at the time of writing and to our knowledge, LoopBe is the only virtual MIDI cable software that works with native 64-bit software. LoopBe is now fully supported with Hauptwerk.


BUG HW-000692: Freezes, crashes, very slow loading or no sound under 64-bit Windows with certain drivers when 4 GB or more of memory installed or if Windows page file disabled (Windows only).

By default Hauptwerk version 3.00 locked its sample data into physical memory on Windows in order to guard against audio glitches that could otherwise be caused by data being cached to the operating system's disk page file. However, some 64-bit drivers seem not to be fully 64-bit throughout, but instead to use some 32-bit components internally (most notably E-MU's drivers, although some motherboard, graphics card or other drivers might work in that way), which could cause Windows or Hauptwerk to freeze, crash, run extremely slowly, produce no audio output, or cause other strange effects if 4 GB or more of memory was reserved/locked by Hauptwerk, or if Windows page' file had been disabled. We believe that these problems could occur because those drivers with 32-bit components only work properly in certain portions of the memory (the 32-bit address space) and could cause severe malfunctions if another application such as Hauptwerk had reserved/locked most of that memory for its use or if Windows page file was disabled, preventing any application memory being swapped out to disk from that portion of the memory if a 32-bit driver component needed it.

To avoid this (relatively widespread and severe) issue (and also because of compatibility issues with some other applications - see bug HW-000691), Hauptwerk version 3.10 and later no longer locks its sample data into physical memory on Windows platforms. Please see ENHANCEMENT HW-000853 for more details. Also because of these driver issues we strongly recommend not attempting to disable Windows' page file, especially if 4 GB or more of physical memory is installed, otherwise Hauptwerk, Windows or other applications might behave strangely, depending on the drivers and other software installed on the computer.


BUG HW-000693: Occasional errors writing to log file or crashes/freezes when loading/activating organ with many audio output channels (Mac OS X only).

On Apple Macs, if multi-channel audio output was configured and the number of audio channels multiplied by the number of CPU cores exceeded a certain value it was possible that error 'ERR-0604: Log file ...Log.Hauptwerk.xml could not be opened.' might sometimes be reported, or Hauptwerk might crash or freeze when loading an organ or activating the audio/MIDI interfaces. The problem occurred because all of OS X's internal file handles could become used up due to a bug in the multi-platform library Hauptwerk uses. This has now been worked around.


BUG HW-000694: Performance: some sample sets were slower to load in Hauptwerk v3.00 than in v2 when memory compression was enabled.

This issue has been fixed and there should now be very little difference in loading times regardless of whether compression memory is enabled. The new loading mechanism (HW-000676) also means that sample sets should load in a fraction of the time required by any previous Hauptwerk version.


BUG HW-000740: VSTi: VST hosts could freeze on some PCs when scanning unlicensed (evaluation) Hauptwerk VST plug-in or on low-spec computers (Windows only).

With some computers and VST hosts, displaying a message box on start-up could cause the VST host to freeze when scanning for installed VST plug-ins. Such a message would typically be displayed if Hauptwerk was running in evaluation mode (if no licence key dongle was attached) or if it was the first time that it had been run on a low-specification PC. Hauptwerk now avoids displaying any warning messages on start-up for this reason, but still logs the relevant information to its log file.


BUG HW-000747: OS X Leopard sometimes crashed (kernel panic) when starting firewire audio drivers (Mac OS X only).

This was due to a bug in OS X Leopard versions 10.5(.0) to 10.5.2 and was fixed by Apple in OS X Leopard 10.5.3. Since this is a serious bug in earlier versions of OS X that directly affects Hauptwerk, it is listed here for information. To avoid this problem we have made 10.5.3 the minimum required version of OS X Leopard (OS X 10.4 Tiger is still supported) and very strongly recommend applying all current OS X updates if you are using Leopard.


BUG HW-000689: Distortion/crackle in recorded output with some DirectSound drivers (Windows only).

When using Hauptwerk's built-in audio recording system with some Windows DirectSound drivers (notably Creative sound cards), distortion/crackle could occur in the recorded output.


BUG HW-000691: 'Out of memory' errors when Nero CD/DVD writer running at the same time as Hauptwerk (Windows only).

The third-party Nero packet CD/DVD-writing software reserves large amounts of the computer's physical memory when running. Hauptwerk version 3.00 also reserved/locked its sample memory to prevent potential audio glitches (caused by Windows moving its sample date temporarily to its disk 'page file'). If Nero software (or another application that behaved similarly, although no others are known presently) was running at the same time as Hauptwerk then Hauptwerk might be able to use less memory than expected because some of the computer's memory would already have been reserved/locked by Nero. To avoid this issue (and also because of significant compatibility issues with certain drivers - see BUG HW-000692), Hauptwerk version 3.10 and later no longer locks or reserves its memory. Please see BUG HW-000692 and ENHANCEMENT HW-000853 for more details.


BUG HW-000717: Cirumstances existed in which loading an organ or activating audio/MIDI were possible even if audio settings were invalid, causing crashes or other strange behaviour.

This mainly affected OS X, but was also possible in one particular situation on Windows. The main menu items (such as those to load an organ or activate audio/MIDI) now correctly remain disabled until the user's audio configuration settings are valid.


BUG HW-000723: Recent versions of Windows Media Player could crash if opening recorded output from Hauptwerk.

This only occurred with Windows Media Player and only if the recording resolution was set to 32-bit in Hauptwerk. It was due to a difference in the way that recent versions of Media Player interpret some data in 32-bit audio files. This has now been worked around.


BUG HW-000724: MIDI feedback could still cause freeze if using only virtual MIDI cable (e.g. MIDI Yoke) ports (Advanced Edition only).

Hauptwerk version 3.00 and above has a built-in MIDI feedback detection mechanism. However, a freeze could still sometimes occur via virtual MIDI cable software before Hauptwerk's MIDI feedback detection mechanism had had a chance to test for feedback. Hauptwerk now waits 100 milliseconds for the feedback detection mechanism to complete before allowing any other MIDI output to be sent.


BUG HW-000725: Performance: 'playing' polyphony could be slightly lower than with Hauptwerk v2 even though static polyphony was higher on PowerPC G4/G5 Macs (Mac OS X only).

It was found that the polyphony limit might need to be set slightly lower under version 3.00 than under version 2.21 on PowerPC G4/G5 Macs (only), even though the static polyphony in version 3.00 was higher. This has now been addressed.


BUG HW-000806: Key action noises were not working properly with some sample sets in v3.00.

In Hauptwerk version 3.00 the key release action noises would sound too quietly (or be completely inaudible) with some sample sets because automatic release sample amplitude modulation was being applied when it should not have been.


BUG HW-000809: Component installer: might not be able to upgrade or uninstall sample set if hidden/system files present.

If a user had extracted a sample set manually (using WinRAR or similar), rather than installing it via Hauptwerk's native component installer, then any operating system hidden/system/read-only files that were present in the component package file would also have been extracted (such as Windows Thumbs.db, Desktop.ini or Mac OS X .DS_Store files). If the sample set had been installed with Hauptwerk's component installer then those files would intentionally and correctly have been skipped. Using Windows Explorer or OS X's Finder to browse a sample set's folder structure subsequently could also create such files. If such files were present then attempting to uninstall, upgrade or reinstall the sample set using Hauptwerk's component installer could fail. The component installer has now been made resilient to the presence of such files for all operations.


BUG HW-000711: A stand-by or recently-used menu entry that no longer existed would cause an error to be reported.

Now Hauptwerk automatically and silently removes an entry from the stand-by or most recently-used lists on the menus if you select it but the component it refers to is no longer present (for example if a combination file has been deleted or an organ un-installed).


BUG HW-000734: Component installer didn't give re-install/upgrade options if incorrect drive-letter/folder-name case was entered for installation locations when Hauptwerk was originally installed.

When installing Hauptwerk for the first time there are two installation type options: 'Simple' and 'Custom'. The Custom option allows you to enter/select the folders into which Hauptwerk is to be installed. When you originally installed Hauptwerk, if you selected the Custom option and you typed the folder names manually (rather than using the folder browse button) and you entered the folder-names or drive letter (Windows PCs) using the wrong case (for example, if you entered a lowercase drive letter), then Hauptwerk's component installer would not allow components (sample sets, organs, etc.) that had already been installed to be upgraded or re-installed. In such cases only 'Install' or '<none>' would be listed as possible actions even if a component was already installed. The component installer now considers installation paths to be case-insensitive.


BUG HW-000759: Transposer could still sometimes leave notes stuck if changing transposition whilst notes held.

Bug fix HW-000491 was included in Hauptwerk v3.00 to allow transposition to be changed whilst notes were held. However, that fix didn't always work reliably. It has now been fixed fully.


BUG HW-000840: Some keys connected incorrectly with Sygsoft Eenum and Krewerd sample sets.

The Sygsoft Eenum and Krewerd sample sets internally have key and division nodes specified both manually and for generation for the same nodes. Although that would not normally be beneficial, Hauptwerk version 2 was tolerant to the situation, whereas version 3.00 gave priority to the generated nodes, meaning that some of the bottom-octave keys in the 'original' views in those sample sets did not sound. Version 3.10 has been changed so that any manually-specified nodes are given preference in cases where a given node/key is specified twice within a sample set.


BUG HW-000850: Component installer: if loading organ, cancelling then uninstalling component installer could give 'cannot remove folder' error.

This could happen because the working directory could still be set to the sample set's package folder.


BUG HW-000246: The 'Organ settings | General options' option to disable voicing did nothing.

It now correctly bypasses any user voicing changes.


BUG HW-000410: Global organ start-up mode was reset if user aborted organ load.

Previously, if an error occurred when loading an organ that was set to load automatically on Hauptwerk start, the 'General settings | General options | Organ loading mode when Hauptwerk starts' setting was reset to its default of 'Normal (inactive, no organ loaded)' to ensure that an error loading an organ couldn't lead to a situation in which it was impossible to open Hauptwerk. However, if the user cancelled the load that would also reset the setting. The setting is now only reset if a genuine error occurs.


BUG HW-000686: Documentation: some custom coupler codes were incorrect in CODM user guide.

Version 1.05 of the Custom Organ Design Module user guide listed some incorrect values for the custom coupler codes.


BUG HW-000704: Log file incorrectly reported OS X version as above 10.5 when using OS X Tiger 10.4.9 (Mac OS X only).

All currently-available versions (up to 10.5.3 and 10.4.11) are now reportedly correctly in the log file.


BUG HW-000709: Documentation: minor error in default MIDI settings descriptions.

In the user guide the 'Couplers: div. 3 (Swell) to div. 4 (Choir) ...' entries had incorrect descriptions on the 'MIDI organ consoles' and 'MIDI input' pages.


BUG HW-000713: CODM: example organ 2 Swell reeds not coupled to Great or Pedal.

The coupler behaviour has now been corrected in the Custom Organ Design Module 'example organ 2'.


BUG HW-000714: CODM: Ped Bass coupler was of incorrect type in example St. Anne's organ definitions.

The bass coupler did not behave correctly in the Custom Organ Design Module St. Anne's example organs.


BUG HW-000735: If organ loading was cancelled at first stage then menu functions could do nothing for a few seconds.

If the 'Cancel' button was clicked whilst a sample set was at the first stage of loading (reading the organ definition file), then the progress indicator window would close so it would be possible to access the menu functions. However, it could be a few seconds until the loading process was actually halted, during which time the menu functions would do nothing. The progress indicator window now remains on the screen until the process has been halted, correctly blocking access to the menus.


BUG HW-000737: Documentation: minor error in description of Switch MIDI inputs screen settings.

A sentence in the user guide confused the 'Event value' and 'Event number' settings in the description of the 'General settings | Switch (MIDI) inputs' screen.


BUG HW-000754: Sample set developers: a version number comparison could fail incorrectly.

Hauptwerk could incorrectly report that a component's version was too low if its version and the minimum required version were set to certain values. This problem did not affect any existing sample sets.


BUG HW-000762: One pipe sample wasn't working properly in Sonus Paradisi St Maximin sample set.

The bottom 'A' pipe on the G.O. Trumpet 8 sometimes didn't speak properly in version 3.00.


BUG HW-000788: Voicing screen could cause crash if all ranks were disabled (Advanced Edition only).

If no ranks at all had been loaded into memory then opening the voicing screen would cause a crash.


BUG HW-000798: Sample set developers: occasional crash was possible if loading several organs from a MySQL database without closing Hauptwerk in-between.

A MySQL session parameter was not always being reset between connections.


BUG HW-000814: Status bar 'redirectable' indicator text wrong when organ loaded.

In version 3.00 both re-directables were incorrectly labelled as 'Redir 1:' in the status bar when a sample set was loaded.


BUG HW-000830: Sample set developers: hidden/OS files in component installer packages could give error.

If a sample set package contained non-Hauptwerk files in certain locations (for example hidden/OS files such as Windows Thumbs.db, Desktop.ini or Mac OS X .DS_Store files in the OrganDefinitions or Temperaments folders) then Hauptwerk's component installer would give an error when trying to install it. The component installer now specifically skips unexpected files in a component installer package.



Changes in version 3.00

Version 3.00 included full native support for Windows Vista (32 and 64-bit), full native support for Mac OS X Leopard (10.5), various major functional and performance enhancements and many other minor enhancements and bug fixes. The following were included:


ENHANCEMENT HW-000191: Voicing: stereo balance now adjustable for each pipe (Advanced Edition only).

The Advanced Edition of Hauptwerk has per-pipe voicing facilities to allow the sound of a sample set to be adjusted to suit the acoustics of the listening environment and for aesthetic reasons. When a rank is routed to one or more stereo output pairs in Hauptwerk (pipes can be distributed amongst groups of mono or stereo outputs using Hauptwerk's multi-channel audio output facilities) a new adjustment is available on the voicing screen, which allows each pipe's stereo balance (left to right amplitude ratio) to be adjusted between the two audio channels to which it is routed. This is possible when stereo samples are used, as well as (panned) mono. A new setting is also available to sample set producers in the organ definition file format (Pipe_SoundEngin01_Layer table) to specify the default for this stereo balance setting.


ENHANCEMENT HW-000460: Much more advanced disk-streaming mechanism used for built-in audio output recording facility gives extremely high resilience to audio glitches.

Some computers were more prone to producing occasional slight audio glitches whilst using Hauptwerk's built-in recording system (not in the recorded audio) with Hauptwerk versions 1.00 to 2.21. A much more advanced disk-streaming mechanism is now used for the built-in recording system that is able to avoid the problem entirely, even with slower hard-disks. If you still hear any audio glitches in Hauptwerk's output whilst it is recording but not at other times, or find any glitches in the resulting audio file, try increasing the new 'Audio output recording buffer size' setting on the 'General settings | General options' screen. The setting determines the maximum amount of time Hauptwerk allows your hard-disk to write a chunk of streamed audio to disk before an audio glitch will be heard or recorded. The default setting should be fine for most modern hard-disks but if you have an old or slow disk or are recording a lot of audio outputs simultaneously then it might be necessary to increase this setting. Larger values use a little more memory.


ENHANCEMENT HW-000483: All Hauptwerk data now locked into physical memory only, avoiding the need to disable virtual memory under Windows (Windows only).

If sample data is cached ('paged') to the hard-disk, then the operating system will not usually be able to retrieve it sufficiently rapidly and audio glitches will result. As was previously the case under OS X, Hauptwerk is now also able to guarantee that no sample memory will be cached to disk under Windows, provided that you are logged onto your computer with an operating system user account that has administrator privileges, such as the default Windows account. You will thus receive an error if you try to load a sample set that will not fit into your computer's available physical memory. If you experience problems with latency or audio breaking up, please make sure that you are logged onto your computer with a computer account that has administrator privileges when running Hauptwerk, and also make sure that you have sufficient free memory for the sample set you are loading.

Hence on Windows PCs, in this version of Hauptwerk, unlike version 2 and earlier, it is no longer necessary or advisable to disable Windows virtual memory ('page file'). It is best to keep virtual memory enabled so that other applications can make use of it when required without risking the stability of PC. Note also that Hauptwerk's component installer uses a third-party utility to extract sample sets and might not be able to install very large sample sets if virtual memory is disabled and there is insufficient physical memory, or if disk space is running very low.

On Windows XP use 'Start | Settings | Control Panel | System', then click on the 'Performance | Settings' button on the Advanced tab. Select 'Adjust for best performance', then click the 'Advanced' tab. Leave 'Processor scheduling' and 'Memory usage' both set to favour programs and ensure that 'Virtual memory' shows a total paging file size of at least several GB, otherwise click 'Change' and select 'System managed size' for the hard-disk you want Windows to use for its virtual memory, then click 'Set'. Finally click 'OK' on all of the windows and re-boot the computer if you changed any settings.

Please note, a new option 'Don't abort loading if can't lock data into memory?' has been added to the 'General options | General settings' screen, which disables memory locking and gives Hauptwerk version 2 behaviour for compatibility for (very rare) cases in which another Windows application reserves most of the computer's memory, preventing Hauptwerk being able to lock memory. It is strongly recommended that this option should not be selected in any other circumstances, and can only safely be used if Windows virtual memory is disabled.


ENHANCEMENT HW-000497: New per-rank options for 20-bit and 14-bit sample memory resolutions, giving large memory savings over 24-bit and 16-bit.

The 'Organ | Load organ, adjusting rank audio output routing' screen (also shown when you load an organ for the first time) has a setting for the resolution in which each rank will be loaded into memory, as well as an option to enable loss-less memory compression. Previously only 16-bit and 24-bit options were available. 14-bit and 20-bit options have now been added. These two new resolutions only offer any advantages if memory compression is enabled, since they compress much more than 16-bit and 24-bit respectively, thus saving a large amount of memory. For example one relatively dry third-party sample set (drier sample sets typically compress less) compressed by 47.98 percent when loaded in 14-bit, compared to 27.28 percent when loaded in 16-bit, and by 49.68 percent in 20-bit, compared to 30.51 percent in 24-bit. The 20-bit option is especially useful since it gives most of the audible benefits of a 24-bit resolution, but without using much more memory than loading in 16-bit without compression. Note that you might notice more hiss with the 14-bit option, due to the limitations of the lower resolution. However, it might, for example, be a useful choice for some ranks for which only a few pipes will sound at once, such as softer Pedal ranks.


ENHANCEMENT HW-000545: Microsoft Windows Vista (32 and 64-bit versions) fully supported (Windows only).

We now fully support Hauptwerk on the following editions of Windows Vista (both 32-bit and 64-bit): Home Basic Edition, Home Premium Edition, Ultimate Edition, Business Edition.

As with 32-bit Windows XP, all 32-bit versions of Vista have a 2 GB limit per-application memory limit, although that can be increased to approximately 2.7 GB using Vista's BCDEdit utility to increase the Windows IncreaseUserVA parameter (similar to the /3GB and /Userva Windows boot.ini switches needed for 32-bit XP). This Microsoft MSDN page also describes parameters for increasing the 2 GB per-application memory limit on XP and Vista. Any such modifications are attempted at your own risk. 64-bit versions of Vista have no such per-application limit, and can all use 8 GB of memory or more, depending on the edition. Please note that only the Business and Ultimate editions of Vista can use two physical CPUs, but all editions can make use of a single multi-core CPU.

Please check with your audio/MIDI interfaces' manufacturers for driver support before installing Vista. Please also consult the Crumhorn Labs website for any updated recommendations.


ENHANCEMENT HW-000569: Performance: new optimisations typically giving approx. 15-30 percent higher polyphony on given computer hardware (Intel Macs and PCs, 8-15 percent on G4/G5 Macs).

Various additional performance optimisations have proved to be possible in Hauptwerk's audio engine, giving significant gains in the polyphony that it is able to achieve on given computer hardware. Hence you might wish to re-test the polyphony that your computer is able to achieve as described in the 'Performance tuning' section in the user guide, and adjust your polyphony limit setting accordingly. The maximum polyphony remains at 1024 in the smaller Basic Edition (previously known as the Studio Edition). Please note that a very, very small increase in memory usage by a given sample set has been necessary to be able to achieve these gains in polyphony, typically less than 0.1 percent (for example an increase of about 3 MB was measured for a 1715 MB sample set). This results from the way that memory needs to be laid out for significant additional optimisations to the way that Hauptwerk uses the processor's level 2 cache. Since such a significant increase in polyphony results from such an extremely small increase in memory usage, and also since several major new per-rank memory-saving options are now available in Hauptwerk (such as 14-bit sample memory support and options not to load multiple attack or release samples), we feel this is a very worthwhile trade-off.


ENHANCEMENT HW-000571: Voicing: additional per-pipe parametric lo/hi EQ (Advanced Edition only).

A new set of adjustments are available on the per-pipe voicing screen: 'Lo/Hi EQ: transition frequency (kHz)', 'Lo/Hi EQ: transition width (pct of trans freq)' and 'Lo/Hi EQ: high frequency boost (dB)'. These adjustments allow you to apply a simple low-pass or high-pass parametric EQ (filter) to the pipe, adjusting its balance between bass and treble. The transition frequency specifies the centre-point between the bass and treble bands. The transition width determines the steepness of the frequency response curve in the transition region between the bass and treble, and is specified as a percentage of the transition frequency. Generally it is best to avoid very low values for the transition width, since they will give a very steep frequency response and higher 'filter ripple' (an effect where the frequencies either side of the transition are boosted or attenuated excessively in a narrow band, compared to the rest of the frequency response). Equivalent new parameters exist for sample set producers in the organ definition format (Pipe_SoundEngin01_Layer table), and the default values for the user voicing EQ parameters are taken from those. Any adjustments to the user voicing EQ parameters override those specified by the organ's creator. Note that if the EQ's gain is set to any value other than 0 then approximately 30 percent additional processing overhead is incurred for the pipe, reducing the overall polyphony that can be achieved accordingly. Hauptwerk's polyphony management system automatically takes this into account at the pipe level, as with other real-time filters.


ENHANCEMENT HW-000609: Full native support for multiple monitors / multiple touch-screens (Advanced Edition only).

The virtual console display has multiple tabs. If you have the Advanced Edition of Hauptwerk you can now open up to four tabs at once in separate windows using the 'Organ | Show another console window' menu function. This is most useful if your computer has two or more touch-screen monitors attached to it. For example, you could display one window (display tab) on a monitor to the left of your MIDI keyboard(s) and another to the right to give a traditional organ console layout with some stops on either side of your MIDI keyboard(s) when using sample sets that have their virtual console tabs laid out in that way, as the St. Anne's, Moseley organ sample set now does (see ENHANCEMENT HW-000641).


ENHANCEMENT HW-000668: CODM: Enormously extended to provide new organ definition format with sufficient flexibility for amateur/hobbyist sample set producers, digital organ installations and for theatre organs, a fully-customisable graphical console, plus lots more.

The Custom Organ Design Module (CODM) was previously intended to provide a very simple and easy-to-use organ definition format to allow end-users to create basic organ specifications that could be loaded into Hauptwerk to take good advantage of its models using ranks of samples from existing sample sets. The virtual console was generated entirely automatically to minimise the amount of settings that a user needed to specify. Hauptwerk's full native organ definition format existed in parallel, providing all possible flexibility, but at the cost of complexity.

However, feedback from many users has been that an organ definition format providing a level of flexibility and complexity between the two previous formats would be desirable, with sufficient flexibility for amateur/hobbyist sample set producers to create fully functional native Hauptwerk sample sets suitable for public release, but retaining a relatively small and simple file format that was easy to learn and quick to use without the need for third-party databases or other tools.

The CODM organ definition format has been enormously extended to provide for those needs. The new extended format is loaded in the CODM as before (using the 'Design tools | Load custom organ' menu function), compiling automatically to a full native organ definition file, and uses a simple text/XML file format to define the organ as before. The extended format is also fully backwardly-compatible with the previous format (*), thus all new parameters are optional or have defaults.

Here are some of the highlights of the new extensions:

For full documentation for these new extensions to the format please see the updated Custom Organ Design Module User's Guide included with this release. Parameters which are new or extended for this release are identified in that guide.

To get an idea of what's possible using the new CODM, try loading some of the example files by selecting 'Design tools | Load custom organ' on the menu in the new version of Hauptwerk.

Please note that the CODM organ definition format still uses a text/XML file; there is not yet a graphical interface for the organ design process itself. Although it remains just as quick and simple to create simple CODM organs as in previous versions, these new extensions allow quite complex and sophisticated organ definitions to be created. The design goal has been to keep the format as small and simple as possible, but inevitably there is more to familiarise yourself with, and a certain amount of additional complexity if you wish to take advantage of these new features. Hence we would generally advise novice computer users to start with simple CODM organs and examples first.

Important note: because of the sophistication now possible, and because of the 'DIY' nature of creating or editing organs to taste, it needs to be emphasized that we are sorry that we cannot provide personal tuition, or assistance in creating/editing organ definitions, to end-users. The Custom Organ Design Module User's Guide and an extensive set of examples are provided to help. We will usually only be able to provide a small amount of support beyond that. However, you can of course exchange help and advice with other users via our website forum.

[(*) There is one fairly unlikely case in which a manual change might be required to a previous custom custom definition file: only values in the range 1-1024 are now allowed for the Rank.RankID parameter, in order to be able to guarantee that settings and voicing are preserved if ranks are added or removed.]


ENHANCEMENT HW-000681: Apple Mac OS X Leopard (10.5) fully supported (Mac OS X only).

We now fully support Hauptwerk on Mac OS X Leopard (10.5) on both Intel and PowerPC (G4/G5) Macs. OS X 10.4 (10.4.10 and later) is still also supported.

In general, provided that working drivers are available for your hardware, we recommend Leopard over Tiger, since it has significant improvements internally that are relevant to Hauptwerk. The only notable disadvantage of Leopard is that it does not allow an application (such as Hauptwerk) to fill the memory as nearly as was possible with Tiger, so Hauptwerk might not be able to use as much memory on computers with 4 GB of memory or less. Please note that Hauptwerk currently runs as a 32-bit application on Mac OS X, and so cannot take full advantage of more than 4 GB of memory, but we hope to produce a native 64-bit version of Hauptwerk for Mac OS X 10.5 in a future release as soon as possible, which will allow sample sets to use more than 4 GB of memory. However, it is still currently advantageous to have more than 4 GB of installed memory, since OS X will allow Hauptwerk to use nearly 4 GB if there is further memory available for OS X itself to use.

Please check with your audio/MIDI interfaces' manufacturers for driver support before installing Leopard. Please also consult the Crumhorn Labs website for any updated recommendations.


ENHANCEMENT HW-000167: Voicing: new 'master' shortcut slider to move all sliders in rank at once (Advanced Edition only).

The Advanced Edition of Hauptwerk has per-pipe voicing facilities to allow the sound of a sample set to be adjusted to suit the acoustics of the listening environment and for aesthetic reasons. One slider is provided for each pipe in the selected rank and for the selected adjustment (e.g. brightness or amplitude). In addition to the 'quick' sliders previously provided to allow rapid adjustment of all pipe sliders within an octave (for the selected adjustment), a new 'master' slider is also provided. The slider works in the same way as the 'quick' sliders, but moves all of the pipe sliders equally for the whole rank (for the selected adjustment), rather than just affecting one octave. This slider is a very convenient tool for initial adjustment of the basic sound of each rank, and the organ as a whole, prior to fine-tuning the parameters at the octave or individual pipe levels with the other sliders.


ENHANCEMENT HW-000179: Voicing: window now non-modal so can engage/disengage stops without closing and re-opening voicing window (Advanced Edition only).

The Advanced Edition of Hauptwerk has per-pipe voicing facilities to allow the sound of a sample set to be adjusted to suit the acoustics of the listening environment and for aesthetic reasons. Previously, if controlling registration with the mouse or a touch-screen, it was necessary to close the voicing window, adjust the registration, then re-open it to be able to hear the effects of adjustments on a different rank, either individually or in combination, because the voicing window was 'modal' (no other window could be clicked whilst it was open). The window is no longer modal, and so you can now use the mouse or a touch-screen (in addition to MIDI, which was possible previously) to change registration freely whilst voicing. This makes the voicing process significantly faster and more convenient.


ENHANCEMENT HW-000243: A single MIDI input keyboard, switch, continuous control, rank, etc. can now control multiple virtual organ controls simultaneously.

Previously the settings screens did not allow a given MIDI object to control multiple virtual objects. For example, it was not natively possible to use a single MIDI keyboard to play two virtual keyboards at the same time (couplers etc. notwithstanding), or to trigger a single given virtual piston from either a thumb piston or a toe piston (unless the virtual organ explicitly provided additional pistons to accomplish that). Those restrictions have now been removed.


ENHANCEMENT HW-000413: New per-rank user option to disable multiple release samples.

A sample set can include multiple release samples for any give pipe to provide an extremely realistic virtual acoustic for wet sample sets, even when playing fast passages and short notes. However, such additional samples increase the amount of memory the sample set requires. There is a new per-rank user option to disable multiple release samples so that only the default release sample is loaded for each pipe in the rank, saving memory at the expense of realism when playing fast for such sample sets. There is also an equivalent new setting for multiple attack/sustain samples: see ENHANCEMENT HW-000533.


ENHANCEMENT HW-000431: Voicing: decibel parameter slider ranges increased from +/-12 dB to +/-24 dB (Advanced Edition only).

The Advanced Edition of Hauptwerk has per-pipe voicing facilities to allow the sound of a sample set to be adjusted to suit the acoustics of the listening environment and for aesthetic reasons. Previously, the maximum range of adjustments calibrated in decibels (amplitude, brightness, swell box and tremulant modulation, etc.) was +/-12 dB. Those adjustments now allow adjustment within a range of +/-24 dB, hence more extreme adjustments are possible.


ENHANCEMENT HW-000525: Maximum polyphony increased from 8192 to 32768 (Advanced Edition only).

Computers with eight processor cores, such as the 8-core Apple Mac Pro, can exceed the previous maximum Hauptwerk polyphony of 8192, hence we have increased the maximum polyphony to 32768 in the Advanced Edition. The maximum polyphony remains at 1024 in the smaller Basic Edition (previously known as the Studio Edition). Please note that the polyphony testing organ still only has about 8000 pipes, so polyphony limit values above about 8000 need to be set experimentally. Please also note that we strongly recommend not setting Hauptwerk's polyphony limit setting to a value higher than your hardware can achieve since the polyphony management system would not be able guarantee glitch-free audio in that case, and slightly more memory is consumed for higher polyphony limit settings.


ENHANCEMENT HW-000533: New per-rank user option to disable multiple attack samples.

The 'Organ | Load organ, adjust rank audio output routing' screen (also shown when a sample set is loaded for the first time) has a new setting: 'Multiple attack/sustain sample handling mode' which allows you to disable the use of multiple attack/sustain samples for sample sets that include them, thus saving memory at the expense of some realism. Multiple attack/sustain samples are used in some sample sets to model a pipe organ tracker-action response, to select samples randomly to reduce repetition, to give more realistic attacks to a pipe that sounds immediately after it has stopped speaking, and to give other improvements in realism. If you don't have sufficient memory to load the whole sample set, and the sample set includes both multiple attack/sustain samples and multiple release samples, it is generally best to disable multiple attack/sustain samples in preference to disabling multiple release samples, since multiple release samples give the most obvious improvement in realism. The equivalent new setting for multiple release samples is described in ENHANCEMENT HW-000413.


ENHANCEMENT HW-000555: Monitors free physical memory to prevent operating system crashing if memory completely exhausted.

Hauptwerk is able to guarantee that no sample memory will be cached ('paged') to disk, provided that you are logged onto your computer with an operating system user account that has administrator privileges, such as the default OS X or Windows account (see ENHANCEMENT HW-000483). When loading a sample set, Hauptwerk now also constantly monitors the amount of remaining free physical memory and stops a sample set loading if the free memory becomes very nearly exhausted. Doing so should ensure that there is sufficient free memory remaining for the operating system to use without risking the stability of the computer. Because Hauptwerk's data cannot be paged to disk, if the physical memory was to become completely filled then the computer could become very sluggish, appear to have frozen, or even crash completely. Such a freeze or crash was previously possible with Hauptwerk on Mac OS X, when no such mechanism was included. Please note that because Hauptwerk now deliberately reserves a small amount of free memory for the operating system, it is conceivable that a sample set that previously completely used up all available memory might now not be allowed to load with the same set of rank memory options. However, this should only occur in extreme cases, and we think that the gain in stability and resilience to audio glitches that is gained as a result is a worthwhile trade-off.


ENHANCEMENT HW-000581: Each menu function can now be triggered by up to four MIDI pistons/switches.

As covered in the 'Menus' section in the user guide, MIDI messages or computer keyboard key presses can be assigned to trigger Hauptwerk's menu functions. Previously each menu function could be triggered by at most one such MIDI switch or computer key. Now up to four are allowed, with additional settings on the 'General settings | Menu functions activated by switch (MIDI) inputs' provided for the purpose. For example, you might want to be able to trigger the registration sequencer's 'next' function from either a thumb piston or a toe piston.


ENHANCEMENT HW-000621: Voicing: now possible to click on sliders in addition to dragging them (Advanced Edition only).

In particular, this makes the voicing process considerably easier for touch-screen use.


ENHANCEMENT HW-000633: VSTi: Sibelius 5 now supported and tested as compatible VST host.

Sibelius is high-end musical notation software which supports play-back via VST instruments. Hauptwerk has been made compatible with it and Sibelius 5 is now fully supported as a VST host


ENHANCEMENT HW-000641: St. Anne's, Moseley organ sample set: additional virtual console display page tabs for dual-monitor stop jambs.

To allow the new multi-monitor support available in the Advanced Edition (ENHANCEMENT HW-000609) to be used and evaluated to best effect, two new display page tabs have been added to the St. Anne's, Moseley organ sample set's virtual console: one for the left stop jamb and another for the right. With two computer monitors (especially useful with touch-screens), it is now possible using the Advanced Edition to display each of those pages on a separate monitor, positioned either side of your MIDI console or MIDI keyboards for a realistic and ergonomic stop layout, i.e. with one stop jamb displayed on either side of your MIDI console. The virtual controls on the new virtual console pages are laid out to be especially suitable for touch-screen use.


ENHANCEMENT HW-000007: More advanced bass/melody coupler mechanism.

A bass or 'auto pedal' coupler duplicates the lowest note played on a manual to the pedalboard, which is very useful for playing organ music without a MIDI pedalboard, and for pianists who are not conversant with pedalling technique. Similarly, a melody coupler duplicates the highest note played on a manual onto another division, which is particular useful when playing an organ with two or more virtual manuals from a single MIDI keyboard. Hauptwerk's native bass and melody coupler implementation has been re-designed with a much more advanced mechanism. For a bass coupler, releasing the lowest key pressed no longer causes the next highest held key to sound, but special provision is also made to allow for ascending legato bass lines. The same is true for melody couplers, but for the highest note played and with provision for descending legato melody lines.


ENHANCEMENT HW-000274: MIDI feedback detected automatically (Advanced Edition only).

Whenever you load an organ or activate Hauptwerk's MIDI system, Hauptwerk now automatically sends special MIDI messages to try to detect if you have a virtual or physical MIDI lead connected between any of your selected MIDI OUT ports and MIDI IN ports. Having such a lead connected can crash or freeze Hauptwerk, the MIDI interface or your computer. By default, if MIDI feedback is detected Hauptwerk deactivates the MIDI system immediately and displays an error message. However, a new option 'Don't halt if MIDI feedback detected?' is provided on the 'General settings | General options' screen to disable this behaviour. Please only tick this option if you are absolutely certain that your MIDI console requires it, and if you are certain that your Hauptwerk configuration cannot cause any MIDI feedback with your MIDI hardware and wiring.


ENHANCEMENT HW-000384: Selected virtual console tab remembered when loading each organ.

Previously a fixed default display page/tab for the virtual console (defined by the sample set producer) was always selected when a sample set was loaded. Now that default is only used the first time that you load the sample set. Each subsequent time Hauptwerk now automatically selects the page tab that you last used for that sample set.


ENHANCEMENT HW-000439: Per-rank loss-less memory compression option turned on by default.

There is a per-rank user option to enable loss-less memory compression, which typically gives a 30-45 percent reduction in memory usage for a 10-15 percent reduction in polyphony and no loss of audio quality. When a sample set was first loaded the option previously defaulted to off (no memory compression). The default has now been changed to on (memory compression enabled), on the basis that it is preferable for a sample set to load successfully first time within the memory available, and the setting can then be fine-tuned as required to optimise performance for your hardware. This change only affects the first time you load a sample set; your existing sample set rank options will not be altered.


ENHANCEMENT HW-000446: 'Original organ tuning' selected by default when sample set first loaded.

The first time that you load a sample set Hauptwerk now defaults the initial temperament selection to the 'original organ tuning' option in preference to equal temperament. If a particular sample set does not support original organ tuning, then equal temperament is selected instead for it. The temperament can be changed as before using the Temperament menu, or the initial temperament mode changed on the 'Organ settings | General options' screen.


ENHANCEMENT HW-000543: Option to delay Hauptwerk launch when starting on boot to give time for slow MIDI/audio drivers to finish initialising.

Hauptwerk queries the audio and MIDI drivers installed in the computer when it starts. If Hauptwerk is configured to start automatically when the computer boots, then some audio/MIDI drivers might not have finished initialising at the point at which the operating system launches Hauptwerk, causing them to be missed and not available for selection in Hauptwerk. Some USB MIDI interfaces under Windows are known to be affected, such as the M-Audio MIDISPORT series. A new user option has been added to the 'General settings | General options' screen to cater for this situation: whenever Hauptwerk is launched it will now always wait for (at least) 'Minimum time to wait on start-up (seconds)' before starting. This setting is useful if you have Hauptwerk configured to start automatically when your computer starts, but some of your MIDI or audio devices are slow to start and might not have finished initialising when Hauptwerk is launched by the operating system. In all other cases you should leave this set to 0, to avoid making Hauptwerk unnecessarily slow to launch.


ENHANCEMENT HW-000561: Various memory statistics now shown in log file for diagnostics.

Memory usage diagnostic data, including the amount of available memory, free memory and approximate amount of sample memory in use by Hauptwerk, are now written to the log file (Help | Show error and activity log) to assist us when providing customer support.


ENHANCEMENT HW-000563: Hauptwerk Concert Edition renamed to Hauptwerk Advanced Edition and Hauptwerk Studio Edition renamed to Hauptwerk Basic Edition.

As before, there are two editions of Hauptwerk. The Advanced Edition has the full functionality and was previously known as the Concert Edition. The smaller edition, with a subset of the functionality, was previously named the Studio Edition, but has now been renamed to the Basic Edition. No existing functionality has been removed from the previous Studio Edition (in fact, there are many new enhancements to all editions, as can be seen from the list of changes in this release notice), and there is no intention to remove any functionality from it in the future. The changes of name are simply to help to clarify that the smaller Basic Edition has a subset of the full functionality of the Advanced Edition, rather than implying that either edition is necessarily best suited for any given type of users, which had caused confusion with the previous edition names. To emphasize: these are changes of name only, not functionality.


ENHANCEMENT HW-000584: Voicing: reset button moved to left of screen (Advanced Edition only).

The per-pipe voicing screen has a 'Reset' button that resets all sliders to their default position for the selected rank and adjustment. To make it harder to press the button by accident when intending to close the screen with the 'Close' button (especially for touch-screen use), the button has been moved to the opposite side of the screen.


ENHANCEMENT HW-000602: St. Anne's, Moseley organ sample set: duplicated toe pistons now accessible via MIDI.

The St. Anne's sample set included with Hauptwerk has some toe pistons that duplicate functionality provided by thumb pistons (for example, the five Swell divisional combinations). Previously those duplicated toe pistons were not configured to allow external control (via MIDI or computer keyboard key presses), since the thumb pistons provided the same functionality. Now they too allow external control.


ENHANCEMENT HW-000638: St Anne's, Moseley organ sample set: virtual controls and ranks renamed on organ settings screens.

So that the entries are shown in more logical orders on the 'Organ settings' screens and 'Organ | Load organ, adjusting rank audio output routing' screen, and to try to make their functions clearer, the names displayed on those configuration screens for the virtual controls and ranks have been changed. This has no functional effect and does not affect the appearance of the virtual console.


ENHANCEMENT HW-000433: Additional per-rank release sample truncation length settings and improved decay length scaling across rank compass.

Hauptwerk has a per-rank option to allow the user to specify that release samples should be truncated artificially, using specially-shaped frequency-dependent decays, to provide a basic simulation of 'dry' samples (with no reverb) from wet samples and to save memory. Different decay lengths are provided as options. In response to requests from some users, additional longer decay length settings are now available. The decay length scaling across the compass of a rank has also been improved.


ENHANCEMENT HW-000443: International character strings now stored in a more space-efficient format.

Hauptwerk now uses a different format internally to store character string data, which saves some memory but still allows the full range of international characters to be used as before.


ENHANCEMENT HW-000457: Dongle driver updated for Windows Vista compatibility (Windows only).

The previous version of the driver for Hauptwerk's licence key dongle was not compatible with Windows Vista, and an error was given during its installation. An updated driver is used in the installer for this version of Hauptwerk which is fully compatible with Windows Vista.


ENHANCEMENT HW-000498: [Sample set developers only] new organ definition setting to force an organ to load without compression.

A new _General.AudioEngine_DisableMemoryCompression setting is available in the organ definition file format. This exists only to ensure that the polyphony testing organ always loads without compression so its static polyphony is measured correctly. It is not intended that sample set developers would adjust this setting, and is listed here for their reference only.


ENHANCEMENT HW-000505: Additional resilience to unreliable audio or MIDI drivers being able to crash Hauptwerk during initialisation and activation or deactivation.

Hauptwerk queries installed audio and MIDI drivers when it is launched. If an unreliable audio or MIDI driver crashed during such a query, or when started or stopped, it could also cause Hauptwerk to crash. Hauptwerk now attempts to handle and suppress any such driver crashes. This is effective in most cases, although it is not possible to make Hauptwerk resilient to every conceivable driver crash, such as an audio driver crashing whilst Hauptwerk is actually streaming audio to it. Hence it is still strongly recommended that good-quality audio and MIDI interfaces with reliable drivers should be used.


ENHANCEMENT HW-000540: Known hardware and software synth virtual MIDI output ports ignored (Advanced Edition only).

The Advanced Edition has MIDI output capability. If a hardware or software synthesizer virtual MIDI output port is accidentally enabled as a MIDI output port in Hauptwerk, then unexpected percussion or other sounds can be heard when playing Hauptwerk or changing registrations. Windows' 'Microsoft GS Wavetable SW Synth' port and the Creative sound cards' 'SB X-Fi Synth ...' ports are common culprits. To try to prevent the possibility of these accidentally being selected as output ports in Hauptwerk, Hauptwerk now explicitly ignores those and other known virtual synth entries found on common sound cards when querying the list of available MIDI ports.


ENHANCEMENT HW-000546: [Sample set developers only] JPEG and TIFF image formats now supported in sample sets.

It is now possible to use these image file formats in sample sets, in addition to the BMP and PNG formats previously supported.


ENHANCEMENT HW-000556: Hauptwerk v1 import: sample data organised by organ definition name for compatibility with recently-released third-party Hauptwerk v1 sample sets.

Unlike the current format, the Hauptwerk version 1 sample set format had no formal means to guarantee uniqueness between sample file names, folder names or organ definition files. Some Hauptwerk version 1 sample sets released recently have sample folder names that conflict with other existing version 1 sample sets. Importing both such sample sets would cause the samples from one to overwrite the other. To try to guard against this, Hauptwerk now organises imported version 1 sample files and folders into sub-folders according to the imported organ definition file name. Please note, however, that there is still an implicit assumption that Hauptwerk version 1 organ definition filenames should be unique. To our knowledge, that remains the case with all publicly-available Hauptwerk version 1 sample sets to this date.


ENHANCEMENT HW-000560: Operating system and version shown in log file for diagnostics.

The operating system and version are now shown in the log file to assist us when providing customer support.


ENHANCEMENT HW-000618: Component installer: now possible to cancel installation during sample set extraction phase.

It was not previously possible to cancel the installation during extraction.


ENHANCEMENT HW-000619: Message no longer given if cancel loading organ from a MySQL database.

A spurious error message was given indicating that loading had been cancelled if you cancelled loading an organ from a MyQSL database (using the separately-licensed MySQL database integration option). No message is now given.


ENHANCEMENT HW-000628: Hauptwerk v1 import: re-importing a v1 organ file no longer re-defaults its settings.

If a Hauptwerk version 1 sample set is re-imported any existing organ-specific settings previously saved for it are now preserved. Please see BUG HW-000476 for more details.


ENHANCEMENT HW-000634: Moving Hauptwerk settings files between configurations and between PCs and Macs now technically possible.

Although Hauptwerk does not yet have fully a native means to transfer user settings between different Hauptwerk configurations (e.g. stand-alone and VSTi) or between different computers, all of Hauptwerk's settings are stored in XML files which can be copied between configurations and separate computers. Hauptwerk now automatically and seamlessly migrates settings within the files that are specific to one configuration or computer platform when the files have been transferred in that way. Please note that we do not recommend moving or adjusting any of Hauptwerk's internal files, including its settings files, without having specifically been advised to do so by Crumhorn Labs, since it is possible to damage your Hauptwerk installation if a mistake is made. If you have only a few settings to migrate between different configurations or computers, please simply re-make those settings changes via the settings screens on the new configuration or computer. If you have a very large number of settings that you need to migrate between separate installations, and are reasonably experienced with computers, then we can provide advice on such a migration on request.


ENHANCEMENT HW-000640: Computer key code numbers changed for switch (MIDI) inputs screen.

The computer key code numbers used on the 'General settings | Switch (MIDI) inputs' screen to allow computer keys to trigger virtual organ controls have changed. This was necessary because the major version of the multi-platform library used within Hauptwerk has been updated in order to be able to provide full support for Windows Vista and the forthcoming Mac OS X 10.5 and because the key code numbers are defined by that multi-platform library. When you first launch Hauptwerk version 3 it will automatically attempt to migrate any keys settings that you had defined with an earlier version to the new numbering scheme. The new key codes are listed in full in the 'MIDI implementation' section in the user guide. However, there are a small number of key codes (previously numbered as 224-246 and 248-254) from the 'Latin 1' range for which there are no equivalents in the new version. Hence please briefly check that any key assignments that you had previously configured are still functioning, and re-configure them if they fell in to those ranges. There are also some additional new key codes, and the number of available key code numbers has risen overall.


ENHANCEMENT HW-000643: St. Anne's, Moseley organ sample set: CRESC TO SW and CRESC TO PED pistons moved on virtual console.

The order in which the Crescendo couplers are laid out on the main display page of the St. Anne's, Moseley organ sample set's virtual console has been changed for consistency with other types of couplers.


ENHANCEMENT HW-000662: [Sample set developers only] Much easier-to-use native support for theatre organ traps, pizzicato and re-iterators and for stop action noise effects.

Although it was previously possible to implement all of these things in the full native organ definition format, it was quite complicated. More native supported has been added to make the task of including such features much quicker and simpler for the sample set producer. The ActionTypeCode and ActionEffectCode parameters are new or extended for the KeyAction and StopRank tables, together with new PipeMIDINoteNum036_PizzOrReitPeriodMs and PipeMIDINoteNum096_PizzOrReitPeriodMs parameters for both of those tables. Please consult the Sample Set Creator's Guide for a full list of the new action type and action effect codes if required.


ENHANCEMENT HW-000663: [Sample set developers only] Internal keyboards for coupling no longer need to be visible to the user via the organ settings screens.

Sometimes it is desirable for a sample set creator to create hidden internal Keyboard objects within the organ definition to implement complex coupling or other mechanisms. Previously, although those keyboards need not be displayed on the virtual console, they were visible to the user via the 'Organ settings | Connect keyboard MIDI inputs to organ keyboards' and 'Organ settings | Connect organ keyboards to keyboard MIDI outputs' screens, which could be confusing to the user. Two new settings have added to the Keyboard table to prevent that behaviour if required: AccessibleForInput and AccessibleForOutput.


ENHANCEMENT HW-000664: [Sample set developers only] Much easier-to-use native support for re-triggering and non re-triggering tremmed sample ranks.

Some sample set developers prefer the use of real tremulant-affected ('tremmed') samples to using Hauptwerk's native tremulant model. Also some of those sample set producers prefer held notes not to re-trigger when the user switches between the un-tremmed and tremmed versions of the ranks (i.e. engages or disengages the tremulant switch). Although it was previously possible to implement in the full native organ definition format, it was quite complicated. More native supported has been added to make the task of including such a feature much quicker and simpler for the sample set producer. The following new parameters have been added to the StopRank organ definition table to accomplish this: SwitchIDToSwitchToAlternateRank, RetriggerNotesWhenSwitchingBetweenNormalAndAlternateRanks, AlternateRankID, AlternateExternalRankID. If SwitchIDToSwitchToAlternateRank is specified, then Hauptwerk will switch between the main rank specified and the 'alternate' rank, optionally re-triggering held notes depending upon RetriggerNotesWhenSwitchingBetweenNormalAndAlternateRanks.


ENHANCEMENT HW-000665: [Sample set developers only] Image size settings no longer need to be specified manually.

When listing image files in the ImageSet and ImageSetElement tables in the organ definition, it was previously necessary to specify the image size with ImageSet.ImageWidthPixels and ImageSet.ImageHeightPixels. Those values can be now left blank (or zero), in which case Hauptwerk will automatically determine the image sizes from the image files themselves.


ENHANCEMENT HW-000669: Various usability/cosmetic enhancements to settings screens, file browsers and other dialogue windows.

In particular, pressing ENTER/RETURN on any settings screen, file browse window or other dialogue window is equivalent to clicking the OK button, and pressing ESCAPE is equivalent to clicking the Cancel button, regardless of the highlighted item on that screen. This makes it significantly quicker to perform many common operations using the keyboard. Most file browse windows now automatically default to having the last-used item selected and the sorting behaviour for the lists of files they show has been improved.


BUG HW-000017: If a combination file was loaded at the same time as notes were being played, sometimes the notes were not released.

When loading a combination file, the stops and controls were reset correctly, but sometimes the keys were not, causing notes to stick until 'Functions | Reset' was selected from the menu.


BUG HW-000199: Was very occasionally possible to cause a crash by deactivating/unloading at exactly the instant that a MIDI message was being processed.

A virtual console screen update resulting from the MIDI message could conflict with the screen handling during deactivation.


BUG HW-000427: Crash could occur with some sample sets if blower turned off and wind regulators allowed to deflate fully (Non-USA Advanced Edition only).

The Advanced Edition of Hauptwerk includes a physical model of a pipe organ wind supply (not available in the U.S.A.). Some sample sets include a blower switch, which allows the wind regulators to deflate. If the regulators were allowed to deflate fully whilst pipes were sounding a crash could sometimes occur.


BUG HW-000469: Bug in Creative X-Fi ASIO driver could cause Hauptwerk to lose user settings changes (Windows only).

Hauptwerk queries the installed audio devices when it starts. Due to a bug in the Creative X-Fi ASIO driver whereby the driver gives an invalid response when queried, if you had a Creative X-Fi sound card installed in the PC, Hauptwerk could show error 'ERR:1132 Failed to validate the 'ChannelGroupNumber' attribute of the 'AudioOutputDeviceChannel' object' in its log file, followed by 'INF:4116 The main Hauptwerk configuration file Config.Hauptwerk.xml, located in the configuration file folder, could not be loaded successfully and may have been corrupt or contained invalid settings or values. Hauptwerk successfully restored and loaded the file automatically from backup. However, some previous settings changes may have been lost as a result.' The main effect of this was that any settings changes you made would be lost when you next started Hauptwerk. Hauptwerk has been changed to work around the driver bug explicitly, so that the invalid responses from the Creative driver no longer cause any errors to be reported or Hauptwerk settings to be lost or reverted.


BUG HW-000470: Some audio interfaces' ASIO buffer sizes could not be adjusted without external access to the drivers' ASIO control panel (Windows only).

In Hauptwerk version 2.20 the option to open the audio interface driver's ASIO control panel was removed from the Hauptwerk menu and instead the ASIO buffer size was made adjustable via the 'General settings | Audio outputs' screen, since that was felt to be more user-friendly. However, some audio drivers, such as the Echo Gina/Darla ASIO driver, ignore any requested ASIO buffer sizes and only uses the value set via their own ASIO control panel. Since that control panel is not accessible via all drivers' audio control panel utilities and was no longer accessible via Hauptwerk, the ASIO buffer size could not be adjusted for those interfaces. A new button has been added to the 'General settings | Audio outputs' screen to open any selected ASIO driver's ASIO control panel, thus allowing the buffer size to be adjusted again natively for such devices.


BUG HW-000490: If Steinberg's emulated 'ASIO DirectX' or 'ASIO Multimedia' drivers were corrupted Hauptwerk would not launch (Windows only).

Most Steinberg products, such as Cubase, Cubasis and V-STack, install two emulated drivers named 'ASIO DirectX Full Duplex Driver' and 'ASIO Multimedia Driver'. Those drivers maintain databases of other Windows drivers and provide an emulated ASIO interface to them. They do not give good performance with Hauptwerk, and their driver databases frequently become corrupted if audio interfaces or drivers are added or removed. It is possible to identify whether the drivers have become corrupted by trying to open the 'ASIO DirectX Full Duplex Setup' or 'ASIO Multimedia Setup' utilities found in the Start menu program group for your Steinberg application(s). If one of the drivers has become corrupted, its corresponding Steinberg set-up utility will crash or fail to open. Hauptwerk queries installed drivers when it launches. If a driver crashes or freezes when queried, that can cause Hauptwerk itself to crash or freeze. Since those particular drivers frequently became corrupted and crashed, causing Hauptwerk to crash on launch, and since those drivers are not relevant to Hauptwerk anyway, Hauptwerk now explicitly ignores those two drivers when querying the installed audio drivers. Thus it should no longer affect Hauptwerk if the Steinberg emulated drivers become corrupted.


BUG HW-000491: Transposer could leave keys stuck if transposition changed whilst holding keys.

If a chord was held whilst the transposition was changed, the keys that were previously pressed could incorrectly remain pressed. Keys are now correctly released when changing the transposition.


BUG HW-000612: Was possible to cause a crash by triggering two system functions at exactly the same time (e.g. one via the menu and another with a keyboard shortcut).

A system function can now only be triggered once any previous system function has completed.


BUG HW-000622: Notes could hang if registration sequencer frame was advanced/decremented rapidly whilst playing.

The problem is now fixed.


BUG HW-000400: Installer: non-English or non alpha-numeric characters in installation folder names could prevent Hauptwerk launching (Windows only).

Characters other than a-z, A-Z, 0-9, space, underscore and hyphen (such as an ampersand) could be incorrectly encoded into Hauptwerk's XML settings files by the installer, preventing Hauptwerk from reading the folder names correctly. In such cases you could see error 1108 (XML parsing error) in a file named FileLocations.Hauptwerk.xml when you attempted to launch Hauptwerk. Special characters should now be encoded correctly by the installer, so any folder names valid for the operating system should be acceptable on Windows PCs. Please note that non-English characters in installation folder names may still cause problems on Mac OS X and additional work will be needed to address the issue fully on that platform (see bug HW-000679). Hence please still use only the a-z, A-Z, 0-9, space, underscore and hyphen characters in folder names when installing Hauptwerk on Mac OS X.


BUG HW-000424: Component installer: crash during sample set installation was possible with large sample sets (Windows only).

In previous versions of Hauptwerk it was recommended that Windows' virtual memory should be disabled to prevent Hauptwerk's sample data being cached ('paged') to disk. This is no longer necessary (see ENHANCEMENT HW-000483) since Hauptwerk now guarantees that sample data are kept only in physical memory, and we now recommend keeping Windows virtual memory enabled. Hauptwerk's component installer (used when installing sample sets) calls a third-party utility to extract the sample set data, which could sometimes crash when installing very large sample sets, causing Hauptwerk itself to crash. This usually occurred when Windows virtual memory was disabled or exhausted and should no longer happen. Hauptwerk also now attempts to trap and handle any crashes from the third-party utility so that Hauptwerk itself should not crash even if a virtual memory shortage does still arise.


BUG HW-000432: Component installer: was still slow to read some sample sets from DVD or CD (Windows only).

Although previous versions included speed enhancements in this area, when installing certain sample sets from CD or DVD, Hauptwerk's component installer could still be slow to read the CDs/DVDs on Windows PCs. Additional optimisation has been added that now ensures that all CDs and DVDs are read at least as fast as Windows Explorer is able to copy files from them. This reduces the overall time taken to install such sample sets very significantly.


BUG HW-000436: [Sample set developers only] If sample and output sample rates differed then original organ tuning option gave the wrong pitch.

If one or more samples within a sample set was saved using a different sample rate to the global output sample rate for the sample set, then Hauptwerk's 'original organ pitch' temperament option (only) could cause those samples to sound at the wrong pitch. This was not known to affect any current sample sets and has now been corrected.


BUG HW-000441: Markers within a sample were numbered backwards.

If a sample had more than one marker (WAV 'cue point') within it and the sample set specified where the pipe release should start using the marker number, then the wrong marker might be used because Hauptwerk (versions 2.10 to 2.21 only) numbered them backwards from the end of the sample, whereas they should be numbered forwards from the start. This was only known to affect some Sonus Paradisi/Hauptwerk.cz sample sets, giving less prominent decay transients than intended for those sample sets, and has now been rectified.


BUG HW-000474: Installer: froze during installation on a few Apple Macs (Mac OS X only).

Hauptwerk's installer is a Java application and reli