Commit graph

5099 commits

Author SHA1 Message Date
Colin Guthrie
d69eba34e2 device-manager: Remove unneeded logic for checking for and (un)loading module-stream-restore. We can co-exist 2009-11-11 17:44:24 +00:00
Colin Guthrie
a0567fb41b device-manager: Rough framework (slots etc.) for handling routing.
This is incomplete, it just adds the slots in question and assigns noops to them.
Some minor cleanup of types.

Due to the priority of the hooks, it seems we can actually coexist with module-stream restore so
the code to detect and unload it will be removed shortly.
2009-11-11 17:44:24 +00:00
Colin Guthrie
fd5a5084d8 device-manager: debug and comments 2009-11-11 17:44:24 +00:00
Colin Guthrie
2b714801c1 device-manager: Fix the freeing of the datum on prefer/defer.
Also fix a log typo
2009-11-11 17:44:24 +00:00
Colin Guthrie
0541028797 device-manager: When a new device is encountered, initialise the priority list to an appropriate value 2009-11-11 17:44:23 +00:00
Colin Guthrie
5e3f1c2363 device-manager: Let subscribed clients know when something changes. 2009-11-11 17:44:23 +00:00
Colin Guthrie
6d4afac194 device-manager: Change the write function to a rename function.
The structure itself will contain various bits of info so exposing this fully to the client is a bad idea.
By keeping to a rename operation we keep what we do store abstracted from the clients.

Also fix some doxy comments.
2009-11-11 17:44:23 +00:00
Colin Guthrie
4981268738 device-manager: Provide a method for prefering/defering a device.
This allows clients to edit the priroity order. What is not yet in place is the initialisation of that priority list
when new devices are detected or the cleaning (remove holes) when devices are removed.

In order to keep the storage transparent I will likely remove the write functionality and replace it with a
simple rename method.

I also still need to expose the priority itself when reading the data.
2009-11-11 17:44:23 +00:00
Colin Guthrie
a9bd1ab69c device-manager: Fix copy+paste code that looped over the tagstruct when not necessary 2009-11-11 17:44:23 +00:00
Colin Guthrie
c1ece6ce85 device-manager: Provide a way for clients to enable/disable role-based device-priority routing.
The routing logic itself does not yet exist, but the command currently will unload/load module-stream-restore as approriate.
(module-stream-restore would conflict with the role-based priority-routing).
2009-11-11 17:44:23 +00:00
Colin Guthrie
25f054582f device-manager: Update docs version -> 0.9.19 (predicted) 2009-11-11 17:44:23 +00:00
Colin Guthrie
bddebbf7f4 device-manager: Fix copy+paste leftover 2009-11-11 17:44:22 +00:00
Colin Guthrie
58bc037884 device-manager: Only store and save details for non-monitor sources 2009-11-11 17:44:22 +00:00
Colin Guthrie
276e9534b5 device-restore: Fix the application of an entry to allow changing the name of devices.
This fixes a few bugs in the copy+pasted implementation of apply_entry()/get_name().
2009-11-11 17:44:22 +00:00
Colin Guthrie
b8b28ef57e device-manager: Fix tagstruct description extraction (copy+paste blunder) 2009-11-11 17:44:22 +00:00
Colin Guthrie
89c1f57a93 device-manager: Link native protocol library. 2009-11-11 17:44:22 +00:00
Colin Guthrie
11f01de178 device-manager: Export device-manager extension functions 2009-11-11 17:44:22 +00:00
Colin Guthrie
97eb065c8a device-manager: Fix indentation 2009-11-11 17:44:22 +00:00
Colin Guthrie
0f6ace75c9 device-manager: Add an untested protocol extension.
This is effectively copied from the stream restore extension.
2009-11-11 17:44:22 +00:00
Colin Guthrie
4c68fe7b9f device-manager: Add a new module to keep track of the names and descriptions of various sinks.
This will be used as the basis for a queryable system for past and present devices, initially for use in KDE.
Currently all this module does is save lists of sinks/sources and their descriptions, so it needs to
gain a protocol extension to make this queryable.

As things stand it will save the device descriptions of all sinks and restore them if they differ from whats on record.
2009-11-11 17:44:22 +00:00
Lennart Poettering
a79585e042 i18n: fix LINGUAS 2009-11-11 05:38:39 +01:00
Lennart Poettering
5471643b78 Merge remote branch 'origin/master-tx' into 0.9.19-stable 2009-11-11 05:37:28 +01:00
Lennart Poettering
de2654c4e4 daemon: add missing tty_fd definition 2009-11-11 05:36:47 +01:00
Lennart Poettering
bff94c192d build-sys: bump soname 2009-11-11 05:32:24 +01:00
Lennart Poettering
2c12df9001 core: make cpuid code compile cleanly with 32bit PIC 2009-11-11 05:27:19 +01:00
Lennart Poettering
ed5af775b1 core: adjust volume only when there is actually a memory block
Fixes an assert that is hit in somne niche cases:

