Commit graph

1237 commits

Author SHA1 Message Date
Lennart Poettering
a8519d5667 add "disable-shm=" to default daemon configuration file
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1287 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-19 01:20:40 +00:00
Lennart Poettering
dbc658df41 add new "disable-shm" server config option
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1286 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-19 01:20:13 +00:00
Lennart Poettering
c9b6d55090 add default "disable-shm" option to client.conf
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1285 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-19 01:18:57 +00:00
Lennart Poettering
d785b8fa87 add new "disable-shm" option to client.conf
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1284 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-19 01:18:30 +00:00
Lennart Poettering
206ac6f3ee allow importing of external shm data blocks unconditionally, even when local SHM support is disabled
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1283 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-19 01:16:38 +00:00
Lennart Poettering
046bdd9b30 deal properly with pa_mempool_new() failing
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1282 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-19 01:15:48 +00:00
Lennart Poettering
8c9bdb838c fix allocation of anonymous memory
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1281 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-19 01:15:22 +00:00
Lennart Poettering
c2db5f8864 fix a memory leak
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1280 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-19 01:14:59 +00:00
Lennart Poettering
c979b87fea update todo
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1279 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 23:45:57 +00:00
Lennart Poettering
40875d6d05 enable SHM support on the client side only if both the client and the server 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
2006-08-18 23:45:23 +00:00
Lennart Poettering
e33abc3089 activate SHM support on the server side only when new client supports it and when client and server have the same UID.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1277 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 23:44:35 +00:00
Lennart Poettering
c313b23d5f one s/0/NULL/
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1276 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 23:43:27 +00:00
Lennart Poettering
7ac79098a6 remove export/import objects when SHM is disable for a pa_pstream object
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1275 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 23:42:14 +00:00
Lennart Poettering
fd3fe96ce5 add new function pa_mempool_is_shared() to test whether a memory pool is suitable for SHM data transfers
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1274 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 23:40:48 +00:00
Lennart Poettering
7e01b1c5bd hide memblock-test
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1273 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 21:39:32 +00:00
Lennart Poettering
e385d93e5a remove all occurences of
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
2006-08-18 21:38:40 +00:00
Lennart Poettering
1bc62d5ec6 rework logging subsystem, to implicitly include __FILE__ in pa_log() calls. In addition we now record the line numbers and function names of pa_log calls. However, those are only shown If $PULSE_LOG_META is set.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1271 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 21:26:01 +00:00
Lennart Poettering
666eca38b9 update todo
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1270 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 19:57:53 +00:00
Lennart Poettering
8ebef4d00f look for shm_open in -lrt
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1269 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 19:57:19 +00:00
Lennart Poettering
35caf0c4ea add new test memblock-test for testing SHM import/export
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1268 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 19:56:51 +00:00
Lennart Poettering
c3fc2eaa7e update tests for new memory manager
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1267 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 19:56:11 +00:00
Lennart Poettering
0e436a6926 Rework memory management to allow shared memory data transfer. The central idea
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
2006-08-18 19:55:18 +00:00
Lennart Poettering
ff48681aae add abstracted shared memory API
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1265 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 19:46:20 +00:00
Lennart Poettering
20d0823e35 fix a bad type cast
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1264 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 19:45:19 +00:00
Lennart Poettering
dfa17b9f36 cleanup hashmap.[ch] a little: use hash/compare func prototypes defined in idxset.h, add pa_hashmpa_{get,steal}_first
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1263 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 19:43:46 +00:00
Lennart Poettering
8be0cf6007 cleanup idxset.[ch] a little: define proper types for the hash/compare funcs, do ptr->int/int->ptr conversions with clean macros
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1262 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 19:42:14 +00:00
Lennart Poettering
c3df1ceb38 fix a PA_LLIST_HEAD_INIT invocation
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1261 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-17 20:03:38 +00:00
Lennart Poettering
a847f74ed0 add missing #include
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1260 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-17 20:03:09 +00:00
Lennart Poettering
d89066036b modify pa_bytes_snprint() to return the string we just wrote to. This should 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
2006-08-17 20:02:46 +00:00
Lennart Poettering
99db0672c7 make PA_LLIST_HEAD_INIT thread safe
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1258 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-17 20:01:04 +00:00
Lennart Poettering
1c3bfc44dc use the description field of sinks/sources to name the zeroconf services, instead of the logical name
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1257 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-15 18:15:00 +00:00
Pierre Ossman
6c39af7ad3 update todo
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1256 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-14 08:38:07 +00:00
Lennart Poettering
5d8d916474 update todo
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1255 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 20:45:54 +00:00
Lennart Poettering
2bf4653713 extend module-rescue-streams to move also source outputs when a source dies
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1254 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 20:45:19 +00:00
Lennart Poettering
3334814ebb fix a segfault when registering a service with avahi fails
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1253 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 20:44:32 +00:00
Lennart Poettering
cdb173f6ab create rtp source output on correct source
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1252 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 20:44:00 +00:00
Lennart Poettering
d182a0b1cb minor optimization
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1251 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 20:43:22 +00:00
Lennart Poettering
a75e1ed9ef implement hook_source_ouput_new. For this I modified the pa_source_output_new constructor to take a struct similar to what I already did for pa_sink_input_new()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1250 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 19:55:17 +00:00
Lennart Poettering
e0f7e8614c split a validity check into two
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1249 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 19:53:35 +00:00
Lennart Poettering
79cb80c574 implement hook_source_disconnect
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1248 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 19:53:18 +00:00
Lennart Poettering
8f91b1f4c4 define new hooks: hook_source_output_new, hook_source_disconnect
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1247 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 19:52:43 +00:00
Lennart Poettering
a09a49e41b update todo
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1246 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 17:39:19 +00:00
Lennart Poettering
a7b9a7d599 Load module-rescue-streams by default
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1245 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 17:35:46 +00:00
Lennart Poettering
dd87061153 implement new module "module-rescue-streams" which moves sink inputs away when their sink is removed.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1244 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 17:34:36 +00:00
Lennart Poettering
8180832898 properly implement a pa_sink_disconnect() hook
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1243 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 17:33:32 +00:00
Lennart Poettering
87e64d5845 Clean up module description a little
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1242 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 17:32:35 +00:00
Lennart Poettering
abbabd848a ignore if we recieved a memory block for an invalid stream, since this might happen unwillingly due to the asychnronous nature of the protocol
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1241 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 17:31:58 +00:00
Lennart Poettering
72cf2118df remove pa_sink_input::variable_rate field since it has been folded into pa_sink_input::flags
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1240 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 17:30:51 +00:00
Lennart Poettering
3beef50639 hide hook-list-test
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1239 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 16:22:20 +00:00
Lennart Poettering
b37ad1ffd3 modify module-volume-restore to change the initial volume of a sink input from a hook instead of an asyncronous subscription event.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1238 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 16:21:20 +00:00