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, delete, modify MIDI data, import and export Sekaiju sequence file (*.skj), Cherry sequence file (*.chy), standard MIDI file (*.mid), and MIDICSV file (*.csv), 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
■MIDIDataLibrary3.4 Windows XP / Vista / 7 / 8.1 / 10 MIDIDataLib3.4.zip 2016/05/08 636KB
■MIDIDataLibrary3.3 Windows XP / Vista / 7 / 8.1 / 10 MIDIDataLib3.3.zip 2016/04/17 636KB
■MIDIDataLibrary3.2 Windows XP / Vista / 7 / 8.1 MIDIDataLib3.2.zip 2015/05/04 636KB
■MIDIDataLibrary3.1 Windows XP / Vista / 7 / 8.1 MIDIDataLib3.1.zip 2014/05/25 600KB
■MIDIDataLibrary3.0 Windows XP / Vista / 7 / 8.1 MIDIDataLib3.0.zip 2014/04/29 576KB
■MIDIDataLibrary2.9 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.9.zip 2013/11/10 416KB
■MIDIDataLibrary2.8 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.8.zip 2013/05/05 492KB
■MIDIDataLibrary2.7 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.7.zip 2012/09/30 492KB
■MIDIDataLibrary2.6 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.6.zip 2012/02/19 492KB
■MIDIDataLibrary2.5 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.5.zip 2012/01/20 416KB
■MIDIDataLibrary2.4 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.4.zip 2012/01/10 416KB
■MIDIDataLibrary2.3 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.3.zip 2010/07/30 415KB
■MIDIDataLibrary2.2 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.2.zip 2010/02/28 396KB
■MIDIDataLibrary2.1 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.1.zip 2009/12/13 396KB
■MIDIDataLibrary2.0 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib2.0.zip 2009/07/14 396KB
■MIDIDataLibrary1.9 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.9.zip 2009/04/07 340KB
■MIDIDataLibrary1.8 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.8.zip 2009/01/17 396KB
■MIDIDataLibrary1.7 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.7.zip 2008/12/27 384KB
■MIDIDataLibrary1.6 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.6.zip 2008/12/20 384KB
■MIDIDataLibrary1.5 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.5.zip 2008/12/13 384KB
■MIDIDataLibrary1.4 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.4.zip 2008/11/03 320KB
■MIDIDataLibrary1.3 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.3.zip 2008/10/07 288KB
■MIDIDataLibrary1.2 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.2.zip 2008/09/20 288KB
■MIDIDataLibrary1.1 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.1.zip 2008/08/16 288KB
■MIDIDataLibrary1.0 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib1.0.zip 2008/07/26 285KB
■MIDIDataLibrary0.9 Windows 95 / 98 / ME / 2000 / XP / Vista / 7 MIDIDataLib0.9.zip 2008/03/31 268KB


(C)2002-2017 kuzu / openmidiproject OSDN