"cxxdasp" : Digital Audio Signal Processing library for C++
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.

README.md

cxxdasp

"cxxdasp" : Digital Audio Signal Processing library for C++

Features

  • Specialized for some audio processing
    • Sample format conversion
    • Resampling (Sample rate conversion)
    • IIR filter (Biquad filter and Linear Trapezoidal Integrated State Variable Filter)
    • One dimensional FFT (requires corresponding backend FFT libraries)
  • Small and simple C++ template based library
  • SIMD optimized (SSE, NEON)
  • Android NDK fully supported

Supported platforms

This library requires C++11 compatible compiler.

I have tested on these platforms listed below:

  • Linux (Ubuntu 14.4 x86_64)
    • gcc 4.8
    • clang 3.4
  • QEMU-Linux (arm, aarch64)
    • gcc 4.8
  • OSX 10.9 (x86_64)
    • clang 3.4
  • Windows (x86_64)
    • Visual Studio 2013
  • Android (armeabi, armeabi-v7, armeabi-v7-hard, arm64-v8a, x86, x86_64, mips (*1), mips64(*1))
    • android-ndk-r9d (gcc 4.8, clang) (*2)
    • android-ndk-r10c (gcc 4.9, clang) (*2)
    • android-ndk-r12

(*1) No special optimization is provided. Just can be compiled and not tested. (*2) llvm-libc++ or gnustl is requred to build test applications. (Because gmock requires complete STL implementation. However cxxdasp library is compatible with stlport, llvm-libc++ and gnustl.)

Latest version

  • Version 0.6.5 (October 8, 2016)

Documentation

See Wiki.

License

See LICENSE for full of the license text.

Copyright (C) 2014 Haruki Hasegawa

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Notes

You also have to check dependent library/software licenses.

Dependent libraries

Single-precision FFT backend

Double-precision FFT backend

Misc.

Dependent or Related softwares