Ambient Light TV with a Raspberry Pi and a Webcam (Part1)

After finishing my Arduino 8×8 Led Screen, I got a Raspberry Pi. This is what I made with it! A 50 Pixel RGB ambient light rig for my TV.

The colors are sampled from the edges of the TV screen using a webcam. After sampling from the captured frame, each RGB led is updated with the appropriate color on screen. Watching movies and playing games with it turned on is awesome!

The initial prototype used an Arduino. The color sampling was done on the PC and sent to the Arduino with serial output. However, with that setup I could only use it when my computer was the input feed (cloned monitor to TV). I also managed to break my Arduino, so that forced me to use the Pi instead.

With the webcam approach, I can use it with any feed: cable TV, XBox, Apple TV, Steam Big Picture and the Raspberry Pi itself. I briefly looked into HDMI splitters and frame grabbers but that was all way too expensive.

I took a load of work in progress pictures while making it, I’ll post those in part 2. Overall it took about 6 weekends to complete, over a period of 7 months.

Read part 2 here!

  1. Waldo, that is very impressive. Do you have detailed instructions posted anywhere?

    Also, where are you placing the webcam? Is it connected wirelessly to the Raspberry Pi?

    I like this solution, because as you say it doesn’t require PC output, and therefore it can work with whatever content is displayed on-screen, regardless of source.

    1. Thanks Matt. I’m working on the follow up post.

      I put my webcam on a bookcase next to my tv, but there are a number of options. The color sampling doesn’t really need a lot of resolution. It’s a usb camera (Logitech C250).

  2. Hi Waldo, I saw your post yesterday while I was searching for the solution in making a DIY Ambilight. I am impressed with the quality of your work and cannot help waiting for your part2 to be posted!

    I am totally interested with your webcam solution in making the Ambilight. Please give us a hint whenever you can, or if possible, post the second part with detailed instructions of how to achieve your perfection~

    Thank you very much for sharing! Great work buddy! I will totally check this site everyday from now!~

Leave a comment

Your email address will not be published. Required fields are marked *