aboutsummaryrefslogtreecommitdiff
path: root/src/adlmidi_xmi2mid.h
diff options
context:
space:
mode:
authorWohlstand <admin@wohlnet.ru>2017-02-15 16:19:08 +0300
committerWohlstand <admin@wohlnet.ru>2017-02-15 16:19:08 +0300
commit9cd892706bf782c8a0e47731bd71e629d505c5cf (patch)
tree5d83247581e0b9a513be0ea38135afa3c94b440f /src/adlmidi_xmi2mid.h
parentba0b0c4d5c1e8c8926c6838dddb0f6abdbccd9f2 (diff)
downloadlibADLMIDI-9cd892706bf782c8a0e47731bd71e629d505c5cf.tar.gz
libADLMIDI-9cd892706bf782c8a0e47731bd71e629d505c5cf.tar.bz2
libADLMIDI-9cd892706bf782c8a0e47731bd71e629d505c5cf.zip
Fixed logarithmic volumes flag and added support for XMI and MUS formats
MUS playing was totally invalid: the MUS data are completely different from regular MIDI data. Now is added a right converter which results a MIDI data which can be played correctly.
Diffstat (limited to 'src/adlmidi_xmi2mid.h')
-rw-r--r--src/adlmidi_xmi2mid.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/src/adlmidi_xmi2mid.h b/src/adlmidi_xmi2mid.h
new file mode 100644
index 0000000..523e8d7
--- /dev/null
+++ b/src/adlmidi_xmi2mid.h
@@ -0,0 +1,51 @@
+/*
+ * XMIDI: Miles XMIDI to MID Library Header
+ *
+ * Copyright (C) 2001 Ryan Nunn
+ * Copyright (C) 2014-2016 Bret Curtis
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+/* XMIDI Converter */
+
+#ifndef XMIDILIB_H
+#define XMIDILIB_H
+
+#include <stdint.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+/* Conversion types for Midi files */
+#define XMIDI_CONVERT_NOCONVERSION 0x00
+#define XMIDI_CONVERT_MT32_TO_GM 0x01
+#define XMIDI_CONVERT_MT32_TO_GS 0x02
+#define XMIDI_CONVERT_MT32_TO_GS127 0x03 /* This one is broken, don't use */
+#define XMIDI_CONVERT_MT32_TO_GS127DRUM 0x04 /* This one is broken, don't use */
+#define XMIDI_CONVERT_GS127_TO_GS 0x05
+
+int AdlMidi_xmi2midi(uint8_t *in, uint32_t insize,
+ uint8_t **out, uint32_t *outsize,
+ uint32_t convert_type);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* XMIDILIB_H */