https://bugzilla.redhat.com/show_bug.cgi?id=533482
2009-11-11 05:27:10 +01:00
Wim Taymans
9ad567167e protocol: use the right sample rate for sources
Use the correct sample rate for reporting about the timing.
2009-11-11 05:27:04 +01:00
Lennart Poettering
409a9d01cd jack: never try to autoconnect to MIDI ports
Original patch supplied by 'adi'

http://pulseaudio.org/ticket/669
2009-11-11 05:26:56 +01:00
Lennart Poettering
75f3b195c3 man: fix build with --disable-manpages
http://pulseaudio.org/ticket/698
2009-11-11 05:26:48 +01:00
Lennart Poettering
3b25302554 alsa: disable timer-based scheduling inside a VM
In virtual machines sound card clocks and OS scheduling tend to become
unreliable, adding various 'uneven' latencies. The adaptive algorithm
that handles drop-outs does not handle it this well: in contrast to
drop-outs on real machines that are evenly distributed, small and can
easily be encountered via the adpative algorithms, drop-outs in VMs tend
to happen abruptly, and massively, which is not easy to counter.

This patch simply disables timer based scheduling in VMs reverting to
classic IO based scheduling. This should help make PA perform better in
VMs.

https://bugzilla.redhat.com/show_bug.cgi?id=532775
2009-11-11 05:26:36 +01:00
Lennart Poettering
5da0297744 daemon: during startup say whether we run in a VM 2009-11-11 05:26:30 +01:00
Lennart Poettering
1460374c06 core-util: add call to detect if we are called from within a VM 2009-11-11 05:26:16 +01:00
Lennart Poettering
b47a9e7ea4 alsa: introduce more standard path names 2009-11-11 05:17:52 +01:00
Lennart Poettering
ab573f2e06 alsa: cover 'Analog Output' control
http://pulseaudio.org/ticket/702
2009-11-11 05:17:39 +01:00
Lennart Poettering
4323c9f22f alsa: create a seperate mixer path for Speaker elements
On some cards line-out is independant of Sepaker and it is a good idea
to cover that so that they can independantly be activated.

https://bugzilla.redhat.com/show_bug.cgi?id=520884
2009-11-11 05:17:32 +01:00
Lennart Poettering
8a26fbf863 alsa: leave other headphone control enabled if possible 2009-11-11 05:17:26 +01:00
Lennart Poettering
08d0654867 alsa: lower priority for Headphone2 path 2009-11-11 05:17:19 +01:00
Lennart Poettering
18018b3ff3 alsa: cover Input Source:AUX IN
As seen on some HDA chips:

https://bugzilla.redhat.com/attachment.cgi?id=359804
2009-11-11 05:17:12 +01:00
Lennart Poettering
d711caa38c alsa: cover Headphone2 mixer element
As seen on some drivers:

https://bugzilla.redhat.com/show_bug.cgi?id=498612
2009-11-11 05:17:06 +01:00
Lennart Poettering
82d7b75528 alsa: cover 'Digital Input Source' element
As used by some HDA devices:

https://bugzilla.redhat.com/attachment.cgi?id=365290
2009-11-11 05:17:00 +01:00
Lennart Poettering
6fad76558d alsa: cover Mic Jack Mode element
As used by some HDA chips:

https://bugzilla.redhat.com/attachment.cgi?id=366816
2009-11-11 05:16:53 +01:00
Lennart Poettering
70da8d65d4 bluetooth: do not hand out access to devices that are not fully configured yet 2009-11-11 05:15:40 +01:00
David Yoder
bfb17357cd daemon: realpath segfault fix
Lennart,

Apparently I was debugging this at the same time as you. I can't figure out
why my Fedora 11 install with glibc-2.10 has a glibc realpath that doesn't
match the gnu documentation and returns null. But it does.

Your commit aa8ce5bb9b almost fixed my
problem, but it needs a tweak.

Thanks,
David Yoder
2009-11-11 05:15:30 +01:00
Wim Taymans
973a4ebdba sink: simplify silence checks 2009-11-11 05:14:56 +01:00
Lennart Poettering
320d76f158 daemon: don't crash if pa_realpath() fails 2009-11-11 05:14:44 +01:00
Lennart Poettering
732b468d66 protocol-native: if a client set volume/mute/device store it since it is user input 2009-11-11 05:14:04 +01:00
Lennart Poettering
3dcdab6e8d libpulse: explain semantics of pa_stream_connect_playback() in more detail 2009-11-11 05:13:47 +01:00
Lennart Poettering
0c31723a8b protocol-native: declare that user configured volumes are always absolute 2009-11-11 05:13:28 +01:00
Lennart Poettering
84e77cb13d libpulse: add missing includes 2009-11-11 05:12:45 +01:00
Diego Elio 'Flameeyes' Pettenò
8d612d5142 Fix build when using -fweb, accept both register and memory constraints.
This was reported as Gentoo bug #287391 by Torsten Kaiser, and the fix was
suggested by Mike Frysinger.
2009-11-11 05:12:28 +01:00