Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | device-manager: Misc fixes. | Colin Guthrie | 2009-11-11 | 1 | -37/+47 |
| | | | | | | | | | | * Fix a s/sink/source/ copy paste issue when dumping the database. * Only show priority list when routing is enabled (as the list is not updated if not) * Fix a memory access issue when finding the highest priority sinks/sources * key name->device name efficiency fix. * Silence noisy debug on reorder - it seems to work :) * Reroute after reordering. * Initialise preferred lists to PA_INVALID_INDEX | ||||
* | device-manager: Fix the writing of the database when priority doesn't change. | Colin Guthrie | 2009-11-11 | 1 | -1/+3 |
| | |||||
* | device-manager: Add extra debug messages | Colin Guthrie | 2009-11-11 | 1 | -1/+19 |
| | |||||
* | device-manager: Change the prefer/defer options to a single 'reorder' command. | Colin Guthrie | 2009-11-11 | 1 | -82/+140 |
| | | | | | | We put in the devices from the wire into a hashmap and then add all like type device in the database and then order them based on priority (with the ones specified on the wire always being in that order at the top of the list. | ||||
* | device-manager: Don't notify clients on every subscription (it happens all ↵ | Colin Guthrie | 2009-11-11 | 1 | -6/+18 |
| | | | | | | the time). Also compare the entries fully before saving. | ||||
* | device-manager: Save icon and report current availability over protocol. | Colin Guthrie | 2009-11-11 | 1 | -17/+53 |
| | | | | | This also ensures we let clients know whenver a sink changes in some capacity. Also correct some debug code. | ||||
* | device-manager: Expose the priority lists in the protocol extension. | Colin Guthrie | 2009-11-11 | 1 | -37/+47 |
| | | | | Also leave space for 'icon' and 'available' details too, althought currently this info is dummy. | ||||
* | device-manager: Add a function to dump the database which we do whenever we ↵ | Colin Guthrie | 2009-11-11 | 1 | -15/+107 |
| | | | | save it (and on startup) | ||||
* | device-manager: Reroute streams when they change allowing the media.role to ↵ | Colin Guthrie | 2009-11-11 | 1 | -212/+243 |
| | | | | | | | be updated mid-stream. We do not handle the _EVENT_NEW subscription here as the PA_CORE_HOOK_SINK_INPUT_NEW/PA_CORE_HOOK_SOURCE_OUTPUT_NEW hook should handle the initial routing. | ||||
* | device-manager: Refactor the routing method to allow the routing of a single ↵ | Colin Guthrie | 2009-11-11 | 1 | -65/+80 |
| | | | | stream | ||||
* | device-manager: More sensible names for internal functions | Colin Guthrie | 2009-11-11 | 1 | -10/+8 |
| | |||||
* | device-manager: Reroute the streams on startup and update our cache on enable. | Colin Guthrie | 2009-11-11 | 1 | -10/+8 |
| | |||||
* | device-manager: Keep a cache of the highest priority devices for each role. | Colin Guthrie | 2009-11-11 | 1 | -47/+52 |
| | | | | Rather than querying our database on every new stream, we keep a cache and only update it when a sink/source is added/removed. | ||||
* | device-manager: Fix the database write mode | Colin Guthrie | 2009-11-11 | 1 | -3/+3 |
| | |||||
* | device-manager: Some efficiency and safety tweaks | Colin Guthrie | 2009-11-11 | 1 | -4/+9 |
| | |||||
* | device-manager: Allow the routing component to be turned on via a module ↵ | Colin Guthrie | 2009-11-11 | 1 | -12/+14 |
| | | | | argument as well as via protocol extn. | ||||
* | device-manager: Remove unused variables | Colin Guthrie | 2009-11-11 | 1 | -3/+0 |
| | |||||
* | device-manager: Set the most appropriate sink/source when new streams are ↵ | Colin Guthrie | 2009-11-11 | 1 | -16/+50 |
| | | | | created | ||||
* | device-manager: Add routing functions that are triggered when sinks/soruces ↵ | Colin Guthrie | 2009-11-11 | 1 | -61/+136 |
| | | | | are added/removed. | ||||
* | device-manager: Add a function to get a list of the highest priority device ↵ | Colin Guthrie | 2009-11-11 | 1 | -0/+81 |
| | | | | indexes for each role. | ||||
* | device-manager: Remove unneeded logic for checking for and (un)loading ↵ | Colin Guthrie | 2009-11-11 | 1 | -35/+0 |
| | | | | module-stream-restore. We can co-exist | ||||
* | device-manager: Rough framework (slots etc.) for handling routing. | Colin Guthrie | 2009-11-11 | 1 | -5/+201 |
| | | | | | | | | 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. | ||||
* | device-manager: debug and comments | Colin Guthrie | 2009-11-11 | 1 | -1/+2 |
| | |||||
* | device-manager: Fix the freeing of the datum on prefer/defer. | Colin Guthrie | 2009-11-11 | 1 | -5/+4 |
| | | | | Also fix a log typo | ||||
* | device-manager: When a new device is encountered, initialise the priority ↵ | Colin Guthrie | 2009-11-11 | 1 | -4/+56 |
| | | | | list to an appropriate value | ||||
* | device-manager: Let subscribed clients know when something changes. | Colin Guthrie | 2009-11-11 | 1 | -0/+16 |
| | |||||
* | device-manager: Change the write function to a rename function. | Colin Guthrie | 2009-11-11 | 1 | -35/+28 |
| | | | | | | | 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. | ||||
* | device-manager: Provide a method for prefering/defering a device. | Colin Guthrie | 2009-11-11 | 1 | -0/+148 |
| | | | | | | | | | | 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. | ||||
* | device-manager: Fix copy+paste code that looped over the tagstruct when not ↵ | Colin Guthrie | 2009-11-11 | 1 | -40/+37 |
| | | | | necessary | ||||
* | device-manager: Provide a way for clients to enable/disable role-based ↵ | Colin Guthrie | 2009-11-11 | 1 | -0/+56 |
| | | | | | | | 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). | ||||
* | device-manager: Only store and save details for non-monitor sources | Colin Guthrie | 2009-11-11 | 1 | -4/+13 |
| | |||||
* | device-restore: Fix the application of an entry to allow changing the name ↵ | Colin Guthrie | 2009-11-11 | 1 | -39/+31 |
| | | | | | | of devices. This fixes a few bugs in the copy+pasted implementation of apply_entry()/get_name(). | ||||
* | device-manager: Fix tagstruct description extraction (copy+paste blunder) | Colin Guthrie | 2009-11-11 | 1 | -1/+1 |
| | |||||
* | device-manager: Add an untested protocol extension. | Colin Guthrie | 2009-11-11 | 1 | -1/+255 |
| | | | | This is effectively copied from the stream restore extension. | ||||
* | device-manager: Add a new module to keep track of the names and descriptions ↵ | Colin Guthrie | 2009-11-11 | 1 | -0/+352 |
| | | | | | | | | | | 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. | ||||
* | jack: never try to autoconnect to MIDI ports | Lennart Poettering | 2009-11-11 | 2 | -2/+2 |
| | | | | | | Original patch supplied by 'adi' http://pulseaudio.org/ticket/669 | ||||
* | alsa: disable timer-based scheduling inside a VM | Lennart Poettering | 2009-11-11 | 4 | -8/+28 |
| | | | | | | | | | | | | | | | 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 | ||||
* | alsa: introduce more standard path names | Lennart Poettering | 2009-11-11 | 1 | -10/+14 |
| | |||||
* | alsa: cover 'Analog Output' control | Lennart Poettering | 2009-11-11 | 1 | -0/+17 |
| | | | | http://pulseaudio.org/ticket/702 | ||||
* | alsa: create a seperate mixer path for Speaker elements | Lennart Poettering | 2009-11-11 | 3 | -13/+106 |
| | | | | | | | 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 | ||||
* | alsa: leave other headphone control enabled if possible | Lennart Poettering | 2009-11-11 | 5 | -4/+22 |
| | |||||
* | alsa: lower priority for Headphone2 path | Lennart Poettering | 2009-11-11 | 1 | -1/+1 |
| | |||||
* | alsa: cover Input Source:AUX IN | Lennart Poettering | 2009-11-11 | 1 | -0/+4 |
| | | | | | | As seen on some HDA chips: https://bugzilla.redhat.com/attachment.cgi?id=359804 | ||||
* | alsa: cover Headphone2 mixer element | Lennart Poettering | 2009-11-11 | 3 | -2/+85 |
| | | | | | | As seen on some drivers: https://bugzilla.redhat.com/show_bug.cgi?id=498612 | ||||
* | alsa: cover 'Digital Input Source' element | Lennart Poettering | 2009-11-11 | 1 | -0/+14 |
| | | | | | | As used by some HDA devices: https://bugzilla.redhat.com/attachment.cgi?id=365290 | ||||
* | alsa: cover Mic Jack Mode element | Lennart Poettering | 2009-11-11 | 1 | -1/+12 |
| | | | | | | As used by some HDA chips: https://bugzilla.redhat.com/attachment.cgi?id=366816 | ||||
* | bluetooth: do not hand out access to devices that are not fully configured yet | Lennart Poettering | 2009-11-11 | 1 | -2/+8 |
| | |||||
* | position-event-sounds: never position test sounds in space | Lennart Poettering | 2009-11-11 | 1 | -1/+17 |
| | |||||
* | alsa: disable period event only with tsched=1 | Lennart Poettering | 2009-11-11 | 4 | -5/+6 |
| | |||||
* | loopback: Setting latency of module-loopback | Tor-Björn Claesson | 2009-11-11 | 1 | -1/+1 |
| | | | | | I checked the source code, and latency_msec is missing from the list of valid module arguments. Attaching a patch to add it. |