SPKT
Dependencies: SDFileSystem_Warning_Fixed
Dependents: DISCO-F746_WAV_PLAYER WAV
Diff: SD_WavReader.cpp
- Revision:
- 11:c33c711a5712
- Parent:
- 0:d310bb78455d
- Child:
- 16:299cc1052baa
diff -r 303d6435a09b -r c33c711a5712 SD_WavReader.cpp --- a/SD_WavReader.cpp Mon Jan 16 00:41:10 2017 +0000 +++ b/SD_WavReader.cpp Wed Mar 15 23:45:48 2017 +0000 @@ -1,10 +1,10 @@ //-------------------------------------------------------------- // SD_WavReader class // SD カードの *.wav ファイルの内容を読み出す -// 以下のフォーマット以外は扱わない +// 以下の型式のファイルのみ扱う // PCM,16 ビットステレオ,標本化周波数 44.1 kHz // -// 2016/06/17, Copyright (c) 2016 MIKAMI, Naoki +// 2017/03/09, Copyright (c) 2017 MIKAMI, Naoki //-------------------------------------------------------------- #include "SD_WavReader.hpp" @@ -33,15 +33,15 @@ } - // ファイルのヘッダ (RIFFxxxxWAVEfm ) 読み込み - // 戻り値: *.wav で,16 ビットステレオ, - // 標本化周波数:44.1 kHz の場合 true + // ファイルのヘッダ "RIFFxxxxWAVEfmt " の部分の読み込み + // 戻り値:16 ビットステレオ,標本化周波数が 44.1 kHz の場合 true bool SD_WavReader::IsWavFile() { char data[17]; - fread(data, 1, 16, fp_); + fread(data, 1, 16, fp_); // 16 バイト分を読み込む string strRead = ""; for (int n=0; n<4; n++) strRead += data[n]; + // 間の 4 文字はチェックしない for (int n=8; n<16; n++) strRead += data[n]; // "RIFF", "WAVE", "fmt " が存在することを確認