paraslash.git
18 years agointroduce mark_fd_nonblock()
Andre [Fri, 7 Apr 2006 13:07:08 +0000 (15:07 +0200)]
introduce mark_fd_nonblock()

Calls fcntl(2) to prepare an fd for nonblocking file operations. Also, make
fd.c and para_gui use the error subssytem.

18 years agointroduce para_select()
Andre [Fri, 7 Apr 2006 12:28:09 +0000 (14:28 +0200)]
introduce para_select()

A simple wrapper for select(2) that checks for EINTR and restarts the
select call in this case.

18 years agoNew source files: fd.c/fd.h
Andre [Fri, 7 Apr 2006 11:23:57 +0000 (13:23 +0200)]
New source files: fd.c/fd.h

ATM, they only contain the file_exists() function which was pulled
out from exec.c. More to follow.

18 years agosignal.c: mark the read and write ends of the signal pipe non-blocking.
Andre [Fri, 7 Apr 2006 10:57:20 +0000 (12:57 +0200)]
signal.c: mark the read and write ends of the signal pipe non-blocking.

18 years agorename the array of supported audio file senders from 'dblist' to 'selectors'
Andre [Tue, 4 Apr 2006 10:53:47 +0000 (12:53 +0200)]
rename the array of supported audio file senders from 'dblist' to 'selectors'

18 years agoFEATURES: (no log message)
Andre [Mon, 3 Apr 2006 21:43:06 +0000 (23:43 +0200)]
FEATURES: (no log message)

18 years agofix potential segfault in para_client
Andre [Mon, 3 Apr 2006 19:50:06 +0000 (21:50 +0200)]
fix potential segfault in para_client

The first data buffer which is sent by the server is checked for
the AWAITING_DATA_MSG, but that buffer might not be 0-terminated..

Some other minor cleanups also.

18 years agomp3: Increase eof timeout
Andre [Mon, 3 Apr 2006 14:11:54 +0000 (16:11 +0200)]
mp3: Increase eof timeout

This fixes some problems with ortp.

18 years agoFix use of uninitialized variable 'now' in afs_preselect()
Andre [Mon, 3 Apr 2006 14:09:57 +0000 (16:09 +0200)]
Fix use of uninitialized variable 'now' in afs_preselect()

18 years agodb.h: fix documentation
Andre [Sat, 1 Apr 2006 23:08:36 +0000 (01:08 +0200)]
db.h: fix documentation

The pre_select function of struct audio_file_selector must _return_
the highest-numbered file descriptor.

18 years agoMinor audiod mainloop cleanup
Andre [Sat, 1 Apr 2006 22:21:46 +0000 (00:21 +0200)]
Minor audiod mainloop cleanup

18 years agostat_client_write(): add help text for new 'itemnum' parameter
Andre [Tue, 28 Mar 2006 06:52:24 +0000 (08:52 +0200)]
stat_client_write(): add help text for new 'itemnum' parameter

18 years agoupdate audiod help text
Andre [Mon, 27 Mar 2006 17:52:32 +0000 (19:52 +0200)]
update audiod help text

Replace the old --anticlip and --volume options in the example.

18 years agospecify the three grab modes as values in grab_client.ggo
Andre [Mon, 27 Mar 2006 08:50:08 +0000 (10:50 +0200)]
specify the three grab modes as values in grab_client.ggo

That makes gengetopt check that the argument to the --mode
option is one of sloppy, pedantic, or aggressive, so get rid of
E_INVALID_GRAB_MODE, the gc_modes array and of the error check in
grab_client.c.

Another nice side-effect is that also "s", "p", "a" work as
abreviations for the grab mode argument.

Reformat grab_client.ggo as we are at it.

18 years agogengetopt: use the new (and more descriptive) 'optional' instead of 'no'.
Andre [Mon, 27 Mar 2006 07:50:59 +0000 (09:50 +0200)]
gengetopt: use the new (and more descriptive) 'optional' instead of 'no'.

18 years agofix grab -V
Andre [Mon, 27 Mar 2006 06:04:55 +0000 (08:04 +0200)]
fix grab -V

Currently, -V is silently ignored, i.e. "grab -V" dumps binary data
to stdout which probably doesn't meet the expectation of the user ;)

