summaryrefslogtreecommitdiffstats
path: root/arm-fm-22k/lib_src/eas_smfdata.h
diff options
context:
space:
mode:
Diffstat (limited to 'arm-fm-22k/lib_src/eas_smfdata.h')
-rw-r--r--arm-fm-22k/lib_src/eas_smfdata.h66
1 files changed, 66 insertions, 0 deletions
diff --git a/arm-fm-22k/lib_src/eas_smfdata.h b/arm-fm-22k/lib_src/eas_smfdata.h
new file mode 100644
index 0000000..cf59cdc
--- /dev/null
+++ b/arm-fm-22k/lib_src/eas_smfdata.h
@@ -0,0 +1,66 @@
+/*----------------------------------------------------------------------------
+ *
+ * File:
+ * eas_smfdata.h
+ *
+ * Contents and purpose:
+ * SMF File Parser
+ *
+ * This file contains data definitions for the SMF parser.
+ *
+ * Copyright Sonic Network Inc. 2005
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ *----------------------------------------------------------------------------
+ * Revision Control:
+ * $Revision: 686 $
+ * $Date: 2007-05-03 14:10:54 -0700 (Thu, 03 May 2007) $
+ *----------------------------------------------------------------------------
+*/
+
+#ifndef _EAS_SMF_DATA_H
+#define _EAS_SMF_DATA_H
+
+#ifndef MAX_SMF_STREAMS
+#define MAX_SMF_STREAMS 17
+#endif
+
+/* offsets in to the SMF file */
+#define SMF_OFS_HEADER_SIZE 4
+#define SMF_OFS_FILE_TYPE 8
+#define SMF_OFS_NUM_TRACKS 10
+
+/* size of chunk info (chunk ID + chunk size) */
+#define SMF_CHUNK_INFO_SIZE 8
+
+/* 'MTrk' track chunk ID */
+#define SMF_CHUNK_TYPE_TRACK 0x4d54726bL
+
+/* some useful meta-events */
+#define SMF_META_TEXT 0x01
+#define SMF_META_COPYRIGHT 0x02
+#define SMF_META_SEQTRK_NAME 0x03
+#define SMF_META_LYRIC 0x05
+#define SMF_META_END_OF_TRACK 0x2f
+#define SMF_META_TEMPO 0x51
+#define SMF_META_TIME_SIGNATURE 0x58
+
+/* default timebase (120BPM) */
+#define SMF_DEFAULT_TIMEBASE 500000L
+
+/* value for pSMFStream->ticks to signify end of track */
+#define SMF_END_OF_TRACK 0xffffffff
+
+#endif
+