paraslash.git
15 years agoupd_send: Add socket fd to close_on_fork list.
Andre Noll [Sat, 10 Jan 2009 16:56:30 +0000 (17:56 +0100)]
upd_send: Add socket fd to close_on_fork list.

15 years agoupd_send.c: Use write_nonblock() rather than write_all().
Andre Noll [Sat, 10 Jan 2009 16:09:16 +0000 (17:09 +0100)]
upd_send.c: Use write_nonblock() rather than write_all().

To this aim, move write_nonblock() from send_common.c to fd.c.

15 years agoFix an fd leak in udp_send.c.
Andre Noll [Sat, 10 Jan 2009 15:52:54 +0000 (16:52 +0100)]
Fix an fd leak in udp_send.c.

In case mark_fd_nonblocking() fails, the old code leaks an open fd.

15 years agoudp sender: Make ttl configurable.
Andre Noll [Sat, 10 Jan 2009 15:50:43 +0000 (16:50 +0100)]
udp sender: Make ttl configurable.

15 years agoudp sender/receiver improvements.
Andre Noll [Sat, 10 Jan 2009 02:48:55 +0000 (03:48 +0100)]
udp sender/receiver improvements.

15 years agoChange year of copyright from 2008 to 2009.
Andre Noll [Sat, 10 Jan 2009 00:53:18 +0000 (01:53 +0100)]
Change year of copyright from 2008 to 2009.

15 years agoReplace the ortp sender/receiver by the generic udp sender/receiver.
Andre Noll [Sat, 10 Jan 2009 00:37:49 +0000 (01:37 +0100)]
Replace the ortp sender/receiver by the generic udp sender/receiver.

The ortp code was broken for quite some time. The new code is smaller and
we drop the dependency on libortp.

15 years agoMerge commit 'meins/master'
Andre Noll [Fri, 9 Jan 2009 00:16:44 +0000 (01:16 +0100)]
Merge commit 'meins/master'

15 years agoFix typo in fade.ggo.
Andre Noll [Thu, 8 Jan 2009 14:35:34 +0000 (15:35 +0100)]
Fix typo in fade.ggo.

15 years agoaudiod: Implement --config-file option.
Andre Noll [Sun, 14 Dec 2008 12:03:48 +0000 (13:03 +0100)]
audiod: Implement --config-file option.

15 years agoaudiod: Include help for receivers/filter/writers in help output.
Andre Noll [Sun, 7 Dec 2008 11:21:48 +0000 (12:21 +0100)]
audiod: Include help for receivers/filter/writers in help output.

15 years agoMake functions for printing recv/filter/write help public.
Andre Noll [Sun, 7 Dec 2008 10:16:43 +0000 (11:16 +0100)]
Make functions for printing recv/filter/write help public.

So that these functions can also be used by audiod.

15 years agopara_afh: Accept more than one input file in info mode.
Andre Noll [Sun, 7 Dec 2008 09:45:33 +0000 (10:45 +0100)]
para_afh: Accept more than one input file in info mode.

15 years agoFix a typo in audiod.ggo.
Andre Noll [Sun, 7 Dec 2008 09:44:28 +0000 (10:44 +0100)]
Fix a typo in audiod.ggo.

15 years agoNEWS update.
Andre Noll [Sat, 6 Dec 2008 16:56:58 +0000 (17:56 +0100)]
NEWS update.

15 years agoImprove help/man page of para_recv.
Andre Noll [Sat, 6 Dec 2008 16:56:08 +0000 (17:56 +0100)]
Improve help/man page of para_recv.

15 years agoMerge commit 'meins/master'
Andre Noll [Sat, 6 Dec 2008 14:36:46 +0000 (15:36 +0100)]
Merge commit 'meins/master'

15 years agoAdd missing __printf_2_3 to all para_log functions.
Andre Noll [Sat, 6 Dec 2008 13:50:10 +0000 (14:50 +0100)]
Add missing __printf_2_3 to all para_log functions.

15 years agoRemove the .purpose and .help args from struct ggo_help.
Andre Noll [Sat, 6 Dec 2008 13:42:28 +0000 (14:42 +0100)]
Remove the .purpose and .help args from struct ggo_help.

