summaryrefslogtreecommitdiffstats
path: root/src/pulse
Commit message (Collapse)AuthorAgeFilesLines
* add 'stream' as media roleLennart Poettering2008-05-151-1/+1
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2426 fefdeb5f-60dc-0310-8127-8f9354f1896f
* - Fix moving of sink inputs between sinksLennart Poettering2008-05-091-6/+28
| | | | | | | | | - 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
* bah, english sucksLennart Poettering2008-05-091-0/+4
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2389 fefdeb5f-60dc-0310-8127-8f9354f1896f
* fix recordingLennart Poettering2008-05-071-1/+2
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2387 fefdeb5f-60dc-0310-8127-8f9354f1896f
* define callback function types; allow pa_signal_done() to be called even ↵Lennart Poettering2008-05-072-18/+21
| | | | | | without prior pa_signal_init() git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2377 fefdeb5f-60dc-0310-8127-8f9354f1896f
* rename 'routing' to 'filter'Lennart Poettering2008-05-061-2/+2
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2371 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Yes, yet another evil all-in-one commit of intervowen changes. I suck.Lennart Poettering2008-05-018-414/+762
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* move unlinking code to operation_unlink()Lennart Poettering2008-05-011-14/+19
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2328 fefdeb5f-60dc-0310-8127-8f9354f1896f
* don't allow overwriting of callback pointers when we're already deadLennart Poettering2008-05-011-0/+3
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2320 fefdeb5f-60dc-0310-8127-8f9354f1896f
* make check for $DISPLAY=="" more readable, pa_bool_tizationLennart Poettering2008-05-011-2/+5
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2315 fefdeb5f-60dc-0310-8127-8f9354f1896f
* save errno before calling free()Lennart Poettering2008-05-011-0/+5
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2313 fefdeb5f-60dc-0310-8127-8f9354f1896f
* do not fix automatic buffer attrs anymore, the new protocol version doesn't ↵Lennart Poettering2008-04-232-50/+4
| | | | | | 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
* improve dB volume calculationLennart Poettering2008-04-202-4/+4
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2289 fefdeb5f-60dc-0310-8127-8f9354f1896f
* fix C++ compatLennart Poettering2008-04-201-1/+1
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2288 fefdeb5f-60dc-0310-8127-8f9354f1896f
* drop a redundant pa_init_proplist(), properly set MEDIA_NAME property on ↵Lennart Poettering2008-04-201-3/+1
| | | | | | stream, not on context git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2285 fefdeb5f-60dc-0310-8127-8f9354f1896f
* split user supplied data in multiple memory blocks if necessary to fit in ↵Lennart Poettering2008-04-201-13/+38
| | | | | | 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
* follow pa_pstream_use_shm->pa_pstream_enable_shm renameLennart Poettering2008-04-201-1/+1
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2275 fefdeb5f-60dc-0310-8127-8f9354f1896f
* define PA_xxxSEC_PER_yyySEC for usec, tooLennart Poettering2008-04-171-0/+2
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2268 fefdeb5f-60dc-0310-8127-8f9354f1896f
* s/pulsecore\/gccmacro.h/pulse\/gccmacro.h/Lennart Poettering2008-04-118-6/+9
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2261 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add new PA_GCC_PACKED macroLennart Poettering2008-04-111-0/+9
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2253 fefdeb5f-60dc-0310-8127-8f9354f1896f
* mark autoload functions as deprecatedLennart Poettering2008-04-111-6/+7
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2244 fefdeb5f-60dc-0310-8127-8f9354f1896f
* remove misplaced PA_GCC_PURELennart Poettering2008-04-111-1/+3
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2243 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add C++ safety to header fileLennart Poettering2008-04-111-39/+44
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2242 fefdeb5f-60dc-0310-8127-8f9354f1896f
* fix bit depth guarantee for pa_usec_tLennart Poettering2008-04-111-1/+2
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2241 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add new API function pa_timeval_add()Lennart Poettering2008-04-112-1/+23
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2240 fefdeb5f-60dc-0310-8127-8f9354f1896f
* remove gcc macros from cdecl.h because we have them in gccmacro.h nowLennart Poettering2008-04-111-18/+0
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2239 fefdeb5f-60dc-0310-8127-8f9354f1896f
* fix bad memory access when initializing client proplistLennart Poettering2008-04-111-2/+4
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2238 fefdeb5f-60dc-0310-8127-8f9354f1896f
* move gccmacro from pulsecore/ to pulse/Lennart Poettering2008-04-111-0/+89
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2232 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add new pa_proplist_setf() API functionLennart Poettering2008-04-092-0/+31
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2230 fefdeb5f-60dc-0310-8127-8f9354f1896f
* remove doxygen \since tag for API changes older than 0.9; properly implement ↵Lennart Poettering2008-04-0912-151/+175
| | | | | | new latency query APIs git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2228 fefdeb5f-60dc-0310-8127-8f9354f1896f
* mark libpulse-browse as obsoleteLennart Poettering2008-04-041-0/+13
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2216 fefdeb5f-60dc-0310-8127-8f9354f1896f
* - deprecate autoload stuffLennart Poettering2008-04-034-103/+279
| | | | | | | | | | | | - allow setting of the requested latency of a sink input/source output before _put() is called - allow sinks/sources to have a "minimal" latency which applies to all requested latencies by sink inputs/source outputs - add new client library flags PA_STREAM_ADJUST_LATENCY, PA_STREAM_START_MUTED - allow client library to fill in 0 to buffer_attr fields - update module-alsa-source following module-alsa-sink - other cleanups and fixes git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2215 fefdeb5f-60dc-0310-8127-8f9354f1896f
* catch up with trunk HEAD (i.e. 2118:2213)Lennart Poettering2008-03-311-2/+5
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2214 fefdeb5f-60dc-0310-8127-8f9354f1896f
* commit glitch-free workLennart Poettering2008-03-1514-99/+765
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2121 fefdeb5f-60dc-0310-8127-8f9354f1896f
* deal with a possibly failing pa_channel_map_init_auto() correctlyLennart Poettering2008-02-131-5/+5
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2105 fefdeb5f-60dc-0310-8127-8f9354f1896f
* use __BYTE_ORDER macro for detecting byte order, as suggested on ↵Lennart Poettering2008-01-061-0/+9
| | | | | | http://unixpapa.com/incnote/byteorder.html git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2098 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add new function pa_proplist_contains()Lennart Poettering2007-12-292-0/+15
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2089 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add new property list implementationLennart Poettering2007-12-232-0/+332
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2085 fefdeb5f-60dc-0310-8127-8f9354f1896f
* rearrange #includesLennart Poettering2007-11-241-3/+3
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2081 fefdeb5f-60dc-0310-8127-8f9354f1896f
* fix uploading of samples into PA. Problem discovered by Colin GuthrieLennart Poettering2007-11-221-1/+1
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2074 fefdeb5f-60dc-0310-8127-8f9354f1896f
* - Check process name when dealing with PID filesLennart Poettering2007-11-216-20/+593
| | | | | | | | | | | | - Add new PA_STREAM_FIX_CHANNELS, FIX_RATE, FIX_FORMAT, DONT_MOVE, VARIABLE_RATES to pa_sream_flags_t adn implement it - Expose those flags in pacat - Add notifications about device suspend/resume to the protocol and expose them in libpulse - Allow changing of buffer_attr during playback - allow disabling for remixing globally - hookup polkit support git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2067 fefdeb5f-60dc-0310-8127-8f9354f1896f
* use a prio inheriting mutex for the threaded mainloop, to ease writing of RT ↵Lennart Poettering2007-11-141-1/+1
| | | | | | clients git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2059 fefdeb5f-60dc-0310-8127-8f9354f1896f
* use a free list for allocation pa_operation objectsLennart Poettering2007-11-141-2/+9
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2058 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add array size to increase chance of detecting missing updatesLennart Poettering2007-11-131-3/+2
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2054 fefdeb5f-60dc-0310-8127-8f9354f1896f
* minor typoLennart Poettering2007-11-091-1/+1
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2042 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add support for 32bit integer samplesLennart Poettering2007-11-092-5/+29
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2037 fefdeb5f-60dc-0310-8127-8f9354f1896f
* strip most comments from the default configuration files, since the man page ↵Lennart Poettering2007-11-081-20/+9
| | | | | | is now more elaborate and we don't want to maintain those docs redundantly at two places git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2030 fefdeb5f-60dc-0310-8127-8f9354f1896f
* pa_boolize the client configLennart Poettering2007-11-012-8/+7
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2009 fefdeb5f-60dc-0310-8127-8f9354f1896f
* save and restore errno in the sig handlerLennart Poettering2007-10-301-0/+6
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2004 fefdeb5f-60dc-0310-8127-8f9354f1896f
* rename 'length' parameters in the API to 'bytes', to make their unit clearLennart Poettering2007-10-302-7/+7
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1999 fefdeb5f-60dc-0310-8127-8f9354f1896f