diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2003-03-30 12:42:23 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2003-03-30 12:42:23 +0200 |
commit | c52b219131eee937c16b3dd9ebc3706d77df689c (patch) | |
tree | 217a979b47064d59de1003c572e3b22e68e61d94 /device.c | |
parent | f79a442f443edda16353a760b0b93eb4e63aaa42 (diff) | |
download | vdr-c52b219131eee937c16b3dd9ebc3706d77df689c.tar.gz vdr-c52b219131eee937c16b3dd9ebc3706d77df689c.tar.bz2 |
Added some missing cAudio handling calls
Diffstat (limited to 'device.c')
-rw-r--r-- | device.c | 16 |
1 files changed, 13 insertions, 3 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: device.c 1.37 2003/03/09 14:05:23 kls Exp $ + * $Id: device.c 1.38 2003/03/30 12:39:29 kls Exp $ */ #include "device.h" @@ -422,9 +422,16 @@ bool cDevice::ToggleMute(void) { int OldVolume = volume; mute = !mute; - SetVolume(0, mute); + //XXX why is it necessary to use different sequences??? + if (mute) { + SetVolume(0, mute); + Audios.MuteAudio(mute); // Mute external audio after analog audio + } + else { + Audios.MuteAudio(mute); // Enable external audio before analog audio + SetVolume(0, mute); + } volume = OldVolume; - Audios.MuteAudio(mute); return mute; } @@ -478,10 +485,12 @@ void cDevice::Clear(void) void cDevice::Play(void) { + Audios.MuteAudio(mute); } void cDevice::Freeze(void) { + Audios.MuteAudio(true); } void cDevice::Mute(void) @@ -520,6 +529,7 @@ void cDevice::Detach(cPlayer *Player) player = NULL; SetPlayMode(pmNone); playerDetached = true; + Audios.ClearAudio(); } } |