summaryrefslogtreecommitdiffstats
path: root/src/pulsecore
Commit message (Collapse)AuthorAgeFilesLines
* fix up requested latency when we move a record streamLennart Poettering2008-05-151-3/+6
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2441 fefdeb5f-60dc-0310-8127-8f9354f1896f
* fix moving of record streamsLennart Poettering2008-05-151-2/+14
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2440 fefdeb5f-60dc-0310-8127-8f9354f1896f
* reduce malloc() usage when logging, to minimize the hit of logging in RT ↵Lennart Poettering2008-05-151-11/+13
| | | | | | threads. Not complete yet, i18n still uses malloc git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2435 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add pa_vsnprintf()Lennart Poettering2008-05-152-2/+19
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2434 fefdeb5f-60dc-0310-8127-8f9354f1896f
* increase default mempool size, make mempool_slot an abstract struct because ↵Lennart Poettering2008-05-152-33/+23
| | | | | | the only fields it defined where actually unused git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2431 fefdeb5f-60dc-0310-8127-8f9354f1896f
* increase shm size limit, modernizationsLennart Poettering2008-05-152-9/+11
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2430 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add PA_REFCNT_INIT_ZEROLennart Poettering2008-05-151-0/+3
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2425 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add pa_ulog2()Lennart Poettering2008-05-151-0/+11
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2424 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add pa_memblockq_get_nblocks()Lennart Poettering2008-05-152-0/+8
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2423 fefdeb5f-60dc-0310-8127-8f9354f1896f
* fix braindead mistakeLennart Poettering2008-05-141-1/+1
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2416 fefdeb5f-60dc-0310-8127-8f9354f1896f
* some fixes to make the esound protocol work on glitch-free againLennart Poettering2008-05-141-44/+88
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2415 fefdeb5f-60dc-0310-8127-8f9354f1896f
* some fixes to make the simple protocol work on glitch-free againLennart Poettering2008-05-141-39/+87
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2414 fefdeb5f-60dc-0310-8127-8f9354f1896f
* store peer name in native-protocol.peer propertyLennart Poettering2008-05-141-3/+2
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2413 fefdeb5f-60dc-0310-8127-8f9354f1896f
* if zero is passed to pa_memblock_new() allocate largest memory block ↵Lennart Poettering2008-05-141-1/+3
| | | | | | possible from mempool git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2412 fefdeb5f-60dc-0310-8127-8f9354f1896f
* - Fix moving of sink inputs between sinksLennart Poettering2008-05-0911-249/+267
| | | | | | | | | - 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
* make sure the smoother code can deal with incoming data that is ↵Lennart Poettering2008-05-092-59/+86
| | | | | | 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
* fix some commentsLennart Poettering2008-05-081-2/+2
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2388 fefdeb5f-60dc-0310-8127-8f9354f1896f
* double default asyncq sizeLennart Poettering2008-05-071-6/+2
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2386 fefdeb5f-60dc-0310-8127-8f9354f1896f
* fix a memory leakLennart Poettering2008-05-071-1/+2
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2383 fefdeb5f-60dc-0310-8127-8f9354f1896f
* make memchunk/memblockq streams work with glitch-freeLennart Poettering2008-05-072-12/+23
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2382 fefdeb5f-60dc-0310-8127-8f9354f1896f
* beefup proplist handling for sound eventsLennart Poettering2008-05-071-7/+21
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2381 fefdeb5f-60dc-0310-8127-8f9354f1896f
* update to new rewinding logicLennart Poettering2008-05-072-7/+4
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2380 fefdeb5f-60dc-0310-8127-8f9354f1896f
* rework the rewinding logic once again, fixingLennart Poettering2008-05-072-72/+74
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2379 fefdeb5f-60dc-0310-8127-8f9354f1896f
* when rewinding after the end of an underrun, make sure to rewind as much as ↵Lennart Poettering2008-05-031-13/+15
| | | | | | 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
* follow _unlink() changes from sink-inputLennart Poettering2008-05-031-6/+6
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2355 fefdeb5f-60dc-0310-8127-8f9354f1896f
* send PA_SINK_MESSAGE_REMOVE_INPUT only when an asyncmsgq is available, reset ↵Lennart Poettering2008-05-031-7/+8
| | | | | | 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
* make sure to call sink->update_requested_latency() always when we change ↵Lennart Poettering2008-05-032-6/+0
| | | | | | latency, same for source git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2353 fefdeb5f-60dc-0310-8127-8f9354f1896f
* don't require a module name when resolving a dl symbolLennart Poettering2008-05-031-3/+5
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2352 fefdeb5f-60dc-0310-8127-8f9354f1896f
* only send PA_SINK_MESSAGE_SET_STATE if there's still an asyncmsqg around to ↵Lennart Poettering2008-05-022-4/+6
| | | | | | do so git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2347 fefdeb5f-60dc-0310-8127-8f9354f1896f
* a few modernizationsLennart Poettering2008-05-022-28/+30
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2346 fefdeb5f-60dc-0310-8127-8f9354f1896f
* reorderer a few thingsLennart Poettering2008-05-021-9/+9
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2345 fefdeb5f-60dc-0310-8127-8f9354f1896f
* fix a compiler warningLennart Poettering2008-05-021-1/+1
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2344 fefdeb5f-60dc-0310-8127-8f9354f1896f
* some modernizationsLennart Poettering2008-05-022-16/+23
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2343 fefdeb5f-60dc-0310-8127-8f9354f1896f
* don't enable prebuffering if we just call is_readable()Lennart Poettering2008-05-021-2/+11
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2341 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Yes, yet another evil all-in-one commit of intervowen changes. I suck.Lennart Poettering2008-05-0118-383/+904
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* parse boolean parameters as boolean instead of int wherever applicable. add ↵Lennart Poettering2008-05-012-18/+50
| | | | | | 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
* install gccmacro.h properly, drop unused core-def.h fileLennart Poettering2008-05-011-29/+0
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2325 fefdeb5f-60dc-0310-8127-8f9354f1896f
* change pa_rtpoll_set_timer_absolute() to take a pa_usec_t instead of struct ↵Lennart Poettering2008-05-012-4/+3
| | | | | | timeval git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2324 fefdeb5f-60dc-0310-8127-8f9354f1896f
* save and restore errno in log functionsLennart Poettering2008-05-011-1/+7
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2323 fefdeb5f-60dc-0310-8127-8f9354f1896f
* minor reformatLennart Poettering2008-05-011-1/+3
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2322 fefdeb5f-60dc-0310-8127-8f9354f1896f
* port pa_sample_clamp() to liboilLennart Poettering2008-05-011-6/+2
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2319 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add new function pa_sample_clamp()Lennart Poettering2008-05-012-0/+33
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2318 fefdeb5f-60dc-0310-8127-8f9354f1896f
* strip CRLF line breaks from read CLI commands. This should fix the cli ↵Lennart Poettering2008-05-011-1/+1
| | | | | | 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
* * Increase history set to 64 to simplify reduction of indexesLennart Poettering2008-05-011-32/+42
| | | | | | | | | | | * 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
* fix size of requested_latencyLennart Poettering2008-04-231-1/+1
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2311 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Big pile of interdependant changes:Lennart Poettering2008-04-238-46/+248
| | | | | | | | | | | | | | * 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
* respect the resampler's maximum block size to avoid that we get kicked out ↵Lennart Poettering2008-04-231-1/+8
| | | | | | 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
* unify code that fixes up buffering metricsLennart Poettering2008-04-231-157/+188
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2302 fefdeb5f-60dc-0310-8127-8f9354f1896f
* drop a misplaced newlineLennart Poettering2008-04-231-1/+0
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2301 fefdeb5f-60dc-0310-8127-8f9354f1896f
* show configure latency metricsLennart Poettering2008-04-221-2/+10
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2298 fefdeb5f-60dc-0310-8127-8f9354f1896f