ChangeLog 39 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
---------------------------
  Contributors
---------------------------

Dmitry Baikov
Steven Chamberlain
Thom Johansen
Thibault LeMeur
Pieter Palmers
Tom Szilagyi
Andrzej Szombierski 
Kjetil S.Matheussen
Pieter Palmers
Tim Blechmann
Marc-Olivier Barre
Nedko Arnaudov
Fernando Lopez-Lezcano
Romain Moret
Florian Faber
20
Michael Voigt
21
Torben Hohn  
22
23
24

---------------------------
  Jackdmp changes log
25
26
---------------------------

sletz's avatar
sletz committed
27
28
29
30
2009-03-23 Stephane Letz  <letz@grame.fr>

	* Version 1.9.3 started.

31
32
33
2009-03-19 Stephane Letz  <letz@grame.fr>

	* Tim Blechmann optimization patch (inlining some heavy used methods).
34

35
36
37
38
2009-03-12 Stephane Letz  <letz@grame.fr>

        * Virtualize and allow overriding of thread creation function, to allow Wine support (from JACK1).

39
40
41
2009-03-12 Stephane Letz  <letz@grame.fr>

        * Try automatic adaptative mode in adapters.
42
43
44

2009-03-11 Stephane Letz  <letz@grame.fr>

45
        * Client incorrect re-naming fixed : now done at socket level also.
46

47
48
2009-03-10 Stephane Letz  <letz@grame.fr>

49
50
51
	* Add -g (ring-buffer) parameter to netadapter.
	* Automatic adaptative ringbuffer size mode when -g = 0.

52
53
2009-03-09 Stephane Letz  <letz@grame.fr>

54
55
	* Use Torben Hohn PI controler code for adapters (in progress).

56
57
2009-03-05 Stephane Letz  <letz@grame.fr>

58
	* Support for BIG_ENDIAN machines in NetJack2 for transport data.
59
	* Add auto_connect parameter in netmanager and netadapter.
60

61
62
63
2009-03-03 Stephane Letz  <letz@grame.fr>

	* More robust profiling tools when clients come and go.
64

sletz's avatar
sletz committed
65
66
67
2009-03-01 Stephane Letz  <letz@grame.fr>

	* Raise default port number to 1024.
68

69
70
71
2009-02-27 Stephane Letz  <letz@grame.fr>

	* Improve generated gnuplot files for adapting code.
72

sletz's avatar
sletz committed
73
74
2009-02-25 Stephane Letz  <letz@grame.fr>

75
	* Major cleanup in adapter code.
76

sletz's avatar
sletz committed
77
78
79
2009-02-25 Stephane Letz  <letz@grame.fr>

	* Fix JackNetDriver::Close method.
80
        * For audio device reservation, add card_to_num function.
81
82
        * Fix buffer size and sample rate handling in JackAlsaAdapter.
        * Add control for adapter ringbuffer size.
83
	* Fix JackAlsaAdapter.h for 64 bits compilation.
84

85
86
2009-02-23 Stephane Letz  <letz@grame.fr>

87
	* Another fix in systemdeps.h and types.h: jack_time_t now uniquely defined in types.h.
88
	* Move generic code and data in JackNetInterface and JackNetMasterInterface classes.
sletz's avatar
sletz committed
89
        * First version of D-Bus based audio device reservation.
sletz's avatar
sletz committed
90

91
92
2009-02-20 Stephane Letz  <letz@grame.fr>

sletz's avatar
sletz committed
93
	* Add InitConnection and InitRendering methods in JackNetSlaveInterface, better packet type checking in JackNetSlaveInterface::SyncRecv.
94
	* Change fMulticastIP handling in JackNetInterface.
95
        * Cleanup systemdeps.h on Windows.
96
97
98

2009-02-17 Stephane Letz  <letz@grame.fr>

sletz's avatar
sletz committed
99
	* Fix the mutex/signal classes on Windows.
100
        * Client incorrect re-naming fixed: now done at fifo level only.
101
102
103
104
105
106
107

2009-02-16 Stephane Letz  <letz@grame.fr>

	* Rework the mutex/signal classes. Use them in JackMessageBuffer.

2009-02-11 Stephane Letz  <letz@grame.fr>

sletz's avatar
sletz committed
108
	* Merge Solaris branch back on trunk.
109
        * Equality of input and output buffer size removed (for now) in JackOSSDriver.
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000

2009-02-10 Stephane Letz  <letz@grame.fr>

	* Add a resample quality parameter in netadapter.

2009-02-09 Stephane Letz  <letz@grame.fr>

	* Use PRIu32 kind of macro in JackAlsaDriver again.
	* Now correctly return an error if JackServer::SetBufferSize could not change the buffer size (and was just restoring the current one).

2009-02-05 Stephane Letz  <letz@grame.fr>

	* Add a resample quality parameter in audioadapter.

