LinuxVideoPlayerState

class LinuxVideoPlayerState(playbackOptions: VideoPlaybackOptions = VideoPlaybackOptions()) : VideoPlayerState

LinuxVideoPlayerState — JNI-based implementation using a native C GStreamer player.

Architecture mirrors MacVideoPlayerState: coroutine-driven polling of the native layer for frames, position, audio levels, and end-of-playback detection.

Constructors

Link copied to clipboard
constructor(playbackOptions: VideoPlaybackOptions = VideoPlaybackOptions())

Properties

Link copied to clipboard
open override val aspectRatio: Float
Link copied to clipboard
open override val availableAudioTracks: List<AudioTrack>
Link copied to clipboard
open val availableHlsQualities: List<HlsQualityVariant>
Link copied to clipboard
open override val availableSubtitleTracks: List<SubtitleTrack>
Link copied to clipboard
Link copied to clipboard
open val bufferedRanges: List<BufferedRange>
Link copied to clipboard
open override val capabilities: PlayerCapabilities
Link copied to clipboard
open override val chapters: List<MediaChapter>
Link copied to clipboard
open override val colorPipelineStatus: StateFlow<VideoColorPipelineStatus>
Link copied to clipboard
open override var currentAudioTrack: AudioTrack?
Link copied to clipboard
open val currentChapter: MediaChapter?
Link copied to clipboard
open val currentHlsQuality: HlsQualityVariant?
Link copied to clipboard
open override var currentSubtitleTrack: SubtitleTrack?
Link copied to clipboard
open override val currentTime: Duration
Link copied to clipboard
Link copied to clipboard
open val diagnostics: PlaybackDiagnostics
Link copied to clipboard
open override val duration: Duration
Link copied to clipboard
open val durationMs: Long
Link copied to clipboard
open override val durationText: String
Link copied to clipboard
open override var error: VideoPlayerError?
Link copied to clipboard
open override var hasMedia: Boolean
Link copied to clipboard
open val hlsQualityMode: HlsQualityMode
Link copied to clipboard
Link copied to clipboard
open override var isFullscreen: Boolean
Link copied to clipboard
open override var isLoading: Boolean
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open override var isPlaying: Boolean
Link copied to clipboard
open override val isSeeking: Boolean
Link copied to clipboard
open val loadingState: PlaybackLoadingState
Link copied to clipboard
open override var loop: Boolean
Link copied to clipboard
Link copied to clipboard
open override val metadata: VideoMetadata
Link copied to clipboard
open override var onPlaybackEnded: () -> Unit?
Link copied to clipboard
open override var onRestart: () -> Unit?
Link copied to clipboard
open val playbackEvents: SharedFlow<PlaybackEvent>
Link copied to clipboard
open override var playbackSpeed: Float
Link copied to clipboard
open override val positionText: String
Link copied to clipboard
open override val preciseCurrentTime: Duration
Link copied to clipboard
Link copied to clipboard
open override var projection: VideoProjectionSettings
Link copied to clipboard
open override var projectionTextureCrop: VideoTextureCrop
Link copied to clipboard
open override var projectionView: VideoProjectionViewSettings
Link copied to clipboard
open override var projectionViewControlMode: VideoProjectionViewControlMode
Link copied to clipboard
open override val renderingInfo: VideoRenderingInfo
Link copied to clipboard
open override var sliderPos: Float
Link copied to clipboard
open override var subtitleBackgroundColor: Color
Link copied to clipboard
open override var subtitleOffset: Duration
Link copied to clipboard
open override var subtitlesEnabled: Boolean
Link copied to clipboard
open override var subtitleTextStyle: TextStyle
Link copied to clipboard
open override var userDragging: Boolean
Link copied to clipboard
open override var volume: Float

Functions

Link copied to clipboard
open override fun addSubtitleTrack(track: SubtitleTrack)
Link copied to clipboard
open fun canPlaySource(uri: String, mimeType: String?): Boolean
Link copied to clipboard
open fun clearCache(): CacheClearResult
Link copied to clipboard
open override fun clearError()
Link copied to clipboard
open override fun clearExternalSubtitleTracks()
Link copied to clipboard
open override fun disableSubtitles(): TrackSelectionResult
Link copied to clipboard
open override fun dispose()
Link copied to clipboard
open suspend fun enterPip(): PipResult
Link copied to clipboard
fun onResized(width: Int, height: Int)
Link copied to clipboard
open fun openAsset(fileName: String, initializePlayerState: InitialPlayerState)
Link copied to clipboard
open override fun openFile(file: PlatformFile, initializePlayerState: InitialPlayerState)
Link copied to clipboard
open override fun openUri(uri: String, initializePlayerState: InitialPlayerState, requestHeaders: Map<String, String>)
Link copied to clipboard
open override fun pause()
Link copied to clipboard
open override fun play()
Link copied to clipboard
open fun playbackSnapshot(): PlaybackSnapshot
Link copied to clipboard
open fun prepare(uri: String, initializePlayerState: InitialPlayerState, requestHeaders: Map<String, String>)
Link copied to clipboard
open override fun releaseSource()
Link copied to clipboard
open fun removeSubtitleTrack(track: SubtitleTrack)
open override fun removeSubtitleTrack(trackId: String)
Link copied to clipboard
open fun replaceExternalSubtitleTracks(tracks: List<SubtitleTrack>)
Link copied to clipboard
open fun restart()
Link copied to clipboard
open fun seekBy(delta: Duration)
Link copied to clipboard
open fun seekByMs(deltaMs: Long)
Link copied to clipboard
open fun seekFinished()
Link copied to clipboard
open fun seekStart(value: Float)
Link copied to clipboard
open override fun seekTo(value: Float)
open override fun seekTo(time: Duration)
Link copied to clipboard
open fun seekToChapter(chapter: MediaChapter)
Link copied to clipboard
open fun seekToMs(timeMs: Long)
Link copied to clipboard
open override fun seekToProgress(progress: Float)
Link copied to clipboard
open fun selectAudioTrack(trackId: String?): TrackSelectionResult
open override fun selectAudioTrack(track: AudioTrack?): TrackSelectionResult
Link copied to clipboard
open fun selectAutoHlsQuality(): HlsQualitySelectionResult
Link copied to clipboard
open fun selectHlsQuality(variantId: String?): HlsQualitySelectionResult
Link copied to clipboard
open fun selectSubtitleTrack(trackId: String?): TrackSelectionResult
open override fun selectSubtitleTrack(track: SubtitleTrack?): TrackSelectionResult
Link copied to clipboard
open override fun stop()
Link copied to clipboard
open override fun toggleFullscreen()