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