diff options
author | Tim-Philipp Müller <tim@centricular.net> | 2005-05-13 09:27:24 +0000 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.net> | 2005-05-13 09:27:24 +0000 |
commit | 90e9e00bfc63eb27409b5b82f069add73b5c563b (patch) | |
tree | a182b36e30f0ce9de4a4bbf21cf08e65a0c8d400 /docs/design/part-element-source.txt | |
parent | 1c4ea6213b0dfe073c519a5eac8ccd6042cb30de (diff) |
Mention GstPushSrc
Original commit message from CVS:
Mention GstPushSrc
Diffstat (limited to 'docs/design/part-element-source.txt')
-rw-r--r-- | docs/design/part-element-source.txt | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/docs/design/part-element-source.txt b/docs/design/part-element-source.txt index 97c889a9fb..fc929de17b 100644 --- a/docs/design/part-element-source.txt +++ b/docs/design/part-element-source.txt @@ -50,18 +50,28 @@ source's state change function is called. Source base classes ------------------- -GstBaseSource: +GstBaseSrc: This base class provides an implementation of a random access source and is very well suited for file reader like sources. +GstPushSrc: + Base class for block-based sources. 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. + Classes extending this base class will usually be scheduled in a push + based mode. It the peer accepts to operate without offsets and withing + the limits of the allowed block size, this class can operate in getrange + based mode automatically. + The subclass should extend the methods from the baseclass in + addition to the create method. If the source is seekable, it + needs to override GstBaseSrc::event() in addition to + GstBaseSrc::is_seekable() in order to retrieve the seek offset, + which is the offset of the next buffer to be requested. - - - - + Flushing, scheduling and sync is all handled by this base class. |