root/trunk/libjdkmidi/trunk/docs/libjdkmidi.txt

Revision 3, 3.0 kB (checked in by jeffk@…, 2 years ago)

libjdkmidi imported into new svn repository

Line 
1                                   libjdkmidi
2
3   Copyright 1986-2004 by J.D. Koftinoff Software, Ltd.
4   jeffk@jdkoftinoff.com
5
6   Released under the GPL: May 1, 2004 Please see the file COPYING
7
8Quick Start
9
10   (for gcc toolchains: linux,macosx,cygwin,mingw32,etc)
11
12 cd build/gnu
13 make tests
14 ./jdkmidi_test_multitrack ../../songs/jeffswedding.mid | less
15 ./jdkmidi_rewrite_midifile ../../songs/jeffswedding.mid out.mid
16 ./jdkmidi_test_show out.mid
17 make clean
18 less ../tests/jdkmidi_rewrite_midifile.cpp
19
20Directory List
21
22 include/jdkmidi
23         : Header files for libjdkmidi
24
25 src
26         : Source files for libjdkmidi
27
28 tests
29         : Source files for simple test programs
30
31 build/gnu
32         : Place to do builds in for gnu gcc
33
34 build/vc6
35         : MS Visual C++ 6 projects
36
37 build/macosx
38         : Mac OS X xcode project added
39
40 songs
41         : Place I keep some MIDI files in for testing
42
43 docs
44         : Place to keep some documentation, autogenerated from doxygen
45
46Usage with your own projects
47
48 Add the include directory:
49     -I /libjdkmidi/include
50
51 Add the library directory:
52     -L /libjdkmidi/lib
53
54 Link with libjdkmidi:
55     -l jdkmidi
56
57 All symbols are in the c++ namespace jdkmidi
58
59History
60
61   This library was originally a collection of utility functions for MIDI
62   written in C back in 1986 for the Atari ST computer. Since then it has
63   evolved into a fairly powerful C++ MIDI Library including:
64
65     * MIDI parsing
66     * MIDI Show Control message creation and handling
67     * Standard MIDI File type 0 and type 1 reading and writing
68     * Timestamped MIDI message and System Exclusive encapsulation
69     * Efficient MIDI Track objects for sequencing
70     * MIDI Track objects for editing MIDI events
71     * MIDI message process chains
72     * Containers for multiple MIDI Tracks with iterators
73     * MIDI Sequencer core for sequencing and triggering GUI events
74     * MIDI Driver abstractions for I/O and sequencing
75     * MIDI Driver implementation for Win32 for I/O and sequencing
76     * Tempo calculations
77     * MIDI Matrix to count note on's and off's and hold pedals to avoid
78       stuck notes and all-notes-off problems when merging midi streams
79     * SMPTE management and calculations
80
81   For more information, please contact Jeff Koftinoff
82   <jeffk@jdkoftinoff.com>
83
84CHANGELOG
85
86 1986: MIDI parsing and message handling added, in C
87 1989: Simple MIDI File Parsing added
88 1989: Ported to run on Macintosh with Think C
89 1989: Converted to old style C++ with GCC for Atari ST
90 1990: Ported to work on Borland C++ 3.1 for DOS MIDI Sequencers
91 1992 - 1996: Added MIDI Show Control classes
92 1997-1998: Added more robust MIDI Track classes, WIN32 support
93 2004: Dusted off, moved into namespace jdkmidi and cleaned up a little
94 2004 May 1: Released under the GNU GENERAL PUBLIC LICENSE
95 2004 May 26: Some clean ups, warning fixes, mac os x project file added,
96      visual c++ project file added, jdkmidi_rewrite_midifile added
97 2005 Oct 14: Some more warning fixes, fixed dangerous seq( seq ) in constructor.
98      visual c++ 2005 project file added.
Note: See TracBrowser for help on using the browser.