Lennart Poettering [Wed, 14 May 2008 17:13:28 +0000 (17:13 +0000)]
modernizations
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2422
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 14 May 2008 02:44:38 +0000 (02:44 +0000)]
modernizations
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2421
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 14 May 2008 02:36:38 +0000 (02:36 +0000)]
initialize volume properly, set more properties, modernizations
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2420
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 14 May 2008 02:35:50 +0000 (02:35 +0000)]
don't spam us with wakeup msgs in non-tsched mode
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2419
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 14 May 2008 02:03:01 +0000 (02:03 +0000)]
update pipe source for glitch-free, too
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2418
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 14 May 2008 01:58:24 +0000 (01:58 +0000)]
fix pipe sink for glitch-free
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2417
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 14 May 2008 01:00:35 +0000 (01:00 +0000)]
fix braindead mistake
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2416
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 14 May 2008 00:43:24 +0000 (00:43 +0000)]
some fixes to make the esound protocol work on glitch-free again
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2415
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 14 May 2008 00:42:46 +0000 (00:42 +0000)]
some fixes to make the simple protocol work on glitch-free again
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2414
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 14 May 2008 00:41:58 +0000 (00:41 +0000)]
store peer name in native-protocol.peer property
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2413
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 14 May 2008 00:40:36 +0000 (00:40 +0000)]
if zero is passed to pa_memblock_new() allocate largest memory block possible from mempool
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2412
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Fri, 9 May 2008 23:15:06 +0000 (23:15 +0000)]
fix module-sine for glitch-free
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2393
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Fri, 9 May 2008 22:48:37 +0000 (22:48 +0000)]
- Fix moving of sink inputs between sinks
- Don't write more than a single buffer size in the ALSA driver at a time, to give the clients time to fill up the memblockq again
- Add API for querying the requested latency of a sink input/source output
- Drop get_letancy() from vtable of sinks/sources
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2392
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Fri, 9 May 2008 22:28:38 +0000 (22:28 +0000)]
modify test to generate data events out-of-order
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2391
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Fri, 9 May 2008 22:27:44 +0000 (22:27 +0000)]
make sure the smoother code can deal with incoming data that is out-of-order; start smoothing only when we have at least a configurable number of entries in our history
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2390
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Fri, 9 May 2008 22:11:57 +0000 (22:11 +0000)]
bah, english sucks
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2389
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 8 May 2008 01:08:33 +0000 (01:08 +0000)]
fix some comments
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2388
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 7 May 2008 21:10:19 +0000 (21:10 +0000)]
fix recording
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2387
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 7 May 2008 21:09:49 +0000 (21:09 +0000)]
double default asyncq size
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2386
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 7 May 2008 20:36:41 +0000 (20:36 +0000)]
fix a race condition when tearing down the ladspa/remap sink
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2385
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 7 May 2008 20:35:25 +0000 (20:35 +0000)]
apparently alsa expects us to free the memory for card names
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2384
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 7 May 2008 20:34:39 +0000 (20:34 +0000)]
fix a memory leak
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2383
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 7 May 2008 02:22:30 +0000 (02:22 +0000)]
make memchunk/memblockq streams work with glitch-free
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2382
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 7 May 2008 02:21:10 +0000 (02:21 +0000)]
beefup proplist handling for sound events
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2381
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 7 May 2008 01:38:16 +0000 (01:38 +0000)]
update to new rewinding logic
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2380
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 7 May 2008 01:37:42 +0000 (01:37 +0000)]
rework the rewinding logic once again, fixing
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2379
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 7 May 2008 01:36:44 +0000 (01:36 +0000)]
decrease verbosity a bit
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2378
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 7 May 2008 01:34:54 +0000 (01:34 +0000)]
define callback function types; allow pa_signal_done() to be called even without prior pa_signal_init()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2377
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Tue, 6 May 2008 21:12:39 +0000 (21:12 +0000)]
explain why changing rlimits at this time is safe
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2372
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Tue, 6 May 2008 21:11:55 +0000 (21:11 +0000)]
rename 'routing' to 'filter'
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2371
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Tue, 6 May 2008 21:10:53 +0000 (21:10 +0000)]
add a few more asserts, don't allow pa_limit_caps() to fail
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2370
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sat, 3 May 2008 02:01:29 +0000 (02:01 +0000)]
fix remapping sink for glitch-free
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2359
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sat, 3 May 2008 01:36:42 +0000 (01:36 +0000)]
update LADSPA module for glitch-free moed
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2358
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sat, 3 May 2008 01:36:05 +0000 (01:36 +0000)]
explain why a rewind was requested
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2357
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sat, 3 May 2008 01:34:45 +0000 (01:34 +0000)]
when rewinding after the end of an underrun, make sure to rewind as much as we can, so that we deal properly with changed latencies of the sink
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2356
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sat, 3 May 2008 01:33:33 +0000 (01:33 +0000)]
follow _unlink() changes from sink-input
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2355
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sat, 3 May 2008 01:32:57 +0000 (01:32 +0000)]
send PA_SINK_MESSAGE_REMOVE_INPUT only when an asyncmsgq is available, reset resampler only when we really need to
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2354
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sat, 3 May 2008 01:31:39 +0000 (01:31 +0000)]
make sure to call sink->update_requested_latency() always when we change latency, same for source
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2353
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sat, 3 May 2008 01:30:40 +0000 (01:30 +0000)]
don't require a module name when resolving a dl symbol
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2352
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Tanu Kaskinen [Fri, 2 May 2008 13:12:51 +0000 (13:12 +0000)]
Fix typo: "now"->"not".
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2351
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Tanu Kaskinen [Fri, 2 May 2008 13:08:15 +0000 (13:08 +0000)]
Fix setrlimit() return value comparsion.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2350
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Fri, 2 May 2008 01:26:10 +0000 (01:26 +0000)]
only send PA_SINK_MESSAGE_SET_STATE if there's still an asyncmsqg around to do so
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2347
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Fri, 2 May 2008 01:25:22 +0000 (01:25 +0000)]
a few modernizations
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2346
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Fri, 2 May 2008 01:24:47 +0000 (01:24 +0000)]
reorderer a few things
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2345
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Fri, 2 May 2008 01:24:01 +0000 (01:24 +0000)]
fix a compiler warning
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2344
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Fri, 2 May 2008 01:23:32 +0000 (01:23 +0000)]
some modernizations
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2343
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Fri, 2 May 2008 01:21:22 +0000 (01:21 +0000)]
add multiarch paths to default LADSPA search path
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2342
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Fri, 2 May 2008 01:20:46 +0000 (01:20 +0000)]
don't enable prebuffering if we just call is_readable()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2341
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 19:51:05 +0000 (19:51 +0000)]
Yes, yet another evil all-in-one commit of intervowen changes. I suck.
* Drop "state" directory, fold that into "runtime directory"
* No longer automatically rewind when a new stream connects
* Rework sound file stream, to cause a rewind on initialisation, shorten _pop() code a bit
* Fix reference counting of pa_socket_server in the protocol implementations
* Rework daemon initialization code to be compatible with non-SUID-root setups where RLIMIT_RTPRIO is non-zero
* Print warning if RT/HP is enabled in the config, but due to missing caps, rlimits, policy we cannot enable it.
* Fix potential memory leak in pa_open_config_file()
* Add pa_find_config_file() which works much like pa_open_config_file() but doesn't actually open the config file in question. Just searches for it.
* Add portable pa_is_path_absolute()
* Add pa_close_all() and use it on daemon startup to close leaking file descriptors (inspired from what I did for libdaemon)
* Add pa_unblock_sigs() and use it on daemon startup to unblock all signals (inspired from libdaemon, too)
* Add pa_reset_sigs() and use it on daemon startup to reset all signal handlers (inspired from libdaemon as well)
* Implement pa_set_env()
* Define RLIMIT_RTTIME and friends if not defined by glibc
* Add pa_strempty()
* rename state testing macros to include _IS_, to make clearer that they are no states, but testing macros
* Implement pa_source_output_set_requested_latency_within_thread() to be able to forward latency info to sources from within the IO thread
* Similar for sink inputs
* generelize since_underrun counter in sink inputs to "playing_for" and "underrun_for". Use only this for ignore potential rewind requests over underruns
* Add new native protocol message PLAYBACK_STREAM_MESSAGE_STARTED for notification about the end of an underrun
* Port native protocol to use underrun_for/playing_for which is maintained by the sink input anyway
* Pass underrun_for/playing_for in timing info to client
* Drop pa_sink_skip() since it breaks underrun detection code
* Move PID file and unix sockets to the runtime dir (i.e. ~/.pulse). This fixes a potention DoS attack from other users stealing dirs in /tmp from us so that we cannot take them anymore)
* Allow setting of more resource limits from the config file. Set RTTIME by default
* Streamline daemon startup code
* Rework algorithm to find default configuration files
* If run in system mode use "system.pa" instead of "default.pa" as default script file
* Change ladspa sink to use pa_clamp_samples() for clamping samples
* Teach module-null-sink how to deal with rewinding
* Try to support ALSA devices with no implicit channel map. Synthesize one by padding with PA_CHANNEL_POSITION_AUX channels. This is not tested since I lack hardware with these problems.
* Make use of time smoother in the client libraries.
* Add new pa_stream_is_corked() and pa_stream_set_started_callback() functions to public API
* Since our native socket moved, add some code for finding sockets created by old versions of PA. This should ease upgrades
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2329
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 19:26:41 +0000 (19:26 +0000)]
move unlinking code to operation_unlink()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2328
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 19:25:24 +0000 (19:25 +0000)]
some minor updates
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2327
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 19:24:09 +0000 (19:24 +0000)]
parse boolean parameters as boolean instead of int wherever applicable. add new function pa_cli_command_execute_file_stream()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2326
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 19:22:35 +0000 (19:22 +0000)]
install gccmacro.h properly, drop unused core-def.h file
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2325
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 19:17:52 +0000 (19:17 +0000)]
change pa_rtpoll_set_timer_absolute() to take a pa_usec_t instead of struct timeval
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2324
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 19:16:55 +0000 (19:16 +0000)]
save and restore errno in log functions
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2323
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 19:16:25 +0000 (19:16 +0000)]
minor reformat
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2322
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 19:15:49 +0000 (19:15 +0000)]
check for $PULSE_INTERNAL before enabling padsp
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2321
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 19:15:08 +0000 (19:15 +0000)]
don't allow overwriting of callback pointers when we're already dead
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2320
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 19:13:53 +0000 (19:13 +0000)]
port pa_sample_clamp() to liboil
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2319
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 19:09:03 +0000 (19:09 +0000)]
add new function pa_sample_clamp()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2318
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 19:06:15 +0000 (19:06 +0000)]
strip CRLF line breaks from read CLI commands. This should fix the cli interface for people accessing it via telnet.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2317
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 19:04:42 +0000 (19:04 +0000)]
* Increase history set to 64 to simplify reduction of indexes
* Decrease memory consumption a bit by using bitfields for some bools
* Rework reduction code
* Drop an unnessacary counter
* Before adding a new entry to the history, try to figure out if we already have an existing entry with the same x value and replace that. This fixes a division by zero
* Fix up input x for all functions, according to the time offset
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2316
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 18:59:25 +0000 (18:59 +0000)]
make check for $DISPLAY=="" more readable, pa_bool_tization
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2315
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 18:57:18 +0000 (18:57 +0000)]
a bit of pa_bool_t'ization
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2314
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Thu, 1 May 2008 18:56:14 +0000 (18:56 +0000)]
save errno before calling free()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2313
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 23 Apr 2008 23:22:51 +0000 (23:22 +0000)]
define minimal and maximal wakeup/sleep times; check for underrun condition only once during buffer fillup
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2312
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 23 Apr 2008 19:55:04 +0000 (19:55 +0000)]
fix size of requested_latency
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2311
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 23 Apr 2008 19:22:56 +0000 (19:22 +0000)]
fix build for auxiliary modules
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2310
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 23 Apr 2008 18:56:19 +0000 (18:56 +0000)]
add stripnul to build
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2309
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 23 Apr 2008 18:26:48 +0000 (18:26 +0000)]
Big pile of interdependant changes:
* Fix a deadlock when an asyncq overflows and an RT thread needed to wait until space became available again while the main thread was waiting for a operation to complete and thus didn't free any new items. Now, if the asyncq overflows, queue those items temporarily, and return immediately. Then, when the queue becomes writable again, flush it.
* Modify pa_thread_mq_init() to also set up pa_rtpoll events properly for the MQ
* Some more pa_bool_t'ization
* Unify more common code between alsa-sink and alsa-source
* The upper limit for the tsched watermark is max_use minus one frame
* make module-alsa-source work
* make the alsa modules use pa_alsa_build_pollfd() now
* fix detection of dB scale for alsa-source
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2308
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 23 Apr 2008 18:19:45 +0000 (18:19 +0000)]
add new tool 'stripnul' which can be used to drop leading zeros from a file which is useful to do byte-by-byte comparison of what goes in and comes out of PA
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2307
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 23 Apr 2008 18:17:17 +0000 (18:17 +0000)]
pa_bool_t'ization
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2306
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 23 Apr 2008 18:14:25 +0000 (18:14 +0000)]
respect the resampler's maximum block size to avoid that we get kicked out of the memory pool due to resampling. actually drop data from the delay queue after we used it
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2305
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 23 Apr 2008 18:13:11 +0000 (18:13 +0000)]
add missing header definitions for last commit
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2304
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 23 Apr 2008 18:12:46 +0000 (18:12 +0000)]
add new function pa_alsa_build_pollfd() to alsa-util to unify a bit more common code from the sink and the source
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2303
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 23 Apr 2008 18:11:57 +0000 (18:11 +0000)]
unify code that fixes up buffering metrics
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2302
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 23 Apr 2008 18:11:14 +0000 (18:11 +0000)]
drop a misplaced newline
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2301
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Wed, 23 Apr 2008 18:10:34 +0000 (18:10 +0000)]
do not fix automatic buffer attrs anymore, the new protocol version doesn't need this anymore and it creates more problems than it solves. Also drop the initial timing info query. Correct programs shouldn't depend on it anyway
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2300
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Tue, 22 Apr 2008 02:50:55 +0000 (02:50 +0000)]
* don't increase tsched_watermark on underrun without limits
* fix the watermark when we change the latency
* fix latency measurement
* move rewinding code into its own function
* make use of new function pa_alsa_recover_from_poll() were applicable
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2299
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Tue, 22 Apr 2008 02:48:24 +0000 (02:48 +0000)]
show configure latency metrics
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2298
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Tue, 22 Apr 2008 02:47:47 +0000 (02:47 +0000)]
some beautification updates, show msec instead of usec everywhere
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2297
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Tue, 22 Apr 2008 02:47:05 +0000 (02:47 +0000)]
if no timer was armed, we don't need to disarm it
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2296
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Tue, 22 Apr 2008 02:46:19 +0000 (02:46 +0000)]
if no latency was configure for a sink/source, fill in the max latency automatically
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2295
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Tue, 22 Apr 2008 02:44:25 +0000 (02:44 +0000)]
add new function pa_alsa_recover_from_poll() to merge common core from module-alsa-sink and module-alsa-source
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2294
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Tue, 22 Apr 2008 02:38:51 +0000 (02:38 +0000)]
implement --process-time
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2293
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Tue, 22 Apr 2008 01:11:16 +0000 (01:11 +0000)]
make sure the client buffer has space for 2*minreq+tlength. Explain why
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2292
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Tue, 22 Apr 2008 01:04:27 +0000 (01:04 +0000)]
- Change meaning of special values of latency request: 0 -> "minimal latency, please"; (pa_usec_t)-1 -> "don't care"
- Remove "source" word from monitor source description
- Increase default tsched watermark to 20ms again
- For the first iteration after snd_pcm_start() halve the sleep time as workaround for USB devices with quick starts
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2291
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Tue, 22 Apr 2008 00:52:31 +0000 (00:52 +0000)]
properly initialize memblock->is_silence for imported memory blocks; make is_silence and read_only a bit field
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2290
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sun, 20 Apr 2008 23:57:44 +0000 (23:57 +0000)]
improve dB volume calculation
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2289
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sun, 20 Apr 2008 23:56:55 +0000 (23:56 +0000)]
fix C++ compat
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2288
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sun, 20 Apr 2008 21:50:57 +0000 (21:50 +0000)]
initialize properties for ALSA sinks/sources more elaborately, re #277
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2287
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sun, 20 Apr 2008 21:49:05 +0000 (21:49 +0000)]
use the sink description instead of the name to choose the description for the monitor source
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2286
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sun, 20 Apr 2008 20:53:46 +0000 (20:53 +0000)]
drop a redundant pa_init_proplist(), properly set MEDIA_NAME property on stream, not on context
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2285
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sun, 20 Apr 2008 20:35:44 +0000 (20:35 +0000)]
rename sink_input->rewind to process_rewind() and set_max_rewind to update_max_rewind()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2284
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sun, 20 Apr 2008 20:16:55 +0000 (20:16 +0000)]
Big pile of dependant changes:
* Change pa_memblockq to carry silence memchunk instead of memblock and adapt all users
* Add new call pa_sink_input_get_silence() to get the suitable silence block for a sink input
* Implement monitoring sources properly by adding a delay queue to even out rewinds
* Remove pa_{sink|source}_ping() becaused unnecessary these days and not used
* Fix naming of various rewind related functions. Downstream is now _request_rewind(), upstream is _process_rewind()
* Fix volume adjustments for a single stream in pa_sink_render()
* Properly handle prebuf-style buffer underruns in pa_sink_input
* Don't allow rewinding to more than the last underrun
* Rework default buffering metrics selection for native protocol
* New functions pa_memblockq_prebuf_active(), pa_memblockq_silence()
* add option "mixer_reset=" to module-alsa-sink
* Other cleanups
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2283
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sun, 20 Apr 2008 19:53:07 +0000 (19:53 +0000)]
maintain a global silence memblock cache
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2282
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sun, 20 Apr 2008 19:52:05 +0000 (19:52 +0000)]
fix for new location of gccmacro.h
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2281
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sun, 20 Apr 2008 19:51:08 +0000 (19:51 +0000)]
we have not periodic timers anymore
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2280
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sun, 20 Apr 2008 19:50:42 +0000 (19:50 +0000)]
update to recent changes of proplist api
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2279
fefdeb5f-60dc-0310-8127-
8f9354f1896f
Lennart Poettering [Sun, 20 Apr 2008 19:49:55 +0000 (19:49 +0000)]
split user supplied data in multiple memory blocks if necessary to fit in one mempool tile. If the caller supplied a free_cb and we use shm it's better to copy the data immediately to the shm region instead of keeping it around as user memblock
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2278
fefdeb5f-60dc-0310-8127-
8f9354f1896f