18 years agogengetopt improvements
Andre [Mon, 27 Mar 2006 05:42:20 +0000 (07:42 +0200)]
gengetopt improvements

Use the --set-package option of gengetopts for receivers, filters
and the grab command, and set the 'package' name appropriately.
Moreover, --no-handle-version is needed for the grab command. Without
it, grab -V terminates para_audiod.

18 years agoaudiod: use the new help text array of gengetopt-2.17
Andre [Mon, 27 Mar 2006 04:58:32 +0000 (06:58 +0200)]
audiod: use the new help text array of gengetopt-2.17

This allows to get rid of an ugly hack for the grab command.

18 years agoupdate to gengetopt-2.17
Andre [Mon, 27 Mar 2006 04:28:56 +0000 (06:28 +0200)]
update to gengetopt-2.17

gengetopt-2.17 has an improved help management, thanks again to Lorenzo
Bettini for implementing my suggestions. The help texts of the options
are contained in an array which is defined in xyz.cmdline.c and declared
as extern in xyz.cmdline.h.

In order to link more than one xyz.cmdline.o into a single binary,
these arrays must have different names. So use the --arg-struct-name
option of gengetopt for each receiver/filter.

18 years agoupdate filter help text
Andre [Mon, 27 Mar 2006 03:47:31 +0000 (05:47 +0200)]
update filter help text

The example used the --anticlip and --volume options of the compress
filter which are no longer present. Replace these by valid command
line options.

18 years agoaudiod: boost the stat command
Andre [Mon, 27 Mar 2006 03:36:52 +0000 (05:36 +0200)]
audiod: boost the stat command

It now takes any number of arguments, including zero which selects
the old behaviour (dump _all_ status items to stdout).  If called
with arguments, each arg must be a valid status item and only these
are written to sdout.

18 years agostat_line_valid(): use the FOR_EACH_STAT_ITEM macro
Andre [Sun, 26 Mar 2006 23:23:42 +0000 (01:23 +0200)]
stat_line_valid(): use the FOR_EACH_STAT_ITEM macro

18 years agoaudiod: switch from ringbuffer to statically allocated array
Andre [Sun, 26 Mar 2006 23:17:16 +0000 (01:17 +0200)]
audiod: switch from ringbuffer to statically allocated array

This patch also fixes a minor bug where audiod would send empty status
lines or lines containing only a colon (only happens if para_server
status is paused).

18 years agodoxify dccp
Andre [Sun, 26 Mar 2006 02:45:11 +0000 (04:45 +0200)]
doxify dccp

Add documentation for all non-static functions, and move the defines
of the magic dccp constants from dccp.h to dccp.c as they are only
used there.

18 years agoAdd -Wwrite-strings to CPPFLAGS
Andre [Sun, 26 Mar 2006 02:42:50 +0000 (04:42 +0200)]
Add -Wwrite-strings to CPPFLAGS

Commented out for now.

18 years agouse const qualifiers where possible
Andre [Sun, 26 Mar 2006 00:29:50 +0000 (01:29 +0100)]
use const qualifiers where possible

18 years agomysql_selector.c: whitespace cleanup
Andre [Sat, 25 Mar 2006 21:07:22 +0000 (22:07 +0100)]
mysql_selector.c: whitespace cleanup

18 years agoaudiod: Kill another unused variable
Andre [Sat, 25 Mar 2006 20:41:53 +0000 (21:41 +0100)]
audiod: Kill another unused variable

18 years agoortp_send: Kill an unused variable
Andre [Sat, 25 Mar 2006 20:33:20 +0000 (21:33 +0100)]
ortp_send: Kill an unused variable

18 years agomysql selector: Fix a memory leak in get_query()
Andre [Sat, 25 Mar 2006 20:15:46 +0000 (21:15 +0100)]
mysql selector: Fix a memory leak in get_query()

If the stream definition contained N > 1 "score:" lines (an invalid
configuration anyway, there should be at most one), we leaked the first
N - 1 score lines. The fix is to take into account the first one only.

18 years agocom_next() fix.
Andre [Sat, 25 Mar 2006 19:59:21 +0000 (20:59 +0100)]
com_next() fix.

Do not clear the AFS_NEXT flag in afs_send_chunk() and increase mmd->events.
Fixes a (rare) problem where the next command did not work.

