aboutsummaryrefslogtreecommitdiffstats
path: root/pulse.h
Commit message (Collapse)AuthorAgeFilesLines
* abstract volume/balance output away from ponymixDave Reisner2013-01-211-0/+5
| | | | | | Add a Notifier virtual base class and a CommandLineNotifier implementation which handles output of volume and balance levels after a change.
* avoid copying the passed vector to find_fuzzyDave Reisner2013-01-061-1/+1
|
* unify logic for finding by name fragmentDave Reisner2013-01-051-0/+1
|
* allow fuzzy matching on devicesDave Reisner2013-01-031-2/+3
|
* 80 columns!Dave Reisner2013-01-031-4/+8
|
* Derive the card from the targetted deviceDave Reisner2013-01-021-1/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | Unless explicitly specified, target a card based on the selected device. Note that not all devices will be tied to a card. falconindy » put differently, if i have multiple cards, what determines which card is used by pulse for a given app? tanuk » In theory, the logic can be anything (it depends on what policy-implementing modules are loaded). By default, routing is mostly handled by module-stream-restore, which chooses the sink based on the user's previous routing choices. tanuk » If the user hasn't done any routing choices, the fallback logic is to select the current "default sink". tanuk » I don't recommend trying to guess the routing policy. falconindy » i guess my understanding of pulse internals is lacking falconindy » but that's rather enlightening falconindy » is there any way to figure out the connection between a sink and a card? tanuk » Yes... (One moment, I'll look up things.) falconindy » ah. uint32_t card falconindy » appears to be in pa_sink_info falconindy » so that ties the sink to the index of a card? tanuk » Yep. falconindy » awesome, that's good enough for what i need to do tanuk » Not all sinks are part of a card, though, but those that are will have the card index set. falconindy » also good to know
* ponymix: validate arg count before invoking functionDave Reisner2013-01-021-1/+9
| | | | | | | | | | | | | | | A few changes make this fun and easy: - Merge the function array into the string to action lookup and return a Command instead of simply an enum. A Command is the function and the min/max arg count. - Implement an InRange method for the Range class. - Add a Dispatch function to convert the string to Command and validate the arguments. This leaves us in a position where the argc parameter to each method is never used, but maybe some day a command will be added that takes a range of args rather than a fixed number.
* rename class Pulse to PulseClientDave Reisner2013-01-021-5/+5
|
* initial commitDave Reisner2013-01-011-0/+216