All   Archive   Code   News   Projects  


My name is Stephen Schieberl. I live in the woods near Portland, Oregon. Hit me up to work together.

Ban the Rewind?


Pictured: Test harness for encoding MP3s with LAME in Cinder I've been working on a number of audio-heavy applications within the Cinder lately. I found that were a few pieces of code which I've been using a lot, and have broken them out to blocks. Some of the fundamental things we take for granted like line/mic input on Windows, FFT, recording, and MP3 encoding, haven't been readily available. At the first chance, I cleaned these up, built sample applications, and packaged them up to share. Download BTR Audio Blocks 001 BTR Audio Blocks The samples inside this pack demonstrate the following: Audio visualization Fast Fourier transform Audio input on Windows Stream live input to WAV file Encode WAV to MP3 Basic synthesis If you dig into the blocks, you'll also find out how to do: Circular buffering Create a callback manager Convert PCM to float Other stuff... These blocks are generally for Windows, but are worth a look on any OS if you're stumped about how to do something with audio. I found that the next sample app generally relied on a block from the previous app. Rather than break each block out to it's own package, it made more sense to ship them together. A standalone Cinder block for KissFFT is available here . A standalone Cinder block for capturing live audio input with Windows' low level API (no DirectX SDK) is available here . Updated 2011-7-26 to resolve an ambiguity issue.