18 years agos_a_r_list(): return NULL on errors
Andre [Sat, 25 Mar 2006 19:38:42 +0000 (20:38 +0100)]
s_a_r_list(): return NULL on errors

And fix the documentation.

18 years agoaudiod: use set_restart_barrier() instead of duplicating it.
Andre [Sat, 25 Mar 2006 19:06:37 +0000 (20:06 +0100)]
audiod: use set_restart_barrier() instead of duplicating it.

18 years agodccp_recv: increase output buffer size
Andre [Sat, 25 Mar 2006 18:25:26 +0000 (19:25 +0100)]
dccp_recv: increase output buffer size

18 years agodccp_send: fix sending of header packets
Andre [Sat, 25 Mar 2006 01:00:46 +0000 (02:00 +0100)]
dccp_send: fix sending of header packets

The current code sends the header before _each_ packet, rather than only
once. Fix is trivial.

18 years agodccp: avoid "message too long" errors.
Andre [Fri, 24 Mar 2006 23:15:03 +0000 (00:15 +0100)]
dccp: avoid "message too long" errors.

Break down the write into 1KB chunks as a workaround.

18 years agolog the IP address of the connecting client.
Andre [Fri, 24 Mar 2006 20:41:36 +0000 (21:41 +0100)]
log the IP address of the connecting client.

18 years agokill duplicate write_ok()
Andre [Fri, 24 Mar 2006 19:05:34 +0000 (20:05 +0100)]
kill duplicate write_ok()

use the generic inline function from send.h instead and shutdown the
connection if an error occured in write_ok().

18 years agoFix return value of dccp_recv pre_select()
Andre [Thu, 23 Mar 2006 14:01:08 +0000 (15:01 +0100)]
Fix return value of dccp_recv pre_select()

Also, add a log message on errors/eof.

18 years agogui: Only check STDIN for readability if curses is active.
Andre [Thu, 23 Mar 2006 13:57:52 +0000 (14:57 +0100)]
gui: Only check STDIN for readability if curses is active.

18 years agoMore %d -> %zd fixes
Andre [Wed, 15 Mar 2006 22:58:29 +0000 (23:58 +0100)]
More %d -> %zd fixes

Noted by Steffen Klassert.

18 years agoortp: make jitter compensation configurable.
Andre [Tue, 14 Mar 2006 18:18:51 +0000 (19:18 +0100)]
ortp: make jitter compensation configurable.

Non-zero values turn on ortp's adaptive jitter compensation.

18 years agodccp_send: comment out noisy debug message.
Andre [Tue, 14 Mar 2006 18:16:52 +0000 (19:16 +0100)]
dccp_send: comment out noisy debug message.

18 years agofixes for ortp-0.9.1
Andre [Tue, 14 Mar 2006 17:41:10 +0000 (18:41 +0100)]
fixes for ortp-0.9.1

turn on adaptive jitter compensation. ortp-0.9.1 seems to be unhappy
without it. This patch also contains some simplifications and timing
improvements.

18 years agodb.c: use PARA_STRERROR()...
Andre [Tue, 14 Mar 2006 16:51:36 +0000 (17:51 +0100)]
db.c: use PARA_STRERROR()...

... instead of logging the error number only.

18 years agoupdate README
Andre [Tue, 14 Mar 2006 16:44:22 +0000 (17:44 +0100)]
update README

Mention the new dccp sender/receiver.

18 years agoadd dccp.h to tarball
Andre [Tue, 14 Mar 2006 16:39:21 +0000 (17:39 +0100)]
add dccp.h to tarball

The tarball did not compile because dccp.h was missing.

18 years agoupdate FEATURES
Andre [Mon, 13 Mar 2006 04:53:07 +0000 (05:53 +0100)]
update FEATURES

Mention the new dccp sender.

18 years agoupdate to libortp-0.9.1
Andre [Mon, 13 Mar 2006 02:49:05 +0000 (03:49 +0100)]
update to libortp-0.9.1

glib was dropped from libortp, and paraslash does not need it
either. So kill the check for glib in configure.ac and no longer
link para_server, para_recv, and para_audiod gainst glib. Moreover,
change guint32 to uint32_t in ortp_recv.c and ortp_send.c.

18 years agomake install: do not create an unused directory
Andre [Mon, 13 Mar 2006 00:50:16 +0000 (01:50 +0100)]
make install: do not create an unused directory

