SPKT
Dependencies: F746_GUI SD_PlayerSkeleton F746_SAI_IO
MyClass/VolumeCtrl.cpp@0:aa3fc5ad02f7, 2019-06-04 (annotated)
- Committer:
- phungductung
- Date:
- Tue Jun 04 09:08:29 2019 +0000
- Revision:
- 0:aa3fc5ad02f7
SPKT
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
phungductung | 0:aa3fc5ad02f7 | 1 | //------------------------------------------------- |
phungductung | 0:aa3fc5ad02f7 | 2 | // 音量の調整のためのクラス |
phungductung | 0:aa3fc5ad02f7 | 3 | // SD_PlayerSkeleton の派生クラス |
phungductung | 0:aa3fc5ad02f7 | 4 | // |
phungductung | 0:aa3fc5ad02f7 | 5 | // 2017/03/22, Copyright (c) 2017 MIKAMI, Naoki |
phungductung | 0:aa3fc5ad02f7 | 6 | //------------------------------------------------- |
phungductung | 0:aa3fc5ad02f7 | 7 | |
phungductung | 0:aa3fc5ad02f7 | 8 | #include "VolumeCtrl.hpp" |
phungductung | 0:aa3fc5ad02f7 | 9 | |
phungductung | 0:aa3fc5ad02f7 | 10 | namespace Mikami |
phungductung | 0:aa3fc5ad02f7 | 11 | { |
phungductung | 0:aa3fc5ad02f7 | 12 | // 1ブロック分の信号処理の実行 |
phungductung | 0:aa3fc5ad02f7 | 13 | void VolumeCtrl::SignalProcessing() |
phungductung | 0:aa3fc5ad02f7 | 14 | { |
phungductung | 0:aa3fc5ad02f7 | 15 | // 1ブロック分のステレオデータを SD から読み込みモノラルにする |
phungductung | 0:aa3fc5ad02f7 | 16 | sdReader_.ReadAndToMono(sn_); |
phungductung | 0:aa3fc5ad02f7 | 17 | |
phungductung | 0:aa3fc5ad02f7 | 18 | while (!mySai_.IsXferred()) {} // データの転送が終わるまで待つ |
phungductung | 0:aa3fc5ad02f7 | 19 | //-------------------------------------------------------------- |
phungductung | 0:aa3fc5ad02f7 | 20 | // 1ブロック分の処理を行い,その結果を出力する |
phungductung | 0:aa3fc5ad02f7 | 21 | // 音響信号の出力:左右チャンネルに同じものを出力 |
phungductung | 0:aa3fc5ad02f7 | 22 | for (int n=0; n<BUFF_SIZE_; n++) |
phungductung | 0:aa3fc5ad02f7 | 23 | { |
phungductung | 0:aa3fc5ad02f7 | 24 | int16_t data = volume_*sn_[n]; // 出力の音量を変える |
phungductung | 0:aa3fc5ad02f7 | 25 | mySai_.Output(data, data); |
phungductung | 0:aa3fc5ad02f7 | 26 | } |
phungductung | 0:aa3fc5ad02f7 | 27 | //-------------------------------------------------------------- |
phungductung | 0:aa3fc5ad02f7 | 28 | } |
phungductung | 0:aa3fc5ad02f7 | 29 | |
phungductung | 0:aa3fc5ad02f7 | 30 | // 音量の調整 |
phungductung | 0:aa3fc5ad02f7 | 31 | void VolumeCtrl::Modefy() |
phungductung | 0:aa3fc5ad02f7 | 32 | { |
phungductung | 0:aa3fc5ad02f7 | 33 | if (myBar_.Slide()) |
phungductung | 0:aa3fc5ad02f7 | 34 | volume_ = myBar_.GetValue(); |
phungductung | 0:aa3fc5ad02f7 | 35 | } |
phungductung | 0:aa3fc5ad02f7 | 36 | |
phungductung | 0:aa3fc5ad02f7 | 37 | // 曲の再生時の表示 |
phungductung | 0:aa3fc5ad02f7 | 38 | void VolumeCtrl::Display() |
phungductung | 0:aa3fc5ad02f7 | 39 | { |
phungductung | 0:aa3fc5ad02f7 | 40 | Label musicTitle(207, 80, GetFileNameNoExt(), Label::CENTER, Font16); |
phungductung | 0:aa3fc5ad02f7 | 41 | ctrl_.Draw(); |
phungductung | 0:aa3fc5ad02f7 | 42 | myBar_.Redraw(); |
phungductung | 0:aa3fc5ad02f7 | 43 | } |
phungductung | 0:aa3fc5ad02f7 | 44 | } |