H26X Video Control Interfaces

[This is preliminary documentation and subject to change.]

There are two interfaces for the decoder and three interfaces for the encoder. The decoder interfaces are IH26XVideoEffects and IH26XSnapshot. The IH26XVideoEffects interface is used to set brightness, contrast, and saturation. The tint setting is not implemented. The IH26XSnapshot interface lets the programmer retrieve the current picture in YUV12 format. Any method may be called at any time. However, the Snapshot methods return an error if called when the decoder is not decoding frames.

The encoder interfaces are IH26XEncoderControl, IH26XRTPControl, and IH26XEncodeOptions (H263 only). The IH26XEncoderControl interface permits the setting of frame size and quality. The IH26XRTPControl interface allows you to program RTP parameters: packet size and packet loss. The IH26XEncodeOptions interface lets you set extended motion vectors, PB frames, and advanced prediction. For RTP, however, packet size and packet loss will update the codec at each frame only if bRTPHeader has been set to TRUE prior to StartStreaming. The E_FAIL or S_OK codes are the only ones returned.

H26X Video Control Interfaces Description
IH26XVideoEffects Sets brightness, contrast, and saturation.
IH26XEncodeOptions Sets extended motion vectors, PB frames, and advanced prediction.
IH26XSnapshot Retrieves the next decoded frame in YUV12 format.
IH26XEncoderControl Sets frame size and quality.
IH26XRTPControl Program RTP parameters, such as packet size and packet loss.