Correct JackPosixThread::StartImp : thread priority setting now done in the RT case...
[jack2.git] / ChangeLog
blob1b7e60fcf63937428929050a271b573aeb8ba448
1 ---------------------------\r
2   Contributors\r
3 ---------------------------\r
4 \r
5 Dmitry Baikov\r
6 Steven Chamberlain\r
7 Thom Johansen\r
8 Thibault LeMeur\r
9 Pieter Palmers\r
10 Tom Szilagyi\r
11 Andrzej Szombierski \r
12 Kjetil S.Matheussen\r
13 Pieter Palmers\r
14 Tim Blechmann\r
15 Marc-Olivier Barre\r
16 Nedko Arnaudov\r
17 Fernando Lopez-Lezcano\r
18 Romain Moret\r
19 Florian Faber\r
20 Michael Voigt\r
21 Torben Hohn  \r
22 Paul Davis\r
24 ---------------------------\r
25   Jackdmp changes log\r
26 ---------------------------
28 2009-11-07 Stephane Letz  <letz@grame.fr>\r
30         * Fix AcquireRealTime and DropRealTime: now distinguish when called from another thread (AcquireRealTime/DropRealTime) and from the thread itself (AcquireSelfRealTime/DropSelfRealTime).
31         * Correct JackPosixThread::StartImp : thread priority setting now done in the RT case only.
33 2009-11-06 Stephane Letz  <letz@grame.fr>\r
35         * Correctly save and restore RT mode state in freewheel mode.
37 2009-11-05 Stephane Letz  <letz@grame.fr>\r
39         * No reason to make jack_on_shutdown deprecated, so revert the incorrect change.
40         * Thread AcquireRealTime and DropRealTime were (incorrectly) using fThread field. Use pthread_self()) (or GetCurrentThread() on Windows) to get the calling thread.
42 2009-10-30 Stephane Letz  <letz@grame.fr>\r
44         * In JackCoreAudioDriver, improve management of input/output channels: -1 is now used internally to indicate a wanted max value. 
45         * In JackCoreAudioDriver::OpenAUHAL, correct stream format setup and cleanup. 
46         * Correct crash bug in JackAudioAdapterInterface when not input is used in adapter (temporary fix...)
47         * Sync JackCoreAudioAdapter code on JackCoreAudioDriver one.
48         * JACK_SCHED_POLICY switched to SCHED_FIFO.
49         * Now can aggregate device that are themselves AD.
51 2009-10-29 Stephane Letz  <letz@grame.fr>\r
53         * In JackCoreAudioDriver::Start, wait for the audio driver to effectively start (use the MeasureCallback).
55 2009-10-28 Stephane Letz  <letz@grame.fr>\r
57         * In JackCoreAudioDriver, force the SR value to the wanted one *before* creating aggregate device (otherwise creation will fail). 
58         * In JackCoreAudioDriver, better cleanup of AD when intermediate open failure.
60 2009-10-27 Stephane Letz  <letz@grame.fr>\r
62         * Dynamic system version detection in JackCoreAudioDriver to either create public or private aggregate device.
64 2009-10-26 Stephane Letz  <letz@grame.fr>\r
66         * Implement "hog mode" (exclusive access of the audio device) in JackCoreAudioDriver.
67         * Fix jack_set_sample_rate_callback to have he same behavior as in JACK1.
69 2009-10-25 Stephane Letz  <letz@grame.fr>\r
71         * Improve aggregate device management in JackCoreAudioDriver : now a "private" device only and cleanup properly.
72         * Aggregate device code added to JackCoreAudioAdapter.
74 2009-10-23 Stephane Letz  <letz@grame.fr>\r
76         * Correct JackProcessSync::LockedTimedWait.
77         * Correct JACK_MESSAGE_SIZE value, particularly in OSX RPC code.
78         * Now start server channel thread only when backend has been started (so in JackServer::Start). Should solve race conditions at start time.
79         * jack_verbose moved to JackGlobals class.
81 2009-10-22 Stephane Letz  <letz@grame.fr>\r
83         * Correct jackdmp.cpp (failures case were not correct..). Improve JackCoreAudioDriver code. Raise default port number to 2048.
85 2009-10-20 Stephane Letz  <letz@grame.fr>\r
87         * Add a string parameter to server ==> client notification, add a new JackInfoShutdownCallback type.
88         * CoreAudio backend now issue a JackInfoShutdownCallback when an unrecoverable error is detected (sampling rate change, stream configuration changeƉ)
90 2009-10-17 Stephane Letz  <letz@grame.fr>\r
92         * Correct server temporary mode : now set a global and quit after server/client message handling is finished.
94 2009-10-15 Stephane Letz  <letz@grame.fr>\r
96         * Change CoreAudio notification thread setup for OSX Snow Leopard.
98 2009-09-18 Stephane Letz  <letz@grame.fr>\r
100         * Simplify transport in NetJack2: master only can control transport.
102 2009-09-15 Stephane Letz  <letz@grame.fr>\r
104         * Correct CPU timing in JackNetDriver, now take cycle begin time after Read.
105         * Fix issues in JackNetDriver::DecodeTransportData and JackNetDriver::Initialize.\r
107 2009-08-28 Stephane Letz  <letz@grame.fr>\r
109         * Correct monitor port naming in JackAudioDriver and JackCoreAudioDriver.\r
110         * Big endian bug fix in memops.c (http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=5;filename=11_be24bit.patch;att=1;bug=486308)\r
112 2009-07-31 Stephane Letz  <letz@grame.fr>\r
114         * Use SNDCTL_DSP_SYNCGROUP/SNDCTL_DSP_SYNCSTART API to synchronize input and output in Solaris boomer backend.\r
116 2009-07-29 Stephane Letz  <letz@grame.fr>\r
118         * Add a -G parameter in CoreAudio backend (the computation value in RT thread expressed as percent of period).\r
120 2009-07-28 Stephane Letz  <letz@grame.fr>\r
122         * Fix CopyAndConvertIn for Solaris backends.\r
124 2009-07-22 Stephane Letz  <letz@grame.fr>\r
126         * Version 1.9.4 started.\r
127         * Solaris boomer backend now working in capture or playback only mode.\r
128         * Fix control.h for proper compilation on Solaris.\r
130 2009-07-17 Stephane Letz  <letz@grame.fr>\r
132         * Loopback backend reborn as a dynamically loadable separated backend.\r
133         * -L parameter for loopback backend activated again in jackd.\r
135 2009-07-17 Stephane Letz  <letz@grame.fr>\r
137         * Big rewrite of Solaris boomer driver, seems to work in duplex mode at least.\r
139 2009-07-16 Stephane Letz  <letz@grame.fr>\r
141         * In combined --dbus and --classic compilation code, use PulseAudio acquire/release code.\r
143 2009-07-15 Stephane Letz  <letz@grame.fr>\r
145         * Rename JackDriver::Init method to JackDriver::Initialize (to avoid confusion with JackThread::Init method).\r
146         * Update Solaris boomer driver.\r
147         * Report some cleanup and documentation improvements done on JACK1 timing functions.\r
149 2009-07-11 Stephane Letz  <letz@grame.fr>\r
151         * Raise drivers time out used in synchronous mode.\r
153 2009-07-09 Stephane Letz  <letz@grame.fr>\r
155         * Use __attribute__((__packed__)) again, more fixes for 64/32 mixed mode.\r
156         * Torben Hohn changes for 64/32 mixed mode in wscripts.\r
157         * Add compile time option for maximum ports per application.\r
159 2009-07-07 Stephane Letz  <letz@grame.fr>\r
161         * Use __attribute__((__aligned__(32))) instead of __attribute__((__packed__)) for 64/32 mixed mode.\r
163 2009-07-03 Stephane Letz  <letz@grame.fr>\r
165         * Another Tim Bechmann memops.c optimization patch.\r
167 2009-07-01 Stephane Letz  <letz@grame.fr>\r
169         * Tim Bechmann memops.c optimization patch.\r
171 2009-06-30 Stephane Letz  <letz@grame.fr>\r
173         * Tim Bechmann patch : hammerfall, only release monitor thread, if it has been created.\r
175 2009-06-19 Stephane Letz  <letz@grame.fr>\r
177         * Correct JackTransportEngine::MakeAllLocating, sync callback has to be called in this case also.\r
178         * NetJack2 code : better error checkout, method renaming.\r
180 2009-06-17 Stephane Letz  <letz@grame.fr>\r
182         * Move DBus based audio device reservation code in ALSA backend compilation.\r
184 2009-06-16 Stephane Letz  <letz@grame.fr>\r
186         * Correct JackFifo::TimedWait for EINTR handling.\r
188 2009-06-05 Stephane Letz  <letz@grame.fr>\r
190         * Correct jack_set_error_function, jack_set_info_function and jack_set_thread_creator functions.\r
192 2009-05-18 Stephane Letz  <letz@grame.fr>\r
194         * Correct wcsript files to create jackdbus only (and not create jackd anymore) when compiled in --dbus mode, add a --classic option. Both options are possible but issue a warning.\r
196 2009-05-15 Stephane Letz  <letz@grame.fr>\r
198         * Move InitFrameTime in JackDriver::Start method.\r
200 2009-05-13 Stephane Letz  <letz@grame.fr>\r
202         * Reworked Torben Hohn fix for server restart issue on Windows.\r
204 2009-05-11 Stephane Letz  <letz@grame.fr>\r
206         * New jack_free function added in jack.h.\r
207         * Torben Hohn fix for InitTime and GetMicroSeconds in JackWinTime.c.\r
209 2009-05-07 Stephane Letz  <letz@grame.fr>\r
211         * Cleanup "loopback" stuff in server.\r
213 2009-05-06 Stephane Letz  <letz@grame.fr>\r
215         * Fix transport callback (timebase master, sync) issue when used after jack_activate (RT thread was not running).\r
216         * D-Bus access for jackctl_server_add_slave/jackctl_server_remove_slave API.\r
218 2009-05-05 Stephane Letz  <letz@grame.fr>\r
220         * First working version of native MIDI backend (JackCoreMidiDriver, JackWinMMEDriver).\r
222 2009-04-22 Stephane Letz  <letz@grame.fr>\r
224         * jackctl_server_load_master renamed to jackctl_server_switch_master, jackctl_server_unload_master is removed.\r
226 2009-04-21 Stephane Letz  <letz@grame.fr>\r
228         * Add jackctl_server_load_master/jackctl_server_unload_master API.\r
230 2009-04-20 Stephane Letz  <letz@grame.fr>\r
232         * In ALSA audio card reservation code, tries to open the card even if reservation fails.\r
233         * Clock source setting on Linux.\r
235 2009-04-08 Stephane Letz  <letz@grame.fr>\r
237         * Native MIDI backend (JackCoreMidiDriver, JackWinMMEDriver) in progress.\r
239 2009-04-03 Stephane Letz  <letz@grame.fr>\r
241         * Simplify JackClient RT code, jack_thread_wait API marked deprecated."\r
243 2009-03-29 Stephane Letz  <letz@grame.fr>\r
245         * Cleanup JackInternalClient code.\r
247 2009-03-27 Stephane Letz  <letz@grame.fr>\r
249         * Add a buffer size callback for netmaster that just remove the client (it will be recreated with the new parameters).\r
251 2009-03-26 Stephane Letz  <letz@grame.fr>\r
253         * First working JackBoomerDriver two threads version.\r
255 2009-03-24 Stephane Letz  <letz@grame.fr>\r
257         * New JackBoomerDriver class for Boomer driver on Solaris.\r
258         * Add mixed 32/64 bits mode (off by default).\r
260 2009-03-23 Stephane Letz  <letz@grame.fr>\r
262         * Version 1.9.3 started.\r
264 2009-03-19 Stephane Letz  <letz@grame.fr>\r
266         * Tim Blechmann optimization patch (inlining some heavy used methods).\r
268 2009-03-12 Stephane Letz  <letz@grame.fr>\r
270         * Virtualize and allow overriding of thread creation function, to allow Wine support (from JACK1).\r
272 2009-03-12 Stephane Letz  <letz@grame.fr>\r
274         * Try automatic adaptative mode in adapters.\r
276 2009-03-11 Stephane Letz  <letz@grame.fr>\r
278         * Client incorrect re-naming fixed : now done at socket level also.\r
280 2009-03-10 Stephane Letz  <letz@grame.fr>\r
282         * Add -g (ring-buffer) parameter to netadapter.\r
283         * Automatic adaptative ringbuffer size mode when -g = 0.\r
285 2009-03-09 Stephane Letz  <letz@grame.fr>\r
287         * Use Torben Hohn PI controler code for adapters (in progress).\r
289 2009-03-05 Stephane Letz  <letz@grame.fr>\r
291         * Support for BIG_ENDIAN machines in NetJack2 for transport data.\r
292         * Add auto_connect parameter in netmanager and netadapter.\r
294 2009-03-03 Stephane Letz  <letz@grame.fr>\r
296         * More robust profiling tools when clients come and go.\r
298 2009-03-01 Stephane Letz  <letz@grame.fr>\r
300         * Raise default port number to 1024.\r
302 2009-02-27 Stephane Letz  <letz@grame.fr>\r
304         * Improve generated gnuplot files for adapting code.\r
306 2009-02-25 Stephane Letz  <letz@grame.fr>\r
308         * Major cleanup in adapter code.\r
310 2009-02-25 Stephane Letz  <letz@grame.fr>\r
312         * Fix JackNetDriver::Close method.\r
313         * For audio device reservation, add card_to_num function.\r
314         * Fix buffer size and sample rate handling in JackAlsaAdapter.\r
315         * Add control for adapter ringbuffer size.\r
316         * Fix JackAlsaAdapter.h for 64 bits compilation.\r
318 2009-02-23 Stephane Letz  <letz@grame.fr>\r
320         * Another fix in systemdeps.h and types.h: jack_time_t now uniquely defined in types.h.\r
321         * Move generic code and data in JackNetInterface and JackNetMasterInterface classes.\r
322         * First version of D-Bus based audio device reservation.\r
324 2009-02-20 Stephane Letz  <letz@grame.fr>\r
326         * Add InitConnection and InitRendering methods in JackNetSlaveInterface, better packet type checking in JackNetSlaveInterface::SyncRecv.\r
327         * Change fMulticastIP handling in JackNetInterface.\r
328         * Cleanup systemdeps.h on Windows.\r
330 2009-02-17 Stephane Letz  <letz@grame.fr>\r
332         * Fix the mutex/signal classes on Windows.\r
333         * Client incorrect re-naming fixed: now done at fifo level only.\r
335 2009-02-16 Stephane Letz  <letz@grame.fr>\r
337         * Rework the mutex/signal classes. Use them in JackMessageBuffer.\r
339 2009-02-11 Stephane Letz  <letz@grame.fr>\r
341         * Merge Solaris branch back on trunk.\r
342         * Equality of input and output buffer size removed (for now) in JackOSSDriver.\r
344 2009-02-10 Stephane Letz  <letz@grame.fr>\r
346         * Add a resample quality parameter in netadapter.\r
348 2009-02-09 Stephane Letz  <letz@grame.fr>\r
350         * Use PRIu32 kind of macro in JackAlsaDriver again.\r
351         * Now correctly return an error if JackServer::SetBufferSize could not change the buffer size (and was just restoring the current one).\r
353 2009-02-05 Stephane Letz  <letz@grame.fr>\r
355         * Add a resample quality parameter in audioadapter.\r
357 2009-02-01 Stephane Letz  <letz@grame.fr>\r
359         * Add a JACK_INTERNAL_DIR environment variable to be used for internal clients.\r
361 2009-01-30 Stephane Letz  <letz@grame.fr>\r
363         * In NetJack2, fix a bug when capture or playback only channels are used.\r
365 2009-01-29 Stephane Letz  <letz@grame.fr>\r
367         * Support for "-h" option in internal clients to print the parameters. \r
368         * Support for BIG_ENDIAN machines in NetJack2 for MIDI ports.\r
370 2009-01-28 Stephane Letz  <letz@grame.fr>\r
372         * Support for BIG_ENDIAN machines in NetJack2.\r
374 2009-01-27 Stephane Letz  <letz@grame.fr>\r
376         * Better recovery of network overload situations, now "resynchronize" by skipping cycles."\r
378 2009-01-26 Stephane Letz  <letz@grame.fr>\r
380         * Fix JackNetInterface::SetNetBufferSize for socket buffer size computation and JackNetMasterInterface::DataRecv if synch packet is received, various cleanup.\r
381         * Fix in JackAlsaAdapter::Open.\r
382         * Simplify audio packet order verification.\r
383         * Set default mode to 'slow' in JackNetDriver and JackNetAdapter.\r
385 2009-01-19 Stephane Letz  <letz@grame.fr>\r
387         * Synchronize ALSA backend code with JACK1 one.\r
389 2009-01-17 Stephane Letz  <letz@grame.fr>\r
391         * JackMessageBuffer was using thread "Stop" scheme in destructor, now use the safer thread "Kill" way. \r
393 2009-01-14 Stephane Letz  <letz@grame.fr>\r
395         * Cleanup server starting code for clients directly linked with libjackserver.so.\r
397 2009-01-09 Stephane Letz  <letz@grame.fr>\r
399         * JackProfiler scan already running clients (so can now be added anytime in the graph).\r
401 2009-01-09 Stephane Letz  <letz@grame.fr>\r
403         * New JackProfiler class for real-time server monitoring. \r
405 2009-01-07 Stephane Letz  <letz@grame.fr>\r
407         * Use up to BUFFER_SIZE_MAX frames in midi ports, fix for ticket #117.\r
409 2009-01-05 Stephane Letz  <letz@grame.fr>\r
411         * Synchronize jack2 public headers with jack1 ones. \r
412         * Implement jack_client_real_time_priority and jack_client_max_real_time_priority API.\r
414 2008-12-18 Stephane Letz  <letz@grame.fr>\r
416         * For ALSA driver, synchronize with latest jack1 memops functions. \r
417         * Use memops functions in JackOSSDriver.\r
418         * Use memops functions in JackOSSAdapter.\r
420 2008-12-17 Stephane Letz  <letz@grame.fr>\r
422         * Use JACK_DRIVER_DIR variable in internal clients loader.\r
424 2008-12-16 Stephane Letz  <letz@grame.fr>\r
426         * Fix JackOSSDriver::SetBufferSize (was crashing when restoring old size), fix ticket #111.\r
427         * Force memory page in of profiling array in JackOSSDriver::Open.\r
428         * Cleanup profiling code.\r
429         * Client and library global context cleanup in case of incorrect shutdown handling (that is applications not correctly closing client after server has shutdown).\r
431 2008-12-08 Stephane Letz  <letz@grame.fr>\r
433         * Forbid JackOSSDriver to run in "aynchronous" mode, correct DSP CPU computation.\r
435 2008-12-04 Stephane Letz  <letz@grame.fr>\r
437         * More profiling in JackOSSDriver: sample conversion duration is measured. \r
439 2008-12-02 Stephane Letz  <letz@grame.fr>\r
441         * Optimize JackOSSDriver: no samples conversion if ports are not connected.\r
443 2008-12-01 Stephane Letz  <letz@grame.fr>\r
445         * Force preload of memory table in JackEngineProfiling.\r
447 2008-11-27 Stephane Letz  <letz@grame.fr>\r
449         * Add timing profiling code in JackOSSDriver.\r
450         * Report ringbuffer.c fixes from jack1.\r
452 2008-11-21 Stephane Letz  <letz@grame.fr>\r
454         * Report ringbuffer.c fixes from jack1.\r
455         * Better isolation of server and clients system resources to allow starting the server in several user account at the same time.\r
456         * Correct ressource cleanup in case of driver open failure.\r
458 2008-11-19 Stephane Letz  <letz@grame.fr>\r
460         * Libjack shutdown handler does not "deactivate" (fActive = false) the client anymore, so that jack_deactivate correctly does the job later on.\r
461         * Filter SIGPIPE to avoid having client get a SIGPIPE when trying to access a died server. \r
463 2008-11-14 Stephane Letz  <letz@grame.fr>\r
465         * Version 1.9.1 started, fix symbols export in ringbuffer.c, cleanup on Windows.\r
467 2008-11-13 Stephane Letz  <letz@grame.fr>\r
469         * Fix jackctl_server_unload_internal.\r
471 2008-10-30 Stephane Letz  <letz@grame.fr>\r
473         * Correct JackClient::ShutDown.\r
474         * TimeOut management in JackNetUnixSocket on Solaris.\r
475  \r
476 2008-10-23 Stephane Letz  <letz@grame.fr>\r
477         \r
478         * In JackOSSDriver, vmix mode is used by default, exclusif (O_EXCL) mode can be selected with -e option.\r
479         * Fix a crash in JackEngine::Close when backend cannot be loaded.\r
480         * Tim Blechmann optimization patch.\r
481         * Backport of latest Paul alsa_seqmidi changes.\r
483 2008-10-15 Stephane Letz  <letz@grame.fr>\r
484         \r
485         * Fix a conflict with Audio Hijack in JackCoreAudioDriver. \r
487 2008-10-09 Stephane Letz  <letz@grame.fr>\r
488         \r
489         * Use a mutex to make jack_client_open/jack_client_close thread safe, remove use of jack_init/jack_uninit.\r
491 2008-10-08 Stephane Letz  <letz@grame.fr>\r
492         \r
493         * Fix a SMP related bug introduced in rev 2957 : remove the __SMP__ flag and define LOCK for SMP in all cases.\r
495 2008-10-02 Stephane Letz  <letz@grame.fr>\r
496         \r
497         * Correct file permission for jack-shm-registry POSIX shared memory segment.\r
498         * Checking for libsamplerate in waf, fix ticket #89." \r
499         * Header cleanup, add --clients and --ports options in configure.\r
501 2008-09-22 Stephane Letz  <letz@grame.fr>\r
502         \r
503         * Socket time out implementation on Solaris.\r
504         * Fix a conflict with Audio Hijack in JackCoreAudioDriver. \r
506 2008-10-10 Stephane Letz  <letz@grame.fr>\r
507         \r
508         * Improve OSS backend : SNDCTL_DSP_SETFRAGMENT must be done before, use of AFMT_S16_LE kind of values. \r
510 2008-10-09 Stephane Letz  <letz@grame.fr>\r
511         \r
512         * First version of OSS backend.\r
513         * Use a mutex to make jack_client_open/jack_client_close thread safe, remove use of jack_init/jack_uninit.\r
515 2008-10-08 Stephane Letz  <letz@grame.fr>\r
516         \r
517         * Fix a SMP related bug introduced in rev 2957 : remove the __SMP__ flag and define LOCK for SMP in all cases.\r
519 2008-10-03 Stephane Letz  <letz@grame.fr>\r
520         \r
521         * Add engine profiling tools.\r
523 2008-10-02 Stephane Letz  <letz@grame.fr>\r
524         \r
525         * Correct file permission for jack-shm-registry POSIX shared memory segment.\r
526         * Checking for libsamplerate in waf, fix ticket #89." \r
527         * Header cleanup, add --clients and --ports options in configure.\r
529 2008-10-01 Stephane Letz  <letz@grame.fr>\r
531         * First Solaris version.\r
533 2008-09-22 Stephane Letz  <letz@grame.fr>\r
534         \r
535         * Cleanup jack_port_id_t/jack_port_t mess, should work again on 64 bits machines."\r
537 2008-09-20 Stephane Letz  <letz@grame.fr>\r
538         \r
539         * Michael Voigt JackAPI cleanup patch.\r
541 2008-09-19 Stephane Letz  <letz@grame.fr>\r
542         \r
543         * Michael Voigt JackTime cleanup patch.\r
545 2008-09-17 Stephane Letz  <letz@grame.fr>\r
546         \r
547         * New JackDriverInfo class to cleanup driver loading code.\r
549 2008-09-08 Stephane Letz  <letz@grame.fr>\r
550         \r
551         * Better symbols export for server and client side libraries. \r
553 2008-09-06 Stephane Letz  <letz@grame.fr>\r
554         \r
555         * Correct driver hierarchy on macosx and windows targets.\r
557 2008-09-05 Stephane Letz  <letz@grame.fr>\r
558         \r
559         * Merge Michael Voigt "drops" branch after reorganization step.\r
561 2008-09-04 Stephane Letz  <letz@grame.fr>\r
562         \r
563         * Michael Voigt 4th source reorganization patch.\r
564         * Correct JackNetDriver initialization.\r
566 2008-09-03 Stephane Letz  <letz@grame.fr>\r
567         \r
568         * Implement DBUS entry points to handle internal clients, add new commands in jack_control.\r
569         * Add new "desc" (extended description) in jack_driver_desc_t, to be used by backends and internal clients.\r
571 2008-09-01 Stephane Letz  <letz@grame.fr>\r
572         \r
573         * Michael Voigt third source reorganization patch.\r
574         * Add new jack_set_port_rename_callback API, jack_port_set_name is now a server request that call port rename callbacks.\r
576 2008-08-31 Stephane Letz  <letz@grame.fr>\r
577         \r
578         * Michael Voigt second source reorganization patch.\r
580 2008-08-28 Stephane Letz  <letz@grame.fr>\r
581         \r
582         * Michael Voigt first source reorganization patch.\r
584 2008-08-26 Stephane Letz  <letz@grame.fr>\r
585         \r
586         * Better parameter handling in JackCoreAudioAdapter.\r
587         * Fix memory leaks.\r
589 2008-08-23 Stephane Letz  <letz@grame.fr>\r
590         \r
591         * Implements internal clients management API.\r
593 2008-08-22 Stephane Letz  <letz@grame.fr>\r
594         \r
595         * Move GetCurrentTransportFrame code from JackClient to JackTransportEngine.\r
596         * Add a fNetworkSync state in JackTransportEngine used in network.\r
598 2008-08-03 Stephane Letz  <letz@grame.fr>\r
599         \r
600         * Fix JackFrameTimer::Time2Frames and JackTimer::Frames2Time, jack_cpu compiled again.\r
602 2008-08-01 Stephane Letz  <letz@grame.fr>\r
603         \r
604         * Fix desallocation of remaining clients when server quits.\r
605         * Close remaining client sockets in JackSocketServerChannel::Close.\r
606         * Correct JackClient::Close() to request server close only if server is running.\r
608 2008-07-30 Stephane Letz  <letz@grame.fr>\r
610         * Remove restriction that port connection could be done only if the client was activated.\r
612 2008-07-25 Stephane Letz  <letz@grame.fr>\r
614         * Florian Faber patch for 32 bit float (LE only) support to jack's alsa driver.\r
615         * Fix a crash bug when desallocating a non completely created external client.\r
617 2008-07-24 Stephane Letz  <letz@grame.fr>\r
619         * Fix server client OSX special notification mechanism, CoreAudio driver compilation back for 10.4.\r
621 2008-07-18 Stephane Letz  <letz@grame.fr>\r
623         * Correct audioadapter when a sample rate value different from jack server one is chosen.\r
624         * Cleanup in JackTransportEngine, move some code that was in JackClient class.\r
625         * Remove transport_type.h file, move transport types in types.h file.\r
627 2008-07-12 Stephane Letz  <letz@grame.fr>\r
629         * Loopback driver working again.\r
631 2008-07-08 Stephane Letz  <letz@grame.fr>\r
633         * Add jack_get_descriptor in internal clients API.\r
634         * Fix JackFreewheelDriver::Process() in case if client time-out : continue processing until a better recovery strategy is chosen.\r
636 2008-07-08 Stephane Letz  <letz@grame.fr>\r
638         * Merge windows branch back to trunk.\r
640 2008-07-05 Stephane Letz  <letz@grame.fr>\r
642         * Netioadapter renamed in audioadapter.\r
644 2008-07-04 Stephane Letz  <letz@grame.fr>\r
646         * Netioadapter now adapts for buffer size and sample rate changes.\r
648 2008-07-03 Stephane Letz  <letz@grame.fr>\r
650         * Add IsFixedBufferSize method in all drivers.\r
652 2008-07-02 Stephane Letz  <letz@grame.fr>\r
654         * New netioadapter in server client.\r
656 2008-06-20 Stephane Letz  <letz@grame.fr>\r
658         * Add new jack_client_stop_thread and jack_client_kill_thread API.\r
659         * New generic BuildClientPath for internal clients loading.\r
661 2008-06-19 Stephane Letz  <letz@grame.fr>\r
663         * Embed JackEngineControl in JackDriver (starting from Tim Blechmann idea).\r
665 2008-06-18 Stephane Letz  <letz@grame.fr>\r
667         * On OSX waf now compiles Universal Binaries.\r
669 2008-06-17 Stephane Letz  <letz@grame.fr>\r
671         * Driver class hierarchy simplification.\r
672         * Update waf for compilation on OSX.\r
674 2008-06-13 Stephane Letz  <letz@grame.fr>\r
676         * Correct JackPosixThread::ThreadHandler termination, do not set buffer size if same value is used.\r
677         * Another Tim Blechmann cleanup patch + do no allocate JackClientControl in shared memory for server internal clients.\r
679 2008-06-12 Stephane Letz  <letz@grame.fr>\r
681         * Another Tim Blechmann patch to remove unnecessary virtual methods.\r
683 2008-06-09 Stephane Letz  <letz@grame.fr>\r
685         * Improve net driver so that jack clients can be registered even if driver has not yet started. \r
687 2008-06-08 Stephane Letz  <letz@grame.fr>\r
689         * Add a missing EXPORT for JackException class. \r
691 2008-06-06 Stephane Letz  <letz@grame.fr>\r
693         * Better error checking in JackGraphManager::RemoveAllPorts.\r
695 2008-06-05 Stephane Letz  <letz@grame.fr>\r
697         * Better control of exported symbols.\r
698         * Fix a bug in backend parameter parsing.\r
700 2008-06-04 Stephane Letz  <letz@grame.fr>\r
702         * Merge of network branch.\r
703         * Use of set_threaded_log_function only when needed in RT threads.\r
705 2008-06-02 Stephane Letz  <letz@grame.fr>\r
707         * Tim Blechmann patch to remove unnecessary virtual methods : choice of the appropriate platform version is now done at compilation time.\r
709 2008-06-02 Stephane Letz  <letz@grame.fr>\r
711         * Cleanup and correct wscript for example-clients.\r
712         * Add a test for coherent freewheel state in JackDebugClient. \r
713         * Cleanup JackMutex class.\r
715 2008-05-31 Stephane Letz  <letz@grame.fr>\r
717         * Add missing include for proper compilation when jack headers are not installed.\r
719 2008-05-30 Stephane Letz  <letz@grame.fr>\r
721         * Avoid using Terminate when "quitting" in RT thread. Cleanup JackEngineInterface.\r
723 2008-05-29 Stephane Letz  <letz@grame.fr>\r
725         * Tim Blechmann patch for JackPosixSemaphore (still to test...).\r
726         * Correct JackWinThread::Terminate.\r
728 2008-05-28 Stephane Letz  <letz@grame.fr>\r
730         * New testMutex test, correct timing in drivers.\r
732 2008-05-27 Stephane Letz  <letz@grame.fr>\r
734         * Correct timing in drivers : frame time has to be incremented before Read.\r
736 2008-05-26 Stephane Letz  <letz@grame.fr>\r
738         * Merge control branch.\r
739         * Cleanup example clients : use jack_client_open and install a proper 'quit' signal handler.\r
741 2008-05-24 Stephane Letz  <letz@grame.fr>\r
743         * Tim Blechmann RAII idiom patch for JackServer ressource initialization.\r
745 2008-05-23 Stephane Letz  <letz@grame.fr>\r
747         * Use StartSync to start the client notification thread, otherwise initial notifications from the server may be lost.\r
748         * Tim Blechmann JackEngine cleanup patch.\r
749         * Call init callback in notification thread also.\r
751 2008-05-22 Stephane Letz  <letz@grame.fr>\r
753         * Correct JackPort::ClearBuffer.\r
754         * Correct JackEngine inheritance graph.\r
756 2008-05-21 Stephane Letz  <letz@grame.fr>\r
758         * Correct JackEngine::PortUnRegister, JackEngine::ClientCloseAux and JackEngine::ClientDeactivate to correctly send notifications. \r
759         * New jack_get_client_pid API, implemented on server side.\r
760         * Better handling of graph state read functions : never wait when used in the real-time thread, current state is used.\r
762 2008-05-20 Stephane Letz  <letz@grame.fr>\r
764         * Package number bumped to 1.90 everywhere.\r
765         * Implementation of jack_get_max_delayed_usecs, jack_get_xrun_delayed_usecs and jack_reset_max_delayed_usecs.\r
767 2008-05-19 Stephane Letz  <letz@grame.fr>\r
769         * Use of placement new for dynamic port allocation is possibly not safe... so avoid that until a definitive answer is found.\r
770         * JackAudioDriver::ProcessAsync and JackAudioDriver::ProcessSync were broken at some point : 0 has to be returned in all cases.\r
772 2008-05-16 Stephane Letz  <letz@grame.fr>\r
774         * Activate now connect to FW driver and start the realtime thread only if clients are actually realtime, that is have setup any of the RT callback.\r
776 2008-05-14 Stephane Letz  <letz@grame.fr>\r
778         * Fix JackEngine::Close to only delete "loadable" clients.\r
780 2008-05-13 Stephane Letz  <letz@grame.fr>\r
782         * Fix exception handling in JackShmMem::operator new.\r
783         * Fix JackMutex constructor.\r
785 2008-05-12 Stephane Letz  <letz@grame.fr>\r
787         * Allows wrapper library to log in a file (using JACK_WRAPPER_DEBUG=file).\r
789 2008-05-09 Stephane Letz  <letz@grame.fr>\r
791         * Mike Taht's fix for proper alsa xrun duration measurement.\r
793 2008-05-06 Stephane Letz  <letz@grame.fr>\r
795         * Fix JackPosixThread::StartImp and JackWinThread::StartImp.\r
797 2008-05-05 Stephane Letz  <letz@grame.fr>\r
799         * Fix JackClient::Close : notification channel is stopped first to avoid receiving notifications while closing and Close is again a synchronous call.\r
800         * No more remaining client close in JackEngine::Close().\r
802 2008-05-01 Stephane Letz  <letz@grame.fr>\r
804         * Fix JackMachClientChannel::InternalClientLoad.\r
805         * Correct internal client loading.\r
806         * For threaded drivers, AcquireRealTime is called after Init step.\r
808 2008-04-30 Stephane Letz  <letz@grame.fr>\r
809                 \r
810         * Fix JackRestartThreadedDriver::Execute.\r
811         * Better handling of init and run state in JackThread.\r
813 2008-04-28 Stephane Letz  <letz@grame.fr>\r
814                 \r
815         * Add exceptions management to distinguish drivers recoverable errors from non recoverable ones. Will be used in special threaded drivers (for network).\r
817 2008-04-25 Stephane Letz  <letz@grame.fr>\r
818                 \r
819         * Correct JackServerGlobals::Init: now check is server is already started.\r
821 2008-04-24 Stephane Letz  <letz@grame.fr>\r
822                 \r
823         * Correct internal client load.\r
825 2008-04-10 Stephane Letz  <letz@grame.fr>\r
826                 \r
827         * Remove Linux Makefile, update Readme.\r
829 2008-04-03 Stephane Letz  <letz@grame.fr>\r
830                 \r
831         * Correct a dirty port array issue in JackGraphManager::GetPortsAux.\r
833 2008-03-31 Stephane Letz  <letz@grame.fr>\r
834                 \r
835         * New SetNonBlocking method for JackSocket.\r
837 2008-03-29 Stephane Letz  <letz@grame.fr>\r
838                 \r
839         * Correct a missing parameter in the usage message of jack_midiseq.\r
840         * Add a client counter in wrapper layer : library is unloaded only when all clients have been closed.\r
842 2008-03-28 Stephane Letz  <letz@grame.fr>\r
843                 \r
844         * Correct PortRegister, port name checking must be done on server side.\r
845         * Add an Init method for blocking drivers to be decorated using JackThreadedDriver class.\r
847 2008-03-27 Stephane Letz  <letz@grame.fr>\r
848                 \r
849         * Pieter Palmers patch for FFADO driver.\r
850         * Dmitry Baikov patch for alsa_rawmidi driver.\r
852 2008-03-26 Stephane Letz  <letz@grame.fr>\r
853                 \r
854         * JackWrapperAPI.cpp: use open_library in jack_client_name_size, jack_port_name_size and jack_port_type_size.\r
856 2008-03-20 Stephane Letz  <letz@grame.fr>\r
857                 \r
858         * Transport timebase fix.\r
860 2008-03-19 Stephane Letz  <letz@grame.fr>\r
861                 \r
862         * Synchronise transport.h with latest jackd version (Video handling).\r
864 2008-03-19 Stephane Letz  <letz@grame.fr>\r
865                 \r
866         * Add jack_port_type_id in jack API.\r
868 2008-03-17 Stephane Letz  <letz@grame.fr>\r
869                 \r
870         * New jack_server_control client to test notifications when linked to the server library.\r
871         * Correct JackClient::Activate so that first kGraphOrderCallback can be received by the client notification thread.\r
872         * MIDI API in wrapper lib.\r
873         * Fix connect notification to deliver *one* notification only.\r
875 2008-03-16 Stephane Letz  <letz@grame.fr>\r
876                 \r
877         * Use engine in JackAlsaDriver::port_register and JackAlsaDriver::port_unregister.\r
878         * New JackLockedEngine decorator class to serialize access from ALSA Midi thread, command thread and in-server clients.\r
880 2008-03-15 Stephane Letz  <letz@grame.fr>\r
881                 \r
882         * Add -L (extra output latency in aynchronous mode) in CoreAudio driver.\r
883         * RT scheduling for OSX thread (when use in dummy driver).\r
885 2008-03-14 Stephane Letz  <letz@grame.fr>\r
886                 \r
887         * Fernando Lopez-Lezcano scons patch.\r
889 2008-03-13 Stephane Letz  <letz@grame.fr>\r
890                 \r
891         * Add test for jack_cycle_wait, jack_cycle_wait and jack_set_process_thread API.\r
892         * Add jack_set_process_thread in wrapper library.\r
893         * Correct all backend playback port latency in case of "asynchronous" mode (1 buffer more).\r
894         * Correct jack_port_get_total_latency.\r
895         * Correct jack_port_by_id in wrapper library.\r
897 2008-03-12 Stephane Letz  <letz@grame.fr>\r
898                 \r
899         * Marc-Olivier Barre library related scons patch.\r
900         * Nedko Arnaudov FULL_MIMIC patch.\r
901         * Automatic server launch in wrapper layer.\r
903 2008-03-11 Stephane Letz  <letz@grame.fr>\r
904                 \r
905         * Fix engine real-time notification (was broken since ??).\r
906         * Correct jack_client_open_aux, jack_client_open and jack_client_new.\r
907         * Correct jack_internal_client_load for wrapper layer.\r
908         * In thread model, execute a dummy cycle to be sure thread has the correct properties (ensure thread creation is finished).\r
909         * Correct jack_port_get_connections function (should return NULL when no connections).\r
911 2008-03-10 Stephane Letz  <letz@grame.fr>\r
912                 \r
913         * Nedko Arnaudov log patch.\r
914         * Remove unneeded jack_port_connect API.\r
916 2008-03-07 Stephane Letz  <letz@grame.fr>\r
917                 \r
918         * Define an internal jack_client_open_aux needed for library wrapper feature.\r
919         * Improve wrapper code.\r
920         * Correct FreeBob driver_initialize.\r
922 2008-03-06 Stephane Letz  <letz@grame.fr>\r
923                 \r
924         * Marc-Olivier Barre scons patch (3).\r
926 2008-03-06 Stephane Letz  <letz@grame.fr>\r
927                 \r
928         * Fix JackSocketClientChannel::ClientClose: async call from the client and server does not need to write any reply. \r
929         * Correct port notification: 2 notifications have to be sent (src, dst) and (dst, src)...\r
931 2008-03-05 Stephane Letz  <letz@grame.fr>\r
932                 \r
933         * libjackdmp.so renamed to libjackservermp.so and same for OSX framework.\r
934         * tw1.c example added (new thread model).\r
935         * Marc-Olivier Barre scons patch (2).\r
937 2008-03-02 Stephane Letz  <letz@grame.fr>\r
938                 \r
939         * Correct JackSocketClientChannel::ClientClose to use ServerSyncCall instead of ServerAsyncCall.\r
940         * Better documentation in jack.h.\r
941         * Marc-Olivier Barre scons patch.\r
943 2008-03-02 Stephane Letz  <letz@grame.fr>\r
944                 \r
945         * Correct jack_get_time propotype.\r
947 2008-02-25 Stephane Letz  <letz@grame.fr>\r
948                 \r
949         * Add TimeCallback in JackDebugClient class.\r
951 2008-02-22 Stephane Letz  <letz@grame.fr>\r
952                 \r
953         * Correct JACK_port_unregister.\r
955 2008-02-21 Stephane Letz  <letz@grame.fr>\r
956                 \r
957         * Add port register/unregister notification in JackAlsaDriver.\r
959 2008-02-12 Stephane Letz  <letz@grame.fr>\r
960                 \r
961         * Fix in JackClient::Error(): when RT thread is failing and calling Shutdown, Shutdown was not desactivating the client correctly. \r
962         * Notify ports unregistration in JackEngine::ClientCloseAux.\r
963         * Thanks Esben Stien for helping finding these bugs.\r
965 2008-02-11 Stephane Letz  <letz@grame.fr>\r
966                 \r
967         * Use SetAlias for port naming. Use jackd midi port naming scheme.\r
969 2008-02-08 Stephane Letz  <letz@grame.fr>\r
970                 \r
971         * More robust external API.\r
973 2008-02-07 Stephane Letz  <letz@grame.fr>\r
974                 \r
975         * Correct "server_connect": close the communication channel.\r
977 2008-02-05 Stephane Letz  <letz@grame.fr>\r
978                 \r
979         * Reduce WaitGraphChange wait value.\r
980         * Remove use of assert in JackFifo, JackMachSemaphore, and JackPosixSemaphore: print an error instead.\r
982 2008-02-03 Stephane Letz  <letz@grame.fr>\r
984         * Add "Readme" file from package in src folder.\r
985         * Tim Blechmann sse optimization patch for JackaudioPort::MixAudioBuffer, use of Apple Accelerate framework on OSX.\r
987 2008-02-02 Stephane Letz  <letz@grame.fr>\r
989         * Tim Blechmann patches.\r
991 2008-02-01 Stephane Letz  <letz@grame.fr>\r
993         * Move transport related methods from JackEngine to JackServer.\r
994         * Finish port connection callback server side implementation.\r
996 2008-01-31 Stephane Letz  <letz@grame.fr>\r
998         * Remove checking thread in CoreAudio driver, better device state change recovery strategy: the driver is stopped and restarted.\r
999         * jack_thread_wait implementation.\r
1000         * Add jack_thread_wait client example.\r
1001         * Add jack_mp_thread_wait client example.\r
1003 2008-01-30 Stephane Letz  <letz@grame.fr>\r
1004         \r
1005         * Latest jack_lsp code from jack SVN.\r
1006         * Update in usx2y.c and JackPort.cpp to match jackd 0.109.2.\r
1008 2008-01-29 Stephane Letz  <letz@grame.fr>\r
1009         \r
1010         * Implement jack_recompute_total_latency and jack_recompute_total_latencies.\r
1011         * Remove fBufferSize field in JackGraphManager object.\r
1012         * Port connection callback, client side.\r
1014 2008-01-28 Stephane Letz  <letz@grame.fr>\r
1016         * Updated API to match jack 0.109.0 version (in progress). Correct checking thread in CoreAudio driver.\r
1017         * Port connection callback, server side.\r
1018         * Cleanup jack_port_connected_to implementation.\r
1020 2008-01-25 Stephane Letz  <letz@grame.fr>\r
1022         * OSX 32/64 bits version.\r
1024 2008-01-24 Stephane Letz  <letz@grame.fr>\r
1026         * CoreAudio driver improvement: detect and notify abnormal situations (stopped driver in case of SR change...).\r
1028 2008-01-03 Stephane Letz  <letz@grame.fr>\r
1030         * Dmitry Baikov MIDI patch : alsa_seqmidi and alsa_rammidi drivers.\r
1032 2008-01-03 Stephane Letz  <letz@grame.fr>\r
1034         * Tim Blechmann patch for JackGraphManager::GetPortsAux memory leak, Tim Blechmann patch for scons install.\r
1036 2007-12-12 Stephane Letz  <letz@grame.fr>\r
1038         * Cleanup in CoreAudio driver.\r
1040 2007-12-11 Stephane Letz  <letz@grame.fr>\r
1042         * Change string management for proper compilation with gcc 4.2.2. JackLog cleanup.\r
1044 2007-12-08 Stephane Letz  <letz@grame.fr>\r
1046         * Tim Blechmann scons patch.\r
1048 2007-12-07 Stephane Letz  <letz@grame.fr>\r
1050         * Pieter Palmers second new build system: scons and Makefile based build.\r
1052 2007-12-06 Stephane Letz  <letz@grame.fr>\r
1054         * Pieter Palmers FFADO driver and scons based build.\r
1056 2007-12-05 Stephane Letz  <letz@grame.fr>\r
1058         * Correct sample_rate management in JackCoreAudioDriver::Open. Better handling in sample_rate change listener.\r
1060 2007-12-04 Stephane Letz  <letz@grame.fr>\r
1062         * Add a sample_rate change listener in CoreAudio driver.\r
1064 2007-12-03 Stephane Letz  <letz@grame.fr>\r
1066         * Correct bug in CoreAudio driver sample rate management.\r
1068 2007-11-30 Stephane Letz  <letz@grame.fr>\r
1070         * Correct JackMachNotifyChannel::ClientNotify.\r
1072 2007-11-29 Stephane Letz  <letz@grame.fr>\r
1074         * Correct fPeriodUsecs computation in JackAudioDriver::SetBufferSize and JackAudioDriver::SetSampleRate. \r
1076 2007-11-28 Stephane Letz  <letz@grame.fr>\r
1078         * On OSX, use jack server name in notification system.\r
1080 2007-11-21 Stephane Letz  <letz@grame.fr>\r
1082         * On OSX, use CFNotificationCenterPostNotificationWithOptions with kCFNotificationDeliverImmediately | kCFNotificationPostToAllSessions for server ==> JackRouter plugin notification.\r
1084 2007-11-20 Stephane Letz  <letz@grame.fr>\r
1086         * Correct CheckPort in JackAPI.cpp.\r
1088 2007-11-15 Stephane Letz  <letz@grame.fr>\r
1090         * Move OSX start/stop notification mechanism in Jackdmp.cpp.\r
1092 2007-11-05 Stephane Letz  <letz@grame.fr>\r
1094         * Use of JackWinSemaphore instead of JackWinEvent for inter-process synchronization.\r
1095         * Correct types.h for use with MINGW on Windows.\r
1097 2007-11-04 Stephane Letz  <letz@grame.fr>\r
1099         * Add an implementation for obsolete jack_internal_client_new and jack_internal_client_close. Add missing jack_port_type_size.\r
1101 2007-11-02 Stephane Letz  <letz@grame.fr>\r
1103         * Correct ALSA driver Attach method: internal driver may have changed the buffer_size and sample_rate values.\r
1104         * Add JackWinSemaphore class.\r
1106 2007-10-01 Stephane Letz  <letz@grame.fr>\r
1108         * Server and user directory related code moved in a JackTools file.\r
1109         * Client name rewritting to remove path characters (used in fifo naming).\r
1111 2007-10-30 Stephane Letz  <letz@grame.fr>\r
1113         * Fix a bug in freewheel management in async mode: drivers now receive the kStartFreewheelCallback and kStopFreewheelCallback notifications.\r
1115 2007-10-26 Stephane Letz  <letz@grame.fr>\r
1117         * Add midiseq and midisine examples. \r
1118         * Cleanup old zombification code. \r
1119         * Linux Makefile now install jack headers.\r
1120         * Use of JACK_CLIENT_DEBUG environment variable to activate debug client mode.\r
1121         * Definition of JACK_LOCATION variable using -D in the Makefile.\r
1122         * Restore jack 0.103.0 MIDI API version.\r
1124 2007-10-25 Stephane Letz  <letz@grame.fr>\r
1126         * Merge of Dmitry Baikov MIDI branch. \r
1127         * Correct JackGraphManager::GetPortsAux to use port type.\r
1128         * Remove JackEngineTiming class: code moved in JackEngineControl.\r
1130 2007-10-24 Stephane Letz  <letz@grame.fr>\r
1132         * Implementation of server_name setting (-n).\r
1134 2007-10-23 Stephane Letz  <letz@grame.fr>\r
1136         * Correct jack_acquire_real_time_scheduling on OSX.\r
1138 2007-10-18 Stephane Letz  <letz@grame.fr>\r
1140         * Use LIB_DIR variable for 64 bits related compilation (drivers location). More generic Linux script.\r
1142 2007-10-16 Stephane Letz  <letz@grame.fr>\r
1144         * Reorganize jack headers. Improve Linux install/remove scripts.\r
1146 2007-10-16 Stephane Letz  <letz@grame.fr>\r
1148         * Internal loadable client implementation, winpipe version added. \r
1150 2007-10-12 Stephane Letz  <letz@grame.fr>\r
1152         * Internal loadable client implementation, socket version added. \r
1153         * Fix JackEngine::Close() method.\r
1155 2007-10-11 Stephane Letz  <letz@grame.fr>\r
1157         * Internal loadable client implementation (in progress).\r
1159 2007-10-08 Stephane Letz  <letz@grame.fr>\r
1161         * Use .jackdrc file (instead of .jackdmprc). Install script now creates a link "jackd ==> jackdmp" so that automatic launch can work correctly. \r
1162         * Paul Davis patch for -r (--replace-registry) feature.\r
1164 2007-10-07 Stephane Letz  <letz@grame.fr>\r
1166         * Add missing timestamps.c and timestamps.h files. Correctly export public headers in OSX frameworks. Suppress JackEngine::ClientInternalCloseIm method.\r
1168 2007-10-04 Stephane Letz  <letz@grame.fr>\r
1170         * Correct "jack_register_server" in shm.c.\r
1172 2007-10-04 Stephane Letz  <letz@grame.fr>\r
1174         * Fix a resource leak issue in JackCoreAudioDriver::Close(). Better implement "jack_client_open" when linking a client with the server library.\r
1176 2007-10-03 Stephane Letz  <letz@grame.fr>\r
1178         * Rename server_name from "default" to "jackdmp_default" to avoid conflict with regular jackd server.\r
1180 2007-10-02 Stephane Letz  <letz@grame.fr>\r
1182         * Correct jack_client_open "status" management.\r
1184 2007-08-27 Stephane Letz  <letz@grame.fr>\r
1186         * Server/library protocol checking implementation.\r
1188 2007-08-26 Stephane Letz  <letz@grame.fr>\r
1190         * Make "Rename" a method of JackPort class, call it from driver Attach method.\r
1192 2007-08-24 Stephane Letz  <letz@grame.fr>\r
1194         * Implement server temporary (-T) mode.\r
1196 2007-08-23 Stephane Letz  <letz@grame.fr>\r
1198         * Fix a bug in jack_test. Correct JackShmMem destructor. Correct end case in JackClient::Execute. Correct JackMachSemaphore::Disconnect.\r
1200 2007-08-22 Stephane Letz  <letz@grame.fr>\r
1202         * Fix a bug in JackLibClient::Open introduced when adding automatic client renaming.\r
1204 2007-08-21 Stephane Letz  <letz@grame.fr>\r
1206         * Fix backend port alias management (renaming in system:xxx).\r
1208 2007-08-20 Stephane Letz  <letz@grame.fr>\r
1210         * Automatic server launch. Removes unneeded 'volatile' for JackTransportEngine::fWriteCounter.\r
1212 2007-08-19 Stephane Letz  <letz@grame.fr>\r
1214         * Add "systemic" latencies management in CoreAudio driver.\r
1216 2007-08-16 Stephane Letz  <letz@grame.fr>\r
1218         * Automatic client renaming.\r
1220 2007-07-27 Stephane Letz  <letz@grame.fr>\r
1222         * Correct JackEngine::ClientCloseAux (when called from JackEngine::ClientExternalOpen). Correct JackWinEvent::Allocate.\r
1224 2007-07-20 Stephane Letz  <letz@grame.fr>\r
1226         * Correct notification for kActivateClient event.\r
1228 2007-06-11 Stephane Letz  <letz@grame.fr>\r
1230         * Dmitry Baikov buffer size patch.\r
1232 2007-06-10 Stephane Letz  <letz@grame.fr>\r
1234         * Correct deprecated jack_set_sample_rate_callback to return 0 instead of -1.\r
1236 2007-06-09 Stephane Letz  <letz@grame.fr>\r
1238         * Checking in the server to avoid calling the clients if no callback are registered.\r
1240 2007-06-08 Stephane Letz  <letz@grame.fr>\r
1242         * New JackNotication.h header in preparation for callback checking in the server.\r
1244 2007-05-29 Stephane Letz  <letz@grame.fr>\r
1246         * Add "callback exiting" and "jack_frame_time" tests in jack_test.\r
1248 2007-05-09 Stephane Letz  <letz@grame.fr>\r
1250         * Add a mutex in JackGraphManager AllocatePort/ReleasePort methods.\r
1252 2007-05-05 Stephane Letz  <letz@grame.fr>\r
1254         * Add jack_set_client_registration_callback API.\r
1256 2007-05-04 Stephane Letz  <letz@grame.fr>\r
1258         * Steven Chamberlain patch to fix jack_port_type. Test for jack_port_type behaviour in jack_test.cpp tool.\r
1260 2007-05-03 Stephane Letz  <letz@grame.fr>\r
1262         * Steven Chamberlain patch to fix jack_port_by_id export.\r
1264 2007-04-28 Stephane Letz  <letz@grame.fr>\r
1266         * Add new jack_port_set_alias, jack_port_unset_alias and jack_port_get_aliases API.\r
1268 2007-04-27 Stephane Letz  <letz@grame.fr>\r
1270         * Add missing -D__SMP__in OSX project.\r
1272 2007-04-23 Stephane Letz  <letz@grame.fr>\r
1274         * Dmitry Baikov jackmp-time patch: add jack_get_time, jack_time_to_frames, jack_frames_to_time.\r
1276 2007-04-03 Stephane Letz  <letz@grame.fr>\r
1278         * Dmitry Baikov remove-nframes patch.\r
1280 2007-04-02 Stephane Letz  <letz@grame.fr>\r
1282         * Dmitry Baikov lost-event patch.\r
1284 2007-04-01 Stephane Letz  <letz@grame.fr>\r
1286         * Merge JackGraphManager Remove and Release method in a unique Release method.\r
1288 2007-03-12 Stephane Letz  <letz@grame.fr>\r
1289  \r
1290         * Bug fix in JackMidiBuffer::MaxEventSize().\r
1292 2007-03-09 Stephane Letz  <letz@grame.fr>\r
1293  \r
1294         * Dmitry Baikov MIDI patch phase 2.\r
1296 2007-03-08 Stephane Letz  <letz@grame.fr>\r
1297  \r
1298         * Dmitry Baikov jackmp-port-clear patch.\r
1300 2007-03-06 Stephane Letz  <letz@grame.fr>\r
1302         * Dmitry Baikov MIDI patch phase 1.\r
1304 2007-03-04 Stephane Letz  <letz@grame.fr>\r
1306         * Dmitry Baikov patch for JackGraphManager.cpp.\r
1307         * Dmitry Baikov MIDI patch phase 0.\r
1309 2007-02-19 Stephane Letz  <letz@grame.fr>\r
1310         \r
1311         * Correct back JackAlsaDriver::Read method. \r
1313 2007-02-14 Stephane Letz  <letz@grame.fr>\r
1314         \r
1315         * Better error checking in PortAudio driver.\r
1317 2007-02-07 Stephane Letz  <letz@grame.fr>\r
1318         \r
1319         * Thom Johansen fix for port buffer alignment issues.\r
1321 2007-02-05 Stephane Letz  <letz@grame.fr>\r
1322         \r
1323         * Add Pieter Palmers FreeBob driver.\r
1324         * Thibault LeMeur ALSA driver patch.\r
1326 2007-01-31 Stephane Letz  <letz@grame.fr>\r
1328         * Use pthread_attr_setstacksize in JackPosixThread class.\r
1330 2007-01-30 Stephane Letz  <letz@grame.fr>\r
1332         * New LockAllMemory and UnlockAllMemory functions.\r
1334 2007-01-29 Stephane Letz  <letz@grame.fr>\r
1336         * More robust activation/deactivation code, especially in case of client crash.\r
1338 2007-01-27 Stephane Letz  <letz@grame.fr>\r
1340         * Uses a time out value of 10 sec in freewheel mode (like jack).\r
1342 2007-01-21 Stephane Letz  <letz@grame.fr>\r
1344         * More client debug code: check if the client is still valid in every JackDebugClient method, check if the library context is still valid in every API call.\r
1346 2007-01-14 Stephane Letz  <letz@grame.fr>\r
1348         * Implement thread.h API.\r
1350 2007-01-09 Stephane Letz  <letz@grame.fr>\r
1352         * New server/client data transfer model to fix a 64 bits system bug. Fix a device name reversal bug in ALSA driver.\r
1354 2007-01-04 Stephane Letz  <letz@grame.fr>\r
1356         *  Add call to the init callback (set up using the jack_set_thread_init_callback API) in Real-Time and Notification threads. Define a new 'kActivateClient' notification. \r
1358 2007-01-02 Stephane Letz  <letz@grame.fr>\r
1360         * Internal cleanup.\r
1362 2006-12-23 Stephane Letz  <letz@grame.fr>\r
1364         * shared_ports renamed to shared_graph.\r
1366 2006-12-15 Stephane Letz  <letz@grame.fr>\r
1368         * Move client refnum management in JackEngine.\r
1370 2006-12-12 Stephane Letz  <letz@grame.fr>\r
1372         * Tom Szilagyi memory leak fix in ringbuffer.c.\r
1374 2006-11-29 Stephane Letz  <letz@grame.fr>\r
1376         * Correct JackWinEnvent::Allocate (handle the ERROR_ALREADY_EXISTS case). Correct JackEngine::ClientExternalNew.\r
1377         * Karsten Wiese correction for ALSA usx2y driver.\r
1379 2006-11-22 Stephane Letz  <letz@grame.fr>\r
1381         * In synchronous mode, if the driver time out is reached, the server may get desynchronized (pending signal may arrive in later cycles), \r
1382         improve audio driver synchronous code to better handle this case.\r
1383          \r
1384 2006-11-08 Stephane Letz  <letz@grame.fr>\r
1386         * Synchronize ALSA backend with jack one.\r
1388 2006-11-04 Stephane Letz  <letz@grame.fr>\r
1390         * Use -D to setup ADDON_DIR on OSX and Linux.\r
1392 2006-10-11 Stephane Letz  <letz@grame.fr>\r
1394         * Correct server SetBufferSize in case of failure. Correct PortAudio driver help.\r
1396 2006-10-06 Stephane Letz  <letz@grame.fr>\r
1398         * Add a new cpu testing/loading client.\r
1400 2006-09-23  Stephane Letz  <letz@grame.fr>\r
1402         * Rename global "verbose" in "jack_verbose" to avoid symbol clash with PureData.\r
1404 2006-09-20  Stephane Letz  <letz@grame.fr>\r
1406         * On Windows, avoid to use the unsafe Kill thread method. Use thread Stop instead and have blocked IO be unlocked. \r
1407         * Still get RT thread termination problems, restore a version that works on OSX and Linux with conditionnal compilation for now.\r
1409 2006-09-16  Stephane Letz  <letz@grame.fr>\r
1411         * Restore behaviour of LoopBack driver, which has to be opened in any case...\r
1413 2006-09-15  Stephane Letz  <letz@grame.fr>\r
1415         * On Windows version, use signal to quit the server.\r
1417 2006-09-13  Stephane Letz  <letz@grame.fr>\r
1419         * Correct pipe destruction bug in JackWinNamedPipe class.\r
1421 2006-09-11  Stephane Letz  <letz@grame.fr>\r
1423         * Handling of LoopBack driver only when really needed.\r
1424         * Correct crash bug when closing clients on Windows due to multi-threading synchronization issues.\r
1426 2006-09-06  Stephane Letz  <letz@grame.fr>\r
1428         * Correct coreaudio driver (input was not working since 0.55 version).\r
1429         * Version for 0.58 release.\r
1431 2006-09-04  Stephane Letz  <letz@grame.fr>\r
1433         * Correct Windows VC++ projects.\r
1435 2006-09-03  Stephane Letz  <letz@grame.fr>\r
1437         * First import of version 0.58 base code\r