diff --git a/libarmbox/audio.cpp b/libarmbox/audio.cpp index fecdd74..6f83716 100644 --- a/libarmbox/audio.cpp +++ b/libarmbox/audio.cpp @@ -162,6 +162,9 @@ int cAudio::do_mute(bool enable, bool remember) sprintf(str, "%d", Muted); proc_put("/proc/stb/audio/j1_mute", str, strlen(str)); + if (fd < 1) + openDevice(); + if (fd > 0) { if (ioctl(fd, AUDIO_SET_MUTE, enable) < 0) @@ -204,6 +207,9 @@ int cAudio::setVolume(unsigned int left, unsigned int right) mixer.volume_left = left; mixer.volume_right = right; + if (fd < 1) + openDevice(); + if (fd > 0) { if (ioctl(fd, AUDIO_SET_MIXER, &mixer) < 0)