# Waveforms, Let's Talk About Them

DevFeed: [Waveforms, Let's Talk About Them](<https://devfeed.tech/articles/waveforms-let-s-talk-about-them-2177.md>)

Original publisher: [Read original article](<https://developers.soundcloud.com/blog//waveforms-let-s-talk-about-them>)

Published: 2012-06-26T00:00:00Z

Content type: article

Language: en

Sources: [SoundCloud Backstage Blog](<https://devfeed.tech/sources/soundcloud-backstage-blog.md>)

Topics: [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Canvas](<https://devfeed.tech/topics/canvas.md>), [WebKit](<https://devfeed.tech/topics/webkit.md>), [CSS](<https://devfeed.tech/topics/css.md>), [jQuery](<https://devfeed.tech/topics/jquery.md>), [HTML](<https://devfeed.tech/topics/html.md>)

Tags: [announcements](<https://devfeed.tech/tags/announcements.md>), [css](<https://devfeed.tech/tags/css.md>), [html](<https://devfeed.tech/tags/html.md>), [image](<https://devfeed.tech/tags/image.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [learn](<https://devfeed.tech/tags/learn.md>), [library](<https://devfeed.tech/tags/library.md>), [plugin](<https://devfeed.tech/tags/plugin.md>), [server](<https://devfeed.tech/tags/server.md>), [techniques](<https://devfeed.tech/tags/techniques.md>)

## AI overview

This SoundCloud developer article introduces Waveform.js, a JavaScript library for coloring audio waveforms. It reviews element stacking, WebKit masking, and Canvas-based pixel manipulation, including a server-side workaround for cross-domain image restrictions and a jQuery plugin implementation.

## Source excerpt

Waveforms I've worked at SoundCloud for over two years now, and if there's one thing I do a lot, it's color waveforms. Tons of them. And, I've done it several different ways. Today, Johannes and I are pumped to announce a new JavaScript library called Waveform.js that will assist you in your coloring efforts. But first, let's take some time to look back and learn from past techniques.