PROGRAMMABLY CONTROLLING VIDEO FORMATS

Abstract: A video controller (18) may include at least one video input port (20) which may be programmably configured to receive either RGB or non-RGB color space signals. The video controller may programmably operate in either an RGB or non-RGB mode. In this way, the number of color space conversions may be reduced in some embodiments. For example, where a television output device (16) is coupled to the video controller, the video controller (18) may provide a non-RGB output signal.

Description: Programmablv Controlling Video Formats Background This invention relates generally to controlling video formats, for example in graphics accelerators or controllers that enable text and/or graphics to be displayed on a display such as a television receiver, a monitor or a liquid crystal (LCD) display, as examples. Conventional displays such as monitors and liquid crystal displays (LCD) used in connection with electronic devices such as computer systems, often use the RGB color space. In the RGB color space an image may be resolved into pixels having red, green and blue intensity values. A video adapter may generate the video signal for a video display. A graphics controller or accelerator may be part of the video adapter and may allow access to a video adapter buffer, or video memory, that stores data such as graphics or character data. Graphics controllers or accelerators work in the RGB color space. When it is desired to work in a video format such as a color space other than RGB, the non-RBG video is converted to the RGB color space and then is provided to the graphics controller which thereafter produces an RGB output. A variety of other color spaces are used. For example, the U.S. television broadcasting system generally uses the National Television Systems Committee (NTSC) standard which uses the YUV color space. British television broadcasting uses the phase alternate line or PAL system which makes use of the YUV color space. French television broadcasting uses the Sequential Coleur Avec Memoire (SECAM) system which uses the YDrDb color space. The International Consultative Committee On Broadcasting, known as ITU-R, has developed a digital color system known as YCrCb or ITU-R-BT.601 or CCLR- 601. High Definition Television (HDTV) uses the YCrCb color space as well, according to the Advanced Television Systems Committee (ATSC) Guide to the Use of the ATSC Digital Standard, ATSC Doc. A/54, 4 Oct. 1995. Thus, there are a number of different color spaces that may be utilized with television systems, which do not operate in the RGB color space. Generally, the conversion to the RGB color space may involve a simple mathematical operation such as simple multiplying and shifting. Known equations are available to convert any of the PAL, NTSC, SECAM or ITU- R-BT.601 color spaces to or from the RGB color space. Software is generally known for making these conversions as well. Graphics controllers that receive non-RGB inputs may provide output signals to a device which does not use the RGB format. However, the graphics controller may only work with RGB color space input signals. Therefore, a non-RGB input signal may be converted to the RGB format. Similarly, the output signal from the graphics controller may be converted back to a non-RGB format in order to be displayed in a non-RGB format, on a conventional television receiver, for example. In some instances, the original input signal is initially converted from a non-RGB to RGB and then back to the non-RGB format. Thus, there is a need for systems for controlling video formats that operate more flexibly with the variety of available color spaces and that are more efficient in handling color space conversions. Summary In accordance with one embodiment, a video controller may include a video input port. A device programmably configures the port to selectively accept one of at least two video formats. Brief Description of the Drawings Figure 1 is a block diagram of a graphics controller of the prior art; Figure 2 is a block diagram showing a graphics controller in accordance with one embodiment of the invention; Figure 3 is a flow diagram showing one flow for implementing an embodiment of the invention; Figure 4 is a block diagram of another embodiment of the invention; and Figure 5 is a block diagram of a computer system that may utilize an embodiment of the invention such as that shown in Figure 4. Detailed Description A graphics device or video controller for controlling video, such as a graphics accelerator or controller 12, shown in Figure 1, may mix or blend video input signals. In the illustrated embodiment, a non-RGB color space input signal is mixed with an RGB color space input signal in the graphics controller 12. This mixing may be desirable, for example, to overlay one video stream over another, such as graphics data over video capture data, or to add backgrounds, textures or colors to a video stream, as another example. Since conventional graphics controllers work in the RGB color space, the non-RGB input signal is converted to RGB color space, as indicated in block 10. If graphics are intended for an output device which uses a non-RGB format, such as a television receiver 16, the RGB output signal of the graphics controller 12 is again converted to a non-RGB format as indicated at 14. Referring now to Figure 2, in accordance with one embodiment of the invention, given the same circumstances shown in Figure 1, the conversion to or from an RGB or non- RGB format may be controlled based on the type of output device 16. Thus, where the output device 16 is a television receiver, it may be advantageous to work in the non-RGB format since the eventual output of the graphics controller 18 is intended to be in a non-RGB format. Instead of converting the non-RGB input, the RGB input may be converted to the non-RGB format used by the output device, as indicated in block 20. Thereafter, the two video input streams, in a non-RGB format, are mixed and provided in the appropriate non- RGB format to the receiver 16. Thus, with the embodiment of the invention shown in Figure 2, only one color space conversion may be used instead of the two conversions used in embodiment of Figure 1. This may be accomplished, for example, by programmably controlling an input port of the graphics controller 18 in accordance with the nature of the intended output device. Thus, in the case where the output device is in a non-RGB format, an RGB input signal is converted to the non-RGB format rather than vice versa. In normal mode, the graphics controller 18 may default to the RGB color space, in one embodiment of the invention. When a non-RGB output is desired, for example for a television receiver 16, the default setting may be overridden, in one embodiment of the invention. Turning now to Figure 3, software 21, in one embodiment of the invention, for controlling a programmable graphics controller 18 may initially determine, at diamond 22, whether the output device, such as the device 16, is a non-RGB format output device. If not, the default setting (RGB) is utilized by the graphics controller and no further operations are needed. Where a non-RGB output device is detected, for example based on user settings, the graphics controller 18 may be set to the non-RGB mode, as indicated in block 24. This non- RGB mode setting may indicate to the graphics controller 18 that appropriate non-RGB signals are mixed in the non-RGB mode rather than being converted into the RGB format. This, in effect, may override the default setting on the graphics controller 18 which would otherwise provide an RGB output. Next, a check at diamond 26 determines whether a RGB input signal is being provided to the graphics controller 18. If so, this input may be converted to a non-RGB output consistent with the intended output device 16. This conversion may be done, in one embodiment of the invention, by a software operation which may involve simple multiplication and shifting. Equations for converting between RGB color space and non-RBG color spaces, such as those used in television broadcasting, are well known. For example, equations for making these conversions are set forth in Mattison, Philip E., Practical Digital Video with Programming Examples in C John Wiley & Sons ( 1994) at page 110. A check at diamond 29 may determine whether the controller output signal is intended for an interfaced output device such as a television receiver as indicated at diamond 29. If so, flicker filtering may be applied to graphics, as indicated in block 30. Next, video input signals, in the same color space format, may be mixed as indicated in block 31 and a non-RGB output may be provided as indicated in block 32. In some embodiments it may be desirable to provide both non-RGB and RGB output signals. Referring next to Figure 4, one embodiment of the invention may utilize selective flicker filtering at a graphics controller 34 coupled to a frame buffer which provides a display to a video display device. The graphics controller 34 may output either RGB or YCbCr, in the illustrated embodiment. If the display is a television display, flicker filtering may be provided as indicated in block 36 in response to a control signal 46 as described previously. The graphics controller then drives a frame buffer or video memory. Similarly a video capture device 40 may provide video in either RGB or YCbCr formats, in the illustrated embodiment. Flicker filtering may be provided as indicated at block 36 if a television receiver is the intended output device. Again, the application of flicker filtering may be controlled by a control signal 48. In one embodiment, the flicker filtering control may be provided by software. Captured video information may then be provided to a second frame buffer 42, which in the illustrated embodiment, is an overlay buffer. A mixing function may occur at 44 and an output signal may be provided to the appropriate video output device which in some embodiments may be a digital to analog converter, an NTSC encoder, or an LCD encoder, as examples. As illustrated in Figure 5, in one embodiment of the invention, the graphics controller may be a part of a system including a processor 82. In one embodiment of the invention, the system may be a so-called set-top computer system. A set-top computer system may operate either with a conventional computer system monitor or with a television receiver operating as a display for displaying, for example, both computer graphics and television information. The system 80 may include a processor 82 coupled to a host bus 84. The host bus 84 in turn may be coupled to a host bridge 86 which may be coupled to main memory 88 and an accelerated graphics port (AGP) 92. (See the Accelerated Graphics Port Interface Specification, Revision 1.0, July 31, 1996, by Intel Corporation, Santa Clara, California.) The port 92 in turn may be coupled to a graphics device 94 which may include a graphics controller 34 for example. The graphics device 94 may receive captured video as illustrated and may be coupled to a conventional computer monitor 96. The device 94 may also be coupled through an encoder 100 to a television monitor 98. The graphics device 94 may be coupled to a graphics local memory 104 and a video basic input/output system (BIOS) 102 in one embodiment of the invention. The host bridge 86 may also couple a bus 106 which may receive a plurality of cards in slots 108. The bus 106 may be coupled to a bus-to-bus bridge 110 which may be coupled to a variety of storage devices including a floppy disk drive 112, a compact disk drive 113 or a pair of Universal Serial Bus (USB) ports 114 and 116. (See the Universal Serial Bus Specification, Revision 1.0, January 15, 1996.) The bridge 1 10 may also link to the main memory 88 through a system management (SM) bus 90. The bridge 110 may also be coupled to another bus 118 which includes slots 120. The bus 118 may couple a system BIOS 122 and a hard disk drive 124 which may include the software 21 described previously. The detection of the nature of the output device or the color space of an input signal may be done, for example, by checking configuration information that he stored in a Windows® registry or a database. This information may be accessed by an operating system. Based on a device's configuration ID its color space requirements can be determined. Otherwise, a user query, for example through a graphical user interface, may be used to identify the color space used by a coupled device. Among the advantages of certain embodiments of the invention, unnecessary color space conversions can be avoided, higher quality video may be displayed, and more efficient operation of the graphics controller may be achieved. This may be beneficial, for example, in accordance with systems, such as set-top computer systems, which may selectively operate either with a television receiver or a monitor as a display. While the present invention has been described with respect to a limited number of embodiments, those skilled in the art will appreciate numerous modifications and variations therefrom. It is intended that the appended claims cover all such modifications and variations as fall within the true spirit and scope of the present invention. What is claimed is:

