U.S. patent application number 14/595176 was filed with the patent office on 2015-10-08 for method and system of video wall setup and adjustment using gui and display images.
This patent application is currently assigned to USERFUL CORPORATION. The applicant listed for this patent is Timothy E. Griffin, Adam R. McDaniel. Invention is credited to Timothy E. Griffin, Adam R. McDaniel.
Application Number | 20150286456 14/595176 |
Document ID | / |
Family ID | 54191113 |
Filed Date | 2015-10-08 |
United States Patent
Application |
20150286456 |
Kind Code |
A1 |
Griffin; Timothy E. ; et
al. |
October 8, 2015 |
Method and System of Video Wall Setup and Adjustment Using GUI and
Display Images
Abstract
A system is disclosed for setup and operation of a video wall
including a system for utilizing unique calibration display Images
in combination with user input commands via a GUI to facilitate
setup. A method and computer readable medium are also disclosed
that operate in accordance with the system.
Inventors: |
Griffin; Timothy E.;
(Calgary, CA) ; McDaniel; Adam R.; (Calgary,
CA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Griffin; Timothy E.
McDaniel; Adam R. |
Calgary
Calgary |
|
CA
CA |
|
|
Assignee: |
USERFUL CORPORATION
Calgary
CA
|
Family ID: |
54191113 |
Appl. No.: |
14/595176 |
Filed: |
January 12, 2015 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
61926295 |
Jan 11, 2014 |
|
|
|
Current U.S.
Class: |
345/1.2 |
Current CPC
Class: |
G09G 2370/042 20130101;
G09G 5/12 20130101; H04N 9/3147 20130101; G09G 2320/0693 20130101;
G09G 2370/16 20130101; G09G 2370/06 20130101; G09G 2370/022
20130101; G09G 5/006 20130101; G09G 2340/14 20130101; G06T 1/60
20130101; G06F 3/1446 20130101; G06F 3/1438 20130101 |
International
Class: |
G06F 3/14 20060101
G06F003/14; G09G 5/12 20060101 G09G005/12 |
Claims
1. A system for adjusting, for ones of a plurality of displays,
ones of their identity, placement and configuration settings within
a video-wall canvas to facilitate operation of said plurality of
displays as a video-wall, the system comprising: a control module
in communication with each of said plurality of displays,
configured to retrieve information from, and provide output
commands to, individual ones of the plurality of displays; unique
configuration images, optimized to visually accentuate ones of the
corresponding display's current identity, placement, configuration
and color characteristics within the video wall canvas, being
output to individual ones of the plurality of displays in response
to said output commands from the control module; a Graphical User
Interface (GUI) comprising graphical representations of the
plurality of displays comprising the video wall canvas and
responsive to user input and in communication with the control
module; a user, informed by the unique configuration images output
to the plurality of displays, adjusting, via input commands to the
GUI, ones of identification, placement, configuration and color
characteristics settings for individual ones of said plurality of
displays, the video wall canvas being updated in response to said
adjusting.
2. The system of claim 1, where ones of the identity, placement,
color settings and configuration settings for the plurality of
displays are stored as a mapping in computer readable memory
accessible to the control module.
3. The system of claim 1, wherein each display comprising the
plurality displays is assigned a unique identifier accessible to
the control module.
4. The system of claim 1, where the control module further
comprises a web-server and the GUI further comprises a web-page
being rendered by a web-browser in communication with the
web-server.
5. The system of claim 1, where the control module is running on
ones of: a server; a server in communication with ones of the
displays via a network connection; an embedded computer housed
within at least one of the plurality of displays comprising the
video wall; a personal computer; a laptop; a mobile device.
6. The system of claim claim 1 wherein the user's input commands to
the GUI is interacting with the GUI via ones of: a web browser; a
laptop; a smart phone; a tablet; a personal computer; a mobile
device; a touch-screen; a mouse; an input device; voice commands;
gesture input; touch input.
7. The system of claim 1, where said graphical representations in
the GUI further comprises a plurality of blocks, each block
representing, and corresponding to, one of the plurality of display
devices comprising the video wall.
8. The system of claim 7, where the correspondence between the
blocks within the GUI and displays within the video wall is
visually communicated to the user via ones of the blocks within the
GUI: matching the relative size and aspect ratio of their
corresponding display; matching the relative position and
orientation of their corresponding display; being labeled with a
unique identifier consisting of at least one letter, number,
symbol, shape, color, or visual pattern the matching unique
identifier being output to their corresponding display; being
labeled with a unique identifier comprising ones of letters,
numbers, symbols, shapes, colors, or visual patterns the matching
unique identifier being output to their corresponding display; or
combinations thereof, depicting graphical output that mirrors the
output of their corresponding display.
9. The system of 8, where said adjusting via input commands to the
GUI comprises manipulating ones of said plurality of blocks within
the GUI such that they more closely represent the physical layout
of said plurality of displays, by adjusting relative ones of: the
block's position; the block's rotation; the block's spacing; the
block's assignment by changing unique identifiers within the GUI to
corresponding ones of the displays; the block's color
characteristics; the block's display settings; the block's network
settings; the block's device settings; the block's settings.
10. The system of claim 9, further comprising the output of a
configuration status indicator, by updating, overlaying or visually
marking said unique configuration images output to the
corresponding ones of said plurality of displays in response to
selecting and unselecting said blocks within the GUI, updating
displays whose block representations within the GUI: are currently
selected for editing with an "active" status indicator; are
currently unselected but have unsaved changes with a "pending"
status indicator; have not yet been adjusted with an "unaltered"
status indicator; have completed and saved an adjustment with a
`completed` status indicator.
11. The system of claim 1, wherein the outputting of the unique
configuration images and the adjusting by the user to the
video-wall canvas occurs sequentially as part of a multi-step
process, each step further improving alignment and uniformity of
the plurality of displays comprising the video wall, the initiation
of each subsequent step being in response to user input.
12. The system of claim 11, where the specific attributes being
adjusted are ones of identification, rotation, position, bezel
width, spacing, brightness, RGB color, intensity, gamma, contrast,
white balance, grayscale of individual ones of the displays within
the video wall.
13. The system of claim 9, where the unique configuration images
correspond to ones of: output of a unique identifier image the user
assigning ones of the blocks within the GUI to specific ones of the
plurality of displays; output of a unique identifier image the user
adjusting the relative position or rotation of blocks within the
GUI; output of a line pattern image to the video wall canvas, each
display showing its assigned sub-image portion thereof the user
adjusting the relative position or rotation of blocks within the
GUI; output of a line pattern image to the video wall canvas, each
display showing its assigned sub-image portion thereof, the user
adjusting the spacing between multiple blocks simultaneously using
the GUI to compensate for display bezel or allow for edge-blending
overlap between displays output of a uniform color image across
ones of the displays to accentuate differences between actual
output colors between the displays, the user adjusting color
settings using controls supplied by the GUI; output of a line
pattern image to the video wall canvas, each display showing its
assigned sub-image portion thereof the user adjusting the position
of ones of said displays via keyboard input for fine or pre-set
position adjustments.
14. The system of claim 1, wherein the unique configuration image
is a sequence of lines spanning the multiple displays within the
video wall canvas, and the user input is adjusting the position and
rotation of the representative displays within the GUI achieve
perfect alignment of configuration images as output by the
displays.
15. The system of claim 1, where the unique configuration image is
a uniform color across all displays and the user input is to adjust
color settings for individual ones of the displays within the GUI
to achieve color uniformity across all displays for the
configuration images as output by the displays.
16. The system of claim 1, further comprising outputting a visual
status indicator to all displays comprising the plurality upon
completion of one or more steps within the setup process.
17. The system of claim 1, wherein the plurality of displays
comprise ones of: monitors; touch screen displays; front projected
displays; rear-projected displays.
18. A method of adjusting mappings for plurality of displays to
facilitate their operation as a video-wall, comprising: a control
module, configured to retrieve information from, and provide output
commands to, individual ones of the plurality of displays; a
Graphical User Interface (GUI) module configured to display
information to a user and receive input commands from the user; a
storage unit, containing computer program code configured for
outputting unique configuration images optimized to visually
accentuate ones of the corresponding display's current identity,
placement configuration and color characteristics, within the
mapping; the method comprising: retrieving, by the control module,
of information from individual ones of the plurality of displays;
displaying, by the control module, ones of said unique
configuration images to individual ones of the plurality of
displays; providing within the GUI methods to adjust via input
commands from the user ones of the respective identification,
placement, configuration and color characteristics corresponding to
individual ones of the plurality of displays; modifying the
mappings by the control module, in response to said adjustments;
updating the video wall canvas in response to said modifying.
19. The method of claim 18, wherein ones of the identity, placement
and configuration settings for the plurality of displays are stored
as a mapping in computer readable memory accessible to the control
module.
20. A computer-readable medium storing one or more computer
readable instructions configured to cause one or more processors
to: display, by a control module in communication with each of a
plurality of displays, a video wall a test canvas designed to
emphasize ones of identity, placement, configuration and color
settings of individual ones of a plurality of displays; display a
Graphical User Interface (GUI) comprising graphical representations
of the plurality of displays comprising the video wall canvas and
responsive to user input and in communication with said control
module; receive adjustments via input commands by a user, who in
response to the test canvas adjusts via the GUI controls and
display representations provided therein individual ones of the
plurality of displays to substantially achieve alignment and
uniformity in the video-wall canvas; store the modifications to
settings arising from the said adjustment in computer readable
memory and, update the video wall test canvas in response to said
adjusting.
Description
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application claims priority from U.S. Provisional
Patent Application No. 61/926,295 filed on Jan. 12, 2014, which is
hereby incorporated by reference.
FIELD OF INVENTION
[0002] Large electronic displays, may be formed from an array of
monitors referred to as a "video-wall". For example video-wall
might be comprised of a 3 by 3 array of nine monitors, each monitor
simultaneously displaying a segment of a single image, thereby
creating the appearance of a single large display comprised of
rectangular portions.
[0003] The present invention relates generally to improving the
setup and operation of such video-wall displays and particularly to
network addressable displays.
BACKGROUND OF THE INVENTION
[0004] The present invention relates generally to improving the
setup and operation of video-wall displays and particularly to
network addressable displays.
[0005] A video-wall display system is a method to overcome the
costs of manufacturing and installing very large displays, by
assembling a large display using multiple smaller displays arranged
and working together. By dividing a single image into several
sub-images and displaying the sub-images on an appropriately
arranged array of display devices a larger display with higher
resolution can be created.
[0006] Because the plurality of display devices need to be operated
together to display a single image or canvas across a video-wall
(rather than a separate independent image for each display), the
set-up of the output displays is critical and their fine tuning can
be laborious. Informing the server of the initial positioning of
each display (so that the image segments are sent to the
appropriate displays); the precise cropping of each of the
sub-images (to allow the eye to interpret continuity of the total
image across the bezels of the displays where no image can appear);
and the adjustment of the color of the sub-segments of the image to
provide equal luminosity, color and intensity/brightness ranges
across the whole array of displays within the video-wall, are all
essential to providing the optimal viewing experience. With
conventional approaches to video-wall setup these tasks can be
laborious. This invention offers methods of improving the ease and
speed of video-wall setup.
DESCRIPTION OF THE INVENTION
[0007] A video wall server splits source-video into sub-images and
distributes these sub-images to multiple listening display devices.
Built-in algorithms optimize, parse and scale the individual
video-wall segments. To accomplish this splitting efficiently it is
beneficial to create a configuration file stored in a computer
readable medium using information on the position, configuration
and settings for each of individual physical display and how they
relate to the video-wall canvas. Using such a configuration file
allows the video wall server to efficiently create a seamless
canvas across the display units. This invention deals with methods
of supplying the information for the creation of such files by
means of user feedback base on test-canvasses and to sequentially
changing the configuration file before redeploying a test-canvas to
further improve the overall viewer-image.
[0008] Configuration of Displays: This invention provides methods
equipping the server with a configuration file containing: [0009]
the overall shape of the video wall; [0010] the ordering of the
sub-images within the video wall; [0011] any further rotation or
displacement of displays required to form the appropriate canvas on
the video wall; [0012] interactively fine-tuning the positioning
and bezel width of the displays to achieve perfect alignment across
display monitor bezels; [0013] adjusting the color intensity of
displays to achieve a uniform color across the video-wall; Once
this information is established it is stored in the server's
configuration files.
[0014] The methods to achieve the five types of adjustments
outlined above all involve a user interacting with the server via a
GUI either available directly through an interface on the server or
by interaction with the server via the web. The user observing the
current state of the canvas on the video wall and making those
changes appropriate for its improvement on the GUI. Examples of
such changes are as follows.
[0015] The overall shape. Once the display units have been mounted
to form the wall and connected to the server the server will know
the number of display units involved and will present a GUI for
shape. For example if there were 10 display units this could be a
10 by 10 array and the user might be asked to click on the
approximate position in the array for each of the 10 monitors in
the array.
[0016] The ordering of the sub-images within the canvas. For
example one method to achieve this is for the server to display a
canvas with a number on each of the displays (perhaps corresponding
to the order in which they were connected to the server). The GUI
might present a corresponding empty array with the same set of
numbers as the canvas available for drag and drop. Once the user
has dragged each number to the same relative position in the array
on the GUI as occupies on the canvas, the server easily
accomplishes the appropriate reordering of the displays.
[0017] Rotation and displacement. For example the canvas presented
here could cover the monitors with a coherent pattern of lines and
the GUI could present the user with an image of the current display
positions. By clicking on one of these images the user would be
able to move it or rotate it to bring the overall pattern onto
better alignment. In response the server would make the
corresponding changes to the canvas. This correction process would
continue until the user was happy with the overall alignment.
[0018] Interactive fine tuning. Generally the canvas on the video
wall will appear to be interrupted by the bezels making up the
edges of each display monitor. The fine tuning is used to minimize
the bezel effect by appropriately moving each of he displays a few
pixel widths horizontally or vertically. For example this could be
achieved by displaying a test canvas of diagonal lines on the video
wall and supplying the GUI with a schematic of this pattern
accompanied by a vertical slider to the left of, and a horizontal
sliders above, each of the screens in the schematic. Movement of
the slider corresponding to a pixel by pixel sliding of the
corresponding display on the canvas. Through a series of slider
combinations the user brings the canvas as displayed across the
video wall into alignment.
[0019] Adjusting color intensity across the canvas. For example the
canvas could display in turn lines of each of the three primary
colors red, blue and green. The user would have a GUI containing an
image of all the displays with vertical sliders to the left of
each. By moving the slider fine adjustments would be made to the
intensity of that hue on the corresponding display. By watching the
response on the displayed canvas the intensities across each color
could be brought into as close alignment as possible with the human
eye.
[0020] Visual prompting and status indicators to assist during
video-wall setup. As displays are linked into a video-wall it is
helpful to the individual setting up the video-wall to receive
visual feedback from the displays themselves as screens are added
to or removed from the video-wall. In one embodiment of the
invention, visual status indicators shows progress as each
display's position within the video-wall has been successfully
identified and the display is "linked into" the video-wall. For
example, a line, pattern, color change, picture, or animated effect
is used to differentiate monitors which have been added or
positioned within the video-wall from those that haven't. A
different status indicator such as an image, icon, or input prompt
could be output to those displays which are being output to by the
video-wall server, but are still awaiting
placement/assignment/relative-positioning within the video-wall. In
one embodiment, once an an adjacency relationship is established
between edges of displays within the video-wall a status indicates
that the edges of both displays have been successfully linked. In
one embodiment, once the full video-wall has been setup, will show
a visual success image indicator spanning the full video-wall.
[0021] Method of non-interactive video-wall setup without an
external control interface. In some situations video-wall set-up
must be accomplished on non-interactive displays (e.g. if the
displays are televisions) without access to an interactive control
interface as is provided by the video-wall server. Prompts are
again displayed on the screen but since the user has no input
devices, the user indicates the sequence and order of the displays
by responding to the prompts by power cycling or re-plugging the
monitors in the appropriate sequence. In one embodiment the server
detects monitors being powered on/off and connected/disconnected
through receiving display power management events detected and
relayed to the operating system via the corresponding video driver.
As displays are linked in sequence the central server updates the
screen to indicate the successful links between the displays. Once
the order has been establishes a second set of user actions can be
used to indicate row ends allowing the server to set up the array
in the correct shape (in the case of a video-wall with six display
units: six in a row, two rows of three or three rows of two or a
column of six). This method cannot be applied unless the displays
are organized in a rectangular array, or the particular departures
from regularity that could possibly be used are pre-programmed into
the server.
[0022] Drag and drop method of arranging displays into a video-wall
pattern. The server outputs a unique symbol to each of the displays
and the GUI, in communication with the video-wall server, enables
an administrative user to communicate the arrangements of the
displays to the video-wall server. In a particular embodiment the
administrative control panel GUI shows a miniature icon
representations of each displays (each icon being labeled with the
corresponding unique symbol being output to the physical display).
The user can then drag and drop the icons into an arrangement
mimicking the shape, orientation and positions of the displays in
the physical video-wall. The administrator drags each icon to
correspond, within the GUI, to that display's position on the
physical video-wall. The method also allows for non-grid video-wall
set-ups where the display's rotation is non standard by providing a
method to rotate the icons. The user arranges and rotates the icons
until they mirror the actual video-wall they see in front of them.
Once the displays are aligned approximately correctly, the user can
proceed with bezel correction and subsequent steps in display
configuration (such as displaying a test pattern and asking for
confirmation of correctness).
[0023] Specifying a rectangular array by entering a code into a
GUI. When the pattern of displays has been pre-specified to the
server, it presents the user with GUI of that rectangular array and
the server displays a unique differentiating
symbol/number/character/code on each of the available displays. The
administrator then types the appropriate symbols into the empty
sites in the GUI array, corresponding to the position of the symbol
in the physical display. If the rectangular pattern is anticipated
but not not pre-specified the server presents the user with a GUI
having a very large square array, with the number of rows equal to
the total number of displays connected. The user then types the
symbol supplied into the appropriate cell and so communicates not
only the display but also the array shape. This method works best
for video-walls where the displays are arranged in a grid-like
array.
[0024] Fine tuning display placement and bezel correction via a
specialized test output image(s). In one embodiment, an
administrator GUI in combination with a test image on the
video-wall is used to fine-tune the bezel corrections. This
facilitates installation by eliminating the need for physical
measurements of display and bezel width or complex calculations on
the part of the installer. In one embodiment, an administrative GUI
is provided that shows a representation of the video-wall. As
changes are made within the GUI the relative positioning of the
displays within the video-wall canvas itself is simultaneously
updated thus the output image that the administrator sees displayed
on the video-wall is also updated, enabling the administrator to
quickly bring display positioning and bezel size into optimal
alignment. The administrator adjust spading and positioning via
manipulation until the lines of the image displayed on the
video-wall appear to be continuous. In the case of a uniform grid
configuration of displays, the GUI provides tools for the user to
simultaneously adjust the padding/spacing/bezel correction of the
rows or columns of the displays in blocks. In the case of a
non-grid (non-standard) video-wall layout the GUI could enable the
administrator to rotate and adjust individual displays or groups of
displays. The administrator continues adjustment until the image
displayed on the video-wall appears in perfect alignment. The
images used for alignment may take various forms. For example in
one embodiment the canvas image is comprised of lines of multiple
styles, angles, thicknesses, and colors so as to both be able to
visually distinguish which lines should align across the bezel. The
image may also include horizontal and vertical lines to assist an
installer in ensuring that the rotation of the video-wall is
correct in relation to the horizon or a level. The image may also
include one or more perfect circles or perfect squares so as to
quickly visually discern any aspect ratio distortion either within
individual displays or within the entire canvas. In one embodiment
lines are drawn on the borders (the outermost pixels) of the
displays, and the administrator can then adjust padding until the
border is fully visible within each display area. In a preferred
embodiment of the invention, multiple test images are provided for
the administrator to utilize. During this adjustment process,
distortion or overlap of the test image(s) indicates that alignment
is not yet correct. These test images ensure that alignment of
multiple segments of a line can easily be discerned either visually
or using tools such as a ruler, piece of string, a level, etc. In
an alternative embodiment the administrator can initiate and/or
adjust individual placement of the lines via the GUI to evaluate
line continuity as displayed on the video-wall output itself.
[0025] Method of interactive video-wall color calibration by eye.
To ensure a perfect image across the whole canvas it is important
to ensure uniformity of color and brightness between each of the
individual displays comprising the video-wall. Typically color
calibration of displays requires sophisticated and sometimes
expensive tools and software. In one embodiment of the invention
this can be achieved by outputting a uniform color to all displays
within the video-wall, and presenting the user with a GUI to adjust
in real-time the color settings of any individual display within
the array. This GUI provides the user with controls to adjust color
attributes for each corresponding display within the video-wall
array. In one embodiment the user dynamically adjusts the color for
an individual display by selecting the display within the GUI then
dragging a color calibration slider causing the corresponding
display to adjust in real-time to the user's input. Once adjusting
the sliders has brought color consistency across the canvas and
once this has been signaled to the server it proceeds to provide
the next color for evaluation. In one embodiment of the invention
color calibration is done by controlling monitor settings via the
centralized server software being in communication with the display
settings (potentially via an RS232 or other interface) and a
uniform image canvas is output to the display. In an alternative
embodiment color adjustments are stored in the server software and
color adjustments are done by the server as it is output to the
display itself.
[0026] With the above embodiments in mind, it should be understood
that the embodiments might employ various computer-implemented
operations involving data stored in computer systems. These
operations are those requiring physical manipulation of physical
quantities. Usually, though not necessarily, these quantities take
the form of electrical or magnetic signals capable of being stored,
transferred, combined, compared, and otherwise manipulated.
Further, the manipulations performed are often referred to in
terms, such as producing, identifying, determining, or comparing.
Any of the operations described herein that form part of the
embodiments are useful machine operations. The embodiments also
relate to a device or an apparatus for performing these operations.
The apparatus can be specially constructed for the required
purpose, or the apparatus can be a general-purpose computer
selectively activated or configured by a computer program stored in
the computer. In particular, various general-purpose machines can
be used with computer programs written in accordance with the
teachings herein, or it may be more convenient to construct a more
specialized apparatus to perform the required operations.
[0027] The embodiments can also be embodied as computer readable
code on a computer readable medium. The computer readable medium is
any data storage device that can store data, which can be
thereafter read by a computer system. Examples of the computer
readable medium include hard drives, solid state drives (SSD),
network attached storage (NAS), read-only memory, random-access
memory, Optical discs (CD/DVD/Blu-ray/HD-DVD), magnetic tapes, and
other optical and non-optical data storage devices. The computer
readable medium can also be distributed over a network coupled
computer system so that the computer readable code is stored and
executed in a distributed fashion. Embodiments described herein may
be practiced with various computer system configurations including
hand-held devices, tablets, microprocessor systems,
microprocessor-based or programmable consumer electronics,
minicomputers, mainframe computers and the like. The embodiments
can also be practiced in distributed computing environments where
tasks are performed by remote processing devices that are linked
through a wire-based or wireless network.
[0028] Although the method operations were described in a specific
order, it should be understood that other operations may be
performed in between described operations, described operations may
be adjusted so that they occur at slightly different times or the
described operations may be distributed in a system which allows
the occurrence of the processing operations at various intervals
associated with the processing.
[0029] While the system and method has been described in
conjunction with several specific embodiments, it is evident to
those skilled in the art that many further alternatives,
modifications and variations will be apparent in light of the
foregoing description. Thus, the embodiments described herein are
intended to embrace all such alternatives, modifications,
applications and variations as may fall within the spirit and scope
of the appended claims.
BRIEF DESCRIPTION OF THE DRAWINGS
[0030] Embodiments will now be described more fully with reference
to the accompanying drawings in which:
[0031] FIG. 1 is a block diagram showing the basic process of how
mappings are used.
[0032] FIG. 2 illustrates an image output method of video-wall
display identification.
[0033] FIG. 3 illustrates one drag`n`drop GUI method of specifying
the shape of the video-wall.
[0034] FIG. 4 illustrates the need for bezel correction.
[0035] FIG. 5 illustrates one method of using sliders for fine
bezel correction adjustment.
[0036] FIG. 6 illustrates manual placement of individual screens
for precise placement of of canvas on non-grid displays.
[0037] FIG. 7 illustrates one specific embodiment of the whole
video-wall system process of set-up and functioning.
[0038] FIG. 8 is the flow diagram for a typical administrative GUI
video-wall set-up,
DETAILED DESCRIPTION OF THE DRAWINGS
[0039] FIG. 1 is a block diagram showing the basic process of how
sub-images are pulled from a video wall "canvas" each sub-image
portion then being separately output to individual corresponding
displays according to the mapping. One of the key features of this
disclosed innovation is an efficient method of creating these
mappings. The illustration in FIG. 1 shows the rendering and
delivery of sub-image portions to a non-standard "artistic"
arrangement of the video wall displays. At (12) a particular source
content (either the operating system, the window manager an
application, a video player or another image source, such as for
example HDMI capture) passes content to the GPU for conversion and
storage in the GPU frame buffer, (13). Subsequently the designated
sub-images, based on the mapping configuration between displays and
the image canvas required for ultimate display on the video wall,
are then read/cropped/processed from the frame buffer, shown in
stage (14). Each individual sub-image portion is then processed
from the frame buffer, each sub-frame appropriate to (and for
ultimate output to) the particular display of the video wall being
addressed (15). Each sub-image portion is delivered to the
corresponding secondary display adapter show as, G1 to G6 at (15),
each display adapter in turn then outputting the provided
(processed) image data to the corresponding display units at
(16).
[0040] FIG. 2 illustrates the "unique output symbol" method of
video-wall setup using a GUI. The video-wall is shown schematically
in the top half of the figure. The server assigns unique
identifiers (in this case numbers) to each of the displays and
outputs these to each of the screens in the video-wall as seen in
the 3.times.3 array of displays at the top of FIG. 21). The user
has a GUI (possibly a browser based GUI and possibly on a tablet or
smart-phone in communication with the server via a web-server). The
user has already communicated to the server that the display is a
3.times.3 array. In response the server has supplied a 3.times.3
grid within the GUI (22) with a 3.times.3 array with a blank in
each of the nine segments of the array. At the stage illustrated
the user has filled in several of the numbers of the displays as
they appear on the video-wall by entering a `6` in the top right
corner, a `1` for the display to its right and a `5` and `4` in the
corresponding positions in the bottom row as illustrated in the
schematic of the GUI running on a tablet (22). Once all of the
numbers have been entered the server will have enough of the
video-wall specified to support a single test-picture across the
wall.
[0041] FIG. 3 illustrates the drag-GUI method of specifying the
shape of the video-wall and the order of the displays. The top half
of the figure is again a schematic of the video-wall (31). The
bottom half (32) is the GUI as presented on the user's tablet.
Across the bottom of the GUI icons for the nine connections to the
video-wall server are presented, numbered from 1 to 9. Using the
mouse the user has begun to form the numbering and shape of the
video-wall by dragging the numbered icons to occupy the positions
corresponding video-wall. Currently four icons have been shifted
into place corresponding to the top row and first entry in the
second row as seen on the video-wall. The icon 7 is being dragged
into place and four icons, 2, 4, 5 and 8, remain available to be
dragged at the bottom of the GUI. The result will inform the server
not only of the ordering of the numbering but that the nine
displays are in a 3 by 3 format rather than say a "triangle" with
rows of 4, 3 and 2.
[0042] FIG. 4 illustrates the need for bezel correction. The figure
shows two illustrations of a 3.times.3 video-wall presenting a
canvas of diagonal straight lines which have been drawn to cover
the whole canvas. The pattern is interrupted by the bezel edges of
the nine displays which form pairs of horizontal and vertical
interruption bands. The top half of FIG. 4 illustrates an early
stage in the correction process, the bezel interruptions prevent
the lines on the canvas from appearing as portions of a single
straight line. This is emphasized by the straight diagonal lines
(41) and (42). Notice that the lines on the canvas do not exactly
follow these ruled lines. The bottom half of the figure illustrates
the view after effective bezel adjustments have been made: the
diagonals on the canvas line up accurately and the fine lines added
at (43) and (44) confirm this. In practice such lines cannot be
supplied by the canvas, and evaluation of alignment must be by eye
or by image capture.
[0043] FIG. 5 illustrates the mechanics of one method of using
sliders for fine adjustment of bezel correction. The top half of
the FIG. 51) shows a schematic of the video-wall with diagonal
lines displayed across the canvas. The lower half shows a schematic
of the GUI on the user's tablet (52). The slider shown on the top
(53) is currently active and to be used to make fine adjustment to
the bezel correction by moving the blocks in columns as indicated
by the column gap markers shown at (54). The vertical displacement
slider (55) can also be adjusted to adjust the height of the
vertical bezel between displays. Corrections are evaluated by
inspecting the lines within a test image (the example test image
illustrated here is a series of intersecting diagonal lines on the
video-wall, various test patterns options are described in the
description. As horizontal and vertical bezels can be different on
different displays, both horizontal and vertical sliders are
required.
[0044] FIG. 6 shows how manual placement of individual screens
within a GUI combined with a test pattern can assist with
configuration and precise placement of non-grid (non-standard)
display orientations within a video-wall. Once the physical
video-wall has been installed, the placement of the screens on the
video-wall server can be accomplished using a drag-n-drop GUI
method then by using the rotational facility once the link between
each display and the GUI has been correctly established. Once the
positions, order and rotations have been specified, the diagonal
canvas covering the non-grid video-wall as seen in the top image
(61) of FIG. 6 can be displayed. The fine-tuning of display
placement can then be adjusted moving and rotating individual
display representations within the GUI (62) to ensure exact
alignment of the test pattern lines output to the physical
video-wall.
[0045] FIG. 7 is an illustration of one specific embodiment of the
whole video-wall system process of set-up and use with a networked
video wall using zero clients (70). The server first discovers and
connects to the zero-client devices over the network and builds a
list of displays and assigns a unique identity to each display
(71). Next it collects the available display resolutions and other
available settings from all the connected displays (72). Then the
GUI process is launched beginning with a browser accessible GUI for
user input is launched (73), initially displaying an output an
identification image (containing a unique identifier) to each
individual display comprising the video wall. (74) For example
display a representation of each display within the GUI to enable
placement or matching between the GUI representation and the
physical video wall via user input. Continue canvas/GUI
presentation all identifiers have been placed. Create a settings
file representing the positions and order of the display units as
communicated in GUI, update this file as more information is
gathered via the GUI and update both the GUI and individual
displays as changes occur to this file updating individual displays
with placement images each displaying appropriate to their
corresponding position within the stored mapping of the video wall
placement. Next output line calibration images to video-wall
displays to fine-tune display placement within the GUI and enable
fine-placement tools (75). Continue canvas/GUI presentation
updating of both the GUI and the individual displays as placement
progresses and update the settings file to current display
positions and rotations of the displays as in the GUI. Once the
user indicates that this processing is ended, update the displays
with a sequence color calibration images to refine color correction
settings and show control tools enabling the user to adjust color
settings for individual ones of the displays within the GUI (76).
Once the user has indicated satisfaction with the color fine tuning
is complete. Calculate canvas size and position of displays within
canvas and write all sub-image mapping info to the settings
file.
[0046] The preliminary steps in the setup of the video wall system
are now complete and the system is ready to process and deliver
content to the video wall displays. It can now receive content for
display via the primary GPU processing application output frame by
frame to the frame buffer (78), and Process (e.g.,
crop/split/rotate/re-size/color-convert) based on stored identity,
placement, and calibration settings individual sub-image portions
(79) to be encoded and sent to the appropriate devices for output
to the appropriate secondary display adapters which in turn outputs
the transformed image data to the corresponding displays (710),
together creating displaying the video wall image across all
displays. This decoding and displaying process is continued while
the video-wall is in use (711), and ends when terminated (712).
[0047] FIG. 8 is the flow diagram for a typical administrative GUI
video-wall set-up [as exemplified in FIGS. 3,5 and 6]. The process
begins at (80) and starts by outputting a unique identifier to each
screen in the array (81). In response to this the user positions
and controls the representations of displays within the control
panel to indicate the spatial relationships between the screens and
the ordering of the screens (82). Next the process outputs the
special bezel adjustment image to displays (83), and the user
adjusts the bezel spacing and/or screen placement (84). At this
point the server asks the user if the bezel and spacing adjustments
are all optimal (85) Adjustment continues until correct (83) and
once correct the display arrangement process is complete and can
then optionally proceed to color adjustment if desired by the user
(86).
* * * * *