Skip to content

miraclx/cmusd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CMUS-D

C* Music Player media interface daemon

This package provides a remote graphical frontend for the C* Music Player using the MPRIS D-Bus Interface

How it works

cmus has a remote tool cmus-remote(1) that can control and query cmus through a socket. cmusd takes advantage of this by parsing the status of cmus on request and sending playback controls to it. This data is updated twice every second for precision.

Features

  • Album art: This is generated and rendered after being extracted by ffmpeg
  • Playback (Next, Previous, Pause, Play, PlayPause, Stop, Seek)
  • Hybrid Connection: The daemon can either spawn a cmus process within itself or connect to an already active one
  • Auto logging

Installing

The project is written in Native JavaScript NodeJS. Download and install Node.js, NPM.

Via NPM

npm install cmusd -g

Manual Installatiion

git clone https://gitlab.com/miraclx/cmusd.git
cd cmusd
npm run setup

Usage

# Launch the daemon
cmusd

# Clean all logfiles, launch
cmusd -x

# Remove the lockfile, launch
# (incase previous process didn't close correctly)
cmusd -q

# Write log to specific file
cmusd <filename>

# Write log to file in folder
cmusd <folder>
  • Lock file: <os-tmp-dir>/cmus-dir/.lock
  • Album Art cache folder: <os-tmp-dir>/cmus-dir/
  • Default log folder: <os-tmp-dir>/cmus-dir/logs/

Screenshots

Simple Command

CMUS-D Simple Command

Basic Run, spawns cmus within (if not already running)

cmus in terminal, spawned from cmusd

Media player instance for the auto-spawned CMUS-D listener

KDE Media Player displaying cmus music data

Connect to an actively running cmus process

CMUS-D Basic Use

Already running CMUS

CMUS running on another terminal window

CMUS-D Connected and logging

CMUS-D connected and logging

Media player instance for the connected CMUS-D listener

KDE Media Player displaying cmus music data

Development

Building

Use in adherance to the license, feel free to send some pull requests

git clone https://github.com/miraclx/cmusd.git
cd cmusd
npm install
# hack on code
npm run build

License

Apache 2.0 © Miraculous Owonubi (@miraclx) <omiraculous@gmail.com>