alsa: rework mixer logic
authorLennart Poettering <lennart@poettering.net>
Wed, 17 Jun 2009 01:45:14 +0000 (03:45 +0200)
committerLennart Poettering <lennart@poettering.net>
Wed, 17 Jun 2009 01:45:14 +0000 (03:45 +0200)
commit31575f7766d6ff39665b64a3a04412eff1c39957
treedfb35a4918c8242a60d94120defd4e97beaff2c1
parente9c70ac41bb86b7778b67284d8a0cae51f6a9ed3
alsa: rework mixer logic

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.
54 files changed:
src/Makefile.am
src/modules/alsa/alsa-mixer.c [new file with mode: 0644]
src/modules/alsa/alsa-mixer.h [new file with mode: 0644]
src/modules/alsa/alsa-sink.c
src/modules/alsa/alsa-sink.h
src/modules/alsa/alsa-source.c
src/modules/alsa/alsa-source.h
src/modules/alsa/alsa-util.c
src/modules/alsa/alsa-util.h
src/modules/alsa/mixer/paths/analog-input-aux.conf [new file with mode: 0644]
src/modules/alsa/mixer/paths/analog-input-fm.conf [new file with mode: 0644]
src/modules/alsa/mixer/paths/analog-input-linein.conf [new file with mode: 0644]
src/modules/alsa/mixer/paths/analog-input-mic-line.conf [new file with mode: 0644]
src/modules/alsa/mixer/paths/analog-input-mic.conf [new file with mode: 0644]
src/modules/alsa/mixer/paths/analog-input-mic.conf.common [new file with mode: 0644]
src/modules/alsa/mixer/paths/analog-input-tvtuner.conf [new file with mode: 0644]
src/modules/alsa/mixer/paths/analog-input-video.conf [new file with mode: 0644]
src/modules/alsa/mixer/paths/analog-input.conf [new file with mode: 0644]
src/modules/alsa/mixer/paths/analog-input.conf.common [new file with mode: 0644]
src/modules/alsa/mixer/paths/analog-output-headphones.conf [new file with mode: 0644]
src/modules/alsa/mixer/paths/analog-output-lfe-on-mono.conf [new file with mode: 0644]
src/modules/alsa/mixer/paths/analog-output-mono.conf [new file with mode: 0644]
src/modules/alsa/mixer/paths/analog-output.conf [new file with mode: 0644]
src/modules/alsa/mixer/paths/analog-output.conf.common [new file with mode: 0644]
src/modules/alsa/mixer/profile-sets/default.conf [new file with mode: 0644]
src/modules/alsa/mixer/samples/ATI IXP--Realtek ALC655 rev 0 [new file with mode: 0644]
src/modules/alsa/mixer/samples/Brooktree Bt878--Bt87x [new file with mode: 0644]
src/modules/alsa/mixer/samples/Ensoniq AudioPCI--Cirrus Logic CS4297A rev 3 [new file with mode: 0644]
src/modules/alsa/mixer/samples/HDA ATI HDMI--ATI R6xx HDMI [new file with mode: 0644]
src/modules/alsa/mixer/samples/HDA Intel--Analog Devices AD1981 [new file with mode: 0644]
src/modules/alsa/mixer/samples/HDA Intel--Realtek ALC889A [new file with mode: 0644]
src/modules/alsa/mixer/samples/Intel 82801CA-ICH3--Analog Devices AD1881A [new file with mode: 0644]
src/modules/alsa/mixer/samples/Logitech USB Speaker--USB Mixer [new file with mode: 0644]
src/modules/alsa/mixer/samples/USB Audio--USB Mixer [new file with mode: 0644]
src/modules/alsa/mixer/samples/USB Device 0x46d:0x9a4--USB Mixer [new file with mode: 0644]
src/modules/alsa/mixer/samples/VIA 8237--Analog Devices AD1888 [new file with mode: 0644]
src/modules/alsa/mixer/samples/VIA 8237--C-Media Electronics CMI9761A+ [new file with mode: 0644]
src/modules/alsa/module-alsa-card.c
src/modules/bluetooth/module-bluetooth-device.c
src/modules/bluetooth/module-bluetooth-proximity.c
src/modules/module-ladspa-sink.c
src/modules/module-lirc.c
src/modules/module-mmkbd-evdev.c
src/modules/module-tunnel.c
src/modules/udev-util.c
src/modules/udev-util.h
src/pulsecore/cli-command.c
src/pulsecore/cli-text.c
src/pulsecore/protocol-native.c
src/pulsecore/sink-input.c
src/pulsecore/sink.c
src/pulsecore/sink.h
src/pulsecore/source.c
src/pulsecore/source.h