The Playback Swift package for iOS plays audio and video. It manages a playback session, plays audio and video, integrates with Remote Command Center, and persists playback times using NSUbiquitousKeyValueStore.
Playback is used in the Podest podcast app.
Audiovisual playback is asynchronous, a combination of IO and user events. Internally, Playback synchronizes these events and serially handles them, implementing a finite-state machine with five states.
- inactive
- paused
- preparing
- listening
- viewing
📦 Add https://github.com/michaelnisi/playback
to your package manifest.