                 volume = 0
             }
             internalPlayer.volume = Float(volume)
+        }
+    }
+    
+    /// Time within the audio file at the current time
+    public var playhead: Double {
+        if looping {
+            return currentTime % duration
+        } else {
+            if currentTime > duration {
+                return duration
+            } else {
+                return currentTime
+            }
         }
     }
     

    public var looping = false
    private var paused = false
    
    /// Output Volume (Default 1)
    public var volume: Double = 1.0 {
        didSet {

    
    /// Start playback
    public func start() {
        if (!internalPlayer.playing && !paused) || playhead == duration {
            var options = AVAudioPlayerNodeBufferOptions.Interrupts
            if looping {
                options = .Loops
