improved info text for the random selector.
[paraslash.git] / NEWS
1 NEWS
2 ====
3
4 0.?.? (to be announced) "sonic convolution"
5 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
6
7         o aac filter and aac audio format handler (requires libfaad)
8
9
10 0.2.12 (2006-05-12) "oriented abstraction"
11 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
12 Many user-visible changes in this release and lots of new
13 features:
14
15
16         o the new optional dccp sender/receiver. It uses the datagram
17         congestion control protocol. You'll need a fairly new kernel
18         for this.
19
20         o paraslash works on Mac OS X (thanks to Gerd Becker)
21
22         o para_play renamed to para_write
23
24         o modular output plugin design (writers) for para_write
25
26         o new file_writer output plugin for para_write
27
28         o compress filter speed improvements
29
30         o update to libortp-0.9.1
31
32         o update to gengetopt-2.17rc
33
34         o para_client no longer depends on libreadline (as the
35         code for the interactive mode was removed).
36
37         o gcc-2-95 is no longer a supported compiler. It may still
38         work, but it gets no more testing.
39
40         o the tarball no longer contains the screenshot images which
41         reduces its size quite a bit.
42
43         o configure: new command line options: --enable-mysql-headers
44         and --enable-mysql-libs
45
46 0.2.11 (2006-03-11) "atomic duality"
47 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
48
49 Here it is, the first paraslash release developed with git. There
50 are fairly many user-visible changes in this release. As two out of
51 the three "database tools" of paraslash don't use a database at all,
52 they are now called "audio file selectors" instead.
53
54
55         o the cdt command (change database tool) becomes chs (change
56         selector)
57
58         o no more colon separators: The syntax of some options of
59         para_audiod and para_filter have changed. Use --help for
60         more info (and some examples).
61
62         o update to gengetopt-2.16 (thanks to Lorenzo Bettini)
63
64         o switch from cvs to git (should've done that earlier)
65
66         o the new ipc subsystem
67
68         o new audio file selector: playlist
69
70         o para_server: the dopey selector is now called "random",
71         and is the default selector. Use the --selector option to
72         choose another selector at startup, or the chs command to
73         change the selector at runtime.
74
75         o X86_64 fixes (thanks to Steffen Klassert)
76
77         o para_play fixes
78
79
80 0.2.10 (2006-02-17) "cyclic attractor"
81 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
82
83 Huge documentation update, a scrollable window for para_gui, ortp
84 improvements, and of course many small fixes not mentioned here.
85 The diffstat below is rather misleading as most insertions are due
86 to the new source documentation.
87
88         o autoconf cleanup
89
90         o para_server also uses the new error subsystem
91
92         o lots of new documentation (UTSL)
93
94         o gui improvements:
95                 - keysyms for cursor keys and for next/previous page keys
96                 - scrollable output window
97                 - new internal commands: scroll up/down, page up/down
98                 - fix color of command output.
99
100         o ortp: the --chunk_time and --header flags are no longer needed
101         for para_recv/para_audiod as this information is now encoded in
102         each rtp packet sent by para_server.
103
104 New files: daemon.h net.h ringbuffer.c ringbuffer.h string.h web/para.css
105 Doxyfile
106
107  Makefile.in               |   99 ++-----
108  NEWS                      |   19 +
109  README                    |    6
110  README.mysql              |   21 -
111  afs.c                     |  223 +++++++++------
112  afs.h                     |  140 ++++++++--
113  audioc.c                  |    5
114  audiod.c                  |  503 +++++++++++++++++-------------------
115  audiod.h                  |   11
116  client.c                  |   12
117  close_on_fork.c           |   43 +++
118  close_on_fork.h           |    1
119  command.c                 |  283 ++++++++------------
120  compress.c                |   34 +-
121  configure.ac              |  402 +++++++++++++---------------
122  crypt.c                   |   63 ++--
123  crypt.h                   |   12
124  daemon.c                  |   76 ++++-
125  db.c                      |   90 ++++--
126  db.h                      |   97 ++++++
127  dbadm.c                   |   23 +
128  dopey.c                   |   59 ++--
129  error.h                   |  315 +++++++++++++++++-----
130  exec.c                    |   55 +++
131  fade.c                    |    4
132  filter.c                  |   23 -
133  filter.ggo                |    2
134  filter.h                  |  307 +++++++++++++++++++--
135  filter_chain.c            |  147 +++++++---
136  grab_client.c             |   87 ++++--
137  grab_client.h             |   41 +-
138  gui.c                     |  422 ++++++++++++++++++++++--------
139  gui_common.c              |    2
140  http.h                    |    1
141  http_recv.c               |   99 ++++---
142  http_send.c               |  164 ++++++++---
143  list.h                    |    5
144  mp3.c                     |  246 +++++++++--------
145  mp3dec.c                  |   88 +++---
146  mysql.c                   |  339 ++++++++++--------------
147  net.c                     |  271 ++++++++++++++-----
148  ogg.c                     |   86 +++---
149  oggdec.c                  |   86 +++---
150  ortp.h                    |   31 ++
151  ortp_recv.c               |  162 ++++++-----
152  ortp_recv.ggo             |    2
153  ortp_send.c               |  138 +++++----
154  para.h                    |   93 ------
155  play.c                    |   20 -
156  recv.c                    |   11
157  recv.h                    |  147 +++++++++-
158  recv_common.c             |    9
159  sdl_gui.c                 |   21 -
160  send.h                    |   82 +++++
161  server.c                  |  119 +++++---
162  server.h                  |  117 ++++++--
163  signal.c                  |   70 ++++-
164  slider.c                  |    5
165  stat.c                    |   89 +++++-
166  string.c                  |  243 ++++++++++-------
167  time.c                    |   78 ++++-
168  wav.c                     |   26 -
169  web/documentation.in.html |   14 -
170  web/header.html           |   13
171  web/index.in.html         |    1
172  65 files changed, 4146 insertions(+), 2357 deletions(-)
173
174 0.2.9 (2006-01-24) "progressive turbulence"
175 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
176
177 Internal audiod receivers/filters, the new error subsystem and
178 a lot of small improvements.
179
180         o para_recv and para_filter are integrated into the para_audiod
181           binary, i.e. audiod no longer spawns a new process for
182           each receiver/filter. As para_recv and para_filter might be
183           useful as standalone programs, they still get built (linked
184           against the same object files that are also used for audiod).
185
186         o further ortp timing improvements should reduce the CPU usage
187           of the ortp receiver.
188
189         o improved audio grabbing. The 'grab' command of para_audiod
190           has its own set of command line options. Read the output of
191           "para_audioc help grab" for more info.
192
193         o oggdec: configurable input prebuffer size.
194
195         o the new error subsystem gives better error diagnostics
196           and reduces code size.
197
198 New files: audiod.h error.h grab_client.c grab_client.ggo grab_client.h
199 http_recv.ggo ortp_recv.ggo recv_common.c
200
201  FEATURES                |   49 -
202  INSTALL                 |   22
203  Makefile.in             |   87 +-
204  NEWS                    |   73 ++
205  README                  |   89 +-
206  README.mysql            |   18
207  audioc.c                |    5
208  audiod.c                | 1243 +++++++++++++++-----------------------
209  audiod.ggo              |   97 ++
210  command.c               |    5
211  compress.c              |   44 -
212  compress_filter.ggo     |    4
213  configure.ac            |  127 +++
214  daemon.c                |   12
215  exec.c                  |   34 -
216  filter.c                |   66 +-
217  filter.h                |   24
218  filter_chain.c          |  126 ++-
219  gcc-compat.h            |    8
220  http_recv.c             |   56 +
221  http_send.c             |   35 -
222  mp3.c                   |   12
223  mp3dec.c                |   27
224  net.c                   |  133 ++--
225  oggdec.c                |  108 +--
226  oggdec_filter.ggo       |    3
227  ortp.h                  |    2
228  ortp_recv.c             |  290 +++++---
229  ortp_send.c             |  187 ++---
230  para.h                  |   17
231  play.c                  |   17
232  recv.c                  |  101 +--
233  recv.ggo                |   15
234  recv.h                  |   51 +
235  scripts/demo-script     |   12
236  server.c                |   15
237  signal.c                |   11
238  skencil/overview.sk     |  300 ++++-----
239  stat.c                  |   11
240  string.c                |  170 ++++-
241  wav.c                   |   12
242  web/demo.in.html        |   72 --
243  web/download.in.html    |    3
244  web/index.in.html       |    1
245  web/license.in.html     |    5
246  web/screenshots.in.html |    4
247  46 files changed, 2042 insertions(+), 1761 deletions(-)
248
249 0.2.8 (2006-01-02) "dynamic accumulation"
250 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
251
252 The new modular filter design and the para_play-hangs bugfix.
253
254         o new executable: para_filter. It combines para_mp3dec,
255           para_oggdec and para_compress. It also adds a further filter
256           type, wav, that just inserts a wave header at the desired point
257           of the filter chain. All 'piping' is done in-memory (i.e. no
258           read/write operations are used).
259
260         o para_play: fix a stupid bug that caused it to hang under
261           certain circumstances.
262
263 New files: compress_filter.ggo filter.c filter.ggo file filter.h
264 filter_chain.c oggdec_filter.ggo wav.c
265
266  INSTALL           |    4
267  Makefile.in       |   36 +++++---
268  NEWS              |   15 +++
269  README            |   25 ++----
270  command.c         |    8 +
271  compress.c        |  149 ++++++++++++++++++++----------------
272  configure.ac      |   37 +++++---
273  http_recv.c       |  121 ++++++++++++++++++-----------
274  mp3dec.c          |  216 +++++++++++++++++++++-------------------------------
275  oggdec.c          |  223 ++++++++++++++++++++++++++++++++++++------------------
276  ortp_recv.c       |  167 ++++++++++++++++++++--------------------
277  ortp_send.c       |    2
278  play.c            |    2
279  recv.c            |   44 +++++++---
280  recv.ggo          |   12 --
281  recv.h            |   37 +++++++-
282  server.ggo        |    2
283  web/index.in.html |    1
284  18 files changed, 631 insertions(+), 470 deletions(-)
285
286 0.2.7 (2006-12-27) "transparent invariance"
287 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
288 Not many user-visible changes but a fair amount of internal improvements.
289
290
291         o The http sender buffers data if it can not be sent
292           out immediately (because the socket is not writable). This
293           should prevent para_server from shutting down the connection
294           too early on a loaded network.
295
296         o para_play also prebuffers data if it is told to start at a
297           future time by the --start_time option.
298
299         o The return of para_recv: It combines para_ortp_recv and
300           para_http_recv. Use the --receiver option to switch between
301           the two. para_recv builds without libortp, but contains
302           only the http receiver in this case.
303
304         o update to ortp 0.8.1. As this ortp release contains incompatible
305           changes, para_recv-0.2.7 won't link against older ortp libs.
306
307         o improved ortp timings.
308
309         o use of gcc-extensions that #define away for non-gcc and
310           gcc < 3.0.
311
312 New files: gcc-compat.h
313
314  CREDITS      |   14 +-
315  FEATURES     |   10 -
316  INSTALL      |   36 +++--
317  Makefile.in  |  171 +++++++++++++++++----------
318  NEWS         |   30 ++++
319  README       |  128 ++++++++------------
320  README.mysql |    4
321  afs.c        |  113 +++++++++++++-----
322  afs.h        |    2
323  audioc.c     |   21 +++
324  audiod.c     |  226 +++++++++++++++++++++---------------
325  audiod.ggo   |    4
326  client.c     |    9 -
327  command.c    |   71 +++++++----
328  compress.c   |   15 +-
329  compress.ggo |    4
330  configure.ac |   30 ++--
331  crypt.c      |    2
332  daemon.c     |    6
333  db.c         |    4
334  dbadm.c      |   46 ++-----
335  dopey.c      |   16 +-
336  fade.c       |    3
337  gui.c        |   77 ++++++------
338  http_recv.c  |  143 +++++++++++++----------
339  http_send.c  |  217 ++++++++++++++++++++++-------------
340  index.html   |  154 +++++++++++++------------
341  list.h       |  361 -----------------------------------------------------------
342  mp3.c        |   17 +-
343  mp3dec.c     |    5
344  mysql.c      |   57 ++++++---
345  net.c        |   12 +
346  ogg.c        |   26 ++--
347  oggdec.c     |   34 +++--
348  ortp.h       |    2
349  ortp_recv.c  |  263 +++++++++++++++++++++---------------------
350  ortp_send.c  |   96 ++++++++++-----
351  para.h       |   51 +++-----
352  play.c       |  173 +++++++++++++++++++---------
353  play.ggo     |    2
354  sdl_gui.c    |   27 +++-
355  send.h       |    2
356  server.c     |  100 ++++++++--------
357  stat.c       |   68 ++++++++---
358  string.c     |   41 +++---
359  45 files changed, 1500 insertions(+), 1393 deletions(-)
360
361 0.2.6 (2005-10-29) "recursive compensation"
362 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
363 Transparent session encryption (uses openssl's Alleged RC4 cipher),
364 the internal find command and several other improvements and cleanups.
365
366         o Encrypt the session if encryption is requested by the client
367           (default for para_client 0.2.6). This is backwards
368           compatible, so older clients can still connect to para_server
369           0.2.6. Use the new client option --plain to request an
370           uncrypted session (off by default, must be set to on in
371           order to connect to para_server 0.2.x with 0 <= x <= 5).
372
373         o para_server uses an internal function to locate audio files
374           rather than calling find(1). The server option
375           --mysql_audio_file_dir replaces --mysql_find_cmd.
376
377         o documentation update
378
379         o man pages
380
381         o header file cleanup
382
383         o para_client code cleanup
384
385         o para_gui: faster display of output of display commands
386
387 New files: afs.h close_on_fork.c close_on_fork.h db.c db.h rc4.h
388
389  1.0          |    3
390  INSTALL      |   51 +-
391  Makefile.in  |   53 +--
392  NEWS         |   28 +
393  README       |   27 -
394  README.mysql |   45 +-
395  SFont.c      |   20 -
396  afs.c        |   51 --
397  audioc.c     |    6
398  audiod.c     |  303 +++++++++--------
399  client.c     |  174 +++-------
400  client.ggo   |    1
401  command.c    |  608 ++++++++++++++++++++---------------
402  compress.c   |    3
403  compress.ggo |    4
404  configure.ac |    2
405  crypt.c      |   50 +-
406  crypt.h      |    2
407  dopey.c      |  136 +++++--
408  exec.c       |   39 --
409  fade.c       |    4
410  gui.c        |   74 ++--
411  http_recv.c  |    4
412  http_send.c  |   51 +-
413  index.html   |   12
414  krell.c      |    2
415  mp3.c        |    5
416  mysql.c      | 1008 ++++++++++++++++++++++++++++++++---------------------------
417  net.c        |  122 ++-----
418  ogg.c        |    5
419  ortp_send.c  |   37 +-
420  para.h       |   39 +-
421  send.h       |    2
422  server.c     |   49 +-
423  server.ggo   |    2
424  server.h     |   68 ---
425  stat.c       |  132 ++++---
426  string.c     |   33 -
427  38 files changed, 1738 insertions(+), 1517 deletions(-)
428
429 0.2.5 (2005-10-13) "aggressive_resolution"
430 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
431 This release adds internal senders, i.e. no more external programs are
432 spawned for sending out the audio data. There are two different senders
433 available: The http sender and the ortp sender (former para_send which
434 is no longer needed).
435
436 The new sender code has a plugin-like design so it can be easily
437 extended should there be be any future need for supporting another
438 network streaming protocol. All senders are completely independent of
439 each other. In particular, the http and the ortp sender can operate
440 in parallel.
441
442         o new server command: sender to control senders at runtime.
443           Read the output of "para_server -h" and "para_client help
444           sender" for more information.
445
446         o para_recv renamed to para_ortp_recv
447
448         o new executable: para_http_recv, a simple command line
449           http receiver.
450
451         o major afs/mp3/ogg code simplifications due to internal
452           senders.
453
454         o ogg timing improvements
455
456         o fix several minor memory leaks (found by valgrind)
457
458         o empty stream definitions work again
459
460         o com_ne(): ignore errors on remove
461
462         o audiod: fix segfault on server restart
463
464 New files: http.h http_recv.c http_recv.ggo http_send.c ortp.h ortp_recv.c
465         ortp_recv.ggo ortp_send.c
466
467  FEATURES            |   27 +++-
468  INSTALL             |   19 +--
469  Makefile.in         |   54 ++++-----
470  NEWS                |   36 ++++++
471  README              |   45 ++++---
472  afs.c               |  311 +++++++++++++++-------------------------------------
473  audioc.c            |   10 +
474  audiod.c            |   82 +++++++------
475  audiod.ggo          |    2
476  command.c           |  184 +++++++++++++++++++++++++++---
477  configure.ac        |   36 ++++--
478  daemon.c            |   10 +
479  exec.c              |   33 -----
480  gui.c               |    6 -
481  index.html          |    6 -
482  mp3.c               |  144 ++++--------------------
483  mysql.c             |   52 ++++----
484  net.c               |   58 ++++++++-
485  ogg.c               |  289 ++++++++++++++----------------------------------
486  oggdec.c            |   19 ++-
487  para.h              |   23 ++-
488  server.c            |  128 ++++++++++++++-------
489  server.ggo          |   17 ++
490  server.h            |   40 ++++--
491  skencil/overview.sk |   86 +++-----------
492  string.c            |   51 +++++---
493  26 files changed, 870 insertions(+), 898 deletions(-)
494
495
496 0.2.4 (2005-09-21) "toxic anticipation"
497 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
498 Several small improvements, fixes and the new grab command.
499
500         o audiod:
501                 - new command: "grab" to grab the output of the stream reader
502                   or any filters. Read the output of "para_audioc help grab"
503                   for more information.
504                 - fix memory leak
505                 - code cleanup
506
507         o audioc: new command line option: --bufsize to specify a
508           buffer size different from the default size 8192.
509
510         o improved error diagnostics for para_play.
511
512         o new configure option: --enable-ssldir so search for openssl in
513           non-standard places
514
515         o sdl_gui: Make it look nice again for 1024x768
516
517         o server: report total size of memory allocated with sbrk by malloc,
518           new command line option: --announce_time
519
520 New files: list.h
521
522  Makefile.in  |   39 ++-
523  NEWS         |   24 ++
524  README       |   22 +-
525  afs.c        |    9
526  audioc.c     |   55 ++++-
527  audioc.ggo   |    1
528  audiod.c     |  577 ++++++++++++++++++++++++++++++++++++++++-------------------
529  client.c     |   20 +-
530  client.ggo   |   12 -
531  command.c    |   14 -
532  configure.ac |   64 +++---
533  crypt.c      |    8
534  daemon.c     |    6
535  gui.c        |   52 ++---
536  gui_common.c |   70 -------
537  index.html   |    2
538  mp3.c        |    2
539  mp3dec.c     |    6
540  net.c        |    2
541  ogg.c        |    2
542  oggdec.c     |    8
543  para.h       |    8
544  play.c       |   51 ++---
545  sdl_gui.c    |   53 ++---
546  server.c     |   48 +---
547  server.ggo   |    1
548  server.h     |    2
549  stat.c       |   65 ++++++
550  28 files changed, 744 insertions(+), 479 deletions(-)
551
552 0.2.3 (2005-09-01) "hydrophilic movement"
553 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
554 Two new executables and major feature enhancements.
555
556         o audiod filters: It is now possible to specify arbitrary many
557           (including none) filters for each supported audio
558           format. This can be used e.g. for normalizing volume,
559           transforming or grabbing the audio stream, or for using
560           visualizers.  Read the output of "para_audiod -h" for the
561           syntax of the new --filter_cmd option.
562
563         o new executable: para_play, a tiny alsa player. It
564           can play wave files or raw pcm (16 bit little endian)
565           from stdin.
566
567         o new executable: para_compress, a dynamic range compressor
568           intended to keep audio output at a consistent volume. Derived
569           from AudioCompress, http://trikuare.cx/code/AudioCompress.html.
570
571         o audiod: New option: --stream_delay. This can be used in
572           a local network to syncronize the audio output of all
573           clients that play the same stream.
574
575 New files: compress.c compress.ggo play.c play.ggo
576
577  CREDITS             |    2
578  FEATURES            |   31 +--
579  Makefile.in         |   31 ++-
580  NEWS                |   24 ++
581  README              |    8
582  afs.c               |   14 -
583  audiod.c            |  463 +++++++++++++++++++++++++++++++++++++++++-----------
584  audiod.ggo          |    7
585  configure.ac        |   16 +
586  index.html          |   19 ++
587  mysql.c             |   17 +
588  net.c               |    8
589  recv.c              |   42 +++-
590  scripts/demo-script |    2
591  signal.c            |   22 ++
592  stat.c              |    2
593  16 files changed, 542 insertions(+), 166 deletions(-)
594
595 0.2.2 (2005-08-19) "tangential excitation"
596 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
597 Mostly internal changes in this release, but also some new commands
598 for the mysql database tool.
599
600         o cleanup exec.c, fix para_exec bug
601         o compile time loglevel (log messages below the given level
602           won't be compiled in, which reduces the size of the
603           resulting binaries)
604         o new log macros that shorten the size of the source code.
605         o workaround a gcc-4.1 bug (?) that caused send_cred_buffer()
606           to send only zeros. With this workaround, para_audioc works
607           again.
608         o avoid gcc-4 warning: conflicting types for built-in function 'clog'
609         o new mysql commands: "rm" (remove entry), "mv" (rename entry) "ne"
610           (new entry), "snp" (set numplayed). Read the manual for more
611           information.
612
613  INSTALL             |   10 -
614  Makefile.in         |    7 -
615  NEWS                |   19 +++
616  README              |    5
617  afs.c               |   75 ++++++--------
618  audioc.c            |    5
619  audiod.c            |  137 ++++++++++++-------------
620  client.c            |   83 +++++++--------
621  command.c           |   85 +++++++---------
622  configure.ac        |    2
623  crypt.c             |    6 -
624  daemon.c            |   26 ++--
625  dbadm.c             |  128 ++++++++++++------------
626  dopey.c             |    9 -
627  exec.c              |  180 ++++++----------------------------
628  fade.c              |   76 +++++++-------
629  gui.c               |   88 ++++++++--------
630  krell.c             |  113 ++++++++++-----------
631  mp3.c               |   49 ++++-----
632  mysql.c             |  275 ++++++++++++++++++++++++++++++++++++++++++++--------
633  net.c               |   44 ++------
634  ogg.c               |   91 ++++++++---------
635  oggdec.c            |    2
636  para.h              |  110 +++++++++++++-------
637  recv.c              |   26 ++--
638  scripts/demo-script |    4
639  sdl_gui.c           |    3
640  send.c              |   26 ++--
641  server.c            |   74 ++++++-------
642  signal.c            |   19 +--
643  skencil/overview.sk |   34 +++---
644  slider.c            |    4
645  stat.c              |   27 ++---
646  string.c            |   62 +++++++----
647  34 files changed, 1000 insertions(+), 904 deletions(-)
648
649 0.2.1 (2005-08-15) "surreal experience"
650 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
651 Here comes paraslash-0.2.1. It contains a couple of new features and,
652 surprise, only minor bug fixes.
653
654         o kill noisy mp3 debug message
655         o cleanup of the build system
656         o para_server and para_client directly use the crypto routines
657           of the openssl library rather than invoking the openssl command
658           line utitlity
659         o server/audiod: new option --user to switch to the given user
660           when invoked as root. Read the output of "para_server -h" for
661           more information.
662         o gui/sdl_gui: new option --stat_cmd to be used to retrieve the
663           status. Default: "para_audioc stat"
664         o sdl_gui: new option --pic_cmd to be used to download the picture.
665           Default: "para_client pic"
666         o audiod: 5 slots ought to be enough for everybody
667         o audiod: new status item: Uptime, kill hup command
668
669
670 New files: crypt.c crypt.h
671
672  1.0                 |    2
673  FEATURES            |   18 +++----
674  INSTALL             |   37 ++++++++++-----
675  Makefile.in         |  114 +++++++++++++++++++++---------------------------
676  NEWS                |   38 +++++++++++-----
677  README              |   27 +++++------
678  afs.c               |    6 --
679  audiod.c            |  117 ++++++++++++++++++-------------------------------
680  audiod.ggo          |    1
681  client.c            |   78 +++------------------------------
682  command.c           |  103 +++++++------------------------------------
683  configure.ac        |   78 ++++++++++++++++++++++-----------
684  daemon.c            |   44 +++++++++++++++++-
685  dbadm.c             |    7 +-
686  dopey.c             |   14 ++---
687  fade.c              |    3 -
688  gui.c               |    7 +-
689  gui.ggo             |    3 -
690  gui_common.c        |    7 ++
691  gui_theme.c         |  122 ++++++++++++++++++++++++++++------------------------
692  index.html          |   38 ++++++++++------
693  mp3.c               |   79 +++++++++++++++++----------------
694  mp3dec.c            |    8 +--
695  mysql.c             |   14 ++++-
696  net.c               |    3 -
697  ogg.c               |   21 ++++----
698  para.h              |   11 ++--
699  sdl_gui.c           |   19 ++++----
700  sdl_gui.ggo         |   10 ++--
701  server.c            |   19 --------
702  server.ggo          |    3 -
703  server.h            |    3 -
704  slider.c            |   19 +++-----
705  stat.c              |   24 +++++-----
706  string.c            |   12 ++++-
707  36 files changed, 530 insertions(+), 581 deletions(-)
708
709
710 0.2.0 (2005-08-06) "distributed diffusion"
711 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
712 After several month of increased development activity, paraslash-0.2.0
713 has arrived. It contains many new features and is much more
714 self-contained than the old 0.1.x series. Enjoy!
715
716
717         o para_server: fix hang on song change and crash on sighup.
718           Speed up mysql queries. The DIR_LIKE macro is gone.
719         o new executables: para_audiod, the local audio daemon that
720           starts playback (uses SCM_CREDENTIALS socket magic) and
721           para_audioc, the corresponding client.
722         o new executables: para_mp3dec/para_oggdec, two really teensy
723           decoders. para_mp3dec is based on libmad, para_oggdec requires
724           libvorbisfile.
725         o ovsend/ovrecv are capable of streaming ogg as well as mp3, so
726           they are now called para_send and para_recv respectively.
727         o documentation updates
728         o para_gui is themable. For now there is the default theme that
729           looks as before and the simple theme: blue and easy.
730         o gui: audio streaming is now handled by audiod. Time display shows
731           playback time rather than streaming time
732         o slider: update to libzmw-0.2.0
733         o para_krell: fix crash on server shutdown
734         o switch from gzip to bzip2
735
736 New files: audioc.c audioc.ggo audiod.c audiod.ggo daemon.c gui_theme.c mp3dec.c oggdec.c
737         recv.c recv.ggo send.c send.ggo stat.c
738
739  1.0                |    1
740  COPYING            |    2
741  CREDITS            |    4
742  FEATURES           |   24 -
743  INSTALL            |  131 ++++-
744  Makefile.in        |   83 ++-
745  NEWS               |   58 +-
746  PUBLIC_KEY         |   43 +
747  README             |  125 +++--
748  README.mysql       |   18
749  afs.c              |  330 +++++++++-----
750  client.c           |   41 -
751  client.conf.sample |    2
752  client.ggo         |    5
753  command.c          |  350 +++++++--------
754  configure.ac       |   38 +
755  dopey.c            |    2
756  exec.c             |  242 ++++++----
757  fade.c             |   43 -
758  fade.ggo           |    2
759  gui.c              | 1169 +++++++++--------------------------------------------
760  gui.ggo            |   10
761  gui_common.c       |   58 +-
762  index.html         |  176 ++++++-
763  krell.c            |    4
764  mp3.c              |  341 +++++++++------
765  mysql.c            |  180 ++++----
766  net.c              |  161 +++++++
767  ogg.c              |  444 +++++++++++++-------
768  para.h             |  103 ++++
769  sdl_gui.c          |  708 ++++++++++++++------------------
770  sdl_gui.ggo        |    2
771  server.c           |  175 +++----
772  server.ggo         |   13
773  server.h           |   20
774  slider.c           |  160 +++----
775  string.c           |   63 ++
776  time.c             |  103 +++-
777  38 files changed, 2821 insertions(+), 2613 deletions(-)
778
779
780 0.1.7 (2005-04-18) "melting penetration"
781 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
782 The main change in this release is clearly the oggvorbis rewrite,
783 but there are also lots of smaller changes. If you intend to use both
784 the mp3 and the ogg plugin, it is recommended to use software mixing,
785 e.g. the dmix plugin which is provided by ALSA.
786
787         o new executables: para_ovsend and para_ovrecv for sending/receiving
788           oggvorbis files via rtp. Requires the open rtp library. Get it at
789           http://www.linphone.org/ortp/
790         o rewrite of the ogg_vorbis core code
791         o configure detects libzmw and, if detected, includes
792           para_slider to the list of binaries to be built by make
793         o server stream writers read from their associated fifo rather
794           than from stdin
795         o slider: two new sliders, lastplayed and numplayed
796         o fix nasty double free bug which caused random segfaults in case of
797           mp3 files with invalid header information
798         o gui: new command line option: --stream_timeout=seconds  to
799           deactivate a slot if it is idle for that many seconds (default=`5')
800         o diffstats
801
802 New files: ovrecv.c ovrecv.ggo ovsend.c ovsend.ggo time.c
803  CREDITS         |    2
804  FEATURES        |   14 -
805  Makefile.in     |   20 +
806  NEWS            |   25 ++
807  README          |   28 ++
808  README.mysql    |   18 -
809  afs.c           |  238 ++++++++++++++++-------
810  autogen.sh      |    5
811  bash_completion |    2
812  command.c       |    9
813  configure.ac    |  115 ++++++++---
814  exec.c          |    6
815  gui.c           |    8
816  gui.ggo         |    1
817  krell.c         |   14 -
818  mp3.c           |  117 +++++++----
819  mysql.c         |    4
820  ogg.c           |  578 +++++++++++++++++++++-----------------------------------
821  para.h          |    9
822  server.c        |   65 ++++--
823  server.ggo      |    2
824  server.h        |   17 +
825  slider.c        |   68 ++++++
826  string.c        |   11 +
827  24 files changed, 794 insertions(+), 582 deletions(-)
828
829
830 0.1.6 (2005-03-05) "asymptotic balance"
831 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
832 Only little user-visible changes in this release. Mainly bugfixes and
833 core code cleanup. This is probably the most stable version ever if you
834 stick to mp3...
835
836         o fix several memory leaks
837         o rename default name of mysql database from "music" to "paraslash".
838           Use para_server's  --mysql_database option if you do not want to
839           rename your old database.
840         o rework ogg vorbis code
841         o make update command work on mysql servers with LOCAL_INFILE
842           disabled
843         o gui: improved stream I/O (slots)
844         o simplified audio format API
845         o para_pob_ogg is gone
846
847 0.1.5 (2004-12-31) "opaque eternity"
848 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
849 Let's slide gently into the new year.
850
851         o new: para_slider (not built automatically, type "make
852           para_slider" to build). A toy for those who always felt that
853           creating stream definitions is difficult. See screenshots,
854           README and FEATURES for more info.
855         o improved signal handling. Fixes server segfault on SIGHUP
856           for linux kernels newer than Aug 24 2004 and makes para_gui
857           race-free.
858         o reload database tool on SIGHUP
859         o improved help message for sl
860         o do not log "broken pipe" messages as errors. They are
861           perfectly ok.
862         o fix wrong error message on permission errors
863
864 0.1.4 (2004-12-19) "tunneling transition"
865 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
866 Bugfix release. As expected, 0.1.3 introduced a bunch of new bugs.
867 Hopefully, most of them got wiped out with this release. Some
868 enhancements went also in.
869
870         o improved error diagnostics for all commands
871         o stradd/picadd: overwrite previous contents if entry already
872           exists, rather than returning errors
873         o stradd: use current stream if invoked without args
874         o faster (and hopefully more stable) ogg-vorbis handling
875         o para_krell: reap children to avoid zombie-flooding in case
876           no server is running
877         o si: report also server pid
878         o server: don't busy-loop if dbtool reports only invalid files.
879         o gui: CTRL+C works again, fix stream_read command line option
880         o fix pic_add, hist
881         o fix mysql dbtool startup in case no database exists
882         o many small fixes and cleanups
883
884 0.1.3: (2004-12-10) "vanishing inertia"
885 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
886 Starting from this release, the database tools are integrated in the
887 server binary. This decreases server startup time, reduces code size
888 and speeds up database commands. However, the layout of the underlying
889 mysql database changed only slightly and 0.1.3 should be backwards
890 compatible in that respect.
891
892 Visible changes:
893
894         o If mysql is not detected at compile time, or fails to init
895           at runtime, fall back to the dopey database tool which should
896           always work.
897         o para_dbtool and dbtool.conf are gone. All mysql specific
898           options are read from server.conf and are prefixed by 'mysql_'.
899         o new command: cdt (change database tool)
900         o new command line option: dbtool (choose startup database tool)
901         o The name of current stream is now stored in the database,
902           so paraslash remembers its current stream when restarted.
903         o new command: csp (change stream and play)
904         o para_gui also reports current database tool and server uptime
905
906
907 0.1.2: (2004-11-28) "spherical fluctuation"
908 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
909 Point release before the big dbtool changes go in.
910
911         o dbtool: rename ca to cam (copy all meta data). It now also
912           copies numplayed and lastplayed time as well as the picture
913           id.
914         o fix endless-loop-bug caused by mp3 files with invalid header
915
916 0.1.1: (2004-11-05) "floating atmosphere"
917 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
918         o gkrellm plugin
919         o new dbtool command: mbox. Browse your sound-file collection
920           with your favorite mail reader.
921         o several small fixes
922
923 0.1.0: (2204-10-22) "rotating cortex"
924 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
925         o fix logging bug for loglevel > VERBOSE
926         o fix skip command
927         o correct timings for vbr mp3s
928         o modular audio format support
929         o ogg-vorbis support (experimental)
930         o new server option: autoplay
931
932 0.0.99: (2004-07-25) "harmonic deviation"
933 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
934         o rename projectname from icc to paraslash (play, archive, rate
935           and stream large audio sets happily)
936         o paraslash is no longer restricted to one particular audio
937           streaming software
938         o new dbtool commands (stradd, strq, strdel) for easy stream
939           managment w/o configuration file. That obsoletes stream_defs
940           file/config option for dbtool.
941         o picadd accepts jpeg data from stdin
942         o new server commands: ps (select previous stream), sc (song change)
943         o new default pictures for sdl_gui
944         o gui: new key_map option for binding commands and internal
945           functions to arbitrary keys, nice help screen, rip out
946           soundcard/linux specific stuff, avoid noise artefacts while jumping,
947           show silly logo on startup
948         o new executables: para_fade for fading volume, para_dbadm for
949           manipulating attributes
950         o cdb adds _all_ tables to mysql database
951         o revised and beautified documentation
952         o sample dbtool rewritten in C
953         o autoconf
954
955 0.0.98: (2003-12-26) "incremental smoothness"
956 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
957         o kick icecast in favour of poc. That removes some races and reduces
958           core code considerably.
959         o cbr/vbr is displayed by stat and gui/sdl_gui. New status flags
960           give finer info on afs' status.
961         o gui can start decoder (see config options). Further new gui
962           commands: refresh (^L), jmp (F1-F10)
963         o gui rereads conf on SIGUSR1 instead of SIGHUP. SIGHUP
964           terminates gui. This fixes dead instances consuming memory
965           continuously.
966         o new dbtool command: verb for sending verbatim sql queries.
967         o fix pid_list races (by removing pid_list)
968         o codename funnies
969
970 0.0.97: (2003-10-26)
971 ~~~~~~~~~~~~~~~~~~~~
972         o installation prefix now defaults to /usr/local
973         o new commands for gui: snozze, sleep and reread config
974         o config file for gui and sdl_gui
975         o fix problems with filenames containing funny characters
976           (reported by Thomas Forell)
977         o improved signal handling for gui, now it rereads conf on SIGHUP
978         o new dbtool command: cdb (create database)
979         o switch from argtable to gengetopt
980         o major code cleanup and speed improvements
981         o fix several potential buffer overflows
982         o many small fixes and cleanups
983
984 0.0.96 (2003-08-30)
985 ~~~~~~~~~~~~~~~~~~~
986         o easy stream_defs syntax
987         o sdl_gui can display images associated to the file being played
988         o Major feature enhancements for icc_gui including dynamic text
989           placement and the top/bottom window design
990         o vrfy/clean now also checks for NULL values in attributes as
991           well as for invalid picture pointers
992         o fix long outstanding case sensitivity bug
993         o many small fixes and cleanups
994
995 0.0.95 (2003-06-29)
996 ~~~~~~~~~~~~~~~~~~~
997         o sdl gui runs much faster
998         o new dbtool command: ca (copy attributes)
999         o count and display number of times the song has been played
1000         o new feature: scoring
1001         o command line options for sdl_gui
1002         o simpler syntax of streams file
1003         o decrease network traffic of stat
1004         o fix zombie bug
1005         o many small fixes and cleanups
1006
1007 0.0.94 (2003-05-04)
1008 ~~~~~~~~~~~~~~~~~~~
1009         o new server command: ns (next stream)
1010         o new icc_gui command: c (change stream)
1011         o internal mp3info
1012         o stat shows also id3 tag info
1013         o new sdl based gui
1014         o log flodding bug fixed
1015         o many small fixes and cleanups
1016
1017 0.0.93 (2003-03-28)
1018 ~~~~~~~~~~~~~~~~~~~
1019         o colors for icc_gui
1020         o icc_gui sets volume directly (linux only)
1021         o proper locking that fixes some races
1022         o fix security bug that caused commands to be executed even
1023           with unsufficient permissions
1024         o new command: hup to make all servers reread their configuration file
1025         o icecast meta data streaming
1026         o many small fixes and cleanups