C-Language Adaptive Signal Processing Toolbox
The C-language adaptive signal processing toolbox (C-ASPT) defines and implements a set of
Application Programming Interfaces (API) for adaptive filters applications, such as echo
cancellers, active noise and vibration control, and many more. The current
release includes more than 60 filters. For each filter, APIs are defined to initialize the
filter, filter one sample or a block of samples
through the filter without updating the filter coefficients, filtering and updating the
coefficients, resetting, copying, or setting the coefficients and the internal delay lines,
getting and setting the filter properties, and resizing the filter
while keeping as much of its internal state as possible.
The current C-ASPT
release supports all the filters included in the Matlab toolbox
in addition to many other filters targeted at real-time applications.
Transversal filters are supported in Finite Impulse Response as well as Linear
Combiner configurations, the latter being important in applications such as adaptive arrays.
C-ASPT also supports recursive, lattice, and non-linear adaptive filters in addition to
single-channel and multi-channel active noise and vibration control filters. Time domain as
well as frequency domain adaptive filters are included. Most time domain filters support
sample per sample as well as block processing, and are implemented efficiently using circular
buffers without the overhead of data copying. All filters are implemented in several data
types so that filter instances with different arithmetic precision can be used in the same
application. C-ASPT is implemented in a platform-independent ANSI-C code, and therefore will run on any
platform with an ANSI-C compiler.
Using C-ASPT With Matlab
In addition to creating stand-alone executable programs using C-ASPT, it is also possible to
load the C-ASPT dynamic link library into Matlab work-space and use the ASPT filters
from within Matlab. This feature is supported in Matlab 6.5 and later. For more information
on this feature, refer to the following MathWorks article Calling a generic Dynamic Linked Library from MATLAB.
This feature, however, is a Matlab feature rather than a C-ASPT feature. Therefore, no support for
this functionality is provided by DSP Algorithms.
C-ASPT License types
Licenses for C-ASPT are currently available for object code as well as source code.
Object code licenses are available for Windows,
Linux, and Solaris platforms (please
contact us for the availability on other processors/platforms). Three different
license terms and conditions are distinguished.
It is also possible to order a single filter or a few filters under the terms and conditions of the Developer or Source Code Licenses. Refer to the C-ASPT Price List or please
contact us for more information on
- End User License, Allows you to run the library (delivered as
a dynamic link library) on a single computer, but disallows distributing applications
linked against it to third parties who do not have the library.
- Developer License, Allows you to link C-ASPT functions
(delivered as a static link library) into your applications and distribute those
applications to third parties, who might not have the library, with no extra royalties.
- Source Code License which is useful for those who need to port C-ASPT
functions to other platforms or need to modify the code for their specific needs. The source
code license has similar conditions to those of the Developer License.