request_sync_point


Description:

[ Version ( since = "1.20" ) ]
public void request_sync_point (CodecFrame frame, DecoderRequestSyncPointFlags flags)

Allows the Decoder 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 min_force_key_unit_interval.

The subclass can signal via flags how the frames until the next sync point should be handled:

* If gst_video_decoder_request_sync_point_discard_input 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 gst_video_decoder_request_sync_point_corrupt_output is selected then all output frames following frame are marked as corrupted via gst_buffer_flag_corrupted. Corrupted frames can be automatically dropped by the base class, see discard_corrupted_frames. Subclasses can manually mark frames as corrupted via gst_video_codec_frame_flag_corrupted before calling finish_frame.

Parameters:

this

a Decoder

frame

a CodecFrame

flags

DecoderRequestSyncPointFlags