gstreamer/docs/design/part-messages.txt
Wim Taymans c4abf79f02 docs/: Small docs updates.
Original commit message from CVS:
* docs/design/part-events.txt:
* docs/design/part-gstpipeline.txt:
* docs/design/part-messages.txt:
* docs/design/part-overview.txt:
* docs/design/part-seeking.txt:
* docs/design/part-states.txt:
* docs/design/part-trickmodes.txt:
* docs/manual/advanced-position.xml:
Small docs updates.

* gst/gstobject.h:
People think !! is ugly, this looks better.

* gst/gstpad.c: (gst_pad_set_blocked_async):
Remove !! since it's fixed elsewhere now.
2005-11-03 14:22:44 +00:00

100 lines
2.9 KiB
Text

Messages
--------
Messages are refcounted lightweight objects to signal the application
of pipeline events.
Messages are implemented as a subclass of GstMiniObject with a generic
GstStructure as the content. This allows for writing custom messages without
requiring an API change while allowing a wide range of different types
of messages.
Messages are posted by objects in the pipeline and are passed to the
application using the GstBus.
Message types
-------------
GST_MESSAGE_EOS:
Posted by sink elements. This message is posted to the application when
all the sinks in a pipeline posted an EOS message. When performing a seek,
the EOS state of the pipeline and sinks is undone.
GST_MESSAGE_ERROR:
An element in the pipeline got into an error state. The message carries
a GError and a debug string describing the error. This usually means that
part of the pipeline is not streaming anymore.
GST_MESSAGE_WARNING:
An element in the pipeline encountered a condition that made it produce a
warning. This could be a recoverable decoding error or some other non fatal
event. The pipeline continues streaming after a warning.
GST_MESSAGE_INFO:
An element produced an informational message.
GST_MESSAGE_TAG:
An element decoded metadata about the stream. The message carries a GstTagList
with the tag information.
GST_MESSAGE_BUFFERING:
An element is buffering data and that could potentially take some time.
GST_MESSAGE_STATE_CHANGED:
An element changed state in the pipeline. The message carries the old, new
and pending state of the element.
GST_MESSAGE_STEP_DONE:
An element stepping frames has finished.
GST_MESSAGE_CLOCK_PROVIDE:
An element notifies it capability of providing a clock for the pipeline.
GST_MESSAGE_CLOCK_LOST:
The current clock as selected by the pipeline became unusable. The pipeline
will select a new clock on the next PLAYING state change.
GST_MESSAGE_NEW_CLOCK:
A new clock was selected for the pipeline.
GST_MESSAGE_STRUCTURE_CHANGE:
The pipeline changed of structure, This means elements were added or removed or
pads were linked or unlinked.
GST_MESSAGE_STREAM_STATUS:
An element posted information about the stream it is handling. This could include
information about the length of the stream.
GST_MESSAGE_APPLICATION:
The application posted a message.
GST_MESSAGE_ELEMENT:
Element-specific message, see the specific element's documentation
GST_MESSAGE_SEGMENT_START:
An element started playback of a new segment. This message is not forwarded
the the application but is used internally to schedule SEGMENT_DONE messages.
GST_MESSAGE_SEGMENT_DONE:
An element or bin completed playback of a segment. This message is only posted
on the bus if a SEGMENT seek is performed on a pipeline.