Blame


1 3baa2617 2022-02-16 op .\" Copyright (c) 2022 Omar Polo <op@openbsd.org>
2 3baa2617 2022-02-16 op .\"
3 3baa2617 2022-02-16 op .\" Permission to use, copy, modify, and distribute this software for any
4 3baa2617 2022-02-16 op .\" purpose with or without fee is hereby granted, provided that the above
5 3baa2617 2022-02-16 op .\" copyright notice and this permission notice appear in all copies.
6 3baa2617 2022-02-16 op .\"
7 3baa2617 2022-02-16 op .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
8 3baa2617 2022-02-16 op .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
9 3baa2617 2022-02-16 op .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
10 3baa2617 2022-02-16 op .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
11 3baa2617 2022-02-16 op .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
12 3baa2617 2022-02-16 op .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
13 3baa2617 2022-02-16 op .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
14 3baa2617 2022-02-16 op .\"
15 2b907c6d 2022-02-17 op .Dd February 17, 2022
16 3baa2617 2022-02-16 op .Dt AMUSED 1
17 3baa2617 2022-02-16 op .Os
18 3baa2617 2022-02-16 op .Sh NAME
19 3baa2617 2022-02-16 op .Nm amused
20 3baa2617 2022-02-16 op .Nd music player
21 3baa2617 2022-02-16 op .Sh SYNOPSIS
22 3baa2617 2022-02-16 op .Nm
23 3baa2617 2022-02-16 op .Op Fl dv
24 3baa2617 2022-02-16 op .Op Fl s Ar socket
25 3baa2617 2022-02-16 op .Ar command
26 3baa2617 2022-02-16 op .Op Ar argument ...
27 3baa2617 2022-02-16 op .Sh DESCRIPTION
28 3baa2617 2022-02-16 op .Nm
29 cfb00927 2022-02-17 op is a music player daemon and command-line utility that plays music
30 cfb00927 2022-02-17 op in the background.
31 cfb00927 2022-02-17 op The server is automatically started when the user interacts with
32 cfb00927 2022-02-17 op it, but it can be started manually by running
33 cfb00927 2022-02-17 op .Nm
34 cfb00927 2022-02-17 op without any arguments.
35 3baa2617 2022-02-16 op .Pp
36 3baa2617 2022-02-16 op The following options are available:
37 3baa2617 2022-02-16 op .Bl -tag -width 12m
38 3baa2617 2022-02-16 op .It Fl d
39 3baa2617 2022-02-16 op Do not daemonize.
40 3baa2617 2022-02-16 op if this option is specified,
41 3baa2617 2022-02-16 op .Nm
42 3baa2617 2022-02-16 op will run in the foreground and log to
43 3baa2617 2022-02-16 op .Em stderr .
44 cfb00927 2022-02-17 op It's ignored if any commands are given on the command line.
45 3baa2617 2022-02-16 op .It Fl v
46 3baa2617 2022-02-16 op Produce more verbose output.
47 3baa2617 2022-02-16 op .It Fl s Ar socket
48 3baa2617 2022-02-16 op Use
49 3baa2617 2022-02-16 op .Ar socket
50 3baa2617 2022-02-16 op instead of the default
51 3baa2617 2022-02-16 op .Pa /tmp/amused-$UID
52 3baa2617 2022-02-16 op to communicate with the daemon.
53 3baa2617 2022-02-16 op .El
54 3baa2617 2022-02-16 op .Pp
55 3baa2617 2022-02-16 op The following commands are available:
56 3baa2617 2022-02-16 op .Bl -tag -width 12m
57 3baa2617 2022-02-16 op .It Cm add Ar
58 3baa2617 2022-02-16 op Enqueue the given files.
59 3baa2617 2022-02-16 op .It Cm flush
60 3baa2617 2022-02-16 op Erase the playlist.
61 40aa47d9 2022-02-19 op .It Cm jump Ar pattern
62 40aa47d9 2022-02-19 op Play the first song in the playing queue that matches
63 40aa47d9 2022-02-19 op .Ar pattern
64 40aa47d9 2022-02-19 op .Pq a basic regexp .
65 ba7595d8 2022-02-17 op .It Cm load Op Ar file
66 ba7595d8 2022-02-17 op Load a playlist from
67 ba7595d8 2022-02-17 op .Ar file ,
68 ba7595d8 2022-02-17 op which has one song per line.
69 ba7595d8 2022-02-17 op If not specified, reads from
70 ba7595d8 2022-02-17 op .Em stdin .
71 6b47a39f 2022-02-21 op .It Cm monitor
72 6b47a39f 2022-02-21 op Stop indefinitely and print the events as happen.
73 6b47a39f 2022-02-21 op Events are print one per line and are triggered either by other
74 6b47a39f 2022-02-21 op instances of
75 6b47a39f 2022-02-21 op .Nm
76 6b47a39f 2022-02-21 op issuing commands or the player itself anvancing the playing queue.
77 40aa47d9 2022-02-19 op .It Cm next
78 40aa47d9 2022-02-19 op Play the next song.
79 40aa47d9 2022-02-19 op .It Cm pause
80 40aa47d9 2022-02-19 op Pause the playback.
81 40aa47d9 2022-02-19 op .It Cm play
82 40aa47d9 2022-02-19 op Start or resume the playback.
83 40aa47d9 2022-02-19 op .It Cm prev
84 40aa47d9 2022-02-19 op Play the previous song.
85 3ec4f99d 2022-02-19 op .It Cm repeat one|all on|off
86 3ec4f99d 2022-02-19 op Enable or disable the repetition of the current track
87 3ec4f99d 2022-02-19 op .Pq Cm one
88 3ec4f99d 2022-02-19 op or of the playing queue
89 3ec4f99d 2022-02-19 op .Pq Cm all .
90 40aa47d9 2022-02-19 op .It Cm restart
91 40aa47d9 2022-02-19 op Rewind the current song to the beginning.
92 40aa47d9 2022-02-19 op .It Cm show Op Fl p
93 40aa47d9 2022-02-19 op Print the current playlist.
94 40aa47d9 2022-02-19 op With
95 40aa47d9 2022-02-19 op .Fl p
96 40aa47d9 2022-02-19 op it prints a
97 40aa47d9 2022-02-19 op .Dq pretty
98 40aa47d9 2022-02-19 op list with the current playing song prefixed by
99 40aa47d9 2022-02-19 op .Sq > \& .
100 40aa47d9 2022-02-19 op .It Cm status
101 40aa47d9 2022-02-19 op Print playback status and current song.
102 40aa47d9 2022-02-19 op .It Cm stop
103 40aa47d9 2022-02-19 op Stop the music player.
104 40aa47d9 2022-02-19 op .It Cm toggle
105 40aa47d9 2022-02-19 op Play/pause the playback.
106 3baa2617 2022-02-16 op .El
107 cfb00927 2022-02-17 op .Pp
108 cfb00927 2022-02-17 op Commands can be also abbreviated to the smallest unique prefix,
109 cfb00927 2022-02-17 op so that for example
110 b25bcbd1 2022-02-19 op .Sq rep
111 cfb00927 2022-02-17 op can be given instead of
112 b25bcbd1 2022-02-19 op .Sq repeat .
113 3baa2617 2022-02-16 op .Sh FILES
114 3baa2617 2022-02-16 op .Bl -tag -width "/tmp/amused-$UID" -compact
115 3baa2617 2022-02-16 op .It Pa /tmp/amused-$UID
116 bf57ea43 2022-02-22 op .Ux Ns -domain
117 bf57ea43 2022-02-22 op socket used for communication with the daemon.
118 3baa2617 2022-02-16 op .El
119 2c35cd80 2022-02-17 op .Sh EXAMPLES
120 2c35cd80 2022-02-17 op Enqueue all mp3 files in the current directory:
121 2c35cd80 2022-02-17 op .Bd -literal -offset indent
122 2c35cd80 2022-02-17 op $ amused add *.mp3
123 2c35cd80 2022-02-17 op .Ed
124 2c35cd80 2022-02-17 op .Pp
125 2c35cd80 2022-02-17 op Recursively add all opus files:
126 2c35cd80 2022-02-17 op .Bd -literal -offset indent
127 2c35cd80 2022-02-17 op $ find . -type f -iname \\*.opus -exec amused add {} +
128 2c35cd80 2022-02-17 op .Ed
129 2c35cd80 2022-02-17 op .Pp
130 2c35cd80 2022-02-17 op Save the state of the player to the file
131 2c35cd80 2022-02-17 op .Pa state :
132 2c35cd80 2022-02-17 op .Bd -literal -offset indent
133 2c35cd80 2022-02-17 op $ amused show > state
134 2c35cd80 2022-02-17 op .Ed
135 2c35cd80 2022-02-17 op .Pp
136 2c35cd80 2022-02-17 op Load a previous state:
137 2c35cd80 2022-02-17 op .Bd -literal -offset indent
138 2c35cd80 2022-02-17 op $ amused load < state
139 2c35cd80 2022-02-17 op .Ed
140 19ae7661 2022-02-17 op .Pp
141 19ae7661 2022-02-17 op Randomize the current playlist:
142 19ae7661 2022-02-17 op .Bd -literal -offset indent
143 19ae7661 2022-02-17 op $ amused show | sort -R | amused load
144 19ae7661 2022-02-17 op .Ed
145 19ae7661 2022-02-17 op .Pp
146 19ae7661 2022-02-17 op Remove duplicates:
147 19ae7661 2022-02-17 op .Bd -literal -offset indent
148 19ae7661 2022-02-17 op $ amused show | sort | uniq | amused load
149 19ae7661 2022-02-17 op .Ed
150 99b9b3af 2022-02-17 op .Pp
151 99b9b3af 2022-02-17 op Select a song with
152 99b9b3af 2022-02-17 op .Xr fzf 1
153 99b9b3af 2022-02-17 op .Bd -literal -offset indent
154 99b9b3af 2022-02-17 op $ amused jump "$(amused show | fzf +s)"
155 99b9b3af 2022-02-17 op .Ed
156 3baa2617 2022-02-16 op .Sh AUTHORS
157 3baa2617 2022-02-16 op .An -nosplit
158 3baa2617 2022-02-16 op Then
159 3baa2617 2022-02-16 op .Nm
160 3baa2617 2022-02-16 op utility was written by
161 3baa2617 2022-02-16 op .An Omar Polo Aq Mt op@openbsd.org .