$(VARDIR)/fifo is unused for ages.

18 years agoupdate NEWS
Andre [Mon, 13 Mar 2006 00:43:58 +0000 (01:43 +0100)]
update NEWS

18 years agoFix help text of --list_receivers.
Andre [Mon, 13 Mar 2006 00:39:41 +0000 (01:39 +0100)]
Fix help text of --list_receivers.

It still used the old syntax with colons as separators.

18 years agospeed up the compress filter
Andre [Mon, 13 Mar 2006 00:35:25 +0000 (01:35 +0100)]
speed up the compress filter

Complete rewrite of the core loop of the compress filter.  The gprof
output of para_audiod (see below) indicates that CPU usage goes down
to about 40%.

new:
~~~~

Each sample counts as 0.01 seconds.
%   cumulative   self              self     total
time   seconds   seconds    calls   s/call   s/call  name

35.94      1.47     1.47     7414     0.00     0.00  compress
22.74      2.40     0.93    57319     0.00     0.00  mp3dec
16.87      3.09     0.69        1     0.69     4.04  audiod_mainloop

34.59      1.47     1.47     7414     0.00     0.00  compress
22.59      2.43     0.96        1     0.96     4.20  audiod_mainloop
17.53      3.17     0.74    61285     0.00     0.00  mp3dec

35.41      1.48     1.48     7414     0.00     0.00  compress
20.10      2.32     0.84        1     0.84     4.15  audiod_mainloop
17.82      3.06     0.74    58675     0.00     0.00  mp3dec

Average of self-seconds (3rd column):
compress 1.47
audiod_mainloop 0.83
mp3dec 0.80

0.2.11:
~~~~~~~

Each sample counts as 0.01 seconds.
%   cumulative   self              self     total
time   seconds   seconds    calls   s/call   s/call  name

56.38      3.31     3.31     7414     0.00     0.00  compress
12.93      4.08     0.76    57566     0.00     0.00  mp3dec
11.39      4.75     0.67        1     0.67     5.86  audiod_mainloop

57.59      3.38     3.38     7414     0.00     0.00  compress
14.08      4.20     0.82    63095     0.00     0.00  mp3dec
11.26      4.86     0.66        1     0.66     5.82  audiod_mainloop

57.79      4.12     4.12     7414     0.00     0.00  compress
13.62      5.08     0.97        1     0.97     7.07  audiod_mainloop
 8.08      5.66     0.57    57196     0.00     0.00  mp3dec

Average of self-seconds (3rd column):
compress  3.60
audiod_mainloop 0.76
mp3dec 0.71

18 years agoMerge branch 'dccp'
Andre [Sat, 11 Mar 2006 16:45:20 +0000 (17:45 +0100)]
Merge branch 'dccp'

Fix up merge conflicts by hand.
Conflicts:

configure.ac
error.h
server.ggo

18 years agonew codename, reset version to git
Andre [Sat, 11 Mar 2006 15:29:29 +0000 (16:29 +0100)]
new codename, reset version to git

18 years agothe paraslash-0.2.11 release tarball
Andre [Sat, 11 Mar 2006 15:26:38 +0000 (16:26 +0100)]
the paraslash-0.2.11 release tarball

18 years agoparaslash 0.2.11 v0.2.11
Andre [Sat, 11 Mar 2006 15:23:15 +0000 (16:23 +0100)]
paraslash 0.2.11

18 years agowhitespace cleanup
Andre [Sat, 11 Mar 2006 03:40:55 +0000 (04:40 +0100)]
whitespace cleanup

18 years agoupdate NEWS
Andre [Fri, 10 Mar 2006 22:44:15 +0000 (23:44 +0100)]
update NEWS

18 years agodeleted: index.html
Andre [Fri, 10 Mar 2006 22:01:33 +0000 (23:01 +0100)]
deleted:  index.html

It crept in during the initial commit, and it is long outdated.

18 years agomysql_selector.c: rename get_dbinfo() to get_selector_info()
Andre [Fri, 10 Mar 2006 21:54:36 +0000 (22:54 +0100)]
mysql_selector.c: rename get_dbinfo() to get_selector_info()

