Commits
- Commit:
9307af9e3cb00ecb2647b4a62818fb728ca05dd4
- From:
- Omar Polo <op@omarpolo.com>
- Date:
use imsg_get_data() instead of accessing imsg.data
- Commit:
50e0da0e7f8e07ab5d5c970ebca132a49b5fdbd8
- From:
- Omar Polo <op@omarpolo.com>
- Date:
rename ibuf arguments to imsgbuf
ibuf is just too confusing since there is also the 'struct ibuf'.
- Commit:
b7e63abaf97545cf19d25cefee076ec51ffcccda
- From:
- Omar Polo <op@omarpolo.com>
- Date:
remove unused control_imsg_relay
- Commit:
23a9967121cd2e7ead33dc7ccdeac7d8be2855c8
- From:
- Omar Polo <op@omarpolo.com>
- Date:
(cont) work around lack of SOCK_{CLOEXEC,NONBLOCK}
funny how they're trying to deprecate daemon() in favour of the
mess of posix_spawn and still don't provide genuinely useful stuff
like SOCK_CLOEXEC, NONBLOCK and pipe2(2).
- Commit:
1738062c340fe8420ec57741ef1f53fd7a1a3904
- From:
- Omar Polo <op@omarpolo.com>
- Date:
work around missing SOCK_{CLOEXEC,NONBLOCK} on some dumb OSes
- Commit:
ff37a2708a65b27b7dcab2da6b0187a4ba6b1a42
- From:
- Omar Polo <op@omarpolo.com>
- Date:
don't reply with a STATUS on MODE change
This is to help amused-web. Change the ctl to send an extra STATUS
after a MODE change to preserve the behaviour.
- Commit:
3c6e1aaeede670574a0a880a27bd1fd85269024b
- From:
- Omar Polo <op@omarpolo.com>
- Date:
fix control_accept handling of ENFILE/EMFILE
Not sure how it worked with libevent before, but the reschedule is
wrong. We need to schedule a timer to re-add the event on the
listening fd.
- 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:
578f8d0cb8038f6ef45368b7d706298223ba5682
- From:
- Omar Polo <op@omarpolo.com>
- Date:
adjust copyright years
- 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:
3dd907310bab777213b20bd814d72faba91e40ae
- From:
- Omar Polo <op@omarpolo.com>
- Date:
enrich `amused monitor' reported events
The monitor mode now has access to some additional information other
than just the name of the event.
The `mode' and `seek' events now report the mode status and the
position/duration respectively, allowing consumers of `amused monitor'
to show correct and coherent information.
It helps in particular applications like `amused-monitor' (in contrib/)
that show a progress bar for the current song. Before, they had to run
their own timers and periodically synchronize using `amused status', now
they can just update the state in the same `amused-monitor' event loop.
- Commit:
b72c076563d1642eda3aaa0c38169b674e3d9725
- From:
- Omar Polo <op@omarpolo.com>
- Date:
print the current modes after 'amused consume/repeat'
- Commit:
9881c98ce0817889c42c9ad4146d7e1db91d7005
- From:
- Omar Polo <op@omarpolo.com>
- Date:
define constants for mode special values and add a toggle value
- 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.