-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
1530 lines (768 loc) · 67 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
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
* Changes in version 0.8.17 *
Removed deprecated av_free_packet calls.
Python3 friendly syntax changes to fix install time byte compilation errors.
Fix for regression in session support causing problems at save time.
* Changes in version 0.8.16 *
VoIP documentation update for Skype IDJC integration.
Copyright year bump.
Clicking play while playing results in the playlist window scrolling to show the current track.
Changed AAC+ support to use libfdk via ffmpeg rather than libaacplus (upstream support is scheduled for removal)
Added a button to permit the user to suspend the adding of tracks. It appears 4 seconds into the process.
Enabled drag and drop for multiple folders of audio.
Fixed Random Hop traceback triggered by an empty opposite playlist.
Added Spanish translation with credit to: Blank Frank <frank@rhizomatica.org>
Fixed translation regression in Playlist Mode.
Added WebM streaming and recording.
Fix for listener stats.
Added TLS server login support.
Libshout fork (libshout-idjc) upgraded to upstream version 2.4.1
Fixed LAME tag ReplayGain metadata collection for newer versions of Mutagen.
Updated avcodec encoder and decoder to silence deprecation warnings.
Fixed the return value check of call to av_samples_alloc.
Playlist block size and finish time now also appears when using the cue up and manual playlist modes.
Fix for playlist modes 'Fade Over' and 'Random Hop' so that they work with fade settings other than 'None'
* Changes in version 0.8.15 *
Documentation update for VoIP.
Support for more signals by the IDJCMonitor class.
Support for latest version of python-irc.
Added full support for ITU-R BS.1770 / EBU R128 tags.
Fixed saving of announcement text in .xspf playlists.
The announcement text now appears in the playlist allowing the DJ to pre-read the announcements.
Updated copyright year to 2015
Internationalisation mostly of format.py which was missing from POTFILES.
Git commit hash and build date appears in the 'About' page.
Improved song database connectivity. Fixes and enhancements to last DJ played. Patch: B Millham.
Added wrappers to all glib timeout_add, idle_add, and source_remove calls.
Documentation update.
French language translation update.
Song title database credentials now exportable with DBus.
'Last Played' column added to song title database viewer. This includes a scalable cooldown bar.
Fix for IRC metadata so that Stream Info metadata updates are tied to stream connection, not song title changes.
IDJC now reports server connect/disconnect to IRC in a formalised manner and in messages %U can be used for the source URI.
Added an AppData file.
Added support for generating m3u8 playlist files and added support for file URI's in m3u files.
Fixed metadata to icecast servers now sent with latin1 encoding when streaming mpeg formats.
User can now select latin1 encoding for fixed metadata to shoutcast servers.
Fix for stream metadata character encoding: applied to extant metadata also.
Can now read ReplayGain info from ID3 TXXX tags. Has priority over RVAD/RVA2 tags.
Build system now handles problem with a too old libogg breaking Opus support.
Can now obtain listener stats from Shoutcast 2 servers.
Applied patches for libav 9 and 10 build and build warnings, courtesy: Sebastian Ramacher <sramacher@debian.org>
Build fix for older ffmpeg dependency.
* Changes in version 0.8.14 *
Fix for playlist controls having an overly dark background.
Improved reliability for 'Fade Over' playlist mode and 'Crossfade' playlist control when using the silence killer.
Song title database browse mode setting is now saved/restored.
Added Ampache music catalogs support.
Fine tuned the suppression of key bindings when using the database "Search" tab.
Fixed regression of save/restore database column widths.
Enabled drag and drop to effects from music database and file managers.
Added an optional fade feature for timer disconnected streams.
Fixed a bug where stream timer could trigger a disconnection and disconnection dialog when not connected.
The timed server connection Begin/End time format is now hh:mm[:ss].
Fix for Prokyon 3 database access.
Song title database browse window now populates much more quickly.
Song title database browse window has new alphabetic top level e.g. all artists beginning with S under S. (patch: bmillham)
* Changes in version 0.8.13 *
IRC support now comes from python-irc.
Improved metadata expiry. Metadata is expired on mid cross on both players when metadata source = crossfader.
Fixed regression in stream auto reconnection dialog.
Fix for PyGTK SpinButton value not being set or displayed.
IRC using manual server connect mode no longer periodically disconnects from the IRC server.
Fix for a bug that affected the use of password protected IRC channels.
Added a binding for the playlist advance button.
Code cleanup. Removed possibly problematic gtk main_iteration() calls.
Added support for SSL-hobbled python-irclib.
Added individual track album name support for cue sheets with REM ALBUM tag.
Fixed regression in supported media formats. Was showing libav only formats when built with --disable-libav.
Fixed build with ./configure --disable-libav.
In cue sheet mode chapter metadata is now ignored.
* Changes in version 0.8.12 *
Fix for plural forms in translation files.
* Changes in version 0.8.11 *
Example code idjcmon.py from the docs now uses the idjcmonitor module.
IDJC monitoring class originally from docs is now importable as idjcmonitor.
Python package installs to ${pkglibdir}/site-packages.
Added detection of dynamic lib file extension by host.
Backend installs to ${pkglibdir}
DSP button now hidden in 'Basic Streamer' mode.
Added new 'flush' player mode to ensure every last bit of audio data from a track plays.
Re-added libav compatibility for 1 or 2 channel audio only.
Improved memory leak situation of avcodecdecode.c.
* Changes in version 0.8.10 *
Fix for dynamic metadata bug in the background tracks player.
Added french translation and man page.
Added D-Bus binding for setting metadata.
Added documentation of JACK ports.
Fix for effects filechooser location box text.
Increased player buffer run-out warning to 0.3 seconds. Fixes gapless playback.
Microphones in DJ audio are now panned.
Added VoIP panning facility.
Added pan presets for quick pan setting changes. Includes key/midi/dbus bindings.
Updated to fix audio decoding with ffmpeg version 1.2 libav... libraries. New dependency libswresample from ffmpeg.
* Changes in version 0.8.9 *
Fixes for deprecation warnings in build system.
Fixed potentially corrupt loader shebang bug at the expense of versioning hardness.
Added extra dbus functions to replace old idjcctrl functionality.
Player speed pitch controls now display their speed value.
The button bar and background player can now be hidden.
Added new volume control for the VoIP level.
Added ability to change the recorder filename.
Added patch for playing effects to be listed on the effects tab when effects tab is not the one active.
Jingles tab renamed to effects tab.
Fixed binding for channel pan and added binding for channel level.
Added speed/pitch controls to the background tracks player.
Added binding to the VoIP mixback level.
Added VoIP level control with binding.
Added a command line server kick option and improved automatic connection.
Effects players now have a progress meter. (patch: bmillham)
Reduced border sizes in the main application window.
Fixes for directory choosers in the stream recorders and the "external playlist" playlist mode.
Each effects bank now has its own dedicated JACK output port.
Copying profiles now copies the port connections.
Playlist mode list in background tracks no longer shows unusable modes. This saves screen space.
Player mixer frame removed to save screen space.
Players now have renameable labels.
Fix for background tracks finish time not updating when not playing.
The player bindings now work for the background tracks volume control.
Added level controls for each bank of 12 effect buttons. Key bindings updated.
The DJ audio level control is now at the top of the Prefs->General page.
The DJ alarm now has a dedicated JACK port and level control.
Added support for R128_TRACK_GAIN tags.
Added Ogg/Opus streaming and recording support.
Added Ogg/Opus playback support.
Fixed mp3 seek accuracy bug.
Added cuesheet (.cue .txt) playback support. Multi-file cuesheets are treated as regular playlists.
Fix to pause feature when decoding audio using libavcodec.
IRC now supports manual connection starting as an option for when connecting at startup is undesirable.
Added optional song database tree heirarchy album - [disk number] - track.
Improved metadata cancellation for stopped players.
Fixed bug where repeated playing of the same song would only register in the Tracks Played as a single play.
Fixed bug where live metadata would not include the album metadata resulting in double counting of tracks in the tracks played window from standard unchained ogg files.
Rewrote p3db.py as songdb.py to fix a problem with connection timeouts and UI freeze during large database fetch operations.
Fixed bug where keyboard bindings would trigger when typing in the database filter boxes.
Merged in patch from Brian Millham adding Ampache music database support. Credit given.
Fixed bug triggered by playing ogg or mp3 files with chapter info with the effects player.
Mic preferences settings are restored to the backend when the backend is restored.
Pthreads now sleep when unused.
Fixed regression on recorder pause button.
Effects now have a repeat button.
Multiple effects can now play at once.
Background Tracks player can now be used as a main player for those that prefer to stay in the Jingles tab.
* Changes in version 0.8.8 *
Added a python module for monitoring IDJC (metadata and streams) to the HTML documentation.
The bootstrapping script env-up renamed to bootstrap.
New JACK freewheel mode front panel trigger button and matching preferences option to show this.
Recorder now compatible with JACK freewheel mode.
Fix to mp3 encoder which was dereferencing recently freed memory.
New jingles player. Renamed as Effects.
Player level smoothing and muting code moved from mixer.c into xlplayer.c.
Intra player mixing code moved into xlplayer.c.
Added a new interlude player which is nearly the equal of the main players. Renamed as Background Tracks.
Removed the 'Fastest' player resample option from the preferences due to its inferiority. The remaining items renamed in accordance with the stream encoder names for the same modes.
Fix to unhandled exceptions and bad behaviour in IRC code relating to the adding or removal of IRC servers during streaming.
Replaced libmad mp3 decoder with mpg123.
Added AAC and AAC Plus V2 streaming and recording support.
Run-time linking to libmad removed. This is a forced dependency now.
New dependency twolame adds official mp2 support for streaming, recording, playback, tagging.
Added a brand new encoder format selection user interface which eliminates the possiblity of the user to select bad encoder setting combinations. It also looks much better.
Decoder module avcodecdecode.c now requests audio in float format from libavcodec with theoretically better audio quality.
Fixed deprecation warnings from avcodecdecode.c.
Fix to vu_update in python/maingui.py to allow received values to contain = characters.
Added the ability to remove the main players' visibility. Useful for when using external players.
Added JACK audio routing for all players. This means that individual player audio effects or external players can be used.
Fixed a crash bug that would happen if a playlist control was dragged to the opposite playlist.
Merged the sourceclient and mixer modules.
Updated man pages.
Improved lockup handling code.
Lots of global variables in mixer declared static.
Recorders restart when sourceclient module goes down.
Improved restart for streams when sourceclient module goes down.
The 'Green Phone' VoIP mode now respects the 'In DJ's Mix' setting.
BSB compat fix. The runtime dynamic linking functions are in the C standard library in BSD.
Added ladish [L0] and [L1] support.
The main menu is the new method for connecting JACK ports and it can also be used to check the various connections.
The session is saved every minute. Users no longer need to close and restart to lock in settings in case IDJC freezes.
Added a main menu bar and removed obsolete menus.
* Changes in version 0.8.7 *
Added italian translation.
User interface tweaks for consistency including the greater use of GTK stock labels.
* Changes in version 0.8.6 *
Jingles player revamped.
Player headroom now also features in 'Green Phone' VoIP mode.
Resampling now defaults to 'Fast' mode. Fastest should never be used for sound quality reasons which made it a stupid default.
Added 'Random Hop' playlist mode.
Improvements to the end of track silence trimmer.
Merged the mic and aux audio features into the new concept of channel.
Bindings upper target limit values revised.
Window opener buttons replaced by a menu to save space.
Fixed double free and memory leak in audio_feed.c.
Album metadata is now logged in tracks played and history.log.
Added new Troubleshooting tab in server configuration. This includes the new ability to set the user agent string.
Added GNU gettext i18n.
Code refactored in c/audiofeed.c. No longer assumes both jack client IDs to be of the same length.
Changes made to the build system so that it now passes the "make distcheck" test.
Mouseover popup of the main media players now indicates the album if that metadata is available.
GUI remembers previous window maximized state as well as the unmaximised size.
Replaced XChat plugin with python-irclib based integrated IRC.
New profile manager.
Program launcher is now written in Python, replacing Bash.
Removed deprecated 'Application' category from the desktop file.
Fixed libavcodecdecode.c to work with libavcodec 0.7 (Obsolete macro updated) Patch: Jonathan Nieder <jrnieder@gmail.com>
Fixed a bashism in configure.ac which would prevent building with dash as the shell. Patch: Jonathan Nieder <jrnieder@gmail.com>
Visible state for per-server metadata.
* Changes in version 0.8.5 *
GUI for metadata in the Output window updated. Now has history on the custom metadata. The fallback tag text can be set.
Deleted cue sheets no longer hang around in the playlist - not that there is any proper support for these....
Changed the XChat message context menu to imitate that of the current XChat.
Fixed a metadata bug that would occur when the playing track was retagged using the integrated tagger.
Fixed a bug that was preventing key bindings from functioning properly upon keyboard focus loss. This was affecting the track metadata tagger.
Fixed a bug that was causing incorrect text on the server connection button.
Streams and recordings now support album metadata. New custom metadata formatting tags exist to support this change.
A new crossfader profile has been added which closely matches the inter track fade.
In playlist modes that don't suppport playlist controls a null control is rendered in the playlist instead of a blank space as was done previously.
Auto crossfade now takes into account the fade speed for timing.
New playlist mode 'Fade Over' does the same thing as the crossfade playlist control but for every track.
Sanitised the text inputs of the server dialog. Cleans off :// protocol prefixes and extra / characters on mount points.
The return of the main panel recording indicator(s) - missing since version 0.7.
Copyright year updated to 2011.
Fix to XChat plugin installer. Polished XChat file locking code.
Prokyon3 database settings recovered when saved in active mode. Hostname now saved as well.
Regression fix for player levels when a jingle is playing.
Mic icon flashes after a certain amount of time when a player is on.
Mic indicates on status by the addition of a halo around the microphone icon in the opener button.
Encoder ringbuffer size increased to accommodate really large JACK frame sizes.
Mic player headroom can be set far higher.
Glib added to dependencies. Handles hash table duties in agc code. Hash tables and other GLib features may be used internally to a greater degree as code gets rewritten.
Improvements to the front panel mic open button text. Alt text overrides the mic number, stereo mics are indicated.
Microphones can be made subordinates of a stereo pair. Mic 1 can be paired with 2, 2 with 1, 3 with 4. This achieves two things: 1. stereo mics can be configured with one set of settings; 2. the side-chains merge to facilitate a stable stereo image.
The number of available microphones, streamers, and recorders can be adjusted in Prefs->Feature set.
Prefs window can be expanded in size.
* Changes in version 0.8.4 *
Can now open multiple idjc instances on the same jack sound server using the
-e command line switch.
New server configuration dialog and notebook widget to replace the previous large scrolling window.
Added an empty uninstall target to libshout/Makefile.am to fix 'make uninstall' breakage.
New project website. See docsrc directory in Git source tree. Has a hand crafted Makefile not under GNU autotools control.
Added facility for entering a Shoutcast admin password for the master server.
Saved playlist in xspf format now saves playlist controls.
New playlist control for restarting the playlist from the top.
New env-up script to generate the up the ./configure file and html documentation. Both not to be found in the raw git source tree.
Merged in new midi and assignable keyboard shortcuts interface.
Cue sheets can now be added to the main player playlists. TODO: cuesheet playback.
Cue sheets now indicate type WAVE when making a cue sheet for a flac file and cue sheets now store sub-second time offset information.
The active record and stream tabs are now remembered across application restarts.
A new individual controls expander added to reduce clutter in the output window.
Reversed the hints on the Jingles player volume controls to match the main player volume control.
* Changes in version 0.8.3 *
Fixed a bug where the mp3 header was not captured resulting in corrupt vbr tags in recordings.
Fixed a frame length bug in mp3 vbr tagger in recorder. Would cause mpeg 2, mpeg 2.5 frames to overrun with their padding. This bug also appeared in the mp3tagread module and was fixed.
New feature to record FLAC files and metadata in an accompanying cue file. This does not use one of the server encoders.
New group controls feature in the output window allows operations on all server tabs simultaneously.
The listen URL now appears on the connect button.
Static metadata text now shows with the correct character encoding when streaming mp3 files.
Playlist and hostname/mountpoint info now shows with ellipses (...) when appropriate.
The metadata widget is now in each tab so that metadata formatting information can persist beyond application close.
Added an expander for server connection details which also resizes the window.
Added new kick feature widgets and rearranged the server connection buttons to be at the top of each stream tab.
Fixed a bug where the player freezes at the end of certain tracks when the player is started with the seek bar all the way to the right.
The 'Random' playlist mode now observes a pattern to eliminate repeat performance of tracks while still allowing a large element of randomness.
Track filenames are now stored when streaming or recording for use with Random playlist mode.
Renamed variable shutdown in the mixer to avoid a reported namespace collision.
* Changes in version 0.8.2 *
Fixed an out of bounds memory access in mixer.c.
Added an install button for the XChat plugin.
The stream peak meter has its audio source filtered of brief transients.
The 'Jack Ports' tab is renamed 'JACK ports' reflecting its acronym status. The aux ports are now grouped beneath the mic ports since they are both inputs, leaving output ports similarly grouped.
The advance button toggles microphones that are configured to automatically open.
The 'Player Stop' playlist control opens microphones that are configured to automatically open.
The JACK audio ports have been renamed and are listed as their true names in the Jack Ports tab in the preferences. VOIP users will need to update their .asoundrc file (the docs contain the new configuration).
Licensed as GPL2 again.
The two main window button frames at the bottom have been merged so the new mic button arrangement can scale nicely.
New mic open buttons in the main window. Only buttons for microphones currently set active are shown and the buttons indicate which microphone(s) they control. Freeform text can also be applied to the buttons.
The profile name now appears in the preferences, output, and jingles window titles (except when using the default profile where it is left blank). This reduces the ambiguity that arises when two instances of IDJC run in the same screen.
The server window is now called the output window because the user may just want to record without sending station output through a server.
The mic high pass filter now has a control to set the number of active stages.
Changes to the meters preferences. Now organised into two columns that can be switched in or out on a column by column basis. Option to hide all inactive mic meters.
The player volume control now has an inverted (for GTK) ascending level hint for GTK themes that show this.
Stream VU now appears in the stream indicators column. The mic VU meter is no more.
New microphone meters. A peak meter paired with a colour coded attenuation indicator to give a hint at the state of the mic signal processing.
Increased the number of handled microphones to four.
The microphone detail controls now have a greater degree of control and default to 0 for a flat frequency response.
The build system now recognizes python 2.6 as the minimum version.
./configure checks for the legacy location for libavcodec header files.
Automatic crossfader pass maximum time raised to 20 seconds.
Fixed an infinite loop bug in the Random playlist mode. Would occur when there was only one item in the playlist.
* Changes in version 0.8.1 *
Added the ability to drag and drop tracks from a directory's subdirectory. Two levels deep.
Added support for wma tagging and playlist metadata.
Improved transitioning of old playlist data from the 0.7 series.
Allows addition of mp3 files to the playlist when using old versions of mutagen.
* Changes in version 0.8.0 *
Altered some variable names in configure.in to produce better error messages.
Removed a namespace collision in embedded libshout.
Documentation updated.
MP3 playback can now be dithered. Option in the preferences. Default = on.
Added Replay Gain functionality.
Untagged tracks are now typically shown with the track number cleaned off (requires track number be on the left).
Untagged tracks are now shown with black text and a No Tag message alongside in dark red.
Code to restart the idjcsourceclient module when it crashes has been fixed.
IDJC now runs in the default MALLOC_CHECK_ mode.
Fixed a bug where idjcctrl could start an encoder with bad parameters and cause memory to be freed twice.
Fixed a race condition during encoder shutdown.
Fixed a file filter preselection bug in the 'Add music' file chooser dialog.
Added a precautionary recursion limit to oggscan_eos.
Fixed an Ogg parsing problem where failure to find a valid ogg page in the right hand side caused premature termination of the search.
Fixed a problem seeking files that are in their last ten seconds of playback. Broken since 0.7.17.
Fixed the metadata timing for mp3 recordings. A metadata segment of less than ten seconds could be skipped if it was at the end of a file. Broken since 0.7.17.
Fixed the metadata timing for Ogg recordings. Broken since 0.7.17.
Tracks with quiet endings are not ended early when a server disconnect is imminent or the playlist has nearly run its course. This is to assist server handovers.
A cue file is saved for each mp3 recording. Amarok can make use of these.
./configure stops if the mutagen dependency is not fulfilled.
Recording of mp3 is now possible when the server list is empty.
Players are restarted when the current song playing gets retagged (IDJC tagger only). This is to prevent playback failure.
Dependency list updated.
Added support for multiple metadata tags.
Added APEv2 tagging capability. Includes support for monkeys audio and musepack formats.
* Changes in version 0.7.19 *
Version bump because the Sourceforge file release system is being a pain.
* Changes in version 0.7.18a *
Workaround for a regression in mutagen-1.17. The mutagen.easyid3 module can't be pulled in without first pulling in mutagen.id3 or mutagen.mp3.
* Changes in version 0.7.18 *
Added support for m4b and m4p file extensions. Synonymous with mp4.
New media metadata tagger added, based on mutagen.
Dependency removed: libmp4v2
Dependency removed: eyeD3
Dependency added: mutagen. This covers the functionality of the removed dependencies.
ID3 chapter tags lacking null terminators on the TIT2 frame are handled properly.
Added some Mac portability fixes.
The advance button now works in accordance with the fade setting.
The partially working fade in simple mixer mode is now disabled. This is reflected in the fade selector which greys out.
* Changes in version 0.7.17 *
Fixed minor layout bug in the connection box.
Removed the forced inclusion of mp4.h in mp4tag.c.
MP4 tags API updated in mp4tag.c to prevent deprecation warnings.
The DJ alarm now triggers off a deeper inspection of playlist controls. This permits correct operation of the alarm when fading to an announcement.
The DJ alarm now sounds prior to announcements.
Added playlist controls for fading between tracks. These override the fade speed of the player and can be used to fade announcements.
Added a new fading-between-tracks in-the-same-playlist feature.
Fixed a bug where the player could freeze at the end of a track after a progress bar seek that left the bar at the far right hand size.
Jingles keyboard shortcuts now work when the announcement dialog is active. The shortcut to cancel the dialog (not in editing mode) is BACKSPACE since ESC is used to stop jingles.
Added record_start and record_stop commands to idcjctrl.
Prokyon 3 database parse optimisations. Approx 15% speedup.
Conditional inclusion of jack_set_info_function function call.
Fixes to catch exceptions when there are problems connecting to a song title database.
* Changes in version 0.7.16 *
The application icon and menu entry are now installed according to the ${prefix} value, so it is possible to install to ${HOME}/.local without being root.
When the prokyon 3 database is being indexed (for the tree view) a progress bar is shown. Also the GUI is not frozen during this time as was the case previously.
The password for the prokyon 3 database is now non visible.
When using the prokyon 3 database upon loading IDJC the correct database is now used rather than the default values.
Added Fkeys control of the jingles player. Escape key is used to stop.
The scrolled window in the connection pane now has a specified size
Fixed a segfault that would occur when the main window had focus and the F8 key was pressed.
* Changes in version 0.7.15 *
Uses avcodec_decode_audio3 for libavcodec audio decoding when available.
Fixed bug in avcodecdecode.c, the samples buffer is now aligned on 64 bytes which ensures best performance and the ability to decode formats for which libavcodec uses sse instructions.
Fixed bug in avcodecdecode.c where freed memory could continue to be used.
Added some minor fixes supplied by Andrew Suffield.
Removed the option to not keep passwords over application restarts. Given the extra mouseclicks now requried in order to enter the password and no visible cue to password absence, this feature has been dropped.
Added a new connection feature to the server window. This allows for listener stats to be gathered from a list of relays as well as the master server. Aslo, stats collection can be turned off on a per server basis.
Removed directory checks and conditional inclusion for ffmpeg header files to aid compilation on certain distibutions.
Version 0.7.15_pre1 released as 0.7.14a.
* Changes in version 0.7.14a *
Server stats are now obtained in a threaded manner to prevent the possibility of lockup.
Added a new admin password entry to the server window so that in instances where the Shoutcast server has an admin password applied the stats can still be obtained.
Added and option to turn off stats retrieval on a per server basis.
Stats are additionally now displayed on a per server basis in the server window.
* Changes in version 0.7.14 *
Added 'Alternate' playlist mode.
Added listener stats retrieval. Stats are now displayed below the stream status indicator.
Dynamic runtime linking supported for libmad. MP3 playback can no longer be completely disabled.
Added prefs for how to handle faulty server connections.
Dynamic runtime linking supported for libmp3lame. MP3 streaming can no longer be completely disabled.
Added audio dumping facility to avcodecdecode.c for removing seek noise.
Fixed a bug in avcodecdecode.c which was causing delayed stopping of ape tracks.
Added support for mpc files.
Added support for ape files.
Added an external playlist mode. This allows for extremely large playlists without cluttering the playlist box.
* Changes in version 0.7.13 *
Fixed behaviour when network congestion is encountered.
* Changes in version 0.7.12a *
Fixed beeping sound that was being triggered by a gtk.Entry being filled beyond it's specified character limit, specifically when playing a track with the progress counter in countdown mode.
Fixed multiple deprecation warnings for gtk.SpinButton caused by non zero page sizes in their respective gtk.Adjustment.
* Changes in version 0.7.12 *
Fixed a problem of idjcctrl being able to crash idjc through specifying a server tab number that does not exist.
Fixed a problem with the FLAC encoder not properly registering a bitrate resulting in an inability to stream.
The About pane now displays a list of contributors to IDJC.
Added code to prevent the DJ alarm triggering twice.
Playlist menu option Add To Jingles is now greyed out for playlist controls.
Playlist controls are now processed much more quickly.
Fixed a segfault in mp3dec.c. Older versions of JACK won't trigger this.
Added a new announcement feature on the player context menu that provides a dialog box for text prompts. It's also useful as an alternative to the stop-player control. It provides more of a cue that the DJ needs to talk (if the DJ alarm wasn't enough) and opens the mic for the DJ. The keyboard shortcut is U for no particular reason.
Comp meter updated to indicate noisegate and deess attenuation levels as distinct colours.
Recordings can now be started when the connection type is set to Shoutcast and the format is set to ogg with flac or speex.
Contains brand new microphone audio processing code contributed by Stefan Fendt.
Spacebar now shortcuts for the microphone.
Added new shortcuts V for VoIP and P for private VoIP.
Keyboard focus capability has been stripped from all but the playlists which means that whenever the main window has focus that the keyboard shortcuts mechanism will be functional.
The stream peak meter now red-lines at -2dB and the VU at -7 dB.
Added a new option to cap the maximum stream audio level at -2dB. This may improve the encoding quality. When active this change is reflected in the Str Peak and Str VU meters by the drawing of a line.
Tighter timings on the interlude player. Silence detection at the end of tracks is now more aggressive. Compensated for extended quiet intro songs by inhibiting silence detect on the first 15 seconds of any track.
Now using the python subprocess module for launching the mixer and sourceclient sub-processes to clear a deprecation warning.
Updated to work with the latest pygtk.
When LANG environment variable is not set exception TypeError is now caught for Python 2.6
The CRC is now checked on mp3 files, also sync errors and the like are checked for and not played. This prevents things like the sample rate from being misread.
Ogg/Vorbis can now be streamed at 8kbps.
* Changes in version 0.7.11a *
Added configure option --disable-static, which forces the use of shared libraries. Currently only libshout, which becomes a dependency when this option is specified.
* Changes in version 0.7.11 *
FLAC playback now requires version 1.1.3 or greater.
Configure will now warn on missing LAME dependency.
Added the capability to connect to a Prokyon3 database for the retrieval of detailed music collection metadata. Includes search/filter facility, drag and drop.
Configure options for dependencies are now forced when explicitly specified so --enable-speex="yes" will result in ./configure exiting with an error message if that dependency cannot be met.
The meter area now responds to a mouse right click by bringing up the application-wide context menu.
Added new configure options to prevent building against FLAC and speex libraries.
Added a stream status indicator to the main window.
Fixed a bug that was preventing certain session data from being saved.
Fixed a bug with regard to the requested initial state of the Monitor Mix Stream button which was causing a crash on program start.
Libshout dependency eliminated, linked statically.
Added shoutcast contact information IRC, AIM, ICQ.
* Changes in version 0.7.10 *
Reduced the size of the level meters and their text.
Changed the level meters to use the DrawingArea widget. This gives a more authentic meter appearance with the different colours on the scale but more importantly reduces CPU load massively when using certain GTK themes.
Labelled all the widgets in the crossfader bar.
Updated the Stream Mon. button to something a little less obtuse.
Added a new 'None' option to the Metadata Source chooser.
Fixed the media formats list to not show mp4/m4a when IDJC built without ffmpeg support.
Added new ./configure options to allow building without support for non-free formats:
--disable-mad
--disable-ffmpeg
--disable-mp4
--disable-lame
Removed unused JACK audio ports from the sourceclient.
Added a DSP interface via JACK which includes a bypass control.
* Changes in version 0.7.9 *
New dialog boxes control reconnecting to a server when the connection fails. Reconnection attempts will be made as many as three times after sensible time delays with the user given the option to trigger the reconnection attempt early or to cancel altogether.
Removed the faad2 dependency. AAC decoding to be done in future by ffmpeg instead. Tagging and metadata readout use libmp4v2.
Dependency include files avcodec.h and avformat.h have been moved to different directories. The build system now accounts for this.
Added a mid marker for the crossfader.
Added a selector for choosing the crossfader response curve.
Added new buttons for centering the crossfader.
Included a patch for a metadata source selector.
Improved the handling of poorly terminated Ogg streams.
Regression fix: IDJC is now capable of running when the LANG environment variable isn't set.
* Changes in version 0.7.8a *
Fixed oggdec.c to prevent infinite looping when files are added which contain unterminated streams.
Applied a patch which cleans up superfluous suggested tags in the ogg vorbis tagger when there is a case mismatch e.g. artist vs. ARTIST.
* Changes in version 0.7.8 *
Changed mp3 tab label text to upper case.
Fixed the Speex decoder so it cleanly rejects files that don't have frames_per_packet set to 1 or above.
Added a Speex encoder.
* Changes in version 0.7.7 *
Fixes to oggdec.c in the flac seek and tell callbacks. Fix to oggflacdec.c so that end of tracks are detected.
Added an OggFlac encoder. Triangular dither is applied when using 16 and 20 bit.
Fade in/out made consistent across all JACK sample rates for microphone headroom, mic and aux mute/unmute, player mute/unmute.
Track fadeout now works consistently for all JACK sample rates.
Increased media player watchdog timeout to 9 seconds to accomodate very large media files.
An english label on the compressor now reads Release, formerly Decay. Decay was used previously due it being only five letters long.
A number of compressor, noise gate, and normaliser control values have been changed to units expressed as times and time constants in milliseconds, formerly they were samples and fractions of movement per sample. The former scheme suffered from being dependent upon the JACK sample rate and also it did not follow the example of actual studio equipment.
Ogg file metadata updates occur instantaneously when using the seek bar.
Fixed oggscan_eos in oggdec.c so that all ogg/oga files should import correctly.
Added the keyword 'managed' to the Ogg/vorbis encoder configuration line for when in managed bitrate mode.
Added a new Ogg/vorbis streaming configurator. Upper and lower limits are now expressed as a percentage. Feature expansion is made possible for alternative types of Ogg stream by this new arrangement.
Default text in the jack ports tab now reads system instead of alsa_pcm - this is compatible across different jack back ends but only for recent versions of jack.
* Changes in version 0.7.6 *
The Radio Server window is now by default larger in order not to obscure the encoding format controls.
Removed the (mp3 only) text from the Shoutcast dropdown. When Shoutcast is unavailable due to non support of LAME mp3 encoding the Shoutcast dropdown item is set insensitive.
Builds of IDJC that lack mp3 streaming support now display an mp3 tab with a message where the configuration controls would otherwise be.
Support for Icecast version 1 servers has been dropped due to lack of support in recent versions of libshout.
STREAMERS and RECORDERS environment variables now affect ./configure and can be used to set the number of streamers and recorders that will be available.
The Add Files dialog now reports which media files are supported.
Removed the EXTM3U option from prefs. The current policy is to write m3u metadata when saving playlists and to ignore it on readback.
Extended m3u metadata is now Latin1 encoded.
Cleanups to the playlist populating code.
Added pls playlist support.
Single lined m3u files can now pull in directories.
Added xspf playlist support.
Added the ability to build with pmake, which is widely used on BSD systems.
Added file bsdcompat.c to include workalikes for GNU libc extensions with an aim to get IDJC working on BSD.
Stability fixes to oggdec.c to permit malformed ogg files without locking up.
Added support for the tagging of speex (.spx) files.
Removed a line of code that was causing a visual glitch on the play progress bar at the end of a track.
Added new command line options -m, -a, -t, -s. The man page has been updated to explain what they are for.
Added a speex audio decoder.
* Changes in version 0.7.5 *
Saved Ogg streams now have the oga file extension which is the correct one to use for chained Ogg files.
Added a FLAC decoder for OggFLAC audio files.
Added a vorbis decoder replacing the libvorbisfile decoder that was present previously.
Added support for the oga (Ogg audio) file extension which is the correct one to use for chained ogg audio files.
Added a general purpose Ogg audio decoder which serves as a base for launching decoders for chained Ogg files (oga). All streams in the file can be of a distinct format and samplerate. It also handles obtaining metadata for the playlist.
Fixed a regression introduced in 0.7.4 which prevented shoutcast connections from working due to a labelling change.
* Changes in version 0.7.4 *
Visual tweaks to Prefs->General.
Server connnect button will not grey out while streaming Ogg when Shoutcast is later selected.