         }
     }
 
+    private function pauseAndSeekCallBack():void
+    {
+        // the seek(0) is asynchronous so let's add an event listener to see when it's finsished:
+        videoPlayer.addEventListener(SeekEvent.SEEKING_CHANGE, videoPlayer_seekChangeHandler);
+        
+        // called play(), now call pause() and seek(0);
+        videoPlayer.pause();
+        videoPlayer.seek(0);
+                
+    }
+    
     /**
      *  @private
      *  Wait until the media is seekable before we call pause() and seek().

            {
                inLoadingState3 = true;
                
                // the seek(0) is asynchronous so let's add an event listener to see when it's finsished:
                videoPlayer.addEventListener(SeekEvent.SEEKING_CHANGE, videoPlayer_seekChangeHandler);
                
                // called play(), now call pause() and seek(0);
                videoPlayer.pause();
                videoPlayer.seek(0);
            }
            else
            {

            {
                inLoadingState3 = true;
                
                // Don't call pause and seek inside this handler because OSMF is 
                // not expecting us to change its HTTPStreamingState value in 
                // HTTPNetStream.onMainTimer as a result of dispatching this 
                // event (see SDK-27028).
                callLater(pauseAndSeekCallBack);
            }
        }
    }