18 years agomysql_selector.c: rename refresh_mmd_dbinfo() to refresh_selector_info()
Andre [Fri, 10 Mar 2006 21:49:33 +0000 (22:49 +0100)]
mysql_selector.c: rename refresh_mmd_dbinfo() to refresh_selector_info()

18 years agokill a macro which is only used once.
Andre [Fri, 10 Mar 2006 21:47:16 +0000 (22:47 +0100)]
kill a macro which is only used once.

Insert the text directly instead.

18 years agommd: rename dbt_change to selector_change
Andre [Fri, 10 Mar 2006 21:41:50 +0000 (22:41 +0100)]
mmd: rename dbt_change to selector_change

18 years agommd: rename dbt_num to selector_num
Andre [Fri, 10 Mar 2006 21:32:33 +0000 (22:32 +0100)]
mmd: rename dbt_num to selector_num

18 years agommd: rename dbinfo to selector_info
Andre [Fri, 10 Mar 2006 21:28:01 +0000 (22:28 +0100)]
mmd: rename dbinfo to selector_info

18 years agoSome more (trivial) "database tool" -> "audio file selector" conversions
Andre [Fri, 10 Mar 2006 21:20:31 +0000 (22:20 +0100)]
Some more (trivial) "database tool" -> "audio file selector" conversions

18 years agodbtool -> selector update for web documentation web page
Andre [Fri, 10 Mar 2006 21:00:57 +0000 (22:00 +0100)]
dbtool -> selector update for web documentation web page

18 years agoMore dbtool -> selector updates
Andre [Fri, 10 Mar 2006 20:57:25 +0000 (21:57 +0100)]
More dbtool -> selector updates

18 years agorename mysql.c to mysql_selector.c
Andre [Fri, 10 Mar 2006 20:53:05 +0000 (21:53 +0100)]
rename mysql.c to mysql_selector.c

Just to be consistent.

18 years agoREADME.mysql: cdt -> chs update
Andre [Fri, 10 Mar 2006 20:48:25 +0000 (21:48 +0100)]
README.mysql: cdt -> chs update

18 years agoRename E_BAD_DBTOOL to E_BAD_SELECTOR
Andre [Fri, 10 Mar 2006 20:13:49 +0000 (21:13 +0100)]
Rename E_BAD_DBTOOL to E_BAD_SELECTOR

18 years agoRename random_dbtool.c to random_selector.c
Andre [Fri, 10 Mar 2006 20:11:36 +0000 (21:11 +0100)]
Rename random_dbtool.c to random_selector.c

18 years agorename plm_dbtool.c to playlist_selector.c
Andre [Fri, 10 Mar 2006 20:01:50 +0000 (21:01 +0100)]
rename plm_dbtool.c to playlist_selector.c

18 years agoRename "dbtool" status item to "selector"
Andre [Fri, 10 Mar 2006 19:41:25 +0000 (20:41 +0100)]
Rename "dbtool" status item to "selector"

18 years agoChange doxygen file description from dbtool to selector
Andre [Fri, 10 Mar 2006 19:35:11 +0000 (20:35 +0100)]
Change doxygen file description from dbtool to selector

18 years agoAnother trivial rename
Andre [Fri, 10 Mar 2006 19:30:43 +0000 (20:30 +0100)]
Another trivial rename

18 years agogui,sdl_gui: change the prefix from "dbtool" to "selector"
Andre [Fri, 10 Mar 2006 19:29:03 +0000 (20:29 +0100)]
gui,sdl_gui: change the prefix from "dbtool" to "selector"

18 years agotrivial dbtool->selector renames
Andre [Fri, 10 Mar 2006 19:24:52 +0000 (20:24 +0100)]
trivial dbtool->selector renames

18 years agoRename some local variables in command.c
Andre [Fri, 10 Mar 2006 19:18:08 +0000 (20:18 +0100)]
Rename some local variables in command.c

18 years agorename struct dbtool to audio_file_selector
Andre [Fri, 10 Mar 2006 19:14:46 +0000 (20:14 +0100)]
rename struct dbtool to audio_file_selector

18 years agodb.h: Kill an unused enum
Andre [Fri, 10 Mar 2006 19:04:25 +0000 (20:04 +0100)]
db.h: Kill an unused enum

18 years agoRename com_cdt to com_chs
Andre [Fri, 10 Mar 2006 18:57:15 +0000 (19:57 +0100)]
Rename com_cdt to com_chs