2009-02-01 Stephane Letz  <letz@grame.fr>

	* Add a JACK_INTERNAL_DIR environment variable to be used for internal clients.

2009-01-30 Stephane Letz  <letz@grame.fr>

	* In NetJack2, fix a bug when capture or playback only channels are used.

2009-01-29 Stephane Letz  <letz@grame.fr>

	* Support for "-h" option in internal clients to print the parameters. 
	* Support for BIG_ENDIAN machines in NetJack2 for MIDI ports.

2009-01-28 Stephane Letz  <letz@grame.fr>

	* Support for BIG_ENDIAN machines in NetJack2.

2009-01-27 Stephane Letz  <letz@grame.fr>

	* Better recovery of network overload situations, now "resynchronize" by skipping cycles."

2009-01-26 Stephane Letz  <letz@grame.fr>

	* Fix JackNetInterface::SetNetBufferSize for socket buffer size computation and JackNetMasterInterface::DataRecv if synch packet is received, various cleanup.
	* Fix in JackAlsaAdapter::Open.
	* Simplify audio packet order verification.
	* Set default mode to 'slow' in JackNetDriver and JackNetAdapter.

2009-01-19 Stephane Letz  <letz@grame.fr>

	* Synchronize ALSA backend code with JACK1 one.

2009-01-17 Stephane Letz  <letz@grame.fr>

	* JackMessageBuffer was using thread "Stop" scheme in destructor, now use the safer thread "Kill" way. 

2009-01-14 Stephane Letz  <letz@grame.fr>

	* Cleanup server starting code for clients directly linked with libjackserver.so.

2009-01-09 Stephane Letz  <letz@grame.fr>

	* JackProfiler scan already running clients (so can now be added anytime in the graph).

2009-01-09 Stephane Letz  <letz@grame.fr>

	* New JackProfiler class for real-time server monitoring. 

2009-01-07 Stephane Letz  <letz@grame.fr>

	* Use up to BUFFER_SIZE_MAX frames in midi ports, fix for ticket #117.

2009-01-05 Stephane Letz  <letz@grame.fr>

	* Synchronize jack2 public headers with jack1 ones. 
	* Implement jack_client_real_time_priority and jack_client_max_real_time_priority API.

2008-12-18 Stephane Letz  <letz@grame.fr>

	* For ALSA driver, synchronize with latest jack1 memops functions. 
    	* Use memops functions in JackOSSDriver.
	* Use memops functions in JackOSSAdapter.

2008-12-17 Stephane Letz  <letz@grame.fr>

	* Use JACK_DRIVER_DIR variable in internal clients loader.

2008-12-16 Stephane Letz  <letz@grame.fr>

	* Fix JackOSSDriver::SetBufferSize (was crashing when restoring old size), fix ticket #111.
        * Force memory page in of profiling array in JackOSSDriver::Open.
	* Cleanup profiling code.
	* Client and library global context cleanup in case of incorrect shutdown handling (that is applications not correctly closing client after server has shutdown).

2008-12-08 Stephane Letz  <letz@grame.fr>

	* Forbid JackOSSDriver to run in "aynchronous" mode, correct DSP CPU computation.

2008-12-04 Stephane Letz  <letz@grame.fr>

	* More profiling in JackOSSDriver: sample conversion duration is measured. 

2008-12-02 Stephane Letz  <letz@grame.fr>

	* Optimize JackOSSDriver: no samples conversion if ports are not connected.

2008-12-01 Stephane Letz  <letz@grame.fr>

	* Force preload of memory table in JackEngineProfiling.

2008-11-27 Stephane Letz  <letz@grame.fr>

	* Add timing profiling code in JackOSSDriver.
	* Report ringbuffer.c fixes from jack1.

2008-11-21 Stephane Letz  <letz@grame.fr>

	* Report ringbuffer.c fixes from jack1.
	* Better isolation of server and clients system resources to allow starting the server in several user account at the same time.
        * Correct ressource cleanup in case of driver open failure.

2008-11-19 Stephane Letz  <letz@grame.fr>

	* Libjack shutdown handler does not "deactivate" (fActive = false) the client anymore, so that jack_deactivate correctly does the job later on.
	* Filter SIGPIPE to avoid having client get a SIGPIPE when trying to access a died server. 

2008-11-14 Stephane Letz  <letz@grame.fr>

	* Version 1.9.1 started, fix symbols export in ringbuffer.c, cleanup on Windows.

2008-11-13 Stephane Letz  <letz@grame.fr>

	* Fix jackctl_server_unload_internal.

2008-10-30 Stephane Letz  <letz@grame.fr>

	* Correct JackClient::ShutDown.
        * TimeOut management in JackNetUnixSocket on Solaris.
 
