Control video playback

Learn how to use play, pause, seek, and other playback controls in the FastPix Android Player.

All playback control methods are on FastPixPlayer and are safe to call from the main thread. They delegate to Media3 internally.

Play, pause, and toggle

1player.play() // Start or resume playback
2player.pause() // Pause playback
3player.togglePlayPause() // Toggle between play and pause
  • play() starts playback if the player is prepared. If buffering or ready, it resumes. Call setMediaItem(...) or setFastPixMediaItem { ... } first.
  • pause() pauses playback if currently playing.
  • togglePlayPause() is a convenience method for tap gestures or a single play/pause button.

Seek to a position

1player.seekTo(positionMs = 5_000) // Seek to 5 seconds

Seek events are surfaced through PlaybackListener.onSeekStart and onSeekEnd.

Query playback state

1val pos = player.getCurrentPosition() // Current position in milliseconds
2val duration = player.getDuration() // Total duration (0L when unknown)
3val state = player.getPlaybackState() // Media3 state: STATE_IDLE/BUFFERING/READY/ENDED

Use getPlaybackState() with buffering callbacks to show loading spinners in your UI.

Autoplay

Control whether playback starts automatically when the player is ready:

1player.setPlayWhenReady(true) // Start automatically when ready
2val willPlay = player.getPlayWhenReady()
3val isAutoPlay = player.autoplay // Player-level autoplay policy

Use setPlayWhenReady(true) for a one-off “start when ready” action, or configure autoplay through FastPixPlayer.Builder for a persistent player-level policy.