I recently put together a “it just works” version of WOsu and WOsu-record.
Currently the primary use of WOsu is the Web osu! Replay Viewer, which allows users to view replays straight on the web.
WOsu-record is an Electron application that uses WOsu, ffmpeg and nodejs to record replays to a video file.
Currently the idea is to use the ffmpeg image2pipe feature to write frames through stdin.
First spawn a child ffmpeg process.
Next, for each frame grab the canvas data and convert to a binary string.
Finally, we can write the data to stdin.
When finished, we can close the stream.