2008-10-23 Stephane Letz  <letz@grame.fr>
	
	* In JackOSSDriver, vmix mode is used by default, exclusif (O_EXCL) mode can be selected with -e option.
	* Fix a crash in JackEngine::Close when backend cannot be loaded.
	* Tim Blechmann optimization patch.
	* Backport of latest Paul alsa_seqmidi changes.

2008-10-15 Stephane Letz  <letz@grame.fr>
	
	* Fix a conflict with Audio Hijack in JackCoreAudioDriver. 

2008-10-09 Stephane Letz  <letz@grame.fr>
	
	* Use a mutex to make jack_client_open/jack_client_close thread safe, remove use of jack_init/jack_uninit.

2008-10-08 Stephane Letz  <letz@grame.fr>
	
	* Fix a SMP related bug introduced in rev 2957 : remove the __SMP__ flag and define LOCK for SMP in all cases.

2008-10-02 Stephane Letz  <letz@grame.fr>
	
	* Correct file permission for jack-shm-registry POSIX shared memory segment.
	* Checking for libsamplerate in waf, fix ticket #89." 
        * Header cleanup, add --clients and --ports options in configure.

2008-09-22 Stephane Letz  <letz@grame.fr>
	
        * Socket time out implementation on Solaris.
	* Fix a conflict with Audio Hijack in JackCoreAudioDriver. 

2008-10-10 Stephane Letz  <letz@grame.fr>
	
	* Improve OSS backend : SNDCTL_DSP_SETFRAGMENT must be done before, use of AFMT_S16_LE kind of values. 

2008-10-09 Stephane Letz  <letz@grame.fr>
	
	* First version of OSS backend.
	* Use a mutex to make jack_client_open/jack_client_close thread safe, remove use of jack_init/jack_uninit.

2008-10-08 Stephane Letz  <letz@grame.fr>
	
	* Fix a SMP related bug introduced in rev 2957 : remove the __SMP__ flag and define LOCK for SMP in all cases.

2008-10-03 Stephane Letz  <letz@grame.fr>
	
	* Add engine profiling tools.

2008-10-02 Stephane Letz  <letz@grame.fr>
	
	* Correct file permission for jack-shm-registry POSIX shared memory segment.
	* Checking for libsamplerate in waf, fix ticket #89." 
        * Header cleanup, add --clients and --ports options in configure.

2008-10-01 Stephane Letz  <letz@grame.fr>

   	* First Solaris version.

2008-09-22 Stephane Letz  <letz@grame.fr>
	
	* Cleanup jack_port_id_t/jack_port_t mess, should work again on 64 bits machines."

2008-09-20 Stephane Letz  <letz@grame.fr>
	
	* Michael Voigt JackAPI cleanup patch.

2008-09-19 Stephane Letz  <letz@grame.fr>
	
	* Michael Voigt JackTime cleanup patch.

2008-09-17 Stephane Letz  <letz@grame.fr>
	
	* New JackDriverInfo class to cleanup driver loading code.

2008-09-08 Stephane Letz  <letz@grame.fr>
	
	* Better symbols export for server and client side libraries. 

2008-09-06 Stephane Letz  <letz@grame.fr>
	
	* Correct driver hierarchy on macosx and windows targets.

2008-09-05 Stephane Letz  <letz@grame.fr>
	
	* Merge Michael Voigt "drops" branch after reorganization step.

2008-09-04 Stephane Letz  <letz@grame.fr>
	
	* Michael Voigt 4th source reorganization patch.
	* Correct JackNetDriver initialization.

2008-09-03 Stephane Letz  <letz@grame.fr>
	
	* Implement DBUS entry points to handle internal clients, add new commands in jack_control.
	* Add new "desc" (extended description) in jack_driver_desc_t, to be used by backends and internal clients.

2008-09-01 Stephane Letz  <letz@grame.fr>
	
	* Michael Voigt third source reorganization patch.
	* Add new jack_set_port_rename_callback API, jack_port_set_name is now a server request that call port rename callbacks.

2008-08-31 Stephane Letz  <letz@grame.fr>
	
	* Michael Voigt second source reorganization patch.

2008-08-28 Stephane Letz  <letz@grame.fr>
	
	* Michael Voigt first source reorganization patch.

2008-08-26 Stephane Letz  <letz@grame.fr>
	
	* Better parameter handling in JackCoreAudioAdapter.
	* Fix memory leaks.

2008-08-23 Stephane Letz  <letz@grame.fr>
	
	* Implements internal clients management API.

2008-08-22 Stephane Letz  <letz@grame.fr>
	
	* Move GetCurrentTransportFrame code from JackClient to JackTransportEngine.
	* Add a fNetworkSync state in JackTransportEngine used in network.

2008-08-03 Stephane Letz  <letz@grame.fr>
	
	* Fix JackFrameTimer::Time2Frames and JackTimer::Frames2Time, jack_cpu compiled again.

