Restart finished video

After the video has ended, hitting play restarts the video from the beginning

fixes #449

If I understand the issue correctly, however, videos can now be played again without hitting the "Start from the beginning" button.
This commit is contained in:
Toni Förster 2024-04-25 19:43:28 +02:00
parent d1cf45c6a1
commit 86b91916a7
No known key found for this signature in database
GPG Key ID: 292F3E5086C83FC7
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

@ -354,6 +354,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()
} }
@ -519,8 +526,6 @@ final class MPVBackend: PlayerBackend {
guard client.eofReached else { guard client.eofReached else {
return return
} }
getTimeUpdates()
eofPlaybackModeAction() eofPlaybackModeAction()
} }