DIGITSTER.COM

We temporarily suspended the release of the WU Series for a certain reason.

 

However, here some further insights and clarifications for this much time-consuming project ...

... despite of compiling 17!!! single units in enormous amount of time and effort ...
... for our new WU Series AUSamper on iOS, for instance, we invested loads of additional work and provided support for Apples native ESX24 file format (*.esx) and the native AUSampler file format (*.aupreset). (The sampler, by the way, can also load single files in all supported native iOS audio formats or single patches from soundfonts (like *.dls and *.sf2) on demand, which then will be converted to native sampler format by our units for further editing and refinement.) The sampler will allow to import and manage a large library of files this way and allow to edit the generated patches. Wide patch sharing would be no problem with such an open concept. State saving is fully supported by all WU audio units with key-value serialization mechanisms, that is even compatible with the editable native sampler format (XML). This format is human-readable and very transparent and documented by us. MIDI automation support is implemented into all of the audio units in the WU Series, a function that is not supported by Apples native AudioUnits, b.t.w.

Logic Pro X's legendary ESX24 Sampler on MacOS: There are thousands of patches that can be used with the AUSampler on iOS.

 

We especially concentrated to add full support for the popular MacOS generated AutoSampler patches (which are generated in Apples propietary EXS format version 2). So that users easyly can create, import and collect large libraries of professional plattform-compatible sampler files, or patches comfortably created on the Mac with the ESX24. The EXS file format is by design a closed binary file format, which is not documented at all. Therefore allot of reverse engineering, investigation and and time was needed to make it happen. Exporting of EXS files will not be supported, but the exported native *.aupreset format can be loaded with Logic, GarageBand and MainStage on the Mac using the AUSampler there, vice versa.

Users cannot expect to get such big amount of work for free.

There is not even one single available AUSampler integration on the iOS platform since it was shipped untill today. Because it's not quite easy to achieve and nearly everything is undocumented by Apple. But the sampler audio unit is there since many years now and nobody really has managed to unvail its power on the iOS system. Not even Apple themself. The GarageBand sampler seems to be just a bad joke by a voluntary project!

The fundamental problem with all Apples native sampler formats is the fact, that file references are absolute paths and thus not interchangeble without modification. The EXS file format, for instance does not allow for editing the file paths afterwards and the user cannot even freely control where the files are located. This is a massive conceptual mistake, making it quite useless on iOS. Our importer therefore ensures seemless importing, rewriting, recompiling and validation of all samples paths on the iOS platform while the import process, so that the audio units can access it from within any host application afterwards without a problem.

 

Apple MainStage 3 on MacOS: The AutoSampler automatically creates ESX24 patches, which can be used on iOS.

 

Although, some certain procedures must be followed while importing patches created on the MacOS. This will be exhaustly documented by us. Editing the samplers native *.aupreset format on the Mac is generally quite tricky even there, because Apples provided user interface for the AUSampler is buggy since its very first release, it can crash the entire host and is extremely uncomfortable to use on the latest systems. We also planned to provide full featured sampler format editors/creators with successive releases for iOS, which are useful on a touchscreen interface, whereby the sampler unit itself will be kept as simple as possible and optimized for the audio performance.

While the other audio units from Apple have quite average (up to questionable) quality, we think, that even the AUSampler and also the AUMIDISynthesizer b.t.w., (a fully GM compatible multi-timbre 16 channels synthesizer audio unit) would extend the possibilities with audio units on the platform fundamentally and unleash some really new ones.

 

Apples native *.aupreset format for the AUSampler. Comfortably editable with the MacOS *.plist editors.

 

Creating the EXS Converter/Packager (App for MacOS)

This application project bases on a (quite old) and somewhat exotic PYTHON script, translated (rather completely rewitten) to latest SWIFT 5 code.
The python script aimed to convert EXS files to SFZ format. ^^ However, it refused to work with the latest APPLE AutoSamper/EXS24 file format because Apple has obviously changed the signatures in the resulting EXS files. It seemed to work with quite old EXS patch distributions (which basically are the original Emagic *.exs files). But only a few of the parameters were translated
correctly by the python script, if it even loaded and processed the *.exs files correctly...

The big problem with the Apple EXS24 (and the AUSampler) in common are the absolute file paths inside their patch files. This is true for both *.exs file versions and also true for Apples native AUSampler *.aupreset format. The MainStage 3 AutoSampler creates the new *.exs file format for instance. Logic Pro X usually will internally do a recursive file search, if the hardcoded links are not valid. This can lead to extreme slow loading of patches and screen locking, if the sound files were moved anyhow after their creation. So the EXS24 files basically cannot be shared for that reason, like other sampler formats. EXS is unfortunally a closed binary file format.