15 years agoImprove help/man page of para_write.
Andre Noll [Sat, 6 Dec 2008 13:37:03 +0000 (14:37 +0100)]
Improve help/man page of para_write.

15 years agoImprove help/man page of para_filter.
Andre Noll [Sat, 6 Dec 2008 11:09:17 +0000 (12:09 +0100)]
Improve help/man page of para_filter.

This patch makes para_filter to tie together the help texts from
all its filters.

15 years agoNEWS update.
Andre Noll [Tue, 2 Dec 2008 17:02:08 +0000 (18:02 +0100)]
NEWS update.

15 years agoconfigure.ac: Fix $filter_cmdline_objs and $audiod_cmdline_objs.
Andre Noll [Tue, 2 Dec 2008 17:01:49 +0000 (18:01 +0100)]
configure.ac: Fix $filter_cmdline_objs and $audiod_cmdline_objs.

A previous patch added the new mp3dec_filter_cmdline object at
the wrong place.

15 years agoFix another gcc warning caused by PARA_MAX().
Andre Noll [Mon, 1 Dec 2008 20:54:35 +0000 (21:54 +0100)]
Fix another gcc warning caused by PARA_MAX().

Clean up ogg_compute_chunk_table() while we're at it.

15 years agoFix PARA_MAX().
Andre Noll [Mon, 1 Dec 2008 20:50:11 +0000 (21:50 +0100)]
Fix PARA_MAX().

Gimme that bag. Yes, the brown one. Quick.

15 years agoMerge commit 'fml/master'
Andre Noll [Mon, 1 Dec 2008 20:19:17 +0000 (21:19 +0100)]
Merge commit 'fml/master'

15 years agomp3dec: Only proceed decoding if at least 16K are available.
Andre Noll [Mon, 1 Dec 2008 20:18:41 +0000 (21:18 +0100)]
mp3dec: Only proceed decoding if at least 16K are available.

This is safe because the output buffer size is at least 32K.

15 years agoAdd command line support for mp3dec.
Andre Noll [Mon, 1 Dec 2008 20:16:21 +0000 (21:16 +0100)]
Add command line support for mp3dec.

ATM, --ignore-crc and --bufsize are the only supported options.

15 years agoReplace MAX, MIN, ABS macros by type-checking variants.
Andre Noll [Mon, 1 Dec 2008 15:51:37 +0000 (16:51 +0100)]
Replace MAX, MIN, ABS macros by type-checking variants.

Taken from the Linux kernel. These macros also evaluate each parameter
only once. Fix up all resulting gcc warnings.

15 years agoMerge commit 'meins/next'
Andre Noll [Mon, 1 Dec 2008 14:02:26 +0000 (15:02 +0100)]
Merge commit 'meins/next'

15 years agonew codename, reset version to git
Andre Noll [Mon, 1 Dec 2008 12:59:00 +0000 (13:59 +0100)]
new codename, reset version to git

15 years agothe paraslash-0.3.3 release tarball
Andre Noll [Mon, 1 Dec 2008 12:51:46 +0000 (13:51 +0100)]
the paraslash-0.3.3 release tarball

15 years agoparaslash 0.3.3 v0.3.3
Andre Noll [Mon, 1 Dec 2008 12:49:33 +0000 (13:49 +0100)]
paraslash 0.3.3

15 years agoInclude portable_io.h only when needed.
Andre Noll [Sun, 30 Nov 2008 23:26:57 +0000 (00:26 +0100)]
Include portable_io.h only when needed.

15 years agowav_filter: Use the functions from portable_io.h for writing the wav header.
Andre Noll [Sun, 30 Nov 2008 23:21:16 +0000 (00:21 +0100)]
wav_filter: Use the functions from portable_io.h for writing the wav header.

15 years agoRename filter_chain.c to filter_common.c.
Andre Noll [Sun, 30 Nov 2008 22:11:45 +0000 (23:11 +0100)]
Rename filter_chain.c to filter_common.c.

15 years agoRename filter source files.
Andre Noll [Sun, 30 Nov 2008 20:45:38 +0000 (21:45 +0100)]
Rename filter source files.

Some filters already had the _filter postfix, others had not. Rename
the latter just to be consistent.

15 years agoMerge branch 'master' into next
Andre Noll [Sun, 30 Nov 2008 20:15:29 +0000 (21:15 +0100)]
Merge branch 'master' into next

