playerctl
library
Classes
AlbumArtServer
HTTP server for serving album art files locally
This allows album art to be accessed from other devices on the network
ICommandExecutor
Interface for executing playerctl commands
IMetadataProvider
Interface for metadata operations
IPlaybackController
Interface for playback control operations
IPlayerctlService
Base interface for all playerctl-related operations
IPlayerDetector
Interface for player detection operations
IVolumeController
Interface for volume control operations
MediaInfo
Represents the current media playback information
MediaPlayerManager
State-management-agnostic media player manager
This class provides a clean API without forcing any specific state management solution
Users can wrap this with their preferred state management (GetX, Riverpod, Bloc, etc.)
MetadataProvider
Metadata provider for fetching and streaming media metadata
Follows Single Responsibility Principle
PlaybackController
Playback controller for media playback operations
Follows Single Responsibility Principle
PlayerctlCommandExecutor
Command executor for running playerctl commands
Follows Single Responsibility Principle - only handles command execution
PlayerctlLogger
Logger utility for playerctl package
PlayerctlService
Facade service that provides a unified interface to all playerctl operations
Follows Facade Pattern and Dependency Inversion Principle
PlayerctlSystemChecker
System checker for playerctl installation and version
Follows Single Responsibility Principle
PlayerDetector
Player detector for finding and listing media players
Follows Single Responsibility Principle
PlayerState
Immutable state class representing the complete player state
Can be used with any state management solution or none at all
VolumeController
Volume controller for managing player volume
Follows Single Responsibility Principle
Enums
LogLevel
Log levels for the playerctl package