paracusia v0.2.4 Paracusia.PlayerState
Provides access to the current state of MPD, without having to send messages over the socket.
All functions in this module have a pendant in a submodule of Paracusia.MpdClient (but not vice
versa). Using these functions instead of the ones in Paracusia.MpdClient has the advantage that
latency is lower and no superfluous TCP messages are sent.
Link to this section Summary
Functions
Similar to Paracusia.MpdClient.AudioOutputs.all/0, but always returns the outputs (instead of
:error)
Similar to Paracusia.MpdClient.Status.current_song/0, but returns nil if no song is available
Similar to Paracusia.MpdClient.Queue.songs_info/0, but always returns the queue (instead of
:error)
Similar to Paracusia.MpdClient.Status.status/0, but always returns the status (instead of
:error)
Link to this section Types
t() :: %Paracusia.PlayerState{current_song: nil | map(), outputs: list(), queue: list(), status: %Paracusia.PlayerState.Status{audio: term(), bitrate: term(), consume: term(), elapsed: term(), error: term(), mixrampdb: term(), mixrampdelay: term(), next_song_id: term(), next_song_pos: term(), playlist: term(), playlist_length: term(), random: term(), repeat: term(), single: term(), song_id: term(), song_pos: term(), state: term(), time: term(), timestamp: term(), updating_db: term(), volume: term(), xfade: term()}}
Link to this section Functions
Similar to Paracusia.MpdClient.AudioOutputs.all/0, but always returns the outputs (instead of
:error).
Similar to Paracusia.MpdClient.Status.current_song/0, but returns nil if no song is available.
Similar to Paracusia.MpdClient.Queue.songs_info/0, but always returns the queue (instead of
:error).
status() :: %Paracusia.PlayerState.Status{audio: term(), bitrate: term(), consume: term(), elapsed: term(), error: term(), mixrampdb: term(), mixrampdelay: term(), next_song_id: term(), next_song_pos: term(), playlist: term(), playlist_length: term(), random: term(), repeat: term(), single: term(), song_id: term(), song_pos: term(), state: term(), time: term(), timestamp: term(), updating_db: term(), volume: term(), xfade: term()}
Similar to Paracusia.MpdClient.Status.status/0, but always returns the status (instead of
:error).