Simulink is a tool for designing, simulating and analyzing dynamic systems. Its user interface allows to create complex systems by connecting blocks from a large, customizable block library. It offers tight integration with the rest of the Matlab environment and is widely used in control theory, digital signal processing, and model-based design. With the optional DSP System Toolbox, Simulink provides a powerful block set for audio DSP applications.
Matlab and Simulink are registered trademarks by The MathWorks, Inc.
Steinberg's Virtual Studio Technology (VST) is an audio effects plugin interface supported by many commercial and non-commercial plugin hosts, many of which are designed to provide low-latency real-time processing of audio data with flexible channel routing. Using VST plugins for real-time testing of an algorithm has several advantages over running the model inside Simulink. Since the model is completely compiled, it will run faster and a lower latency can be achieved. VST plugins can have any number of audio inputs and outputs, which enables also real-time testing of complex multichannel algorithms. It is also possible to distribute VST plugins for testing or demonstration purposes to people who do not have Simulink installed.
VST is a registered trademark of Steinberg Media Technologies GmbH.
An important feature of the VST plugins which are generated by the APG is the capability of data logging. Each signal which has been defined as an Access Point in the Simulink model can be logged. This means there is no restriction on sampling rate, vector size or data length. Therefore a container file format was needed to cope with this challenging requirement. The solution was to choose HDF5 for data logging.
HDF5 has its origin in the space industry, where there is a strong need to collect data of very different kinds and store them in a structured way. This is done by organizing the data in a similar manner as it is done in a file system. Data are grouped as datasets which are accessible by a path name. Each dataset can have an individual data structure. This can be a matrix, a picture or even a custom data type. There is no limit on the size of a dataset. Furthermore datasets can be decorated with attributes, which can store information of how the data have been recorded.
HDF5 files can easily be imported to the Matlab workspace, either by using the Matlab built-in functions or by using APG's logfile reading function. Furthermore, HDF5 files can be read by third-party software such as HDFView.