This guide is intended to help developers in creating audio objects in the Extended Audio Framework (xAF). The framework act as a gateway between the audio object and the outside world.
This guide covers the following topics:
- An overview on how audio objects interact with the framework, including the order in which the framework interacts with the audio object.
- Details on the audio object configuration in the design tool and how to set it up.
- Basic Features and APIs
- Advanced features and APIs.
- An example of a template audio object, which will include a reference implementation for all of the items mentioned above.
- An explanation of how to connect external audio objects to the framework.
- Information on the general guidelines that xAF objects should follow.
Terms and Abbreviations
Terms
- Global Tuning Tool (GTT): Global tuning tool is used to configure the audio algorithm framework seamlessly and intuitively, as well as to tune algorithm.
- Run-Time: When a signal flow is deployed and running on a target device.
- Design time: Design-time is referred when a signal flow is being designed in the GTT signal flow designer. At that point nothing is running on a target device.
- Tuning variables/Tuning parameters: These are the variables within audio objects that are modifiable through a set/parameter file change. These variables are also modifiable from GTT at runtime. For example, a channel gain value within a gain object that can be modified during a set file change is considered a tuning variable.
- State variables / State tuning parameters: These are the variables within audio objects that are modifiable at runtime from GTT or from other embedded code. These variables are not saved in a set / parameter file. For example, a channel volume value within a volume object that can be modified during runtime is considered a state variable.
- Metadata: Metadata is data provided by the object developer to GTT at design time. This data is not used at runtime. It is usually provided in the object toolbox file which is compiled only for GTT. Examples of metadata the object will send GTT are:
- Description of the object control inputs and outputs
- What processors the object is supported on
- What block sizes and sample rates the object can operate at
Abbreviations
xAF: Extendable Audio Framework | BAO: Basic Audio Object |
GTT: Global Tuning Tool | SR: Sample Rate |
SFD: Signal Flow Designer | BL: Block Length |
xTP: Extendable Tuning Protocol | VST: Virtual Studio Technology |
HU: Head Unit | AWX: AudioworX |
Requirements
This is the document that audio object developers should use as reference when creating audio objects for the xAF framework.
Req. ID | Req. Name | Description | Comment |
---|---|---|---|
CASCCGAF-210 | Developers guide to create object for xAF document |