The Other Side of Compression
Chapter 5: On2 Technologies VP4
VP4, On2 Technologies
PROS | CONS |
Detail-oriented codec yields very high quality on good sources. | Sensitivity to detail requires good preprocessing decisions and high quality sources. |
VP4 targets interlace as well as progressive scan formats, with a goal of entering the set-top market for delivering streaming media to televisions. | No GUI available for encoding and tweaking parameter set. |
Built-in preprocessor and good key frame control. | To take full advantage of all features, the codec must be licensed from On2 or processed at On2’s facility. |
Full-screen, full-motion results are achievable at under 1Mbps. |  |
The next stage of development for On2 is its VP4 technology. The company has announced several major licensees of this technology, including Real, which will include VP4 in an upcoming release of RealProducer. This is the way in which the masses will most likely have access to the codec for video on demand work in the coming year. The codec has also been licensed to several chip manufacturers looking to deliver media to set-top boxes over network connections. On2 says it is penetrating the Asian and European markets, but is looking at opportunities in the United States, as well. Broadcasters and long-form content providers can find more information on licensing options at www.on2.com.
Intelligence is built in to the keyframe detection schemes, and we found most of the default VP4 settings to be ideal for these tests. The settings include always favoring quality over time to encode, and allowing the codec to determine the keyframe placement. This also meant that the "Force keyframes every" check box in VirtualDub was left unchecked. We did check the options for Spatial and Temporal resampling for all tests. Temporal resampling allows the codec to drop frames during encoding just as VP3 does.
Keep in mind that we were striving for the best image quality without severely sacrificing the frame rate of the encoded streams. Since we had to lower the frame rate on the mid-band tests in order to get a better image quality, the drop frame didn’t come into play here. You will see it in action if you require full-motion 29.97 fps or 30 fps with highly detailed images. Spatial re-sampling is checked but is only applied by the encoder on large frame sizes i.e., 640x480, which doesn’t apply to our tests here.
One of the major markets On2 is targeting with VP4 is the broadcast, set-top device market. In light of this, we saw some interesting results. VP3.2 and VP4 achieved comparable bit rates, but the latter appears to code more details in the image. With the interlaced source, Fash, encoded at 252Kbps, VP4 appears to acquire more artifacts, as it tries to code the interlacing within the image. Also, on the noisy, talking heads source, the VP4 result looks noisier as opposed to smoothed out. Most other codecs will throw much of this high-frequency detail out in order to maintain target bit rates. VP4 can actually code this detail even at comparable bit rates, although we did lower the frame rate in a few cases to maintain better image quality.
The licensing agreements that On2 is developing should give users access to more control over the codec’s parameter choices. This will allow the compressionist to compensate for less-than-ideal source material and have greater functionality in data rate tracking and quality control. Next year, we will see this codec built into Real Producer. Today, specialty encoding services are being offered at On2’s facility; a custom encoding system can also be configured for individual company needs.
With the broadcast market in mind, this codec will also be competitive for full-screen, full-motion video. On2 is developing methods for coding interlaced content that is destined for display on an interlace television via a set-top box. Look for this codec to compete in the MPEG space as well.
Tips and Tricks for Encoding with VP4:
- Preprocess carefully, since this codec can encode noise to actually look like noise and interlace to look like interlace, even when it is being displayed on a progressive monitor.
- Let the codec do all keyframe control. Unselect the "Force Keyframes Every" box, or enter a very large number so the application doesn’t put in keyframes where they are not needed.
- When encoding streams at frame rates that are lower than the source frame rate in VirtualDub, you need to compensate for the application's interpretation of bits/frame. If you decimate by 2, double the target bit rate; decimate by 3 and you need to triple the target bit rate, etc. Note that this is an imprecise science that will only get you in the ballpark for your target.
Companies and Suppliers Mentioned