2008-08-01 Stephane Letz  <letz@grame.fr>
	
	* Fix desallocation of remaining clients when server quits.
	* Close remaining client sockets in JackSocketServerChannel::Close.
	* Correct JackClient::Close() to request server close only if server is running.

2008-07-30 Stephane Letz  <letz@grame.fr>

	* Remove restriction that port connection could be done only if the client was activated.

2008-07-25 Stephane Letz  <letz@grame.fr>

	* Florian Faber patch for 32 bit float (LE only) support to jack's alsa driver.
        * Fix a crash bug when desallocating a non completely created external client.

2008-07-24 Stephane Letz  <letz@grame.fr>

	* Fix server client OSX special notification mechanism, CoreAudio driver compilation back for 10.4.

2008-07-18 Stephane Letz  <letz@grame.fr>

	* Correct audioadapter when a sample rate value different from jack server one is chosen.
	* Cleanup in JackTransportEngine, move some code that was in JackClient class.
	* Remove transport_type.h file, move transport types in types.h file.

2008-07-12 Stephane Letz  <letz@grame.fr>

	* Loopback driver working again.

2008-07-08 Stephane Letz  <letz@grame.fr>

	* Add jack_get_descriptor in internal clients API.
	* Fix JackFreewheelDriver::Process() in case if client time-out : continue processing until a better recovery strategy is chosen.

2008-07-08 Stephane Letz  <letz@grame.fr>

	* Merge windows branch back to trunk.

2008-07-05 Stephane Letz  <letz@grame.fr>

	* Netioadapter renamed in audioadapter.

2008-07-04 Stephane Letz  <letz@grame.fr>

	* Netioadapter now adapts for buffer size and sample rate changes.

2008-07-03 Stephane Letz  <letz@grame.fr>

	* Add IsFixedBufferSize method in all drivers.

2008-07-02 Stephane Letz  <letz@grame.fr>

	* New netioadapter in server client.

2008-06-20 Stephane Letz  <letz@grame.fr>

	* Add new jack_client_stop_thread and jack_client_kill_thread API.
	* New generic BuildClientPath for internal clients loading.

2008-06-19 Stephane Letz  <letz@grame.fr>

	* Embed JackEngineControl in JackDriver (starting from Tim Blechmann idea).

2008-06-18 Stephane Letz  <letz@grame.fr>

	* On OSX waf now compiles Universal Binaries.

2008-06-17 Stephane Letz  <letz@grame.fr>

	* Driver class hierarchy simplification.
	* Update waf for compilation on OSX.

2008-06-13 Stephane Letz  <letz@grame.fr>

	* Correct JackPosixThread::ThreadHandler termination, do not set buffer size if same value is used.
	* Another Tim Blechmann cleanup patch + do no allocate JackClientControl in shared memory for server internal clients.

2008-06-12 Stephane Letz  <letz@grame.fr>

	* Another Tim Blechmann patch to remove unnecessary virtual methods.

2008-06-09 Stephane Letz  <letz@grame.fr>

	* Improve net driver so that jack clients can be registered even if driver has not yet started. 

2008-06-08 Stephane Letz  <letz@grame.fr>

	* Add a missing EXPORT for JackException class. 

2008-06-06 Stephane Letz  <letz@grame.fr>

	* Better error checking in JackGraphManager::RemoveAllPorts.

2008-06-05 Stephane Letz  <letz@grame.fr>

	* Better control of exported symbols.
	* Fix a bug in backend parameter parsing.

2008-06-04 Stephane Letz  <letz@grame.fr>

	* Merge of network branch.
	* Use of set_threaded_log_function only when needed in RT threads.

2008-06-02 Stephane Letz  <letz@grame.fr>

	* Tim Blechmann patch to remove unnecessary virtual methods : choice of the appropriate platform version is now done at compilation time.

2008-06-02 Stephane Letz  <letz@grame.fr>

	* Cleanup and correct wscript for example-clients.
	* Add a test for coherent freewheel state in JackDebugClient. 
	* Cleanup JackMutex class.

2008-05-31 Stephane Letz  <letz@grame.fr>

	* Add missing include for proper compilation when jack headers are not installed.

2008-05-30 Stephane Letz  <letz@grame.fr>

	* Avoid using Terminate when "quitting" in RT thread. Cleanup JackEngineInterface.

2008-05-29 Stephane Letz  <letz@grame.fr>

	* Tim Blechmann patch for JackPosixSemaphore (still to test...).
	* Correct JackWinThread::Terminate.

2008-05-28 Stephane Letz  <letz@grame.fr>

	* New testMutex test, correct timing in drivers.

2008-05-27 Stephane Letz  <letz@grame.fr>

	* Correct timing in drivers : frame time has to be incremented before Read.

