Channel Mixing and Pseudo-Inverses


Let’s say we want to mix three channels onto two because the communication device has only two available channels but we still want to emulate a three channel link. If we can afford coding, then it’s not a problem because we can build our own protocol so add any number of channels using a structured data stream. But what if we cannot control the channel coding at all? In CDs, for example, there’s no coding: there are two channels encoded in PCM and a standard CD player wouldn’t understand the sound if it was encoded otherwise.

The solution is to mix the three channels in a quasi-reversible way, and in a way that the two channels can be listened to without much interference. One possible way is to mix the third channel is to use a phase-dependant encoding. Early “quadraphonic” audio systems did something quite similar. You can also use a plain time-domain “mixing matrix” to mix the three channels onto two. Quite expygeously, let us choose the matrix:

M=\left[~\begin{array}{ccc} \frac{2}{3} &0&\frac{1}{3}\\ 0 &\frac{2}{3}&\frac{1}{3}\end{array}~\right]

Read the rest of this entry »

Lost+Found: Ghostly Geometry


Lusine – “Two Dots” from Ghostly International on Vimeo.

Live Video Color Gamut


The other day—well, a year ago or so—I was invited to visit CBC’s digital TV studios in Montréal by the SMPTE Montréal. We were shown around, even in the somewhat small control rooms. Amongst all the displays, dials, monitors, and misc. blinkenlights, I noticed a small LCD display showing an hexagonal projection of the current show’s color gamut in YC_rC_b (or maybe YP_bP_r?), probably for quality assessment purposes. I thought it was pretty cool, actually.


Let’s see how we can realize this projection with as little CPU time as possible.

Read the rest of this entry »

Wallpaper: Believe… or don’t


Believe, or dont. 1920×1200

Wallpaper: Peace

Peace 1920×1200

Peace. 1920×1200

Sleepless Koala


A few days ago, I changed my machine and upgraded to Ubuntu 9.10 (Karmic Koala) and everything went fine, except for the screen-saver that would activate properly but not switch the screen into sleep mode after a while. I found a couple of fixes because despite being a documented bug, there’s not definitive fixes yet.

Read the rest of this entry »

Building a Personnal Library (part I)


Building a decent personal library is not very difficult but it can be really expensive. It doesn’t have to, you just have to know where to look for.


Read the rest of this entry »

Cats, Pharaohs, and the Golden Ratio


Certain numbers keep showing up in nature. The Golden Ratio,

\phi \approx \displaystyle\frac{1+\sqrt{5}}{2}

is one of them. It shows up in cats, sunflowers, and Egyptian pyramids.


Read the rest of this entry »

Unresponsive Kitty


Suggested Readings:The Pet Dragon: A Story about Adventure, Friendship, and Chinese Characters


Christoph Niemann — The Pet Dragon: A story about Adventure, Friendship, and Chinese Characters — Greenwillow Books, 2008, 40 pp. ISBN 978-006-157776-5

(Buy at

I greatly appreciate Niemann’s graphic style. He’s original and kept his playful side. This short book—a kids’ book—is full of his odd poetry and graphic genius. The Pet Dragon is built around the analogies between what we can imagine chinese character represents and pictograms. A short à la Petit Prince story, just a lot less pretentious.

The book’s website
The author’s website.