15 years agoCreate list of supported filters via autoconf.
Andre Noll [Sun, 30 Nov 2008 20:15:15 +0000 (21:15 +0100)]
Create list of supported filters via autoconf.

This allows to get rid of some CPP cruft in filter.h.

15 years agoconfigure.ac: Remove unused variable filter_filters.
Andre Noll [Sun, 30 Nov 2008 17:30:00 +0000 (18:30 +0100)]
configure.ac: Remove unused variable filter_filters.

15 years agoconfigure.ac: Remove amp_filter from set of executables.
Andre Noll [Sun, 30 Nov 2008 17:26:17 +0000 (18:26 +0100)]
configure.ac: Remove amp_filter from set of executables.

It is not an executable.

15 years agoMake filter config parsers return int.
Andre Noll [Sun, 30 Nov 2008 16:41:50 +0000 (17:41 +0100)]
Make filter config parsers return int.

This way, we can distinguish between syntax errors and invalid config
values (failed sanity checks).

15 years agooggdec_filter.ggo: Add more documentation.
Andre Noll [Sun, 30 Nov 2008 14:24:58 +0000 (15:24 +0100)]
oggdec_filter.ggo: Add more documentation.

15 years agooggdec_parse_config(): Add some sanity checks.
Andre Noll [Sun, 30 Nov 2008 14:23:46 +0000 (15:23 +0100)]
oggdec_parse_config(): Add some sanity checks.

15 years agowav: Only create wav header if there is output available.
Andre Noll [Sun, 30 Nov 2008 14:13:35 +0000 (15:13 +0100)]
wav: Only create wav header if there is output available.

Due to recent changes to filter_chain.c, the convert functions of all
activated filters are called even if there is no output availabe since
the ogg vorbis decoder needs this.

However, this change broke the wav filter: wav_convert() is now called
even if the previous filter (e.g. oggdec) has not yet determined the
format of the input stream.

This caused the wav filter to write out an invalid wav header with 0
channels. Fix it by not doing anything unless wav_convert() gets called
with non-empty input.

15 years agopara_server: Reformat help text of the --afs_database_dir option.
Andre Noll [Sun, 30 Nov 2008 00:18:01 +0000 (01:18 +0100)]
para_server: Reformat help text of the --afs_database_dir option.

This caused help2man to create a badly formated man page.

15 years agoAdd -Wmissing-noreturn to compiler flags.
Andre Noll [Sat, 29 Nov 2008 21:45:45 +0000 (22:45 +0100)]
Add -Wmissing-noreturn to compiler flags.

And mark all exit functions of gui.c with __noreturn.

15 years agoFix -Wdeclaration-after-statement warnings.
Andre Noll [Sat, 29 Nov 2008 21:20:47 +0000 (22:20 +0100)]
Fix -Wdeclaration-after-statement warnings.

This option is new in gcc-4, so do not activate it by default.

15 years agoImplement aac meta info support.
Andre Noll [Sat, 29 Nov 2008 20:26:53 +0000 (21:26 +0100)]
Implement aac meta info support.

15 years agoAvoid "no connection to para_server" message is server is stopped.
Andre Noll [Sat, 29 Nov 2008 13:34:22 +0000 (14:34 +0100)]
Avoid "no connection to para_server" message is server is stopped.

15 years agofilter: Call the convert function even if the input buffer is empty.
Andre Noll [Fri, 28 Nov 2008 23:58:03 +0000 (00:58 +0100)]
filter: Call the convert function even if the input buffer is empty.

At least the ogg vorbis decoder might still produce output in this
case.

15 years agoerror.h cleanups.
Andre Noll [Fri, 28 Nov 2008 23:05:29 +0000 (00:05 +0100)]
error.h cleanups.

15 years agoMerge commit 'fml/master'
Andre Noll [Fri, 28 Nov 2008 21:29:43 +0000 (22:29 +0100)]
Merge commit 'fml/master'

15 years agoafh_common.c: Add missing source code documentation.
Andre Noll [Fri, 28 Nov 2008 21:29:14 +0000 (22:29 +0100)]
afh_common.c: Add missing source code documentation.

Document afh_get_chunk() and make_taginfo().

15 years agowrite.h: Cosmetics.
Andre Noll [Fri, 28 Nov 2008 21:04:54 +0000 (22:04 +0100)]
write.h: Cosmetics.

15 years agooggdec: Keep decoding on imput EOF.
Andre Noll [Fri, 28 Nov 2008 20:56:29 +0000 (21:56 +0100)]
oggdec: Keep decoding on imput EOF.

This bug causes the last chunk of the input not written out under
certain circumstances.

15 years agoafh.c: Skip emtpy chunks.
Andre Noll [Fri, 28 Nov 2008 20:02:26 +0000 (21:02 +0100)]
afh.c: Skip emtpy chunks.

15 years agoFix a gcc warning in alsa_open() on x86_64.
Andre Noll [Fri, 28 Nov 2008 12:38:13 +0000 (13:38 +0100)]
Fix a gcc warning in alsa_open() on x86_64.

alsa_write.c:136: warning: format '%d' expects type 'int', but argument 4 has type 'size_t'

15 years agoGet rid of a gcc warning on recent Ubuntu systems.
Andre Noll [Fri, 28 Nov 2008 12:07:08 +0000 (13:07 +0100)]
Get rid of a gcc warning on recent Ubuntu systems.

fchdir() is marked with warn_unused_result which produces a
warning in the error path of para_opendir(). However, we really
want to ignore the return value in this particular case, so introduce
a rather ugly fix to avoid the warning.

15 years agoCheck return value of write() in generic_signal_handler().
Andre Noll [Fri, 28 Nov 2008 12:04:30 +0000 (13:04 +0100)]
Check return value of write() in generic_signal_handler().

Abort if we could not write the signal number to the pipe (which
should never happen).

15 years agopara_write: Fix --bufsize.
Andre Noll [Tue, 25 Nov 2008 23:33:55 +0000 (00:33 +0100)]
para_write: Fix --bufsize.

The given value means kilobytes, rather than bytes. Add checks
for invalid values of the buffer size.

15 years agoalsa: Log info about the number of bytes per frame.
Andre Noll [Tue, 25 Nov 2008 23:28:45 +0000 (00:28 +0100)]
alsa: Log info about the number of bytes per frame.

15 years agoalsa: Improve chunk timings.
Andre Noll [Tue, 25 Nov 2008 23:27:55 +0000 (00:27 +0100)]
alsa: Improve chunk timings.

And get rid of magic constants.

15 years agopara_write: Fix --initial-delay.
Andre Noll [Tue, 25 Nov 2008 20:34:57 +0000 (21:34 +0100)]
para_write: Fix --initial-delay.

15 years agoREQUIREMENTS: Fix dead link to faad lib.
Andre Noll [Tue, 25 Nov 2008 17:22:03 +0000 (18:22 +0100)]
REQUIREMENTS: Fix dead link to faad lib.

15 years agoREADME.afs: Minor improvments and clarifications.
Andre Noll [Sat, 22 Nov 2008 22:24:38 +0000 (23:24 +0100)]
README.afs: Minor improvments and clarifications.

15 years agowrite_common.h: Kill an unused function declaration.
Andre Noll [Sat, 22 Nov 2008 21:36:48 +0000 (22:36 +0100)]
write_common.h: Kill an unused function declaration.

15 years agoMinor documentation improvements.
Andre Noll [Sat, 22 Nov 2008 21:36:22 +0000 (22:36 +0100)]
Minor documentation improvements.

15 years agoBetter error diagnostics for the mp3 decoder.
Andre Noll [Sat, 22 Nov 2008 20:37:34 +0000 (21:37 +0100)]
Better error diagnostics for the mp3 decoder.

15 years agohttp_recv: Fix reading of the HTTP OK message pattern.
Andre Noll [Sat, 22 Nov 2008 16:49:39 +0000 (17:49 +0100)]
http_recv: Fix reading of the HTTP OK message pattern.

This bug leads to sound artefacts at the beginning of the
stream caused by calling recv_pattern() with a buffer size
larger than the HTTP OK message.

It may thus happen that the buffer used by recv_pattern() contains
not only the HTTP OK message but also the beginning of the stream.
Since that buffer is discarded by recv_pattern(), the first few
bytes of the stream are lost if this happens.

Fix it by passing the exact length of the HTTP OK message to
recv_pattern().

15 years agoFix an off-by-one bug in recv_pattern().
Andre Noll [Sat, 22 Nov 2008 16:38:16 +0000 (17:38 +0100)]
Fix an off-by-one bug in recv_pattern().

The current code in recv_pattern() allocates a buffer of size
bufsize + 1 and calls recv_buffer() with bufsize as the size
parameter. However, recv_buffer() reserves the last byte of the
buffer for storing the terminating NULL byte, so that at most
bufsize - 1 characters are read.

Fix it by passing bufsize + 1 (the real size of the buffer)
to recv_buffer().

15 years agogui: Add the amplification value to output.
Andre Noll [Sun, 16 Nov 2008 19:20:56 +0000 (20:20 +0100)]
gui: Add the amplification value to output.

15 years agoNo need to check the return value of para_strdup().
Andre Noll [Sun, 16 Nov 2008 00:22:45 +0000 (01:22 +0100)]
No need to check the return value of para_strdup().

15 years agoREQUIREMENTS: Add the name of the debian package for faad.
Andre Noll [Sat, 15 Nov 2008 22:38:45 +0000 (23:38 +0100)]
REQUIREMENTS: Add the name of the debian package for faad.

15 years agoREQUIREMENTS: Mention that libid3tag0-dev should be installed for id3v2.
Andre Noll [Sat, 15 Nov 2008 22:37:54 +0000 (23:37 +0100)]
REQUIREMENTS: Mention that libid3tag0-dev should  be installed for id3v2.

It's not enought to install only libid3tag0 as we need the header files
too.

15 years agoFix a use-without init buf in recv.c.
Andre Noll [Sat, 15 Nov 2008 22:35:36 +0000 (23:35 +0100)]
Fix a use-without init buf in recv.c.

We need to init not only the receiver task but also the stdout task structure.

15 years agoFix the osx writer on little endian machines.
Andre Noll [Sat, 15 Nov 2008 19:26:06 +0000 (20:26 +0100)]
Fix the osx writer on little endian machines.

We have to use kLinearPCMFormatFlagIsBigEndian only of we're on a little endian
(intel) system.

15 years agocall_callback(): Fix a shm leak in afs.c.
Andre Noll [Thu, 13 Nov 2008 19:55:51 +0000 (20:55 +0100)]
call_callback(): Fix a shm leak in afs.c.

We forgot to detach the shm area passed from the child which results in
"no space left" messages if many audio files are added and the number
of shared memory areas exceeds 4096.

15 years agoadd_one_audio_file(): Fix an fd leak.
Andre Noll [Thu, 13 Nov 2008 19:14:56 +0000 (20:14 +0100)]
add_one_audio_file(): Fix an fd leak.

This bug bites if one tries to add more than 1024 new files with a single add
command.

15 years agoguess_audio_format(): Return proper error code.
Andre Noll [Thu, 13 Nov 2008 18:38:50 +0000 (19:38 +0100)]
guess_audio_format(): Return proper error code.

This could cause para_server to return bogus messages back to
the client, including messages containing the string "(null)".

15 years agoINSTALL: Add comment that /var/paraslash should be writable.
Andre Noll [Tue, 28 Oct 2008 10:19:22 +0000 (11:19 +0100)]
INSTALL: Add comment that /var/paraslash should be writable.

Thanks to Johannes Wörner for pointing this out.

15 years agoexec.c: Open /dev/null r/w.
Andre Noll [Wed, 22 Oct 2008 09:28:15 +0000 (11:28 +0200)]
exec.c: Open /dev/null r/w.

Just to prevent external programs from getting confused when they write
to fd 1 or 2.

15 years agomp3_afh.c: Fix compilation on Mac OS 10.5.
Andre Noll [Sun, 12 Oct 2008 22:03:46 +0000 (00:03 +0200)]
mp3_afh.c: Fix compilation on Mac OS 10.5.

uint is not defined on newer Mac OS X.

15 years agostdin: Abort if the consumer terminates.
Andre Noll [Sun, 12 Oct 2008 22:02:35 +0000 (00:02 +0200)]
stdin: Abort if the consumer terminates.

The bug in the wav filter which was fixed in the previous patch
could cause para_filter to hang because the stdin task would not
care whether the filter task has terminated.

