diff options
author | Christian Gmeiner <christian.gmeiner@gmail.com> | 2009-02-23 07:37:49 +0100 |
---|---|---|
committer | Christian Gmeiner <christian.gmeiner@gmail.com> | 2009-02-23 07:37:49 +0100 |
commit | 8e3918bce7b2e1e0e23cab69334df52b58d10f4d (patch) | |
tree | fa39f91234e5d810aac097ddb08f598ad251b1f7 /dxr3interface.c | |
parent | 635a610cb7ca6a2b6d6a8d66a50e9f06ec31da8f (diff) | |
download | vdr-plugin-dxr3-8e3918bce7b2e1e0e23cab69334df52b58d10f4d.tar.gz vdr-plugin-dxr3-8e3918bce7b2e1e0e23cab69334df52b58d10f4d.tar.bz2 |
simplify audiochannel handling
Diffstat (limited to 'dxr3interface.c')
-rw-r--r-- | dxr3interface.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/dxr3interface.c b/dxr3interface.c index 9eedf5c..8a9a523 100644 --- a/dxr3interface.c +++ b/dxr3interface.c @@ -192,17 +192,16 @@ void cDxr3Interface::SetAudioSpeed(uint32_t speed) //! set number of channels void cDxr3Interface::SetChannelCount(uint32_t count) { + // 0 = mono, 1 = stereo + uint32_t ioval = count - 1; + if (!m_ExternalReleased && m_audioMode != EM8300_AUDIOMODE_DIGITALAC3 && - m_audioChannelCount != count && count != UNKNOWN_CHANNEL_COUNT) - { - if (ioctl(m_fdAudio, SNDCTL_DSP_STEREO, &count) == -1) - { - esyslog("dxr3: unable to set channel count to %d: %m", count); - } - else - { - m_audioChannelCount = count; - } + m_audioChannelCount != count) { + if (ioctl(m_fdAudio, SNDCTL_DSP_STEREO, &ioval) == -1) { + esyslog("dxr3: unable to set channel count to %d: %m", count); + } else { + m_audioChannelCount = count; + } } } |