2008-05-26 Stephane Letz  <letz@grame.fr>

	* Merge control branch.
	* Cleanup example clients : use jack_client_open and install a proper 'quit' signal handler.

2008-05-24 Stephane Letz  <letz@grame.fr>

	* Tim Blechmann RAII idiom patch for JackServer ressource initialization.

2008-05-23 Stephane Letz  <letz@grame.fr>

	* Use StartSync to start the client notification thread, otherwise initial notifications from the server may be lost.
	* Tim Blechmann JackEngine cleanup patch.
	* Call init callback in notification thread also.

2008-05-22 Stephane Letz  <letz@grame.fr>

	* Correct JackPort::ClearBuffer.
	* Correct JackEngine inheritance graph.

2008-05-21 Stephane Letz  <letz@grame.fr>

	* Correct JackEngine::PortUnRegister, JackEngine::ClientCloseAux and JackEngine::ClientDeactivate to correctly send notifications. 
	* New jack_get_client_pid API, implemented on server side.
	* Better handling of graph state read functions : never wait when used in the real-time thread, current state is used.

2008-05-20 Stephane Letz  <letz@grame.fr>

	* Package number bumped to 1.90 everywhere.
	* Implementation of jack_get_max_delayed_usecs, jack_get_xrun_delayed_usecs and jack_reset_max_delayed_usecs.

2008-05-19 Stephane Letz  <letz@grame.fr>

	* Use of placement new for dynamic port allocation is possibly not safe... so avoid that until a definitive answer is found.
	* JackAudioDriver::ProcessAsync and JackAudioDriver::ProcessSync were broken at some point : 0 has to be returned in all cases.

2008-05-16 Stephane Letz  <letz@grame.fr>

	* 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.

2008-05-14 Stephane Letz  <letz@grame.fr>

	* Fix JackEngine::Close to only delete "loadable" clients.

2008-05-13 Stephane Letz  <letz@grame.fr>

	* Fix exception handling in JackShmMem::operator new.
	* Fix JackMutex constructor.

2008-05-12 Stephane Letz  <letz@grame.fr>

	* Allows wrapper library to log in a file (using JACK_WRAPPER_DEBUG=file).

2008-05-09 Stephane Letz  <letz@grame.fr>

	* Mike Taht's fix for proper alsa xrun duration measurement.

2008-05-06 Stephane Letz  <letz@grame.fr>

	* Fix JackPosixThread::StartImp and JackWinThread::StartImp.

2008-05-05 Stephane Letz  <letz@grame.fr>

	* Fix JackClient::Close : notification channel is stopped first to avoid receiving notifications while closing and Close is again a synchronous call.
	* No more remaining client close in JackEngine::Close().

2008-05-01 Stephane Letz  <letz@grame.fr>

	* Fix JackMachClientChannel::InternalClientLoad.
	* Correct internal client loading.
	* For threaded drivers, AcquireRealTime is called after Init step.

2008-04-30 Stephane Letz  <letz@grame.fr>
		
	* Fix JackRestartThreadedDriver::Execute.
	* Better handling of init and run state in JackThread.

2008-04-28 Stephane Letz  <letz@grame.fr>
		
	* Add exceptions management to distinguish drivers recoverable errors from non recoverable ones. Will be used in special threaded drivers (for network).

2008-04-25 Stephane Letz  <letz@grame.fr>
		
	* Correct JackServerGlobals::Init: now check is server is already started.

2008-04-24 Stephane Letz  <letz@grame.fr>
		
	* Correct internal client load.

2008-04-10 Stephane Letz  <letz@grame.fr>
		
	* Remove Linux Makefile, update Readme.

2008-04-03 Stephane Letz  <letz@grame.fr>
		
	* Correct a dirty port array issue in JackGraphManager::GetPortsAux.

2008-03-31 Stephane Letz  <letz@grame.fr>
		
	* New SetNonBlocking method for JackSocket.

2008-03-29 Stephane Letz  <letz@grame.fr>
		
	* Correct a missing parameter in the usage message of jack_midiseq.
	* Add a client counter in wrapper layer : library is unloaded only when all clients have been closed.

2008-03-28 Stephane Letz  <letz@grame.fr>
		
	* Correct PortRegister, port name checking must be done on server side.
	* Add an Init method for blocking drivers to be decorated using JackThreadedDriver class.

2008-03-27 Stephane Letz  <letz@grame.fr>
		
	* Pieter Palmers patch for FFADO driver.
	* Dmitry Baikov patch for alsa_rawmidi driver.

2008-03-26 Stephane Letz  <letz@grame.fr>
		
	* JackWrapperAPI.cpp: use open_library in jack_client_name_size, jack_port_name_size and jack_port_type_size.

2008-03-20 Stephane Letz  <letz@grame.fr>
		
	* Transport timebase fix.

