update translations update release doc change ERROR to WARNING for GStreamer errors being signaled

Original commit message from CVS:
update translations
update release doc
change ERROR to WARNING for GStreamer errors being signaled
This commit is contained in:
Thomas Vander Stichele 2004-02-26 14:19:01 +00:00
parent bacf783293
commit b96dde3be0
12 changed files with 732 additions and 176 deletions

View file

@ -1,3 +1,14 @@
2004-02-26 Thomas Vander Stichele <thomas at apestaart dot org>
* docs/random/release:
update release strategy
* gst/gstelement.h:
log errors as WARNING since they're recoverable
* po/fr.po:
auto-update po file
* po/nl.po:
update dutch translation
2004-02-25 Thomas Vander Stichele <thomas at apestaart dot org>
* docs/manual/debugging.xml:
@ -14,7 +25,7 @@
* gst/gstelement.c (gst_element_dispose): Protect against multiple
invocations.
* gst/schedulers/gstoptimalscheduler.c
* gst/schedulers/gstoptimalscheduler.c:
I added a mess of prototypes at the top of the file by way of
documentation. Some of the operations on chains and groups were
re-organized.
@ -141,6 +152,7 @@
* gst/elements/gstfilesink.c: (gst_filesink_open_file):
* gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
* gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
fix errors
2004-02-20 Andy Wingo <wingo@pobox.com>
@ -296,11 +308,11 @@
* gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
an error was thrown by osssink. Basically a state change failure for
an element in a different scheduling group was considered as successfull
, which means that caps nego was going on and weird stuff happened. Like
i wrote in the comment there, if someone want to revert that please
drop me a mail explaining why because i really see no point in keeping
that broken behaviour there.
an element in a different scheduling group was considered as
successful, which means that caps nego was going on and weird stuff
happened. Like I wrote in the comment there, if someone wants to
revert that please drop me a mail explaining why because I really see
no point in keeping that broken behaviour there.
* gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
be empty, we then return NULL which will trigger a nice error when
pulling from the pad.
@ -593,7 +605,7 @@
2004-02-09 Julien MOUTTE <julien@moutte.net>
* gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
because data_unref has one and i prefer the debug to be symetric.
because data_unref has one and I prefer the debug to be symetric.
* gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
were refed when added to the queue and unrefed only once when the queue
was flushed. Now the flush handler unref the buffers two times : first

2
common

@ -1 +1 @@
Subproject commit 0945c85c4c9139e2e5b8e04d0fc841b8aa1e6e9b
Subproject commit 874dab5c3461ad7487f1ae029256b6da82dddf6d

View file

@ -0,0 +1,5 @@
<chapter id="chapter-clocks">
<title>Clocks in GStreamer</title>
<para>
</para>
</chapter>

View 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.&image;" 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>

View 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>

View 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>

