OpenMIDIProject

Home | News | Forums | Documentations | FAQ | Links | Contributors | Author

Japanese | English | Chinese


MIDI data creating and editing library "MIDIDataLibrary" (DLL)

MIDIDataLibrary is free, open source library for creating and editing MIDI data. It enables you to create MIDI data, load / save Sekaiju sequence file (*.skj), load Early Cakewalk sequence file (*.wrk), load / save Cherry sequence file (*.chy), load / save standard MIDI file (*.mid), load / save MIDICSV file (*.csv), load Mabinogi MML file (*.mmml), and create, delete, modify MIDI tracks, and create, delete, modify MIDI events including meta event and system exclusive event. This library provides essential functions to edit each element of the MIDI data.

For time base, both TPQN base (resolution from 1 to 32767 [ticks / quarter note]) and SMPTE base (24, 25, 29.97, 30 [frames / sec]) are available. For SMF format, format0, format1, and format2 are available. The time base and SMF format can be converted at any time.

This library has functions to convert time code to [millisec] or convert [millisec] to time code by analyzing tempo events. This library also has functions to convert time code to [measure:beat:tick] or convert [measure:beat:tick] to time code by analyzing time signature events. Also, this library has functions to get or set title, copyright, comment, start time, end time and so on.

/* create MIDI data including only quarter note 'C'. */
#include <stdio.h>
#include <tchar.h>
#include <MIDIData.h>
int _tmain () {
	MIDITrack* pMIDITrack;
	MIDIData* pMIDIData = MIDIData_Create (MIDIDATA_FORMAT0, 1, MIDIDATA_TPQNBASE, 120); 
	if (pMIDIData == NULL) {
		_tprintf (_T("MIDIData_Create failed.\n"));
		return 0;
	}
	pMIDITrack = MIDIData_GetFirstTrack (pMIDIData); /* get first track */
	MIDITrack_InsertNote (pMIDITrack, 0, 0, 60, 100, 120); /* insert 'C'(Key=60 Vel=100) */
	MIDITrack_InsertEndofTrack (pMIDITrack, 120); /* insert end-of-track */
	MIDIData_SaveAsSMF (pMIDIData, _T("Test1.mid")); /* Save to standard MIDI file */
	MIDIData_Delete (pMIDIData); /* delete MIDI data */
	pMIDIData = NULL;
	return 1;
}
Name OS FileName Release day Size
Windows 7 / 8.1 / 10 / 11 MIDIDataLib8.0.zip 2024/01/21 3.34MB
Windows 7 / 8.1 / 10 / 11 MIDIDataLib7.2.zip 2022/11/06 1.76MB
Windows 7 / 8.1 / 10 / 11 MIDIDataLib7.1.zip 2021/09/26 1.76MB
Windows 7 / 8.1 / 10 / 11 MIDIDataLib7.0.zip 2021/08/15 1.75MB
Windows XP / Vista / 7 / 8.1 / 10 MIDIDataLib4.1.zip 2020/11/29 1.59MB
Windows XP / Vista / 7 / 8.1 / 10 MIDIDataLib4.0.zip 2020/01/05 1.59MB
Windows XP / Vista / 7 / 8.1 / 10 MIDIDataLib3.9.zip 2019/11/17 1.59MB
Windows XP / Vista / 7 / 8.1 / 10 MIDIDataLib3.8.zip 2019/05/19 1.59MB
Windows XP / Vista / 7 / 8.1 / 10 MIDIDataLib3.7.zip 2019/01/03 1.57MB
Windows XP / Vista / 7 / 8.1 / 10 MIDIDataLib3.6.zip 2018/04/15 1.70MB
Windows XP / Vista / 7 / 8.1 / 10 MIDIDataLib3.5.zip 2017/12/17 640KB
Windows XP / Vista / 7 / 8.1 / 10 MIDIDataLib3.4.zip 2016/05/08 636KB
Windows XP / Vista / 7 / 8.1 / 10 MIDIDataLib3.3.zip 2016/04/17 636KB
Windows XP / Vista / 7 / 8.1 MIDIDataLib3.2.zip 2015/05/04 636KB
Windows XP / Vista / 7 / 8.1 MIDIDataLib3.1.zip 2014/05/25 600KB
Windows XP / Vista / 7 / 8.1 MIDIDataLib3.0.zip 2014/04/29 576KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.9.zip 2013/11/10 416KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.8.zip 2013/05/05 492KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.7.zip 2012/09/30 492KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.6.zip 2012/02/19 492KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.5.zip 2012/01/20 416KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.4.zip 2012/01/10 416KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.3.zip 2010/07/30 415KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.2.zip 2010/02/28 396KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.1.zip 2009/12/13 396KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.0.zip 2009/07/14 396KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.9.zip 2009/04/07 340KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.8.zip 2009/01/17 396KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.7.zip 2008/12/27 384KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.6.zip 2008/12/20 384KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.5.zip 2008/12/13 384KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.4.zip 2008/11/03 320KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.3.zip 2008/10/07 288KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.2.zip 2008/09/20 288KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.1.zip 2008/08/16 288KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.0.zip 2008/07/26 285KB
Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib0.9.zip 2008/03/31 268KB


(C)2000-2024 kuzu All rights reserved.