Commit graph

1120 commits

Author SHA1 Message Date
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
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
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
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
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
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
Lennart Poettering
3201aecea0 position-event-sounds: never position test sounds in space 2009-11-11 05:12:02 +01:00
Lennart Poettering
833bf30cb9 alsa: disable period event only with tsched=1 2009-11-11 05:11:49 +01:00
Tor-Björn Claesson
c15bd97282 loopback: Setting latency of module-loopback
I checked the source code, and latency_msec is missing from the list
of valid module arguments. Attaching a patch to add it.
2009-11-11 05:11:32 +01:00
Lennart Poettering
df4937045d bluetooth: don't set auto_connect flag when discovering bt devices 2009-11-11 05:11:07 +01:00
Lennart Poettering
d06f2eaf30 reserve: downgrade reserve logic messages, so that reusing pa in two sessions does not create spew in syslog 2009-09-28 19:54:37 -07:00
Colin Guthrie
c194db71b0 tunnel: fix parsing of source info from newer servers 2009-09-20 21:36:14 +01:00
Emil Renner Berthing
592345fd36 tunnel: fix parsing of sink info from newer servers 2009-09-20 21:28:49 +01:00
Colin Guthrie
cc6932c4c8 stream-restore: Comment fix 2009-09-20 18:51:20 +01:00
Lennart Poettering
88b777311d alsa: make build gcc clean on 32bit 2009-09-20 03:17:36 +02:00
Lennart Poettering
56e1290ef6 gconf: run the wrapper script when running gconf-helper from build tree 2009-09-18 23:31:54 +02:00
Colin Guthrie
fd25e8fa8b alsa: Give all ports a human name to allow UI tools to present the choice to users. 2009-09-18 09:22:23 +01:00
Colin Guthrie
0323e48fdc rtp: Remove 'fix me' comment after it was actually fixed in [56b6e1]
That's what you get for applying your stash without fully checking if anything else was committed in the mean time :p
2009-09-18 09:18:13 +01:00
Lennart Poettering
a37e48a819 alsa: fix Surround mixer element name
s/Sourround/Surround/

Spotted by Colin Guthrie
2009-09-18 04:14:36 +02:00
Colin Guthrie
56b6e18030 rtp: Factor out direct io writing and use ioline instead.
This is how things should have worked orinally, but I obviously misunderstood things a bit.
This seems to prevent the random hangups that were happening previously :)
2009-09-18 00:22:01 +01:00
Colin Guthrie
94d20a59fa raop: Use pa_module_unload_request_by_index as per module-zeroconf-discover 2009-09-18 00:22:01 +01:00
Lennart Poettering
3de5c49e42 cli: properly destruct cli object 2009-09-17 04:04:54 +02:00
Lennart Poettering
b4d4f2b856 cli: don't accidentaly set O_NDELAY on stderr
Loading module-cli could have the effect of setting O_NDELAY on stderr,
because it was just a dup'ed fd of stdin which module-cli sets O_NDELAY
for and which flag is shared between all dupes.

Instead of using stdin/stdout directly we now open a new file descriptor
for the controlling terminal, which is equally useful as stdin/stdout
but gives a new file that does not share O_NDELAY with stdin/stdout.

This solves a problem where when running pulseaudio -C resulted in
log output being truncated since stdio does not really handle O_NDELAY
that well in on its fds.
2009-09-17 03:59:25 +02:00
Lennart Poettering
add4cbf2f3 position-event-sounds: don't warn that loud about vpos/hpos out of range 2009-09-17 02:04:59 +02:00
Vladimir Kokarev
e63c867f87 alsa: correct assumptions about channels an element lacks
If an element does not control some channels assume they are 0dB in
comparison to the other elements, i.e. do not influence the volume at
all. Previously we were assuming they were as high as the highest of the
channels we do control.
2009-09-17 01:26:18 +02:00
Lennart Poettering
180ef1eebd position-event-sounds: apply volume factor after, not before resampling 2009-09-11 03:27:38 +02:00
Lennart Poettering
6fa2445e11 position-event-sounds: honour window position if set, position both vertically and horizontally 2009-09-11 02:32:21 +02:00
Lennart Poettering
80b4457476 alsa: properly report suspension error codes 2009-09-11 01:22:10 +02:00
Lennart Poettering
bb36bb4bbe alsa: properly convert sample buffer sizes 2009-09-11 01:21:46 +02:00
Lennart Poettering
d5f43bd4c6 alsa: disable tsched for software devices before we configure the buffer metrics so that we don't accidently set a buffer size that is suitable for tsched where we don't use tsched 2009-09-09 23:57:49 +02:00
Lennart Poettering
8364b959b4 alsa: when probing for profiles configure buffer/period sizes since some broken drivers apparently need that 2009-09-09 23:56:51 +02:00