Demo program for library named SD_PlayerSkeleton of SD card player skeleton. SD カードプレーヤのための骨組みとして使うためのライブラリ SD_PlayerSkeleton の使用例.このプログラムについては,CQ出版社インターフェース誌 2018年7月号で解説している.
Dependencies: F746_GUI F746_SAI_IO SD_PlayerSkeleton
MyClass/VolumeCtrl.cpp
- Committer:
- MikamiUitOpen
- Date:
- 2016-10-02
- Revision:
- 2:cf42e62a97dc
- Parent:
- 0:bf9be2110092
- Child:
- 3:470141dd31f4
File content as of revision 2:cf42e62a97dc:
//------------------------------------------------- // 音量の調整のためのクラス // SD_PlayerSkeleton の派生クラス // // 2016/10/02, Copyright (c) 2016 MIKAMI, Naoki //------------------------------------------------- #include "VolumeCtrl.hpp" namespace Mikami { // 音量の調整 void VolumeCtrl::Modefy() { if (myBar_.Slide()) volume_ = myBar_.GetValue(); } // 1フレーム分の信号処理の実行 void VolumeCtrl::SignalProcessing() { // 1フレーム分のステレオデータを SD から読み込みモノラルにする sdReader_.ReadAndToMono(sn_); while (!mySai_.IsXferred()) {} // データの転送が終わるまで待つ //-------------------------------------------------------------- // 1フレーム分の処理を行い,その結果を出力する // 音響信号の出力:左右チャンネルに同じものを出力 for (int n=0; n<FRAME_SIZE_; n++) { int16_t data = volume_*sn_[n]; mySai_.Output(data, 0); // そのまま出力 } //-------------------------------------------------------------- mySai_.ResetXferred(); // 次のデータ転送に備える } // 曲の再生中に表示する void VolumeCtrl::Display() { string name = GetFileName(); name = name.erase(name.find(".")); Label musicTitle(207, 80, name, Label::CENTER, Font16); ctrl_.Draw(); myBar_.Redraw(); } }