 
     /// Start playback
     open func start() {
+        play(at:nil)
+    }
+
+    open func play(at when: AVAudioTime?) {
 
         if ❗️playing {
             if audioFileBuffer != nil {

    ///              important that this value be the same for all of them as a reference point.
    ///
    open func play(from time: Double, to endTime: Double, avTime: AVAudioTime? ) {
        stop()

        if endTime > 0 {
            self.endTime = endTime
        }
        self.startTime = time

        if endingFrame > startingFrame {
            scheduledAVTime = avTime
            start()
        } else {
            AKLog("ERROR AKaudioPlayer: cannot play, \(internalAudioFile.fileNamePlusExtension) " +
                "is empty or segment is too short")
        }
    }


                    scheduleBuffer(atTime: scheduledAVTime, options: defaultBufferOptions)
                }

                internalPlayer.play(at: when)

                playing = true
                paused = false
