mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-05-22 02:08:27 +00:00
revert the patch that made applications break
Original commit message from CVS: revert the patch that made applications break
This commit is contained in:
parent
2826ec0813
commit
d78c1bc319
13
ChangeLog
13
ChangeLog
|
@ -1,3 +1,16 @@
|
|||
2004-02-05 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
|
||||
* gst/gstcaps.h:
|
||||
* gst/gstelement.c: (gst_element_base_class_init),
|
||||
(gst_element_class_set_details), (gst_element_clear_pad_caps):
|
||||
* gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
|
||||
(gst_pad_try_set_caps), (gst_pad_can_link_filtered),
|
||||
(gst_real_pad_dispose):
|
||||
* gst/gststructure.c: (gst_structure_free),
|
||||
(gst_structure_from_string):
|
||||
revert patch that breaks applications, reapply after release
|
||||
to get this fixed properly
|
||||
|
||||
2004-02-05 Benjamin Otte <in7y118@public.uni-hamburg.de>
|
||||
|
||||
* gst/gsttag.c: (_gst_tag_initialize):
|
||||
|
|
2
common
2
common
|
@ -1 +1 @@
|
|||
Subproject commit 90e64b98d566fd8df793cfc0a9b08b8e5fb356d3
|
||||
Subproject commit 90097339543fb0a705447b599d7a36138cba4232
|
|
@ -72,34 +72,6 @@ The GstBin object
|
|||
</para>
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GstBin::element-added ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@gstbin: the object which received the signal.
|
||||
@arg1: the element that was added to the bin
|
||||
|
||||
<!-- ##### SIGNAL GstBin::element-removed ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@gstbin: the object which received the signal.
|
||||
@arg1: the element that was removed from the bin
|
||||
|
||||
<!-- ##### SIGNAL GstBin::iterate ##### -->
|
||||
<para>
|
||||
This signal is emitted when a bin iterates, either automatically or
|
||||
due to a #gst_bin_iterate() call. The return value is used to
|
||||
determine if the object method handler processed any data.
|
||||
In most normal cases, a user-provided signal handler should return
|
||||
FALSE.
|
||||
</para>
|
||||
|
||||
@gstbin: the object which received the signal.
|
||||
@Returns: TRUE if the state of the bin was advanced.
|
||||
|
||||
<!-- ##### USER_FUNCTION GstBinPrePostIterateFunction ##### -->
|
||||
<para>
|
||||
The signature of the callback for the post and pre iterate function as set with
|
||||
|
@ -252,3 +224,31 @@ gst_bin_set_pre_iterate_function() and gst_bin_set_post_iterate_function().
|
|||
@clock:
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GstBin::element-added ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@gstbin: the object which received the signal.
|
||||
@arg1: the element that was added to the bin
|
||||
|
||||
<!-- ##### SIGNAL GstBin::element-removed ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@gstbin: the object which received the signal.
|
||||
@arg1: the element that was removed from the bin
|
||||
|
||||
<!-- ##### SIGNAL GstBin::iterate ##### -->
|
||||
<para>
|
||||
This signal is emitted when a bin iterates, either automatically or
|
||||
due to a #gst_bin_iterate() call. The return value is used to
|
||||
determine if the object method handler processed any data.
|
||||
In most normal cases, a user-provided signal handler should return
|
||||
FALSE.
|
||||
</para>
|
||||
|
||||
@gstbin: the object which received the signal.
|
||||
@Returns: TRUE if the state of the bin was advanced.
|
||||
|
||||
|
|
|
@ -235,21 +235,6 @@ Get the clock flags
|
|||
</para>
|
||||
|
||||
|
||||
<!-- ##### ARG GstClock:event-diff ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GstClock:max-diff ##### -->
|
||||
<para>
|
||||
Maximum allowed diff for clock sync requests against the real time.
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GstClock:stats ##### -->
|
||||
<para>
|
||||
Boolean property to activate stat generation on the clock.
|
||||
</para>
|
||||
|
||||
<!-- ##### FUNCTION gst_clock_set_speed ##### -->
|
||||
<para>
|
||||
|
||||
|
@ -417,3 +402,18 @@ Boolean property to activate stat generation on the clock.
|
|||
@id:
|
||||
|
||||
|
||||
<!-- ##### ARG GstClock:event-diff ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GstClock:max-diff ##### -->
|
||||
<para>
|
||||
Maximum allowed diff for clock sync requests against the real time.
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GstClock:stats ##### -->
|
||||
<para>
|
||||
Boolean property to activate stat generation on the clock.
|
||||
</para>
|
||||
|
||||
|
|
|
@ -71,59 +71,6 @@ The element object
|
|||
</para>
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GstElement::eos ##### -->
|
||||
<para>
|
||||
Signal emited when the element goes to PAUSED due to an end-of-stream
|
||||
condition.
|
||||
</para>
|
||||
|
||||
@gstelement: the object which received the signal.
|
||||
|
||||
<!-- ##### SIGNAL GstElement::error ##### -->
|
||||
<para>
|
||||
This signal is emitted when an element has encountered an error that caused
|
||||
it to fail performing its function.
|
||||
</para>
|
||||
|
||||
@gstelement: the object which received the signal.
|
||||
@arg1: the original #GstElement that generated the error.
|
||||
@arg2: a #GError containing the translated error message.
|
||||
@arg3: a debug string providing additional untranslated debug information, or NULL.
|
||||
|
||||
<!-- ##### SIGNAL GstElement::found-tag ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@gstelement: the object which received the signal.
|
||||
@arg1:
|
||||
@arg2:
|
||||
|
||||
<!-- ##### SIGNAL GstElement::new-pad ##### -->
|
||||
<para>
|
||||
Is triggered whenever a new pad is added to an element.
|
||||
</para>
|
||||
|
||||
@gstelement: the object which received the signal.
|
||||
@arg1: the new pad that was added
|
||||
|
||||
<!-- ##### SIGNAL GstElement::pad-removed ##### -->
|
||||
<para>
|
||||
Is triggered whenever a pad has been removed from the element.
|
||||
</para>
|
||||
|
||||
@gstelement: the object which received the signal.
|
||||
@arg1: The pad that was removed.
|
||||
|
||||
<!-- ##### SIGNAL GstElement::state-change ##### -->
|
||||
<para>
|
||||
Is triggered whenever the state of an element changes.
|
||||
</para>
|
||||
|
||||
@gstelement: the object which received the signal.
|
||||
@arg1: the new state of the object
|
||||
@arg2:
|
||||
|
||||
<!-- ##### MACRO gst_element_get_name ##### -->
|
||||
<para>
|
||||
Gets the name of the element.
|
||||
|
@ -1019,3 +966,56 @@ Helper macro to create query type functions
|
|||
@...: list of query types.
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GstElement::eos ##### -->
|
||||
<para>
|
||||
Signal emited when the element goes to PAUSED due to an end-of-stream
|
||||
condition.
|
||||
</para>
|
||||
|
||||
@gstelement: the object which received the signal.
|
||||
|
||||
<!-- ##### SIGNAL GstElement::error ##### -->
|
||||
<para>
|
||||
This signal is emitted when an element has encountered an error that caused
|
||||
it to fail performing its function.
|
||||
</para>
|
||||
|
||||
@gstelement: the object which received the signal.
|
||||
@arg1: the original #GstElement that generated the error.
|
||||
@arg2: a #GError containing the translated error message.
|
||||
@arg3: a debug string providing additional untranslated debug information, or NULL.
|
||||
|
||||
<!-- ##### SIGNAL GstElement::found-tag ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@gstelement: the object which received the signal.
|
||||
@arg1:
|
||||
@arg2:
|
||||
|
||||
<!-- ##### SIGNAL GstElement::new-pad ##### -->
|
||||
<para>
|
||||
Is triggered whenever a new pad is added to an element.
|
||||
</para>
|
||||
|
||||
@gstelement: the object which received the signal.
|
||||
@arg1: the new pad that was added
|
||||
|
||||
<!-- ##### SIGNAL GstElement::pad-removed ##### -->
|
||||
<para>
|
||||
Is triggered whenever a pad has been removed from the element.
|
||||
</para>
|
||||
|
||||
@gstelement: the object which received the signal.
|
||||
@arg1: The pad that was removed.
|
||||
|
||||
<!-- ##### SIGNAL GstElement::state-change ##### -->
|
||||
<para>
|
||||
Is triggered whenever the state of an element changes.
|
||||
</para>
|
||||
|
||||
@gstelement: the object which received the signal.
|
||||
@arg1: the new state of the object
|
||||
@arg2:
|
||||
|
||||
|
|
|
@ -209,19 +209,6 @@ The GstIndex object
|
|||
</para>
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GstIndex::entry-added ##### -->
|
||||
<para>
|
||||
Is emited when a new entry is added to the index.
|
||||
</para>
|
||||
|
||||
@gstindex: the object which received the signal.
|
||||
@arg1: The entry added to the index.
|
||||
|
||||
<!-- ##### ARG GstIndex:resolver ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### FUNCTION gst_index_new ##### -->
|
||||
<para>
|
||||
|
||||
|
@ -414,3 +401,16 @@ Is emited when a new entry is added to the index.
|
|||
@id:
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GstIndex::entry-added ##### -->
|
||||
<para>
|
||||
Is emited when a new entry is added to the index.
|
||||
</para>
|
||||
|
||||
@gstindex: the object which received the signal.
|
||||
@arg1: The entry added to the index.
|
||||
|
||||
<!-- ##### ARG GstIndex:resolver ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
|
|
|
@ -40,47 +40,6 @@ The GstObject
|
|||
</para>
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GstObject::deep-notify ##### -->
|
||||
<para>
|
||||
The deep notify signal is used to be notified of property changes.
|
||||
it is typically attached to the toplevel bin to receive notifications
|
||||
from all the elements contained in that bin.
|
||||
</para>
|
||||
|
||||
@gstobject: the object which received the signal.
|
||||
@arg1: the object that originated the signal
|
||||
@arg2: the property that changed
|
||||
|
||||
<!-- ##### SIGNAL GstObject::object-saved ##### -->
|
||||
<para>
|
||||
Is trigered whenever a new object is saved to XML. You can connect to
|
||||
this signal to insert custom XML tags into the core XML.
|
||||
</para>
|
||||
|
||||
@gstobject: the object which received the signal.
|
||||
@arg1: the xmlNodePtr of the parent node
|
||||
|
||||
<!-- ##### SIGNAL GstObject::parent-set ##### -->
|
||||
<para>
|
||||
Is emitted when the parent of an object is set.
|
||||
</para>
|
||||
|
||||
@gstobject: the object which received the signal.
|
||||
@arg1: the new parent
|
||||
|
||||
<!-- ##### SIGNAL GstObject::parent-unset ##### -->
|
||||
<para>
|
||||
Is emitted when the parent of an object is unset.
|
||||
</para>
|
||||
|
||||
@gstobject: the object which received the signal.
|
||||
@arg1: the old parent
|
||||
|
||||
<!-- ##### ARG GstObject:name ##### -->
|
||||
<para>
|
||||
The name of the object
|
||||
</para>
|
||||
|
||||
<!-- ##### MACRO GST_FLAGS ##### -->
|
||||
<para>
|
||||
This macro returns the entire set of flags for the object.
|
||||
|
@ -331,3 +290,44 @@ Check if the object has been destroyed.
|
|||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GstObject::deep-notify ##### -->
|
||||
<para>
|
||||
The deep notify signal is used to be notified of property changes.
|
||||
it is typically attached to the toplevel bin to receive notifications
|
||||
from all the elements contained in that bin.
|
||||
</para>
|
||||
|
||||
@gstobject: the object which received the signal.
|
||||
@arg1: the object that originated the signal
|
||||
@arg2: the property that changed
|
||||
|
||||
<!-- ##### SIGNAL GstObject::object-saved ##### -->
|
||||
<para>
|
||||
Is trigered whenever a new object is saved to XML. You can connect to
|
||||
this signal to insert custom XML tags into the core XML.
|
||||
</para>
|
||||
|
||||
@gstobject: the object which received the signal.
|
||||
@arg1: the xmlNodePtr of the parent node
|
||||
|
||||
<!-- ##### SIGNAL GstObject::parent-set ##### -->
|
||||
<para>
|
||||
Is emitted when the parent of an object is set.
|
||||
</para>
|
||||
|
||||
@gstobject: the object which received the signal.
|
||||
@arg1: the new parent
|
||||
|
||||
<!-- ##### SIGNAL GstObject::parent-unset ##### -->
|
||||
<para>
|
||||
Is emitted when the parent of an object is unset.
|
||||
</para>
|
||||
|
||||
@gstobject: the object which received the signal.
|
||||
@arg1: the old parent
|
||||
|
||||
<!-- ##### ARG GstObject:name ##### -->
|
||||
<para>
|
||||
The name of the object
|
||||
</para>
|
||||
|
||||
|
|
|
@ -87,15 +87,6 @@ The padtemplate object.
|
|||
</para>
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GstPadTemplate::pad-created ##### -->
|
||||
<para>
|
||||
This signal is fired when an element creates a pad from this
|
||||
template.
|
||||
</para>
|
||||
|
||||
@gstpadtemplate: the object which received the signal.
|
||||
@arg1: The pad that was created.
|
||||
|
||||
<!-- ##### ENUM GstPadTemplateFlags ##### -->
|
||||
<para>
|
||||
Flags for the padtemplate
|
||||
|
@ -177,3 +168,12 @@ Check if the properties of the padtemplate are fixed
|
|||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GstPadTemplate::pad-created ##### -->
|
||||
<para>
|
||||
This signal is fired when an element creates a pad from this
|
||||
template.
|
||||
</para>
|
||||
|
||||
@gstpadtemplate: the object which received the signal.
|
||||
@arg1: The pad that was created.
|
||||
|
||||
|
|
|
@ -6023,16 +6023,6 @@ Query the element for the current mime type
|
|||
</para>
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GstXML::object-loaded ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@:
|
||||
@:
|
||||
@:
|
||||
|
||||
|
||||
<!-- ##### USER_FUNCTION GstXMLRegistryAddPathList ##### -->
|
||||
<para>
|
||||
|
||||
|
|
|
@ -34,6 +34,15 @@ The GstThread object
|
|||
</para>
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gst_thread_new ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@name:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GstThread::shutdown ##### -->
|
||||
<para>
|
||||
|
||||
|
@ -46,12 +55,3 @@ The GstThread object
|
|||
The thread priority
|
||||
</para>
|
||||
|
||||
<!-- ##### FUNCTION gst_thread_new ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@name:
|
||||
@Returns:
|
||||
|
||||
|
||||
|
|
|
@ -105,3 +105,25 @@ All GstElements can be serialized to an XML presentation and subsequently loaded
|
|||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GstXML::object-loaded ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@:
|
||||
@:
|
||||
@:
|
||||
|
||||
@gstxml: the object which received the signal.
|
||||
@arg1:
|
||||
@arg2:
|
||||
|
||||
<!-- ##### SIGNAL GstXML::object-loaded ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@gstxml: the object which received the signal.
|
||||
@arg1:
|
||||
@arg2:
|
||||
|
||||
|
|
5
docs/manual/advanced-clocks.xml
Normal file
5
docs/manual/advanced-clocks.xml
Normal file
|
@ -0,0 +1,5 @@
|
|||
<chapter id="chapter-clocks">
|
||||
<title>Clocks in GStreamer</title>
|
||||
<para>
|
||||
</para>
|
||||
</chapter>
|
49
docs/manual/basics-bins.xml
Normal file
49
docs/manual/basics-bins.xml
Normal file
|
@ -0,0 +1,49 @@
|
|||
<chapter id="chapter-bins">
|
||||
<title>Bins</title>
|
||||
<para>
|
||||
A bin is a container element. You can add elements to a bin. Since a bin is
|
||||
an element itself, it can also be added to another bin.
|
||||
</para>
|
||||
<para>
|
||||
Bins allow you to combine a group of linked elements into one logical element. You do
|
||||
not deal with the individual elements anymore but with just one element, the bin.
|
||||
We will see that this is extremely powerful when you are going to construct
|
||||
complex pipelines since it allows you to break up the pipeline in smaller chunks.
|
||||
</para>
|
||||
<para>
|
||||
The bin will also manage the elements contained in it. It will figure out how
|
||||
the data will flow in the bin and generate an optimal plan for that data flow. Plan
|
||||
generation is one of the most complicated procedures in GStreamer.
|
||||
</para>
|
||||
|
||||
<figure float="1" id="section-bin-img">
|
||||
<title>Visualisation of a bin with some elements in it</title>
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/bin-element.ℑ" format="&IMAGE;" />
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
There are two specialized bins available to the GStreamer programmer:
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
a pipeline: a generic container that allows scheduling of the
|
||||
containing elements. The toplevel bin has to be a pipeline.
|
||||
Every application thus needs at least one of these.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
a thread: a bin that will be run in a separate execution thread.
|
||||
You will have to use this bin if you have to carefully
|
||||
synchronize audio and video, or for buffering. You will learn
|
||||
more about threads in <xref linkend="chapter-threads"/>.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</chapter>
|
31
docs/manual/basics-plugins.xml
Normal file
31
docs/manual/basics-plugins.xml
Normal file
|
@ -0,0 +1,31 @@
|
|||
<chapter id="chapter-plugins">
|
||||
<title>Plugins</title>
|
||||
<!-- FIXME: introduce type definitions before this chapter -->
|
||||
<para>
|
||||
A plugin is a shared library that contains at least one of the following
|
||||
items:
|
||||
</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
one or more element factories
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
one or more type definitions
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
one or more auto-pluggers
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
exported symbols for use in other plugins
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</chapter>
|
37
docs/manual/highlevel-components.xml
Normal file
37
docs/manual/highlevel-components.xml
Normal file
|
@ -0,0 +1,37 @@
|
|||
<chapter id="chapter-components">
|
||||
<title>Components</title>
|
||||
|
||||
<para>
|
||||
FIXME: This chapter is way out of date.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<application>GStreamer</application> includes components that people can include
|
||||
in their programs.
|
||||
</para>
|
||||
|
||||
<sect1 id="section-components-gst-play">
|
||||
<title>GstPlay</title>
|
||||
<para>
|
||||
GstPlay is a GtkWidget with a simple API to play, pause and stop a media file.
|
||||
</para>
|
||||
|
||||
</sect1>
|
||||
|
||||
<sect1 id="section-components-gst-media-play">
|
||||
<title>GstMediaPlay</title>
|
||||
<para>
|
||||
GstMediaPlay is a complete player widget.
|
||||
</para>
|
||||
|
||||
</sect1>
|
||||
|
||||
<sect1 id="section-components-gst-editor">
|
||||
<title>GstEditor</title>
|
||||
<para>
|
||||
GstEditor is a set of widgets to display a graphical representation of a
|
||||
pipeline.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
</chapter>
|
283
docs/manual/highlevel-xml.xml
Normal file
283
docs/manual/highlevel-xml.xml
Normal file
|
@ -0,0 +1,283 @@
|
|||
<chapter id="chapter-xml">
|
||||
<title>XML in <application>GStreamer</application></title>
|
||||
<para>
|
||||
<application>GStreamer</application> uses XML to store and load
|
||||
its pipeline definitions. XML is also used internally to manage the
|
||||
plugin registry. The plugin registry is a file that contains the definition
|
||||
of all the plugins <application>GStreamer</application> knows about to have
|
||||
quick access to the specifics of the plugins.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
We will show you how you can save a pipeline to XML and how you can reload that
|
||||
XML file again for later use.
|
||||
</para>
|
||||
|
||||
<sect1 id="section-xml-write">
|
||||
<title>Turning GstElements into XML</title>
|
||||
|
||||
<para>
|
||||
We create a simple pipeline and write it to stdout with
|
||||
gst_xml_write_file (). The following code constructs an MP3 player
|
||||
pipeline with two threads and then writes out the XML both to stdout
|
||||
and to a file. Use this program with one argument: the MP3 file on disk.
|
||||
</para>
|
||||
|
||||
<programlisting>
|
||||
/* example-begin xml-mp3.c */
|
||||
#include <stdlib.h>
|
||||
#include <gst/gst.h>
|
||||
|
||||
gboolean playing;
|
||||
|
||||
int
|
||||
main (int argc, char *argv[])
|
||||
{
|
||||
GstElement *filesrc, *osssink, *queue, *queue2, *decode;
|
||||
GstElement *bin;
|
||||
GstElement *thread, *thread2;
|
||||
|
||||
gst_init (&argc,&argv);
|
||||
|
||||
if (argc != 2) {
|
||||
g_print ("usage: %s <mp3 filename>\n", argv[0]);
|
||||
exit (-1);
|
||||
}
|
||||
|
||||
/* create a new thread to hold the elements */
|
||||
thread = gst_element_factory_make ("thread", "thread");
|
||||
g_assert (thread != NULL);
|
||||
thread2 = gst_element_factory_make ("thread", "thread2");
|
||||
g_assert (thread2 != NULL);
|
||||
|
||||
/* create a new bin to hold the elements */
|
||||
bin = gst_bin_new ("bin");
|
||||
g_assert (bin != NULL);
|
||||
|
||||
/* create a disk reader */
|
||||
filesrc = gst_element_factory_make ("filesrc", "disk_source");
|
||||
g_assert (filesrc != NULL);
|
||||
g_object_set (G_OBJECT (filesrc), "location", argv[1], NULL);
|
||||
|
||||
queue = gst_element_factory_make ("queue", "queue");
|
||||
queue2 = gst_element_factory_make ("queue", "queue2");
|
||||
|
||||
/* and an audio sink */
|
||||
osssink = gst_element_factory_make ("osssink", "play_audio");
|
||||
g_assert (osssink != NULL);
|
||||
|
||||
decode = gst_element_factory_make ("mad", "decode");
|
||||
g_assert (decode != NULL);
|
||||
|
||||
/* add objects to the main bin */
|
||||
gst_bin_add_many (GST_BIN (bin), filesrc, queue, NULL);
|
||||
|
||||
gst_bin_add_many (GST_BIN (thread), decode, queue2, NULL);
|
||||
|
||||
gst_bin_add (GST_BIN (thread2), osssink);
|
||||
|
||||
gst_element_link_many (filesrc, queue, decode, queue2, osssink, NULL);
|
||||
|
||||
gst_bin_add_many (GST_BIN (bin), thread, thread2, NULL);
|
||||
|
||||
/* write the bin to stdout */
|
||||
gst_xml_write_file (GST_ELEMENT (bin), stdout);
|
||||
|
||||
/* write the bin to a file */
|
||||
gst_xml_write_file (GST_ELEMENT (bin), fopen ("xmlTest.gst", "w"));
|
||||
|
||||
exit (0);
|
||||
}
|
||||
/* example-end xml-mp3.c */
|
||||
</programlisting>
|
||||
<para>
|
||||
The most important line is:
|
||||
</para>
|
||||
<programlisting>
|
||||
gst_xml_write_file (GST_ELEMENT (bin), stdout);
|
||||
</programlisting>
|
||||
<para>
|
||||
gst_xml_write_file () will turn the given element into an xmlDocPtr that
|
||||
is then formatted and saved to a file. To save to disk, pass the result
|
||||
of a fopen(2) as the second argument.
|
||||
</para>
|
||||
<para>
|
||||
The complete element hierarchy will be saved along with the inter element
|
||||
pad links and the element parameters. Future <application>GStreamer</application>
|
||||
versions will also allow you to store the signals in the XML file.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="section-xml-load">
|
||||
<title>Loading a GstElement from an XML file</title>
|
||||
<para>
|
||||
Before an XML file can be loaded, you must create a GstXML object.
|
||||
A saved XML file can then be loaded with the
|
||||
gst_xml_parse_file (xml, filename, rootelement) method.
|
||||
The root element can optionally left NULL. The following code example loads
|
||||
the previously created XML file and runs it.
|
||||
</para>
|
||||
<programlisting>
|
||||
#include <stdlib.h>
|
||||
#include <gst/gst.h>
|
||||
|
||||
int
|
||||
main(int argc, char *argv[])
|
||||
{
|
||||
GstXML *xml;
|
||||
GstElement *bin;
|
||||
gboolean ret;
|
||||
|
||||
gst_init (&argc, &argv);
|
||||
|
||||
xml = gst_xml_new ();
|
||||
|
||||
ret = gst_xml_parse_file(xml, "xmlTest.gst", NULL);
|
||||
g_assert (ret == TRUE);
|
||||
|
||||
bin = gst_xml_get_element (xml, "bin");
|
||||
g_assert (bin != NULL);
|
||||
|
||||
gst_element_set_state (bin, GST_STATE_PLAYING);
|
||||
|
||||
while (gst_bin_iterate(GST_BIN(bin)));
|
||||
|
||||
gst_element_set_state (bin, GST_STATE_NULL);
|
||||
|
||||
exit (0);
|
||||
}
|
||||
</programlisting>
|
||||
<para>
|
||||
gst_xml_get_element (xml, "name") can be used to get a specific element
|
||||
from the XML file.
|
||||
</para>
|
||||
<para>
|
||||
gst_xml_get_topelements (xml) can be used to get a list of all toplevel elements
|
||||
in the XML file.
|
||||
</para>
|
||||
<para>
|
||||
In addition to loading a file, you can also load a from a xmlDocPtr and
|
||||
an in memory buffer using gst_xml_parse_doc and gst_xml_parse_memory
|
||||
respectively. Both of these methods return a gboolean indicating
|
||||
success or failure of the requested action.
|
||||
</para>
|
||||
</sect1>
|
||||
<sect1 id="section-xml-custom">
|
||||
<title>Adding custom XML tags into the core XML data</title>
|
||||
|
||||
<para>
|
||||
It is possible to add custom XML tags to the core XML created with
|
||||
gst_xml_write. This feature can be used by an application to add more
|
||||
information to the save plugins. The editor will for example insert
|
||||
the position of the elements on the screen using the custom XML tags.
|
||||
</para>
|
||||
<para>
|
||||
It is strongly suggested to save and load the custom XML tags using
|
||||
a namespace. This will solve the problem of having your XML tags
|
||||
interfere with the core XML tags.
|
||||
</para>
|
||||
<para>
|
||||
To insert a hook into the element saving procedure you can link
|
||||
a signal to the GstElement using the following piece of code:
|
||||
</para>
|
||||
<programlisting>
|
||||
xmlNsPtr ns;
|
||||
|
||||
...
|
||||
ns = xmlNewNs (NULL, "http://gstreamer.net/gst-test/1.0/", "test");
|
||||
...
|
||||
thread = gst_element_factory_make ("thread", "thread");
|
||||
g_signal_connect (G_OBJECT (thread), "object_saved",
|
||||
G_CALLBACK (object_saved), g_strdup ("decoder thread"));
|
||||
...
|
||||
</programlisting>
|
||||
<para>
|
||||
When the thread is saved, the object_save method will be called. Our example
|
||||
will insert a comment tag:
|
||||
</para>
|
||||
<programlisting>
|
||||
static void
|
||||
object_saved (GstObject *object, xmlNodePtr parent, gpointer data)
|
||||
{
|
||||
xmlNodePtr child;
|
||||
|
||||
child = xmlNewChild (parent, ns, "comment", NULL);
|
||||
xmlNewChild (child, ns, "text", (gchar *)data);
|
||||
}
|
||||
</programlisting>
|
||||
<para>
|
||||
Adding the custom tag code to the above example you will get an XML file
|
||||
with the custom tags in it. Here's an excerpt:
|
||||
</para>
|
||||
<programlisting>
|
||||
...
|
||||
<gst:element>
|
||||
<gst:name>thread</gst:name>
|
||||
<gst:type>thread</gst:type>
|
||||
<gst:version>0.1.0</gst:version>
|
||||
...
|
||||
</gst:children>
|
||||
<test:comment>
|
||||
<test:text>decoder thread</test:text>
|
||||
</test:comment>
|
||||
</gst:element>
|
||||
...
|
||||
</programlisting>
|
||||
<para>
|
||||
To retrieve the custom XML again, you need to attach a signal to
|
||||
the GstXML object used to load the XML data. You can then parse your
|
||||
custom XML from the XML tree whenever an object is loaded.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
We can extend our previous example with the following piece of
|
||||
code.
|
||||
</para>
|
||||
|
||||
<programlisting>
|
||||
xml = gst_xml_new ();
|
||||
|
||||
g_signal_connect (G_OBJECT (xml), "object_loaded",
|
||||
G_CALLBACK (xml_loaded), xml);
|
||||
|
||||
ret = gst_xml_parse_file (xml, "xmlTest.gst", NULL);
|
||||
g_assert (ret == TRUE);
|
||||
</programlisting>
|
||||
|
||||
<para>
|
||||
Whenever a new object has been loaded, the xml_loaded function will
|
||||
be called. This function looks like:
|
||||
</para>
|
||||
<programlisting>
|
||||
static void
|
||||
xml_loaded (GstXML *xml, GstObject *object, xmlNodePtr self, gpointer data)
|
||||
{
|
||||
xmlNodePtr children = self->xmlChildrenNode;
|
||||
|
||||
while (children) {
|
||||
if (!strcmp (children->name, "comment")) {
|
||||
xmlNodePtr nodes = children->xmlChildrenNode;
|
||||
|
||||
while (nodes) {
|
||||
if (!strcmp (nodes->name, "text")) {
|
||||
gchar *name = g_strdup (xmlNodeGetContent (nodes));
|
||||
g_print ("object %s loaded with comment '%s'\n",
|
||||
gst_object_get_name (object), name);
|
||||
}
|
||||
nodes = nodes->next;
|
||||
}
|
||||
}
|
||||
children = children->next;
|
||||
}
|
||||
}
|
||||
</programlisting>
|
||||
<para>
|
||||
As you can see, you'll get a handle to the GstXML object, the
|
||||
newly loaded GstObject and the xmlNodePtr that was used to create
|
||||
this object. In the above example we look for our special tag inside
|
||||
the XML tree that was used to load the object and we print our
|
||||
comment to the console.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
</chapter>
|
59
docs/manual/intro-preface.xml
Normal file
59
docs/manual/intro-preface.xml
Normal file
|
@ -0,0 +1,59 @@
|
|||
<chapter id="chapter-intro">
|
||||
<title>Introduction</title>
|
||||
<para>
|
||||
This chapter gives you an overview of the technologies described in this
|
||||
book.
|
||||
</para>
|
||||
|
||||
<sect1 id="section-intro-what">
|
||||
<title>What is GStreamer?</title>
|
||||
<para>
|
||||
GStreamer is a framework for creating streaming media applications.
|
||||
The fundamental design comes from the video pipeline at Oregon Graduate
|
||||
Institute, as well as some ideas from DirectShow.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
GStreamer's development framework makes it possible to write any type of
|
||||
streaming multimedia application. The GStreamer framework is designed
|
||||
to make it easy to write applications that handle audio or video or both.
|
||||
It isn't restricted to audio and video, and can process any kind of
|
||||
data flow.
|
||||
The pipeline design is made to have little overhead above what the
|
||||
applied filters induce. This makes GStreamer a good framework for designing
|
||||
even high-end audio applications which put high demands on latency.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
One of the the most obvious uses of GStreamer is using it to build
|
||||
a media player. GStreamer already includes components for building a
|
||||
media player that can support a very wide variety of formats, including
|
||||
MP3, Ogg Vorbis, MPEG1, MPEG2, AVI, Quicktime, mod, and more. GStreamer,
|
||||
however, is much more than just another media player. Its main advantages
|
||||
are that the pluggable components can be mixed and matched into arbitrary
|
||||
pipelines so that it's possible to write a full-fledged video or audio
|
||||
editing application.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The framework is based on plugins that will provide the various codec
|
||||
and other functionality. The plugins can be linked and arranged in
|
||||
a pipeline. This pipeline defines the flow of the data. Pipelines can
|
||||
also be edited with a GUI editor and saved as XML so that pipeline
|
||||
libraries can be made with a minimum of effort.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The GStreamer core function is to provide a framework for plugins, data flow
|
||||
and media type handling/negotiation.
|
||||
It also provides an API to write applications using the various plugins.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This book is about GStreamer from a developer's point of view; it describes
|
||||
how to write a GStreamer application using the GStreamer libraries and tools.
|
||||
For an explanation about writing plugins, we suggest the Plugin Writers Guide.
|
||||
</para>
|
||||
|
||||
</sect1>
|
||||
</chapter>
|
|
@ -58,10 +58,12 @@ struct _GstStaticCaps {
|
|||
|
||||
#define GST_TYPE_CAPS gst_caps_get_type()
|
||||
|
||||
#ifndef GST_DISABLE_DEPRECATED
|
||||
#define GST_DEBUG_CAPS(string, caps) \
|
||||
GST_DEBUG ( string "%s: " GST_PTR_FORMAT, caps)
|
||||
#endif
|
||||
/* FIXME Company should decide the best way to do this */
|
||||
#define GST_DEBUG_CAPS(string, caps) do { \
|
||||
char *s = gst_caps_to_string(caps); \
|
||||
GST_DEBUG ( "%s: %s", (string), s); \
|
||||
g_free(s); \
|
||||
}while(0)
|
||||
|
||||
|
||||
void _gst_caps_initialize (void);
|
||||
|
|
|
@ -53,7 +53,7 @@ enum {
|
|||
};
|
||||
|
||||
extern void __gst_element_details_clear (GstElementDetails *dp);
|
||||
extern void __gst_element_details_copy (GstElementDetails *dest,
|
||||
extern void __gst_element_details_set (GstElementDetails *dest,
|
||||
const GstElementDetails *src);
|
||||
|
||||
static void gst_element_class_init (GstElementClass *klass);
|
||||
|
@ -172,7 +172,6 @@ gst_element_base_class_init (gpointer g_class)
|
|||
gobject_class->set_property = GST_DEBUG_FUNCPTR(gst_element_real_set_property);
|
||||
gobject_class->get_property = GST_DEBUG_FUNCPTR(gst_element_real_get_property);
|
||||
|
||||
memset (&element_class->details, 0, sizeof (GstElementDetails));
|
||||
element_class->padtemplates = NULL;
|
||||
}
|
||||
|
||||
|
@ -1383,7 +1382,7 @@ gst_element_class_set_details (GstElementClass *klass, const GstElementDetails *
|
|||
g_return_if_fail (GST_IS_ELEMENT_CLASS (klass));
|
||||
g_return_if_fail (GST_IS_ELEMENT_DETAILS (details));
|
||||
|
||||
__gst_element_details_copy (&klass->details, details);
|
||||
__gst_element_details_set (&klass->details, details);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -2757,9 +2756,6 @@ gst_element_clear_pad_caps (GstElement *element)
|
|||
GstPad *pad = GST_PAD (pads->data);
|
||||
|
||||
gst_pad_unnegotiate (pad);
|
||||
if (GST_IS_REAL_PAD (pad)){
|
||||
gst_caps_replace (&GST_RPAD_EXPLICIT_CAPS (pad), NULL);
|
||||
}
|
||||
|
||||
pads = g_list_next (pads);
|
||||
}
|
||||
|
|
37
gst/gstpad.c
37
gst/gstpad.c
|
@ -35,6 +35,9 @@
|
|||
|
||||
#define GST_CAT_DEFAULT GST_CAT_PADS
|
||||
|
||||
/* FIXME */
|
||||
#define gst_caps_debug(a,b) GST_DEBUG_CAPS(b,a)
|
||||
|
||||
|
||||
enum {
|
||||
TEMPL_PAD_CREATED,
|
||||
|
@ -1043,21 +1046,21 @@ static void gst_pad_link_intersect (GstPadLink *link)
|
|||
|
||||
GST_DEBUG ("intersecting link from %s:%s to %s:%s",
|
||||
GST_DEBUG_PAD_NAME (link->srcpad), GST_DEBUG_PAD_NAME (link->sinkpad));
|
||||
GST_DEBUG ("srccaps " GST_PTR_FORMAT, link->srccaps);
|
||||
GST_DEBUG ("sinkcaps " GST_PTR_FORMAT, link->sinkcaps);
|
||||
GST_DEBUG ("filtercaps " GST_PTR_FORMAT, link->filtercaps);
|
||||
GST_DEBUG_CAPS ("srccaps", link->srccaps);
|
||||
GST_DEBUG_CAPS ("sinkcaps", link->sinkcaps);
|
||||
GST_DEBUG_CAPS ("filtercaps", link->filtercaps);
|
||||
|
||||
pad_intersection = gst_caps_intersect (link->srccaps, link->sinkcaps);
|
||||
|
||||
if (link->filtercaps) {
|
||||
GST_DEBUG ("unfiltered intersection " GST_PTR_FORMAT, pad_intersection);
|
||||
GST_DEBUG_CAPS ("unfiltered intersection", pad_intersection);
|
||||
link->caps = gst_caps_intersect (pad_intersection, link->filtercaps);
|
||||
gst_caps_free (pad_intersection);
|
||||
} else {
|
||||
link->caps = pad_intersection;
|
||||
}
|
||||
|
||||
GST_DEBUG ("intersection " GST_PTR_FORMAT, link->caps);
|
||||
GST_DEBUG_CAPS ("intersection", link->caps);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
|
@ -1092,7 +1095,7 @@ gst_pad_link_fixate (GstPadLink *link)
|
|||
g_return_if_fail (caps != NULL);
|
||||
g_return_if_fail (!gst_caps_is_empty(caps));
|
||||
|
||||
GST_DEBUG ("trying to fixate caps " GST_PTR_FORMAT, caps);
|
||||
GST_DEBUG_CAPS ("trying to fixate caps", caps);
|
||||
|
||||
while (!gst_caps_is_fixed (caps)) {
|
||||
int i;
|
||||
|
@ -1103,31 +1106,31 @@ gst_pad_link_fixate (GstPadLink *link)
|
|||
case 0:
|
||||
g_signal_emit (G_OBJECT (link->srcpad),
|
||||
gst_real_pad_signals[REAL_FIXATE], 0, caps, &newcaps);
|
||||
GST_DEBUG ("app srcpad signal fixated to " GST_PTR_FORMAT, newcaps);
|
||||
GST_DEBUG_CAPS ("app srcpad signal fixated to", newcaps);
|
||||
break;
|
||||
case 1:
|
||||
g_signal_emit (G_OBJECT (link->sinkpad),
|
||||
gst_real_pad_signals[REAL_FIXATE], 0, caps, &newcaps);
|
||||
GST_DEBUG ("app sinkpad signal fixated to " GST_PTR_FORMAT, newcaps);
|
||||
GST_DEBUG_CAPS ("app sinkpad signal fixated to", newcaps);
|
||||
break;
|
||||
case 2:
|
||||
if (GST_RPAD_FIXATEFUNC(link->srcpad)) {
|
||||
newcaps = GST_RPAD_FIXATEFUNC(link->srcpad) (
|
||||
GST_PAD (link->srcpad), caps);
|
||||
GST_DEBUG ("srcpad fixated to " GST_PTR_FORMAT, newcaps);
|
||||
GST_DEBUG_CAPS ("srcpad fixated to", newcaps);
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (GST_RPAD_FIXATEFUNC(link->sinkpad)) {
|
||||
newcaps = GST_RPAD_FIXATEFUNC(link->sinkpad) (
|
||||
GST_PAD (link->sinkpad), caps);
|
||||
GST_DEBUG ("sinkpad fixated to " GST_PTR_FORMAT, newcaps);
|
||||
GST_DEBUG_CAPS ("sinkpad fixated to", newcaps);
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
newcaps = _gst_pad_default_fixate_func (
|
||||
GST_PAD(link->srcpad), caps);
|
||||
GST_DEBUG ("core fixated to GST_PTR_FORMAT", newcaps);
|
||||
GST_DEBUG_CAPS ("core fixated to", newcaps);
|
||||
break;
|
||||
}
|
||||
if (newcaps) {
|
||||
|
@ -1329,7 +1332,7 @@ gst_pad_try_set_caps (GstPad *pad, const GstCaps *caps)
|
|||
g_warning ("trying to set non fixed caps on pad %s:%s, not allowed",
|
||||
GST_DEBUG_PAD_NAME (pad));
|
||||
|
||||
GST_DEBUG ("unfixed caps " GST_PTR_FORMAT, caps);
|
||||
gst_caps_debug (caps, "unfixed caps");
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
|
||||
|
@ -1536,12 +1539,9 @@ gst_pad_can_link_filtered (GstPad *srcpad, GstPad *sinkpad,
|
|||
if (filtercaps) link->filtercaps = gst_caps_copy (filtercaps);
|
||||
|
||||
gst_pad_link_intersect (link);
|
||||
if (gst_caps_is_empty (link->caps)) {
|
||||
gst_pad_link_free (link);
|
||||
if (gst_caps_is_empty (link->caps))
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
gst_pad_link_free (link);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
@ -2716,11 +2716,6 @@ gst_real_pad_dispose (GObject *object)
|
|||
gst_element_remove_pad (GST_ELEMENT (GST_OBJECT_PARENT (pad)), pad);
|
||||
}
|
||||
|
||||
if (GST_RPAD_EXPLICIT_CAPS (pad)) {
|
||||
GST_ERROR_OBJECT (pad, "still explicit caps %"GST_PTR_FORMAT" set", GST_RPAD_EXPLICIT_CAPS (pad));
|
||||
g_warning ("pad %p has still explicit caps set", pad);
|
||||
gst_caps_replace (&GST_RPAD_EXPLICIT_CAPS (pad), NULL);
|
||||
}
|
||||
G_OBJECT_CLASS (real_pad_parent_class)->dispose (object);
|
||||
}
|
||||
|
||||
|
|
|
@ -237,6 +237,8 @@ void gst_structure_free(GstStructure *structure)
|
|||
GstStructureField *field;
|
||||
int i;
|
||||
|
||||
return;
|
||||
|
||||
g_return_if_fail(structure != NULL);
|
||||
|
||||
for(i=0;i<structure->fields->len;i++){
|
||||
|
@ -1335,8 +1337,9 @@ gst_structure_from_string (const gchar *string, gchar **end)
|
|||
char *w;
|
||||
char *r;
|
||||
char save;
|
||||
GstStructure *structure = NULL;
|
||||
GstStructure *structure;
|
||||
GstStructureField field = { 0 };
|
||||
gboolean res;
|
||||
|
||||
g_return_val_if_fail(string != NULL, NULL);
|
||||
|
||||
|
@ -1344,11 +1347,11 @@ gst_structure_from_string (const gchar *string, gchar **end)
|
|||
r = copy;
|
||||
|
||||
name = r;
|
||||
if (!_gst_structure_parse_string (r, &w, &r))
|
||||
goto error;
|
||||
res = _gst_structure_parse_string (r, &w, &r);
|
||||
if (!res) return NULL;
|
||||
|
||||
while (g_ascii_isspace(*r)) r++;
|
||||
if(*r != 0 && *r != ';' && *r != ',') goto error;
|
||||
if(*r != 0 && *r != ';' && *r != ',') return NULL;
|
||||
|
||||
save = *w;
|
||||
*w = 0;
|
||||
|
@ -1356,28 +1359,24 @@ gst_structure_from_string (const gchar *string, gchar **end)
|
|||
*w = save;
|
||||
|
||||
while (*r && (*r != ';')){
|
||||
if(*r != ',')
|
||||
goto error;
|
||||
if(*r != ',') {
|
||||
return NULL;
|
||||
}
|
||||
r++;
|
||||
while (*r && g_ascii_isspace(*r)) r++;
|
||||
|
||||
memset(&field,0,sizeof(field));
|
||||
if (!_gst_structure_parse_field (r, &r, &field))
|
||||
goto error;
|
||||
res = _gst_structure_parse_field (r, &r, &field);
|
||||
if (!res) {
|
||||
gst_structure_free (structure);
|
||||
return NULL;
|
||||
}
|
||||
gst_structure_set_field(structure, &field);
|
||||
while (*r && g_ascii_isspace(*r)) r++;
|
||||
}
|
||||
|
||||
if (end) *end = (char *)string + (r - copy);
|
||||
|
||||
g_free (copy);
|
||||
return structure;
|
||||
|
||||
error:
|
||||
if (structure)
|
||||
gst_structure_free (structure);
|
||||
g_free (copy);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
247
po/fr.po
247
po/fr.po
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: GStreamer\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2004-01-31 23:31+0100\n"
|
||||
"POT-Creation-Date: 2004-02-05 19:44+0100\n"
|
||||
"PO-Revision-Date: 2004-01-13 16:52+0100\n"
|
||||
"Last-Translator: Julien Moutte <julien@moutte.net>\n"
|
||||
"Language-Team: French <fr@li.org>\n"
|
||||
|
@ -15,72 +15,72 @@ msgstr ""
|
|||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: gst/gst.c:118
|
||||
#: gst/gst.c:120
|
||||
msgid "Print the GStreamer version"
|
||||
msgstr "Afficher la version de GStreamer"
|
||||
|
||||
#: gst/gst.c:119
|
||||
#: gst/gst.c:121
|
||||
msgid "Make all warnings fatal"
|
||||
msgstr "Rendre tout les avertissements bloquants"
|
||||
|
||||
#: gst/gst.c:121
|
||||
#: gst/gst.c:123
|
||||
msgid ""
|
||||
"Default debug level from 1 (only error) to 5 (anything) or 0 for no output"
|
||||
msgstr ""
|
||||
"Niveau de deboguage par defaut de 1 (que les erreurs) a 5 (tout) ou 0 pour "
|
||||
"n'avoir aucun affichage"
|
||||
|
||||
#: gst/gst.c:121
|
||||
#: gst/gst.c:123
|
||||
msgid "LEVEL"
|
||||
msgstr "NIVEAU"
|
||||
|
||||
#: gst/gst.c:122
|
||||
#: gst/gst.c:124
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"Comma-separated list of category_name:level pairs to set specific levels for "
|
||||
"the individual categories.\n"
|
||||
"Example: GST_AUTOPLUG:5,GST_ELEMENT_*:3"
|
||||
"the individual categories. Example: GST_AUTOPLUG:5,GST_ELEMENT_*:3"
|
||||
msgstr ""
|
||||
"Liste séparée par des virgules de paires nom_catégorie:niveau definissant "
|
||||
"des niveaux spécifiques pour chaque catégorie.\n"
|
||||
"Exemple: GST_AUTOPLUG:5,GST_ELEMENT_*:3"
|
||||
|
||||
#: gst/gst.c:122
|
||||
#: gst/gst.c:124
|
||||
msgid "CATEGORIES"
|
||||
msgstr "CATEGORIES"
|
||||
|
||||
#: gst/gst.c:123
|
||||
#: gst/gst.c:125
|
||||
msgid "Disable color debugging output"
|
||||
msgstr "Désactiver la couleur dans la sortie de deboguage"
|
||||
|
||||
#: gst/gst.c:124
|
||||
#: gst/gst.c:126
|
||||
msgid "Disable debugging"
|
||||
msgstr "Désactiver la sortie de deboguage"
|
||||
|
||||
#: gst/gst.c:125
|
||||
#: gst/gst.c:127
|
||||
msgid "Print available debug categories and exit"
|
||||
msgstr "Afficher les catégories de deboguage disponibles et quitter"
|
||||
|
||||
#: gst/gst.c:127
|
||||
#: gst/gst.c:129
|
||||
msgid "Disable accelerated CPU instructions"
|
||||
msgstr "Désactiver les instructions accélerées du processeur"
|
||||
|
||||
#: gst/gst.c:128
|
||||
#: gst/gst.c:130
|
||||
msgid "Enable verbose plugin loading diagnostics"
|
||||
msgstr "Activer un diagnostique détaillé du chargement des plugins"
|
||||
|
||||
#: gst/gst.c:129
|
||||
#: gst/gst.c:131
|
||||
msgid "path list for loading plugins (separated by '"
|
||||
msgstr "liste de chemins pour le chargement des plugins (séparés par '"
|
||||
|
||||
#: gst/gst.c:129
|
||||
#: gst/gst.c:131
|
||||
msgid "')"
|
||||
msgstr "')"
|
||||
|
||||
#: gst/gst.c:129
|
||||
#: gst/gst.c:131
|
||||
msgid "PATHS"
|
||||
msgstr "CHEMINS"
|
||||
|
||||
#: gst/gst.c:130
|
||||
#: gst/gst.c:132
|
||||
msgid ""
|
||||
"Comma-separated list of plugins to preload in addition to the list stored in "
|
||||
"env variable GST_PLUGIN_PATH"
|
||||
|
@ -88,44 +88,44 @@ msgstr ""
|
|||
"Liste séparée par des virgules de plugins a precharger en plus de la liste "
|
||||
"contenue dans la variable d'environnement GST_PLUGIN_PATH"
|
||||
|
||||
#: gst/gst.c:130
|
||||
#: gst/gst.c:132
|
||||
msgid "PLUGINS"
|
||||
msgstr "PLUGINS"
|
||||
|
||||
#: gst/gst.c:131
|
||||
#: gst/gst.c:133
|
||||
msgid "Disable trapping of segmentation faults during plugin loading"
|
||||
msgstr ""
|
||||
"Désactiver la detection des erreurs de segmentation pendant le chargement "
|
||||
"des plugins"
|
||||
|
||||
#: gst/gst.c:132
|
||||
#: gst/gst.c:134
|
||||
msgid "Scheduler to use ('"
|
||||
msgstr "Planificateur a utiliser ('"
|
||||
|
||||
#: gst/gst.c:132
|
||||
#: gst/gst.c:134
|
||||
msgid "' is the default)"
|
||||
msgstr "' est la valeur par defaut)"
|
||||
|
||||
#: gst/gst.c:132
|
||||
#: gst/gst.c:134
|
||||
msgid "SCHEDULER"
|
||||
msgstr "PLANIFICATEUR"
|
||||
|
||||
#: gst/gst.c:133
|
||||
#: gst/gst.c:135
|
||||
msgid "Registry to use"
|
||||
msgstr "Registre a utiliser"
|
||||
|
||||
#: gst/gst.c:133
|
||||
#: gst/gst.c:135
|
||||
msgid "REGISTRY"
|
||||
msgstr "REGISTRE"
|
||||
|
||||
#: gst/gstelement.c:239
|
||||
#: gst/gstelement.c:240
|
||||
#, fuzzy, c-format
|
||||
msgid "ERROR: from element %s: %s.\n"
|
||||
msgid "ERROR: from element %s: %s\n"
|
||||
msgstr ""
|
||||
"ERREUR: impossible d'interpreter l'argument de la ligne de commande numero %"
|
||||
"d: %s.\n"
|
||||
|
||||
#: gst/gstelement.c:241
|
||||
#: gst/gstelement.c:242
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Additional debug info:\n"
|
||||
|
@ -261,35 +261,39 @@ msgid "The stream is of a different type than handled by this element."
|
|||
msgstr ""
|
||||
|
||||
#: gst/gsterror.c:152
|
||||
msgid "There is no codec present that can handle the stream's type."
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsterror.c:154
|
||||
#, fuzzy
|
||||
msgid "Could not decode stream."
|
||||
msgstr "Echoué a déterminer le type du flux"
|
||||
|
||||
#: gst/gsterror.c:154
|
||||
#: gst/gsterror.c:156
|
||||
#, fuzzy
|
||||
msgid "Could not encode stream."
|
||||
msgstr "Echoué a déterminer le type du flux"
|
||||
|
||||
#: gst/gsterror.c:156
|
||||
#: gst/gsterror.c:158
|
||||
#, fuzzy
|
||||
msgid "Could not demultiplex stream."
|
||||
msgstr "Echoué a déterminer le type du flux"
|
||||
|
||||
#: gst/gsterror.c:158
|
||||
#: gst/gsterror.c:160
|
||||
#, fuzzy
|
||||
msgid "Could not multiplex stream."
|
||||
msgstr "Echoué a déterminer le type du flux"
|
||||
|
||||
#: gst/gsterror.c:160
|
||||
#: gst/gsterror.c:162
|
||||
msgid "Stream is of the wrong format."
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsterror.c:207
|
||||
#: gst/gsterror.c:209
|
||||
#, c-format
|
||||
msgid "No error message for domain %s."
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsterror.c:212
|
||||
#: gst/gsterror.c:214
|
||||
#, c-format
|
||||
msgid "No standard error message for domain %s and code %d."
|
||||
msgstr ""
|
||||
|
@ -427,163 +431,154 @@ msgid "person(s) performing"
|
|||
msgstr "personne(s) qui interprète(nt)"
|
||||
|
||||
#: gst/gsttag.c:147
|
||||
#, fuzzy
|
||||
msgid "application"
|
||||
msgstr "emplacement"
|
||||
|
||||
#: gst/gsttag.c:148
|
||||
msgid "application that wrote the stream"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:152
|
||||
msgid "duration"
|
||||
msgstr "durèe"
|
||||
|
||||
#: gst/gsttag.c:153
|
||||
#: gst/gsttag.c:148
|
||||
msgid "length in GStreamer time units (nanoseconds)"
|
||||
msgstr "longueur en unité de temps GStreamer (nanosecondes)"
|
||||
|
||||
#: gst/gsttag.c:157
|
||||
#: gst/gsttag.c:152
|
||||
msgid "codec"
|
||||
msgstr "codec"
|
||||
|
||||
#: gst/gsttag.c:158
|
||||
#: gst/gsttag.c:153
|
||||
msgid "codec the data is stored in"
|
||||
msgstr "codec avec lequel la donnée fut enregistrée"
|
||||
|
||||
#: gst/gsttag.c:162
|
||||
#: gst/gsttag.c:157
|
||||
msgid "bitrate"
|
||||
msgstr "bitrate"
|
||||
|
||||
#: gst/gsttag.c:163
|
||||
#: gst/gsttag.c:158
|
||||
msgid "exact or average bitrate in bits/s"
|
||||
msgstr "bitrate exact ou moyen en bits par seconde"
|
||||
|
||||
#: gst/gsttag.c:167
|
||||
#: gst/gsttag.c:162
|
||||
#, fuzzy
|
||||
msgid "nominal bitrate"
|
||||
msgstr "bitrate minimum"
|
||||
|
||||
#: gst/gsttag.c:168
|
||||
#: gst/gsttag.c:163
|
||||
#, fuzzy
|
||||
msgid "nominal bitrate in bits/s"
|
||||
msgstr "bitrate minimum en bits par seconde"
|
||||
|
||||
#: gst/gsttag.c:172
|
||||
#: gst/gsttag.c:167
|
||||
msgid "minimum bitrate"
|
||||
msgstr "bitrate minimum"
|
||||
|
||||
#: gst/gsttag.c:173
|
||||
#: gst/gsttag.c:168
|
||||
msgid "minimum bitrate in bits/s"
|
||||
msgstr "bitrate minimum en bits par seconde"
|
||||
|
||||
#: gst/gsttag.c:177
|
||||
#: gst/gsttag.c:172
|
||||
msgid "maximum bitrate"
|
||||
msgstr "bitrate maximum"
|
||||
|
||||
#: gst/gsttag.c:178
|
||||
#: gst/gsttag.c:173
|
||||
msgid "maximum bitrate in bits/s"
|
||||
msgstr "bitrate maximum en bits par seconde"
|
||||
|
||||
#: gst/gsttag.c:182
|
||||
#: gst/gsttag.c:177
|
||||
#, fuzzy
|
||||
msgid "encoder"
|
||||
msgstr "codec"
|
||||
|
||||
#: gst/gsttag.c:183
|
||||
#: gst/gsttag.c:178
|
||||
#, fuzzy
|
||||
msgid "encoder used to encode this stream"
|
||||
msgstr "Echoué a déterminer le type du flux"
|
||||
|
||||
#: gst/gsttag.c:187
|
||||
#: gst/gsttag.c:182
|
||||
#, fuzzy
|
||||
msgid "encoder version"
|
||||
msgstr "version"
|
||||
|
||||
#: gst/gsttag.c:188
|
||||
#: gst/gsttag.c:183
|
||||
msgid "version of the encoder used to encode this stream"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:192
|
||||
#: gst/gsttag.c:187
|
||||
msgid "serial"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:193
|
||||
#: gst/gsttag.c:188
|
||||
msgid "serial number of track"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:197
|
||||
#: gst/gsttag.c:192
|
||||
msgid "replaygain track gain"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:198
|
||||
#: gst/gsttag.c:193
|
||||
msgid "track gain in db"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:202
|
||||
#: gst/gsttag.c:197
|
||||
msgid "replaygain track peak"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:203
|
||||
#: gst/gsttag.c:198
|
||||
msgid "peak of the track"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:207
|
||||
#: gst/gsttag.c:202
|
||||
msgid "replaygain album gain"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:208
|
||||
#: gst/gsttag.c:203
|
||||
#, fuzzy
|
||||
msgid "album gain in db"
|
||||
msgstr "album contenant cette donnée"
|
||||
|
||||
#: gst/gsttag.c:212
|
||||
#: gst/gsttag.c:207
|
||||
msgid "replaygain album peak"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:213
|
||||
#: gst/gsttag.c:208
|
||||
msgid "peak of the album"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:251
|
||||
#: gst/gsttag.c:246
|
||||
msgid ", "
|
||||
msgstr ", "
|
||||
|
||||
#: gst/elements/gstfilesink.c:237 gst/elements/gstfilesrc.c:723
|
||||
#: gst/elements/gstfilesink.c:248 gst/elements/gstfilesrc.c:674
|
||||
msgid "No filename specified."
|
||||
msgstr ""
|
||||
|
||||
#: gst/elements/gstfilesink.c:244
|
||||
#: gst/elements/gstfilesink.c:255
|
||||
#, c-format
|
||||
msgid "Could not open file \"%s\" for writing."
|
||||
msgstr ""
|
||||
|
||||
#: gst/elements/gstfilesink.c:264
|
||||
#: gst/elements/gstfilesink.c:275
|
||||
#, c-format
|
||||
msgid "Error closing file \"%s\"."
|
||||
msgstr ""
|
||||
|
||||
#: gst/elements/gstfilesink.c:331 gst/elements/gstfilesink.c:363
|
||||
#: gst/elements/gstfilesink.c:415
|
||||
#: gst/elements/gstfilesink.c:342 gst/elements/gstfilesink.c:374
|
||||
#: gst/elements/gstfilesink.c:426
|
||||
#, c-format
|
||||
msgid "Error while writing to file \"%s\"."
|
||||
msgstr ""
|
||||
|
||||
#: gst/elements/gstfilesrc.c:730
|
||||
#: gst/elements/gstfilesrc.c:681
|
||||
msgid "No file specified for reading."
|
||||
msgstr ""
|
||||
|
||||
#: gst/elements/gstfilesrc.c:745 gst/elements/gstmultidisksrc.c:244
|
||||
#: gst/elements/gstfilesrc.c:696 gst/elements/gstmultidisksrc.c:244
|
||||
#, fuzzy, c-format
|
||||
msgid "Could not open file \"%s\" for reading."
|
||||
msgstr "Echoué a déterminer le type du flux"
|
||||
|
||||
#: gst/elements/gstfilesrc.c:756
|
||||
#: gst/elements/gstfilesrc.c:707
|
||||
#, c-format
|
||||
msgid "File \"%s\" isn't a regular file."
|
||||
msgstr ""
|
||||
|
||||
#: gst/elements/gstidentity.c:170
|
||||
#: gst/elements/gstidentity.c:171
|
||||
msgid "Failed after iterations as requested."
|
||||
msgstr ""
|
||||
|
||||
|
@ -618,13 +613,13 @@ msgstr "pas de conteneur \"%s\", ignoré"
|
|||
msgid "no property \"%s\" in element \"%s\""
|
||||
msgstr "pas de proprieté \"%s\" dans l'element \"%s\""
|
||||
|
||||
#: gst/parse/grammar.y:327
|
||||
#: gst/parse/grammar.y:331
|
||||
#, c-format
|
||||
msgid "could not set property \"%s\" in element \"%s\" to \"%s\""
|
||||
msgstr ""
|
||||
"impossible de definir la proprieté \"%s\" dans l'element \"%s\" comme \"%s\""
|
||||
|
||||
#: gst/parse/grammar.y:332
|
||||
#: gst/parse/grammar.y:336
|
||||
#, c-format
|
||||
msgid ""
|
||||
"could not convert \"%s\" so that it fits property \"%s\" in element \"%s\""
|
||||
|
@ -632,182 +627,194 @@ msgstr ""
|
|||
"impossible de convertir \"%s\" de manière a correspondre avec la proprieté "
|
||||
"\"%s\" dans l'element \"%s\" "
|
||||
|
||||
#: gst/parse/grammar.y:511
|
||||
#: gst/parse/grammar.y:515
|
||||
#, c-format
|
||||
msgid "could not link %s to %s"
|
||||
msgstr "impossible de connecter %s a %s"
|
||||
|
||||
#: gst/parse/grammar.y:556
|
||||
#: gst/parse/grammar.y:560
|
||||
#, c-format
|
||||
msgid "no element \"%s\""
|
||||
msgstr "pas d'element \"%s\""
|
||||
|
||||
#: gst/parse/grammar.y:607
|
||||
#: gst/parse/grammar.y:611
|
||||
#, c-format
|
||||
msgid "could not parse caps \"%s\""
|
||||
msgstr "impossible d'interpreter les capacités \"%s\""
|
||||
|
||||
#: gst/parse/grammar.y:629 gst/parse/grammar.y:683 gst/parse/grammar.y:699
|
||||
#: gst/parse/grammar.y:757
|
||||
#: gst/parse/grammar.y:633 gst/parse/grammar.y:687 gst/parse/grammar.y:703
|
||||
#: gst/parse/grammar.y:761
|
||||
msgid "link without source element"
|
||||
msgstr "lien sans element source"
|
||||
|
||||
#: gst/parse/grammar.y:635 gst/parse/grammar.y:680 gst/parse/grammar.y:766
|
||||
#: gst/parse/grammar.y:639 gst/parse/grammar.y:684 gst/parse/grammar.y:770
|
||||
msgid "link without sink element"
|
||||
msgstr "lien sans element destination"
|
||||
|
||||
#: gst/parse/grammar.y:717
|
||||
#: gst/parse/grammar.y:721
|
||||
#, c-format
|
||||
msgid "no source element for URI \"%s\""
|
||||
msgstr "pas d'element source pour l'URI \"%s\""
|
||||
|
||||
#: gst/parse/grammar.y:727
|
||||
#: gst/parse/grammar.y:731
|
||||
#, c-format
|
||||
msgid "no element to link URI \"%s\" to"
|
||||
msgstr "pas d'element avec lequel lier l'URI \"%s\""
|
||||
|
||||
#: gst/parse/grammar.y:735
|
||||
#: gst/parse/grammar.y:739
|
||||
#, c-format
|
||||
msgid "no sink element for URI \"%s\""
|
||||
msgstr "pas d'element destination pour l'URI \"%s\""
|
||||
|
||||
#: gst/parse/grammar.y:739
|
||||
#: gst/parse/grammar.y:743
|
||||
#, c-format
|
||||
msgid "could not link sink element for URI \"%s\""
|
||||
msgstr "impossible de lier un element destination pour l'URI \"%s\""
|
||||
|
||||
#: gst/parse/grammar.y:751
|
||||
#: gst/parse/grammar.y:755
|
||||
msgid "empty pipeline not allowed"
|
||||
msgstr "tube vide non autorisé"
|
||||
|
||||
#: tools/gst-launch.c:83
|
||||
#: tools/gst-inspect.c:909
|
||||
msgid "Show plugin details"
|
||||
msgstr ""
|
||||
|
||||
#: tools/gst-inspect.c:911
|
||||
msgid "Show scheduler details"
|
||||
msgstr ""
|
||||
|
||||
#: tools/gst-launch.c:79
|
||||
msgid "Execution ended after %"
|
||||
msgstr "L'execution s'est terminé après %"
|
||||
|
||||
#: tools/gst-launch.c:83
|
||||
#: tools/gst-launch.c:79
|
||||
msgid " iterations (sum %"
|
||||
msgstr "itérations (somme %"
|
||||
|
||||
#: tools/gst-launch.c:83
|
||||
#: tools/gst-launch.c:79
|
||||
msgid " ns, average %"
|
||||
msgstr "ns, moyenne %"
|
||||
|
||||
#: tools/gst-launch.c:83
|
||||
#: tools/gst-launch.c:79
|
||||
msgid " ns, min %"
|
||||
msgstr "ns, min %"
|
||||
|
||||
#: tools/gst-launch.c:83
|
||||
#: tools/gst-launch.c:79
|
||||
msgid " ns, max %"
|
||||
msgstr "ns, max %"
|
||||
|
||||
#: tools/gst-launch.c:83
|
||||
#: tools/gst-launch.c:79
|
||||
msgid " ns).\n"
|
||||
msgstr "ns).\n"
|
||||
|
||||
#: tools/gst-launch.c:103
|
||||
#: tools/gst-launch.c:99
|
||||
msgid "Usage: gst-xmllaunch <file.xml> [ element.property=value ... ]\n"
|
||||
msgstr ""
|
||||
"Utilisation: gst-xmllaunch <fichier.xml> [ element.property=valeur ... ]\n"
|
||||
|
||||
#: tools/gst-launch.c:111
|
||||
#: tools/gst-launch.c:107
|
||||
#, c-format
|
||||
msgid "ERROR: parse of xml file '%s' failed.\n"
|
||||
msgstr "ERREUR: l'interpretation du fichier xml '%s' a echoué.\n"
|
||||
|
||||
#: tools/gst-launch.c:117
|
||||
#: tools/gst-launch.c:113
|
||||
#, c-format
|
||||
msgid "ERROR: no toplevel pipeline element in file '%s'.\n"
|
||||
msgstr "ERREUR: pas d'element tube de plus haut niveau dans le fichier '%s'.\n"
|
||||
|
||||
#: tools/gst-launch.c:122
|
||||
#: tools/gst-launch.c:118
|
||||
msgid "WARNING: only one toplevel element is supported at this time."
|
||||
msgstr ""
|
||||
"AVERTISSEMENT: actuellement seul un element tube de plus haut niveau est "
|
||||
"supporté."
|
||||
|
||||
#: tools/gst-launch.c:132
|
||||
#: tools/gst-launch.c:128
|
||||
#, c-format
|
||||
msgid "ERROR: could not parse command line argument %d: %s.\n"
|
||||
msgstr ""
|
||||
"ERREUR: impossible d'interpreter l'argument de la ligne de commande numero %"
|
||||
"d: %s.\n"
|
||||
|
||||
#: tools/gst-launch.c:142
|
||||
#: tools/gst-launch.c:138
|
||||
#, c-format
|
||||
msgid "WARNING: element named '%s' not found.\n"
|
||||
msgstr "AVERTISSEMENT: l'element nommé '%s' est introuvable.\n"
|
||||
|
||||
#: tools/gst-launch.c:277
|
||||
#: tools/gst-launch.c:273
|
||||
#, c-format
|
||||
msgid "FOUND TAG : found by element \"%s\".\n"
|
||||
msgstr "TAG DECOUVERT : decouvert par l'element \"%s\".\n"
|
||||
|
||||
#: tools/gst-launch.c:354
|
||||
#: tools/gst-launch.c:350
|
||||
msgid "Output tags (also known as metadata)"
|
||||
msgstr "tags de sortie (aussi connus sous le nom de metadata)"
|
||||
|
||||
#: tools/gst-launch.c:356
|
||||
#: tools/gst-launch.c:352
|
||||
msgid "Output status information and property notifications"
|
||||
msgstr ""
|
||||
"Afficher des informations sur le status et les notifications de proprietés"
|
||||
|
||||
#: tools/gst-launch.c:358
|
||||
#: tools/gst-launch.c:354
|
||||
msgid "Do not output status information of TYPE"
|
||||
msgstr "Ne pas afficher d'informations sur les status de TYPE"
|
||||
|
||||
#: tools/gst-launch.c:358
|
||||
#: tools/gst-launch.c:354
|
||||
msgid "TYPE1,TYPE2,..."
|
||||
msgstr "TYPE1,TYPE2,..."
|
||||
|
||||
#: tools/gst-launch.c:361
|
||||
#: tools/gst-launch.c:357
|
||||
msgid "Save xml representation of pipeline to FILE and exit"
|
||||
msgstr "Sauvegarder la representation xml du tube dans FICHIER et quitter"
|
||||
|
||||
#: tools/gst-launch.c:361
|
||||
#: tools/gst-launch.c:357
|
||||
msgid "FILE"
|
||||
msgstr "FICHIER"
|
||||
|
||||
#: tools/gst-launch.c:364
|
||||
#: tools/gst-launch.c:360
|
||||
msgid "Do not install a fault handler"
|
||||
msgstr "Ne pas installer un gestionaire de dysfonctionement"
|
||||
|
||||
#: tools/gst-launch.c:366
|
||||
#: tools/gst-launch.c:362
|
||||
msgid "Print alloc trace (if enabled at compile time)"
|
||||
msgstr "Imprimer les traces d'allocations (si activées lors de la compilation)"
|
||||
|
||||
#: tools/gst-launch.c:368
|
||||
#: tools/gst-launch.c:364
|
||||
msgid "Number of times to iterate pipeline"
|
||||
msgstr "Nombres d'iterations du tube a accomplir"
|
||||
|
||||
#: tools/gst-launch.c:433
|
||||
#: tools/gst-launch.c:429
|
||||
#, c-format
|
||||
msgid "ERROR: pipeline could not be constructed: %s.\n"
|
||||
msgstr "ERREUR: le tube n'a pas pu etre construit: %s.\n"
|
||||
|
||||
#: tools/gst-launch.c:437
|
||||
#: tools/gst-launch.c:433
|
||||
msgid "ERROR: pipeline could not be constructed.\n"
|
||||
msgstr "ERREUR: le tube n'a pas pu etre construit.\n"
|
||||
|
||||
#: tools/gst-launch.c:441
|
||||
#: tools/gst-launch.c:437
|
||||
#, c-format
|
||||
msgid "WARNING: erroneous pipeline: %s\n"
|
||||
msgstr "AVERTISSEMENT: tube erroné: %s\n"
|
||||
|
||||
#: tools/gst-launch.c:442
|
||||
#: tools/gst-launch.c:438
|
||||
msgid " Trying to run anyway.\n"
|
||||
msgstr " Tentative d'execution malgrè tout.\n"
|
||||
|
||||
#: tools/gst-launch.c:466
|
||||
#: tools/gst-launch.c:462
|
||||
msgid "ERROR: the 'pipeline' element wasn't found.\n"
|
||||
msgstr "ERREUR: l'element 'tube' est introuvable.\n"
|
||||
|
||||
#: tools/gst-launch.c:473
|
||||
#: tools/gst-launch.c:469
|
||||
msgid "RUNNING pipeline ...\n"
|
||||
msgstr "EXECUTION du tube en cours ...\n"
|
||||
|
||||
#: tools/gst-launch.c:475
|
||||
#: tools/gst-launch.c:471
|
||||
msgid "ERROR: pipeline doesn't want to play.\n"
|
||||
msgstr "ERREUR: le tube refuse de s'executer.\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "application"
|
||||
#~ msgstr "emplacement"
|
||||
|
||||
#~ msgid "Failed to change state"
|
||||
#~ msgstr "Echoué a changer d'état"
|
||||
|
|
72
po/nl.po
72
po/nl.po
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: GStreamer\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2004-02-04 23:10+0100\n"
|
||||
"POT-Creation-Date: 2004-02-05 19:44+0100\n"
|
||||
"PO-Revision-Date: 2004-01-13 12:03+0100\n"
|
||||
"Last-Translator: Thomas Vander Stichele <thomas@apestaart.org>\n"
|
||||
"Language-Team: Dutch <nl@li.org>\n"
|
||||
|
@ -116,12 +116,12 @@ msgstr "Register om te gebruiken"
|
|||
msgid "REGISTRY"
|
||||
msgstr "REGISTER"
|
||||
|
||||
#: gst/gstelement.c:241
|
||||
#: gst/gstelement.c:240
|
||||
#, c-format
|
||||
msgid "ERROR: from element %s: %s\n"
|
||||
msgstr "FOUT: van element %s: %s\n"
|
||||
|
||||
#: gst/gstelement.c:243
|
||||
#: gst/gstelement.c:242
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Additional debug info:\n"
|
||||
|
@ -421,118 +421,110 @@ msgid "person(s) performing"
|
|||
msgstr "perso(o)n(en) die het stuk uitvoeren"
|
||||
|
||||
#: gst/gsttag.c:147
|
||||
msgid "application"
|
||||
msgstr "applicatie"
|
||||
|
||||
#: gst/gsttag.c:148
|
||||
msgid "application that wrote the stream"
|
||||
msgstr "applicatie die de stroom geschreven heeft"
|
||||
|
||||
#: gst/gsttag.c:152
|
||||
msgid "duration"
|
||||
msgstr "duur"
|
||||
|
||||
#: gst/gsttag.c:153
|
||||
#: gst/gsttag.c:148
|
||||
msgid "length in GStreamer time units (nanoseconds)"
|
||||
msgstr "lengte in GStreamer tijdseenheden (nanoseconden)"
|
||||
|
||||
#: gst/gsttag.c:157
|
||||
#: gst/gsttag.c:152
|
||||
msgid "codec"
|
||||
msgstr "codec"
|
||||
|
||||
#: gst/gsttag.c:158
|
||||
#: gst/gsttag.c:153
|
||||
msgid "codec the data is stored in"
|
||||
msgstr "codec waarin het stuk is opgeslagen"
|
||||
|
||||
#: gst/gsttag.c:162
|
||||
#: gst/gsttag.c:157
|
||||
msgid "bitrate"
|
||||
msgstr "bitsnelheid"
|
||||
|
||||
#: gst/gsttag.c:163
|
||||
#: gst/gsttag.c:158
|
||||
msgid "exact or average bitrate in bits/s"
|
||||
msgstr "exacte of gemiddelde bitsnelheid in bits/s"
|
||||
|
||||
#: gst/gsttag.c:167
|
||||
#: gst/gsttag.c:162
|
||||
msgid "nominal bitrate"
|
||||
msgstr "nominale bitsnelheid"
|
||||
|
||||
#: gst/gsttag.c:168
|
||||
#: gst/gsttag.c:163
|
||||
msgid "nominal bitrate in bits/s"
|
||||
msgstr "nominale bitsnelheid in bits per seconde"
|
||||
|
||||
#: gst/gsttag.c:172
|
||||
#: gst/gsttag.c:167
|
||||
msgid "minimum bitrate"
|
||||
msgstr "minimum bitsnelheid"
|
||||
|
||||
#: gst/gsttag.c:173
|
||||
#: gst/gsttag.c:168
|
||||
msgid "minimum bitrate in bits/s"
|
||||
msgstr "minimum bitsnelheid in bits per seconde"
|
||||
|
||||
#: gst/gsttag.c:177
|
||||
#: gst/gsttag.c:172
|
||||
msgid "maximum bitrate"
|
||||
msgstr "maximum bitsnelheid"
|
||||
|
||||
#: gst/gsttag.c:178
|
||||
#: gst/gsttag.c:173
|
||||
msgid "maximum bitrate in bits/s"
|
||||
msgstr "maximum bitsnelheid in bits per seconde"
|
||||
|
||||
#: gst/gsttag.c:182
|
||||
#: gst/gsttag.c:177
|
||||
msgid "encoder"
|
||||
msgstr "encoder"
|
||||
|
||||
#: gst/gsttag.c:183
|
||||
#: gst/gsttag.c:178
|
||||
msgid "encoder used to encode this stream"
|
||||
msgstr "encoder gebruikt om deze stroom te encoderen"
|
||||
|
||||
#: gst/gsttag.c:187
|
||||
#: gst/gsttag.c:182
|
||||
msgid "encoder version"
|
||||
msgstr "encoder versie"
|
||||
|
||||
#: gst/gsttag.c:188
|
||||
#: gst/gsttag.c:183
|
||||
msgid "version of the encoder used to encode this stream"
|
||||
msgstr "versie van de encoder gebruikt om deze stroom te encoderen"
|
||||
|
||||
#: gst/gsttag.c:192
|
||||
#: gst/gsttag.c:187
|
||||
msgid "serial"
|
||||
msgstr "volgnummer"
|
||||
|
||||
#: gst/gsttag.c:193
|
||||
#: gst/gsttag.c:188
|
||||
msgid "serial number of track"
|
||||
msgstr "volgnummer van dit nummer"
|
||||
|
||||
#: gst/gsttag.c:197
|
||||
#: gst/gsttag.c:192
|
||||
msgid "replaygain track gain"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:198
|
||||
#: gst/gsttag.c:193
|
||||
msgid "track gain in db"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:202
|
||||
#: gst/gsttag.c:197
|
||||
msgid "replaygain track peak"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:203
|
||||
#: gst/gsttag.c:198
|
||||
msgid "peak of the track"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:207
|
||||
#: gst/gsttag.c:202
|
||||
msgid "replaygain album gain"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:208
|
||||
#: gst/gsttag.c:203
|
||||
msgid "album gain in db"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:212
|
||||
#: gst/gsttag.c:207
|
||||
msgid "replaygain album peak"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:213
|
||||
#: gst/gsttag.c:208
|
||||
msgid "peak of the album"
|
||||
msgstr ""
|
||||
|
||||
#: gst/gsttag.c:251
|
||||
#: gst/gsttag.c:246
|
||||
msgid ", "
|
||||
msgstr ", "
|
||||
|
||||
|
@ -799,3 +791,9 @@ msgstr "BEZIG met pijplijn ...\n"
|
|||
#: tools/gst-launch.c:471
|
||||
msgid "ERROR: pipeline doesn't want to play.\n"
|
||||
msgstr "FOUT: pijplijn wil niet spelen.\n"
|
||||
|
||||
#~ msgid "application"
|
||||
#~ msgstr "applicatie"
|
||||
|
||||
#~ msgid "application that wrote the stream"
|
||||
#~ msgstr "applicatie die de stroom geschreven heeft"
|
||||
|
|
Loading…
Reference in a new issue