mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-10-02 08:42:32 +00:00
docs/manual/: - Explicitely include glib.h.
Original commit message from CVS: patch by: Luc Pionchon <luc.pionchon@nokia.com> * docs/manual/basics-helloworld.xml: * docs/manual/hello-world.fig: - Explicitely include glib.h. - Do not use global variables. - Use g_printerr() instead of g_print(). - Minor formating/renaming to increase readibility. - Renamed new_pad() to on_pad_added() - Improved explenatory comments. - renamed ogg parser to ogg demuxer - Use "autoaudiosink" instead of "alsasink". Fixes: #538619
This commit is contained in:
parent
954ddd9645
commit
4302aa48c2
3 changed files with 231 additions and 82 deletions
16
ChangeLog
16
ChangeLog
|
@ -1,3 +1,19 @@
|
||||||
|
2008-06-25 Stefan Kost <ensonic@users.sf.net>
|
||||||
|
|
||||||
|
patch by: Luc Pionchon <luc.pionchon@nokia.com>
|
||||||
|
|
||||||
|
* docs/manual/basics-helloworld.xml:
|
||||||
|
* docs/manual/hello-world.fig:
|
||||||
|
- Explicitely include glib.h.
|
||||||
|
- Do not use global variables.
|
||||||
|
- Use g_printerr() instead of g_print().
|
||||||
|
- Minor formating/renaming to increase readibility.
|
||||||
|
- Renamed new_pad() to on_pad_added()
|
||||||
|
- Improved explenatory comments.
|
||||||
|
- renamed ogg parser to ogg demuxer
|
||||||
|
- Use "autoaudiosink" instead of "alsasink".
|
||||||
|
Fixes: #538619
|
||||||
|
|
||||||
2008-06-25 Stefan Kost <ensonic@users.sf.net>
|
2008-06-25 Stefan Kost <ensonic@users.sf.net>
|
||||||
|
|
||||||
* ChangeLog:
|
* ChangeLog:
|
||||||
|
|
|
@ -37,10 +37,10 @@
|
||||||
Since <quote>oggdemux</quote> creates dynamic pads for each elementary
|
Since <quote>oggdemux</quote> creates dynamic pads for each elementary
|
||||||
stream, you'll need to set a <quote>pad-added</quote> event handler
|
stream, you'll need to set a <quote>pad-added</quote> event handler
|
||||||
on the <quote>oggdemux</quote> element, like you've learned in
|
on the <quote>oggdemux</quote> element, like you've learned in
|
||||||
<xref linkend="section-pads-dynamic"/>, to link the Ogg parser and
|
<xref linkend="section-pads-dynamic"/>, to link the Ogg demuxer and
|
||||||
the Vorbis decoder elements together. At last, we'll also need an
|
the Vorbis decoder elements together. At last, we'll also need an
|
||||||
audio output element, we will use <quote>alsasink</quote>, which
|
audio output element, we will use <quote>autoaudiosink</quote>, which
|
||||||
outputs sound to an ALSA audio device.
|
automatically detects your audio device.
|
||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
The last thing left to do is to add all elements into a container
|
The last thing left to do is to add all elements into a container
|
||||||
|
@ -59,35 +59,32 @@
|
||||||
<programlisting>
|
<programlisting>
|
||||||
<!-- example-begin helloworld.c -->
|
<!-- example-begin helloworld.c -->
|
||||||
#include <gst/gst.h>
|
#include <gst/gst.h>
|
||||||
|
#include <glib.h>
|
||||||
|
|
||||||
/*
|
|
||||||
* Global objects are usually a bad thing. For the purpose of this
|
|
||||||
* example, we will use them, however.
|
|
||||||
*/
|
|
||||||
|
|
||||||
GstElement *pipeline, *source, *parser, *decoder, *conv, *sink;
|
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
bus_call (GstBus *bus,
|
bus_call (GstBus *bus,
|
||||||
GstMessage *msg,
|
GstMessage *msg,
|
||||||
gpointer data)
|
gpointer data)
|
||||||
{
|
{
|
||||||
GMainLoop *loop = (GMainLoop *) data;
|
GMainLoop *loop = (GMainLoop *) data;
|
||||||
|
|
||||||
switch (GST_MESSAGE_TYPE (msg)) {
|
switch (GST_MESSAGE_TYPE (msg)) {
|
||||||
|
|
||||||
case GST_MESSAGE_EOS:
|
case GST_MESSAGE_EOS:
|
||||||
g_print ("End-of-stream\n");
|
g_print ("End of stream\n");
|
||||||
g_main_loop_quit (loop);
|
g_main_loop_quit (loop);
|
||||||
break;
|
break;
|
||||||
case GST_MESSAGE_ERROR: {
|
|
||||||
gchar *debug;
|
|
||||||
GError *err;
|
|
||||||
|
|
||||||
gst_message_parse_error (msg, &err, &debug);
|
case GST_MESSAGE_ERROR: {
|
||||||
|
gchar *debug;
|
||||||
|
GError *error;
|
||||||
|
|
||||||
|
gst_message_parse_error (msg, &error, &debug);
|
||||||
g_free (debug);
|
g_free (debug);
|
||||||
|
|
||||||
g_print ("Error: %s\n", err->message);
|
g_printerr ("Error: %s\n", error->message);
|
||||||
g_error_free (err);
|
g_error_free (error);
|
||||||
|
|
||||||
g_main_loop_quit (loop);
|
g_main_loop_quit (loop);
|
||||||
break;
|
break;
|
||||||
|
@ -99,78 +96,105 @@ bus_call (GstBus *bus,
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
new_pad (GstElement *element,
|
on_pad_added (GstElement *element,
|
||||||
GstPad *pad,
|
GstPad *pad,
|
||||||
gpointer data)
|
gpointer data)
|
||||||
{
|
{
|
||||||
GstPad *sinkpad;
|
GstPad *sinkpad;
|
||||||
/* We can now link this pad with the audio decoder */
|
GstElement *decoder = (GstElement *) data;
|
||||||
g_print ("Dynamic pad created, linking parser/decoder\n");
|
|
||||||
|
/* We can now link this pad with the vorbis-decoder sink pad */
|
||||||
|
g_print ("Dynamic pad created, linking demuxer/decoder\n");
|
||||||
|
|
||||||
sinkpad = gst_element_get_static_pad (decoder, "sink");
|
sinkpad = gst_element_get_static_pad (decoder, "sink");
|
||||||
|
|
||||||
gst_pad_link (pad, sinkpad);
|
gst_pad_link (pad, sinkpad);
|
||||||
|
|
||||||
gst_object_unref (sinkpad);
|
gst_object_unref (sinkpad);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
main (int argc,
|
main (int argc,
|
||||||
char *argv[])
|
char *argv[])
|
||||||
{
|
{
|
||||||
GMainLoop *loop;
|
GMainLoop *loop;
|
||||||
|
|
||||||
|
GstElement *pipeline, *source, *demuxer, *decoder, *conv, *sink;
|
||||||
GstBus *bus;
|
GstBus *bus;
|
||||||
|
|
||||||
/* initialize GStreamer */
|
/* Initialisation */
|
||||||
gst_init (&argc, &argv);
|
gst_init (&argc, &argv);
|
||||||
|
|
||||||
loop = g_main_loop_new (NULL, FALSE);
|
loop = g_main_loop_new (NULL, FALSE);
|
||||||
|
|
||||||
/* check input arguments */
|
|
||||||
|
/* Check input arguments */
|
||||||
if (argc != 2) {
|
if (argc != 2) {
|
||||||
g_print ("Usage: %s <Ogg/Vorbis filename>\n", argv[0]);
|
g_printerr ("Usage: %s <Ogg/Vorbis filename>\n", argv[0]);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* create elements */
|
|
||||||
|
/* Create gstreamer elements */
|
||||||
pipeline = gst_pipeline_new ("audio-player");
|
pipeline = gst_pipeline_new ("audio-player");
|
||||||
source = gst_element_factory_make ("filesrc", "file-source");
|
source = gst_element_factory_make ("filesrc", "file-source");
|
||||||
parser = gst_element_factory_make ("oggdemux", "ogg-parser");
|
demuxer = gst_element_factory_make ("oggdemux", "ogg-demuxer");
|
||||||
decoder = gst_element_factory_make ("vorbisdec", "vorbis-decoder");
|
decoder = gst_element_factory_make ("vorbisdec", "vorbis-decoder");
|
||||||
conv = gst_element_factory_make ("audioconvert", "converter");
|
conv = gst_element_factory_make ("audioconvert", "converter");
|
||||||
sink = gst_element_factory_make ("alsasink", "alsa-output");
|
sink = gst_element_factory_make ("autoaudiosink", "audio-output");
|
||||||
if (!pipeline || !source || !parser || !decoder || !conv || !sink) {
|
|
||||||
g_print ("One element could not be created\n");
|
if (!pipeline || !source || !demuxer || !decoder || !conv || !sink) {
|
||||||
|
g_printerr ("One element could not be created. Exiting.\n");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* set filename property on the file source. Also add a message
|
/* Set up the pipeline */
|
||||||
* handler. */
|
|
||||||
|
/* we set the input filename to the source element */
|
||||||
g_object_set (G_OBJECT (source), "location", argv[1], NULL);
|
g_object_set (G_OBJECT (source), "location", argv[1], NULL);
|
||||||
|
|
||||||
|
/* we add a message handler */
|
||||||
bus = gst_pipeline_get_bus (GST_PIPELINE (pipeline));
|
bus = gst_pipeline_get_bus (GST_PIPELINE (pipeline));
|
||||||
gst_bus_add_watch (bus, bus_call, loop);
|
gst_bus_add_watch (bus, bus_call, loop);
|
||||||
gst_object_unref (bus);
|
gst_object_unref (bus);
|
||||||
|
|
||||||
/* put all elements in a bin */
|
/* we add all elements into the pipeline */
|
||||||
|
/* file-source | ogg-demuxer | vorbis-decoder | converter | alsa-output */
|
||||||
gst_bin_add_many (GST_BIN (pipeline),
|
gst_bin_add_many (GST_BIN (pipeline),
|
||||||
source, parser, decoder, conv, sink, NULL);
|
source, demuxer, decoder, conv, sink, NULL);
|
||||||
|
|
||||||
/* link together - note that we cannot link the parser and
|
/* we link the elements together */
|
||||||
* decoder yet, because the parser uses dynamic pads. For that,
|
/* file-source -> ogg-demuxer ~> vorbis-decoder -> converter -> alsa-output */
|
||||||
* we set a pad-added signal handler. */
|
gst_element_link (source, demuxer);
|
||||||
gst_element_link (source, parser);
|
|
||||||
gst_element_link_many (decoder, conv, sink, NULL);
|
gst_element_link_many (decoder, conv, sink, NULL);
|
||||||
g_signal_connect (parser, "pad-added", G_CALLBACK (new_pad), NULL);
|
g_signal_connect (demuxer, "pad-added", G_CALLBACK (on_pad_added), decoder);
|
||||||
|
|
||||||
/* Now set to playing and iterate. */
|
/* note that the demuxer will be linked to the decoder dynamically.
|
||||||
g_print ("Setting to PLAYING\n");
|
The reason is that Ogg may contain various streams (for example
|
||||||
|
audio and video). The source pad(s) will be created at run time,
|
||||||
|
by the demuxer when it detects the amount and nature of streams.
|
||||||
|
Therefore we connect a callback function which will be executed
|
||||||
|
when the "pad-added" is emitted.*/
|
||||||
|
|
||||||
|
|
||||||
|
/* Set the pipeline to "playing" state*/
|
||||||
|
g_print ("Now playing: %s\n", argv[1]);
|
||||||
gst_element_set_state (pipeline, GST_STATE_PLAYING);
|
gst_element_set_state (pipeline, GST_STATE_PLAYING);
|
||||||
g_print ("Running\n");
|
|
||||||
|
|
||||||
|
/* Iterate */
|
||||||
|
g_print ("Running...\n");
|
||||||
g_main_loop_run (loop);
|
g_main_loop_run (loop);
|
||||||
|
|
||||||
/* clean up nicely */
|
|
||||||
|
/* Out of the main loop, clean up nicely */
|
||||||
g_print ("Returned, stopping playback\n");
|
g_print ("Returned, stopping playback\n");
|
||||||
gst_element_set_state (pipeline, GST_STATE_NULL);
|
gst_element_set_state (pipeline, GST_STATE_NULL);
|
||||||
|
|
||||||
g_print ("Deleting pipeline\n");
|
g_print ("Deleting pipeline\n");
|
||||||
gst_object_unref (GST_OBJECT (pipeline));
|
gst_object_unref (GST_OBJECT (pipeline));
|
||||||
|
|
||||||
|
@ -228,7 +252,7 @@ main (int argc,
|
||||||
the <quote>filesrc</quote> element with some other element that
|
the <quote>filesrc</quote> element with some other element that
|
||||||
reads data from a network, or some other data source element that
|
reads data from a network, or some other data source element that
|
||||||
is better integrated with your desktop environment. Also, you can
|
is better integrated with your desktop environment. Also, you can
|
||||||
use other decoders and parsers to support other media types. You
|
use other decoders and parsers/demuxers to support other media types. You
|
||||||
can use another audio sink if you're not running Linux, but Mac OS X,
|
can use another audio sink if you're not running Linux, but Mac OS X,
|
||||||
Windows or FreeBSD, or you can instead use a filesink to write audio
|
Windows or FreeBSD, or you can instead use a filesink to write audio
|
||||||
files to disk instead of playing them back. By using an audio card
|
files to disk instead of playing them back. By using an audio card
|
||||||
|
|
|
@ -1,39 +1,148 @@
|
||||||
#FIG 3.2
|
#FIG 3.2
|
||||||
Landscape
|
Portrait
|
||||||
Center
|
Center
|
||||||
Inches
|
Metric
|
||||||
Letter
|
A4
|
||||||
100.00
|
100.000000
|
||||||
Single
|
Single
|
||||||
-2
|
-2
|
||||||
1200 2
|
1200 2
|
||||||
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
|
0 32 #ffff00
|
||||||
2100 2775 4050 2775 4050 4425 2100 4425 2100 2775
|
6 0 0 0 0
|
||||||
2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5
|
2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5
|
||||||
3300 3600 4050 3600 4050 4125 3300 4125 3300 3600
|
7559 5196 13653 5196 13653 6566 7559 6566 7559 5196
|
||||||
2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2
|
-6
|
||||||
1 1 1.00 90.00 120.00
|
6 0 0 0 0
|
||||||
4050 3750 4575 3750
|
4 0 0 0 0 16 11.381102 0.0 6 0.0 0.0 7653 5385 pipeline\001
|
||||||
2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2
|
-6
|
||||||
1 1 1.00 90.00 120.00
|
6 0 0 0 0
|
||||||
6525 3750 7125 3750
|
2 1 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 2
|
||||||
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
|
8645 6215 8754 6215
|
||||||
4575 2775 6525 2775 6525 4425 4575 4425 4575 2775
|
2 3 0 0 0 0 0 0 20 31.496063 0 0 0 0 0 4
|
||||||
2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5
|
8754 6260 8874 6215 8754 6170 8754 6260
|
||||||
4575 3600 5325 3600 5325 4125 4575 4125 4575 3600
|
-6
|
||||||
2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5
|
6 0 0 0 0
|
||||||
5775 3600 6525 3600 6525 4125 5775 4125 5775 3600
|
2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5
|
||||||
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
|
7653 5716 8645 5716 8645 6472 7653 6472 7653 5716
|
||||||
7125 2775 9075 2775 9075 4425 7125 4425 7125 2775
|
-6
|
||||||
2 2 0 1 0 6 50 0 20 0.000 0 0 -1 0 0 5
|
6 0 0 0 0
|
||||||
7125 3600 7875 3600 7875 4125 7125 4125 7125 3600
|
2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5
|
||||||
2 2 0 1 0 7 100 0 -1 0.000 0 0 -1 0 0 5
|
8220 6094 8645 6094 8645 6336 8220 6336 8220 6094
|
||||||
1950 1950 9375 1950 9375 4800 1950 4800 1950 1950
|
2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5
|
||||||
4 0 0 50 0 16 12 0.0000 4 180 660 2175 2250 pipeline\001
|
8220 6094 8645 6094 8645 6336 8220 6336 8220 6094
|
||||||
4 0 0 50 0 16 12 0.0000 4 105 255 3525 3975 src\001
|
-6
|
||||||
4 0 0 50 0 16 12 0.0000 4 165 1005 2250 3075 disk_source\001
|
6 0 0 0 0
|
||||||
4 0 0 50 0 16 12 0.0000 4 135 330 4725 3975 sink\001
|
4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 8362 6283 src\001
|
||||||
4 0 0 50 0 16 12 0.0000 4 105 255 6000 3975 src\001
|
-6
|
||||||
4 0 0 50 0 16 12 0.0000 4 135 690 4725 3075 decoder\001
|
6 0 0 0 0
|
||||||
4 0 0 50 0 16 12 0.0000 4 135 330 7350 3975 sink\001
|
2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5
|
||||||
4 0 0 50 0 16 12 0.0000 4 180 930 7275 3075 play_audio\001
|
8881 5716 9874 5716 9874 6472 8881 6472 8881 5716
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5
|
||||||
|
8881 6094 9307 6094 9307 6336 8881 6336 8881 6094
|
||||||
|
2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5
|
||||||
|
8881 6094 9307 6094 9307 6336 8881 6336 8881 6094
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 8929 6283 sink\001
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5
|
||||||
|
9448 6094 9874 6094 9874 6336 9448 6336 9448 6094
|
||||||
|
2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5
|
||||||
|
9448 6094 9874 6094 9874 6336 9448 6336 9448 6094
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 9590 6283 src\001
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5
|
||||||
|
10110 5716 11102 5716 11102 6472 10110 6472 10110 5716
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5
|
||||||
|
10110 6094 10535 6094 10535 6336 10110 6336 10110 6094
|
||||||
|
2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5
|
||||||
|
10110 6094 10535 6094 10535 6336 10110 6336 10110 6094
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 10157 6283 sink\001
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5
|
||||||
|
10677 6094 11102 6094 11102 6336 10677 6336 10677 6094
|
||||||
|
2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5
|
||||||
|
10677 6094 11102 6094 11102 6336 10677 6336 10677 6094
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 10818 6283 src\001
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5
|
||||||
|
11338 5716 12330 5716 12330 6472 11338 6472 11338 5716
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5
|
||||||
|
11338 6094 11763 6094 11763 6336 11338 6336 11338 6094
|
||||||
|
2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5
|
||||||
|
11338 6094 11763 6094 11763 6336 11338 6336 11338 6094
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 11385 6283 sink\001
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5
|
||||||
|
11905 6094 12330 6094 12330 6336 11905 6336 11905 6094
|
||||||
|
2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5
|
||||||
|
11905 6094 12330 6094 12330 6336 11905 6336 11905 6094
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 12047 6283 src\001
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5
|
||||||
|
12566 5716 13559 5716 13559 6472 12566 6472 12566 5716
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
2 3 0 1 32 32 0 -1 20 31.496063 0 0 0 0 0 5
|
||||||
|
12566 6094 12992 6094 12992 6336 12566 6336 12566 6094
|
||||||
|
2 3 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 5
|
||||||
|
12566 6094 12992 6094 12992 6336 12566 6336 12566 6094
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 12614 6283 sink\001
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
2 1 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 2
|
||||||
|
9874 6215 9982 6215
|
||||||
|
2 3 0 0 0 0 0 0 20 31.496063 0 0 0 0 0 4
|
||||||
|
9982 6260 10102 6215 9982 6170 9982 6260
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
2 1 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 2
|
||||||
|
11102 6215 11211 6215
|
||||||
|
2 3 0 0 0 0 0 0 20 31.496063 0 0 0 0 0 4
|
||||||
|
11211 6260 11331 6215 11211 6170 11211 6260
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
2 1 0 1 0 0 0 0 -1 31.496063 0 0 0 0 0 2
|
||||||
|
12330 6215 12439 6215
|
||||||
|
2 3 0 0 0 0 0 0 20 31.496063 0 0 0 0 0 4
|
||||||
|
12439 6260 12559 6215 12439 6170 12439 6260
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 7700 5905 file-source\001
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 8929 5905 ogg-demuxer\001
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 10157 5905 vorbis-decoder\001
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 11385 5905 converter\001
|
||||||
|
-6
|
||||||
|
6 0 0 0 0
|
||||||
|
4 0 0 0 0 16 8.535827 0.0 6 0.0 0.0 12614 5905 audio-output\001
|
||||||
|
-6
|
||||||
|
|
Loading…
Reference in a new issue