Lines Matching defs:mixer

45 #include "alsa-mixer.h"
1613 static snd_mixer_elem_t *pa_alsa_mixer_find(snd_mixer_t *mixer,
1620 for (elem = snd_mixer_first_elem(mixer); elem; elem = snd_mixer_elem_next(elem)) {
1638 snd_mixer_elem_t *pa_alsa_mixer_find_card(snd_mixer_t *mixer, struct pa_alsa_mixer_id *alsa_id, unsigned int device) {
1639 return pa_alsa_mixer_find(mixer, SND_CTL_ELEM_IFACE_CARD, alsa_id->name, alsa_id->index, device);
1642 snd_mixer_elem_t *pa_alsa_mixer_find_pcm(snd_mixer_t *mixer, const char *name, unsigned int device) {
1643 return pa_alsa_mixer_find(mixer, SND_CTL_ELEM_IFACE_PCM, name, 0, device);
1685 pa_log_info("Got an unknown mixer class event for %s: mask 0x%x", name, mask);
1690 static int prepare_mixer(snd_mixer_t *mixer, const char *dev, snd_hctl_t *hctl) {
1694 pa_assert(mixer);
1697 if ((err = snd_mixer_attach_hctl(mixer, hctl)) < 0) {
1698 pa_log_info("Unable to attach to mixer %s: %s", dev, pa_alsa_strerror(err));
1703 pa_log_info("Failed to allocate mixer class for %s", dev);
1708 if ((err = snd_mixer_class_register(class, mixer)) < 0) {
1709 pa_log_info("Unable register mixer class for %s: %s", dev, pa_alsa_strerror(err));
1713 /* From here on, the mixer class is deallocated by alsa on snd_mixer_close/free. */
1715 if ((err = snd_mixer_selem_register(mixer, NULL, NULL)) < 0) {
1716 pa_log_warn("Unable to register mixer: %s", pa_alsa_strerror(err));
1720 if ((err = snd_mixer_load(mixer)) < 0) {
1721 pa_log_warn("Unable to load mixer: %s", pa_alsa_strerror(err));
1725 pa_log_info("Successfully attached to mixer '%s'", dev);
1766 pa_log("Error opening mixer: %s", pa_alsa_strerror(err));
1855 void pa_alsa_mixer_free(pa_alsa_mixer *mixer)
1857 if (mixer->fdl)
1858 pa_alsa_fdlist_free(mixer->fdl);
1859 if (mixer->mixer_handle && mixer->alias == NULL)
1860 snd_mixer_close(mixer->mixer_handle);
1861 if (mixer->alias)
1862 mixer->alias->alias = NULL;
1863 pa_xfree(mixer);