"Fossies" - the Fresh Open Source Software Archive

Member "audacity-minsrc-2.3.2/lib-src/portmidi/CHANGELOG.txt" (28 Aug 2018, 9494 Bytes) of package /linux/misc/audacity-minsrc-2.3.2.tar.xz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 /* CHANGELOG FOR PORTMIDI
    2  *
    3  * 19Oct09 Roger Dannenberg
    4  * - Changes dynamic library names from portmidi_d to portmidi to
    5  *   be backward-compatible with programs expecting a library by
    6  *   the old name.
    7  *
    8  * 04Oct09 Roger Dannenberg
    9  * - Converted to using Cmake.
   10  * - Renamed static and dynamic library files to portmidi_s and portmidi_d
   11  * - Eliminated VC9 and VC8 files (went back to simply test.vcproj, etc.,
   12  *   use Cmake to switch from the provided VC9 files to VC8 or other)
   13  * - Many small changes to prepare for 64-bit architectures (but only 
   14  *   tested on 32-bit machines)
   15  *
   16  * 16Jun09 Roger Dannenberg
   17  * - Started using Microsoft Visual C++ Version 9 (Express). Converted
   18  * all *-VC9.vcproj file to *.vcproj and renamed old project files to 
   19  * *-VC8.proj. Previously, output from VC9 went to special VC9 files,
   20  * that breaks any program or script looking for output in release or
   21  * debug files, so now both compiler version output to the same folders.
   22  * Now, debug version uses static linking with debug DLL runtime, and 
   23  * release version uses static linking with statically linked runtime.
   24  * Converted to Inno Setup and worked on scripts to make things build
   25  * properly, especially pmdefaults.
   26  *
   27  * 02Jan09 Roger Dannenberg
   28  * - Created Java interface and wrote PmDefaults application to set
   29  *   values for Pm_GetDefaultInputDeviceID() and 
   30  *   Pm_GetDefaultOutputDeviceID(). Other fixes.
   31  *
   32  * 19Jun08 Roger Dannenberg and Austin Sung
   33  * - Removed USE_DLL_FOR_CLEANUP -- Windows 2000 through Vista seem to be
   34  *   fixed now, and can recover if MIDI ports are left open
   35  * - Various other minor patches
   36  *
   37  * 17Jan07 Roger Dannenberg
   38  * - Lots more help for Common Lisp user in pm_cl
   39  * - Minor fix to eliminate a compiler warning
   40  * - Went back to single library in OS X for both portmidi and porttime
   41  *
   42  * 16Jan07 Roger Dannenberg
   43  * - OOPS! fixed bug where short messages all had zero data
   44  * - Makefile.osx static library build now makes universal (i386 + ppc)
   45  *    binaries
   46  *
   47  * 15Jan07 Roger Dannenberg
   48  *  - multiple rewrites of sysex handling code to take care of 
   49  *     error-handling, embedded messages, message filtering,
   50  *     driver bugs, and host limitations.
   51  *  - fixed windows to use dwBufferLength rather than 
   52  *     dwBytesRecorded for long buffer output (fix by Nigel Brown)
   53  *  - Win32 MME code always appends an extra zero to long buffer
   54  *     output to work around a problem with earlier versions of Midi Yoke
   55  *  - Added mm, a command line Midi Monitor to pm_test suite
   56  *  - Revised copyright notice to match PortAudio/MIT license (requests 
   57  *     are moved out of the license proper and into a separate paragraph)
   58  *
   59  * 18Oct06 Roger Dannenberg
   60  *  - replace FIFO in pmutil with Light Pipe-based multiprocessor-safe alg.
   61  *  - replace FIFO in portmidi.c with PmQueue from pmutil
   62  *
   63  * 07Oct06 cpr & Roger Dannenberg
   64  *  - overhaul of CoreMIDI input to handle running status and multiple
   65  *  -    messages per packet, with additional error detection
   66  *  - added Leigh Smith and Rick Taube support for Common Lisp and
   67  *  -    dynamic link libraries in OSX
   68  *  - initialize static global seq = NULL in pmlinuxalsa.c
   69  *
   70  * 05Sep06 Sebastien Frippiat
   71  *  - check if (ALSA) seq exists before closing it in pm_linuxalsa_term()
   72  *
   73  * 05Sep06 Andreas Micheler and Cecilio
   74  *  - fixed memory leak by freeing someo objects in pm_winmm_term()
   75  *  - and another leak by freeing descriptors in Pm_Terminate()
   76  *
   77  * 23Aug06 RBD
   78  *  - various minor fixes
   79  *
   80  * 04Nov05 Olivier Tristan
   81  *  - changes to OS X to properly retrieve real device name on CoreMidi
   82  *
   83  * 19Jul05 Roger Dannenberg
   84  *  - included pmBufferMaxSize in Pm_GetErrorText()
   85  *
   86  * 23Mar05 Torgier Strand Henriksen
   87  *  - cleaner termination of porttime thread under Linux
   88  *
   89  * 15Nov04 Ben Allison
   90  *  - sysex output now uses one buffer/message and reallocates buffer
   91  *  -    if needed
   92  *  - filters expanded for many message types and channels
   93  *  - detailed changes are as follows:
   94  *  ------------- in pmwinmm.c --------------
   95  *  - new #define symbol: OUTPUT_BYTES_PER_BUFFER
   96  *  - change SYSEX_BYTES_PER_BUFFER to 1024
   97  *  - added MIDIHDR_BUFFER_LENGTH(x) to correctly count midihdr buffer length
   98  *  - change MIDIHDR_SIZE(x) to (MIDIHDR_BUFFER_LENGTH(x) + sizeof(MIDIHDR))
   99  *  - change allocate_buffer to use new MIDIHDR_BUFFER_LENGTH macro
  100  *  - new macros for MIDIHDR_SYSEX_SIZE and MIDIHDR_SYSEX_BUFFER_LENGTH 
  101  *  -    similar to above, but counts appropriately for sysex messages
  102  *  - added the following members to midiwinmm_struct for sysex data:
  103  *  -    LPMIDIHDR *sysex_buffers;   ** pool of buffers for sysex data **
  104  *  -    int num_sysex_buffers;      ** how many sysex buffers **
  105  *  -    int next_sysex_buffer;      ** index of next sysexbuffer to send **
  106  *  -    HANDLE sysex_buffer_signal; ** to wait for free sysex buffer **
  107  *  - duplicated allocate_buffer, alocate_buffers and get_free_output_buffer 
  108  *  -    into equivalent sysex_buffer form
  109  *  - changed winmm_in_open to initialize new midiwinmm_struct members and 
  110  *  -    to use the new allocate_sysex_buffer() function instead of 
  111  *  -    allocate_buffer()
  112  *  - changed winmm_out_open to initialize new members, create sysex buffer 
  113  *  -    signal, and allocate 2 sysex buffers
  114  *  - changed winmm_out_delete to free sysex buffers and shut down the sysex
  115  *  -    buffer signal
  116  *  - create new function resize_sysex_buffer which resizes m->hdr to the 
  117  *  -    passed size, and corrects the midiwinmm_struct accordingly.
  118  *  - changed winmm_write_byte to use new resize_sysex_buffer function,
  119  *  -    if resize fails, write current buffer to output and continue
  120  *  - changed winmm_out_callback to use buffer_signal or sysex_buffer_signal
  121  *  -    depending on which buffer was finished
  122  *  ------------- in portmidi.h --------------
  123  *  - added pmBufferMaxSize to PmError to indicate that the buffer would be
  124  *  -    too large for the underlying API
  125  *  - added additional filters
  126  *  - added prototype, documentation, and helper macro for Pm_SetChannelMask
  127  *  ------------- in portmidi.c --------------
  128  *  - added pm_status_filtered() and pm_realtime_filtered() functions to
  129  *       separate filtering logic from buffer logic in pm_read_short
  130  *  - added Pm_SetChannelMask function
  131  *  - added pm_channel_filtered() function
  132  *  ------------- in pminternal.h --------------
  133  *  - added member to PortMidiStream for channel mask
  134  *
  135  * 25May04 RBD
  136  *  - removed support for MIDI THRU
  137  *  - moved filtering from Pm_Read to pm_enqueue to avoid buffer ovfl
  138  *  - extensive work on Mac OS X port, especially sysex and error handling
  139  *
  140  * 18May04 RBD
  141  *  - removed side-effects from assert() calls. Now you can disable assert().
  142  *  - no longer check pm_hosterror everywhere, fixing a bug where an open
  143  *    failure could cause a write not to work on a previously opened port
  144  *    until you call Pm_GetHostErrorText().
  145  * 16May04 RBD and Chris Roberts
  146  *  - Some documentation wordsmithing in portmidi.h
  147  *  - Dynamically allocate port descriptor structures
  148  *  - Fixed parameter error in midiInPrepareBuffer and midiInAddBuffer.
  149  *
  150  * 09Oct03 RBD
  151  *  - Changed Thru handling. Now the client does all the work and the client
  152  *    must poll or read to keep thru messages flowing.
  153  *
  154  * 31May03 RBD
  155  *  - Fixed various bugs.
  156  *  - Added linux ALSA support with help from Clemens Ladisch
  157  *  - Added Mac OS X support, implemented by Jon Parise, updated and 
  158  *       integrated by Andrew Zeldis and Zico Kolter
  159  *  - Added latency program to build histogram of system latency using PortTime.
  160  *
  161  * 30Jun02 RBD Extensive rewrite of sysex handling. It works now.
  162  *             Extensive reworking of error reporting and error text -- no
  163  *             longer use dictionary call to delete data; instead, Pm_Open
  164  *             and Pm_Close clean up before returning an error code, and 
  165  *             error text is saved in a system-independent location.
  166  *             Wrote sysex.c to test sysex message handling.
  167  *
  168  * 15Jun02 BCT changes:
  169  *  - Added pmHostError text handling.
  170  *  - For robustness, check PortMidi stream args not NULL.
  171  *  - Re-C-ANSI-fied code (changed many C++ comments to C style)
  172  *  - Reorganized code in pmwinmm according to input/output functionality (made
  173  *    cleanup handling easier to reason about)
  174  *  - Fixed Pm_Write calls (portmidi.h says these should not return length but Pm_Error)
  175  *  - Cleaned up memory handling (now system specific data deleted via dictionary
  176  *    call in PortMidi, allows client to query host errors).
  177  *  - Added explicit asserts to verify various aspects of pmwinmm implementation behaves as
  178  *    logic implies it should. Specifically: verified callback routines not reentrant and
  179  *    all verified status for all unchecked Win32 MMedia API calls perform successfully
  180  *  - Moved portmidi initialization and clean-up routines into DLL to fix Win32 MMedia API 
  181  *    bug (i.e. if devices not explicitly closed, must reboot to debug application further).
  182  *    With this change, clients no longer need explicitly call Pm_Initialize, Pm_Terminate, or
  183  *    explicitly Pm_Close open devices when using WinMM version of PortMidi.
  184  *
  185  * 23Jan02 RBD Fixed bug in pmwinmm.c thru handling
  186  *
  187  * 21Jan02 RBD Added tests in Pm_OpenInput() and Pm_OpenOutput() to prevent 
  188  *               opening an input as output and vice versa.
  189  *             Added comments and documentation.
  190  *             Implemented Pm_Terminate().
  191  *
  192  */