Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed SerialTxRxIntr DSP_MultirateLinearphase
GraphicEqualizer/GraphicEqualizer.cpp@0:b3c94b253ae5, 2022-02-25 (annotated)
- Committer:
- MikamiUitOpen
- Date:
- Fri Feb 25 02:18:16 2022 +0000
- Revision:
- 0:b3c94b253ae5
1
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| MikamiUitOpen | 0:b3c94b253ae5 | 1 | //-------------------------------------------------------------- |
| MikamiUitOpen | 0:b3c94b253ae5 | 2 | // グラフィックイコライザのクラス |
| MikamiUitOpen | 0:b3c94b253ae5 | 3 | // フィルらの係数を設定しない場合は,出力は出ない |
| MikamiUitOpen | 0:b3c94b253ae5 | 4 | // |
| MikamiUitOpen | 0:b3c94b253ae5 | 5 | // 2022/02/19, Copyright (c) 2022 MIKAMI, Naoki |
| MikamiUitOpen | 0:b3c94b253ae5 | 6 | //-------------------------------------------------------------- |
| MikamiUitOpen | 0:b3c94b253ae5 | 7 | |
| MikamiUitOpen | 0:b3c94b253ae5 | 8 | #include "GraphicEqualizer.hpp" |
| MikamiUitOpen | 0:b3c94b253ae5 | 9 | |
| MikamiUitOpen | 0:b3c94b253ae5 | 10 | namespace Mikami |
| MikamiUitOpen | 0:b3c94b253ae5 | 11 | { |
| MikamiUitOpen | 0:b3c94b253ae5 | 12 | // コンストラクタ |
| MikamiUitOpen | 0:b3c94b253ae5 | 13 | GrEqualizer::GrEqualizer(int bands, float fs, float qVal) |
| MikamiUitOpen | 0:b3c94b253ae5 | 14 | : BANDS_(bands), Q_VAL_(qVal), |
| MikamiUitOpen | 0:b3c94b253ae5 | 15 | biquad_(bands), f0_(bands) |
| MikamiUitOpen | 0:b3c94b253ae5 | 16 | { |
| MikamiUitOpen | 0:b3c94b253ae5 | 17 | for (int n=0; n<BANDS_; n++) f0_[n] = 62.5f*powf(2, n); |
| MikamiUitOpen | 0:b3c94b253ae5 | 18 | SetOff(); |
| MikamiUitOpen | 0:b3c94b253ae5 | 19 | Validate(); |
| MikamiUitOpen | 0:b3c94b253ae5 | 20 | } |
| MikamiUitOpen | 0:b3c94b253ae5 | 21 | |
| MikamiUitOpen | 0:b3c94b253ae5 | 22 | // グラフィック・イコライザの実行 |
| MikamiUitOpen | 0:b3c94b253ae5 | 23 | float GrEqualizer::Filtering(float xn) |
| MikamiUitOpen | 0:b3c94b253ae5 | 24 | { |
| MikamiUitOpen | 0:b3c94b253ae5 | 25 | float yn = xn; |
| MikamiUitOpen | 0:b3c94b253ae5 | 26 | for (int n=0; n<BANDS_; n++) |
| MikamiUitOpen | 0:b3c94b253ae5 | 27 | yn = biquad_[n].Execute(yn); |
| MikamiUitOpen | 0:b3c94b253ae5 | 28 | return yn; |
| MikamiUitOpen | 0:b3c94b253ae5 | 29 | } |
| MikamiUitOpen | 0:b3c94b253ae5 | 30 | } |