-
Notifications
You must be signed in to change notification settings - Fork 268
/
release.txt
147 lines (121 loc) · 7.26 KB
/
release.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
RtMidi - a set of C++ classes that provides a common API for realtime MIDI input/output across Linux (ALSA & JACK), Macintosh OS X (CoreMIDI & JACK), Windows (Multimedia Library & UWP), Web MIDI, iOS and Android.
By Gary P. Scavone, 2003-2023 (with help from many others, especially Stephen Sinclair!)
v.6.0.0: (3 August 2023)
- run "git log 5.0.0..HEAD" to see commits since last release
- new Android API (thanks to YellowLabrador!)
- new Windows UWP API support (thanks to Masamichi Hosoda!)
- various build system updates and code efficiencies
v.5.0.0: (16 November 2021)
- see git history for complete list of changes
- new Web MIDI API (thanks to Atsushi Eno!)
- iOS support
- new setBufferSize() function
- fixes for WinMM, Jack
- added C API test program
- now requiring C++11
- build system updates
- midiprobe probes all compiled APIs
- various build system updates and code efficiencies
v.4.0.0: (17 April 2019)
- see git history for complete list of changes
- updates to test programs to clarify port numbering
- new C API wrapper
- new functions to get API names
- miscellaneous sysex fixes in Jack and ALSA
- new setPortName() method (for Jack and ALSA)
- new setClientName() method (for ALSA)
- various build system updates and code efficiencies
v.3.0.0: (31 August 2017)
- see git history for complete list of changes
- new sendMessage() function that does not use std::vector
- various std::string updates, including use of UTF8 for port names
- fixes for the MIDI queue
- various build system updates and code efficiencies
v2.1.1: (11 February 2016)
- updates to automake routines
- added C API (thanks to Atsushi Eno!)
- JACK ringbuffer allocation change
- OSX virtual port closing fix
- OSX sysex sending fix
- moved Windows kernel streaming code to other branch because it is incomplete
- miscellaneous small fixes
v2.1.0: (30 March 2014)
- renamed RtError class to RtMidiError and embedded it in RtMidi.h (and deleted RtError.h)
- fix to CoreMIDI implementation to support dynamic port changes
- removed global ALSA sequencer objects because they were not thread safe (Martin Koegler)
- fix for ALSA timing ignore flag (Devin Anderson)
- fix for ALSA incorrect use of snd_seq_create_port() function (Tobias Schlemmer)
- fix for international character support in CoreMIDI (Martin Finke)
- fix for unicode conversion in WinMM (Dan Wilcox)
- added custom error hook that allows the client to capture an RtMidi error outside of the RtMidi code (Pavel Mogilevskiy)
- added RtMidi::isPortOpen function (Pavel Mogilevskiy)
- updated OS-X sysex sending mechanism to use normal message sending, which fixes a problem where virtual ports didn't receive sysex messages
- Windows update to avoid lockups when shutting down while sending/receiving sysex messages (ptarabbia)
- OS-X fix to avoid empty messages in callbacks when ignoring sysex messages and split sysexes are received (codepainters)
- ALSA openPort fix to better distinguish sender and receiver (Russell Smyth)
- Windows Kernel Streaming support removed because it was uncompilable and incomplete
v2.0.1: (26 July 2012)
- small fixes for problems reported by Chris Arndt (scoping, preprocessor, and include)
v2.0.0: (18 June 2012)
- revised structure to support multiple simultaneous compiled APIs
- revised ALSA client hierarchy so subsequent instances share same client (thanks to Dan Wilcox)
- added beta Windows kernel streaming support (thanks to Sebastien Alaiwan)
- updates to compile as a shared library or dll
- updated license
- various memory-leak fixes (thanks to Sebastien Alaiwan and Martin Koegler)
- fix for continue sysex problem (thanks to Luc Deschenaux)
- removed SGI (IRIX) support
v1.0.15: (11 August 2011)
- updates for wide character support in Windows
- stopped using std::queue and implemented internal MIDI ring buffer (for thread safety ... thanks to Michael Behrman)
- removal of the setQueueSizeLimit() function ... queue size limit now an optional arguement to constructor
v1.0.14: (17 April 2011)
- bug fix to Jack MIDI support (thanks to Alexander Svetalkin and Pedro Lopez-Cabanillas)
v1.0.13: (7 April 2011)
- updated RtError.h to the same version as in RtAudio
- new Jack MIDI support in Linux (thanks to Alexander Svetalkin)
v1.0.12: (17 February 2011)
- Windows 64-bit pointer fixes (thanks to Ward Kockelkorn)
- removed possible exceptions from getPortName() functions
- changed sysex sends in OS-X to use MIDISendSysex() function (thanks to Casey Tucker)
- bug fixes to time code parsing in OS-X and ALSA (thanks to Greg)
- added MSW project file to build as library (into lib/ directory ... thanks to Jason Champion)
v1.0.11: (29 January 2010)
- added CoreServices/CoreServices.h include for OS-X 10.6 and gcc4.2 compile (thanks to Jon McCormack)
- various increment optimizations (thanks to Paul Dean)
- fixed incorrectly located snd_seq_close() function in ALSA API (thanks to Pedro Lopez-Cabanillas)
- updates to Windows sysex code to better deal with possible delivery problems (thanks to Bastiaan Verreijt)
v1.0.10: (3 June 2009)
- fix adding timestamp to OS-X sendMessage() function (thanks to John Dey)
v1.0.9: (30 April 2009)
- added #ifdef AVOID_TIMESTAMPING to conditionally compile support for event timestamping of ALSA sequencer events. This is useful for programs not needing timestamps, saving valuable system resources.
- updated functionality in OSX_CORE for getting driver name (thanks to Casey Tucker)
v1.0.8: (29 January 2009)
- bug fixes for concatenating segmented sysex messages in ALSA (thanks to Christoph Eckert)
- update to ALSA sequencer port enumeration (thanks to Pedro Lopez-Cabonillas)
- bug fixes for concatenating segmented sysex messages in OS-X (thanks to Emmanuel Litzroth)
- added functionality for naming clients (thanks to Pedro Lopez-Cabonillas and Axel Schmidt)
- bug fix in Windows when receiving sysex messages if the ignore flag was set (thanks to Pedro Lopez-Cabonillas)
v1.0.7: (7 December 2007)
- configure and Makefile changes for MinGW
- renamed midiinfo.cpp to midiprobe.cpp and updated VC++ project/workspace
v1.0.6: (9 March 2006)
- bug fix for timestamp problem in ALSA (thanks to Pedro Lopez-Cabanillas)
v1.0.5: (18 November 2005)
- added optional port name to openVirtualPort() functions
- fixed UNICODE problem in Windows getting device names (thanks Eduardo Coutinho!).
- fixed bug in Windows with respect to getting Sysex data (thanks Jean-Baptiste Berruchon!)
v1.0.4: (14 October 2005)
- added check for status byte == 0xF8 if ignoring timing messages
- changed pthread attribute to SCHED_OTHER (from SCHED_RR) to avoid thread problem when realtime cababilities are not enabled.
- now using ALSA sequencer time stamp information (thanks to Pedro Lopez-Cabanillas)
- fixed memory leak in ALSA implementation
- now concatenate segmented sysex messages in ALSA
v1.0.3: (22 November 2004)
- added common pure virtual functions to RtMidi abstract base class
v1.0.2: (21 September 2004)
- added warning messages to openVirtualPort() functions in Windows and Irix (where it can't be implemented)
v1.0.1: (20 September 2004)
- changed ALSA preprocessor definition to __LINUX_ALSASEQ__
v1.0.0: (17 September 2004)
- first release of new independent class with both input and output functionality