Indicates
the synchronization methods supported by the CODEC Proc. The following methods
are currently defined for video.
CODEC_SYNC_METHOD_NO_DROP_FRAMES
The CODEC will
not be requested to drop frames. That is, the MMIO_DROP_DELTA_FRAME flag
will not be set, even if video is behind. CODECs with this synchronization
method will not maintain audio synchronization if there are insufficient
processing resources to decompress and display data in real time. Factors
contributing to this situation include computational complexity of the CODEC
during decompression, hardware capabilities such as processor speed, bus
speed, video I/O (memory wait state) speed, and other processes running
in the system contending for processor resources at potentially higher priority
levels. Continuity of the audio soundtrack playback is not assured using
CODECs with synchronization method zero.
CODEC_SYNC_METHOD_DROP_FRAMES_IMMEDIATELY
The MMIO_DROP_DELTA_FRAME flag will be set whenever
video is behind by more than a threshold. It is up to the CODEC implementation
to determine the appropriate action to take when the MMIO_DROP_DELTA_FRAME
flag is set. CODECs that are unable to drop individual delta frames within
a delta frame sequence may choose to decompress the data but forgo display
of the decompressed data to reduce processing complexity in an attempt to
"catch up." Such an approach should be used, only to a certain extent, to
ensure continuity of the audio soundtrack playback. That is, if the reduction
in processing complexity is not sufficient to get caught up, and if drop
frame requests continue to occur on consecutive frames, then the CODEC should
further reduce its processing complexity by dropping frames completely until
the next key frame.
CODEC_SYNC_METHOD_DROP_FRAMES_PRECEDING_KEY
The MMIO__DROP_DELTA_FRAME flag will be set whenever
video is behind by more than a threshold, at points in the stream where
the time remaining to the next key frame is less than or equal to the time
interval by which the video is behind. In most cases, the effect of this
method is that only delta frames preceding key frames are dropped. If the
video falls behind and no key frames are encountered within two seconds
in the data stream, delta frames will be dropped without regard to key frame
proximity. If the video falls behind and the data stream contains consecutive
key frames, key frames will be dropped.