Commit Briefs

Omar Polo

handle fdopen failure gracefully


Omar Polo

opusfile and vorbisfile want a different type for the buffer

no practical difference, just the compiler being annoying on linux


Omar Polo

use (a modified version of) kristaps' oconfigure

see GitHub issue #1


Omar Polo

implement seeking

This adds the internal management of the seeking, as well as the decoder backends bits.



Omar Polo

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


Omar Polo

free the FILE on op_open_callbacks failure

the API is a bit of a shitshow. op_fdopen is just a wrapper around FILE*, but returns void* for don't know what Windows limitation. if op_open_callbacks fails we have to free the stream by ourselves. the documentation implies that this void* pointer is, in fact, a FILE*.


Omar Polo

s/player_setrate/player_setup

when the function was renamed, the error messages weren't.


Omar Polo

unbreak opus too

i am just unable to do a proper refactoring. When i changed the return type of play_opus I mixed `r' and `ret', so it would always play zero samples...


Omar Polo

change play_*() so that they return an integer

this will allow to remove the `got_stop' hack in player.c


Omar Polo

drop now unused #include <sndio.h>

with the recent refactoring, sndio is only visible in player.c



Omar Polo

allow changing sample bit size


Omar Polo

don't die on opus failures


Omar Polo

simplify further the code