Commit graph

696 commits

Author SHA1 Message Date
Pierre Ossman
0249651c8e Log when there is a problem opening the waveOut/waveIn device.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1322 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-22 15:20:57 +00:00
Pierre Ossman
10bbc4b7c9 Fix detection of shared memory support and proper fallback.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1316 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-22 11:41:14 +00:00
Pierre Ossman
568c8ea715 Fix typo.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1315 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-22 11:39:19 +00:00
Pierre Ossman
eeabf63673 Add missing header.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1314 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-22 11:38:46 +00:00
Pierre Ossman
b5ef414ec8 Fix call to pa_memblock_new().
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1313 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-22 11:37:53 +00:00
Pierre Ossman
7bc71103fb Fix missing header for timeval helpers.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1311 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-22 07:25:45 +00:00
Pierre Ossman
1c320fe0b7 Fix calls to pa_memblock_new().
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1310 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-22 07:23:47 +00:00
Pierre Ossman
6e3d8af520 Add header for pa_cstrerror().
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1309 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-22 07:21:41 +00:00
Lennart Poettering
3dbc4ae973 restore the sink/source for a client in addition to the playback volume. This changes the file format of the table file. To avoid parse errors ~/.pulse/volume.table has been renamed to ~/.pulse/volume-restore.table
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1304 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-19 23:08:50 +00:00
Lennart Poettering
521d15babb fix a memory leak
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1290 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-19 02:23:11 +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
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
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
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
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
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
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
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
Lennart Poettering
a621d90285 allow hooking into the process of creating playback streams. To implement this I modified the pa_sink_input_new() signature to take a pa_sink_input_new_data structure instead of direct arguments.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1237 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 16:19:56 +00:00
Lennart Poettering
dbe6bdd2bc make use of pa_sink_used_by()/pa_source_used_by() wherever applicable
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1227 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 17:06:05 +00:00
Lennart Poettering
28f86ea698 name the sink/source after the device file, just like we already do for the non-mmaped driver
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1224 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 16:33:31 +00:00
Lennart Poettering
bf79e97591 generate default sink/source names from the device files they belong to
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1223 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 16:26:59 +00:00
Lennart Poettering
4c9c4269bb handle hot-remeving of OSS devices properly
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1221 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 16:02:26 +00:00
Lennart Poettering
3cfed301d9 print the device capabilities after opening the device
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1220 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 16:01:40 +00:00
Lennart Poettering
fbeeb8b70d when the requested sample format is not available for OSS devices, print a nice warning and take what we can get instead
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1219 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 15:09:49 +00:00
Lennart Poettering
c86890d5e7 * only load an OSS driver for the first device of a sound card, similar to what is done for ALSA.
* fix a mem leak


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1217 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 13:18:34 +00:00
Lennart Poettering
7fa0744806 fix a segfault in module-oss
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1216 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 13:17:33 +00:00
Lennart Poettering
2d702715f7 fix pa_gettimeofday() return value testing
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1215 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 12:07:22 +00:00
Shahms E. King
bb961569eb increase module argument buffer size to prevent truncating names
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1208 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 01:17:19 +00:00
Lennart Poettering
8da9b94af6 allow setting the null sink description by a module parameter
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1206 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 00:25:52 +00:00
Lennart Poettering
bfa6604b1d don't set the sink/source descriptions manually, use the new functions pa_{sink,source}_set_description() instead
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1205 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-11 23:58:55 +00:00
Lennart Poettering
bfff23db10 shorten sink/source device descriptions a little
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1201 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-11 17:14:35 +00:00
Lennart Poettering
1d7b8e1ba7 use the HAL UDI for naming input/output devices
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1200 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-11 17:12:54 +00:00
Lennart Poettering
e1316f5728 fix bad memory access and a leak when detructing ALSA fd lists
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1198 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-11 16:56:47 +00:00
Lennart Poettering
dcd3acc0b8 remove OSS specific code from module-hal-detect if HAVE_OSS is not set. Same for ALSA
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1195 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-11 16:29:46 +00:00
Lennart Poettering
7a4e1c9a0e ALSA: handle write()/read() errors properly by unloading the driver module. This should fix problems when removing USB audio device while pulseaudio is running.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1194 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-11 15:08:09 +00:00
Lennart Poettering
b0b968df00 change order of the ALSA event dispatch code to make sure that the code survives if the event dispatcher frees the ALSA client
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1193 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-11 15:06:03 +00:00
Lennart Poettering
59f1a67cb5 use the copied udi string as hash key for the device table, because the temporary one is freed when the function exits
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1192 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-11 15:05:02 +00:00
Shahms E. King
7ee7a23408 add HAL support for OSS devices and capability changes
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1191 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-08 19:26:06 +00:00
Shahms E. King
b382df5868 clean up hal patch to use pa_xnew and timeval compatibility wrappers
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1190 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-07 20:29:31 +00:00
Lennart Poettering
5d8ccfd839 try to reduce volume updates in the ALSA sinks/sources: only touch the shadowed hw volme if necessary
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1189 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-07 16:50:15 +00:00
Lennart Poettering
d953870564 * add SVN $Id$ tags
* add a const


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1188 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-06 19:14:07 +00:00
Lennart Poettering
050b73912c merge HAL support from Shams E. King
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1187 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-06 16:16:50 +00:00
Lennart Poettering
d7ee1bcf75 fix module-gconf initialization
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1172 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-29 17:42:25 +00:00
Lennart Poettering
fec7e9bec7 if possible do not unload already loaded modules when the gconf settings change. instead try to reuse already loaded modules as much as possible
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1157 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-27 16:51:20 +00:00
Lennart Poettering
87d4f0bd93 because gconf doesn't provide real transactions we emulate our own with a "locked" gconf key
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1156 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-27 16:50:26 +00:00
Lennart Poettering
b2ad9a9753 add some protection that the gconf helper process will be killed when the daemon process dies. make sure the gconf helper process doesn't keep open file descriptors belonging to the daemon; if gconf helper path
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1152 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-26 18:28:31 +00:00
Lennart Poettering
cc1d8213d6 add new module "module-gconf" which reads configuration information from gconf. this will be used in my upcoming paconf module
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1150 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-26 17:36:14 +00:00