docs: fix broken xrefs

This commit is contained in:
Stefan Kost 2009-11-27 16:39:37 +02:00
parent 2ba8b37d15
commit a9a6c0f0cd
2 changed files with 86 additions and 78 deletions

View file

@ -37,7 +37,7 @@
* #GstBaseSink provides support for exactly one sink pad, which should be * #GstBaseSink provides support for exactly one sink pad, which should be
* named "sink". A sink implementation (subclass of #GstBaseSink) should * named "sink". A sink implementation (subclass of #GstBaseSink) should
* install a pad template in its base_init function, like so: * install a pad template in its base_init function, like so:
* <programlisting> * |[
* static void * static void
* my_element_base_init (gpointer g_class) * my_element_base_init (gpointer g_class)
* { * {
@ -50,34 +50,35 @@
* // see #GstElementDetails * // see #GstElementDetails
* gst_element_class_set_details (gstelement_class, &amp;details); * gst_element_class_set_details (gstelement_class, &amp;details);
* } * }
* </programlisting> * ]|
* *
* #GstBaseSink will handle the prerolling correctly. This means that it will * #GstBaseSink will handle the prerolling correctly. This means that it will
* return #GST_STATE_CHANGE_ASYNC from a state change to PAUSED until the first * return #GST_STATE_CHANGE_ASYNC from a state change to PAUSED until the first
* buffer arrives in this element. The base class will call the * buffer arrives in this element. The base class will call the
* #GstBaseSink::preroll vmethod with this preroll buffer and will then commit * #GstBaseSinkClass.preroll() vmethod with this preroll buffer and will then
* the state change to the next asynchronously pending state. * commit the state change to the next asynchronously pending state.
* *
* When the element is set to PLAYING, #GstBaseSink will synchronise on the * When the element is set to PLAYING, #GstBaseSink will synchronise on the
* clock using the times returned from ::get_times. If this function returns * clock using the times returned from #GstBaseSinkClass.get_times(). If this
* #GST_CLOCK_TIME_NONE for the start time, no synchronisation will be done. * function returns #GST_CLOCK_TIME_NONE for the start time, no synchronisation
* Synchronisation can be disabled entirely by setting the object "sync" * will be done. Synchronisation can be disabled entirely by setting the object
* property to %FALSE. * #GstBaseSink:sync property to %FALSE.
* *
* After synchronisation the virtual method #GstBaseSink::render will be called. * After synchronisation the virtual method #GstBaseSinkClass.render() will be
* Subclasses should minimally implement this method. * called. Subclasses should minimally implement this method.
* *
* Since 0.10.3 subclasses that synchronise on the clock in the ::render method * Since 0.10.3 subclasses that synchronise on the clock in the
* are supported as well. These classes typically receive a buffer in the render * #GstBaseSinkClass.render() method are supported as well. These classes
* method and can then potentially block on the clock while rendering. A typical * typically receive a buffer in the render method and can then potentially
* example is an audiosink. Since 0.10.11 these subclasses can use * block on the clock while rendering. A typical example is an audiosink.
* gst_base_sink_wait_preroll() to perform the blocking wait. * Since 0.10.11 these subclasses can use gst_base_sink_wait_preroll() to
* perform the blocking wait.
* *
* Upon receiving the EOS event in the PLAYING state, #GstBaseSink will wait * Upon receiving the EOS event in the PLAYING state, #GstBaseSink will wait
* for the clock to reach the time indicated by the stop time of the last * for the clock to reach the time indicated by the stop time of the last
* ::get_times call before posting an EOS message. When the element receives * #GstBaseSinkClass.get_times() call before posting an EOS message. When the
* EOS in PAUSED, preroll completes, the event is queued and an EOS message is * element receives EOS in PAUSED, preroll completes, the event is queued and an
* posted when going to PLAYING. * EOS message is posted when going to PLAYING.
* *
* #GstBaseSink will internally use the #GST_EVENT_NEWSEGMENT events to schedule * #GstBaseSink will internally use the #GST_EVENT_NEWSEGMENT events to schedule
* synchronisation and clipping of buffers. Buffers that fall completely outside * synchronisation and clipping of buffers. Buffers that fall completely outside
@ -90,49 +91,53 @@
* If no clock has been set on the element, the query will be forwarded * If no clock has been set on the element, the query will be forwarded
* upstream. * upstream.
* *
* The ::set_caps function will be called when the subclass should configure * The #GstBaseSinkClass.set_caps() function will be called when the subclass
* itself to process a specific media type. * should configure itself to process a specific media type.
* *
* The ::start and ::stop virtual methods will be called when resources should * The #GstBaseSinkClass.start() and #GstBaseSinkClass.stop() virtual methods
* be allocated. Any ::preroll, ::render and ::set_caps function will be * will be called when resources should be allocated. Any
* called between the ::start and ::stop calls. * #GstBaseSinkClass.preroll(), #GstBaseSinkClass.render() and
* #GstBaseSinkClass.set_caps() function will be called between the
* #GstBaseSinkClass.start() and #GstBaseSinkClass.stop() calls.
* *
* The ::event virtual method will be called when an event is received by * The #GstBaseSinkClass.event() virtual method will be called when an event is
* #GstBaseSink. Normally this method should only be overriden by very specific * received by #GstBaseSink. Normally this method should only be overriden by
* elements (such as file sinks) which need to handle the newsegment event * very specific elements (such as file sinks) which need to handle the
* specially. * newsegment event specially.
* *
* #GstBaseSink provides an overridable ::buffer_alloc function that can be * #GstBaseSink provides an overridable #GstBaseSinkClass.buffer_alloc()
* used by sinks that want to do reverse negotiation or to provide * function that can be used by sinks that want to do reverse negotiation or to
* custom buffers (hardware buffers for example) to upstream elements. * provide custom buffers (hardware buffers for example) to upstream elements.
* *
* The ::unlock method is called when the elements should unblock any blocking * The #GstBaseSinkClass.unlock() method is called when the elements should
* operations they perform in the ::render method. This is mostly useful when * unblock any blocking operations they perform in the
* the ::render method performs a blocking write on a file descriptor, for * #GstBaseSinkClass.render() method. This is mostly useful when the
* example. * #GstBaseSinkClass.render() method performs a blocking write on a file
* descriptor, for example.
* *
* The max-lateness property affects how the sink deals with buffers that * The #GstBaseSink:max-lateness property affects how the sink deals with
* arrive too late in the sink. A buffer arrives too late in the sink when * buffers that arrive too late in the sink. A buffer arrives too late in the
* the presentation time (as a combination of the last segment, buffer * sink when the presentation time (as a combination of the last segment, buffer
* timestamp and element base_time) plus the duration is before the current * timestamp and element base_time) plus the duration is before the current
* time of the clock. * time of the clock.
* If the frame is later than max-lateness, the sink will drop the buffer * If the frame is later than max-lateness, the sink will drop the buffer
* without calling the render method. * without calling the render method.
* This feature is disabled if sync is disabled, the ::get-times method does * This feature is disabled if sync is disabled, the
* not return a valid start time or max-lateness is set to -1 (the default). * #GstBaseSinkClass.get_times() method does not return a valid start time or
* max-lateness is set to -1 (the default).
* Subclasses can use gst_base_sink_set_max_lateness() to configure the * Subclasses can use gst_base_sink_set_max_lateness() to configure the
* max-lateness value. * max-lateness value.
* *
* The qos property will enable the quality-of-service features of the basesink * The #GstBaseSink:qos property will enable the quality-of-service features of
* which gather statistics about the real-time performance of the clock * the basesink which gather statistics about the real-time performance of the
* synchronisation. For each buffer received in the sink, statistics are * clock synchronisation. For each buffer received in the sink, statistics are
* gathered and a QOS event is sent upstream with these numbers. This * gathered and a QOS event is sent upstream with these numbers. This
* information can then be used by upstream elements to reduce their processing * information can then be used by upstream elements to reduce their processing
* rate, for example. * rate, for example.
* *
* Since 0.10.15 the async property can be used to instruct the sink to never * Since 0.10.15 the #GstBaseSink:async property can be used to instruct the
* perform an ASYNC state change. This feature is mostly usable when dealing * sink to never perform an ASYNC state change. This feature is mostly usable
* with non-synchronized streams or sparse streams. * when dealing with non-synchronized streams or sparse streams.
* *
* Last reviewed on 2007-08-29 (0.10.15) * Last reviewed on 2007-08-29 (0.10.15)
*/ */
@ -1931,8 +1936,9 @@ gst_base_sink_adjust_time (GstBaseSink * basesink, GstClockTime time)
* is no clock, no synchronisation is done and #GST_CLOCK_BADTIME is returned. * is no clock, no synchronisation is done and #GST_CLOCK_BADTIME is returned.
* *
* This function should only be called with the PREROLL_LOCK held, like when * This function should only be called with the PREROLL_LOCK held, like when
* receiving an EOS event in the ::event vmethod or when receiving a buffer in * receiving an EOS event in the #GstBaseSinkClass.event() vmethod or when
* the ::render vmethod. * receiving a buffer in
* the #GstBaseSinkClass.render() vmethod.
* *
* The @time argument should be the running_time of when this method should * The @time argument should be the running_time of when this method should
* return and is not adjusted with any latency or offset configured in the * return and is not adjusted with any latency or offset configured in the
@ -2006,9 +2012,9 @@ no_clock:
* gst_base_sink_wait_preroll: * gst_base_sink_wait_preroll:
* @sink: the sink * @sink: the sink
* *
* If the #GstBaseSinkClass::render method performs its own synchronisation against * If the #GstBaseSinkClass.render() method performs its own synchronisation
* the clock it must unblock when going from PLAYING to the PAUSED state and call * against the clock it must unblock when going from PLAYING to the PAUSED state
* this method before continuing to render the remaining data. * and call this method before continuing to render the remaining data.
* *
* This function will block until a state change to PLAYING happens (in which * This function will block until a state change to PLAYING happens (in which
* case this function returns #GST_FLOW_OK) or the processing must be stopped due * case this function returns #GST_FLOW_OK) or the processing must be stopped due

View file

@ -43,12 +43,12 @@
* <itemizedlist> * <itemizedlist>
* <listitem><para>The format is set to #GST_FORMAT_BYTES (default).</para> * <listitem><para>The format is set to #GST_FORMAT_BYTES (default).</para>
* </listitem> * </listitem>
* <listitem><para>#GstBaseSrc::is_seekable returns %TRUE.</para> * <listitem><para>#GstBaseSrcClass.is_seekable() returns %TRUE.</para>
* </listitem> * </listitem>
* </itemizedlist> * </itemizedlist>
* *
* Since 0.10.9, any #GstBaseSrc can enable pull based scheduling at any * Since 0.10.9, any #GstBaseSrc can enable pull based scheduling at any time
* time by overriding #GstBaseSrc::check_get_range so that it returns %TRUE. * by overriding #GstBaseSrcClass.check_get_range() so that it returns %TRUE.
* *
* If all the conditions are met for operating in pull mode, #GstBaseSrc is * If all the conditions are met for operating in pull mode, #GstBaseSrc is
* automatically seekable in push mode as well. The following conditions must * automatically seekable in push mode as well. The following conditions must
@ -56,23 +56,24 @@
* #GST_FORMAT_BYTES: * #GST_FORMAT_BYTES:
* <itemizedlist> * <itemizedlist>
* <listitem><para> * <listitem><para>
* #GstBaseSrc::is_seekable returns %TRUE. * #GstBaseSrcClass.is_seekable() returns %TRUE.
* </para></listitem> * </para></listitem>
* <listitem><para> * <listitem><para>
* #GstBaseSrc::query can convert all supported seek formats to the * #GstBaseSrc:Class.query() can convert all supported seek formats to the
* internal format as set with gst_base_src_set_format(). * internal format as set with gst_base_src_set_format().
* </para></listitem> * </para></listitem>
* <listitem><para> * <listitem><para>
* #GstBaseSrc::do_seek is implemented, performs the seek and returns %TRUE. * #GstBaseSrcClass.do_seek() is implemented, performs the seek and returns
* %TRUE.
* </para></listitem> * </para></listitem>
* </itemizedlist> * </itemizedlist>
* *
* When the element does not meet the requirements to operate in pull mode, * When the element does not meet the requirements to operate in pull mode, the
* the offset and length in the #GstBaseSrc::create method should be ignored. * offset and length in the #GstBaseSrcClass.create() method should be ignored.
* It is recommended to subclass #GstPushSrc instead, in this situation. If the * It is recommended to subclass #GstPushSrc instead, in this situation. If the
* element can operate in pull mode but only with specific offsets and * element can operate in pull mode but only with specific offsets and
* lengths, it is allowed to generate an error when the wrong values are passed * lengths, it is allowed to generate an error when the wrong values are passed
* to the #GstBaseSrc::create function. * to the #GstBaseSrcClass.create() function.
* *
* #GstBaseSrc has support for live sources. Live sources are sources that when * #GstBaseSrc has support for live sources. Live sources are sources that when
* paused discard data, such as audio or video capture devices. A typical live * paused discard data, such as audio or video capture devices. A typical live
@ -81,9 +82,10 @@
* Use gst_base_src_set_live() to activate the live source mode. * Use gst_base_src_set_live() to activate the live source mode.
* *
* A live source does not produce data in the PAUSED state. This means that the * A live source does not produce data in the PAUSED state. This means that the
* #GstBaseSrc::create method will not be called in PAUSED but only in PLAYING. * #GstBaseSrcClass.create() method will not be called in PAUSED but only in
* To signal the pipeline that the element will not produce data, the return * PLAYING. To signal the pipeline that the element will not produce data, the
* value from the READY to PAUSED state will be #GST_STATE_CHANGE_NO_PREROLL. * return value from the READY to PAUSED state will be
* #GST_STATE_CHANGE_NO_PREROLL.
* *
* A typical live source will timestamp the buffers it creates with the * A typical live source will timestamp the buffers it creates with the
* current running time of the pipeline. This is one reason why a live source * current running time of the pipeline. This is one reason why a live source
@ -91,17 +93,17 @@
* distributed and running. * distributed and running.
* *
* Live sources that synchronize and block on the clock (an audio source, for * Live sources that synchronize and block on the clock (an audio source, for
* example) can since 0.10.12 use gst_base_src_wait_playing() when the ::create * example) can since 0.10.12 use gst_base_src_wait_playing() when the
* function was interrupted by a state change to PAUSED. * #GstBaseSrcClass.create() function was interrupted by a state change to
* PAUSED.
* *
* The #GstBaseSrc::get_times method can be used to implement pseudo-live * The #GstBaseSrcClass.get_times() method can be used to implement pseudo-live
* sources. * sources. It only makes sense to implement the #GstBaseSrcClass.get_times()
* It only makes sense to implement the ::get_times function if the source is * function if the source is a live source. The #GstBaseSrcClass.get_times()
* a live source. The ::get_times function should return timestamps starting * function should return timestamps starting from 0, as if it were a non-live
* from 0, as if it were a non-live source. The base class will make sure that * source. The base class will make sure that the timestamps are transformed
* the timestamps are transformed into the current running_time. * into the current running_time. The base source will then wait for the
* The base source will then wait for the calculated running_time before pushing * calculated running_time before pushing out the buffer.
* out the buffer.
* *
* For live sources, the base class will by default report a latency of 0. * For live sources, the base class will by default report a latency of 0.
* For pseudo live sources, the base class will by default measure the difference * For pseudo live sources, the base class will by default measure the difference
@ -113,7 +115,7 @@
* There is only support in #GstBaseSrc for exactly one source pad, which * There is only support in #GstBaseSrc for exactly one source pad, which
* should be named "src". A source implementation (subclass of #GstBaseSrc) * should be named "src". A source implementation (subclass of #GstBaseSrc)
* should install a pad template in its class_init function, like so: * should install a pad template in its class_init function, like so:
* <programlisting> * |[
* static void * static void
* my_element_class_init (GstMyElementClass *klass) * my_element_class_init (GstMyElementClass *klass)
* { * {
@ -125,7 +127,7 @@
* // see #GstElementDetails * // see #GstElementDetails
* gst_element_class_set_details (gstelement_class, &amp;details); * gst_element_class_set_details (gstelement_class, &amp;details);
* } * }
* </programlisting> * ]|
* *
* <refsect2> * <refsect2>
* <title>Controlled shutdown of live sources in applications</title> * <title>Controlled shutdown of live sources in applications</title>
@ -453,9 +455,9 @@ gst_base_src_finalize (GObject * object)
* gst_base_src_wait_playing: * gst_base_src_wait_playing:
* @src: the src * @src: the src
* *
* If the #GstBaseSrcClass::create method performs its own synchronisation against * If the #GstBaseSrcClass.create() method performs its own synchronisation
* the clock it must unblock when going from PLAYING to the PAUSED state and call * against the clock it must unblock when going from PLAYING to the PAUSED state
* this method before continuing to produce the remaining data. * and call this method before continuing to produce the remaining data.
* *
* This function will block until a state change to PLAYING happens (in which * This function will block until a state change to PLAYING happens (in which
* case this function returns #GST_FLOW_OK) or the processing must be stopped due * case this function returns #GST_FLOW_OK) or the processing must be stopped due
@ -544,7 +546,7 @@ gst_base_src_is_live (GstBaseSrc * src)
* for sending NEW_SEGMENT events and for performing seeks. * for sending NEW_SEGMENT events and for performing seeks.
* *
* If a format of GST_FORMAT_BYTES is set, the element will be able to * If a format of GST_FORMAT_BYTES is set, the element will be able to
* operate in pull mode if the #GstBaseSrc::is_seekable returns TRUE. * operate in pull mode if the #GstBaseSrc.is_seekable() returns TRUE.
* *
* Since: 0.10.1 * Since: 0.10.1
*/ */