Lennart Poettering
c7fff97782
move alsa and oss modules into their own subdirectories
2009-01-15 21:02:01 +01:00
Lennart Poettering
bae221cca9
rework module usage counter stuff to be pull based
2009-01-15 20:49:12 +01:00
Lennart Poettering
d2757c9842
redirect folks to the ALSA developers not me when their sound drivers are broken
2009-01-15 19:16:55 +01:00
Lennart Poettering
407b4fe5be
fix calculation of avail_min
2009-01-14 00:06:40 +01:00
Lennart Poettering
c2002dcd1f
Merge branch 'master' of ssh://rootserver/home/lennart/git/public/pulseaudio
2009-01-08 21:18:15 +01:00
Lennart Poettering
e5c093897e
A few minor cleanups and updates
2009-01-08 21:13:18 +01:00
Lennart Poettering
c2450501af
Prefer mixer controls with volumes over switches
...
When we look for a mixer control prefer controls that have both volume
and a mute switch over those that have only a volume switch over those
that only have a mute switch.
Originally pointed out by Adel Gadllah.
2009-01-08 01:03:42 +01:00
Lennart Poettering
fb4c111d18
Implement base_volume for ALSA sinks/sources
2008-12-24 00:57:37 +01:00
Lennart Poettering
3294c89adb
warn if ALSA wakes us up and there is actually nothing to do
2008-10-22 23:55:52 +02:00
Lennart Poettering
ef9f3f6ec4
Try to catch certain driver errors
...
... by verifying return values of snd_pcm_avail_update() and
snd_pcm_begin_mmap() for their sanenness.
2008-10-21 20:00:36 +02:00
Lennart Poettering
068afb3478
define 0dB in PA as maximum amplification
2008-10-08 04:02:10 +02:00
Lennart Poettering
a9c1bb3e85
substract the unused record buffer size from the overall size before calculating the space still left for recording
2008-10-04 02:13:39 +02:00
Lennart Poettering
83b1d7a305
get rid of pa_alsa_volume_divide() since we have pa_sw_volume_divide() now
2008-10-04 01:48:13 +02:00
Lennart Poettering
3853070a21
don't hit an assert if a kernel driver reports invalid dB information, instead just warn the user
2008-10-01 04:15:05 +02:00
Lennart Poettering
99acad7782
fix support for ALSA devices which lack dB information
2008-10-01 03:26:45 +02:00
Lennart Poettering
7923731e18
use TRUE for pa_bool_t arguments
2008-09-29 21:36:42 +02:00
Lennart Poettering
0deb6a4b13
minor improvements in debug handling
2008-09-09 02:17:01 +03:00
Lennart Poettering
3a46bbeba5
When returning from a suspend, pass exactly the same flags as originally when
...
we opened the device.
2008-09-09 00:10:54 +03:00
Lennart Poettering
12c5c62dad
Downgrade hrtimer warning to notice level
2008-09-05 00:38:52 +02:00
Lennart Poettering
b7026bf248
add a few more gcc warning flags and fix quite a few problems found by doing so
2008-08-19 22:39:54 +02:00
Lennart Poettering
5cc2187bec
add some code to make invalid valgrind warnings go away
2008-08-18 19:55:55 +02:00
Lennart Poettering
8a10eba744
extend hardware dB scale in software to full range if necessary, instead of reverting back to software-only volume control
2008-08-13 13:59:06 +02:00
Lennart Poettering
8ca254c490
fix two uninitialized memory accesses
2008-08-11 19:46:11 +02:00
Lennart Poettering
8ae83d618e
get rid of svn $ keywords
2008-06-18 23:23:21 +03:00
Lennart Poettering
7d0b5958a4
use pa_source_set_latency_range()/pa_sink_set_latency_range() in the ALSA drivers; fix sleep time calculation
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2460 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-05-17 09:57:45 +00:00
Lennart Poettering
045c1d602d
merge glitch-free branch back into trunk
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2445 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-05-15 23:34:41 +00:00
Lennart Poettering
7462ab1aca
Rework ALSA mixer channel detection code. This time we actually care about the channel names the ALSA mixer exports for us
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2055 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-11-13 23:42:15 +00:00
Lennart Poettering
d17bb53d3e
Completely rework ALSA device selection code: choose the device to open depending on the requested number of channels and channel map. In most cases it will now suffice to set default-channels=6 to enable 5.1 sound for all devices that support it
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2050 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-11-13 17:37:44 +00:00
Lennart Poettering
e313fe1b3d
tag modules that may only be loaded once at most especially, and enforce that in the module loader
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2043 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-11-09 18:25:40 +00:00
Lennart Poettering
7bfd1b2f01
make rtprio and nice level actually configurable
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2014 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-11-01 02:58:26 +00:00
Lennart Poettering
a67c21f093
merge 'lennart' branch back into trunk.
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1971 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-10-28 19:13:50 +00:00
Pierre Ossman
2b82336df2
Handle suspended alsa devices. Based on patch by ranma. ( closes #26 )
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1433 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-03-02 09:20:54 +00:00
Pierre Ossman
06211b7c8f
Add copyright notices to all relevant files. (based on svn log)
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1426 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-02-13 15:35:19 +00:00
Pierre Ossman
521daf6f0a
Huge trailing whitespace cleanup. Let's keep the tree pure from here on,
...
mmmkay?
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1418 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-01-04 13:43:45 +00:00
Pierre Ossman
8dc6214276
Revert r1404 and keep it on a development branch until it is fully tested.
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1409 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-11-06 13:06:01 +00:00
Lennart Poettering
d210ebbb09
rework memory block management to be thread-safe and mostly lock-free.
...
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
2006-09-26 23:50:56 +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
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
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
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
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
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
b91dd2381b
set is_hardware flag for a few hw plugins
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1092 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-16 17:28:41 +00:00
Lennart Poettering
84907e6716
fix segfault when module-alsa-source fails to load
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1049 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-06-20 21:23:10 +00:00
Lennart Poettering
f44ba09265
big s/polyp/pulse/g
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1033 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-06-19 21:53:48 +00:00
Lennart Poettering
64fa5b882f
* alsa-sink: if "PCM" is not found as mixer track name, fallback to "Master"
...
* alsa-source: if "Capture" is not found as mixer track name, fallback to "Mic"
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@993 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-05-30 22:48:17 +00:00
Lennart Poettering
bb820db4b5
* if an ALSA device doesn't support the channel count requested, use what ALSA suggests instead
...
* if an ALSA device doesn't support the sampling freq requested, use what ALSA suggests and resample if this deviates more than 10% from what we requested
* fix segfault freeing an unitialized mixer_fdl field
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@992 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-05-30 22:05:07 +00:00
Lennart Poettering
4413b89d7a
* split pa_cstrerror() into its own file polypcore/core-error.[ch]
...
* fix building of padsp
* remove a warning when compiling padsp.c
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@972 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-05-25 17:16:55 +00:00