2008-03-19 Stephane Letz  <letz@grame.fr>
		
	* Synchronise transport.h with latest jackd version (Video handling).

2008-03-19 Stephane Letz  <letz@grame.fr>
		
	* Add jack_port_type_id in jack API.

2008-03-17 Stephane Letz  <letz@grame.fr>
		
	* New jack_server_control client to test notifications when linked to the server library.
	* Correct JackClient::Activate so that first kGraphOrderCallback can be received by the client notification thread.
	* MIDI API in wrapper lib.
	* Fix connect notification to deliver *one* notification only.

2008-03-16 Stephane Letz  <letz@grame.fr>
		
	* Use engine in JackAlsaDriver::port_register and JackAlsaDriver::port_unregister.
	* New JackLockedEngine decorator class to serialize access from ALSA Midi thread, command thread and in-server clients.

2008-03-15 Stephane Letz  <letz@grame.fr>
		
	* Add -L (extra output latency in aynchronous mode) in CoreAudio driver.
	* RT scheduling for OSX thread (when use in dummy driver).

2008-03-14 Stephane Letz  <letz@grame.fr>
		
	* Fernando Lopez-Lezcano scons patch.

2008-03-13 Stephane Letz  <letz@grame.fr>
		
	* Add test for jack_cycle_wait, jack_cycle_wait and jack_set_process_thread API.
	* Add jack_set_process_thread in wrapper library.
	* Correct all backend playback port latency in case of "asynchronous" mode (1 buffer more).
	* Correct jack_port_get_total_latency.
	* Correct jack_port_by_id in wrapper library.

2008-03-12 Stephane Letz  <letz@grame.fr>
		
	* Marc-Olivier Barre library related scons patch.
	* Nedko Arnaudov FULL_MIMIC patch.
	* Automatic server launch in wrapper layer.

2008-03-11 Stephane Letz  <letz@grame.fr>
		
	* Fix engine real-time notification (was broken since ??).
	* Correct jack_client_open_aux, jack_client_open and jack_client_new.
	* Correct jack_internal_client_load for wrapper layer.
	* In thread model, execute a dummy cycle to be sure thread has the correct properties (ensure thread creation is finished).
	* Correct jack_port_get_connections function (should return NULL when no connections).

2008-03-10 Stephane Letz  <letz@grame.fr>
		
	* Nedko Arnaudov log patch.
	* Remove unneeded jack_port_connect API.

2008-03-07 Stephane Letz  <letz@grame.fr>
		
	* Define an internal jack_client_open_aux needed for library wrapper feature.
	* Improve wrapper code.
	* Correct FreeBob driver_initialize.

2008-03-06 Stephane Letz  <letz@grame.fr>
		
	* Marc-Olivier Barre scons patch (3).

2008-03-06 Stephane Letz  <letz@grame.fr>
		
	* Fix JackSocketClientChannel::ClientClose: async call from the client and server does not need to write any reply. 
	* Correct port notification: 2 notifications have to be sent (src, dst) and (dst, src)...

2008-03-05 Stephane Letz  <letz@grame.fr>
		
	* libjackdmp.so renamed to libjackservermp.so and same for OSX framework.
	* tw1.c example added (new thread model).
	* Marc-Olivier Barre scons patch (2).

2008-03-02 Stephane Letz  <letz@grame.fr>
		
	* Correct JackSocketClientChannel::ClientClose to use ServerSyncCall instead of ServerAsyncCall.
	* Better documentation in jack.h.
	* Marc-Olivier Barre scons patch.

2008-03-02 Stephane Letz  <letz@grame.fr>
		
	* Correct jack_get_time propotype.

2008-02-25 Stephane Letz  <letz@grame.fr>
		
	* Add TimeCallback in JackDebugClient class.

2008-02-22 Stephane Letz  <letz@grame.fr>
		
	* Correct JACK_port_unregister.

2008-02-21 Stephane Letz  <letz@grame.fr>
		
	* Add port register/unregister notification in JackAlsaDriver.

2008-02-12 Stephane Letz  <letz@grame.fr>
		
	* Fix in JackClient::Error(): when RT thread is failing and calling Shutdown, Shutdown was not desactivating the client correctly. 
	* Notify ports unregistration in JackEngine::ClientCloseAux.
	* Thanks Esben Stien for helping finding these bugs.

2008-02-11 Stephane Letz  <letz@grame.fr>
		
	* Use SetAlias for port naming. Use jackd midi port naming scheme.

2008-02-08 Stephane Letz  <letz@grame.fr>
		
	* More robust external API.

2008-02-07 Stephane Letz  <letz@grame.fr>
		
	* Correct "server_connect": close the communication channel.

2008-02-05 Stephane Letz  <letz@grame.fr>
		
	* Reduce WaitGraphChange wait value.
	* Remove use of assert in JackFifo, JackMachSemaphore, and JackPosixSemaphore: print an error instead.

