Integrated program of 4 different kinds of application programs for processing sound signal. 4種類のサウンド信号処理を統合したプログラム.

Dependencies:   F746_GUI F746_SAI_IO FrequencyResponseDrawer SD_PlayerSkeleton UIT_FFT_Real

Committer:
MikamiUitOpen
Date:
Mon Jan 09 05:51:16 2017 +0000
Revision:
6:bff188326d4d
Parent:
5:0e14065569ea
Child:
7:2735829e6657
7: Some libraries are updated.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MikamiUitOpen 0:224dccbc4edd 1 //----------------------------------------------------------------
MikamiUitOpen 0:224dccbc4edd 2 // My リアルタイム サウンド処理マシン
MikamiUitOpen 0:224dccbc4edd 3 // 1. グラフィックイコライザ付き SD オーディオプレーヤー
MikamiUitOpen 0:224dccbc4edd 4 // 2. 遮断周波数可変 LPF/HPF
MikamiUitOpen 0:224dccbc4edd 5 // 3. エコー/周波数変換
MikamiUitOpen 0:224dccbc4edd 6 // 4. スペクトログラム
MikamiUitOpen 0:224dccbc4edd 7 //
MikamiUitOpen 5:0e14065569ea 8 // 音響出力:モノラル(L+R を左右チャンネルに出力)
MikamiUitOpen 0:224dccbc4edd 9 //
MikamiUitOpen 6:bff188326d4d 10 //  このプログラムでは 2017/01/09 の時点で,"BSP_DISCO_F746NG" を除く
MikamiUitOpen 6:bff188326d4d 11 // ライブラリのリビジョンは最新のものに更新されている.
MikamiUitOpen 6:bff188326d4d 12 //  "BSP_DISCO_F746NG" については,他のライブラリとの関係でコンパイル
MikamiUitOpen 6:bff188326d4d 13 // エラーが発生しない最新版(rev.5)に更新されている.rev.6 と rev.7 で
MikamiUitOpen 6:bff188326d4d 14 // はコンパイルエラーが発生する.
MikamiUitOpen 6:bff188326d4d 15 //
MikamiUitOpen 6:bff188326d4d 16 // 2017/01/09, Copyright (c) 2017 MIKAMI, Naoki
MikamiUitOpen 0:224dccbc4edd 17 //----------------------------------------------------------------
MikamiUitOpen 0:224dccbc4edd 18
MikamiUitOpen 0:224dccbc4edd 19 #include "GraphicEqulizerMain.hpp"
MikamiUitOpen 0:224dccbc4edd 20 #include "VariableIirFilterMain.hpp"
MikamiUitOpen 0:224dccbc4edd 21 #include "EchoFrShifterMain.hpp"
MikamiUitOpen 0:224dccbc4edd 22 #include "SpectrogramMain.hpp"
MikamiUitOpen 0:224dccbc4edd 23
MikamiUitOpen 0:224dccbc4edd 24 using namespace Mikami;
MikamiUitOpen 0:224dccbc4edd 25
MikamiUitOpen 0:224dccbc4edd 26 int main()
MikamiUitOpen 0:224dccbc4edd 27 {
MikamiUitOpen 0:224dccbc4edd 28 Label title(240, 16, "My Realtime Sound Processing Machine",
MikamiUitOpen 0:224dccbc4edd 29 Label::CENTER, Font16);
MikamiUitOpen 0:224dccbc4edd 30 const string MENU[] = {"Graphic Equalizer",
MikamiUitOpen 0:224dccbc4edd 31 "Variable LPF/HPF",
MikamiUitOpen 0:224dccbc4edd 32 "Echo/Voice Changer",
MikamiUitOpen 0:224dccbc4edd 33 "Spectrogram"};
MikamiUitOpen 0:224dccbc4edd 34 ButtonGroup menuButtons(
MikamiUitOpen 0:224dccbc4edd 35 120, 50, 240, 50, 4, MENU, 0, 5, 1, -1, Font16);
MikamiUitOpen 0:224dccbc4edd 36
MikamiUitOpen 0:224dccbc4edd 37 int num = 0;
MikamiUitOpen 0:224dccbc4edd 38 while (!menuButtons.GetTouchedNumber(num)) {}
MikamiUitOpen 0:224dccbc4edd 39 menuButtons.EraseAll();
MikamiUitOpen 0:224dccbc4edd 40 title.Draw("");
MikamiUitOpen 0:224dccbc4edd 41
MikamiUitOpen 0:224dccbc4edd 42 switch (num)
MikamiUitOpen 0:224dccbc4edd 43 {
MikamiUitOpen 0:224dccbc4edd 44 // グラフィックイコライザ
MikamiUitOpen 0:224dccbc4edd 45 case 0: GraphicEqualizerMain();
MikamiUitOpen 0:224dccbc4edd 46 break;
MikamiUitOpen 0:224dccbc4edd 47 // 遮断周波数可変 LPF/HPF
MikamiUitOpen 0:224dccbc4edd 48 case 1: VariableIirFilterMain();
MikamiUitOpen 0:224dccbc4edd 49 break;
MikamiUitOpen 0:224dccbc4edd 50 // エコー/周波数変換
MikamiUitOpen 0:224dccbc4edd 51 case 2: EchoFrShifter();
MikamiUitOpen 0:224dccbc4edd 52 break;
MikamiUitOpen 0:224dccbc4edd 53 // スペクトログラム
MikamiUitOpen 0:224dccbc4edd 54 case 3: Spectrogram();
MikamiUitOpen 0:224dccbc4edd 55 break;
MikamiUitOpen 0:224dccbc4edd 56 }
MikamiUitOpen 0:224dccbc4edd 57
MikamiUitOpen 0:224dccbc4edd 58 while (true);
MikamiUitOpen 0:224dccbc4edd 59 }