ATI All-in-Wonder 9700 Pro Previewby Matthew Witheiler on September 30, 2002 6:30 AM EST
- Posted in
The R300: Playing A Vital Role
The R300 core found on the All-in-Wonder 9700 Pro is much more than just a chip used for 3D games. The R300 core itself contains some interesting hardware that is only taken advantage of in the All-in-Wonder card configuration (although the R300 on non All-in-Wonder cards is the same).
One aspect of the R300 core which the All-in-Wonder 9700 makes extensive use of is the Cobra MPEG-2 engine. Typically, an MPEG-2 engine is a segment of a video processor that is dedicated to helping MPEG-2 decoding functions. By creating a hardware path for common MPEG-2 decode functions such as inverse discrete cosine transform (iDCT), video cards have made it possible to watch MPEG-2 media without dedicated hardware or extreme CPU utilization. The Cobra engine introduces a new feature into the MPEG-2 engine.
The Cobra engine is the first consumer level video card to offer not only hardware MPEG-2 decode (for watching movies) but also hardware MPEG-2 encode (for encoding video). This allows the All-in-Wonder 9700 Pro to offload some of the MPEG-2 encode functions to the R300 chip (such as discrete cosine transform, DCT), thus saving CPU usage. The Cobra engine makes it possible to shift 10-20% of the MPEG-2 encode process into hardware (according to ATI, the maximum theoretical amount of MPEG-2 encode which can occur in hardware is around 20-25%). As a result, MPEG-2 encoding on the All-in-Wonder 9700 Pro occurs more smoothly and can occur at very low bit rates that were previously very taxing on a CPU. This same engine is present on all R300 based ATI products but only enabled in the All-in-Wonder version.
The Cobra engine also takes advantage of a new hardware feature which ATI calls VideoSoap. What VideoSoap does is use a portion of the R300's pixel shaders to clean up video that is being sent into the Cobra engine for encoding. VideoSoap gives the All-in-Wonder 9700 Pro the ability to run up to four filters on an incoming video stream in an attempt to filter out noise. VideoSoap filters for blur, despeckle, sharpen, and up to two various combinations of these filters. Naturally, by filtering out noise of video to be encoded in real time one is left with a better looking MPEG video. But there is more to VideoSoap than just that.
Thanks to VideoSoap's ability to remove noise from a video stream, MPEG files created on the All-in-Wonder 9700 Pro do not only look better, they are smaller. Noise present in a video decreases the ability to compress the video because noise is random. Compression algorithms make use of set patterns in a video, so therefore when data without a pattern is introduced into the equation this data can not be compressed. Because the All-in-Wonder 9700 Pro reduces the amount of random noise present in a video stream, the video can be encoded more efficiently resulting in smaller files and higher compression rates.
The amount of filtering that VideoSoap performs when encoding a video can be adjusted by the user. A dialogue box allows up to four filters to be applied at once with the intensity of each filter adjustable. There is a preview of what the final video will look like compared to the original stream so that the settings can be finely tweaked.
We will have to wait until we get our hands on a All-in-Wonder 9700 Pro to see what kind of compression we can get on the card as well as how much the Cobra engine helps MPEG-2 encode.
An extreme example of what VideoSoap can do.