Basic Audio Signal Processing Library

Dependents:   unzen_sample_nucleo_f746 skeleton_unzen_nucleo_f746 ifmag_noise_canceller synthesizer_f746

オーディオ信号処理用のライブラリです。

mbed-dspのフィルタ群向けに作ったクラス・ラッパーのほか、以下のクラスを用意しています。

  • ヒステリシス
  • sin/cosオシレータ
  • リミッター

クラスは全て名前空間amakusaに含まれます。

amakusa.h

Committer:
shorie
Date:
2016-12-11
Revision:
0:058daa59980d
Child:
1:0a37bce4f985

File content as of revision 0:058daa59980d:

/**
* @file amakusa.h
* @brief Main include file of the audio_signal 
*/

#ifndef _AMAKUSA_H_
#define _AMAKUSA_H_

#include "oscsincos.h"
#include "limitterlinatan.h"

namespace amakusa
{
        /**
        * @brief vector copy
        * @param src A source vector address
        * @param dst A destination vector address 
        * @param count Number of the element in the vector
        */
    void copy( float src[], float dst[], unsigned int count );
        /**
        * @brief Negate the src
        * @param src A source vector address
        * @param dst A destination vector address 
        * @param count Number of the element in the vector
        */
    void neg( float src[], float dst[], unsigned int count );
    
    void add( float srcA[], float srcB[], float dst[], unsigned int count );
    void add( float srcA[], float srcB, float dst[], unsigned int count );
    void sub( float srcA[], float srcB[], float dst[], unsigned int count );
    void sub( float srcA[], float srcB, float dst[], unsigned int count );
    void sub( float srcA, float srcB[], float dst[], unsigned int count );
    
    void mul( float srcA[], float srcB[], float dst[], unsigned int count );
    void mul( float srcA[], float srcB, float dst[], unsigned int count );

}

#endif