Blob


1 # amused
3 amused is a music player. It doesn't have any amazing functionalities
4 built-in, on the contrary: it's quite minimal (a fancy word to say that
5 does very little.) It composes well, or aims to do so, with other tools
6 thought.
8 The main feature is that audio decoding runs in a sandboxed process
9 under `pledge("stdio recvfd audio")`. Oh, by the way, amused targets
10 OpenBSD only: it relies its make infrastructure to build, uses various
11 cool stuff from its libc and can output only to sndio.
13 (I *think* it's possible to compile it on other UNIX-like systems too by
14 providing shims for some non-portable functions -- hello libbsd -- and
15 assuming that sndio is available. And bundling a copy of imsg.c too)
18 ## building
20 $ make
22 it needs the following packages from ports:
24 - flac
25 - libmpg123
26 - libvorbis
27 - opusfile
29 Release tarballs installs into `/usr/local/`, git checkouts installs
30 into `~/bin` (idea and implementation stolen from got, thanks stsp!)
32 It'll be available on OpenBSD starting with 7.1
35 ## usage
37 The fine man page has all nitty gritty details, but the TL;DR is
39 - enqueue music with `amused add files...`
40 - control the playback with `amused play|pause|toggle|stop` etc
42 amused tries to be usable in composition with other more familiar tools
43 instead of providing everything itself. For instance, there isn't a
44 command to remove an item from the playlist, or shuffle it; instead,
45 standard UNIX tools can be used:
47 $ amused show | grep -vi kobayashi | amused load
48 $ amused show | sort -R | amused load
49 $ amused show | sort | uniq | amused load
51 It also doesn't provide any means to manage a music collection. It
52 plays nice with find(1) however:
54 find . -type f -iname \*.opus -exec amused add {} +
56 I wrote a bit more about the background of amused [in a blog
57 post](https://www.omarpolo.com/post/amused.html).