summaryrefslogtreecommitdiffstats
path: root/src/modules/alsa
Commit message (Collapse)AuthorAgeFilesLines
* alsa: automatically decrease watermark after a time of stabilityLennart Poettering2009-08-242-68/+223
|
* alsa: increase interval between smoother updates exponentially for alsa ↵Lennart Poettering2009-08-232-7/+21
| | | | sources, following the scheme for sinks
* Merge commit 'wtay/optimize'Lennart Poettering2009-08-231-4/+22
|\
| * alsa-sink: reduce the amount of smoother updatesWim Taymans2009-08-201-4/+22
| | | | | | | | | | | | | | Exponentially increase the amount of time between smoother updates. We start with a 2ms interval and increase up to 200ms intervals. Smoother updates and the resulting linear regression take a fair amount of CPU so we want to reduce the amount of updates.
* | alsa: leave headphone jack enabled in normal mixer pathsLennart Poettering2009-08-213-6/+15
| |
* | adjust various data/library paths automatically if we are run from a build treeLennart Poettering2009-08-211-3/+13
|/
* sink: volume handling rework, new flat volume logicLennart Poettering2009-08-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | - We now implement a logic where the sink maintains two distinct volumes: the 'reference' volume which is shown to the users, and the 'real' volume, which is configured to the hardware. The latter is configured to the max of all streams. Volume changes on sinks are propagated back to the streams proportional to the reference volume change. Volume changes on sink inputs are forwarded to the sink by 'pushing' the volume if necessary. This renames the old 'virtual_volume' to 'real_volume'. The 'reference_volume' is now the one exposed to users. By this logic the sink volume visible to the user, will always be the "upper" boundary for everything that is played. Saved/restored stream volumes are measured relative to this boundary, the factor here is always < 1.0. - introduce accuracy for sink volumes, similar to the accuracy we already have for source volumes. - other cleanups.
* udev: allow passing of ignore_dB= parameter to alsa modulesLennart Poettering2009-08-191-13/+24
|
* source: rework volume handlingLennart Poettering2009-08-191-13/+24
| | | | | | | | | | | | | - drop the 'virtual_' prefix from s->virtual_volume since we don't distuingish between reference and real volumes for sources - introduce an accuracy for source volumes: if the hardware can control the volume "close enough" don't necessarily adjust the rest in software unless it is beyond a certain threshold. This should save a little bit of CPU at the expensive of a bit of accuracy in volume handling. - other minor cleanups
* log: place more rate limit invocationsLennart Poettering2009-08-151-1/+2
|
* alsa: enable ext. amplifier by defaultLennart Poettering2009-08-121-2/+2
|
* alsa: adjust priority bonus of mappings that match the configured default ↵Lennart Poettering2009-08-121-2/+2
| | | | | | | | | | channel map We need to make sure that having both input and output weighs more for selecting the default profile than a channel map that matches the default channel map has. https://bugzilla.redhat.com/show_bug.cgi?id=496320
* alsa: properly treat ESTRPIPE as system suspendLennart Poettering2009-08-042-2/+5
|
* Recover stream when it's suspended upon rewindLubomir Rintel2009-08-031-1/+7
| | | | | | | | | | | | | Error from snd_pcm_rewind() might mean we just woke up from suspend and didn't have a chance to try to recover the stream since we didn't write to it in between. Call try_recover() in such cases. Note that for this to work kernel must return ESTRPIPE instead of EBADF for rewind/forward attempts on suspended streams, so that snd_pcm_recover() can recognize it should snd_pcm_resume() the stream. This is not the case yet (2.6.31-rc5), patch is available. Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
* alsa: revert to first set number of periods, then set buffer sizeLennart Poettering2009-07-311-26/+29
| | | | | | | Apparently some ALSA drivers aren't happy with getting the buffer size configured first followed the period size. So swap the order again and document this for future reference so that we don't turn that around again.
* alsa: throw timing data away after device resumeLennart Poettering2009-07-242-2/+8
|
* alsa: handle correctly if alsa returns us 0 or EAGAIN on snd_pcm_mmap_begin ↵Lennart Poettering2009-07-242-11/+39
| | | | if we didn't call snd_pcm_avail immediately before
* alsa: don't reset volume/mute when selecting pathLennart Poettering2009-07-231-2/+2
|
* build-sys: add a couple of stub MakefilesLennart Poettering2009-07-233-0/+3
|
* alsa: control 'Speaker' element as wellLennart Poettering2009-07-234-0/+22
|
* alsa: deal properly with IO functions asking us to write 0 bytesLennart Poettering2009-07-222-2/+12
|
* alsa: fix a few commentsLennart Poettering2009-07-011-2/+1
|
* Merge most of elmarco/rtclock2Lennart Poettering2009-06-223-21/+23
|\ | | | | | | Merge commit 'e4d914c945c13d23b131d7ba75fbdd03cb6d0043'
| * pulse: move pa_rtclock_now in pulsecommonMarc-André Lureau2009-06-203-9/+11
| |
| * perl -p -i -e 's/pa_rtclock_usec/pa_rtclock_now/g' `find . -name '*.[ch]'`Marc-André Lureau2009-06-192-12/+12
| |
* | core: get rid of rt sig/timer handling since modern Linux' ppooll() is ↵Lennart Poettering2009-06-192-2/+0
|/ | | | finally fixed for granularity
* alsa: synthesize volume values more sensibly for channels that are not ↵Lennart Poettering2009-06-191-3/+21
| | | | controllable in hw
* alsa: document alsa mixer path/profile sets a bit moreLennart Poettering2009-06-192-3/+23
|
* alsa: add copyright blobs and comments to all mixer paths/profile setsLennart Poettering2009-06-1919-62/+430
|
* alsa: move udev rules file behind the other sound related rulesLennart Poettering2009-06-181-0/+0
|
* alsa: document default profile set a bit betterLennart Poettering2009-06-181-17/+39
|
* alsa: add profile set for Native Instruments 4 DJLennart Poettering2009-06-182-0/+90
|
* alsa: unify alsa log handling and snd_config_update_free_global() handling ↵Lennart Poettering2009-06-187-20/+13
| | | | in one place
* alsa: merge mic boost into volume sliderLennart Poettering2009-06-181-0/+2
|
* alsa,core: include mapping name in description stringsLennart Poettering2009-06-181-9/+12
|
* alsa: add profile set for Native Instruments Audio 8 DJ sound cardLennart Poettering2009-06-182-0/+169
|
* alsa: properly count mappings of manually defined profilesLennart Poettering2009-06-181-0/+6
|
* alsa: fix duplicate mapping detectionLennart Poettering2009-06-181-2/+2
|
* alsa: when creating alsa sinks/sources include mapping name in device name ↵Lennart Poettering2009-06-182-6/+14
| | | | to allow profiles mit multiple sinks or multiple sources
* alsa: allow placing device id in alsa device strings at arbitrary positionsLennart Poettering2009-06-174-22/+22
|
* alsa: rework mixer logicLennart Poettering2009-06-1737-1590/+6471
| | | | | | | | | | | | Completely rework mixer logic. This now allows controlling a full set of elements from a single sink's volume slider/mute button. This also introduces sink and source "ports" that can be used to choose different input or output ports with the UI. (i.e. "mic"/"line-in" or "speaker"/"headphones". The mixer paths and device maps are now configered in external configuration files and can be tweaked as necessary.
* alsa: fix bad memory access for devices that lack a mixerLennart Poettering2009-06-101-1/+3
|
* core: make sure soft mute status stays in sync with hw mute statusLennart Poettering2009-06-082-2/+2
| | | | | | This should close rhbz #494851, mandriva bz #51234. Probably the same as our own #572, launchpad #352732.
* alsa: monitor device reservation status and resume automatically when device ↵Lennart Poettering2009-06-052-6/+124
| | | | becomes unused
* core: add a suspend cause flags fieldLennart Poettering2009-06-052-2/+2
|
* modules: add {sink|source|card}_properties argument to all modulesLennart Poettering2009-05-285-3/+31
|
* alsa: fix wording, we are speaking of card profiles, not output profilesLennart Poettering2009-05-261-1/+1
|
* alsa: be a bit more verbose when a hwparam call failsLennart Poettering2009-05-141-8/+37
|
* alsa: include mixer name in sink/source propertiesLennart Poettering2009-05-124-14/+63
|
* core: introduce pa_{sink,source}_set_fixed_latency()Lennart Poettering2009-05-082-4/+4
| | | | | This allows us to forward the fixed latency directly from the sink to the monitor source withut having to wait for pa_sink_put().