BaseSink.waitPreroll

gst.types.FlowReturn waitPreroll()

If the #GstBaseSinkClass::render method performs its own synchronisation against the clock it must unblock when going from PLAYING to the PAUSED state and call this method before continuing to render the remaining data.

If the #GstBaseSinkClass::render method can block on something else than the clock, it must also be ready to unblock immediately on the #GstBaseSinkClass::unlock method and cause the #GstBaseSinkClass::render method to immediately call this function. In this case, the subclass must be prepared to continue rendering where it left off if this function returns [gst.types.FlowReturn.Ok].

This function will block until a state change to PLAYING happens (in which case this function returns [gst.types.FlowReturn.Ok]) or the processing must be stopped due to a state change to READY or a FLUSH event (in which case this function returns [gst.types.FlowReturn.Flushing]).

This function should only be called with the PREROLL_LOCK held, like in the render function.

Returns

[gst.types.FlowReturn.Ok] if the preroll completed and processing can

continue. Any other return value should be returned from the render vmethod.