Multi-media window manager
First Claim
1. In a raster scan video display system for displaying non-obscured pixels in a multiple-media motion video environment possessing overlaid windows, apparatus comprising:
- a horizontal memory table connected to a host for storing pixel values corresponding to vertically extended video window edges on a screen which intersect a horizontal axis of said screen;
a vertical memory table connected to said host for storing vertical pixel values corresponding to horizontally extended window edges which intersect a vertical axis of said screen, said horizontally and vertically extended video edges of said windows forming clip rectangles;
a rectangle identification (ID) memory table connected to said host for storing an ID value for said clip rectangles;
an initial window rectangle coordinate memory table, coupled to said host, for storing an initial coordinate value for a clip rectangle corresponding to each video window on said screen;
a first counter coupled to said horizontal and vertical memory tables for counting pixel coordinates starting from minimum horizontal and vertical pixel values received from said horizontal and vertical memory tables;
a second counter coupled to said initial window rectangle coordinate memory table for counting coordinates of said clip rectangles starting from said initial coordinate value stored in said initial rectangle coordinate table;
a first compare logic device coupled to said first counter for comparing an output of said first counter with said horizontal and vertical pixel values stored in said horizontal and vertical memory tables;
a second compare logic device coupled to said rectangle ID memory table for comparing said ID value stored in said rectangle ID memory table with an ID value received from a video source via registers coupled to said video source;
a control logic block coupled to said first compare logic device for generating a data display enable signal when said stored ID value and said received ID value compared in said second compare logic device are the same; and
a data display driver coupled to an output of said control logic block for passing data to a video display buffer upon receipt from said control logic block of said data display enable signal.
1 Assignment
0 Petitions
Accused Products
Abstract
An apparatus and method for displaying non-obscured pixels in a multiple-media motion video environment (dynamic image management) possessing overlaid windows. In an encoding process, only boundary values and identification values corresponding to each window on a screen are saved in memory of a hardware device. In a decoding process, the hardware device utilizes these initial boundary values saved in memory in such a way that when incoming video data enters the hardware device, the hardware device need only compare the incoming video data'"'"'s identification with the identification saved in memory. The hardware device includes: compare logic devices, counters, minimal memory devices, a control logic block, and a driver.
-
Citations
13 Claims
-
1. In a raster scan video display system for displaying non-obscured pixels in a multiple-media motion video environment possessing overlaid windows, apparatus comprising:
-
a horizontal memory table connected to a host for storing pixel values corresponding to vertically extended video window edges on a screen which intersect a horizontal axis of said screen; a vertical memory table connected to said host for storing vertical pixel values corresponding to horizontally extended window edges which intersect a vertical axis of said screen, said horizontally and vertically extended video edges of said windows forming clip rectangles; a rectangle identification (ID) memory table connected to said host for storing an ID value for said clip rectangles; an initial window rectangle coordinate memory table, coupled to said host, for storing an initial coordinate value for a clip rectangle corresponding to each video window on said screen; a first counter coupled to said horizontal and vertical memory tables for counting pixel coordinates starting from minimum horizontal and vertical pixel values received from said horizontal and vertical memory tables; a second counter coupled to said initial window rectangle coordinate memory table for counting coordinates of said clip rectangles starting from said initial coordinate value stored in said initial rectangle coordinate table; a first compare logic device coupled to said first counter for comparing an output of said first counter with said horizontal and vertical pixel values stored in said horizontal and vertical memory tables; a second compare logic device coupled to said rectangle ID memory table for comparing said ID value stored in said rectangle ID memory table with an ID value received from a video source via registers coupled to said video source; a control logic block coupled to said first compare logic device for generating a data display enable signal when said stored ID value and said received ID value compared in said second compare logic device are the same; and a data display driver coupled to an output of said control logic block for passing data to a video display buffer upon receipt from said control logic block of said data display enable signal. - View Dependent Claims (2, 3, 4)
-
-
5. A system for displaying non-obscured pixels in a multiple-media motion video environment possessing overlaid windows on a screen, said video environment having video sources, each representative of a window, where positions of said windows are predetermined by a microprocessor and human interface, wherein said windows are plotted on said screen by way of a horizontal and vertical coordinate system indicating a horizontal and vertical pixel location for each window on said screen, said system comprising:
-
first memory means for storing horizontal boundary pixel values in increasing numerical order as derived from minimum and maximum horizontal window coordinates of each video window to be displayed on the screen; second memory means for storing vertical boundary pixel values in increasing numerical order as derived from minimum and maximum vertical window coordinates of each window to be displayed on the screen, said horizontal and vertical window coordinates having intersecting to form clip rectangles; third emory means for storing an identification (ID) value associated with each said clip rectangle designating ownership of said clip rectangle to one of the video windows to be displayed; fourth memory means for storing coordinates identifying an initial clip rectangle for each of the displayed video windows; first counter means coupled to said first and second memory means for counting pixel coordinates starting from said minimum and maximum horizontal and vertical coordinate values; second counter means coupled to said fourth memory means for counting coordinate values of clip rectangles stored in said fourth memory means; first compare logic means coupled to said first counter means for comparing an output of said first counter means with said horizontal and vertical boundary pixel values stored in said first and second memory means; second compare logic means coupled to said third memory means for comparing said ID values stored in said third memory means with an ID value received from a video source of the video environment; control means coupled to said second compare logic means for receiving vertical and horizontal synchronization signals from video sources and for generating a data display enable signal when said stored ID value and said received ID value compared in said second compare logic means are the same; and data display control driver means couple to an output of said control means for passing data to a video display buffer upon receipt from said control means of said display enable signal. - View Dependent Claims (6, 7, 8, 9, 10, 11)
-
-
12. A method for displaying non-obscured pixels in a multiple-media motion video environment possessing overlaid windows on a screen, where positions of said windows are predetermined by a microprocessor and human interface, wherein said windows are plotted on said screen by way of a horizontal and vertical coordinate system indicating a horizontal and vertical pixel location for each window on said screen, said method comprising the steps of:
-
(1) encoding data comprising the sub-steps of; (a) extending window edges in vertical and horizontal directions corresponding to the horizontal and vertical coordinate system on the screen to form a multiple of clip rectangles; (b) assigning horizontal and vertical pixel values at locations where said extended window edges intersect the horizontal and vertical coordinate system; (c) assigning an ownership identification (ID) value for each said clip rectangle according to window priority; (d) using one label of one clip rectangle to identify a window; and (e) storing said pixel values, said ownership ID values, and said one label of said clip rectangle mentioned in sub-steps b-d; (2) decoding the encoded data of step (1) comprising the sub-steps of; (a) tracking incoming video data and associated ID data with said video data, (b) tracking vertical and horizontal synchronization signals from a video source indicating locations of said incoming video data for display on the screen; (3) determining whether said associated ID data corresponding to said incoming video data compares to said stored ownership ID values of said encoding step; and (4) displaying said incoming video data, if said associated ID data compares to said stored ownership ID values.
-
-
13. In a raster scan video display system having video sources for displaying non-obscured pixels in a multiple-media motion video environment possessing overlaid windows, apparatus comprising:
-
(a) a memory device comprising; a horizontal memory table connected to a host for storing pixel values corresponding to vertically extended video window edges on a screen which intersect a horizontal axis of said screen; a vertical memory table connected to said host for storing vertical pixel values corresponding to horizontally extended window edges which intersect a vertical axis of said screen, said horizontally and vertically extended video edges of said windows forming clip rectangles; a rectangle identification (ID) memory table connected to said host for storing an ID value for said clip rectangles; an initial window rectangle coordinate memory table for storing an initial coordinate value for one clip rectangle corresponding to each window video display on said screen; (b) a register and control portion of the apparatus having elements connected to said memory device and to the video sources, said register and control portion comprising; a data register connected to the video sources for receiving and latching video display data, said data register having a data register output; an input ID register also connected to the video sources for receiving ID data corresponding to said display data indicative of which video source sent said display data;
said input ID register having an output connected to said initial window rectangle coordinate table for pointing to said initial coordinate value which is read out of said initial window rectangle coordinate value table;a first counter connected to said initial window rectangle coordinate value table for receiving said initial window coordinate value, said first counter having a first counter output connected to said vertical and horizontal boundary tables and to said rectangle Id table, for using said initial window coordinate value as an index for indexing said values of said vertical and horizontal boundary tables and said rectangle ID table; a second counter connected to said vertical and horizontal boundary tables for receiving horizontal and vertical pixel values indexed from said vertical and horizontal boundary tables; a control logic block connected to said video source for receiving Hsync and Vsync signals, said control logic block also connected to said first counter and said second counter for loading and incrementing said first and second counters; a boundary compare logic block connected to said second counter and said vertical and horizontal boundary tables for comparing contents of said second counter with said horizontal and vertical pixel values indexed from said horizontal and vertical boundary tables, said boundary compare logic also connected to indicate to said control logic block when to increment or load said second counter; an owner ID compare logic block connected to said rectangle ID table and said input ID register for comparing said stored ID value of said clip rectangles with said ID data; and a driver connected to said ID compare logic block for driving video display data when said stored ID value of said clip rectangles are the same as said ID data.
-
Specification