1 2-------------------------------------------- 32019-02-28: Release 0.31 4-------------------------------------------- 5 6We are pleased to present stable release 0.31 of LibLo, the 7lightweight, easy to use implementation of the Open Sound Control 8protocol. 9 10Open Sound Control (OSC) is a protocol for communication among 11computers, sound synthesizers, and other multimedia devices that is 12designed for use over modern network transports. 13 14Changes of note since the 0.30 release include: 15 16- oscsend can write to files and stdout. 17- oscdump can write raw output. 18- Fixed parsing bug with } and [a-] patterns. 19- Support for // mattern matching operator. 20- Support for double-ENDed SLIP packets. 21- Assertions in C++ header and optional use of exceptions. 22- Fixed improper use of va_end. 23- Fix a clang compilation error. 24- Compatibility with ESP32 embedded platform. 25 26-------------------------------------------- 272019-03-03: Release 0.30 28-------------------------------------------- 29 30We are pleased to present stable release 0.30 of LibLo, the 31lightweight, easy to use implementation of the Open Sound Control 32protocol. 33 34Open Sound Control (OSC) is a protocol for communication among 35computers, sound synthesizers, and other multimedia devices that is 36designed for use over modern network transports. 37 38Changes of note since the 0.29 release include: 39 40- Functions to wait and receive on multiple servers (lo_servers_wait 41 and lo_servers_recv_noblock) 42- Improvements to the CMake build system. 43- Remove premake4 files and rely on CMake for building on Windows. 44- Fix memory leak in lo_server_recv_raw_stream. 45- C++ wrapper: Fix memory leak on string allocation. 46- oscdump: Disable line buffering in Windows to support MSYS2 output. 47 48-------------------------------------------- 492017-08-11: Release 0.29 50-------------------------------------------- 51 52We are pleased to present stable release 0.29 of LibLo, the 53lightweight, easy to use implementation of the Open Sound Control 54protocol. 55 56Open Sound Control (OSC) is a protocol for communication among 57computers, sound synthesizers, and other multimedia devices that is 58designed for use over modern network transports. 59 60Changes of note since the 0.28 release include: 61 62- Several fixes for C++ headers 63- Addition of function to remove methods by lo_method identifier 64 (lo_server_del_lo_method) 65- Several fixes for Windows 66- Use of Win32 threads on Windows instead of pthreads 67- Addition of a secondary CMake-based build system 68- Fix a bug in SLIP decoder 69- Support run-time specification of maximum message size 70- Remove limit on outgoing TCP message size 71- Make oscdump use unbuffered output by default 72- Add timetags to oscdump output 73- Add a utility to play back oscdump output 74 75-------------------------------------------- 762014-01-27: Release 0.28 77-------------------------------------------- 78 79We are pleased to present stable release 0.28 of LibLo, the 80lightweight, easy to use implementation of the Open Sound Control 81protocol. 82 83Open Sound Control (OSC) is a protocol for communication among 84computers, sound synthesizers, and other multimedia devices that is 85designed for use over modern network transports. 86 87Changes since the 0.28rc release candidate include: 88 89- Fixed build for Windows (MingW, MSVC) and Android platforms 90- Fixed an implicit cast issue in C++ bindings for lo::ServerThread 91- Documentation, small fixes 92- Added a function to get library version information (lo_version) 93 94-------------------------------------------- 952013-11-24: Release candidate 0.28rc 96-------------------------------------------- 97 98This is a release candidate 0.28rc of LibLo, the lightweight, easy to 99use implementation of the Open Sound Control protocol. 100 101Open Sound Control (OSC) is a protocol for communication among 102computers, sound synthesizers, and other multimedia devices that is 103designed for use over modern network transports. 104 105This is mainly a bugfix release due to some deal breakers that 106unfortunately made it through to the 0.27 release. Additionally, this 107is the first release to include a modern C++11 object-oriented wrapper 108for the LibLo API. Please test! 109 110Important bug fixes: 111 112- Fixed checking of vararg markers on 64-bit systems 113- Fixed hang in TCP blocking test 114- Several potential bugs prevented through static analysis 115 116Additional changes: 117 118- Add function lo_bundle_get_timestamp() 119- Add C++11 wrapper, `lo_cpp.h', and test program 120- Support for a few more build tools: clang/clang++, ccache 121 122-------------------------------------------- 1232013-05-22: Release 0.27 124-------------------------------------------- 125 126We are pleased to present stable release 0.27 of LibLo, the 127lightweight, easy to use implementation of the Open Sound Control 128protocol. 129 130Open Sound Control (OSC) is a protocol for communication among 131computers, sound synthesizers, and other multimedia devices that is 132designed for use over modern network transports. 133 134This is the first release in quite some time, and includes several 135major features and improvements since the 0.26 release, particularly 136related to bundles, multicast, and TCP support. Features include: 137 138- Support for sending and receiving nested bundles, including 139 ref-counted memory handling for bundled messages. 140- Support for multicast in oscdump and oscsend tools. 141- Callbacks for bundle handling. 142- Select desired network interface for multicast. 143- Fix blocking semantics of lo_server_wait() / lo_server_recv(). 144- Make inclusion of threading-related code optional. 145- Basic compilation script for Android. 146- Allow to optionally disable server dispatch queueing at runtime. 147 (In this case messages are dispatched immediately even if they are 148 timestamped for later.) 149- Support bidirectional use of TCP ports using lo_send_from(). 150- Add SLIP protocol support for packetization when sending and 151 receiving with TCP. 152- Allow to enable the TCP_NODELAY flag on TCP sockets. 153- Support for specifying server parameters via URL string, and also 154 support for URL strings in the oscsend and oscdump tools. 155- As a result of the above, support for TCP and Unix sockets in the 156 oscsend and oscdump tools. 157 158Bug fixes include: 159 160- Fixed timestamp serialization. 161- Fixed blob padding and char-type padding. 162- Close sockets properly under Windows. 163- Fix multicast under Windows. 164- Fix TCP reception blocking behaviour, such that a message can span 165 multiple calls to recv(). 166- Correct printing of blob bytes. 167- Only call getnameinfo() when requested. 168 169This release contains contributions by: 170 171- Camille Troillard 172- Hanspeter Portner 173- Jamie Bullock 174- Joseph Malloch 175- Pete Goodeve 176- rjvbertin 177- Mok Keith 178- David Robillard 179- John McFerran 180- Artem Baguinski 181- William Light 182 183Please download it at SourceForge: 184http://downloads.sourceforge.net/liblo/liblo-0.27.tar.gz 185 186Or read the online documentation: 187http://liblo.sourceforge.net 188 189The git repository can be found at the following mirrors: 190- git://liblo.git.sourceforge.net/gitroot/liblo/liblo 191- git://gitorious.org/liblo/mainline.git 192- https://github.com/radarsat1/liblo.git 193 194Stephen Sinclair 195 LibLo maintainer 196 197-------------------------------------------- 1982009-03-07: Release 0.26 199-------------------------------------------- 200 201We are pleased to present stable release 0.26 of LibLo, the 202lightweight, easy to use implementation of the Open Sound Control 203protocol. 204 205Open Sound Control (OSC) is a protocol for communication among 206computers, sound synthesizers, and other multimedia devices that is 207designed for use over modern network transports. 208 209This release marks the first release of LibLo under the LGPL license 210version 2.1 or later, allowing the use of LibLo in non-GPL 211applications as long as it is dynamically linked such that the LibLo 212portion of the application can remain freely modifiable. We hope that 213this will allow compatibility with a wider variety of audio 214applications and encourage the use of open protocols even in 215commercial software. (This change was motivated by receiving a number 216of requests for special permission for the use of LibLo in non-GPL 217software.) 218 219This release also introduces some new features, such as the ability to 220use custom transports, proper TCP multi-session support, access to 221bundle timestamp information, and wider C compiler compatibility. 222 223Details: 224- Change license to LGPL 2.1 or later. 225- Add return codes to all functions that may fail. 226- Fix memory leaks in lo_address_new_from_url(), dispatch_method(), 227 lo_url_get_path() 228- Move lo_arg_size(), lo_get_path(), lo_arg_host/network_endian() back 229 to lo_lowlevel.h. 230- Expose the lo_server_dispatch_data() function as public, making it 231 possible to react to messages contained in an arbitrary block of 232 memory. (i.e., allows use with custom transport protocols) 233- Get protocol by ID number. 234- Keep TCP sessions open, and automatically track multiple open 235 sessions in a data structure. 236- Allow access to bundle timestamp information. 237- Fix bug in lo_timetag_diff(). 238- Change the value of LO_TT_IMMEDIATE to correspond with the OSC 239 specification. 240- Enable SO_REUSEPORT when initializing a multicast server. 241- Update the "soname" describing API/ABI compatibility. 242- Update documentation and various bug fixes. 243- Compiles under MSVC, avoiding the use of gcc-isms when not using 244 gcc. 245 246 247Contributions by: 248- Mike Wozniewski 249- Dominic Sacré 250- Alex McLean 251- Steve Harris 252- Kentaro Fukuchi 253- Koichiro Ozaki 254- Stephen Sinclair 255 256Please feel free to download it at SourceForge: 257http://downloads.sourceforge.net/liblo/liblo-0.26.tar.gz 258 259Or read the online documentation: 260http://liblo.sourceforge.net 261 262Stephen Sinclair 263 LibLo maintainer 264 265 266-------------------------------------------- 2672008-07-18: Release 0.25 268-------------------------------------------- 269 270We are pleased to present stable release 0.25 of LibLo, the 271lightweight, easy to use implementation of the Open Sound Control 272protocol. 273 274Open Sound Control (OSC) is a protocol for communication among 275computers, sound synthesizers, and other multimedia devices that is 276optimized for modern networking technology. 277 278This release brings several new features, including support for 279broadcast messages, multicast UDP groups, message deserialisation, and 280input validation. 281 282Details: 283- Check for buffer overflows 284- Added oscsend and oscdump command-line tools 285- Added lo_message_add_varargs() for variable-argument C functions. 286- Added lo_bundle_free_messages() 287- Bug fix for pattern matching. (curly braces) 288- Broadcast support 289- Added lo_message_deserialise() 290- Multicast support 291- Fixes for compiling on OS X 292- General bug fixes 293 294Contributions by: 295- Camille Troillard 296- Chris Hixon 297- Kentaro Fukuchi 298- Dave Robillard 299- Nicolas Humfrey 300- Stephen Sinclair 301 302Please feel free to download it at SourceForge: 303http://downloads.sourceforge.net/liblo/liblo-0.25.tar.gz 304 305Or read the online documentation: 306http://liblo.sourceforge.net 307 308Stephen Sinclair 309 LibLo maintainer 310 311 312-------------------------------------------- 3132007-03-21: Release 0.24 314-------------------------------------------- 315 316About: 317LibLO is a lightweight library for handling the sending and receiving of 318messages according to the Open Sound Control (OSC) protocol on POSIX 319systems. 320 321Changes: 322lo_server_get_protocol() and lo_address_get_protocol() were added. Tests 323for lo_address_get_* were added to the test tool. Several compiler 324warnings were fixed. The address for package bug reports was changed. 325lo_blob_new() was changed to take const void*. The getnameinfo() method of 326getting hostname is disabled when IPv6 is disabled. A Unix server socket is 327now unlinked when it is closed. The size of a Unix socket path is checked 328properly. 329 330 331-------------------------------------------- 3322006-01-27: Release 0.23 333-------------------------------------------- 334 335Liblo, the Lite OSC library, is an implementation of the Open Sound 336Control protocol for POSIX systems*. It is written in ANSI C99 and 337released under the GNU General Public Licence. It is designed to make 338developing OSC applictions as easy as possible. 339 340http://liblo.sourceforge.net/ 341 342 343nick. 344 345 346Changes: 347 * New Maintainer (me!) 348 * Fixed pthread resource leak, when stopping server 349 * IPv6 is now disabled by default 350 * Fixed bug where sockets weren't closed when replying to messages 351 * Split off resolve_address into seperate create_socket function 352 * Only creates new sockets when needed 353 * Added lo_send_from, lo_send_message_from and lo_send_bundle_from 354 355 356-------------------------------------------- 3572005-09-09: Release 0.22 358-------------------------------------------- 359 360Liblo, the Lite OSC library, is an implementation of the Open Sound 361Control protocol for POSIX systems*. It is written in ANSI C99 and 362released under the GNU General Public Licence. It is designed to make 363developing OSC applictions as easy as possible. 364 365http://plugin.org.uk/liblo/ 366 367- Steve 368 369Changes: 370 Fixes for socket leaking from Martin Habets, Dave Robillard and 371 Jesse Chappell 372 373 Fix for IPV6 numerical address parsing from Dave Robillard 374 375 Fix for char handling on bigendian machines from Martin Habets 376 (and others) 377 378 New lo_server(thread)_del_method() from Martin Habets 379 380 Endianess and arithmetic fixes for bundle timestamps from Topher 381 Cyll - bundle delivery is still not accurate though 382 383 Patch to optioanlly disable IPV6 support from Lorenz Schori 384 385* and MS Windows, under some environment or other 386 387 388-------------------------------------------- 3892005-03-03: Release 0.18 390-------------------------------------------- 391 392http://www.plugin.org.uk/liblo/releases/liblo-0.18.tar.gz 393 394This is bugfix release and fixes a critical bug in 0.17 that bites when 395trying to connect multiple clients to one server. All users of 0.17 should 396upgrade as soon as possible. 397 398Liblo is an implementation of the Open Sound Control protocol for POSIX 399systems. It is released under the GNU General Public Licence. 400 401http://www.plugin.org.uk/liblo/ 402http://www.cnmat.berkeley.edu/OpenSoundControl/ 403 404- Steve 405 406 407-------------------------------------------- 4082005-02-24: Release 0.17 409-------------------------------------------- 410 411Liblo, the Lite OSC library, is an implementation of the Open Sound 412Control [1] protocol for POSIX systems. It is written in ANSI C99 and 413released under the GNU General Public Licence. It is designed to make 414developing OSC applictions as easy as possible. 415 416http://plugin.org.uk/liblo/ 417 418Changes: 419 Patch from Jesse Chappell to fix memory leak 420 Ability to directly reply to the sender of a UDP message 421 Preliminary support for the OSC method enumeration scheme 422 423- Steve 424 425[1] http://www.cnmat.berkeley.edu/OpenSoundControl/ 426 427 428-------------------------------------------- 4292005-01-26: Release 0.16 430-------------------------------------------- 431 432Liblo, the Lite OSC library, is an implementation of the Open Sound 433Control [1] protocol for POSIX systems. It is written in ANSI C and 434released under the GNU General Public Licence. It is designed to make 435developing OSC applictions as easy as possible. 436 437http://plugin.org.uk/liblo/ 438 439Changes: 440 Patch from Dave Robillard that fixes bundles of more than 4 messages. 441 Some const char * for C++ compatibility. 442 Added a source field to messages that represents the source from 443 which a message was received. Useful in method handlers to 444 determine which client sent the message. 445 Added patch from Walco van Loon and Pix that fixes a bug in the 446 hostname detection fallback code 447 448- Steve 449 450[1] http://www.cnmat.berkeley.edu/OpenSoundControl/ 451 452 453-------------------------------------------- 4542004-10-19: Release 0.13 455-------------------------------------------- 456 457liblo is an implementation of the Open Sound Control[1] protocol for POSIX 458systems. It is written in ANSI C and released under the GNU General Public 459Licence. It is designed to make developing OSC applictions as easy as 460possible. 461 462http://plugin.org.uk/liblo/ 463 464This release adds Mac OSX compatibility fixes from Taybin Rutkin, a 465memory leak fix from Jesse Chappell and methods and examples to allow 466server polling from exisitng threads from Sean Bolton. Some legacy 467compatobility code has been removed, but this should not affect anyone. 468 469Documentation has been updated to reflect the changes. 470[1] http://www.cnmat.berkeley.edu/OpenSoundControl/ [website is currently 471 down] 472 473-------------------------------------------- 4742004-08-19: Release 0.9 475-------------------------------------------- 476 477liblo is an implementation of the Open Sound Control[1] protocol for POSIX 478systems. It is released under the GPL. It is written in ANSI C. 479 480http://plugin.org.uk/liblo/ 481 482This release adds: (over the last stable release, 0.5) 483* Nonblocking mesage dispatcher (useful for single GUI-thread 484applications, eg Qt, GTK+) 485* bugfixes to URL handling (0.6 - 0.8 broke DSSI) 486* UNIX domain (FIFO) socket server/client support 487* TCP domain socket server/client support 488* A method to stop server threads 489* Better regression tests (testlo) 490* Fixed memory leaks 491* More documentation 492* Dynamic library building fixes 493 494- Steve 495 496[1] http://www.cnmat.berkeley.edu/OpenSoundControl/ 497 498 499-------------------------------------------- 5002004-03-29: Release 0.5 501-------------------------------------------- 502 503liblo is a easy to use OSC (Open Sound Control) implementation written in C. 504 505http://plugin.org.uk/liblo/ 506 507See the website for docs and example code. 508 509Changes since last release: 510 bugfixes 511 OSC URL handling 512 better IPV6 support 513 real documentation 514 better example code 515 support for all the types listed in the specification 516 automatic port number selection for servers 517 lo_target type has been deprecated, use lo_address now 518 some buffer overrun checks in lo_send() 519 520This version is not binary compatible with the previous release. 521 522- Steve 523