ALSA broken pipe errors

Since last summer, when I changed Klipspringer to access ALSA directly, I’ve had problems with occasional sudden stops in playback and capture, caused by broken pipe errors from the ALSA interface. This post contains the information I would have needed – but failed to find when searching the internet – to solve the problem when… Continue reading ALSA broken pipe errors

Ten standard ways of representing binary numbers

If you’ve read the headline and think that ten sounds like an awful lot of different binary-number formats, perhaps you are guessing that it includes floating point, or ones’ complement and other archaic representations, but no, this is all about what’s in common current use, all integers, and all based on two’s complement. This post… Continue reading Ten standard ways of representing binary numbers

The size of silence (and other quirks in streaming FLAC to browsers)

Streaming music from the Klipspringer hub requires three components to interact asynchronously – the Java process that encodes and transmits the data, the web browser with the client-side code that receives and plays it, and the HTTP server that ties them together – so no wonder it’s been stuck in deadlock many times during development.… Continue reading The size of silence (and other quirks in streaming FLAC to browsers)