More info in JackNetMasterInterface::SyncRecv.
[jack2.git] / ChangeLog
blob756bae946e5b6d088cb6939f05d67a48588a7905
1 ---------------------------
2   Contributors
3 ---------------------------
5 Dmitry Baikov
6 Steven Chamberlain
7 Thom Johansen
8 Thibault LeMeur
9 Pieter Palmers
10 Tom Szilagyi
11 Andrzej Szombierski 
12 Kjetil S.Matheussen
13 Pieter Palmers
14 Tim Blechmann
15 Marc-Olivier Barre
16 Nedko Arnaudov
17 Fernando Lopez-Lezcano
18 Romain Moret
19 Florian Faber
20 Michael Voigt
22 ---------------------------
23   Jackdmp changes log
24 ---------------------------
26 2009-01-26 Stephane Letz  <letz@grame.fr>
28         * Fix JackNetInterface::SetNetBufferSize for socket buffer size computation and JackNetMasterInterface::DataRecv if synch packet is received, various cleanup.
29         * Fix in JackAlsaAdapter::Open.
30         * Simplify audio packet order verification.
31         * Set default mode to 'slow' in JackNetDriver and JackNetAdapter.
33 2009-01-19 Stephane Letz  <letz@grame.fr>
35         * Synchronize ALSA backend code with JACK1 one.
37 2009-01-17 Stephane Letz  <letz@grame.fr>
39         * JackMessageBuffer was using thread "Stop" scheme in destructor, now use the safer thread "Kill" way. 
41 2009-01-14 Stephane Letz  <letz@grame.fr>
43         * Cleanup server starting code for clients directly linked with libjackserver.so.
45 2009-01-07 Stephane Letz  <letz@grame.fr>
47         * Use up to BUFFER_SIZE_MAX frames in midi ports, fix for ticket #117.
49 2009-01-05 Stephane Letz  <letz@grame.fr>
51         * Synchronize jack2 public headers with jack1 ones. 
52         * Implement jack_client_real_time_priority and jack_client_max_real_time_priority API.
54 2008-12-18 Stephane Letz  <letz@grame.fr>
56         * For ALSA driver, synchronize with latest jack1 memops functions. 
58 2008-12-17 Stephane Letz  <letz@grame.fr>
60         * Use JACK_DRIVER_DIR variable in internal clients loader.
62 2008-12-16 Stephane Letz  <letz@grame.fr>
64         * Client and library global context cleanup in case of incorrect shutdown handling (that is applications not correctly closing client after server has shutdown).
66 2008-11-27 Stephane Letz  <letz@grame.fr>
68         * Report ringbuffer.c fixes from jack1.
70 2008-11-21 Stephane Letz  <letz@grame.fr>
72         * Better isolation of server and clients system resources to allow starting the server in several user account at the same time.
74 2008-11-19 Stephane Letz  <letz@grame.fr>
76         * Libjack shutdown handler does not "deactivate" (fActive = false) the client anymore, so that jack_deactivate correctly does the job later on.
77         * Filter SIGPIPE to avoid having client get a SIGPIPE when trying to access a died server. 
79 2008-11-14 Stephane Letz  <letz@grame.fr>
81         * Version 1.9.1 started, fix symbols export in ringbuffer.c, cleanup on Windows.
83 2008-11-13 Stephane Letz  <letz@grame.fr>
85         * Fix jackctl_server_unload_internal.
87 2008-10-30 Stephane Letz  <letz@grame.fr>
88         
89         * Fix Midi port initialization in JackNetDriver.
90         * Correct JackClient::ShutDown.
92 2008-10-23 Stephane Letz  <letz@grame.fr>
93         
94         * Fix a crash in JackEngine::Close when backend cannot be loaded.
95         * Tim Blechmann optimization patch.
96         * Backport of latest Paul alsa_seqmidi changes.
98 2008-10-15 Stephane Letz  <letz@grame.fr>
99         
100         * Fix a conflict with Audio Hijack in JackCoreAudioDriver. 
102 2008-10-09 Stephane Letz  <letz@grame.fr>
103         
104         * Use a mutex to make jack_client_open/jack_client_close thread safe, remove use of jack_init/jack_uninit.
106 2008-10-08 Stephane Letz  <letz@grame.fr>
107         
108         * Fix a SMP related bug introduced in rev 2957 : remove the __SMP__ flag and define LOCK for SMP in all cases.
110 2008-10-02 Stephane Letz  <letz@grame.fr>
111         
112         * Correct file permission for jack-shm-registry POSIX shared memory segment.
113         * Checking for libsamplerate in waf, fix ticket #89." 
114         * Header cleanup, add --clients and --ports options in configure.
116 2008-09-22 Stephane Letz  <letz@grame.fr>
117         
118         * Cleanup jack_port_id_t/jack_port_t mess, should work again on 64 bits machines."
120 2008-09-20 Stephane Letz  <letz@grame.fr>
121         
122         * Michael Voigt JackAPI cleanup patch.
124 2008-09-19 Stephane Letz  <letz@grame.fr>
125         
126         * Michael Voigt JackTime cleanup patch.
128 2008-09-17 Stephane Letz  <letz@grame.fr>
129         
130         * New JackDriverInfo class to cleanup driver loading code.
132 2008-09-08 Stephane Letz  <letz@grame.fr>
133         
134         * Better symbols export for server and client side libraries. 
136 2008-09-06 Stephane Letz  <letz@grame.fr>
137         
138         * Correct driver hierarchy on macosx and windows targets.
140 2008-09-05 Stephane Letz  <letz@grame.fr>
141         
142         * Merge Michael Voigt "drops" branch after reorganization step.
144 2008-09-04 Stephane Letz  <letz@grame.fr>
145         
146         * Michael Voigt 4th source reorganization patch.
147         * Correct JackNetDriver initialization.
149 2008-09-03 Stephane Letz  <letz@grame.fr>
150         
151         * Implement DBUS entry points to handle internal clients, add new commands in jack_control.
152         * Add new "desc" (extended description) in jack_driver_desc_t, to be used by backends and internal clients.
154 2008-09-01 Stephane Letz  <letz@grame.fr>
155         
156         * Michael Voigt third source reorganization patch.
157         * Add new jack_set_port_rename_callback API, jack_port_set_name is now a server request that call port rename callbacks.
159 2008-08-31 Stephane Letz  <letz@grame.fr>
160         
161         * Michael Voigt second source reorganization patch.
163 2008-08-28 Stephane Letz  <letz@grame.fr>
164         
165         * Michael Voigt first source reorganization patch.
167 2008-08-26 Stephane Letz  <letz@grame.fr>
168         
169         * Better parameter handling in JackCoreAudioAdapter.
170         * Fix memory leaks.
172 2008-08-23 Stephane Letz  <letz@grame.fr>
173         
174         * Implements internal clients management API.
176 2008-08-22 Stephane Letz  <letz@grame.fr>
177         
178         * Move GetCurrentTransportFrame code from JackClient to JackTransportEngine.
179         * Add a fNetworkSync state in JackTransportEngine used in network.
181 2008-08-03 Stephane Letz  <letz@grame.fr>
182         
183         * Fix JackFrameTimer::Time2Frames and JackTimer::Frames2Time, jack_cpu compiled again.
185 2008-08-01 Stephane Letz  <letz@grame.fr>
186         
187         * Fix desallocation of remaining clients when server quits.
188         * Close remaining client sockets in JackSocketServerChannel::Close.
189         * Correct JackClient::Close() to request server close only if server is running.
191 2008-07-30 Stephane Letz  <letz@grame.fr>
193         * Remove restriction that port connection could be done only if the client was activated.
195 2008-07-25 Stephane Letz  <letz@grame.fr>
197         * Florian Faber patch for 32 bit float (LE only) support to jack's alsa driver.
198         * Fix a crash bug when desallocating a non completely created external client.
200 2008-07-24 Stephane Letz  <letz@grame.fr>
202         * Fix server client OSX special notification mechanism, CoreAudio driver compilation back for 10.4.
204 2008-07-18 Stephane Letz  <letz@grame.fr>
206         * Correct audioadapter when a sample rate value different from jack server one is chosen.
207         * Cleanup in JackTransportEngine, move some code that was in JackClient class.
208         * Remove transport_type.h file, move transport types in types.h file.
210 2008-07-12 Stephane Letz  <letz@grame.fr>
212         * Loopback driver working again.
214 2008-07-08 Stephane Letz  <letz@grame.fr>
216         * Add jack_get_descriptor in internal clients API.
217         * Fix JackFreewheelDriver::Process() in case if client time-out : continue processing until a better recovery strategy is chosen.
219 2008-07-08 Stephane Letz  <letz@grame.fr>
221         * Merge windows branch back to trunk.
223 2008-07-05 Stephane Letz  <letz@grame.fr>
225         * Netioadapter renamed in audioadapter.
227 2008-07-04 Stephane Letz  <letz@grame.fr>
229         * Netioadapter now adapts for buffer size and sample rate changes.
231 2008-07-03 Stephane Letz  <letz@grame.fr>
233         * Add IsFixedBufferSize method in all drivers.
235 2008-07-02 Stephane Letz  <letz@grame.fr>
237         * New netioadapter in server client.
239 2008-06-20 Stephane Letz  <letz@grame.fr>
241         * Add new jack_client_stop_thread and jack_client_kill_thread API.
242         * New generic BuildClientPath for internal clients loading.
244 2008-06-19 Stephane Letz  <letz@grame.fr>
246         * Embed JackEngineControl in JackDriver (starting from Tim Blechmann idea).
248 2008-06-18 Stephane Letz  <letz@grame.fr>
250         * On OSX waf now compiles Universal Binaries.
252 2008-06-17 Stephane Letz  <letz@grame.fr>
254         * Driver class hierarchy simplification.
255         * Update waf for compilation on OSX.
257 2008-06-13 Stephane Letz  <letz@grame.fr>
259         * Correct JackPosixThread::ThreadHandler termination, do not set buffer size if same value is used.
260         * Another Tim Blechmann cleanup patch + do no allocate JackClientControl in shared memory for server internal clients.
262 2008-06-12 Stephane Letz  <letz@grame.fr>
264         * Another Tim Blechmann patch to remove unnecessary virtual methods.
266 2008-06-09 Stephane Letz  <letz@grame.fr>
268         * Improve net driver so that jack clients can be registered even if driver has not yet started. 
270 2008-06-08 Stephane Letz  <letz@grame.fr>
272         * Add a missing EXPORT for JackException class. 
274 2008-06-06 Stephane Letz  <letz@grame.fr>
276         * Better error checking in JackGraphManager::RemoveAllPorts.
278 2008-06-05 Stephane Letz  <letz@grame.fr>
280         * Better control of exported symbols.
281         * Fix a bug in backend parameter parsing.
283 2008-06-04 Stephane Letz  <letz@grame.fr>
285         * Merge of network branch.
286         * Use of set_threaded_log_function only when needed in RT threads.
288 2008-06-02 Stephane Letz  <letz@grame.fr>
290         * Tim Blechmann patch to remove unnecessary virtual methods : choice of the appropriate platform version is now done at compilation time.
292 2008-06-02 Stephane Letz  <letz@grame.fr>
294         * Cleanup and correct wscript for example-clients.
295         * Add a test for coherent freewheel state in JackDebugClient. 
296         * Cleanup JackMutex class.
298 2008-05-31 Stephane Letz  <letz@grame.fr>
300         * Add missing include for proper compilation when jack headers are not installed.
302 2008-05-30 Stephane Letz  <letz@grame.fr>
304         * Avoid using Terminate when "quitting" in RT thread. Cleanup JackEngineInterface.
306 2008-05-29 Stephane Letz  <letz@grame.fr>
308         * Tim Blechmann patch for JackPosixSemaphore (still to test...).
309         * Correct JackWinThread::Terminate.
311 2008-05-28 Stephane Letz  <letz@grame.fr>
313         * New testMutex test, correct timing in drivers.
315 2008-05-27 Stephane Letz  <letz@grame.fr>
317         * Correct timing in drivers : frame time has to be incremented before Read.
319 2008-05-26 Stephane Letz  <letz@grame.fr>
321         * Merge control branch.
322         * Cleanup example clients : use jack_client_open and install a proper 'quit' signal handler.
324 2008-05-24 Stephane Letz  <letz@grame.fr>
326         * Tim Blechmann RAII idiom patch for JackServer ressource initialization.
328 2008-05-23 Stephane Letz  <letz@grame.fr>
330         * Use StartSync to start the client notification thread, otherwise initial notifications from the server may be lost.
331         * Tim Blechmann JackEngine cleanup patch.
332         * Call init callback in notification thread also.
334 2008-05-22 Stephane Letz  <letz@grame.fr>
336         * Correct JackPort::ClearBuffer.
337         * Correct JackEngine inheritance graph.
339 2008-05-21 Stephane Letz  <letz@grame.fr>
341         * Correct JackEngine::PortUnRegister, JackEngine::ClientCloseAux and JackEngine::ClientDeactivate to correctly send notifications. 
342         * New jack_get_client_pid API, implemented on server side.
343         * Better handling of graph state read functions : never wait when used in the real-time thread, current state is used.
345 2008-05-20 Stephane Letz  <letz@grame.fr>
347         * Package number bumped to 1.90 everywhere.
348         * Implementation of jack_get_max_delayed_usecs, jack_get_xrun_delayed_usecs and jack_reset_max_delayed_usecs.
350 2008-05-19 Stephane Letz  <letz@grame.fr>
352         * Use of placement new for dynamic port allocation is possibly not safe... so avoid that until a definitive answer is found.
353         * JackAudioDriver::ProcessAsync and JackAudioDriver::ProcessSync were broken at some point : 0 has to be returned in all cases.
355 2008-05-16 Stephane Letz  <letz@grame.fr>
357         * 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.
359 2008-05-14 Stephane Letz  <letz@grame.fr>
361         * Fix JackEngine::Close to only delete "loadable" clients.
363 2008-05-13 Stephane Letz  <letz@grame.fr>
365         * Fix exception handling in JackShmMem::operator new.
366         * Fix JackMutex constructor.
368 2008-05-12 Stephane Letz  <letz@grame.fr>
370         * Allows wrapper library to log in a file (using JACK_WRAPPER_DEBUG=file).
372 2008-05-09 Stephane Letz  <letz@grame.fr>
374         * Mike Taht's fix for proper alsa xrun duration measurement.
376 2008-05-06 Stephane Letz  <letz@grame.fr>
378         * Fix JackPosixThread::StartImp and JackWinThread::StartImp.
380 2008-05-05 Stephane Letz  <letz@grame.fr>
382         * Fix JackClient::Close : notification channel is stopped first to avoid receiving notifications while closing and Close is again a synchronous call.
383         * No more remaining client close in JackEngine::Close().
385 2008-05-01 Stephane Letz  <letz@grame.fr>
387         * Fix JackMachClientChannel::InternalClientLoad.
388         * Correct internal client loading.
389         * For threaded drivers, AcquireRealTime is called after Init step.
391 2008-04-30 Stephane Letz  <letz@grame.fr>
392                 
393         * Fix JackRestartThreadedDriver::Execute.
394         * Better handling of init and run state in JackThread.
396 2008-04-28 Stephane Letz  <letz@grame.fr>
397                 
398         * Add exceptions management to distinguish drivers recoverable errors from non recoverable ones. Will be used in special threaded drivers (for network).
400 2008-04-25 Stephane Letz  <letz@grame.fr>
401                 
402         * Correct JackServerGlobals::Init: now check is server is already started.
404 2008-04-24 Stephane Letz  <letz@grame.fr>
405                 
406         * Correct internal client load.
408 2008-04-10 Stephane Letz  <letz@grame.fr>
409                 
410         * Remove Linux Makefile, update Readme.
412 2008-04-03 Stephane Letz  <letz@grame.fr>
413                 
414         * Correct a dirty port array issue in JackGraphManager::GetPortsAux.
416 2008-03-31 Stephane Letz  <letz@grame.fr>
417                 
418         * New SetNonBlocking method for JackSocket.
420 2008-03-29 Stephane Letz  <letz@grame.fr>
421                 
422         * Correct a missing parameter in the usage message of jack_midiseq.
423         * Add a client counter in wrapper layer : library is unloaded only when all clients have been closed.
425 2008-03-28 Stephane Letz  <letz@grame.fr>
426                 
427         * Correct PortRegister, port name checking must be done on server side.
428         * Add an Init method for blocking drivers to be decorated using JackThreadedDriver class.
430 2008-03-27 Stephane Letz  <letz@grame.fr>
431                 
432         * Pieter Palmers patch for FFADO driver.
433         * Dmitry Baikov patch for alsa_rawmidi driver.
435 2008-03-26 Stephane Letz  <letz@grame.fr>
436                 
437         * JackWrapperAPI.cpp: use open_library in jack_client_name_size, jack_port_name_size and jack_port_type_size.
439 2008-03-20 Stephane Letz  <letz@grame.fr>
440                 
441         * Transport timebase fix.
443 2008-03-19 Stephane Letz  <letz@grame.fr>
444                 
445         * Synchronise transport.h with latest jackd version (Video handling).
447 2008-03-19 Stephane Letz  <letz@grame.fr>
448                 
449         * Add jack_port_type_id in jack API.
451 2008-03-17 Stephane Letz  <letz@grame.fr>
452                 
453         * New jack_server_control client to test notifications when linked to the server library.
454         * Correct JackClient::Activate so that first kGraphOrderCallback can be received by the client notification thread.
455         * MIDI API in wrapper lib.
456         * Fix connect notification to deliver *one* notification only.
458 2008-03-16 Stephane Letz  <letz@grame.fr>
459                 
460         * Use engine in JackAlsaDriver::port_register and JackAlsaDriver::port_unregister.
461         * New JackLockedEngine decorator class to serialize access from ALSA Midi thread, command thread and in-server clients.
463 2008-03-15 Stephane Letz  <letz@grame.fr>
464                 
465         * Add -L (extra output latency in aynchronous mode) in CoreAudio driver.
466         * RT scheduling for OSX thread (when use in dummy driver).
468 2008-03-14 Stephane Letz  <letz@grame.fr>
469                 
470         * Fernando Lopez-Lezcano scons patch.
472 2008-03-13 Stephane Letz  <letz@grame.fr>
473                 
474         * Add test for jack_cycle_wait, jack_cycle_wait and jack_set_process_thread API.
475         * Add jack_set_process_thread in wrapper library.
476         * Correct all backend playback port latency in case of "asynchronous" mode (1 buffer more).
477         * Correct jack_port_get_total_latency.
478         * Correct jack_port_by_id in wrapper library.
480 2008-03-12 Stephane Letz  <letz@grame.fr>
481                 
482         * Marc-Olivier Barre library related scons patch.
483         * Nedko Arnaudov FULL_MIMIC patch.
484         * Automatic server launch in wrapper layer.
486 2008-03-11 Stephane Letz  <letz@grame.fr>
487                 
488         * Fix engine real-time notification (was broken since ??).
489         * Correct jack_client_open_aux, jack_client_open and jack_client_new.
490         * Correct jack_internal_client_load for wrapper layer.
491         * In thread model, execute a dummy cycle to be sure thread has the correct properties (ensure thread creation is finished).
492         * Correct jack_port_get_connections function (should return NULL when no connections).
494 2008-03-10 Stephane Letz  <letz@grame.fr>
495                 
496         * Nedko Arnaudov log patch.
497         * Remove unneeded jack_port_connect API.
499 2008-03-07 Stephane Letz  <letz@grame.fr>
500                 
501         * Define an internal jack_client_open_aux needed for library wrapper feature.
502         * Improve wrapper code.
503         * Correct FreeBob driver_initialize.
505 2008-03-06 Stephane Letz  <letz@grame.fr>
506                 
507         * Marc-Olivier Barre scons patch (3).
509 2008-03-06 Stephane Letz  <letz@grame.fr>
510                 
511         * Fix JackSocketClientChannel::ClientClose: async call from the client and server does not need to write any reply. 
512         * Correct port notification: 2 notifications have to be sent (src, dst) and (dst, src)...
514 2008-03-05 Stephane Letz  <letz@grame.fr>
515                 
516         * libjackdmp.so renamed to libjackservermp.so and same for OSX framework.
517         * tw1.c example added (new thread model).
518         * Marc-Olivier Barre scons patch (2).
520 2008-03-02 Stephane Letz  <letz@grame.fr>
521                 
522         * Correct JackSocketClientChannel::ClientClose to use ServerSyncCall instead of ServerAsyncCall.
523         * Better documentation in jack.h.
524         * Marc-Olivier Barre scons patch.
526 2008-03-02 Stephane Letz  <letz@grame.fr>
527                 
528         * Correct jack_get_time propotype.
530 2008-02-25 Stephane Letz  <letz@grame.fr>
531                 
532         * Add TimeCallback in JackDebugClient class.
534 2008-02-22 Stephane Letz  <letz@grame.fr>
535                 
536         * Correct JACK_port_unregister.
538 2008-02-21 Stephane Letz  <letz@grame.fr>
539                 
540         * Add port register/unregister notification in JackAlsaDriver.
542 2008-02-12 Stephane Letz  <letz@grame.fr>
543                 
544         * Fix in JackClient::Error(): when RT thread is failing and calling Shutdown, Shutdown was not desactivating the client correctly. 
545         * Notify ports unregistration in JackEngine::ClientCloseAux.
546         * Thanks Esben Stien for helping finding these bugs.
548 2008-02-11 Stephane Letz  <letz@grame.fr>
549                 
550         * Use SetAlias for port naming. Use jackd midi port naming scheme.
552 2008-02-08 Stephane Letz  <letz@grame.fr>
553                 
554         * More robust external API.
556 2008-02-07 Stephane Letz  <letz@grame.fr>
557                 
558         * Correct "server_connect": close the communication channel.
560 2008-02-05 Stephane Letz  <letz@grame.fr>
561                 
562         * Reduce WaitGraphChange wait value.
563         * Remove use of assert in JackFifo, JackMachSemaphore, and JackPosixSemaphore: print an error instead.
565 2008-02-03 Stephane Letz  <letz@grame.fr>
567         * Add "Readme" file from package in src folder.
568         * Tim Blechmann sse optimization patch for JackaudioPort::MixAudioBuffer, use of Apple Accelerate framework on OSX.
570 2008-02-02 Stephane Letz  <letz@grame.fr>
572         * Tim Blechmann patches.
574 2008-02-01 Stephane Letz  <letz@grame.fr>
576         * Move transport related methods from JackEngine to JackServer.
577         * Finish port connection callback server side implementation.
579 2008-01-31 Stephane Letz  <letz@grame.fr>
581         * Remove checking thread in CoreAudio driver, better device state change recovery strategy: the driver is stopped and restarted.
582         * jack_thread_wait implementation.
583         * Add jack_thread_wait client example.
584         * Add jack_mp_thread_wait client example.
586 2008-01-30 Stephane Letz  <letz@grame.fr>
587         
588         * Latest jack_lsp code from jack SVN.
589         * Update in usx2y.c and JackPort.cpp to match jackd 0.109.2.
591 2008-01-29 Stephane Letz  <letz@grame.fr>
592         
593         * Implement jack_recompute_total_latency and jack_recompute_total_latencies.
594         * Remove fBufferSize field in JackGraphManager object.
595         * Port connection callback, client side.
597 2008-01-28 Stephane Letz  <letz@grame.fr>
599         * Updated API to match jack 0.109.0 version (in progress). Correct checking thread in CoreAudio driver.
600         * Port connection callback, server side.
601         * Cleanup jack_port_connected_to implementation.
603 2008-01-25 Stephane Letz  <letz@grame.fr>
605         * OSX 32/64 bits version.
607 2008-01-24 Stephane Letz  <letz@grame.fr>
609         * CoreAudio driver improvement: detect and notify abnormal situations (stopped driver in case of SR change...).
611 2008-01-03 Stephane Letz  <letz@grame.fr>
613         * Dmitry Baikov MIDI patch : alsa_seqmidi and alsa_rammidi drivers.
615 2008-01-03 Stephane Letz  <letz@grame.fr>
617         * Tim Blechmann patch for JackGraphManager::GetPortsAux memory leak, Tim Blechmann patch for scons install.
619 2007-12-12 Stephane Letz  <letz@grame.fr>
621         * Cleanup in CoreAudio driver.
623 2007-12-11 Stephane Letz  <letz@grame.fr>
625         * Change string management for proper compilation with gcc 4.2.2. JackLog cleanup.
627 2007-12-08 Stephane Letz  <letz@grame.fr>
629         * Tim Blechmann scons patch.
631 2007-12-07 Stephane Letz  <letz@grame.fr>
633         * Pieter Palmers second new build system: scons and Makefile based build.
635 2007-12-06 Stephane Letz  <letz@grame.fr>
637         * Pieter Palmers FFADO driver and scons based build.
639 2007-12-05 Stephane Letz  <letz@grame.fr>
641         * Correct sample_rate management in JackCoreAudioDriver::Open. Better handling in sample_rate change listener.
643 2007-12-04 Stephane Letz  <letz@grame.fr>
645         * Add a sample_rate change listener in CoreAudio driver.
647 2007-12-03 Stephane Letz  <letz@grame.fr>
649         * Correct bug in CoreAudio driver sample rate management.
651 2007-11-30 Stephane Letz  <letz@grame.fr>
653         * Correct JackMachNotifyChannel::ClientNotify.
655 2007-11-29 Stephane Letz  <letz@grame.fr>
657         * Correct fPeriodUsecs computation in JackAudioDriver::SetBufferSize and JackAudioDriver::SetSampleRate. 
659 2007-11-28 Stephane Letz  <letz@grame.fr>
661         * On OSX, use jack server name in notification system.
663 2007-11-21 Stephane Letz  <letz@grame.fr>
665         * On OSX, use CFNotificationCenterPostNotificationWithOptions with kCFNotificationDeliverImmediately | kCFNotificationPostToAllSessions for server ==> JackRouter plugin notification.
667 2007-11-20 Stephane Letz  <letz@grame.fr>
669         * Correct CheckPort in JackAPI.cpp.
671 2007-11-15 Stephane Letz  <letz@grame.fr>
673         * Move OSX start/stop notification mechanism in Jackdmp.cpp.
675 2007-11-05 Stephane Letz  <letz@grame.fr>
677         * Use of JackWinSemaphore instead of JackWinEvent for inter-process synchronization.
678         * Correct types.h for use with MINGW on Windows.
680 2007-11-04 Stephane Letz  <letz@grame.fr>
682         * Add an implementation for obsolete jack_internal_client_new and jack_internal_client_close. Add missing jack_port_type_size.
684 2007-11-02 Stephane Letz  <letz@grame.fr>
686         * Correct ALSA driver Attach method: internal driver may have changed the buffer_size and sample_rate values.
687         * Add JackWinSemaphore class.
689 2007-10-01 Stephane Letz  <letz@grame.fr>
691         * Server and user directory related code moved in a JackTools file.
692         * Client name rewritting to remove path characters (used in fifo naming).
694 2007-10-30 Stephane Letz  <letz@grame.fr>
696         * Fix a bug in freewheel management in async mode: drivers now receive the kStartFreewheelCallback and kStopFreewheelCallback notifications.
698 2007-10-26 Stephane Letz  <letz@grame.fr>
700         * Add midiseq and midisine examples. 
701         * Cleanup old zombification code. 
702         * Linux Makefile now install jack headers.
703         * Use of JACK_CLIENT_DEBUG environment variable to activate debug client mode.
704         * Definition of JACK_LOCATION variable using -D in the Makefile.
705         * Restore jack 0.103.0 MIDI API version.
707 2007-10-25 Stephane Letz  <letz@grame.fr>
709         * Merge of Dmitry Baikov MIDI branch. 
710         * Correct JackGraphManager::GetPortsAux to use port type.
711         * Remove JackEngineTiming class: code moved in JackEngineControl.
713 2007-10-24 Stephane Letz  <letz@grame.fr>
715         * Implementation of server_name setting (-n).
717 2007-10-23 Stephane Letz  <letz@grame.fr>
719         * Correct jack_acquire_real_time_scheduling on OSX.
721 2007-10-18 Stephane Letz  <letz@grame.fr>
723         * Use LIB_DIR variable for 64 bits related compilation (drivers location). More generic Linux script.
725 2007-10-16 Stephane Letz  <letz@grame.fr>
727         * Reorganize jack headers. Improve Linux install/remove scripts.
729 2007-10-16 Stephane Letz  <letz@grame.fr>
731         * Internal loadable client implementation, winpipe version added. 
733 2007-10-12 Stephane Letz  <letz@grame.fr>
735         * Internal loadable client implementation, socket version added. 
736         * Fix JackEngine::Close() method.
738 2007-10-11 Stephane Letz  <letz@grame.fr>
740         * Internal loadable client implementation (in progress).
742 2007-10-08 Stephane Letz  <letz@grame.fr>
744         * Use .jackdrc file (instead of .jackdmprc). Install script now creates a link "jackd ==> jackdmp" so that automatic launch can work correctly. 
745         * Paul Davis patch for -r (--replace-registry) feature.
747 2007-10-07 Stephane Letz  <letz@grame.fr>
749         * Add missing timestamps.c and timestamps.h files. Correctly export public headers in OSX frameworks. Suppress JackEngine::ClientInternalCloseIm method.
751 2007-10-04 Stephane Letz  <letz@grame.fr>
753         * Correct "jack_register_server" in shm.c.
755 2007-10-04 Stephane Letz  <letz@grame.fr>
757         * Fix a resource leak issue in JackCoreAudioDriver::Close(). Better implement "jack_client_open" when linking a client with the server library.
759 2007-10-03 Stephane Letz  <letz@grame.fr>
761         * Rename server_name from "default" to "jackdmp_default" to avoid conflict with regular jackd server.
763 2007-10-02 Stephane Letz  <letz@grame.fr>
765         * Correct jack_client_open "status" management.
767 2007-08-27 Stephane Letz  <letz@grame.fr>
769         * Server/library protocol checking implementation.
771 2007-08-26 Stephane Letz  <letz@grame.fr>
773         * Make "Rename" a method of JackPort class, call it from driver Attach method.
775 2007-08-24 Stephane Letz  <letz@grame.fr>
777         * Implement server temporary (-T) mode.
779 2007-08-23 Stephane Letz  <letz@grame.fr>
781         * Fix a bug in jack_test. Correct JackShmMem destructor. Correct end case in JackClient::Execute. Correct JackMachSemaphore::Disconnect.
783 2007-08-22 Stephane Letz  <letz@grame.fr>
785         * Fix a bug in JackLibClient::Open introduced when adding automatic client renaming.
787 2007-08-21 Stephane Letz  <letz@grame.fr>
789         * Fix backend port alias management (renaming in system:xxx).
791 2007-08-20 Stephane Letz  <letz@grame.fr>
793         * Automatic server launch. Removes unneeded 'volatile' for JackTransportEngine::fWriteCounter.
795 2007-08-19 Stephane Letz  <letz@grame.fr>
797         * Add "systemic" latencies management in CoreAudio driver.
799 2007-08-16 Stephane Letz  <letz@grame.fr>
801         * Automatic client renaming.
803 2007-07-27 Stephane Letz  <letz@grame.fr>
805         * Correct JackEngine::ClientCloseAux (when called from JackEngine::ClientExternalOpen). Correct JackWinEvent::Allocate.
807 2007-07-20 Stephane Letz  <letz@grame.fr>
809         * Correct notification for kActivateClient event.
811 2007-06-11 Stephane Letz  <letz@grame.fr>
813         * Dmitry Baikov buffer size patch.
815 2007-06-10 Stephane Letz  <letz@grame.fr>
817         * Correct deprecated jack_set_sample_rate_callback to return 0 instead of -1.
819 2007-06-09 Stephane Letz  <letz@grame.fr>
821         * Checking in the server to avoid calling the clients if no callback are registered.
823 2007-06-08 Stephane Letz  <letz@grame.fr>
825         * New JackNotication.h header in preparation for callback checking in the server.
827 2007-05-29 Stephane Letz  <letz@grame.fr>
829         * Add "callback exiting" and "jack_frame_time" tests in jack_test.
831 2007-05-09 Stephane Letz  <letz@grame.fr>
833         * Add a mutex in JackGraphManager AllocatePort/ReleasePort methods.
835 2007-05-05 Stephane Letz  <letz@grame.fr>
837         * Add jack_set_client_registration_callback API.
839 2007-05-04 Stephane Letz  <letz@grame.fr>
841         * Steven Chamberlain patch to fix jack_port_type. Test for jack_port_type behaviour in jack_test.cpp tool.
843 2007-05-03 Stephane Letz  <letz@grame.fr>
845         * Steven Chamberlain patch to fix jack_port_by_id export.
847 2007-04-28 Stephane Letz  <letz@grame.fr>
849         * Add new jack_port_set_alias, jack_port_unset_alias and jack_port_get_aliases API.
851 2007-04-27 Stephane Letz  <letz@grame.fr>
853         * Add missing -D__SMP__in OSX project.
855 2007-04-23 Stephane Letz  <letz@grame.fr>
857         * Dmitry Baikov jackmp-time patch: add jack_get_time, jack_time_to_frames, jack_frames_to_time.
859 2007-04-03 Stephane Letz  <letz@grame.fr>
861         * Dmitry Baikov remove-nframes patch.
863 2007-04-02 Stephane Letz  <letz@grame.fr>
865         * Dmitry Baikov lost-event patch.
867 2007-04-01 Stephane Letz  <letz@grame.fr>
869         * Merge JackGraphManager Remove and Release method in a unique Release method.
871 2007-03-12 Stephane Letz  <letz@grame.fr>
873         * Bug fix in JackMidiBuffer::MaxEventSize().
875 2007-03-09 Stephane Letz  <letz@grame.fr>
877         * Dmitry Baikov MIDI patch phase 2.
879 2007-03-08 Stephane Letz  <letz@grame.fr>
881         * Dmitry Baikov jackmp-port-clear patch.
883 2007-03-06 Stephane Letz  <letz@grame.fr>
885         * Dmitry Baikov MIDI patch phase 1.
887 2007-03-04 Stephane Letz  <letz@grame.fr>
889         * Dmitry Baikov patch for JackGraphManager.cpp.
890         * Dmitry Baikov MIDI patch phase 0.
892 2007-02-19 Stephane Letz  <letz@grame.fr>
893         
894         * Correct back JackAlsaDriver::Read method. 
896 2007-02-14 Stephane Letz  <letz@grame.fr>
897         
898         * Better error checking in PortAudio driver.
900 2007-02-07 Stephane Letz  <letz@grame.fr>
901         
902         * Thom Johansen fix for port buffer alignment issues.
904 2007-02-05 Stephane Letz  <letz@grame.fr>
905         
906         * Add Pieter Palmers FreeBob driver.
907         * Thibault LeMeur ALSA driver patch.
909 2007-01-31 Stephane Letz  <letz@grame.fr>
911         * Use pthread_attr_setstacksize in JackPosixThread class.
913 2007-01-30 Stephane Letz  <letz@grame.fr>
915         * New LockAllMemory and UnlockAllMemory functions.
917 2007-01-29 Stephane Letz  <letz@grame.fr>
919         * More robust activation/deactivation code, especially in case of client crash.
921 2007-01-27 Stephane Letz  <letz@grame.fr>
923         * Uses a time out value of 10 sec in freewheel mode (like jack).
925 2007-01-21 Stephane Letz  <letz@grame.fr>
927         * 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.
929 2007-01-14 Stephane Letz  <letz@grame.fr>
931         * Implement thread.h API.
933 2007-01-09 Stephane Letz  <letz@grame.fr>
935         * New server/client data transfer model to fix a 64 bits system bug. Fix a device name reversal bug in ALSA driver.
937 2007-01-04 Stephane Letz  <letz@grame.fr>
939         *  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. 
941 2007-01-02 Stephane Letz  <letz@grame.fr>
943         * Internal cleanup.
945 2006-12-23 Stephane Letz  <letz@grame.fr>
947         * shared_ports renamed to shared_graph.
949 2006-12-15 Stephane Letz  <letz@grame.fr>
951         * Move client refnum management in JackEngine.
953 2006-12-12 Stephane Letz  <letz@grame.fr>
955         * Tom Szilagyi memory leak fix in ringbuffer.c.
957 2006-11-29 Stephane Letz  <letz@grame.fr>
959         * Correct JackWinEnvent::Allocate (handle the ERROR_ALREADY_EXISTS case). Correct JackEngine::ClientExternalNew.
960         * Karsten Wiese correction for ALSA usx2y driver.
962 2006-11-22 Stephane Letz  <letz@grame.fr>
964         * In synchronous mode, if the driver time out is reached, the server may get desynchronized (pending signal may arrive in later cycles), 
965         improve audio driver synchronous code to better handle this case.
966          
967 2006-11-08 Stephane Letz  <letz@grame.fr>
969         * Synchronize ALSA backend with jack one.
971 2006-11-04 Stephane Letz  <letz@grame.fr>
973         * Use -D to setup ADDON_DIR on OSX and Linux.
975 2006-10-11 Stephane Letz  <letz@grame.fr>
977         * Correct server SetBufferSize in case of failure. Correct PortAudio driver help.
979 2006-10-06 Stephane Letz  <letz@grame.fr>
981         * Add a new cpu testing/loading client.
983 2006-09-23  Stephane Letz  <letz@grame.fr>
985         * Rename global "verbose" in "jack_verbose" to avoid symbol clash with PureData.
987 2006-09-20  Stephane Letz  <letz@grame.fr>
989         * On Windows, avoid to use the unsafe Kill thread method. Use thread Stop instead and have blocked IO be unlocked. 
990         * Still get RT thread termination problems, restore a version that works on OSX and Linux with conditionnal compilation for now.
992 2006-09-16  Stephane Letz  <letz@grame.fr>
994         * Restore behaviour of LoopBack driver, which has to be opened in any case...
996 2006-09-15  Stephane Letz  <letz@grame.fr>
998         * On Windows version, use signal to quit the server.
1000 2006-09-13  Stephane Letz  <letz@grame.fr>
1002         * Correct pipe destruction bug in JackWinNamedPipe class.
1004 2006-09-11  Stephane Letz  <letz@grame.fr>
1006         * Handling of LoopBack driver only when really needed.
1007         * Correct crash bug when closing clients on Windows due to multi-threading synchronization issues.
1009 2006-09-06  Stephane Letz  <letz@grame.fr>
1011         * Correct coreaudio driver (input was not working since 0.55 version).
1012         * Version for 0.58 release.
1014 2006-09-04  Stephane Letz  <letz@grame.fr>
1016         * Correct Windows VC++ projects.
1018 2006-09-03  Stephane Letz  <letz@grame.fr>
1020         * First import of version 0.58 base code