/replayer

Music player in REPL

Primary LanguageCommon Lisp

REPLAYER 3.5.0

What is this?

Music player in REPL.

Features

  • Play wav, mp3 files.
  • Add tag to files.
  • Search by tags.
  • Supported ros script.

Usage

REPL

PLAY

One file.

* (play "~/path/to/file.wav")

Some files.

* (play (uiop:directory-files "~/Music/directory/" "*.wav"))

TAG

Adding tag to files.

* (tag "tag" (uiop:directory-files "~/Music/directory/" "*.wav"))

Play by tag.

* (play (make-tag :exp "tag"))

Logical expressions (i.e. and, or and not) are supported.

* (play (make-tag :exp '(and "tag1" "tag2" (not "tag3"))))

From shell

Play

Start replayer server.

replayer start

Play one music.

replayer play path/to/music.wav

Play some files

replayer play $(ls music/directory/*.wav)

or

ls music/directory/*.wav | xargs replayer play

TAG

Adding tag to files

replayer tag tag file1 file2 ...

Play by tag.

replayer play --tag tag

With logical expression.

replayer play --tag '(and tag1 tag2)'

With http client.

Replayer server is http server.

You can send request for it with any http client.

Play

One file.

curl -d "FILE=~/path/to/file.wav" http://localhost:5000/play/file

Adding one more file.

curl -d "FILE=/path/to/file.wav" http://localhost:5000/play/push

TAG

Play by tag.

curl -d "TAG=tag" http://localhost:5000/play/tag

From developer

Product's goal

License

MIT

Developed with

SBCL

Tested with

Installation

REQUIREMENT

REPL only

ros install hyotang666/r-iff hyotang666/wav-parser hyotang666/replayer
* (ql:quickload :replayer)

With shell

ros build $HOME/.roswell/local-projects/hyotang666/roswell/replayer.ros

ros exec replayer

If you want reduce ros exec do like

echo 'export PATH="$HOME/.roswell/bin:$PATH"' >> ~/.zshrc