Create a Waveform Image with ffmpeg
Waveform images have a variety of uses and I've started seeing waveform images overlaying at the bottom of videos. That type of feature seems useful if you want to see identify music in a video or specific spaces in a video which feature action. If you're creating an audio-centric app, you may have a dozen uses for the waveform image.
You can easily create a waveform image using the amazing ffmpeg utility with a very short command:
ffmpeg -i input -filter_complex "showwavespic=s=640x120" -frames:v 1 output.png
The image you'll get back will look similar to:

There are a variety of customizations you can create for waveform image as detailed in the ffmpeg waveform documentation. Take some time to experiment with all of the features provided by ffmpeg -- you can do amazing things with media!
![Responsive and Infinitely Scalable JS Animations]()
Back in late 2012 it was not easy to find open source projects using requestAnimationFrame() - this is the hook that allows Javascript code to synchronize with a web browser's native paint loop. Animations using this method can run at 60 fps and deliver fantastic...
![LightFace: Facebook Lightbox for MooTools]()
One of the web components I've always loved has been Facebook's modal dialog. This "lightbox" isn't like others: no dark overlay, no obnoxious animating to size, and it doesn't try to do "too much." With Facebook's dialog in mind, I've created LightFace: a Facebook lightbox...
![Create a Clearable TextBox with the Dojo Toolkit]()
Usability is a key feature when creating user interfaces; it's all in the details. I was recently using my iPhone and it dawned on my how awesome the "x" icon is in its input elements. No holding the delete key down. No pressing it a...
![Simple Image Lazy Load and Fade]()
One of the quickest and easiest website performance optimizations is decreasing image loading. That means a variety of things, including minifying images with tools like ImageOptim and TinyPNG, using data URIs and sprites, and lazy loading images. It's a bit jarring when you're lazy loading images and they just...
How do you get a transparent background?
Is it possible to build waveform image using
offlineAudioContext? Seems like the exact tool for the job.