VideoDecoder.requestSyncPoint
void requestSyncPoint(gstvideo.video_codec_frame.VideoCodecFrame frame, gstvideo.types.VideoDecoderRequestSyncPointFlags flags)Allows the #GstVideoDecoder subclass to request from the base class that a new sync should be requested from upstream, and that frame was the frame when the subclass noticed that a new sync point is required. A reason for the subclass to do this could be missing reference frames, for example.
The base class will then request a new sync point from upstream as long as the time that passed since the last one is exceeding #GstVideoDecoder:min-force-key-unit-interval.
The subclass can signal via flags how the frames until the next sync point should be handled:
- If gstvideo.types.VideoDecoderRequestSyncPointFlags.DiscardInput is selected then all following input frames until the next sync point are discarded. This can be useful if the lack of a sync point will prevent all further decoding and the decoder implementation is not very robust in handling missing references frames.
- If gstvideo.types.VideoDecoderRequestSyncPointFlags.CorruptOutput is selected then all output frames following frame are marked as corrupted via gst.types.BufferFlags.Corrupted. Corrupted frames can be automatically dropped by the base class, see #GstVideoDecoder:discard-corrupted-frames. Subclasses can manually mark frames as corrupted via gstvideo.types.VideoCodecFrameFlags.Corrupted before calling gstvideo.video_decoder.VideoDecoder.finishFrame.
Parameters
framea #GstVideoCodecFrame flags#GstVideoDecoderRequestSyncPointFlags