GstBase.PushSrc

g GObject.InitiallyUnowned GObject.InitiallyUnowned Gst.Object Gst.Object GObject.InitiallyUnowned->Gst.Object GObject.Object GObject.Object GObject.Object->GObject.InitiallyUnowned Gst.Element Gst.Element GstBase.BaseSrc GstBase.BaseSrc Gst.Element->GstBase.BaseSrc Gst.Object->Gst.Element GstBase.PushSrc GstBase.PushSrc GstBase.BaseSrc->GstBase.PushSrc

Subclasses:None

Virtual Methods

Inherited:GstBase.BaseSrc (19), Gst.Element (16), Gst.Object (1), GObject.Object (7)
  do_alloc (buf)
  do_create (buf)
  do_fill (buf)

Properties

Inherited:GstBase.BaseSrc (4), Gst.Object (2)

Fields

Inherited:Gst.Element (3), Gst.Object (1), GObject.Object (1)
Name Type Access Description
parent GstBase.BaseSrc r  

Class Details

class GstBase.PushSrc(**kwargs)
Bases:GstBase.BaseSrc
Abstract:No
Structure:GstBase.PushSrcClass

This class is mostly useful for elements that cannot do random access, or at least very slowly. The source usually prefers to push out a fixed size buffer.

Subclasses usually operate in a format that is different from the default Gst.Format.BYTES format of GstBase.BaseSrc.

Classes extending this base class will usually be scheduled in a push based mode. If the peer accepts to operate without offsets and within the limits of the allowed block size, this class can operate in getrange based mode automatically. To make this possible, the subclass should implement and override the SCHEDULING query.

The subclass should extend the methods from the baseclass in addition to the ::create method.

Seeking, flushing, scheduling and sync is all handled by this base class.

do_alloc(buf) virtual
Parameters:buf (Gst.Buffer) –
Return type:Gst.FlowReturn
do_create(buf) virtual
Parameters:buf (Gst.Buffer) –
Return type:Gst.FlowReturn
do_fill(buf) virtual
Parameters:buf (Gst.Buffer) –
Return type:Gst.FlowReturn