Expression System

for Audio Weaver™

Extend your Audio Weaver™ system
with a powerful C-like language


Easily create and adjust complex data processing expressions within an Audio Weaver system

Crowded patch is simplified with Expression System

Speed Up

Update expressions on target during runtime without changing the Audio Weaver system

Worklow is sped up with Expression System
A Closer Look


Schematic Overview

System Integration

Expression System Integration

You can place multiple instances of the Expression System module within an Audio Weaver system. The Expression System Editor, a standalone desktop application, enables you to write expressions.

Once the system is up and running on a target, be it native (PC) or any HW target, the expressions can be uploaded to the target via the Audio Weaver server.

A built-in compiler conducts a thorough check for undefined behaviour to ensure the target's stability and safety.

Furthermore, the Expression System Editor offers the possibility to be integrated into a tuning tool that controls the entire Audio Weaver system.

Play Video

Check out our Explainer Video
for an in-depth Look

Get In Touch

Request a Demo

The Expression System is being used in several customer projects and has been integrated into various hardware platforms.

The Expression System is now available for evaluation purposes, free of charge! If you are interested in using the Expression System, please send us a request. We will come back to you with a download link and installation instructions.

We also provide workshops to showcase the capabilities of the Expression System and help you set it up on your machine. We welcome your feedback on how we can enhance the Expression System.

* Required Information

By clicking Send Request, you agree to our Data Privacy Policy.

Let Us Help

Common Questions

What is the Expression System?

The Expression System in Audio Weaver is a 3rd party module designed for real-time processing of mainly control signal data. It employs a simple string-based structure that can be edited in a language-like manner and features fundamental C-like mathematical operations.

This system boasts low CPU usage and is both memory and thread safe, with the ability to be modified at runtime. Additionally, it offers fixed memory allocation at runtime, ensuring that it does not dynamically expand and helps maintain stability.

By defining your own functions, you can reuse them across various parts of your patch. With the aid of built-in operators and expressions, you can construct logic and perform data processing that would be difficult or impossible to achieve with pure Audio Weaver.

Moreover, the expressions can be updated on the target during runtime, thereby reducing compile time and enhancing flexibility in the tuning process.

The Expression System is mainly designed for processing control rate signals.

Nevertheless it can also be applied to any other signal within the Audio Weaver patch.

All targets supported by Audio Weaver can be supported by the Expression System.

Special targets can be supported on demand.

Memory consumption depends on your system design. You can set a memory limit for every Expression System module.

Functions are based on native code for a specific target. The compiled code is optimised for the specific target. Therefore concrete MIPS depend on the target and the size of the code. In general, the Expression System introduces only small overhead in comparison to native AWE routines.

Since Expression System is mainly used for control rate signals, the overhead is negligible. Expressions can often be written more efficiently in code than by patching - overall it's likely to save processing power.

The Expression System Module works with all available Audio Weaver versions. This includes the Standard, Pro and ST editions of Audio Weaver.

Try to use the custom function definition capabilities of the Expression System. If that is not sufficient, we appreciate your suggestions for a new feature.

Furthermore, the Expression System ist under constant development and we still have plenty of ideas that we plan to implement. The next version may already provide what you are looking for.

The compiler inside the Editor analyses the code and checks for potential errors that would be caused by structures like an infinite loop. It declines the uploading process and warns the user.

Liability for contents

The contents of our pages have been created with the utmost care. However, we cannot guarantee the accuracy, completeness and timeliness of the content. As a service provider, we are responsible for our own content on these pages in accordance with § 7 paragraph 1 TMG under German law. According to §§ 8 to 10 TMG, however, we are not obligated as a service provider to monitor transmitted or stored third-party information or to investigate circumstances that indicate illegal activity. Obligations to remove or block the use of information under the general laws remain unaffected. However, liability in this regard is only possible from the point in time at which a concrete infringement of the law becomes known. If we become aware of any such infringements, we will remove the relevant content immediately.

Liability for links

Our offer contains links to external websites of third parties, on whose contents we have no influence. Therefore, we cannot assume any liability for these external contents. The respective provider or operator of the pages is always responsible for the content of the linked pages. The linked pages were checked for possible legal violations at the time of linking. Illegal contents were not recognizable at the time of linking. However, a permanent control of the contents of the linked pages is not reasonable without concrete evidence of a violation of the law. If we become aware of any infringements, we will remove such links immediately.

Data protection

The use of contact data published within the framework of the imprint obligation by third parties for the purpose of sending advertising and information material not expressly requested is hereby expressly prohibited. The operators of the pages expressly reserve the right to take legal action in the event of the unsolicited sending of advertising information, such as spam mails.

Data Privacy Policy

Our website may be used without entering personal information. Different rules may apply to certain services on our site, however, and are explained separately below. We collect personal information from you (e.g. name, address, email address, telephone number, etc.) in accordance with the provisions of German data protection statutes. Information is considered personal if it can be associated exclusively to a specific natural person. The legal framework for data protection may be found in the German Federal Data Protection Act (BDSG) and the Telemedia Act (TMG). The provisions below serve to provide information as to the manner, extent and purpose for collecting, using and processing personal information by the provider.

Impulse Audio Lab GmbH
Poccistraße 11
80336 München

+49 (0)89 72 05 94 94

Please be aware that data transfer via the internet is subject to security risks and, therefore, complete protection against third-party access to transferred data cannot be ensured.

Server Data

For technical reasons, data such as the following, which your internet browser transmits to us or to our web space provider (so called server log files), is collected:
- type and version of the browser you use
- operating system
- websites that linked you to our site (referrer URL)
- websites that you visit
- date and time of your visit
- your Internet Protocol (IP) address.
This anonymous data is stored separately from any personal information you may have provided, thereby making it impossible to connect it to any particular person. The data is used for statistical purposes in order to improve our website and services.

Contacting Us

On our website we offer you the opportunity to contact us, either by email and/or by using a contact form. In such event, information provided by the user is stored for the purpose of facilitating communications with the user. No data is transferred to third parties. Nor is any of this information matched to any information that may be collected by other components of our website.

Publication of vacancy announcements / job applications

We electronically collect and process your application data for the purpose of completing the application process. If your application results in the conclusion of an employment contract, the data collected from you may be stored in your personnel file for purposes of normal organizational and administrative processes in compliance with appropriate legal requirements.
Upon rejection of your application, data you have provided is automatically deleted two months after notification of rejection. This does not apply in such instances where, due to legal requirements (such as the burden of proof obligation stipulated in the Equal Treatment Act) a longer storage period is necessitated or when you expressly agreed to have your data stored for a longer period in our database of prospective applicants.


On the basis of the Federal Data Protection Act, you may contact us at no cost if you have questions relating to the collection, processing or use of your personal information, if you wish to request the correction, blocking or deletion of the same, or if you wish to cancel explicitly granted consent. Please note that you have the right to have incorrect data corrected or to have personal data deleted, where such claim is not barred by any legal obligation to retain this data.

Sample Data Privacy Policy Statement provided by the Law Offices of Weiß & Partner