Computers are known to include a central processing unit, system memory, peripheral ports, audio processing circuitry, and video processing circuitry. The video processing circuitry receives graphics data from the central processing unit and prepares it for display on a computer monitor, television, and/or LCD panel. The computer generates the graphics data by performing one or more applications such as word processing applications, drawing applications, presentation applications, spread sheets, operating system functionality, etc. The video graphics processing circuit processes the graphics data to produce RGB (red, green, blue) digital data, which may be converted to analog data that is provided to the monitor.
The video graphics circuitry may also include a video decoder and video capture module for processing YUV data. The video decoder is operably coupled to receive video signals from a video source such as a cable box, satellite receiver, antenna, VCR, DVD player, etc. Upon receiving the video signal, which is formatted for a television, the video decoder produces digital representations thereof. The digital representations are stored as YUV data in the video capture module. For the video graphics processor to process the YUV data, it first converts the YUV data into an RGB color base. Once in the RGB color base, the video graphics processor can blend the video data and graphics data to produce an output image.
The output image is in a digital RGB color base format and can be provided directly to an LCD panel or converted to an analog RGB signal via a digital-to-analog converter. If the computer is also providing the output image to a television monitor, the digital RGB color base data is converted to YUV color base data. As such, the video graphics processing circuitry would further include an RGB-to-YUV converter. By converting the video data to an RGB color base and then back to a YUV color base, the quality of the video is degraded in comparison to a non-converted video signal. The degradation occurs due to the methodology for converting YUV data to RGB data and converting RGB data to YUV data. To convert YUV data to RGB data, a number of standardizes sets of equations may be used. For example, either or both of the following sets of equations may be used: ##EQU1##
As one can see from these equations, the red and blue components of the RGB may exceed the value of 1 while the green component could be less than zero. In processing RGB data, the video graphics processor can only accommodate RGB component values that are between zero and one. As such, there are potential illegal values for R, G and B components, i.e., less than zero and/or greater than one. To compensate for this, the RGB component values are clamped to the zero or 1 threshold when the computed value would exceed the threshold. By clamping these values, resolution of the YUV data is degraded. As such, when the processed RGB data is reconverted to YUV data, the original YUV data may not be recaptured if it produced an RGB component value that exceeded the RGB thresholds.
Therefore, a need exists for a method and apparatus that allows more accurate--YUV-to-RGB back to YUV conversions to enhance the quality of video data when displayed on a device that uses YUV type output data (e.g., a television, a VCR, etc.).