Index: libs/libmyth/audiooutputdx.cpp
===================================================================
--- libs/libmyth/audiooutputdx.cpp	(revision 22772)
+++ libs/libmyth/audiooutputdx.cpp	(working copy)
@@ -299,6 +299,7 @@
         fragment_size *= 2;
     soundcard_buffer_size = kFramesNum * fragment_size;
     audio_bytes_per_sample = audio_bits / 8 * audio_channels;
+    m_UseSPDIF = audio_passthru || audio_enc;
     if (m_UseSPDIF && (audio_channels != 2))
     {
         Error("SPDIF passthru requires 2 channel data");
Index: libs/libmyth/audiooutputwin.cpp
===================================================================
--- libs/libmyth/audiooutputwin.cpp	(revision 22772)
+++ libs/libmyth/audiooutputwin.cpp	(working copy)
@@ -145,6 +145,7 @@
     SetBlocking(true);
     fragment_size = (AUDIOOUTPUT_TELEPHONY == source) ? 320 : 6144;
     soundcard_buffer_size = kPacketCnt * fragment_size;
+    m_UseSPDIF = audio_passthru || audio_enc;
 
     WAVEFORMATEXTENSIBLE wf;
     wf.Format.wFormatTag =