View 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 &lt;stdlib.h&gt;
#include &lt;gst/gst.h&gt;
gboolean playing;
int
main (int argc, char *argv[])
{
GstElement *filesrc, *osssink, *queue, *queue2, *decode;
GstElement *bin;
GstElement *thread, *thread2;
gst_init (&amp;argc,&amp;argv);
if (argc != 2) {
g_print ("usage: %s &lt;mp3 filename&gt;\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 &lt;stdlib.h&gt;
#include &lt;gst/gst.h&gt;
int
main(int argc, char *argv[])
{
GstXML *xml;
GstElement *bin;
gboolean ret;
gst_init (&amp;argc, &amp;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>
...
&lt;gst:element&gt;
&lt;gst:name&gt;thread&lt;/gst:name&gt;
&lt;gst:type&gt;thread&lt;/gst:type&gt;
&lt;gst:version&gt;0.1.0&lt;/gst:version&gt;
...
&lt;/gst:children&gt;
&lt;test:comment&gt;
&lt;test:text&gt;decoder thread&lt;/test:text&gt;
&lt;/test:comment&gt;
&lt;/gst:element&gt;
...
</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-&gt;xmlChildrenNode;
while (children) {
if (!strcmp (children-&gt;name, "comment")) {
xmlNodePtr nodes = children-&gt;xmlChildrenNode;
while (nodes) {
if (!strcmp (nodes-&gt;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-&gt;next;
}
}
children = children-&gt;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>

View 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>

View file

@ -37,6 +37,7 @@ TODO :
- with 0.3.3 as an example, tag is BRANCH-RELEASE-0_3_3
cvs tag BRANCH-RELEASE-0_3_3-ROOT
cvs tag -b BRANCH-RELEASE-0_3_3
- update your local copy to the branch:
cvs update -r BRANCH-RELEASE-0_3_3
- Set the nano to 2 (in configure.ac, AS_VERSION)
- Do all updates/patches/changes for the release tarball in this branch

View file

@ -144,7 +144,7 @@ typedef enum {
#define GST_ELEMENT_ERROR(el, domain, code, message, debug) G_STMT_START { \
gchar *__msg = _gst_element_error_printf message; \
gchar *__dbg = _gst_element_error_printf debug; \
GST_ERROR_OBJECT (el, "%s", __dbg); \
GST_WARNING_OBJECT (el, "%s", __dbg); \
gst_element_error_full (GST_ELEMENT(el), \
GST_ ## domain ## _ERROR, GST_ ## domain ## _ERROR_ ## code, \
__msg, __dbg, __FILE__, GST_FUNCTION, __LINE__); \

210
po/fr.po
View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: GStreamer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2004-02-17 19:22+0100\n"
"POT-Creation-Date: 2004-02-25 19:28+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"
@ -118,14 +118,14 @@ msgstr "Registre a utiliser"
msgid "REGISTRY"
msgstr "REGISTRE"
#: gst/gstelement.c:241
#: gst/gstelement.c:242
#, fuzzy, c-format
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:243
#: gst/gstelement.c:244
#, c-format
msgid ""
"Additional debug info:\n"
@ -298,249 +298,289 @@ msgstr ""
msgid "No standard error message for domain %s and code %d."
msgstr ""
#: gst/gsttag.c:62
#: gst/gsttag.c:81
msgid "title"
msgstr "titre"
#: gst/gsttag.c:63
#: gst/gsttag.c:82
msgid "commonly used title"
msgstr "titre utilisé habituellement"
#: gst/gsttag.c:67
#: gst/gsttag.c:86
msgid "artist"
msgstr "artiste"
#: gst/gsttag.c:68
#: gst/gsttag.c:87
msgid "person(s) responsible for the recording"
msgstr "personne(s) responsable(s) de l'enregistrement"
#: gst/gsttag.c:72
#: gst/gsttag.c:91
msgid "album"
msgstr "album"
#: gst/gsttag.c:73
#: gst/gsttag.c:92
msgid "album containing this data"
msgstr "album contenant cette donnée"
#: gst/gsttag.c:77
#: gst/gsttag.c:96
msgid "date"
msgstr "date"
#: gst/gsttag.c:78
#: gst/gsttag.c:97
msgid "date the data was created (in Julian calendar days)"
msgstr "date a laquelle la donnée fut créée (selon le calendrier Julienne)"
#: gst/gsttag.c:82
#: gst/gsttag.c:101
msgid "genre"
msgstr "genre"
#: gst/gsttag.c:83
#: gst/gsttag.c:102
msgid "genre this data belongs to"
msgstr "genre auquel cette donnée appartient"
#: gst/gsttag.c:87
#: gst/gsttag.c:106
msgid "comment"
msgstr "commentaire"
#: gst/gsttag.c:88
#: gst/gsttag.c:107
msgid "free text commenting the data"
msgstr "texte libre décrivant la donnée"
#: gst/gsttag.c:92
#: gst/gsttag.c:111
msgid "track number"
msgstr "numéro de piste"
#: gst/gsttag.c:93
#: gst/gsttag.c:112
msgid "track number inside a collection"
msgstr "numéro de piste au sein d'une collection"
#: gst/gsttag.c:97
#: gst/gsttag.c:116
msgid "track count"
msgstr "nombre de pistes"
#: gst/gsttag.c:98
#: gst/gsttag.c:117
msgid "count of tracks inside collection this track belongs to"
msgstr "nombre de pistes dans la collection dont cette donnée fait partie"
#: gst/gsttag.c:102
#: gst/gsttag.c:121
#, fuzzy
msgid "disc number"
msgstr "numéro de piste"
#: gst/gsttag.c:122
#, fuzzy
msgid "disc number inside a collection"
msgstr "numéro de piste au sein d'une collection"
#: gst/gsttag.c:126
#, fuzzy
msgid "disc count"
msgstr "nombre de pistes"
#: gst/gsttag.c:127
#, fuzzy
msgid "count of discs inside collection this disc belongs to"
msgstr "nombre de pistes dans la collection dont cette donnée fait partie"
#: gst/gsttag.c:131
msgid "location"
msgstr "emplacement"
#: gst/gsttag.c:103
#: gst/gsttag.c:132
msgid "original location of file as a URI"
msgstr "emplacement original du fichier en tant qu'un URI"
#: gst/gsttag.c:107
#: gst/gsttag.c:136
msgid "description"
msgstr "description"
#: gst/gsttag.c:108
#: gst/gsttag.c:137
msgid "short text describing the content of the data"
msgstr "texte court décrivant le contenu de la donnée"
#: gst/gsttag.c:112
#: gst/gsttag.c:141
msgid "version"
msgstr "version"
#: gst/gsttag.c:113
#: gst/gsttag.c:142
msgid "version of this data"
msgstr "version de cette donnée"
#: gst/gsttag.c:117
#: gst/gsttag.c:146
msgid "ISRC"
msgstr "ISRC"
#: gst/gsttag.c:118
#: gst/gsttag.c:147
msgid "International Standard Recording Code - see http://www.ifpi.org/isrc/"
msgstr "International Standard Recording Code - voir http://www.ifpi.org/isrc/"
#: gst/gsttag.c:122 gst/gsttag.c:123
#: gst/gsttag.c:151 gst/gsttag.c:152
msgid "organization"
msgstr "organisation"
#: gst/gsttag.c:127
#: gst/gsttag.c:156
msgid "copyright"
msgstr "droit de copie"
#: gst/gsttag.c:128
#: gst/gsttag.c:157
msgid "copyright notice of the data"
msgstr "information sur le droit de copie de la donnée"
#: gst/gsttag.c:132
#: gst/gsttag.c:161
msgid "contact"
msgstr "contact"
#: gst/gsttag.c:133
#: gst/gsttag.c:162
msgid "contact information"
msgstr "information sur le contact"
#: gst/gsttag.c:137
#: gst/gsttag.c:166
msgid "license"
msgstr "license"
#: gst/gsttag.c:138
#: gst/gsttag.c:167
msgid "license of data"
msgstr "license de la donnée"
#: gst/gsttag.c:142
#: gst/gsttag.c:171
msgid "performer"
msgstr "interprète"
#: gst/gsttag.c:143
#: gst/gsttag.c:172
msgid "person(s) performing"
msgstr "personne(s) qui interprète(nt)"
#: gst/gsttag.c:147
#: gst/gsttag.c:176
msgid "duration"
msgstr "durèe"
#: gst/gsttag.c:148
#: gst/gsttag.c:177
msgid "length in GStreamer time units (nanoseconds)"
msgstr "longueur en unité de temps GStreamer (nanosecondes)"
#: gst/gsttag.c:152
#: gst/gsttag.c:181
msgid "codec"
msgstr "codec"
#: gst/gsttag.c:153
#: gst/gsttag.c:182
msgid "codec the data is stored in"
msgstr "codec avec lequel la donnée fut enregistrée"
#: gst/gsttag.c:157
#: gst/gsttag.c:186
#, fuzzy
msgid "video-codec"
msgstr "codec"
#: gst/gsttag.c:187
#, fuzzy
msgid "codec the video data is stored in"
msgstr "codec avec lequel la donnée fut enregistrée"
#: gst/gsttag.c:191
#, fuzzy
msgid "audio-codec"
msgstr "codec"
#: gst/gsttag.c:192
#, fuzzy
msgid "codec the audio data is stored in"
msgstr "codec avec lequel la donnée fut enregistrée"
#: gst/gsttag.c:196
msgid "bitrate"
msgstr "bitrate"
#: gst/gsttag.c:158
#: gst/gsttag.c:197
msgid "exact or average bitrate in bits/s"
msgstr "bitrate exact ou moyen en bits par seconde"
#: gst/gsttag.c:162
#: gst/gsttag.c:201
#, fuzzy
msgid "nominal bitrate"
msgstr "bitrate minimum"
#: gst/gsttag.c:163
#: gst/gsttag.c:202
#, fuzzy
msgid "nominal bitrate in bits/s"
msgstr "bitrate minimum en bits par seconde"
#: gst/gsttag.c:167
#: gst/gsttag.c:206
msgid "minimum bitrate"
msgstr "bitrate minimum"
#: gst/gsttag.c:168
#: gst/gsttag.c:207
msgid "minimum bitrate in bits/s"
msgstr "bitrate minimum en bits par seconde"
#: gst/gsttag.c:172
#: gst/gsttag.c:211
msgid "maximum bitrate"
msgstr "bitrate maximum"
#: gst/gsttag.c:173
#: gst/gsttag.c:212
msgid "maximum bitrate in bits/s"
msgstr "bitrate maximum en bits par seconde"
#: gst/gsttag.c:177
#: gst/gsttag.c:216
#, fuzzy
msgid "encoder"
msgstr "codec"
#: gst/gsttag.c:178
#: gst/gsttag.c:217
#, fuzzy
msgid "encoder used to encode this stream"
msgstr "Echoué a déterminer le type du flux"
#: gst/gsttag.c:182
#: gst/gsttag.c:221
#, fuzzy
msgid "encoder version"
msgstr "version"
#: gst/gsttag.c:183
#: gst/gsttag.c:222
msgid "version of the encoder used to encode this stream"
msgstr ""
#: gst/gsttag.c:187
#: gst/gsttag.c:226
msgid "serial"
msgstr ""
#: gst/gsttag.c:188
#: gst/gsttag.c:227
msgid "serial number of track"
msgstr ""
#: gst/gsttag.c:192
#: gst/gsttag.c:231
msgid "replaygain track gain"
msgstr ""
#: gst/gsttag.c:193
#: gst/gsttag.c:232
msgid "track gain in db"
msgstr ""
#: gst/gsttag.c:197
#: gst/gsttag.c:236
msgid "replaygain track peak"
msgstr ""
#: gst/gsttag.c:198
#: gst/gsttag.c:237
msgid "peak of the track"
msgstr ""
#: gst/gsttag.c:202
#: gst/gsttag.c:241
msgid "replaygain album gain"
msgstr ""
#: gst/gsttag.c:203
#: gst/gsttag.c:242
#, fuzzy
msgid "album gain in db"
msgstr "album contenant cette donnée"
#: gst/gsttag.c:207
#: gst/gsttag.c:246
msgid "replaygain album peak"
msgstr ""
#: gst/gsttag.c:208
#: gst/gsttag.c:247
msgid "peak of the album"
msgstr ""
#: gst/gsttag.c:246
#: gst/gsttag.c:285
msgid ", "
msgstr ", "
@ -549,9 +589,10 @@ msgstr ", "
msgid "There is no element present to handle the stream's mime type %s."
msgstr ""
#: gst/elements/gstfilesink.c:248 gst/elements/gstfilesrc.c:676
msgid "No filename specified."
msgstr ""
#: gst/elements/gstfilesink.c:248
#, fuzzy
msgid "No file name specified for writing."
msgstr "Echoué a déterminer le type du flux"
#: gst/elements/gstfilesink.c:255
#, c-format
@ -569,16 +610,17 @@ msgstr ""
msgid "Error while writing to file \"%s\"."
msgstr ""
#: gst/elements/gstfilesrc.c:683
msgid "No file specified for reading."
msgstr ""
#: gst/elements/gstfilesrc.c:676 gst/elements/gstmultifilesrc.c:242
#, fuzzy
msgid "No file name specified for reading."
msgstr "Echoué a déterminer le type du flux"
#: gst/elements/gstfilesrc.c:698 gst/elements/gstmultifilesrc.c:244
#: gst/elements/gstfilesrc.c:691 gst/elements/gstmultifilesrc.c:250
#, fuzzy, c-format
msgid "Could not open file \"%s\" for reading."
msgstr "Echoué a déterminer le type du flux"
#: gst/elements/gstfilesrc.c:709
#: gst/elements/gstfilesrc.c:702
#, c-format
msgid "File \"%s\" isn't a regular file."
msgstr ""
@ -632,59 +674,59 @@ msgstr ""
"impossible de convertir \"%s\" de manière a correspondre avec la proprieté "
"\"%s\" dans l'element \"%s\" "
#: gst/parse/grammar.y:515
#: gst/parse/grammar.y:516
#, c-format
msgid "could not link %s to %s"
msgstr "impossible de connecter %s a %s"
#: gst/parse/grammar.y:560
#: gst/parse/grammar.y:561
#, c-format
msgid "no element \"%s\""
msgstr "pas d'element \"%s\""
#: gst/parse/grammar.y:611
#: gst/parse/grammar.y:612
#, c-format
msgid "could not parse caps \"%s\""
msgstr "impossible d'interpreter les capacités \"%s\""
#: gst/parse/grammar.y:633 gst/parse/grammar.y:687 gst/parse/grammar.y:703
#: gst/parse/grammar.y:761
#: gst/parse/grammar.y:634 gst/parse/grammar.y:688 gst/parse/grammar.y:704
#: gst/parse/grammar.y:762
msgid "link without source element"
msgstr "lien sans element source"
#: gst/parse/grammar.y:639 gst/parse/grammar.y:684 gst/parse/grammar.y:770
#: gst/parse/grammar.y:640 gst/parse/grammar.y:685 gst/parse/grammar.y:771
msgid "link without sink element"
msgstr "lien sans element destination"
#: gst/parse/grammar.y:721
#: gst/parse/grammar.y:722
#, c-format
msgid "no source element for URI \"%s\""
msgstr "pas d'element source pour l'URI \"%s\""
#: gst/parse/grammar.y:731
#: gst/parse/grammar.y:732
#, c-format
msgid "no element to link URI \"%s\" to"
msgstr "pas d'element avec lequel lier l'URI \"%s\""
#: gst/parse/grammar.y:739
#: gst/parse/grammar.y:740
#, c-format
msgid "no sink element for URI \"%s\""
msgstr "pas d'element destination pour l'URI \"%s\""
#: gst/parse/grammar.y:743
#: gst/parse/grammar.y:744
#, 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:755
#: gst/parse/grammar.y:756
msgid "empty pipeline not allowed"
msgstr "tube vide non autorisé"
#: tools/gst-inspect.c:909
#: tools/gst-inspect.c:916
msgid "Show plugin details"
msgstr ""
#: tools/gst-inspect.c:911
#: tools/gst-inspect.c:918
msgid "Show scheduler details"
msgstr ""

203
po/nl.po
View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: GStreamer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2004-02-17 19:22+0100\n"
"POT-Creation-Date: 2004-02-25 19:28+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:242
#, c-format
msgid "ERROR: from element %s: %s\n"
msgstr "FOUT: van element %s: %s\n"
#: gst/gstelement.c:243
#: gst/gstelement.c:244
#, c-format
msgid ""
"Additional debug info:\n"
@ -287,244 +287,278 @@ msgstr "Geen foutboodschap voor domein %s."
msgid "No standard error message for domain %s and code %d."
msgstr "Geen standaard foutboodschap voor domein %s en code %d."
#: gst/gsttag.c:62
#: gst/gsttag.c:81
msgid "title"
msgstr "titel"
#: gst/gsttag.c:63
#: gst/gsttag.c:82
msgid "commonly used title"
msgstr "vaak gebruikte titel"
#: gst/gsttag.c:67
#: gst/gsttag.c:86
msgid "artist"
msgstr "artiest"
#: gst/gsttag.c:68
#: gst/gsttag.c:87
msgid "person(s) responsible for the recording"
msgstr "perso(o)n(en) die de opname gemaakt hebben"
#: gst/gsttag.c:72
#: gst/gsttag.c:91
msgid "album"
msgstr "album"
#: gst/gsttag.c:73
#: gst/gsttag.c:92
msgid "album containing this data"
msgstr "album waarop dit stuk staat"
#: gst/gsttag.c:77
#: gst/gsttag.c:96
msgid "date"
msgstr "datum"
#: gst/gsttag.c:78
#: gst/gsttag.c:97
msgid "date the data was created (in Julian calendar days)"
msgstr "datum waarop het stuk gemaakt is (in Juliaanse kalenderdagen)"
#: gst/gsttag.c:82
#: gst/gsttag.c:101
msgid "genre"
msgstr "genre"
#: gst/gsttag.c:83
#: gst/gsttag.c:102
msgid "genre this data belongs to"
msgstr "genre van het stuk"
#: gst/gsttag.c:87
#: gst/gsttag.c:106
msgid "comment"
msgstr "commentaar"
#: gst/gsttag.c:88
#: gst/gsttag.c:107
msgid "free text commenting the data"
msgstr "vrij te kiezen commentaartekst die het stuk beschrijft"
#: gst/gsttag.c:92
#: gst/gsttag.c:111
msgid "track number"
msgstr "nummer"
#: gst/gsttag.c:93
#: gst/gsttag.c:112
msgid "track number inside a collection"
msgstr "nummer van het stuk op een verzameling"
#: gst/gsttag.c:97
#: gst/gsttag.c:116
msgid "track count"
msgstr "aantal nummers"
#: gst/gsttag.c:98
#: gst/gsttag.c:117
msgid "count of tracks inside collection this track belongs to"
msgstr "aantal nummers van de verzameling waarop dit stuk staat"
#: gst/gsttag.c:102
#: gst/gsttag.c:121
msgid "disc number"
msgstr "discnummer"
#: gst/gsttag.c:122
msgid "disc number inside a collection"
msgstr "nummer van de disc in een verzameling"
#: gst/gsttag.c:126
msgid "disc count"
msgstr "aantal discs"
#: gst/gsttag.c:127
msgid "count of discs inside collection this disc belongs to"
msgstr "aantal discs van de verzameling waartoe deze disc behoort"
#: gst/gsttag.c:131
msgid "location"
msgstr "locatie"
#: gst/gsttag.c:103
#: gst/gsttag.c:132
msgid "original location of file as a URI"
msgstr "originele locatie van bestand als een URI"
#: gst/gsttag.c:107
#: gst/gsttag.c:136
msgid "description"
msgstr "omschrijving"
#: gst/gsttag.c:108
#: gst/gsttag.c:137
msgid "short text describing the content of the data"
msgstr "korte tekst die de inhoud van het stuk omschrijft"
#: gst/gsttag.c:112
#: gst/gsttag.c:141
msgid "version"
msgstr "versie"
#: gst/gsttag.c:113
#: gst/gsttag.c:142
msgid "version of this data"
msgstr "versie van dit stuk"
#: gst/gsttag.c:117
#: gst/gsttag.c:146
msgid "ISRC"
msgstr "ISRC"
#: gst/gsttag.c:118
#: gst/gsttag.c:147
msgid "International Standard Recording Code - see http://www.ifpi.org/isrc/"
msgstr ""
"Internationale Standaard Recording Code - zie http://www.ifpi.org/isrc/"
#: gst/gsttag.c:122 gst/gsttag.c:123
#: gst/gsttag.c:151 gst/gsttag.c:152
msgid "organization"
msgstr "organizatie"
#: gst/gsttag.c:127
#: gst/gsttag.c:156
msgid "copyright"
msgstr "copyright"
#: gst/gsttag.c:128
#: gst/gsttag.c:157
msgid "copyright notice of the data"
msgstr "copyright-notitie van het stuk"
#: gst/gsttag.c:132
#: gst/gsttag.c:161
msgid "contact"
msgstr "contact"
#: gst/gsttag.c:133
#: gst/gsttag.c:162
msgid "contact information"
msgstr "contactinformatie"
#: gst/gsttag.c:137
#: gst/gsttag.c:166
msgid "license"
msgstr "licentie"
#: gst/gsttag.c:138
#: gst/gsttag.c:167
msgid "license of data"
msgstr "licentie van het stuk"
#: gst/gsttag.c:142
#: gst/gsttag.c:171
msgid "performer"
msgstr "uitvoerder"
#: gst/gsttag.c:143
#: gst/gsttag.c:172
msgid "person(s) performing"
msgstr "perso(o)n(en) die het stuk uitvoeren"
#: gst/gsttag.c:147
#: gst/gsttag.c:176
msgid "duration"
msgstr "duur"
#: gst/gsttag.c:148
#: gst/gsttag.c:177
msgid "length in GStreamer time units (nanoseconds)"
msgstr "lengte in GStreamer tijdseenheden (nanoseconden)"
#: gst/gsttag.c:152
#: gst/gsttag.c:181
msgid "codec"
msgstr "codec"
#: gst/gsttag.c:153
#: gst/gsttag.c:182
msgid "codec the data is stored in"
msgstr "codec waarin het stuk is opgeslagen"
#: gst/gsttag.c:157
#: gst/gsttag.c:186
#, fuzzy
msgid "video-codec"
msgstr "video codec"
#: gst/gsttag.c:187
msgid "codec the video data is stored in"
msgstr "video codec waarin het stuk is opgeslagen"
#: gst/gsttag.c:191
#, fuzzy
msgid "audio-codec"
msgstr "audio codec"
#: gst/gsttag.c:192
msgid "codec the audio data is stored in"
msgstr "audio codec waarin het stuk is opgeslagen"
#: gst/gsttag.c:196
msgid "bitrate"
msgstr "bitsnelheid"
#: gst/gsttag.c:158
#: gst/gsttag.c:197
msgid "exact or average bitrate in bits/s"
msgstr "exacte of gemiddelde bitsnelheid in bits/s"
#: gst/gsttag.c:162
#: gst/gsttag.c:201
msgid "nominal bitrate"
msgstr "nominale bitsnelheid"
#: gst/gsttag.c:163
#: gst/gsttag.c:202
msgid "nominal bitrate in bits/s"
msgstr "nominale bitsnelheid in bits per seconde"
#: gst/gsttag.c:167
#: gst/gsttag.c:206
msgid "minimum bitrate"
msgstr "minimum bitsnelheid"
#: gst/gsttag.c:168
#: gst/gsttag.c:207
msgid "minimum bitrate in bits/s"
msgstr "minimum bitsnelheid in bits per seconde"
#: gst/gsttag.c:172
#: gst/gsttag.c:211
msgid "maximum bitrate"
msgstr "maximum bitsnelheid"
#: gst/gsttag.c:173
#: gst/gsttag.c:212
msgid "maximum bitrate in bits/s"
msgstr "maximum bitsnelheid in bits per seconde"
#: gst/gsttag.c:177
#: gst/gsttag.c:216
msgid "encoder"
msgstr "encoder"
#: gst/gsttag.c:178
#: gst/gsttag.c:217
msgid "encoder used to encode this stream"
msgstr "encoder gebruikt om deze stroom te encoderen"
#: gst/gsttag.c:182
#: gst/gsttag.c:221
msgid "encoder version"
msgstr "encoder versie"
#: gst/gsttag.c:183
#: gst/gsttag.c:222
msgid "version of the encoder used to encode this stream"
msgstr "versie van de encoder gebruikt om deze stroom te encoderen"
#: gst/gsttag.c:187
#: gst/gsttag.c:226
msgid "serial"
msgstr "volgnummer"
#: gst/gsttag.c:188
#: gst/gsttag.c:227
msgid "serial number of track"
msgstr "volgnummer van dit nummer"
#: gst/gsttag.c:192
#: gst/gsttag.c:231
msgid "replaygain track gain"
msgstr ""
#: gst/gsttag.c:193
#: gst/gsttag.c:232
msgid "track gain in db"
msgstr ""
#: gst/gsttag.c:197
#: gst/gsttag.c:236
msgid "replaygain track peak"
msgstr ""
#: gst/gsttag.c:198
#: gst/gsttag.c:237
msgid "peak of the track"
msgstr ""
#: gst/gsttag.c:202
#: gst/gsttag.c:241
msgid "replaygain album gain"
msgstr ""
#: gst/gsttag.c:203
#: gst/gsttag.c:242
msgid "album gain in db"
msgstr ""
#: gst/gsttag.c:207
#: gst/gsttag.c:246
msgid "replaygain album peak"
msgstr ""
#: gst/gsttag.c:208
#: gst/gsttag.c:247
msgid "peak of the album"
msgstr ""
#: gst/gsttag.c:246
#: gst/gsttag.c:285
msgid ", "
msgstr ", "
@ -534,9 +568,9 @@ msgid "There is no element present to handle the stream's mime type %s."
msgstr ""
"Er is geen element aanwezig die het mime-type %s van de stroom kan verwerken."
#: gst/elements/gstfilesink.c:248 gst/elements/gstfilesrc.c:676
msgid "No filename specified."
msgstr "Geen bestandsnaam gegeven."
#: gst/elements/gstfilesink.c:248
msgid "No file name specified for writing."
msgstr "Geen bestandsnaam gegeven om te schrijven."
#: gst/elements/gstfilesink.c:255
#, c-format
@ -554,16 +588,16 @@ msgstr "Fout bij het sluiten van bestand \"%s\"."
msgid "Error while writing to file \"%s\"."
msgstr "Fout bij het schrijven naar bestand \"%s\"."
#: gst/elements/gstfilesrc.c:683
msgid "No file specified for reading."
#: gst/elements/gstfilesrc.c:676 gst/elements/gstmultifilesrc.c:242
msgid "No file name specified for reading."
msgstr "Geen bestandsnaam gegeven om te lezen."
#: gst/elements/gstfilesrc.c:698 gst/elements/gstmultifilesrc.c:244
#: gst/elements/gstfilesrc.c:691 gst/elements/gstmultifilesrc.c:250
#, c-format
msgid "Could not open file \"%s\" for reading."
msgstr "Kon bestand \"%s\" niet openen om te lezen."
#: gst/elements/gstfilesrc.c:709
#: gst/elements/gstfilesrc.c:702
#, c-format
msgid "File \"%s\" isn't a regular file."
msgstr "Bestand \"%s\" is geen gewoon bestand."
@ -616,59 +650,59 @@ msgstr ""
"kon \"%s\" niet omzetten zodat het in eigenschap \"%s\" in element \"%s\" "
"past"
#: gst/parse/grammar.y:515
#: gst/parse/grammar.y:516
#, c-format
msgid "could not link %s to %s"
msgstr "kon %s niet verbinden met %s"
#: gst/parse/grammar.y:560
#: gst/parse/grammar.y:561
#, c-format
msgid "no element \"%s\""
msgstr "geen element \"%s\""
#: gst/parse/grammar.y:611
#: gst/parse/grammar.y:612
#, c-format
msgid "could not parse caps \"%s\""
msgstr "kon mogelijkheden \"%s\" niet verwerken"
#: gst/parse/grammar.y:633 gst/parse/grammar.y:687 gst/parse/grammar.y:703
#: gst/parse/grammar.y:761
#: gst/parse/grammar.y:634 gst/parse/grammar.y:688 gst/parse/grammar.y:704
#: gst/parse/grammar.y:762
msgid "link without source element"
msgstr "verbinding zonder bronelement"
#: gst/parse/grammar.y:639 gst/parse/grammar.y:684 gst/parse/grammar.y:770
#: gst/parse/grammar.y:640 gst/parse/grammar.y:685 gst/parse/grammar.y:771
msgid "link without sink element"
msgstr "verbinding zonder doelelement"
#: gst/parse/grammar.y:721
#: gst/parse/grammar.y:722
#, c-format
msgid "no source element for URI \"%s\""
msgstr "geen bronelement voor URI \"%s\""
#: gst/parse/grammar.y:731
#: gst/parse/grammar.y:732
#, c-format
msgid "no element to link URI \"%s\" to"
msgstr "geen element om URI \"%s\" mee te verbinden"
#: gst/parse/grammar.y:739
#: gst/parse/grammar.y:740
#, c-format
msgid "no sink element for URI \"%s\""
msgstr "geen doelelement voor URI \"%s\""
#: gst/parse/grammar.y:743
#: gst/parse/grammar.y:744
#, c-format
msgid "could not link sink element for URI \"%s\""
msgstr "kon doelelement niet verbinden voor URI \"%s\""
#: gst/parse/grammar.y:755
#: gst/parse/grammar.y:756
msgid "empty pipeline not allowed"
msgstr "lege pijplijn niet toegelaten"
#: tools/gst-inspect.c:909
#: tools/gst-inspect.c:916
msgid "Show plugin details"
msgstr "Toon details van plugins"
#: tools/gst-inspect.c:911
#: tools/gst-inspect.c:918
msgid "Show scheduler details"
msgstr "Toon details van planner"
@ -798,6 +832,9 @@ msgstr "BEZIG met pijplijn ...\n"
msgid "ERROR: pipeline doesn't want to play.\n"
msgstr "FOUT: pijplijn wil niet spelen.\n"
#~ msgid "No filename specified."
#~ msgstr "Geen bestandsnaam gegeven."
#~ msgid "application"
#~ msgstr "applicatie"