mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-23 16:50:47 +00:00
fix nonvalidation, now for the png problems !
Original commit message from CVS: fix nonvalidation, now for the png problems !
This commit is contained in:
parent
41fafb9aec
commit
35a1d78a69
7 changed files with 98 additions and 86 deletions
|
@ -16,3 +16,7 @@ CSS=base.css
|
|||
EXTRA_DIST = $(XML) $(FIGS) $(CSS) magic-png magic-pdf
|
||||
|
||||
include $(srcdir)/../manuals.mak
|
||||
|
||||
check:
|
||||
xmllint -noout -valid $(MAIN)
|
||||
|
||||
|
|
|
@ -132,7 +132,8 @@
|
|||
<classname>GstType</classname>. The definition of a
|
||||
<classname>GstType</classname> is like:
|
||||
</para>
|
||||
<programlisting>
|
||||
<para>
|
||||
<programlisting>
|
||||
typedef GstCaps (*GstTypeFindFunc) (GstBuffer *buf,gpointer *priv);
|
||||
|
||||
typedef struct _GstType GstType;
|
||||
|
@ -145,7 +146,8 @@ struct _GstType {
|
|||
|
||||
GstTypeFindFunc typefindfunc; /* typefind function */
|
||||
};
|
||||
</programlisting>
|
||||
</programlisting>
|
||||
</para>
|
||||
<para>
|
||||
All operations on <classname>GstType</classname> occur
|
||||
via their <classname>guint16 id</classname> numbers, with
|
||||
|
@ -201,10 +203,10 @@ struct _GstType {
|
|||
<para>
|
||||
This function will return 0 if the extension was not known.
|
||||
</para>
|
||||
<para>
|
||||
For more information, see <xref linkend="cha-autoplug"/>.
|
||||
</para>
|
||||
</sect2>
|
||||
<para>
|
||||
For more information, see <xref linkend="cha-autoplug"/>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<sect1>
|
||||
|
|
|
@ -131,22 +131,22 @@
|
|||
It has the following object properties:
|
||||
</para>
|
||||
<itemizedlist>
|
||||
<listitem><filename>"value_float"</filename>
|
||||
<listitem><para><filename>"value_float"</filename>
|
||||
- the property to set and get if it is a float dparam
|
||||
</listitem>
|
||||
<listitem><filename>"value_int"</filename>
|
||||
</para></listitem>
|
||||
<listitem><para><filename>"value_int"</filename>
|
||||
- the property to set and get if it is an integer dparam
|
||||
</listitem>
|
||||
<listitem><filename>"value_int64"</filename>
|
||||
</para></listitem>
|
||||
<listitem><para><filename>"value_int64"</filename>
|
||||
- the property to set and get if it is a 64 bit integer dparam
|
||||
</listitem>
|
||||
<listitem><filename>"is_log"</filename>
|
||||
</para></listitem>
|
||||
<listitem><para><filename>"is_log"</filename>
|
||||
- readonly boolean which is TRUE if the param should be displayed on a log scale
|
||||
</listitem>
|
||||
<listitem><filename>"is_rate"</filename>
|
||||
</para></listitem>
|
||||
<listitem><para><filename>"is_rate"</filename>
|
||||
- readonly boolean which is TRUE if the value is a proportion of the sample rate.
|
||||
For example with a sample rate of 44100, 0.5 would be 22050 Hz and 0.25 would be 11025 Hz.
|
||||
</listitem>
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
</sect2>
|
||||
<sect2>
|
||||
|
@ -159,16 +159,16 @@
|
|||
It has the following object properties:
|
||||
</para>
|
||||
<itemizedlist>
|
||||
<listitem><filename>"update_period"</filename>
|
||||
<listitem><para><filename>"update_period"</filename>
|
||||
- an int64 value specifying the number nanoseconds between updates. This will be ignored in
|
||||
<filename>"synchronous"</filename> mode since the buffer size dictates the update period.
|
||||
</listitem>
|
||||
<listitem><filename>"slope_time"</filename>
|
||||
</para></listitem>
|
||||
<listitem><para><filename>"slope_time"</filename>
|
||||
- an int64 value specifying the time period to use in the maximum slope calculation
|
||||
</listitem>
|
||||
<listitem><filename>"slope_delta_float"</filename>
|
||||
</para></listitem>
|
||||
<listitem><para><filename>"slope_delta_float"</filename>
|
||||
- a float specifying the amount a float value can change in the given slope_time.
|
||||
</listitem>
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
<para>
|
||||
Audible artifacts may not be completely eliminated by using this dparam. The only way to eliminate
|
||||
|
|
|
@ -10,7 +10,8 @@
|
|||
To construct a new thread you will perform something like:
|
||||
</para>
|
||||
|
||||
<programlisting>
|
||||
<para>
|
||||
<programlisting>
|
||||
GstElement *my_thread;
|
||||
|
||||
/* create the thread object */
|
||||
|
@ -28,15 +29,15 @@
|
|||
/* start playing */
|
||||
gst_element_set_state (GST_ELEMENT (my_thread), GST_STATE_PLAYING);
|
||||
|
||||
</programlisting>
|
||||
|
||||
</programlisting>
|
||||
</para>
|
||||
<para>
|
||||
The above program will create a thread with two elements in it. As soon
|
||||
as it is set to the PLAYING state, the thread will start to iterate
|
||||
itself. You never need to explicitly iterate a thread.
|
||||
</para>
|
||||
|
||||
<sect2>
|
||||
<sect1>
|
||||
<title>Constraints placed on the pipeline by the GstThread</title>
|
||||
<para>
|
||||
Within the pipeline, everything is the same as in any other bin. The
|
||||
|
@ -50,8 +51,8 @@
|
|||
itself, but it needs to be present on one side or the other to enable
|
||||
inter-thread communication.
|
||||
</para>
|
||||
</sect2>
|
||||
<sect2>
|
||||
</sect1>
|
||||
<sect1>
|
||||
<title>When would you want to use a thread?</title>
|
||||
<para>
|
||||
If you are writing a GUI application, making the top-level bin a thread will make your GUI
|
||||
|
@ -61,24 +62,24 @@
|
|||
the pipeline, which (for example) could cause pops in the output of the sound card, if it is
|
||||
an audio pipeline.
|
||||
</para>
|
||||
</sect2>
|
||||
<para>
|
||||
<para>
|
||||
A thread can be visualised as below
|
||||
</para>
|
||||
<figure float="1" id="sec-threads-img">
|
||||
<title>A thread</title>
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/thread.&magic;" format="&magic;" />
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
</para>
|
||||
<figure float="1" id="sec-threads-img">
|
||||
<title>A thread</title>
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/thread.&magic;" format="&magic;" />
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
<para>
|
||||
As an example we show the helloworld program using a thread.
|
||||
</para>
|
||||
</para>
|
||||
|
||||
<programlisting>
|
||||
<para>
|
||||
<programlisting>
|
||||
/* example-begin threads.c */
|
||||
#include <gst/gst.h>
|
||||
|
||||
|
@ -151,6 +152,7 @@ main (int argc, char *argv[])
|
|||
exit (0);
|
||||
}
|
||||
/* example-end threads.c */
|
||||
</programlisting>
|
||||
|
||||
</programlisting>
|
||||
</para>
|
||||
</sect1>
|
||||
</chapter>
|
||||
|
|
|
@ -131,22 +131,22 @@
|
|||
It has the following object properties:
|
||||
</para>
|
||||
<itemizedlist>
|
||||
<listitem><filename>"value_float"</filename>
|
||||
<listitem><para><filename>"value_float"</filename>
|
||||
- the property to set and get if it is a float dparam
|
||||
</listitem>
|
||||
<listitem><filename>"value_int"</filename>
|
||||
</para></listitem>
|
||||
<listitem><para><filename>"value_int"</filename>
|
||||
- the property to set and get if it is an integer dparam
|
||||
</listitem>
|
||||
<listitem><filename>"value_int64"</filename>
|
||||
</para></listitem>
|
||||
<listitem><para><filename>"value_int64"</filename>
|
||||
- the property to set and get if it is a 64 bit integer dparam
|
||||
</listitem>
|
||||
<listitem><filename>"is_log"</filename>
|
||||
</para></listitem>
|
||||
<listitem><para><filename>"is_log"</filename>
|
||||
- readonly boolean which is TRUE if the param should be displayed on a log scale
|
||||
</listitem>
|
||||
<listitem><filename>"is_rate"</filename>
|
||||
</para></listitem>
|
||||
<listitem><para><filename>"is_rate"</filename>
|
||||
- readonly boolean which is TRUE if the value is a proportion of the sample rate.
|
||||
For example with a sample rate of 44100, 0.5 would be 22050 Hz and 0.25 would be 11025 Hz.
|
||||
</listitem>
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
</sect2>
|
||||
<sect2>
|
||||
|
@ -159,16 +159,16 @@
|
|||
It has the following object properties:
|
||||
</para>
|
||||
<itemizedlist>
|
||||
<listitem><filename>"update_period"</filename>
|
||||
<listitem><para><filename>"update_period"</filename>
|
||||
- an int64 value specifying the number nanoseconds between updates. This will be ignored in
|
||||
<filename>"synchronous"</filename> mode since the buffer size dictates the update period.
|
||||
</listitem>
|
||||
<listitem><filename>"slope_time"</filename>
|
||||
</para></listitem>
|
||||
<listitem><para><filename>"slope_time"</filename>
|
||||
- an int64 value specifying the time period to use in the maximum slope calculation
|
||||
</listitem>
|
||||
<listitem><filename>"slope_delta_float"</filename>
|
||||
</para></listitem>
|
||||
<listitem><para><filename>"slope_delta_float"</filename>
|
||||
- a float specifying the amount a float value can change in the given slope_time.
|
||||
</listitem>
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
<para>
|
||||
Audible artifacts may not be completely eliminated by using this dparam. The only way to eliminate
|
||||
|
|
|
@ -132,7 +132,8 @@
|
|||
<classname>GstType</classname>. The definition of a
|
||||
<classname>GstType</classname> is like:
|
||||
</para>
|
||||
<programlisting>
|
||||
<para>
|
||||
<programlisting>
|
||||
typedef GstCaps (*GstTypeFindFunc) (GstBuffer *buf,gpointer *priv);
|
||||
|
||||
typedef struct _GstType GstType;
|
||||
|
@ -145,7 +146,8 @@ struct _GstType {
|
|||
|
||||
GstTypeFindFunc typefindfunc; /* typefind function */
|
||||
};
|
||||
</programlisting>
|
||||
</programlisting>
|
||||
</para>
|
||||
<para>
|
||||
All operations on <classname>GstType</classname> occur
|
||||
via their <classname>guint16 id</classname> numbers, with
|
||||
|
@ -201,10 +203,10 @@ struct _GstType {
|
|||
<para>
|
||||
This function will return 0 if the extension was not known.
|
||||
</para>
|
||||
<para>
|
||||
For more information, see <xref linkend="cha-autoplug"/>.
|
||||
</para>
|
||||
</sect2>
|
||||
<para>
|
||||
For more information, see <xref linkend="cha-autoplug"/>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<sect1>
|
||||
|
|
|
@ -10,7 +10,8 @@
|
|||
To construct a new thread you will perform something like:
|
||||
</para>
|
||||
|
||||
<programlisting>
|
||||
<para>
|
||||
<programlisting>
|
||||
GstElement *my_thread;
|
||||
|
||||
/* create the thread object */
|
||||
|
@ -28,15 +29,15 @@
|
|||
/* start playing */
|
||||
gst_element_set_state (GST_ELEMENT (my_thread), GST_STATE_PLAYING);
|
||||
|
||||
</programlisting>
|
||||
|
||||
</programlisting>
|
||||
</para>
|
||||
<para>
|
||||
The above program will create a thread with two elements in it. As soon
|
||||
as it is set to the PLAYING state, the thread will start to iterate
|
||||
itself. You never need to explicitly iterate a thread.
|
||||
</para>
|
||||
|
||||
<sect2>
|
||||
<sect1>
|
||||
<title>Constraints placed on the pipeline by the GstThread</title>
|
||||
<para>
|
||||
Within the pipeline, everything is the same as in any other bin. The
|
||||
|
@ -50,8 +51,8 @@
|
|||
itself, but it needs to be present on one side or the other to enable
|
||||
inter-thread communication.
|
||||
</para>
|
||||
</sect2>
|
||||
<sect2>
|
||||
</sect1>
|
||||
<sect1>
|
||||
<title>When would you want to use a thread?</title>
|
||||
<para>
|
||||
If you are writing a GUI application, making the top-level bin a thread will make your GUI
|
||||
|
@ -61,24 +62,24 @@
|
|||
the pipeline, which (for example) could cause pops in the output of the sound card, if it is
|
||||
an audio pipeline.
|
||||
</para>
|
||||
</sect2>
|
||||
<para>
|
||||
<para>
|
||||
A thread can be visualised as below
|
||||
</para>
|
||||
<figure float="1" id="sec-threads-img">
|
||||
<title>A thread</title>
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/thread.&magic;" format="&magic;" />
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
</para>
|
||||
<figure float="1" id="sec-threads-img">
|
||||
<title>A thread</title>
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/thread.&magic;" format="&magic;" />
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
<para>
|
||||
As an example we show the helloworld program using a thread.
|
||||
</para>
|
||||
</para>
|
||||
|
||||
<programlisting>
|
||||
<para>
|
||||
<programlisting>
|
||||
/* example-begin threads.c */
|
||||
#include <gst/gst.h>
|
||||
|
||||
|
@ -151,6 +152,7 @@ main (int argc, char *argv[])
|
|||
exit (0);
|
||||
}
|
||||
/* example-end threads.c */
|
||||
</programlisting>
|
||||
|
||||
</programlisting>
|
||||
</para>
|
||||
</sect1>
|
||||
</chapter>
|
||||
|
|
Loading…
Reference in a new issue