added data structures
added audio support added rfid support added spi support
This commit is contained in:
40
ext/audio/WaveHeader.h
Normal file
40
ext/audio/WaveHeader.h
Normal file
@@ -0,0 +1,40 @@
|
||||
#ifndef WAVE_HEADER_H
|
||||
#define WAVE_HEADER_H
|
||||
|
||||
namespace Wave {
|
||||
|
||||
enum AudioFormat {
|
||||
PCM = 0x01,
|
||||
IMA_ADPCM = 0x11,
|
||||
MP3 = 0x55,
|
||||
};
|
||||
|
||||
struct Header {
|
||||
|
||||
uint32_t chunkID;
|
||||
uint32_t chunkSize; // file-size - 8
|
||||
char format[4] = {'W', 'A', 'V', 'E'};
|
||||
|
||||
char subChunk1ID[4] = {'f', 'm', 't', ' '};
|
||||
uint32_t subChunk1Size = 20;
|
||||
|
||||
uint16_t audioFormat = AudioFormat::PCM;
|
||||
uint16_t numChannels = 1;
|
||||
uint32_t sampleRate = 22050;
|
||||
uint32_t byteRate = sampleRate * 256 / 505;
|
||||
uint16_t blockAlign = 0x100;
|
||||
uint16_t bitsPerSample = 8;
|
||||
|
||||
uint16_t byteExtraData = 2;
|
||||
uint16_t extraData = 505; // samples-per-block. see byteRate
|
||||
|
||||
char subChunk2ID[4] = {'f', 'a', 'c', 't'};
|
||||
uint32_t subChunk2Size = 4;
|
||||
uint32_t numOfSamples = 0xFFFFFFFF; // play forever
|
||||
|
||||
char subChunk3ID[4] = {'d', 'a', 't', 'a'};
|
||||
uint32_t subChunk3Size = 0xFFFFFFFF; // file-size - 60
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user