diff wave.h @ 407:c3abc4ada43d

Add support for logging YM2612 channels to WAVE files
author Mike Pavone <pavone@retrodev.com>
date Sun, 16 Jun 2013 17:57:57 -0700
parents
children 140af5509ce7
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/wave.h	Sun Jun 16 17:57:57 2013 -0700
@@ -0,0 +1,38 @@
+#ifndef WAVE_H_
+#define WAVE_H_
+
+#include <stdint.h>
+#include <stdio.h>
+
+#pragma pack(push, 1)
+
+typedef struct {
+	char     id[4];
+	uint32_t size;
+	char     format[4];
+} riff_chunk;
+
+typedef struct {
+	char     id[4];
+	uint32_t size;
+} riff_sub_chunk;
+
+typedef struct {
+	riff_chunk     chunk;
+	riff_sub_chunk format_header;
+	uint16_t       audio_format;
+	uint16_t       num_channels;
+	uint32_t       sample_rate;
+	uint32_t       byte_rate;
+	uint16_t       block_align;
+	uint16_t       bits_per_sample;
+	riff_sub_chunk data_header;
+} wave_header;
+
+#pragma pack(pop)
+
+int wave_init(FILE * f, uint32_t sample_rate, uint16_t bits_per_sample, uint16_t num_channels);
+int wave_finalize(FILE * f);
+
+#endif //WAVE_H_
+