Merge pull request #24 from jodizzle/feat/mute

Restore "mute" message
This commit is contained in:
Aaron Marcher 2016-10-13 12:15:18 +02:00 committed by GitHub
commit 59ed3b6d8d
1 changed files with 5 additions and 1 deletions

View File

@ -472,6 +472,7 @@ uid(void)
static char * static char *
vol_perc(const char *card) vol_perc(const char *card)
{ {
int mute;
long int vol, max, min; long int vol, max, min;
snd_mixer_t *handle; snd_mixer_t *handle;
snd_mixer_elem_t *elem; snd_mixer_elem_t *elem;
@ -495,11 +496,14 @@ vol_perc(const char *card)
snd_mixer_handle_events(handle); snd_mixer_handle_events(handle);
snd_mixer_selem_get_playback_volume_range(elem, &min, &max); snd_mixer_selem_get_playback_volume_range(elem, &min, &max);
snd_mixer_selem_get_playback_volume(elem, 0, &vol); snd_mixer_selem_get_playback_volume(elem, 0, &vol);
snd_mixer_selem_get_playback_switch(elem, 0, &mute);
snd_mixer_selem_id_free(s_elem); snd_mixer_selem_id_free(s_elem);
snd_mixer_close(handle); snd_mixer_close(handle);
if (max == 0) if (!mute)
return smprintf("mute");
else if (max == 0)
return smprintf("0%%"); return smprintf("0%%");
else else
return smprintf("%lu%%", ((uint_fast16_t)(vol * 100) / max)); return smprintf("%lu%%", ((uint_fast16_t)(vol * 100) / max));