* -------------------------------------------------------------------
*/
-#ifndef WAV_H
-#define WAV_H
+#ifndef WAVREADER_H
+#define WAVREADER_H
-#include <stdio.h>
-
-class WavWriter {
-public:
- WavWriter(const char *filename, int sampleRate, int bitsPerSample, int channels);
- ~WavWriter();
-
- void writeData(const unsigned char* data, int length);
-
-private:
- void writeString(const char *str);
- void writeInt32(int value);
- void writeInt16(int value);
+#ifdef __cplusplus
+extern "C" {
+#endif
- void writeHeader(int length);
+void* wav_read_open(const char *filename);
+void wav_read_close(void* obj);
- FILE *wav;
- int dataLength;
+int wav_get_header(void* obj, int* format, int* channels, int* sample_rate, int* bits_per_sample, unsigned int* data_length);
+int wav_read_data(void* obj, unsigned char* data, unsigned int length);
- int sampleRate;
- int bitsPerSample;
- int channels;
-};
+#ifdef __cplusplus
+}
+#endif
#endif