aus Metalab Wiki, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Zur Navigation springenZur Suche springen

RetinaTattoo is a software for live video streaming to LED strips. It is written in C++11 and consists of a client and server. The client can be substituted with common video streaming solutions (like gstreamer or vlc), but often the command line client is just simpler to use. The server can be configured to match the hardware specifics (size, pixel format...) of your led stripes and tune color characteristics (via HSL). WSyS and me used it to stream and play super mario bros. from a nes emulator to wsys's LED Matrix.

There's the code:


Streaming video to you LED Matrix using gstreamer

Let's say you have a Raspberry PI connect via SPI to your LED Matrix and some videos on your notebook which you would like to display. The following procedure scales and streams the video to the LED Matrix, and also mirrors the output to a local X11 window.

On the raspberry:

# clone the RetinaTattoo repository
git clone

# install dependencies
apt-get install build-essential libboost-system-dev libboost-thread-dev

# build it
cd RetinaTattoo

# start the server. in this example for a 24x24 led matrix with bgr pixel format and alternating scan line direction. additionally it slightly dims lightness.
./server -a -f bgr -d24x24 -l-10 8888

On your notebook:

# install gstreamer 
apt-get install gstreamer-tools gstreamer0.10-alsa gstreamer0.10-ffmpeg gstreamer0.10-plugins-base gstreamer0.10-plugins-good gstreamer0.10-plugins-ugly gstreamer0.10-x

# start the stream assuming your raspberry has the ip address
cd RetinaTattoo/scripts
./ myvideo.avi 8888

It's also possible to capture a X11 window and stream it directly to a LED Matrix, but i haven't written easy-to-use scripts for that yet. feel free to bug me :)

Featuring articles