We went a completely different way, than just converting the *,exs files to a just more awful (*.sfz) text file format. We think, a text file format for samplers is an ancient and error-prone 'technology'. Our translation will rewrite the EXS files in the known formats on a BINARY base. This means, merely the hardcoded file locations will be rewritten and the file will be updated accordingly. Additionally the program will 'package' the complete file structure of used sound files and provide *.zip files, which then easily can be archived or distributed to and imported into iOS! While exporting and importing, the EXS files are so 2 times rewritten to reflect the correct file paths on iOS, so that the AUSampler can load these patches. On iOS everything is user access based and security restricted.

The Apple AUSampler then can successfully load it and, if succeeded, provide/export of its own native preset format (*.aupreset), which is an XML standard
file serialization, also known as the Apple native *.plist format, specialized for AudioUnits.

NOTE: Rewriting the binary file will NOT make it portable! It just must be done NEW for each purpose of usage. With each moving of the files! This means the format remains HARDCODED with its ABSOLUTE file paths. We cannot change that, as it is a fixed, proprietary format.

So an instance of the AUSampler will import the new EXS files and export them in the native .*aupreset format for further editing. This way all internal
parameters of the EXS24 will be correctly interpreted (as far as even supported by the AUSampler) and saved to disk in the new XML format. The loaded EXS
files should be instantly playable by the AUSampler, but some special parameters form the EXS24 are just not supported and thus, ignored. The XML coded paths to the linked soundfile locations can be easily changed later with either manual or automated methods.

SIDENOTE: The Apple AUSampler has a different sound engine than the EXS has. And the EXS24 is not an AudioUnit like the AUSampler, but an integrated Logic Pro X generator. Although, most of the parameters are compatible. Both samplers have a set of special features, which are not compatible and just will be ignored while the translation process. The resulting XML format then can be used to edit the sampler patches in deep details, either manually or with specialized user interfaces. Everyone can write a XML parser, that loads and writes these native AUSampler files.

 

Apples native *.aupreset file format for the AUSampler. Propperly designed XML file serialization. Easy to understand and editable by humans. Ideal for coders.

 

 

ANNOUNCING:

(( WU : WRAPPED UNITS ))

UNLEASH THE POWER OF THE HIDDEN UNITS.

 

A collection of MIDI enabled Audio Units, which expose user interfaces to iOS system included Audio Units and extend them.

iOS includes allot of useful Audio Units, but many host apps do not expose these to the user, never mind of not enhancing their functionality in any way. The result is often missing these essential cross-platform compatible Audio Units, the basics, i.e. the compander, expander, compressor, limiter, ring modulator, decimator, delay, reverb, filters and EQs and so on, which are all well known from the MacOS (GarageBand, MainStage and Logic Pro X).

So we created generic user interfaces, that wrap these included system Audio Units to expose all of their parameters to the host applications not providing such, because of the simple lack of missing a user interface to expose. (These system units are by default and probably intention parametric Audio Units without an UI on iOS). We also extended the functionality to enable direct MIDI controller assignment to the single parameters. Some of the wrapped units will even provide extra enhanced user interfaces for better usability.
(Note: The direct MIDI support is somewhat experimental, because it requires to hook functions, that are not directly supported by the inherited Audio Units.)

This collection concept may sound quite simple but required allot of research and work on our side and so each single unit extension will be available for the lowest possible price in the appstore, not for free. The collection is planned to be available as sorted packages too, later, because users may not need all the Audio Units at ones or even owning each single unit of them.

 

The complete collection includes the following 17 singe componets, which will be tested and released if ready in successive order:

 

Pack 1: Delays & Reverbs

- WU: AUDelay (classic delay effect)
- WU: AUSampleDelay (a sample offset)
- WU: Reverb (preset reverb)
- WU: Reverb2 (algorithmic reverb)

Pack 2: Distortion & Dynamics

- WU: AUDistortion (multi distortion effects)
- WU: DynamicsProcessor (multi dynamics effects)
- WU: AUPeakLimiter (peak/brickwall limiter)

Pack 3: EQ & Pitch

- WU: AUNewPitch (pitch shifter)
- WU: AUParametricEQ (single band EQ)
- WU: AUNBandEQ (10 band EQ)

Pack 4: Filters

- WU: AUBandpassFilter (single bandpass filter)
- WU: AULowPassFilter
- WU: AUHighPassFilter
- WU: AULowShelfFilter
- WU: AUHighShelfFilter

 

Pack 5: Synthesizers & Samplers (*)

- WU: AUSampler (single channel polyphonic sampler)
- WU: AUMIDISynthesizer (multitimbre/channel GM compatible synthesizer) (**)

 

(**) GM (General MIDI) compatibility and sound quality always depends on the used sound fonts.


This is an exclusive iOS (12+) release ( universal/audio unit ).

 

© 2019 digitster.com | privacy policy | terms of use