summaryrefslogtreecommitdiffstats
path: root/src/pulse
Commit message (Collapse)AuthorAgeFilesLines
* merge 'lennart' branch back into trunk.Lennart Poettering2007-10-2834-749/+1154
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1971 fefdeb5f-60dc-0310-8127-8f9354f1896f
* only browse for ipv4 pa servers for now. Needs better fixing which however ↵Lennart Poettering2007-05-231-1/+1
| | | | | | is not trivial and probably breaks the API git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1453 fefdeb5f-60dc-0310-8127-8f9354f1896f
* don't allow excessively high sample ratesLennart Poettering2007-05-232-0/+4
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1449 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Treat empty :0.0 identically to unset :0.0 when trying to find a PA server. ↵Lennart Poettering2007-05-231-1/+1
| | | | | | (Closes #87) git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1443 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Add copyright notices to all relevant files. (based on svn log)Pierre Ossman2007-02-1351-0/+156
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1426 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Huge trailing whitespace cleanup. Let's keep the tree pure from here on,Pierre Ossman2007-01-0448-699/+699
| | | | | | | mmmkay? git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1418 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Revert r1404 and keep it on a development branch until it is fully tested.Pierre Ossman2006-11-062-17/+4
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1409 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Handle when threaded mainloop is freed before it is started.Pierre Ossman2006-11-061-1/+2
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1405 fefdeb5f-60dc-0310-8127-8f9354f1896f
* rework memory block management to be thread-safe and mostly lock-free.Lennart Poettering2006-09-262-4/+17
| | | | | | | | | | | | | | | | | | | | | pa_memblock is now an opaque structure. Access to its fields is now done through various accessor functions in a thread-safe manner. pa_memblock_acquire() and pa_memblock_release() are now used to access the attached audio data. Why? To allow safe manipulation of the memory pointer maintained by the memory block. Internally _acquire() and _release() maintain a reference counter. Please do not confuse this reference counter whith the one maintained by pa_memblock_ref()/_unref()! As a side effect this patch removes all direct usages of AO_t and replaces it with pa_atomic_xxx based code. This stuff needs some serious testing love. Especially if threads are actively used. git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1404 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add missing channel names (fixes a segfault when parsing invalid channel maps)Lennart Poettering2006-09-071-0/+16
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1378 fefdeb5f-60dc-0310-8127-8f9354f1896f
* don't hit an assert in the client if posix shm is not availableLennart Poettering2006-09-061-2/+14
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1376 fefdeb5f-60dc-0310-8127-8f9354f1896f
* port the threaded mainloop to our new abstract mutex/thread APILennart Poettering2006-09-041-288/+43
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1369 fefdeb5f-60dc-0310-8127-8f9354f1896f
* increase operation timeoutLennart Poettering2006-08-271-1/+1
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1336 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Proceed with connect even when no cookie is loaded. Allows you to connectPierre Ossman2006-08-221-6/+2
| | | | | | | to server which do not require a cookie under all circumstances. git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1324 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Fix call to pa_pstream_send_tagstruct().Pierre Ossman2006-08-221-1/+1
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1308 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Add an ifdef for when we do not have creds.Pierre Ossman2006-08-221-1/+3
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1307 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add default "disable-shm" option to client.confLennart Poettering2006-08-191-0/+3
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1285 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add new "disable-shm" option to client.confLennart Poettering2006-08-193-2/+6
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1284 fefdeb5f-60dc-0310-8127-8f9354f1896f
* enable SHM support on the client side only if both the client and the server ↵Lennart Poettering2006-08-182-8/+24
| | | | | | run as the same user and the server supports it git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1278 fefdeb5f-60dc-0310-8127-8f9354f1896f
* remove all occurences of Lennart Poettering2006-08-187-17/+17
| | | | | | | | | | | | pa_logXXX(__FILE__": and replace them by pa_logXXX(" git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1272 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Rework memory management to allow shared memory data transfer. The central ideaLennart Poettering2006-08-183-8/+9
| | | | | | | | | | | | | | | is to allocate all audio memory blocks from a per-process memory pool which is available as read-only SHM segment to other local processes. Then, instead of writing the actual audio data to the socket just write references to this shared memory pool. To work optimally all memory blocks should now be of type PA_MEMBLOCK_POOL or PA_MEMBLOCK_POOL_EXTERNAL. The function pa_memblock_new() now generates memory blocks of this type by default. git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1266 fefdeb5f-60dc-0310-8127-8f9354f1896f
* modify pa_bytes_snprint() to return the string we just wrote to. This should ↵Lennart Poettering2006-08-172-2/+4
| | | | | | be binary compat with older versions which returned void git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1259 fefdeb5f-60dc-0310-8127-8f9354f1896f
* implement pa_context_move_source_output_by_{name,index}()Lennart Poettering2006-08-032-0/+56
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1184 fefdeb5f-60dc-0310-8127-8f9354f1896f
* bump API and protocol version. Return PA_ERR_NOTSUPPORTED if ↵Lennart Poettering2006-08-012-0/+3
| | | | | | pa_context_move_sink_input_by_*()is called for servers that don't support it git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1179 fefdeb5f-60dc-0310-8127-8f9354f1896f
* wrap PA_COMMAND_MOVE_SINK_INPUT for libpulseLennart Poettering2006-07-312-0/+53
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1177 fefdeb5f-60dc-0310-8127-8f9354f1896f
* don't hit an assetr if there are operations outstanding when the pa_context ↵Lennart Poettering2006-07-291-0/+4
| | | | | | is destroyed git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1171 fefdeb5f-60dc-0310-8127-8f9354f1896f
* fix calculation of pa_usec_to_bytes, to make sure that it never returns ↵Lennart Poettering2006-07-291-1/+1
| | | | | | fractions of a frame size git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1165 fefdeb5f-60dc-0310-8127-8f9354f1896f
* remove superfluous codeLennart Poettering2006-07-271-43/+0
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1155 fefdeb5f-60dc-0310-8127-8f9354f1896f
* remove two superfluous linesLennart Poettering2006-07-261-3/+0
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1154 fefdeb5f-60dc-0310-8127-8f9354f1896f
* mainloop fixes: when disabling time events when dispatching them, make sure ↵Lennart Poettering2006-07-262-2/+12
| | | | | | to adjust the cache time event and enabled time event counters git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1153 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Results of profiling PulseAudio with valgrind's callgrind module: rework the ↵Lennart Poettering2006-07-251-194/+353
| | | | | | default event loop implementation to use PA_LLIST_xxx instead of pa_idxset; don't generate weakeup events if we aren't in STATE_POLLING; minimize dispatching of io events; cache next time event instead of traversing the list of time events on every event loop iteration; other optimizations git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1148 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add a few more g_assert()s and change all assert()s to g_assert()sLennart Poettering2006-07-251-52/+73
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1145 fefdeb5f-60dc-0310-8127-8f9354f1896f
* fix horribly broken glib timeout event handlingLennart Poettering2006-07-221-7/+5
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1138 fefdeb5f-60dc-0310-8127-8f9354f1896f
* remove access group setting from default client.confLennart Poettering2006-07-201-3/+0
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1133 fefdeb5f-60dc-0310-8127-8f9354f1896f
* remove configurable client access group, since can never work on Linux ↵Lennart Poettering2006-07-203-11/+1
| | | | | | anway, since SCM_CREDENTAILS doesn't allow sending supplementary GIDs git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1127 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Make -1 mean "current group/user" so that some platform dependent callsPierre Ossman2006-07-201-1/+1
| | | | | | | can be centralised. git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1113 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Protect platform dependent headers with ifdefs.Pierre Ossman2006-07-201-2/+3
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1112 fefdeb5f-60dc-0310-8127-8f9354f1896f
* * add new function pa_check_in_group()Lennart Poettering2006-07-192-8/+16
| | | | | | | | | | | | | * abstract credential APis a little bit by introducing HAVE_CREDS and a structure pa_creds * rework credential authentication * fix module-volume-restore and friends for usage in system-wide instance * remove loopback= argument from moulde-*-protocol-tcp since it is a superset of listen= and usually a bad idea anyway since the user shouldn't load the TCP module at all if he doesn't want remote access * rename a few variables in the jack modules to make sure they don't conflict with symbols defined in the system headers * add server address for system-wide daemons to the default server list for the the client libs * update todo git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1109 fefdeb5f-60dc-0310-8127-8f9354f1896f
* use access group dedclared in ~/.pulse/client.conf instead of PA_ACCESS_GROUPLennart Poettering2006-07-191-1/+1
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1108 fefdeb5f-60dc-0310-8127-8f9354f1896f
* update @@ tokens according to recent Makefile.am changeLennart Poettering2006-07-191-1/+7
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1107 fefdeb5f-60dc-0310-8127-8f9354f1896f
* * add new --system command line parameter to the daemon for running ↵Lennart Poettering2006-07-193-15/+30
| | | | | | | | | | | | PulseAudio as system-wide instance * add PA_ prefixes to all global #defines * modify auth-by-creds: define a new group "pulse-access" which is used for authentication * add proper privilige dropping when running in --system mode * create runtime directory once on startup and not by each module seperately git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1105 fefdeb5f-60dc-0310-8127-8f9354f1896f
* remove glib 1.2 adapter. It started to bitrot and wasn't used by anything ↵Lennart Poettering2006-07-182-508/+1
| | | | | | anyway. git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1104 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add two more \sinceLennart Poettering2006-07-181-2/+2
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1103 fefdeb5f-60dc-0310-8127-8f9354f1896f
* turn the glib adapter into a single GSource instead of creating a bunch of ↵Lennart Poettering2006-07-181-344/+444
| | | | | | seperate GSources for each event git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1101 fefdeb5f-60dc-0310-8127-8f9354f1896f
* define proper typdefs for callback prototypesLennart Poettering2006-07-181-20/+23
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1100 fefdeb5f-60dc-0310-8127-8f9354f1896f
* Restore SIGPIPE warning when the platform doesn't have MSG_NOSIGNAL.Pierre Ossman2006-07-171-0/+6
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1097 fefdeb5f-60dc-0310-8127-8f9354f1896f
* add new PA_SOURCE_HARDWARE/PA_SINK_HARDWARE flagLennart Poettering2006-07-161-2/+4
| | | | git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1091 fefdeb5f-60dc-0310-8127-8f9354f1896f
* remove checking for SIGPIPE blocking from client code. Because we useLennart Poettering2006-07-141-4/+0
| | | | | | | | | | | send(,,MSG_NOSIGNAL) for most socket writes now the reason for SIGPIPE blocking is no longer give. We keep this check for the server side however, because pipes create SIGPIPE too but cannot be used with MSG_NOSIGNAL. Some modules use pipes for internal and external communication. git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1086 fefdeb5f-60dc-0310-8127-8f9354f1896f
* try to use send(,,MSG_NOSIGNAL) instead of write() wherever possible (whichLennart Poettering2006-07-143-5/+7
| | | | | | | | | | will allow us to drop the SIGPIPE check). Cache the results of the last write()/send() to make sure that we do not issue more than necessary system calls. git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1083 fefdeb5f-60dc-0310-8127-8f9354f1896f
* * fall back to prctl(PR_GET_NAME) in pa_get_binary_name() if readlink() failsLennart Poettering2006-07-141-18/+45
| | | | | | | * call pa_path_get_filename() in all cases before returning in pa_get_binary_name(). We already did so on Win32, but didn't on Linux. git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1077 fefdeb5f-60dc-0310-8127-8f9354f1896f