Commit 84fc21c3 authored by Wim Taymans's avatar Wim Taymans

gst/gstbin.c: Update documentation.

Original commit message from CVS:
* gst/gstbin.c:
Update documentation.
* gst/gstelement.c: (gst_element_class_init),
(gst_element_release_request_pad), (gst_element_set_clock),
(gst_element_get_index), (gst_element_add_pad),
(gst_element_remove_pad), (gst_element_get_random_pad),
(gst_element_send_event), (gst_element_get_query_types),
(gst_element_query), (gst_element_post_message),
(gst_element_message_full), (gst_element_continue_state),
(gst_element_lost_state), (gst_element_save_thyself),
(gst_element_restore_thyself):
Documentation updates.
Rename last bit of the new-pad -> pad-added signal rename.
Fix the case where an element query would only work if the source
pad was linked.
Avoid some useless type checking in message handling.
* gst/gstevent.c:
* gst/gstevent.h:
* gst/gstutils.c:
Documentation updates.
parent 4754b38d
2006-09-06 Wim Taymans <wim@fluendo.com>
* gst/gstbin.c:
Update documentation.
* gst/gstelement.c: (gst_element_class_init),
(gst_element_release_request_pad), (gst_element_set_clock),
(gst_element_get_index), (gst_element_add_pad),
(gst_element_remove_pad), (gst_element_get_random_pad),
(gst_element_send_event), (gst_element_get_query_types),
(gst_element_query), (gst_element_post_message),
(gst_element_message_full), (gst_element_continue_state),
(gst_element_lost_state), (gst_element_save_thyself),
(gst_element_restore_thyself):
Documentation updates.
Rename last bit of the new-pad -> pad-added signal rename.
Fix the case where an element query would only work if the source
pad was linked.
Avoid some useless type checking in message handling.
* gst/gstevent.c:
* gst/gstevent.h:
* gst/gstutils.c:
Documentation updates.
2006-09-14 Thomas Vander Stichele <thomas at apestaart dot org>
* plugins/elements/gstfdsrc.c: (gst_fd_src_update_fd):
......
......@@ -2082,6 +2082,9 @@ bin_bus_handler (GstBus * bus, GstMessage * message, GstBin * bin)
}
/* handle child messages:
*
* This method is called synchronously when a child posts a message on
* the internal bus.
*
* GST_MESSAGE_EOS: This message is only posted by sinks
* in the PLAYING state. If all sinks posted the EOS message, post
......@@ -2089,7 +2092,8 @@ bin_bus_handler (GstBus * bus, GstMessage * message, GstBin * bin)
*
* GST_MESSAGE_STATE_DIRTY: if we are the toplevel bin we do a state
* recalc. If we are not toplevel (we have a parent) we just post
* the message upwards.
* the message upwards. This makes sure only the toplevel bin will
* run over all its children to check if a state change happened.
*
* GST_MESSAGE_SEGMENT_START: just collect, never forward upwards. If an
* element posts segment_start twice, only the last message is kept.
......@@ -2102,13 +2106,15 @@ bin_bus_handler (GstBus * bus, GstMessage * message, GstBin * bin)
* Whenever someone performs a duration query on the bin, we store the
* result so we can answer it quicker the next time. Any element that
* changes its duration marks our cached values invalid.
* This message is also posted upwards.
* This message is also posted upwards. This is currently disabled
* because too many elements don't post DURATION messages when the
* duration changes.
*
* GST_MESSAGE_CLOCK_LOST: This message is posted by an element when it
* can no longer provide a clock. The default bin behaviour is to
* check if the lost clock was the one provided by the bin. If so and
* we are currently in the PLAYING state, we forward the message to
* our parent.
* our parent.
* This message is also generated when we remove a clock provider from
* a bin. If this message is received by the application, it should
* PAUSE the pipeline and set it back to PLAYING to force a new clock
......@@ -2119,7 +2125,7 @@ bin_bus_handler (GstBus * bus, GstMessage * message, GstBin * bin)
* provider to the bin. The default behaviour of the bin is to mark the
* currently selected clock as dirty, which will perform a clock
* recalculation the next time we are asked to provide a clock.
* This message is never sent tot the application but is forwarded to
* This message is never sent to the application but is forwarded to
* the parent.
*
* OTHER: post upwards.
......
This diff is collapsed.
......@@ -72,7 +72,7 @@
* </programlisting>
* </example>
*
* Last reviewed on 2006-08-11 (0.10.10)
* Last reviewed on 2006-09-6 (0.10.10)
*/
......@@ -352,7 +352,12 @@ gst_event_get_structure (GstEvent * event)
*
* Allocate a new flush start event. The flush start event can be send
* upstream and downstream and travels out-of-bounds with the dataflow.
* It marks pads as being in a WRONG_STATE to process more data.
*
* It marks pads as being flushing and will make them return
* #GST_FLOW_WRONG_STATE when used for data flow with gst_pad_push(),
* gst_pad_chain(), gst_pad_alloc_buffer(), gst_pad_get_range() and
* gst_pad_pull_range(). Any event (except a #GST_EVENT_FLUSH_STOP) received
* on a flushing pad will return %FALSE immediatly.
*
* Elements unlock and blocking functions and exit their streaming functions
* as fast as possible.
......@@ -395,11 +400,11 @@ gst_event_new_flush_stop (void)
*
* Create a new EOS event. The eos event can only travel downstream
* synchronized with the buffer flow. Elements that receive the EOS
* event on a pad can return UNEXPECTED as a GstFlowReturn when data
* after the EOS event arrives.
* event on a pad can return #GST_FLOW_UNEXPECTED as a #GstFlowReturn
* when data after the EOS event arrives.
*
* The EOS event will travel down to the sink elements in the pipeline
* which will then post the GST_MESSAGE_EOS on the bus after they have
* which will then post the #GST_MESSAGE_EOS on the bus after they have
* finished playing any buffered data.
*
* When all sinks have posted an EOS message, the EOS message is
......@@ -635,7 +640,7 @@ gst_event_parse_tag (GstEvent * event, GstTagList ** taglist)
* Create a new buffersize event. The event is sent downstream and notifies
* elements that they should provide a buffer of the specified dimensions.
*
* When the async flag is set, a thread boundary is prefered.
* When the @async flag is set, a thread boundary is prefered.
*
* Returns: a new #GstEvent
*/
......@@ -788,24 +793,30 @@ gst_event_parse_qos (GstEvent * event, gdouble * proportion,
* Allocate a new seek event with the given parameters.
*
* The seek event configures playback of the pipeline from
* @cur to @stop at the speed given in @rate, also called a segment.
* @cur to @stop at the speed given in @rate, also called a playback segment.
* The @cur and @stop values are expressed in format @format.
*
* A @rate of 1.0 means normal playback rate, 2.0 means double speed.
* Negatives values means backwards playback. A value of 0.0 for the
* rate is not allowed.
* rate is not allowed and should be accomplished instead by PAUSING the
* pipeline.
*
* A pipeline has a default playback segment configured with a current
* position of 0, a stop position of the total duration of the stream(s) and
* a rate of 1.0. The currently configured playback segment can be queried
* with #GST_QUERY_SEGMENT.
*
* @cur_type and @stop_type specify how to adjust the current and stop
* time, relative or absolute to the last configured positions. A type
* time, relative or absolute to the last configured playback segment. A type
* of #GST_SEEK_TYPE_NONE means that the position should not be updated.
* The currently configured playback segment can be queried with
* #GST_QUERY_SEGMENT.
*
* Note that updating the @cur position will actually move the current
* playback pointer to that new position. It is not possible to seek
* relative to the current playing position, to do this, pause the pipeline,
* get the current position and perform a GST_SEEK_TYPE_SET to the desired
* position.
*
* Updating the @cur position will actually move the current playback position
* to that new position.
*
* It is not possible to seek relative to the current playback position, to do
* this, PAUSE the pipeline, query the current playback position with
* #GST_QUERY_POSITION and update the playback segment current position with a
* #GST_SEEK_TYPE_SET to the desired position.
*
* Returns: A new seek event.
*/
......
......@@ -230,10 +230,10 @@ typedef struct _GstEventClass GstEventClass;
* @GST_SEEK_TYPE_SET: absolute position is requested
* @GST_SEEK_TYPE_END: relative position to duration is requested
*
* The different types of seek events. When constructing a seek event, a format,
* a seek method and optional flags are to be provided. The seek event is then
* inserted into the graph with gst_pad_send_event() or
* gst_element_send_event().
* The different types of seek events. When constructing a seek event with
* gst_event_new_seek(), a format, a seek method and optional flags are to
* be provided. The seek event is then inserted into the graph with
* gst_pad_send_event() or gst_element_send_event().
*/
typedef enum {
/* one of these */
......@@ -264,10 +264,10 @@ typedef enum {
*
* When performing a segment seek: after the playback of the segment completes,
* no EOS will be emmited by the element that performed the seek, but a
* SEGMENT_DONE message will be posted on the bus by the element. When this
* message is posted, it is possible to send a new seek event to continue
* playback. With this seek method it is possible to perform seemless looping
* or simple linear editing.
* #GST_MESSAGE_SEGMENT_DONE message will be posted on the bus by the element.
* When this message is posted, it is possible to send a new seek event to
* continue playback. With this seek method it is possible to perform seemless
* looping or simple linear editing.
*/
typedef enum {
GST_SEEK_FLAG_NONE = 0,
......
......@@ -1934,13 +1934,20 @@ gst_element_query_convert (GstElement * element, GstFormat src_format,
* Simple API to perform a seek on the given element, meaning it just seeks
* to the given position relative to the start of the stream. For more complex
* operations like segment seeks (e.g. for looping) or changing the playback
* rate or seeking relative to the current position or seeking relative to
* the end of the stream you should use gst_element_seek ().
* rate or seeking relative to the last configured playback segment you should
* use gst_element_seek().
*
* Note that seeking is usually only possible in PAUSED or PLAYING state.
* In a completely prerolled PAUSED or PLAYING pipeline, seeking is always
* guaranteed to return %TRUE on a seekable media type or %FALSE when the media
* type is certainly not seekable (such as a live stream).
*
* Returns: TRUE if the seek operation succeeded (the seek
* might not always be executed instantly though)
* Some elements allow for seeking in the READY state, in this
* case they will store the seek event and execute it when they are put to
* PAUSED. If the element supports seek in READY, it will always return %TRUE when
* it receives the event in the READY state.
*
* Returns: %TRUE if the seek operation succeeded (the seek might not always be
* executed instantly though)
*
* Since: 0.10.7
*/
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment