]>
git.tue.mpg.de Git - paraslash.git/log
Andre Noll [Thu, 14 Jan 2010 22:49:57 +0000 (23:49 +0100)]
filter.h: Document that the ->close method need not be provided.
Andre Noll [Thu, 14 Jan 2010 22:48:24 +0000 (23:48 +0100)]
audiod: Add a paranoia check to close_writers().
Andre Noll [Thu, 14 Jan 2010 22:24:24 +0000 (23:24 +0100)]
Add documentation of struct btr_node and btr_pool.
Andre Noll [Thu, 14 Jan 2010 21:58:54 +0000 (22:58 +0100)]
[btr] Fix btr_get_input_queue_size().
We must take care of wrap buffers when computing the input queue size.
Andre Noll [Thu, 14 Jan 2010 03:19:59 +0000 (04:19 +0100)]
Introduce btr_node_description.
As the number of arguments to btr_new_node() grows, the code becomes
hard to read, especially since some callers must set many of the
arguments to NULL.
Using a pointer to a struct has the additional advantage that adding
new parameters does no longer require to touch all callers.
Andre Noll [Thu, 14 Jan 2010 00:19:12 +0000 (01:19 +0100)]
file_write: Use para_open() and set the fd to non-blocking mode.
Andre Noll [Wed, 13 Jan 2010 23:11:46 +0000 (00:11 +0100)]
[btr] Fix merge_input_pool().
This function contained the following bug: wbr, buf1 and sz1 could
be used without being initialized. This was sometimes hitting the
assertion (buf1 && buf2).
Fix this by initializing these variables at the top.
Andre Noll [Wed, 13 Jan 2010 22:39:32 +0000 (23:39 +0100)]
Skip btr suffix from {pre,post}_select_btr().
Everything uses btr now, so there's no need for a suffix any more.
Update the documentation a bit.
Andre Noll [Wed, 13 Jan 2010 22:31:17 +0000 (23:31 +0100)]
Kill unused writer_node_group code.
Andre Noll [Wed, 13 Jan 2010 22:17:58 +0000 (23:17 +0100)]
file_write: Use sched_min_delay().
Andre Noll [Wed, 13 Jan 2010 22:16:01 +0000 (23:16 +0100)]
file_write: Kill ->fd of struct private_file_write_data.
Also, simplify the logic in file_write_post_select_btr() a bit.
Andre Noll [Wed, 13 Jan 2010 22:08:30 +0000 (23:08 +0100)]
file_write: Kill non-btr code.
Also, don't free the config on close.
Andre Noll [Wed, 13 Jan 2010 21:40:23 +0000 (22:40 +0100)]
oss fixes and cleanups.
- Kill ->samplerate and ->channels of struct private_oss_write_data.
- Don't invalidate the config on close().
- Simplify oss_pre_select_btr().
Andre Noll [Wed, 13 Jan 2010 21:01:55 +0000 (22:01 +0100)]
oss: Kill non-btr code.
Andre Noll [Wed, 13 Jan 2010 20:57:50 +0000 (21:57 +0100)]
alsa: Kill non-btr code.
Andre Noll [Wed, 13 Jan 2010 20:46:28 +0000 (21:46 +0100)]
write: Kill non-btr mode.
Yes, this breaks the build on Macs. Sue me.
Andre Noll [Wed, 13 Jan 2010 20:44:35 +0000 (21:44 +0100)]
Make writers remove btr node on errors.
This is what receivers/filters do as well.
Andre Noll [Wed, 13 Jan 2010 06:40:45 +0000 (07:40 +0100)]
filter_common: Use sched_min_delay() helper.
Andre Noll [Wed, 13 Jan 2010 06:39:57 +0000 (07:39 +0100)]
client.c: Add comment on the supervisor task.
Andre Noll [Wed, 13 Jan 2010 06:37:00 +0000 (07:37 +0100)]
mp3dec: Don't check for bad data delay on errors.
Andre Noll [Wed, 13 Jan 2010 06:35:38 +0000 (07:35 +0100)]
mp3dec does not need --buffer_tree.
Andre Noll [Wed, 13 Jan 2010 06:33:50 +0000 (07:33 +0100)]
stdin: Avoid overrun errors.
Request a timeout of 100ms if the buffer pool is full rather
than returning an error.
Andre Noll [Wed, 13 Jan 2010 06:16:32 +0000 (07:16 +0100)]
alsa: Ignore errors from the btr query.
Just use default values in case samplerate and channels can not
be obtained from parent nodes of the buffer tree.
Andre Noll [Wed, 13 Jan 2010 06:14:50 +0000 (07:14 +0100)]
configure.ac: para_client needs time.o.
Andre Noll [Wed, 13 Jan 2010 03:58:54 +0000 (04:58 +0100)]
alsa: Always write as much as possible.
No need to play games with snd_pcm_avail_update().
Andre Noll [Wed, 13 Jan 2010 03:58:19 +0000 (04:58 +0100)]
alsa: Increase timeout on eof to 20ms.
Andre Noll [Wed, 13 Jan 2010 01:54:02 +0000 (02:54 +0100)]
Kill fields buf, loaded and output_error of struct receiver node.
Andre Noll [Wed, 13 Jan 2010 01:39:46 +0000 (02:39 +0100)]
udp_recv: Kill non-btr code.
Andre Noll [Wed, 13 Jan 2010 01:34:31 +0000 (02:34 +0100)]
dccp_recv: Kill non-btr code.
Andre Noll [Wed, 13 Jan 2010 01:30:02 +0000 (02:30 +0100)]
http_recv: Kill non-btr code.
Andre Noll [Wed, 13 Jan 2010 01:22:55 +0000 (02:22 +0100)]
recv: Use buffer tree API unconditionally.
This allows to kill the -B option.
Andre Noll [Wed, 13 Jan 2010 01:17:30 +0000 (02:17 +0100)]
Add btr support for the dccp receiver.
Andre Noll [Tue, 12 Jan 2010 23:33:47 +0000 (00:33 +0100)]
Remove ->shutdown of struct receiver.
All three shutdown functions are stubs.
Andre Noll [Tue, 12 Jan 2010 23:23:54 +0000 (00:23 +0100)]
audiod: Make mode switching (on, off, sb) work again.
It is not sufficient to set the task status to an error value. We
also have to remove the btr node from the buffer tree.
Andre Noll [Tue, 12 Jan 2010 07:14:19 +0000 (08:14 +0100)]
filter.h: Kill some unused fields of struct filter_node.
Andre Noll [Tue, 12 Jan 2010 07:12:44 +0000 (08:12 +0100)]
filter: Remove allocation of filter buffers.
fn->buf is not used any more.
Andre Noll [Tue, 12 Jan 2010 06:52:02 +0000 (07:52 +0100)]
fecdec: Kill some dead code.
fn->btrn is never NULL.
Andre Noll [Tue, 12 Jan 2010 06:30:59 +0000 (07:30 +0100)]
Kill unused filter_node->fc.
Andre Noll [Tue, 12 Jan 2010 06:25:40 +0000 (07:25 +0100)]
filter/audiod: Be nice to filters without close method.
Andre Noll [Tue, 12 Jan 2010 06:17:43 +0000 (07:17 +0100)]
Kill unused struct filter_chain.
Andre Noll [Tue, 12 Jan 2010 06:12:58 +0000 (07:12 +0100)]
More oggdec cleanups.
Andre Noll [Tue, 12 Jan 2010 06:05:00 +0000 (07:05 +0100)]
Kill unused struct filter_callbacks.
Stream grabbing doesn't work with callbacks any more.
Andre Noll [Tue, 12 Jan 2010 06:03:18 +0000 (07:03 +0100)]
Kill global close_filters().
This allows to skip the leading underscore from audiod's
_close_filters().
Andre Noll [Tue, 12 Jan 2010 05:55:44 +0000 (06:55 +0100)]
Kill filter->convert.
Its last user was filter_postselect().
Andre Noll [Tue, 12 Jan 2010 05:54:53 +0000 (06:54 +0100)]
Kill unused filter_post_select().
Andre Noll [Tue, 12 Jan 2010 05:43:48 +0000 (06:43 +0100)]
mp3dec: Kill non-btr code.
Andre Noll [Tue, 12 Jan 2010 05:37:13 +0000 (06:37 +0100)]
aacdec: Kill non-btr code.
Andre Noll [Tue, 12 Jan 2010 05:31:44 +0000 (06:31 +0100)]
oggdec: Kill non-btr code.
Andre Noll [Tue, 12 Jan 2010 05:26:49 +0000 (06:26 +0100)]
prebuffer: Use new sched helper functions.
Andre Noll [Tue, 12 Jan 2010 05:25:52 +0000 (06:25 +0100)]
Prebuffer: Kill non-btr code.
Andre Noll [Tue, 12 Jan 2010 03:36:37 +0000 (04:36 +0100)]
wmadec: Kill non-btr code.
Andre Noll [Tue, 12 Jan 2010 03:33:23 +0000 (04:33 +0100)]
Fecdec: Kill non-btr code.
Andre Noll [Tue, 12 Jan 2010 03:28:02 +0000 (04:28 +0100)]
filter: Print meaningful error message if no filter options are given.
Andre Noll [Tue, 12 Jan 2010 03:11:09 +0000 (04:11 +0100)]
amp: Kill non-btr code.
Andre Noll [Tue, 12 Jan 2010 01:11:22 +0000 (02:11 +0100)]
wav_filter: Kill non-btr code.
Andre Noll [Tue, 12 Jan 2010 01:03:53 +0000 (02:03 +0100)]
compress: Kill non-btr code.
Andre Noll [Tue, 12 Jan 2010 00:47:47 +0000 (01:47 +0100)]
filter: Remove non-btr code.
This paves the street for further filter cleanups which will finally
result in the removal of struct filter_chain.
Andre Noll [Tue, 12 Jan 2010 00:43:30 +0000 (01:43 +0100)]
audiod.h: Remove unused slot_info->fc.
Andre Noll [Tue, 12 Jan 2010 00:10:36 +0000 (01:10 +0100)]
vss: Fix offset handling.
Commit
fb6d93240 (vss: Update offset directly when setting the REPOS
flag.) was buggy. On pause/restart we miss to update mmd->offset,
hence the status items which are sent to the stat clients like audiod
did not contain the correct offset value either which messes up
the time string that audiod sends to its clients (para_gui).
We need to set the new offset both on repos requests and on restart,
do introduce a small helper function for this purpose.
Andre Noll [Tue, 12 Jan 2010 00:01:34 +0000 (01:01 +0100)]
audiod: Fix a bug in try_to_close_slot() for default config.
If the default writer is used because no --writer option was given,
a->num_writers is zero although we have one (the default) writer.
Handle this case correctly to avoid starting the receiver too early.
Andre Noll [Mon, 11 Jan 2010 23:59:16 +0000 (00:59 +0100)]
audiod: Don't open the receiver too early.
Also use sched_request_timeout() instead of setting the timeout
directly.
Andre Noll [Mon, 11 Jan 2010 23:57:24 +0000 (00:57 +0100)]
audiod _close_filters(): Don't segfault if fn is NULL.
Andre Noll [Mon, 11 Jan 2010 23:55:59 +0000 (00:55 +0100)]
audiod: Make writer_cleanup() accept NULL pointer argument.
Andre Noll [Mon, 11 Jan 2010 01:51:08 +0000 (02:51 +0100)]
audiod: Fix time string.
Copy the data which is relevant for generating the string at writer
node start time, i.e. when the writer produced its first output.
Andre Noll [Mon, 11 Jan 2010 00:06:39 +0000 (01:06 +0100)]
audiod: Timing fixes.
Andre Noll [Mon, 11 Jan 2010 00:03:58 +0000 (01:03 +0100)]
udp_recv: Loglevel adjustments.
Andre Noll [Mon, 11 Jan 2010 00:03:11 +0000 (01:03 +0100)]
sched: Add some helper functions.
Andre Noll [Sun, 10 Jan 2010 18:53:22 +0000 (19:53 +0100)]
[btr] Export btr_pool_size().
Andre Noll [Sun, 10 Jan 2010 18:52:19 +0000 (19:52 +0100)]
grab: Implement -n option to specify the name of the btrn.
Andre Noll [Sun, 10 Jan 2010 18:50:56 +0000 (19:50 +0100)]
Add E_STDIN_OVERRUN error code.
Andre Noll [Sun, 10 Jan 2010 18:49:58 +0000 (19:49 +0100)]
stdout: Try to write as much as possible in one go.
Andre Noll [Sun, 10 Jan 2010 17:40:40 +0000 (18:40 +0100)]
stdin: Use buffer pools.
This introduces a memory leak to be fixed in a subsequent patch (the
buffer pool can not be freed in post_select() because there might
still be references to its area).
Andre Noll [Sun, 10 Jan 2010 17:22:49 +0000 (18:22 +0100)]
[btr]: Avoid large memcpy()s when creating the wrap buffers.
Andre Noll [Sun, 10 Jan 2010 04:07:59 +0000 (05:07 +0100)]
Major grab_client cleanups.
- Move struct declarations from grab_client.h to grab_client.c.
- Kill init_grabbing(). We can do this at compile time.
- Rename some functions and improve documentation.
Andre Noll [Sun, 10 Jan 2010 03:30:45 +0000 (04:30 +0100)]
Fix stream grabbing.
The new code uses a buffer tree node which is inserted into an existing
buffer tree if possible, or put to the inactive list.
The grab command now takes the name of an existing parent node. The new
grab client node will be inserted as a child of this parent node.
Andre Noll [Sun, 10 Jan 2010 03:25:16 +0000 (04:25 +0100)]
btr_node_status(): Do not segfault if btrn is NULL.
Andre Noll [Sat, 9 Jan 2010 21:34:22 +0000 (22:34 +0100)]
Minor logging and documentation updates.
Andre Noll [Sat, 9 Jan 2010 21:25:17 +0000 (22:25 +0100)]
Add btr pool support to the fecdec filter.
The consumers of the output of fecdec are typically the decoders
which have requirements on the minimal amount of data available
in one chunk. Using a buffer pool minimizes the number of memcpy()
operations needed during btr_merge when the current buffer is too small.
To fit the needs of fecdec, a new function btr_copy() is introduced
which copies a data buffer into the btr pool area and generates
btr buffers and references. btr_add_output_pool() had to be adjusted
a bit and all callers have been changed to match.
The patch also adds a new field "name" to the buffer_pool structure.
This makes the log output more readable.
Andre Noll [Sat, 9 Jan 2010 17:41:07 +0000 (18:41 +0100)]
udp_recv: Use buffer pool API.
Although fecdec, the filter receiving the output of the udp receiver,
does not strictly benefit from this change, using buffer pools in
receivers has the advantage that we don't need to guess the input
buffer size or call realloc() after the receive to shrink the buffer.
Andre Noll [Sat, 9 Jan 2010 01:28:15 +0000 (02:28 +0100)]
Implement buffer tree pool support.
Using a buffer pool avoids quite some uses of memcpy() and memmove().
This patch also switches over the http receiver to use buffer pools.
Andre Noll [Sat, 9 Jan 2010 01:24:02 +0000 (02:24 +0100)]
audiod: Kill noisy debug message.
Andre Noll [Sat, 9 Jan 2010 00:31:38 +0000 (01:31 +0100)]
mp3dec: Improve error message.
Andre Noll [Sat, 9 Jan 2010 00:31:16 +0000 (01:31 +0100)]
oggdec fixes.
If opening the stream fails because the segment available is too small,
we must not consume this data, which is what cb_read_btr() does
unconditionally.
Make it store the number of consumed bytes in pod->converted and consume
from ogg_init() and ogg_post_select() instead.
Andre Noll [Fri, 8 Jan 2010 19:06:05 +0000 (20:06 +0100)]
amp filter fixes.
- Avoid double free.
- Print correct amplification value in log message.
Andre Noll [Wed, 6 Jan 2010 23:48:47 +0000 (00:48 +0100)]
Switch audiod over to the buffer tree API.
Still a bit rough and there are too many btr merges.
Andre Noll [Wed, 6 Jan 2010 23:45:25 +0000 (00:45 +0100)]
vss: Update offset directly when setting the REPOS flag.
This way, the new offset is used during the next announce period.
Andre Noll [Wed, 6 Jan 2010 23:42:10 +0000 (00:42 +0100)]
sched.h: Explicitely mention size of task status buffer.
Andre Noll [Wed, 6 Jan 2010 23:40:57 +0000 (00:40 +0100)]
sched: Update "now" also after post_select.
Andre Noll [Wed, 6 Jan 2010 23:35:55 +0000 (00:35 +0100)]
oggdec: Move init into a separate function.
Andre Noll [Wed, 6 Jan 2010 23:25:14 +0000 (00:25 +0100)]
aacdec: Reset "consumed" at each iteration.
Andre Noll [Tue, 5 Jan 2010 22:08:36 +0000 (23:08 +0100)]
btr support for the fecdec filter.
Andre Noll [Tue, 5 Jan 2010 22:07:29 +0000 (23:07 +0100)]
Fix a bug in the compress filter in case of odd buffer sizes.
Andre Noll [Tue, 5 Jan 2010 22:06:45 +0000 (23:06 +0100)]
filter: Fix a memory leak in non-btr mode.
Andre Noll [Tue, 5 Jan 2010 22:05:58 +0000 (23:05 +0100)]
stdin: Always set t->error correctly.
Andre Noll [Tue, 5 Jan 2010 19:38:39 +0000 (20:38 +0100)]
btr support for the UDP receiver.
Andre Noll [Tue, 5 Jan 2010 18:39:33 +0000 (19:39 +0100)]
Introduce generic_recv_pre_select().
Andre Noll [Tue, 5 Jan 2010 18:20:54 +0000 (19:20 +0100)]
recv improvements.
- Fix some memory leaks.
- kill http_recv's -B option.
- Move btr node creation to recv.c.
Andre Noll [Tue, 5 Jan 2010 18:04:04 +0000 (19:04 +0100)]
[btr] Add the node type parameter to btr_node_status().
This allows to have a single function which can be called from
both the pre_select and the post_select methods of all receivers/
filters/writers and from the stdin and stdout tasks.
Andre Noll [Tue, 5 Jan 2010 05:09:32 +0000 (06:09 +0100)]
btr support for the oss writer.
Andre Noll [Tue, 5 Jan 2010 05:06:27 +0000 (06:06 +0100)]
para_write: Make loglevel work again.
Also kill some useless log messagess and fix a memory leak.