Merge pull request #390 from ronaldheft/fix-ios-seek-back-time

fix: iOS seek back time not winding back
This commit is contained in:
advplyr 2022-09-18 11:58:50 -05:00 committed by GitHub
commit 4e94fd6ad0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 2 deletions

View file

@ -181,6 +181,7 @@ class AudioPlayer: NSObject {
let time = CMTime(seconds: Double(seconds), preferredTimescale: timeScale) let time = CMTime(seconds: Double(seconds), preferredTimescale: timeScale)
self.timeObserverToken = self.audioPlayer.addPeriodicTimeObserver(forInterval: time, queue: self.queue) { [weak self] time in self.timeObserverToken = self.audioPlayer.addPeriodicTimeObserver(forInterval: time, queue: self.queue) { [weak self] time in
guard let self = self else { return } guard let self = self else { return }
guard self.isInitialized() else { return }
guard let currentTime = self.getCurrentTime() else { return } guard let currentTime = self.getCurrentTime() else { return }
let isPlaying = self.isPlaying() let isPlaying = self.isPlaying()
@ -312,7 +313,7 @@ class AudioPlayer: NSObject {
} }
private func calculateSeekBackTimeAtCurrentTime(_ currentTime: Double, lastPlayed: Double) -> Double { private func calculateSeekBackTimeAtCurrentTime(_ currentTime: Double, lastPlayed: Double) -> Double {
let difference = Date.timeIntervalSinceReferenceDate - lastPlayed let difference = Date().timeIntervalSince1970 - lastPlayed
var time: Double = 0 var time: Double = 0
// Scale seek back time based on how long since last play // Scale seek back time based on how long since last play

View file

@ -45,7 +45,7 @@ class PlayerHandler {
if paused { if paused {
self.player?.pause() self.player?.pause()
} else { } else {
self.player?.play() self.player?.play(allowSeekBack: true)
} }
} }
} }