LEADTOOLS Filters Help > Filters, Codecs and Interfaces > Video Codecs > Theora > LEAD Theora Encoder User Inteface |
A multimedia framework and API produced by Microsoft for software developers to perform various operations with media files. Most Windows video-related applications on Windows, such as Microsoft's Windows Media Player, use DirectShow to manage multimedia content.
The LEAD Theora Encoder is a DirectShow encoder for compressing video data using Theora compression. Theora is an open video codec developed by the Xiph.org foundation aimed at offering a patent-free alternative to MPEG-4. The compression is comparable to MPEG-2, H.263, MPEG-4 and H.264 and, unlike these codecs, the Theora codec is free of patent fees.
The compression options for the LEAD Theora Encoder can be set manually through the encoder property page. They can also be set programmatically through the ILMTheoraEncoder interface. The following figure shows the encoder property page:
Changes will be applied directly to the streaming media with the ability to set them permanently by clicking Apply or OK, or to abandon changes by clicking Cancel.
If you are using the encoder with a third-party software package, refer to your softwares documentation for information on how to access the encoders property page(s).
The following table shows the controls and their descriptions:
Control |
Description |
|
Rate Control group |
Use the controls in this group to control the output quality and bitrate. |
|
Constant Quality radio button |
Select this button when you want the output file to be a certain quality. |
|
Quality Factor drop-down list box. |
Select a quality factor ranging from 1 (highest quality, lowest compression ratio) to 64 (lowest quality, highest compression ratio). Enabled only if the Constant Quality radio button is selected. |
|
Constant Bitrate radio button |
Select the Constant Bitrate radio button when you want the file to have a certain bitrate. |
|
Max Quality Factor drop-down list box. |
Select the maximum quality factor to be used in order to achieve the desired bitrate. A higher value makes it more likely that the compressor will achieve the desired bitrate. Recommended value: 64. Enabled only if the Constant Bitrate radio button is selected. |
|
Target Bitrate edit box |
Enter the desired bitrate (in kbits/second). Note that this is 8 times larger than a bitrate specified in kilo bytes (KB) per second. For example, for a bitrate comparable with a 56kbps modem, you would enter 56 as the bitrate. |
|
Output Frame Rate group |
Use the controls in this group to adjust frame rate settings. |
|
Output Frame Rate drop-down list box |
Use the Output Frame Rate drop-down list box to specify one of the predefined output frame rates. The default value is "Input Frame Rate". Possible Values are |
|
|
Value |
Meaning |
|
Input Frame Rate |
Select this item to keep the frame rate unchanged. |
|
1 fps |
1 frame/second |
|
5 fps |
5 frames/second |
|
7 fps |
7 frames/second |
|
10 fps |
10 frames/second |
|
15 fps |
15 frames/second |
|
20 fps |
20 frames/second |
|
23.976 fps - NTSC encapsulated film rate |
23.976 frames/second |
|
24 fps - Standard international cinema film rate |
24 frames/second |
|
25 fps - PAL (625/50) video frame rate |
25 frames/second |
|
29.97 fps - NTSC video frame rate |
29.97 frames/second |
|
30 fps - NTSC drop-frame (525/60) video frame rate |
30 frames/second |
|
50 fps - double frame rate/progressive PAL |
50 frames/second |
|
59.94 fps - double frame rate NTSC |
59.94 frames/second |
|
60 fps - double frame rate drop-frame NTSC |
60 frames/second |
Other Options group |
Use the controls in this group to adjust other compression options. |
|
I Frame Distance drop-down list box. |
Specifies the maximum distance between key frames. Note that the codec might still insert additional key frames if it detects that a new key frame is necessary. A new key frame is generated sooner if the background changes too much and the current key frame is not suitable anymore for the frames being compressed. The default value is 64. |
|
Fast Compression check box |
Select this check box to enable the fast compression mode, which is 3 times faster than non-fast compression mode. The tradeoff is a small reduction in compression ratio. The default value is selected. |
|
Sharpness drop-down list box. |
Specify the desired sharpness of the video. The possible values are 0 (sharpest), 1 and 2 (least sharp). Sharper video looks better, but takes up more disk space. The default value is 2. |
Rate Control Group
Use the Rate Control group controls to manage compression. The LEAD Theora Encoder has two compression modes: Quality driven, using Variable Bitrate (VBR); and Rate driven, using Constant Bitrate (CBR).
Quality-Driven
Use the variable bitrate compression mode to create a file with a specific quality. In such cases, it is not possible to accurately predict the generated file size. However, the movie will have the same quality throughout its length. Also, videos of various sizes (width, height, frame rate) will have a consistent quality when they are compressed using the same quality factor. When using quality driven compression:
Low quality factor values will generate better quality videos and lower compression (larger file size)
High quality factor values will generate lower quality videos and higher compression (smaller file size)
Rate-Driven
Use a constant bitrate when the generated file should have a specific bitrate. Typically this is used when a file is put on a web site and the file is to be played by computers whose Internet connection matches a specific speed. Or, when a codec in a videoconferencing or streaming application that uses a specific connection speed.
Remember that the bitrate is measured in kilo bits per second (kbps) not kilo bytes per second (KB/s)! To convert kilo bits/second to kilo bytes/second, divide by 8. Files compressed with variable bitrates should have the same size, regardless of the video width and height. This means that when two videos of different width and height are converted to the same bitrate, the video with the larger size will have a poorer quality than the video with smaller size.
Constant Bitrate (CBR) compression can be controlled in two ways: by selecting a maximum QFactor and by selecting a target bitrate. The compressor will achieve a desired target bitrate by adjusting the quality factor used to encode each frame. You can specify that the quality factor should never exceed a certain value. In this case, the quality will not be worse than what you feel it is acceptable. But, in this case, there is also a lower chance that you will get the output bitrate that you desire. It is recommended to leave the max quality factor to 64 if it is important that you get a certain output bitrate.
Output Frame Rate Group
Use the output Frame Rate list box to modify the frame rate of the file being compressed. Usually, videos are 30fps (30 frames per second). At this frame rate, the human eye perceives moving objects as smooth. Reducing the frame rate greatly increases the compression. But, as the frame rate is reduced, the video becomes jerkier. At 15fps video will still look acceptably smooth. Below this, the jerkiness becomes noticeable.
Generally, decrease the video frame rate in order to achieve higher compression. You can also increase the frame rate, but that is not recommended, since the output file will be bigger and the quality will not be any better. For example, if the original video is 15fps and you compress it as 30fps, the compressed video will NOT be smoother than the original.
It is recommended to reduce the frame rate if you increase the quality factor to the point you start seeing compression artifacts and the compression is still not good enough. In that case, reduce the frame rate and reduce the quality factor and you might get better visual results.
Other Options group
Use the I frame distance drop-down list box to specify the maximum distance between key frames.
The more key frames are used, the faster the seek operations. Seeks occur when you play a video file and you try to skip ahead or go back in the movie. You will notice that the playback does not start immediately. You can reduce the delay between the time you perform the seek and when the playback starts by reducing the distance between key frames. Also, if you use the encoder in a videoconferencing or streaming situations, the decoder will connect quicker if you have more key frames.
There is a price for that: key frames are a lot larger than the non-key frames, so the more key frames you have, the lower the compression will be (and bigger the output file).
The distance between key frames is specified in Frames. For example, if the distance between I frames is 64 and the output video is 30 fps, you will have a key frame every 2.1 seconds. Note that, for a 15fps video, 64 frames is equivalent to about 4 seconds.
You can use the Sharpness setting to adjust the videos sharpness. A value of 0 generates the sharpest video, whilst a value of 2 generates less sharp video. The trade-off is the compression ratio: a sharper video compress reduces the compression ratio, so the output file is bigger. The default value is 2.