chs: change (audio file) selector.

18 years agodbtool -> audio file selector renaming
Andre [Fri, 10 Mar 2006 18:49:49 +0000 (19:49 +0100)]
dbtool -> audio file selector renaming

This updates only Documentation and log messages.

18 years agoRename the --dbtool option to --selector
Andre [Fri, 10 Mar 2006 17:58:17 +0000 (18:58 +0100)]
Rename the --dbtool option to --selector

As two out of the three "database tools" of paraslash don't use a
database at all, let's call them "audio file selectors" instead.

18 years agoogg.c: don't use ogg_int64_t
Andre [Fri, 10 Mar 2006 02:12:23 +0000 (03:12 +0100)]
ogg.c: don't use ogg_int64_t

ssize_t should do equally well and avoids gcc warnings.

18 years agowhitespace fixes
Andre [Fri, 10 Mar 2006 01:47:26 +0000 (02:47 +0100)]
whitespace fixes

18 years agoaudiod: fix a memory leak in ringbuffer handling
Andre [Fri, 10 Mar 2006 01:32:12 +0000 (02:32 +0100)]
audiod: fix a memory leak in ringbuffer handling

Found by valgrind.

18 years agoweb/header2.html: update the changes menu item to point to gitweb.
Andre [Thu, 9 Mar 2006 15:47:31 +0000 (16:47 +0100)]
web/header2.html: update the changes menu item to point to gitweb.

From within the doxygen API reference that menu item still pointed
to the old cvs changelog which is no longer present.

18 years agoMerge branch 'no_colon_separators'
Andre [Thu, 9 Mar 2006 15:36:56 +0000 (16:36 +0100)]
Merge branch 'no_colon_separators'

18 years agoConvert demo-script to the new syntax without colons.
Andre [Thu, 9 Mar 2006 15:34:51 +0000 (16:34 +0100)]
Convert demo-script to the new syntax without colons.

As this won't work with paraslash-0.2.10, change the script
to download the git tarball.

18 years agoAdd a missing header file to Makefile.in
Andre [Thu, 9 Mar 2006 15:28:18 +0000 (16:28 +0100)]
Add a missing header file to Makefile.in

ipc.h was not included in the tarball. With this fix, the nightly git
snapshot compiles again.

18 years agomaintainer-clean: also remove skencil/*.ps skencil/*.pdf and doc
Andre [Wed, 8 Mar 2006 23:52:03 +0000 (00:52 +0100)]
maintainer-clean: also remove skencil/*.ps skencil/*.pdf and doc

18 years agoheader2.html is needed by doxygen
Andre [Wed, 8 Mar 2006 23:40:44 +0000 (00:40 +0100)]
header2.html is needed by doxygen

18 years agoAdd Ian McDonald to CREDITS
Andre [Wed, 8 Mar 2006 23:17:35 +0000 (00:17 +0100)]
Add Ian McDonald to CREDITS

Also, add a copyright notice at the top of dccp.c dccp.h dccp_recv.c and dccp_send.c

18 years agoAdd GPL headers for dccp.c dccp.h, dccp_recv.c, and dccp_send.c
Andre [Wed, 8 Mar 2006 23:08:01 +0000 (00:08 +0100)]
Add GPL headers for dccp.c dccp.h, dccp_recv.c, and dccp_send.c

18 years agoFirst draft of the dccp sender/receiver pair.
Andre [Wed, 8 Mar 2006 23:04:15 +0000 (00:04 +0100)]
First draft of the dccp sender/receiver pair.

18 years agokill a pointless "optind = 1".
Andre [Wed, 8 Mar 2006 17:45:01 +0000 (18:45 +0100)]
kill a pointless "optind = 1".

18 years agoMerge branch 'xf_64_compile_warning_fixes'
Andre [Tue, 7 Mar 2006 13:20:09 +0000 (14:20 +0100)]
Merge branch 'xf_64_compile_warning_fixes'

18 years agoREADME: Mention the name of some debian packages
Andre [Tue, 7 Mar 2006 00:47:28 +0000 (01:47 +0100)]
README: Mention the name of some debian packages

libasound2-dev is needed for para_play, ogg vorbis support requires
libogg-dev and libvorbis-dev. Thanks to Steffen Klassert for this info.