How to give an image or video a TV screen effect? I thought it would be interesting to create a .blend that filters any regular video or image with vintage television look. 

Edit: Although this question initially arose from my desire to create a vintage look, it has since been pointed out in a comment that all displays use arrays of RGB emitters, so it's not really an issue of vintage or not. How vintage it will end up looking is probably more a matter of the shape, size, and density of the emitters.

Reference images:






Upon examining the structure of screens, the most common seems to be rows of vertical RGB bars:



Here is another type which I believe is common in computer displays - circular dots in a hexagonal grid:



I have been thinking about how to make a screen in Blender that takes its input from an image or image sequence and for each frame converts the RGB value for a pixel (or region) and uses that to illuminate the red green and blue phosphors in the correct ratios so that when viewed from a distance an image is distinguishable.

Do you think this will require python scripting? I made some initial attempts modeling an array of phosphors then using a Light Path node and a Separate RGB node in Cycles but I haven't gotten very far. I would love to hear what you all can suggest.

Thanks!
Create an object that has the basic shape of your pixels and assign 3 materials to it using emission shaders. I named the materials for clarity:





For each of the materials use the same image texture and a separate RGB node to control the brightness of an emission shader, change the color of the emitter to mach that of each channel. Here's the setup for the red material for example:



Note that I'm using an empty to control the texture coordinates.

Then by creating arrays of your base object, and controlling the size and placement of your texture (using the empty) you can easily get the effect you are after: