Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of mbed-os-example-mbed5-blinky by
Diff: DuerOS-Light-SDK-v1.1.0/duer-os-light/external/speex/wavfmt/wavfmt.h
- Revision:
- 47:9e361da97763
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/DuerOS-Light-SDK-v1.1.0/duer-os-light/external/speex/wavfmt/wavfmt.h Tue Jul 18 16:54:45 2017 +0800
@@ -0,0 +1,83 @@
+#ifndef WAVFMT_H
+#define WAVFMT_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+typedef struct {
+ char chunkID[4];
+ long chunkSize;
+} ChunkHeader;
+
+
+#define RiffID "RIFF" /* chunk ID for RIFF Chunk */
+#define RIFF_FORMAT "WAVE"
+
+typedef struct {
+ char chunkID[4]; //'RIFF'
+ long chunkSize;
+ char RiffFmt[4]; //'WAVE'
+} RiffChunk;
+
+
+
+#define WAVE_FORMAT_PCM 0X01
+#define WAVE_CHANNEL_MONO 1
+#define WAVE_CHANNEL_STEREO 2
+
+
+
+#define OFFSET_FMT_CHK sizeof(RiffChunk)
+#define FormatID "fmt " /* chunkID for Format Chunk. NOTE: There is a space at the end of this ID. */
+
+typedef struct {
+ char chunkID[4];
+ long chunkSize;
+ short wFormatTag;
+ unsigned short wChannels;
+ unsigned long dwSamplesPerSec;
+ unsigned long dwAvgBytesPerSec;
+ unsigned short wBlockAlign;
+ unsigned short wBitsPerSample;
+ /* Note: there may be additional fields here, depending upon wFormatTag. */
+
+} FormatChunk;
+
+
+#define OFFSET_DATA_CHK (OFFSET_FMT_CHK + sizeof(FormatChunk))
+#define DataID "data" /* chunk ID for data Chunk */
+
+typedef struct {
+ char chunkID[4];
+ long chunkSize;
+
+ unsigned char waveformData[];
+} DataChunk;
+
+
+#define ListID "list" /* chunk ID for list Chunk */
+
+typedef struct {
+ char chunkID[4]; /* 'list' */
+ long chunkSize; /* includes the Type ID below */
+ char typeID[]; /* 'adtl' */
+} ListHeader;
+
+
+#define WAVE_HEADER_SIZE (OFFSET_DATA_CHK + sizeof(DataChunk))
+
+
+int wavfmt_remove_header(FILE *pFile);
+int wavfmt_add_riff_chunk(FILE *pFile, long size);
+int wavfmt_add_fmt_chunk(FILE *pFile, unsigned short wChannels, unsigned long dwSamplesPerSec, unsigned long dwAvgBytesPerSec, unsigned short wBitsPerSample);
+int wavfmt_add_data_chunk_header(FILE *pFile, long size);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#endif
