gstreamer/libs/gst/base
Andy Wingo c1d34b8acf tests/network-clock.scm: Commentary update.
Original commit message from CVS:
2005-07-01  Andy Wingo  <wingo@pobox.com>

* tests/network-clock.scm: Commentary update.

* gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
Didn't really make sense, not implementable with basetransform,
etc.
(gst_identity_transform): Unref inbuf via make_writable. Feeble
attempt at implementing the sync property, needs an unlock method.

* gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
New func, by default returns the same caps (the identity
transformation).
(gst_base_transform_getcaps): Uses transform_caps to return
something sensible.
(gst_base_transform_setcaps): Complicated logic to get caps on
both pads, even if they are different, and to call set_caps once
for every time both pads get their caps set.
(gst_base_transform_handle_buffer): Give the ref to the transform
function. Allows in-place modification of the buffer.

* gst/base/gstbasetransform.h (transform_caps): New class method.
Given caps on one side, what can I do on the other.
(set_caps): Take two caps, one for each side of the element.

* gst/gstpad.h:
* gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
caps in place. This is safe because we can check the mutability of
the caps, and a good idea because fixate functions are just called
as a matter of last resort. (Not actually implemented.)
(gst_pad_set_caps): If the caps we're setting is actually the same
as the existing pad caps, just update the pointer without calling
setcaps. Assert that caps is either NULL or fixed, as per the
docs.

* gst/gstghostpad.c: Update for fixate changes.
2005-07-01 16:46:59 +00:00
..
.gitignore ignore more 2005-06-17 09:12:33 +00:00
gstadapter.c gst/: Implement gst_pad_pause/start/stop_task(), take STREAM lock in task function. 2005-05-25 11:50:11 +00:00
gstadapter.h gst/base/: Ported and added adapter to the base classes. 2005-05-18 09:55:43 +00:00
gstbasesink.c gst/base/gstbasesink.*: Some tweaks, only EOS and a buffer complete a preroll. 2005-06-30 12:14:47 +00:00
gstbasesink.h gst/base/gstbasesink.*: Some tweaks, only EOS and a buffer complete a preroll. 2005-06-30 12:14:47 +00:00
gstbasesrc.c did s/bases(rc/ink)_/base_s(rc/ink)_/; wim wants to remove base completely, but that's for later 2005-06-28 12:01:49 +00:00
gstbasesrc.h did s/bases(rc/ink)_/base_s(rc/ink)_/; wim wants to remove base completely, but that's for later 2005-06-28 12:01:49 +00:00
gstbasetransform.c tests/network-clock.scm: Commentary update. 2005-07-01 16:46:59 +00:00
gstbasetransform.h tests/network-clock.scm: Commentary update. 2005-07-01 16:46:59 +00:00
gstcollectpads.c gst/: Added object to help in making collect pad based elements. 2005-05-05 09:31:59 +00:00
gstcollectpads.h gst/: Added object to help in making collect pad based elements. 2005-05-05 09:31:59 +00:00
gstpushsrc.c gst/base/: Added is_seekable to BaseSrc 2005-05-12 10:43:14 +00:00
gstpushsrc.h gst/base/: Added is_seekable to BaseSrc 2005-05-12 10:43:14 +00:00
gsttypefindhelper.c gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any remaining buffer. 2005-06-27 18:35:05 +00:00
gsttypefindhelper.h Added typefind helper. 2005-04-12 10:52:55 +00:00
Makefile.am gst/base/: Ported and added adapter to the base classes. 2005-05-18 09:55:43 +00:00
README gst/: More work on the generic source base class, implement seeking, query. 2005-04-06 17:30:48 +00:00

Base classes
------------

GstBaseSink
 
  Base class for sink elements.

  - one sinkpad
  - handles state changes
  - does flushing
  - preroll with optional preview
  - pull/push mode
  - EOS handling

  FIXME: not much point making it operate in pull mode as a generic
  base class I guess... 

GstBaseTransform

  Base class for simple tranform filters

  - one sinkpad and one srcpad
  - formats the same on sink and source pad.
  - handles state changes
  - does flushing
  - push mode
  - pull mode if transform can operate on arbitrary data

GstBaseSrc

  Base class for getrange based source elements

  - one sinkpad
  - handles state changes
  - pull/push mode
  - handles seeking/query