Fix it by introducing an output_error pointer.

15 years agoFix the wav filter for Mac OS 10.5.
Andre Noll [Sun, 12 Oct 2008 21:56:25 +0000 (23:56 +0200)]
Fix the wav filter for Mac OS 10.5.

We have to initialize fn->loaded.

15 years agoREQUIREMENTS update.
Andre Noll [Fri, 10 Oct 2008 16:47:47 +0000 (18:47 +0200)]
REQUIREMENTS update.

Mention that the libmad development package is called libmad0-dev and
reformat the section on id3 tags so that grutatext indents it nicely.

15 years agoImplement better error diagnostics for para_client.
Andre Noll [Tue, 30 Sep 2008 20:23:18 +0000 (22:23 +0200)]
Implement better error diagnostics for para_client.

In case the config file contains errors, the old code caused
para_client to exit without printing an error message.

We need print_errors == 0 in client_open() because this function
is also used by para_audiod which might not have a controlling
terminal. So use gengetopt's --no-handle-error option that instructs
the command line parser not to exit on errors. This wy we can use
PARA_ERROR_LOG() to log an appropriate error message.

15 years agoamp_filter.c: Fix filename in doxygen comment.
Andre Noll [Tue, 30 Sep 2008 18:58:23 +0000 (20:58 +0200)]
amp_filter.c: Fix filename in doxygen comment.

15 years agoMakefile.in: Do not use depricated git-archive.
Andre Noll [Tue, 30 Sep 2008 18:57:46 +0000 (20:57 +0200)]
Makefile.in: Do not use depricated git-archive.

15 years agoMerge commit 'meins/master'
Andre Noll [Mon, 29 Sep 2008 09:14:42 +0000 (11:14 +0200)]
Merge commit 'meins/master'

15 years agoFix com_init.
Andre Noll [Mon, 29 Sep 2008 09:09:59 +0000 (11:09 +0200)]
Fix com_init.

Dooh. The init command always produces output, so we have to pass a pointer
to send_result() as the result handler and the fd to send data to.

Thanks to Johannes Wörner for pointing out this rather embarrassing bug.

15 years agoaft.c: Clear more status items in stop mode.
Andre Noll [Sun, 28 Sep 2008 10:51:41 +0000 (12:51 +0200)]
aft.c: Clear more status items in stop mode.

15 years agovss: Fix com_jmp() and com_ff().
Andre Noll [Sun, 28 Sep 2008 10:50:48 +0000 (12:50 +0200)]
vss: Fix com_jmp() and com_ff().

We must not clear the VSS_REPOS flag in vss_send_chunk() as this
might cause the reposition request being ignored.

15 years agoMove valid_fd_012() from string.c to fd.c.
Andre Noll [Mon, 4 Aug 2008 15:11:41 +0000 (17:11 +0200)]
Move valid_fd_012() from string.c to fd.c.

15 years agoClear all fields in stop mode where it makes sense.
Andre Noll [Fri, 25 Jul 2008 16:31:12 +0000 (18:31 +0200)]
Clear all fields in stop mode where it makes sense.

15 years agoMerge commit 'meins/master'
Andre Noll [Sat, 19 Jul 2008 15:24:52 +0000 (17:24 +0200)]
Merge commit 'meins/master'

15 years agoNEWS update.
Andre Noll [Sat, 12 Jul 2008 10:53:39 +0000 (12:53 +0200)]
NEWS update.

15 years agoFix a bug in para_write.
Andre Noll [Sat, 12 Jul 2008 10:40:36 +0000 (12:40 +0200)]
Fix a bug in para_write.

With the old code, the command "para_write < /dev/null" would
segfault because the wng_close() is called although the writer
node group was never opened. Fix this bug by introducing a new
field in struct writer_node_group that tracks whether wng_open()
was called.

15 years agoAdd the new amp filter.
Andre Noll [Sat, 12 Jul 2008 10:22:54 +0000 (12:22 +0200)]
Add the new amp filter.

Move the amplification code from compress.c to amp_filter.c

15 years agoMerge commit 'meins/master'
Andre Noll [Fri, 11 Jul 2008 15:08:51 +0000 (17:08 +0200)]
Merge commit 'meins/master'