2008-02-03 Stephane Letz  <letz@grame.fr>

	* Add "Readme" file from package in src folder.
	* Tim Blechmann sse optimization patch for JackaudioPort::MixAudioBuffer, use of Apple Accelerate framework on OSX.

2008-02-02 Stephane Letz  <letz@grame.fr>

	* Tim Blechmann patches.

2008-02-01 Stephane Letz  <letz@grame.fr>

	* Move transport related methods from JackEngine to JackServer.
	* Finish port connection callback server side implementation.

2008-01-31 Stephane Letz  <letz@grame.fr>

	* Remove checking thread in CoreAudio driver, better device state change recovery strategy: the driver is stopped and restarted.
	* jack_thread_wait implementation.
	* Add jack_thread_wait client example.
	* Add jack_mp_thread_wait client example.

2008-01-30 Stephane Letz  <letz@grame.fr>
	
	* Latest jack_lsp code from jack SVN.
	* Update in usx2y.c and JackPort.cpp to match jackd 0.109.2.

2008-01-29 Stephane Letz  <letz@grame.fr>
	
	* Implement jack_recompute_total_latency and jack_recompute_total_latencies.
	* Remove fBufferSize field in JackGraphManager object.
	* Port connection callback, client side.

2008-01-28 Stephane Letz  <letz@grame.fr>

	* Updated API to match jack 0.109.0 version (in progress). Correct checking thread in CoreAudio driver.
	* Port connection callback, server side.
	* Cleanup jack_port_connected_to implementation.

2008-01-25 Stephane Letz  <letz@grame.fr>

	* OSX 32/64 bits version.

2008-01-24 Stephane Letz  <letz@grame.fr>

	* CoreAudio driver improvement: detect and notify abnormal situations (stopped driver in case of SR change...).

2008-01-03 Stephane Letz  <letz@grame.fr>

	* Dmitry Baikov MIDI patch : alsa_seqmidi and alsa_rammidi drivers.

2008-01-03 Stephane Letz  <letz@grame.fr>

	* Tim Blechmann patch for JackGraphManager::GetPortsAux memory leak, Tim Blechmann patch for scons install.

2007-12-12 Stephane Letz  <letz@grame.fr>

	* Cleanup in CoreAudio driver.

2007-12-11 Stephane Letz  <letz@grame.fr>

	* Change string management for proper compilation with gcc 4.2.2. JackLog cleanup.

2007-12-08 Stephane Letz  <letz@grame.fr>

	* Tim Blechmann scons patch.

2007-12-07 Stephane Letz  <letz@grame.fr>

	* Pieter Palmers second new build system: scons and Makefile based build.

2007-12-06 Stephane Letz  <letz@grame.fr>

	* Pieter Palmers FFADO driver and scons based build.

2007-12-05 Stephane Letz  <letz@grame.fr>

	* Correct sample_rate management in JackCoreAudioDriver::Open. Better handling in sample_rate change listener.

2007-12-04 Stephane Letz  <letz@grame.fr>

	* Add a sample_rate change listener in CoreAudio driver.

2007-12-03 Stephane Letz  <letz@grame.fr>

	* Correct bug in CoreAudio driver sample rate management.

2007-11-30 Stephane Letz  <letz@grame.fr>

	* Correct JackMachNotifyChannel::ClientNotify.

2007-11-29 Stephane Letz  <letz@grame.fr>

	* Correct fPeriodUsecs computation in JackAudioDriver::SetBufferSize and JackAudioDriver::SetSampleRate. 

2007-11-28 Stephane Letz  <letz@grame.fr>

	* On OSX, use jack server name in notification system.

2007-11-21 Stephane Letz  <letz@grame.fr>

	* On OSX, use CFNotificationCenterPostNotificationWithOptions with kCFNotificationDeliverImmediately | kCFNotificationPostToAllSessions for server ==> JackRouter plugin notification.

2007-11-20 Stephane Letz  <letz@grame.fr>

	* Correct CheckPort in JackAPI.cpp.

2007-11-15 Stephane Letz  <letz@grame.fr>

	* Move OSX start/stop notification mechanism in Jackdmp.cpp.

2007-11-05 Stephane Letz  <letz@grame.fr>

	* Use of JackWinSemaphore instead of JackWinEvent for inter-process synchronization.
	* Correct types.h for use with MINGW on Windows.

2007-11-04 Stephane Letz  <letz@grame.fr>

	* Add an implementation for obsolete jack_internal_client_new and jack_internal_client_close. Add missing jack_port_type_size.

2007-11-02 Stephane Letz  <letz@grame.fr>

	* Correct ALSA driver Attach method: internal driver may have changed the buffer_size and sample_rate values.
	* Add JackWinSemaphore class.