Claims: 1. An apparatus comprising: a video input port; and a device that programmably configures said port to accept one of at least two video formats. 2. The apparatus of claim 1 wherein one of said video formats is the RGB color space and the other video format is a video format used in connection with television receivers. 3. The apparatus of claim 1 including a device that selectively provides flicker filtering. 4. The apparatus of claim 3 including a detector that determines whether an output device coupled to the apparatus is a television receiver and based on the detection of a television receiver, selectively provides flicker filtering. 5. The apparatus of claim 1 wherein one of said video formats is RGB and the other is YCbCr. 6. The apparatus of claim 1 wherein said device determines whether an output device coupled to said apparatus is a non-RGB output device. 7. The apparatus of claim 6 wherein said apparatus uses the RGB color space as a default. 8. The apparatus of claim 7 wherein said device is programmably configured in a non-RGB mode when the apparatus is coupled to a non-RGB output device. 9 The apparatus of claim 1 using only one color space conversion. 10. The apparatus of claim 1 wherein a non-RGB output is provided from said apparatus. 11. A method of controlling a video stream comprising: receiving a video stream; and programmably configuring a video port to accept video streams in one of at least two video formats. 12. The method of claim 11 further including detecting a characteristic and based on said characteristic setting the video format to one of at least two formats. 13. The method of claim 11 further including programmably setting whether to apply flicker filtering. 14. The method of claim 11 further including detecting the format of a video display device. 15. The method of claim 14 including setting the video format of a stream based on the format of said video display device. 16. The method of claim 14 including selecting between RBG and non-RBG video formats. 17. An article comprising a medium for storing instruction that cause a computer to: receive a video stream; and programmably configure a video port to accept a video stream in one of at least two video formats. 18. The article of claim 17 further including instructions that cause a computer to detect a characteristic and based on said characteristic set the video format to one of at least two formats. 19. The article of claim 17 further including instructions that cause a computer to programmably set whether the video stream receives flicker filtering. 20. The article of claim 17 further including instructions that cause a computer to detect the format of a video display device.

Inventors: GRYSKIEWICZ PAUL, GRYSKIEWICZ, PAUL
Applicants: GRYSKIEWICZ PAUL, INTEL CORP, GRYSKIEWICZ, PAUL, INTEL CORPORATION
Application year: 1999
Main classification: H04N9
IPC codes: G06F3, G09G5, H04N5, H04N9