In Keynote, you can set your presentation to a self-playing mode and define a delay after which the slides advance.

Sometimes, you want an individual slide to take longer than that, for example if you are playing a video that takes 30 or 60 seconds.
You can set a custom delay for a slide transition that overrides the document level one by selecting the slide from the Navigator and then selecting Animate → Start transition → Automatically and inputting a longer delay.

This way, you can have a default for all slides and individual exceptions.
The maximum delay you can set for a transition is 10 minutes though. I haven’t tested it yet but I think the possible way around that is to set everything to manual, record a presentation with desired slide lengths and then replay that.