2007-10-01 Stephane Letz  <letz@grame.fr>

	* Server and user directory related code moved in a JackTools file.
	* Client name rewritting to remove path characters (used in fifo naming).

2007-10-30 Stephane Letz  <letz@grame.fr>

	* Fix a bug in freewheel management in async mode: drivers now receive the kStartFreewheelCallback and kStopFreewheelCallback notifications.

2007-10-26 Stephane Letz  <letz@grame.fr>

	* Add midiseq and midisine examples. 
	* Cleanup old zombification code. 
	* Linux Makefile now install jack headers.
	* Use of JACK_CLIENT_DEBUG environment variable to activate debug client mode.
	* Definition of JACK_LOCATION variable using -D in the Makefile.
	* Restore jack 0.103.0 MIDI API version.

2007-10-25 Stephane Letz  <letz@grame.fr>

	* Merge of Dmitry Baikov MIDI branch. 
	* Correct JackGraphManager::GetPortsAux to use port type.
	* Remove JackEngineTiming class: code moved in JackEngineControl.

2007-10-24 Stephane Letz  <letz@grame.fr>

	* Implementation of server_name setting (-n).

2007-10-23 Stephane Letz  <letz@grame.fr>

	* Correct jack_acquire_real_time_scheduling on OSX.

2007-10-18 Stephane Letz  <letz@grame.fr>

	* Use LIB_DIR variable for 64 bits related compilation (drivers location). More generic Linux script.

2007-10-16 Stephane Letz  <letz@grame.fr>

	* Reorganize jack headers. Improve Linux install/remove scripts.

2007-10-16 Stephane Letz  <letz@grame.fr>

	* Internal loadable client implementation, winpipe version added. 

2007-10-12 Stephane Letz  <letz@grame.fr>

	* Internal loadable client implementation, socket version added. 
	* Fix JackEngine::Close() method.

2007-10-11 Stephane Letz  <letz@grame.fr>

	* Internal loadable client implementation (in progress).

2007-10-08 Stephane Letz  <letz@grame.fr>

	* Use .jackdrc file (instead of .jackdmprc). Install script now creates a link "jackd ==> jackdmp" so that automatic launch can work correctly. 
	* Paul Davis patch for -r (--replace-registry) feature.

2007-10-07 Stephane Letz  <letz@grame.fr>

	* Add missing timestamps.c and timestamps.h files. Correctly export public headers in OSX frameworks. Suppress JackEngine::ClientInternalCloseIm method.

2007-10-04 Stephane Letz  <letz@grame.fr>

	* Correct "jack_register_server" in shm.c.

2007-10-04 Stephane Letz  <letz@grame.fr>

	* Fix a resource leak issue in JackCoreAudioDriver::Close(). Better implement "jack_client_open" when linking a client with the server library.

2007-10-03 Stephane Letz  <letz@grame.fr>

	* Rename server_name from "default" to "jackdmp_default" to avoid conflict with regular jackd server.

2007-10-02 Stephane Letz  <letz@grame.fr>

	* Correct jack_client_open "status" management.

2007-08-27 Stephane Letz  <letz@grame.fr>

	* Server/library protocol checking implementation.

2007-08-26 Stephane Letz  <letz@grame.fr>

	* Make "Rename" a method of JackPort class, call it from driver Attach method.

2007-08-24 Stephane Letz  <letz@grame.fr>

	* Implement server temporary (-T) mode.

2007-08-23 Stephane Letz  <letz@grame.fr>

	* Fix a bug in jack_test. Correct JackShmMem destructor. Correct end case in JackClient::Execute. Correct JackMachSemaphore::Disconnect.

2007-08-22 Stephane Letz  <letz@grame.fr>

	* Fix a bug in JackLibClient::Open introduced when adding automatic client renaming.

2007-08-21 Stephane Letz  <letz@grame.fr>

	* Fix backend port alias management (renaming in system:xxx).

2007-08-20 Stephane Letz  <letz@grame.fr>

	* Automatic server launch. Removes unneeded 'volatile' for JackTransportEngine::fWriteCounter.

2007-08-19 Stephane Letz  <letz@grame.fr>

	* Add "systemic" latencies management in CoreAudio driver.

2007-08-16 Stephane Letz  <letz@grame.fr>

	* Automatic client renaming.

2007-07-27 Stephane Letz  <letz@grame.fr>

	* Correct JackEngine::ClientCloseAux (when called from JackEngine::ClientExternalOpen). Correct JackWinEvent::Allocate.

2007-07-20 Stephane Letz  <letz@grame.fr>

	* Correct notification for kActivateClient event.

2007-06-11 Stephane Letz  <letz@grame.fr>

	* Dmitry Baikov buffer size patch.

2007-06-10 Stephane Letz  <letz@grame.fr>