Merge pull request #646 from stonerl/EOF-start-playback-again

Restart finished video
This commit is contained in:
Arkadiusz Fal 2024-05-16 18:17:13 +02:00 committed by GitHub
commit 7b484e80b8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 14 additions and 2 deletions

View File

@ -160,6 +160,13 @@ final class AVPlayerBackend: PlayerBackend {
return return
} }
// After the video has ended, hitting play restarts the video from the beginning.
if currentTime?.seconds.formattedAsPlaybackTime() == model.playerTime.duration.seconds.formattedAsPlaybackTime() &&
currentTime!.seconds > 0 && model.playerTime.duration.seconds > 0
{
seek(to: 0, seekType: .loopRestart)
}
avPlayer.play() avPlayer.play()
model.objectWillChange.send() model.objectWillChange.send()
} }

View File

@ -365,6 +365,13 @@ final class MPVBackend: PlayerBackend {
setRate(model.currentRate) setRate(model.currentRate)
// After the video has ended, hitting play restarts the video from the beginning.
if currentTime?.seconds.formattedAsPlaybackTime() == model.playerTime.duration.seconds.formattedAsPlaybackTime() &&
currentTime!.seconds > 0 && model.playerTime.duration.seconds > 0
{
seek(to: 0, seekType: .loopRestart)
}
client?.play() client?.play()
} }
@ -530,8 +537,6 @@ final class MPVBackend: PlayerBackend {
guard client.eofReached else { guard client.eofReached else {
return return
} }
getTimeUpdates()
eofPlaybackModeAction() eofPlaybackModeAction()
} }