Commits
- Commit:
1738062c340fe8420ec57741ef1f53fd7a1a3904
- From:
- Omar Polo <op@omarpolo.com>
- Date:
work around missing SOCK_{CLOEXEC,NONBLOCK} on some dumb OSes
- Commit:
0a53bd62d11ed31ce71da1fc9993bc25a6c93755
- From:
- Omar Polo <op@omarpolo.com>
- Date:
switch from libevent to a smaller, thin wrapper around poll()
libevent is a very cool library, I like its APIs and enjoy using
it. However, for amused it is maybe a bit too much since it doesn't
deal with too many file descriptors. Amused only needs to monitor
one fd for the player process and the currently connected clients.
Given that it runs per-user locally, having more than a dozen of
fds open is very, very rare.
- Commit:
e3317c86113ff236272f6bf1b88cacfe54103be3
- From:
- Omar Polo <op@omarpolo.com>
- Date:
fix my email address
used @openbsd.org initially by mistake and got copied around in
most files. Since this has nothing to do officially with the OpenBSD
project, use my own email address.
- Commit:
93cde5d11223ff70e3ced414173b32a63790c972
- From:
- Omar Polo <op@omarpolo.com>
- Date:
drop notify_seek var; always notify on seeks
First move towards a change in the behaviour of `monitor': advancement
on tracks during the play are reported also every second, as the music
is played, not only when there's an explicit seek.
- Commit:
9fb9424225a739a0fbbfec5d31f21458126fd9c2
- From:
- Omar Polo <op@omarpolo.com>
- Date:
add consume mode
the consume mode implicitly drops the tracks from the playlist when
played 'till the end (note that skipping over a track doesn't trigger
the consume mode - yet?)
- Commit:
15aecb89d41f59ac375c7a2a2194ab7cddcaa020
- From:
- Omar Polo <op@omarpolo.com>
- Date:
monitor: fix reported event
rethink a bit which event are reported and when.
- drop 'toggle' event as it's not useful; now 'amused toggle' will
report the play/pause event.
- replace 'flush' with 'load'. there's no real difference between a
flush and an empty load. (also, less event the better)
- some events (next/prev/jump) are reported earlier to avoid possible
issues (when messing around with the playing queue we can end up in
every possible state.)
- report 'seek' only after it really happened (i.e. after the player
process sent the new position.) There's still a possible race here
(we can receive a previous IMSG_POS and think it's the reply to the
seek) but it it's hard/impossible to work around.
- drop 'restart'. we have 'seek' now which is better (and actually
restart is implemented on top of seek.)
- add 'seek' to the default list of events.
- Commit:
949b5c2eb6f46f77b423a93558d196204dce2953
- From:
- Omar Polo <op@omarpolo.com>
- Date:
refactor control_notify
it's awkward to call it with the address of the imsgev struct inside
the ctl_conn struct. Just relay the info to every client in monitor
mode. After all, if a client is in monitor mode *and* issues
commands, it's not strange that they're echoed back (note that this is
currently impossible, the command line client can either issue
commands or be in monitor mode.)
- Commit:
8d08767078347495fc28f6a97ad1e5e1b3b6f5f2
- From:
- Omar Polo <op@omarpolo.com>
- Date:
reimplement `restart' on top of seek
- Commit:
f36fd90a2e6ab101692fba0fa643aec5035597cd
- From:
- Omar Polo <op@omarpolo.com>
- Date:
use (a modified version of) kristaps' oconfigure
see GitHub issue #1
- Commit:
791d3db313f1f9816c699583c97079efccd408d6
- From:
- Omar Polo <op@omarpolo.com>
- Date:
implement seeking
This adds the internal management of the seeking, as well as the
decoder backends bits.
- Commit:
ae335651f8a91f929ca576e1e3e3e2a5ba780059
- From:
- Omar Polo <op@omarpolo.com>
- Date:
declare local functions as static
- Commit:
ff06024f86fb68ea11b030f669b162794eb5bc19
- From:
- Omar Polo <op@omarpolo.com>
- Date:
keep track of current position and total duration
- Commit:
17ef54d6ac6c34b0b1370c1c57836322702783e1
- From:
- Omar Polo <op@omarpolo.com>
- Date:
improving error reporting
makes the player process optionally send back a string describing the
failure to provide a better and more coincise error message.
This turns the syslog message(s):
amused: unknown file type
amused: failed to play, skipping /home/op/pics/phos.jpg
into:
amused: unknown file type; skipping /home/op/pics/phos.jpg
- Commit:
58b2f322e4e3360e8d7e1fd892842d891fdba186
- From:
- Omar Polo <op@omarpolo.com>
- Date:
skip every non-regular file
not only directories... I guess we can't do much even with sockets,
fifos or character devices. (symbolic links are still supported since
we follow them)
- Commit:
ebdc0a24f14a77c01c20f3c8f7d106dc2f0ee410
- From:
- Omar Polo <op@omarpolo.com>
- Date:
drop unnecessary temp variable in main_restart_track