Index: OpenSceneGraph/trunk/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp
===================================================================
--- OpenSceneGraph/trunk/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp (revision 10414)
+++ OpenSceneGraph/trunk/src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp (revision 10851)
@@ -26,4 +26,5 @@
     m_audio_buf_index(0),
     m_end_of_stream(false),
+    m_paused(true),
     m_exit(false)
 {
@@ -89,4 +90,11 @@
 }
 
+void FFmpegDecoderAudio::pause(bool pause)
+{
+    if(pause)
+        m_paused = true;
+    else
+        m_paused = false;
+}
 
 void FFmpegDecoderAudio::close(bool waitForThreadToExit)
@@ -185,4 +193,19 @@
     while (! m_exit)
     {
+
+        if(m_paused)
+        {
+            m_clocks.pause(true);
+            m_pause_timer.setStartTick();
+
+            while(m_paused)
+            {
+                microSleep(10000);
+            }
+
+            m_clocks.setPauseTime(m_pause_timer.time_s());
+            m_clocks.pause(false);
+        }
+
         // If skipping audio, make sure the audio stream is still consumed.
         if (skip_audio)
@@ -194,5 +217,4 @@
                 packet.clear();
         }
-
         // Else, just idle in this thread.
         // Note: If m_audio_sink has an audio callback, this thread will still be awaken
