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 that you bundle a copy of imsg.c
16 too)
19 ## building
21 $ make
23 it needs the following packages from ports:
25 - flac
26 - libmpg123
27 - libvorbis
28 - opusfile
30 Release tarballs installs into `/usr/local/`, git checkouts installs
31 into `~/bin` (idea and implementation stolen from got, thanks stsp!)
33 It'll be available on OpenBSD starting with 7.1
36 ## usage
38 The fine man page has all nitty gritty details, but the TL;DR is
40 - enqueue music with `amused add files...`
41 - control the playback with `amused play|pause|toggle|stop` etc
43 amused tries to be usable in composition with other more familiar tools
44 instead of providing everything itself. For instance, there isn't a
45 command to remove an item from the playlist, or shuffle it; instead,
46 standard UNIX tools can be used:
48 $ amused show | grep -vi kobayashi | amused load
49 $ amused show | sort -R | amused load
50 $ amused show | sort | uniq | amused load
52 It also doesn't provide any means to manage a music collection. It
53 plays nice with find(1) however:
55 find . -type f -iname \*.opus -exec amused add {} +
57 I wrote a bit more about the background of amused [in a blog
58 post](https://www.omarpolo.com/post/amused.html).