What is a Video Processor?
A White Paper and Introduction to Video Signal Processing
The electronic definition of a processor as it relates to this discussion is a device that transforms a video signal or signals into something acceptable for another use.
There are other devices that share the term processor in their name, but this white paper is specific to systems that drive single or multiple human viewed video displays such as LCD screens, front projectors, DLP rear projection displays, and the like.
There are many other names that describe a Video Processor (referred to hereafter as VP) such as Display Wall Processor, Display Wall Controller, Wall Controller, Wall Processor, Video Server, Data Wall Processor, Data Wall Server, Multiviewer, etc. We will refer to all of these as VP in this white paper.
There are 3 basic categories of Video Processors:
1) Fig. 1 Single input, multiple outputs.
2) Fig. 2 Multiple inputs, single output.
3) Fig. 3 Multiple inputs, multiple outputs.
3) Fig. 3 Multiple inputs, multiple outputs.
This White paper will focus on the multi input and multi output variety of these system as single input or single output system will share some of the same characteristics.
Most Video Processors are hardware devices that are built to order because the number of inputs and outputs required are specific to a given installation’s needs. In this white paper a number of input and output complements will be shown and discussed, however the basic premise is the same for most systems.
The most common use of these Video Processors is to drive human viewed displays positioned in arrays creating Video Walls. Other terms for these arrays are Data Walls, Large Screen Displays, Visualization Environments, etc. Quite often each display or screen in the array can be quite large, generally between 40in - 120in each measured diagonally. When multiple displays this large are tiled together it can create a very large overall display hence the term 'Wall' showing video on it. (Width x Height is the geometry order, 6 x 3 below)
Fig. 4 is a 6 x 3 Video wall array of 50in screens in a news room:
Video wall arrays by simple multiplication have very large aggregate pixel counts. As and example, if you have an array with 18 displays each with 2 million pixels, (referred to as 2MP) the overall display you have created has 36 million pixels or 36MP. This is much larger than any single video graphics chip can render, hence the need to gang multiple graphics chips together in a single device that coordinates each pixel relative to all others. This is the job of a Video Processor.
Creating such large physical and pixel count display arrays may come from the need to display a single video signal across all available pixels in the array or multiple video source signals each being shown on some portion of the array, or a combination of both.
In our example above of 18 displays with a total of 36MP, if we wanted to show a single 2MP image across the entire display we would have to stretch it 18 times lager, or more properly scale it up to fit, also called Upscaling.
Fig. 5 is an example of multi output processor Upscaling 1 image across a 4x1 array.
Conversely if we had 4 individual 2MP source signals we wanted to show in equal size on 1 of the 18 2MP displays in the above array we would have to shrink each one 4 times, or Downscale it to fit. Upscaling uses multiple pixels in the display array to represent 1 pixel in the source signal. Downscaling must remove some of the source pixels through interpolation so that it can fit into the desired display space. Full motion video signals are less sensitive to scaling than text based images because of the human brains ability to do its own interpolation.
It is quite common for a video processor to perform up and down scaling functions at the same time on different regions of the display array.
Fig. 6 is an example of multi input and multi output processor doing Up and Downscaling:
Processors are different from a switch:
Video Processors differ from matrix switches in 2 important ways,
1) A switch can accept source signals at various resolutions and output those same signals to multiple outputs at the same unchanged resolution. A VP can accept a source signal then split that image onto multiple outputs each showing a portion of the original signal or show multiple inputs one 1 output.
2) A VP will be driving the display array at a constant pixel resolution, generally at the native resolution of the displays used. (1920x1080, 1366x768, etc) The resolution of the input signals can be totally different from each other and the output resolutions since has the ability to do scaling.
Theory of operation:
Upon installation and configuration the output array geometry and resolution of each output is entered into the operating system of the Video Processor. The operating system internally creates a single large logical pixel canvas that matches the display array in aggregate. When an input signal is to be displayed on some portion of an output or outputs, the Video Processor creates a window of some dimensions on the pixel canvas. Then internally the input signal to be displayed is routed and scaled to fit inside the window just created and sent to the outputs. This process continues until all desired inputs being displayed in the size and position desired by the humans viewing it.
Some simple single input multi output processors that will only scale a single signal across all outputs do not run software. These are dumb devices that split the source signal into equal parts and send that portion to each output.
Most systems that allow flexible window manipulation are generally carried out internally with hardware for speed. This hardware in turn is controlled by some sort of software generally consisting of an operating system and a user interface that can be interacted with by human system operators.
Below in Figure 7 is and example of a user interface configured to drive a 4x3 array of displays. On the left hand window pane the 16 input sources are arranged vertically and indicate if there is a signal on that input, and of what signal type is present by virtue of the green box around the icon that indicated the type.
The input window is represented by a wire frame and labeled by the input signal that is being shown within it on the output array.
Fig. 7 is an example of a user interface showing input windows represented by wire frames.
In addition to hardware input signals being shown in windows, this system can open other software applications such as Microsoft Internet Explorer in this example, and make those applications part of the window complement being sent to the outputs and being displayed.
Fig. 8 is an example of the same user interface as above but showing the input data in each window.
Individual window sizes and positions can be modified via mouse control by corner dragging for size or left button hold down for whole window movement, similar to any PC software application window. Window size and positions can also be modified numerically by locating the X-Y pixel position of the top left corner of a given window, and the size of same via a dedicated configuration window as below. Many other properties of a given window can be modified as shown in this screen shot as well.
Fig. 9 Shows the display properties of a given input window including size and position.
There are a myriad of other display details that are beyond the scope of this white paper and will vary from system to system.
Other major functions:
Saving of window complements or Layouts is an important feature that allows system operators to save time by not having to recreate the window configurations and details about each window each time a system is started. Multiple layouts can be saved and written to files so that a single mouse click or command can be issued to recall those layouts depending on the data that needs to be viewed at a given time.
Command line control of Video Processor functions is an important feature that allows external control systems such as AMX, Crestron or Layout Touch to automate and simplify operation depending on the environment and operators needs of same. Many of these systems utilize touch screens for simplicity and intuitiveness of operation.
Below is a screen shot of the Layout Touch software control system that allows operators to recall layouts via any web page browser that has access to a video processor. Each button has a layout name associated with it and by selection of that button, the layout is recalled.
Fig. 10 is an example of a touch screen program for recalling of layouts.
This white paper is a work in progress and will be amended and modified from this form as time becomes available to the author. Because of the vast range of system configurations, signal types, user needs and environment variables it is difficult to describe in detail all the possibilities available in a single document. This document is intended as a primer to the overall subject of video processing. Further in depth system details quickly become germane to the maker of the devices in question. Specific device details can be found by going to http://www.pixell.com/vp-xxxxb-pixell-processorss.php