[vlc-commits] auhal: fixed 'Pause' in SPDIF mode

Felix Paul Kühne git at videolan.org
Thu Jan 24 15:49:30 CET 2013


vlc | branch: master | Felix Paul Kühne <fkuehne at videolan.org> | Thu Jan 24 15:49:25 2013 +0100| [e1b23b51ae532951e0b377c94ee2c07a5cc4ddef] | committer: Felix Paul Kühne

auhal: fixed 'Pause' in SPDIF mode

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e1b23b51ae532951e0b377c94ee2c07a5cc4ddef
---

 modules/audio_output/auhal.c |   16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/modules/audio_output/auhal.c b/modules/audio_output/auhal.c
index 86e3030..8120556 100644
--- a/modules/audio_output/auhal.c
+++ b/modules/audio_output/auhal.c
@@ -1277,12 +1277,20 @@ static void Play (audio_output_t * p_aout, block_t * p_block)
 
 static void Pause (audio_output_t *p_aout, bool pause, mtime_t date)
 {
+    struct aout_sys_t * p_sys = p_aout->sys;
     VLC_UNUSED(date);
 
-    if (pause)
-        AudioOutputUnitStop(p_aout->sys->au_unit);
-    else
-        AudioOutputUnitStart(p_aout->sys->au_unit);
+    if (p_aout->sys->b_digital) {
+        if (pause)
+            AudioDeviceStop(p_sys->i_selected_dev, p_sys->i_procID);
+        else
+            AudioDeviceStart(p_sys->i_selected_dev, p_sys->i_procID);
+    } else {
+        if (pause)
+            AudioOutputUnitStop(p_aout->sys->au_unit);
+        else
+            AudioOutputUnitStart(p_aout->sys->au_unit);
+    }
 }
 
 static void Flush(audio_output_t *p_aout, bool wait)



More information about the vlc-commits mailing list