For a while, I have been coding a study to recreate a real-time movie player that will show the video in a more retro-tech experience.

Close-up image of a Cinema Display
This is my Cinema Display enlarged … see the RGB pixels all lined up ?

Here is what I mean.
(You can click on the movie to make it fullscreen)

No source video in center version

Your camera (such as iSight) as a video source

An interactive MovieClip as a source
(Scrub the movie with your mouse from left to right, vice versa)

You can click on the movie in any sample to make it fullscreen.

How to line up your RGBs
The fun part is always research.
I found out that there are lots of ways to line up the RGB components, and all of them had their pros and cons. My display uses the left, straight line-up, but I used the right, shifted version to make the videos look better at this type of low-rez visualization. Of course, the text is horrible.

The problem was, I started my experiments with Flash CS3 and AS2.0, and the best I could do was 4 seconds to setup the RGB version of the pixels, and another 4 to color them – per frame !!
This is just out of the question. This was for a image that was 400×300 pixels in size.

So, I revised my project to AS3.0/FP9, and though I had to make the movie size smaller to a minimal 80×60 pixels, the AS3.0 version is running smoothly on a MacBook Air 1.6GHz (the first MBA), and I’m happy ;D

Now, with AS3.0/FP10 on Flash CS4, with the same code, same hardware, the movie is working with a final output of 800×600px@30FPS, with the master movie at 160×120.

It should be much more faster with Pixel Bender shading, or a more bitmap approach, but the present status is very usable for a project.

Forgive me, as the .as file is not coded as a class, but this is just a study, and I am not that fluent as a programmer.

How to use :
Within SaburiRGBPlayer.as, the 19th line -

var myMode:int=0;//0:cam 1:flv 2:mc
var setPinP:Boolean=false;


You can set myMode to set the source of the RGB video to your Camera, FLVs, or a MovieClip.
The download defaults to a camera.setPinP shows the source video in the center.
If you choose FLV mode, set the array in line 30 to the filenames, and set the array in line 31 to change the volume of audio.

var myFilenameArray:Array=["ipod.flv","ipod2.flv","ipod3.flv","ipod4.flv","ipod5.flv","ipod_nano.flv","ipod_nano_laser.flv"];
var myVolumeArray:Array=[1,0.3,1,1,1,1,1];

Here are the files : SaburiRGBPlayer.zip (24KB)

iPod ADs always rock. Just love them all.

Follow me on Twitter