mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-24 01:00:37 +00:00
Merge remote-tracking branch 'fdo/master'
This commit is contained in:
commit
84566d4b0b
57 changed files with 233 additions and 394 deletions
|
@ -1,7 +1,5 @@
|
|||
# Android tutorial 1: Link against GStreamer
|
||||
|
||||
This page last changed on May 02, 2013 by xartigas.
|
||||
|
||||
# Goal![](attachments/thumbnails/2687057/2654326)
|
||||
|
||||
This first Android tutorial is extremely simple: it just retrieves the
|
||||
|
@ -292,5 +290,3 @@ As usual, it has been a pleasure having you here, and see you soon\!
|
|||
![](images/icons/bullet_blue.gif)
|
||||
[tutorial1-screenshot.png](attachments/2687057/2654326.png)
|
||||
(image/png)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Android tutorial 2: A running pipeline
|
||||
|
||||
This page last changed on May 07, 2013 by xartigas.
|
||||
|
||||
# Goal ![](attachments/thumbnails/2687063/2654324)
|
||||
|
||||
The tutorials seen in the [Basic](Basic%2Btutorials.html) and
|
||||
|
@ -1061,5 +1059,3 @@ As usual, it has been a pleasure having you here, and see you soon\!
|
|||
![](images/icons/bullet_blue.gif)
|
||||
[tutorial2-screenshot.png](attachments/2687063/2654324.png)
|
||||
(image/png)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Android tutorial 3: Video
|
||||
|
||||
This page last changed on Nov 05, 2012 by xartigas.
|
||||
|
||||
# Goal ![](attachments/thumbnails/2687065/2654413)
|
||||
|
||||
Except for [Basic tutorial 5: GUI toolkit
|
||||
|
@ -927,5 +925,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
![](images/icons/bullet_blue.gif)
|
||||
[tutorial3-screenshot.png](attachments/2687065/2654413.png)
|
||||
(image/png)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Android tutorial 4: A basic media player
|
||||
|
||||
This page last changed on May 21, 2013 by xartigas.
|
||||
|
||||
# Goal![](attachments/thumbnails/2687067/2654419)
|
||||
|
||||
Enough testing with synthetic images and audio tones\! This tutorial
|
||||
|
@ -1429,5 +1427,3 @@ As usual, it has been a pleasure having you here, and see you soon\!
|
|||
![](images/icons/bullet_blue.gif)
|
||||
[tutorial4-screenshot.png](attachments/2687067/2654419.png)
|
||||
(image/png)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Android tutorial 5: A Complete media player
|
||||
|
||||
This page last changed on Nov 28, 2012 by xartigas.
|
||||
|
||||
# Goal![](attachments/thumbnails/2687069/2654436)
|
||||
|
||||
This tutorial wants to be the “demo application” that showcases what can
|
||||
|
@ -109,5 +107,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
[ic\_media\_next.png](attachments/2687069/2654438.png) (image/png)
|
||||
![](images/icons/bullet_blue.gif)
|
||||
[ic\_media\_next.png](attachments/2687069/2654437.png) (image/png)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Android tutorials
|
||||
|
||||
This page last changed on May 02, 2013 by xartigas.
|
||||
|
||||
# Welcome to the GStreamer SDK Android tutorials
|
||||
|
||||
These tutorials describe Android-specific topics. General GStreamer
|
||||
|
@ -33,5 +31,3 @@ The header files, though, are well commented. If you installed the
|
|||
Android NDK in the `$(ANDROID_NDK_ROOT)` folder, you can find the header
|
||||
files
|
||||
in `$(ANDROID_NDK_ROOT)\platforms\android-9\arch-arm\usr\include\android`.
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Basic Media Player
|
||||
|
||||
This page last changed on May 24, 2013 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
This tutorial shows how to create a basic media player with
|
||||
|
@ -872,5 +870,3 @@ This tutorial has shown:
|
|||
- Updating the GUI based on playback time
|
||||
|
||||
It has been a pleasure having you here, and see you soon\!
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -125,7 +125,7 @@ into an actual pipeline, which is very handy. In fact, this function is
|
|||
so handy there is a tool built completely around it which you will get
|
||||
very acquainted with (see [Basic tutorial 10: GStreamer
|
||||
tools](Basic+tutorial+10+GStreamer+tools.markdown) to
|
||||
learn about `gst-launch` and the `gst-launch` syntax).
|
||||
learn about `gst-launch-1.0` and the `gst-launch-1.0` syntax).
|
||||
|
||||
### playbin
|
||||
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Basic tutorial 10: GStreamer tools
|
||||
|
||||
This page last changed on Jun 01, 2012 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
GStreamer (and the GStreamer SDK) come with a set of tools which range
|
||||
|
@ -37,10 +35,10 @@ and you are ready to start typing the commands given in this tutorial.
|
|||
In order to allow for multiple versions of GStreamer to coexists in the
|
||||
same system, these tools are versioned, this is, a GStreamer version
|
||||
number is appended to their name. This version of the SDK is based on
|
||||
GStreamer 0.10, so the tools are called `gst-launch-0.10`,
|
||||
`gst-inspect-0.10` and `gst-discoverer-0.10`
|
||||
GStreamer 1.0, so the tools are called `gst-launch-1.0`,
|
||||
`gst-inspect-1.0` and `gst-discoverer-1.0`
|
||||
|
||||
# `gst-launch`
|
||||
# `gst-launch-1.0`
|
||||
|
||||
This tool accepts a textual description of a pipeline, instantiates it,
|
||||
and sets it to the PLAYING state. It allows you to quickly check if a
|
||||
|
@ -53,7 +51,7 @@ up to a certain level. In any case, it is extremely handy to test
|
|||
pipelines quickly, and is used by GStreamer developers around the world
|
||||
on a daily basis.
|
||||
|
||||
Please note that `gst-launch` is primarily a debugging tool for
|
||||
Please note that `gst-launch-1.0` is primarily a debugging tool for
|
||||
developers. You should not build applications on top of it. Instead, use
|
||||
the `gst_parse_launch()` function of the GStreamer API as an easy way to
|
||||
construct pipelines from pipeline descriptions.
|
||||
|
@ -61,12 +59,12 @@ construct pipelines from pipeline descriptions.
|
|||
Although the rules to construct pipeline descriptions are very simple,
|
||||
the concatenation of multiple elements can quickly make such
|
||||
descriptions resemble black magic. Fear not, for everyone learns the
|
||||
`gst-launch` syntax, eventually.
|
||||
`gst-launch-1.0` syntax, eventually.
|
||||
|
||||
The command line for gst-launch consists of a list of options followed
|
||||
The command line for gst-launch-1.0 consists of a list of options followed
|
||||
by a PIPELINE-DESCRIPTION. Some simplified instructions are given next,
|
||||
se the complete documentation at [the reference page](gst-launch.html)
|
||||
for `gst-launch`.
|
||||
se the complete documentation at [the reference page](gst-launch-1.0.html)
|
||||
for `gst-launch-1.0`.
|
||||
|
||||
#### Elements
|
||||
|
||||
|
@ -75,7 +73,7 @@ separated by exclamation marks (\!). Go ahead and type in the following
|
|||
command:
|
||||
|
||||
```
|
||||
gst-launch-0.10 videotestsrc ! ffmpegcolorspace ! autovideosink
|
||||
gst-launch-1.0 videotestsrc ! ffmpegcolorspace ! autovideosink
|
||||
```
|
||||
|
||||
You should see a windows with an animated video pattern. Use CTRL+C on
|
||||
|
@ -94,12 +92,12 @@ to find two compatible Pads.
|
|||
|
||||
Properties may be appended to elements, in the form
|
||||
*property=value *(multiple properties can be specified, separated by
|
||||
spaces). Use the `gst-inspect` tool (explained next) to find out the
|
||||
spaces). Use the `gst-inspect-1.0` tool (explained next) to find out the
|
||||
available properties for an
|
||||
element.
|
||||
|
||||
```
|
||||
gst-launch-0.10 videotestsrc pattern=11 ! ffmpegcolorspace ! autovideosink
|
||||
gst-launch-1.0 videotestsrc pattern=11 ! ffmpegcolorspace ! autovideosink
|
||||
```
|
||||
|
||||
You should see a static video pattern, made of circles.
|
||||
|
@ -116,7 +114,7 @@ Named elements are referred to using their name followed by a
|
|||
dot.
|
||||
|
||||
```
|
||||
gst-launch-0.10 videotestsrc ! ffmpegcolorspace ! tee name=t ! queue ! autovideosink t. ! queue ! autovideosink
|
||||
gst-launch-1.0 videotestsrc ! ffmpegcolorspace ! tee name=t ! queue ! autovideosink t. ! queue ! autovideosink
|
||||
```
|
||||
|
||||
You should see two video windows, showing the same sample video pattern.
|
||||
|
@ -143,14 +141,14 @@ Instead of letting GStreamer choose which Pad to use when linking two
|
|||
elements, you may want to specify the Pads directly. You can do this by
|
||||
adding a dot plus the Pad name after the name of the element (it must be
|
||||
a named element). Learn the names of the Pads of an element by using
|
||||
the `gst-inspect` tool.
|
||||
the `gst-inspect-1.0` tool.
|
||||
|
||||
This is useful, for example, when you want to retrieve one particular
|
||||
stream out of a
|
||||
demuxer:
|
||||
|
||||
```
|
||||
gst-launch-0.10.exe souphttpsrc location=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! matroskademux name=d d.video_00 ! matroskamux ! filesink location=sintel_video.mkv
|
||||
gst-launch-1.0.exe souphttpsrc location=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! matroskademux name=d d.video_00 ! matroskamux ! filesink location=sintel_video.mkv
|
||||
```
|
||||
|
||||
This fetches a media file from the internet using `souphttpsrc`, which
|
||||
|
@ -170,7 +168,7 @@ new matroska file with the video. If we wanted to keep only the
|
|||
audio:
|
||||
|
||||
```
|
||||
gst-launch-0.10.exe souphttpsrc location=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! matroskademux name=d d.audio_00 ! vorbisparse ! matroskamux ! filesink location=sintel_audio.mka
|
||||
gst-launch-1.0.exe souphttpsrc location=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! matroskademux name=d d.audio_00 ! vorbisparse ! matroskamux ! filesink location=sintel_audio.mka
|
||||
```
|
||||
|
||||
The `vorbisparse` element is required to extract some information from
|
||||
|
@ -196,7 +194,7 @@ Consider the following
|
|||
pipeline:
|
||||
|
||||
```
|
||||
gst-launch-0.10 souphttpsrc location=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! matroskademux ! filesink location=test
|
||||
gst-launch-1.0 souphttpsrc location=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! matroskademux ! filesink location=test
|
||||
```
|
||||
|
||||
This is the same media file and demuxer as in the previous example. The
|
||||
|
@ -210,7 +208,7 @@ previous sub-section, or by using **Caps
|
|||
Filters**:
|
||||
|
||||
```
|
||||
gst-launch-0.10 souphttpsrc location=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! matroskademux ! video/x-vp8 ! matroskamux ! filesink location=sintel_video.mkv
|
||||
gst-launch-1.0 souphttpsrc location=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! matroskademux ! video/x-vp8 ! matroskamux ! filesink location=sintel_video.mkv
|
||||
```
|
||||
|
||||
A Caps Filter behaves like a pass-through element which does nothing and
|
||||
|
@ -220,9 +218,9 @@ added a `video/x-vp8` Caps Filter to specify that we are interested in
|
|||
the output pad of `matroskademux` which can produce this kind of video.
|
||||
|
||||
To find out the Caps an element accepts and produces, use the
|
||||
`gst-inspect` tool. To find out the Caps contained in a particular file,
|
||||
use the `gst-discoverer` tool. To find out the Caps an element is
|
||||
producing for a particular pipeline, run `gst-launch` as usual, with the
|
||||
`gst-inspect-1.0` tool. To find out the Caps contained in a particular file,
|
||||
use the `gst-discoverer-1.0` tool. To find out the Caps an element is
|
||||
producing for a particular pipeline, run `gst-launch-1.0` as usual, with the
|
||||
`–v` option to print Caps information.
|
||||
|
||||
#### Examples
|
||||
|
@ -231,7 +229,7 @@ Play a media file using `playbin2` (as in [Basic tutorial 1: Hello
|
|||
world\!](Basic%2Btutorial%2B1%253A%2BHello%2Bworld%2521.html)):
|
||||
|
||||
```
|
||||
gst-launch-0.10 playbin2 uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm
|
||||
gst-launch-1.0 playbin2 uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm
|
||||
```
|
||||
|
||||
A fully operation playback pipeline, with audio and video (more or less
|
||||
|
@ -239,7 +237,7 @@ the same pipeline that `playbin2` will create
|
|||
internally):
|
||||
|
||||
```
|
||||
gst-launch-0.10 souphttpsrc location=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! matroskademux name=d ! queue ! vp8dec ! ffmpegcolorspace ! autovideosink d. ! queue ! vorbisdec ! audioconvert ! audioresample ! autoaudiosink
|
||||
gst-launch-1.0 souphttpsrc location=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! matroskademux name=d ! queue ! vp8dec ! ffmpegcolorspace ! autovideosink d. ! queue ! vorbisdec ! audioconvert ! audioresample ! autoaudiosink
|
||||
```
|
||||
|
||||
A transcoding pipeline, which opens the webm container and decodes both
|
||||
|
@ -249,7 +247,7 @@ with a different codec, and puts them back together in an Ogg container
|
|||
it).
|
||||
|
||||
```
|
||||
gst-launch-0.10 uridecodebin uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm name=d ! queue ! theoraenc ! oggmux name=m ! filesink location=sintel.ogg d. ! queue ! audioconvert ! audioresample ! flacenc ! m.
|
||||
gst-launch-1.0 uridecodebin uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm name=d ! queue ! theoraenc ! oggmux name=m ! filesink location=sintel.ogg d. ! queue ! audioconvert ! audioresample ! flacenc ! m.
|
||||
```
|
||||
|
||||
A rescaling pipeline. The `videoscale` element performs a rescaling
|
||||
|
@ -258,14 +256,14 @@ output caps. The output caps are set by the Caps Filter to
|
|||
320x200.
|
||||
|
||||
```
|
||||
gst-launch-0.10 uridecodebin uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! queue ! videoscale ! video/x-raw-yuv,width=320,height=200 ! ffmpegcolorspace ! autovideosink
|
||||
gst-launch-1.0 uridecodebin uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! queue ! videoscale ! video/x-raw-yuv,width=320,height=200 ! ffmpegcolorspace ! autovideosink
|
||||
```
|
||||
|
||||
This short description of `gst-launch` should be enough to get you
|
||||
This short description of `gst-launch-1.0` should be enough to get you
|
||||
started. Remember that you have the [complete documentation available
|
||||
here](gst-launch.html).
|
||||
here](gst-launch-1.0.html).
|
||||
|
||||
# `gst-inspect`
|
||||
# `gst-inspect-1.0`
|
||||
|
||||
This tool has three modes of operation:
|
||||
|
||||
|
@ -280,7 +278,7 @@ This tool has three modes of operation:
|
|||
Let's see an example of the third mode:
|
||||
|
||||
```
|
||||
gst-inspect-0.10 vp8dec
|
||||
gst-inspect-1.0 vp8dec
|
||||
|
||||
Factory Details:
|
||||
Long name: On2 VP8 Decoder
|
||||
|
@ -382,9 +380,9 @@ The most relevant sections are:
|
|||
element, along with their type and accepted values.
|
||||
|
||||
For more information, you can check the [documentation
|
||||
page](http://gst-inspect) of `gst-inspect`.
|
||||
page](http://gst-inspect-1.0) of `gst-inspect-1.0`.
|
||||
|
||||
# `gst-discoverer`
|
||||
# `gst-discoverer-1.0`
|
||||
|
||||
This tool is a wrapper around the `GstDiscoverer` object shown in [Basic
|
||||
tutorial 9: Media information
|
||||
|
@ -394,14 +392,14 @@ regarding the media that GStreamer can extract. It is useful to find out
|
|||
what container and codecs have been used to produce the media, and
|
||||
therefore what elements you need to put in a pipeline to play it.
|
||||
|
||||
Use `gst-discoverer --help` to obtain the list of available options,
|
||||
Use `gst-discoverer-1.0 --help` to obtain the list of available options,
|
||||
which basically control the amount of verbosity of the output.
|
||||
|
||||
Let's see an
|
||||
example:
|
||||
|
||||
```
|
||||
gst-discoverer-0.10 http://docs.gstreamer.com/media/sintel_trailer-480p.webm -v
|
||||
gst-discoverer-1.0 http://docs.gstreamer.com/media/sintel_trailer-480p.webm -v
|
||||
|
||||
Analyzing http://docs.gstreamer.com/media/sintel_trailer-480p.webm
|
||||
Done discovering http://docs.gstreamer.com/media/sintel_trailer-480p.webm
|
||||
|
@ -456,12 +454,10 @@ Properties:
|
|||
This tutorial has shown:
|
||||
|
||||
- How to build and run GStreamer pipelines from the command line using
|
||||
the `gst-launch` tool.
|
||||
the `gst-launch-1.0` tool.
|
||||
- How to find out what GStreamer elements you have available and their
|
||||
capabilities, using the `gst-inspect` tool.
|
||||
capabilities, using the `gst-inspect-1.0` tool.
|
||||
- How to discover the internal structure of media files, using
|
||||
`gst-discoverer`.
|
||||
`gst-discoverer-1.0`.
|
||||
|
||||
It has been a pleasure having you here, and see you soon\!
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Basic tutorial 11: Debugging tools
|
||||
|
||||
This page last changed on Jun 04, 2012 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
Sometimes things won’t go as expected and the error messages retrieved
|
||||
|
@ -84,7 +82,7 @@ The `'*'` wildcard is also available. For example
|
|||
starting with the word `audio`. `GST_DEBUG=*:2` is equivalent to
|
||||
`GST_DEBUG=2`.
|
||||
|
||||
Use `gst-launch-0.10 --gst-debug-help` to obtain the list of all
|
||||
Use `gst-launch-1.0 --gst-debug-help` to obtain the list of all
|
||||
registered categories. Bear in mind that each plugin registers its own
|
||||
categories, so, when installing or removing plugins, this list can
|
||||
change.
|
||||
|
@ -191,7 +189,7 @@ learn a bit of GStreamer along the way).
|
|||
|
||||
To obtain `.dot` files, simply set
|
||||
the `GST_DEBUG_DUMP_DOT_DIR` environment variable to point to the
|
||||
folder where you want the files to be placed. `gst-launch` will create
|
||||
folder where you want the files to be placed. `gst-launch-1.0` will create
|
||||
a `.dot` file at each state change, so you can see the evolution of the
|
||||
caps negotiation. Unset the variable to disable this facility. From
|
||||
within your application, you can use the
|
||||
|
@ -227,5 +225,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
|
||||
![](images/icons/bullet_blue.gif)
|
||||
[playbin2.png](attachments/327830/2424840.png) (image/png)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Basic tutorial 12: Streaming
|
||||
|
||||
This page last changed on Sep 28, 2012 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
Playing media straight from the Internet without storing it locally is
|
||||
|
@ -285,5 +283,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
[basic-tutorial-12.c](attachments/327806/2424843.c) (text/plain)
|
||||
![](images/icons/bullet_blue.gif)
|
||||
[vs2010.zip](attachments/327806/2424844.zip) (application/zip)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Basic tutorial 13: Playback speed
|
||||
|
||||
This page last changed on Jul 06, 2012 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
Fast-forward, reverse-playback and slow-motion are all techniques
|
||||
|
@ -404,5 +402,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
[basic-tutorial-13.c](attachments/327800/2424883.c) (text/plain)
|
||||
![](images/icons/bullet_blue.gif)
|
||||
[vs2010.zip](attachments/327800/2424884.zip) (application/zip)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Basic tutorial 14: Handy elements
|
||||
|
||||
This page last changed on May 13, 2014 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
This tutorial gives a list of handy GStreamer elements that are worth
|
||||
|
@ -10,7 +8,7 @@ build complex pipelines easily (like `playbin2`), to little helper
|
|||
elements which are extremely useful when debugging.
|
||||
|
||||
For simplicity, the following examples are given using the
|
||||
`gst-launch` tool (Learn about it in [Basic tutorial 10: GStreamer
|
||||
`gst-launch-1.0` tool (Learn about it in [Basic tutorial 10: GStreamer
|
||||
tools](Basic%2Btutorial%2B10%253A%2BGStreamer%2Btools.html)). Use the
|
||||
`-v` command line parameter if you want to see the Pad Caps that are
|
||||
being negotiated.
|
||||
|
@ -38,11 +36,11 @@ source pads as streams are found in the
|
|||
media.
|
||||
|
||||
``` lang=bash
|
||||
gst-launch-0.10 uridecodebin uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! ffmpegcolorspace ! autovideosink
|
||||
gst-launch-1.0 uridecodebin uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! ffmpegcolorspace ! autovideosink
|
||||
```
|
||||
|
||||
``` lang=bash
|
||||
gst-launch-0.10 uridecodebin uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! audioconvert ! autoaudiosink
|
||||
gst-launch-1.0 uridecodebin uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! audioconvert ! autoaudiosink
|
||||
```
|
||||
|
||||
### `decodebin2`
|
||||
|
@ -56,7 +54,7 @@ offers as many source pads as streams are found in the
|
|||
media.
|
||||
|
||||
``` lang=bash
|
||||
gst-launch-0.10 souphttpsrc location=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! decodebin2 ! autovideosink
|
||||
gst-launch-1.0 souphttpsrc location=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! decodebin2 ! autovideosink
|
||||
```
|
||||
|
||||
# File input/output
|
||||
|
@ -70,7 +68,7 @@ of `filesrc` to
|
|||
`TRUE`.
|
||||
|
||||
``` lang=c
|
||||
gst-launch-0.10 filesrc location=f:\\media\\sintel\\sintel_trailer-480p.webm ! decodebin2 ! autovideosink
|
||||
gst-launch-1.0 filesrc location=f:\\media\\sintel\\sintel_trailer-480p.webm ! decodebin2 ! autovideosink
|
||||
```
|
||||
|
||||
### `filesink`
|
||||
|
@ -80,7 +78,7 @@ This element writes to a file all the media it receives. Use the
|
|||
name.
|
||||
|
||||
```
|
||||
gst-launch-0.10 audiotestsrc ! vorbisenc ! oggmux ! filesink location=test.ogg
|
||||
gst-launch-1.0 audiotestsrc ! vorbisenc ! oggmux ! filesink location=test.ogg
|
||||
```
|
||||
|
||||
# Network
|
||||
|
@ -92,7 +90,7 @@ the SOUP library. Set the URL to retrieve through the `location`
|
|||
property.
|
||||
|
||||
``` lang=bash
|
||||
gst-launch-0.10 souphttpsrc location=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! decodebin2 ! autovideosink
|
||||
gst-launch-1.0 souphttpsrc location=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! decodebin2 ! autovideosink
|
||||
```
|
||||
|
||||
# Test media generation
|
||||
|
@ -107,7 +105,7 @@ This element produces a video pattern (selectable among many different
|
|||
options with the `pattern` property). Use it to test video pipelines.
|
||||
|
||||
``` lang=bash
|
||||
gst-launch-0.10 videotestsrc ! ffmpegcolorspace ! autovideosink
|
||||
gst-launch-1.0 videotestsrc ! ffmpegcolorspace ! autovideosink
|
||||
```
|
||||
|
||||
### `audiotestsrc`
|
||||
|
@ -116,7 +114,7 @@ This element produces an audio wave (selectable among many different
|
|||
options with the `wave` property). Use it to test video pipelines.
|
||||
|
||||
``` lang=bash
|
||||
gst-launch-0.10 audiotestsrc ! audioconvert ! autoaudiosink
|
||||
gst-launch-1.0 audiotestsrc ! audioconvert ! autoaudiosink
|
||||
```
|
||||
|
||||
# Video adapters
|
||||
|
@ -138,7 +136,7 @@ that can vary depending on external factors, like decoding a
|
|||
user-provided file.
|
||||
|
||||
``` lang=bash
|
||||
gst-launch-0.10 videotestsrc ! ffmpegcolorspace ! autovideosink
|
||||
gst-launch-1.0 videotestsrc ! ffmpegcolorspace ! autovideosink
|
||||
```
|
||||
|
||||
### `videorate`
|
||||
|
@ -158,7 +156,7 @@ rate is unknown at design time, just in
|
|||
case.
|
||||
|
||||
``` lang=c
|
||||
gst-launch-0.10 videotestsrc ! video/x-raw-rgb,framerate=30/1 ! videorate ! video/x-raw-rgb,framerate=1/1 ! ffmpegcolorspace ! autovideosink
|
||||
gst-launch-1.0 videotestsrc ! video/x-raw-rgb,framerate=30/1 ! videorate ! video/x-raw-rgb,framerate=1/1 ! ffmpegcolorspace ! autovideosink
|
||||
```
|
||||
|
||||
### `videoscale`
|
||||
|
@ -179,7 +177,7 @@ video sinks are capable of performing scaling
|
|||
operations.
|
||||
|
||||
``` lang=bash
|
||||
gst-launch-0.10 uridecodebin uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! videoscale ! video/x-raw-yuv,width=178,height=100 ! ffmpegcolorspace ! autovideosink
|
||||
gst-launch-1.0 uridecodebin uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! videoscale ! video/x-raw-yuv,width=178,height=100 ! ffmpegcolorspace ! autovideosink
|
||||
```
|
||||
|
||||
# Audio adapters
|
||||
|
@ -196,7 +194,7 @@ negotiation problems with audio, and it is generally safe to use it
|
|||
liberally, since this element does nothing if it is not needed.
|
||||
|
||||
``` lang=bash
|
||||
gst-launch-0.10 audiotestsrc ! audioconvert ! autoaudiosink
|
||||
gst-launch-1.0 audiotestsrc ! audioconvert ! autoaudiosink
|
||||
```
|
||||
|
||||
### `audioresample`
|
||||
|
@ -209,7 +207,7 @@ do not fear to use it
|
|||
generously.
|
||||
|
||||
``` lang=bash
|
||||
gst-launch-0.10 uridecodebin uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! audioresample ! audio/x-raw-float,rate=4000 ! audioconvert ! autoaudiosink
|
||||
gst-launch-1.0 uridecodebin uri=http://docs.gstreamer.com/media/sintel_trailer-480p.webm ! audioresample ! audio/x-raw-float,rate=4000 ! audioconvert ! autoaudiosink
|
||||
```
|
||||
|
||||
### `audiorate`
|
||||
|
@ -296,7 +294,7 @@ branch would stall the other
|
|||
branches.
|
||||
|
||||
```
|
||||
gst-launch-0.10 audiotestsrc ! tee name=t ! queue ! audioconvert ! autoaudiosink t. ! queue ! wavescope ! ffmpegcolorspace ! autovideosink
|
||||
gst-launch-1.0 audiotestsrc ! tee name=t ! queue ! audioconvert ! autoaudiosink t. ! queue ! wavescope ! ffmpegcolorspace ! autovideosink
|
||||
```
|
||||
|
||||
# Capabilities
|
||||
|
@ -305,14 +303,14 @@ gst-launch-0.10 audiotestsrc ! tee name=t ! queue ! audioconvert ! autoaudiosink
|
|||
|
||||
[Basic tutorial 10: GStreamer
|
||||
tools](Basic%2Btutorial%2B10%253A%2BGStreamer%2Btools.html) already
|
||||
explained how to use Caps filters with `gst-launch`. When building a
|
||||
explained how to use Caps filters with `gst-launch-1.0`. When building a
|
||||
pipeline programmatically, Caps filters are implemented with
|
||||
the `capsfilter` element. This element does not modify data as such,
|
||||
but enforces limitations on the data
|
||||
format.
|
||||
|
||||
``` lang=bash
|
||||
gst-launch-0.10 videotestsrc ! video/x-raw-gray ! ffmpegcolorspace ! autovideosink
|
||||
gst-launch-1.0 videotestsrc ! video/x-raw-gray ! ffmpegcolorspace ! autovideosink
|
||||
```
|
||||
|
||||
### `typefind`
|
||||
|
@ -335,11 +333,11 @@ gathering](Basic%2Btutorial%2B9%253A%2BMedia%2Binformation%2Bgathering.html)).
|
|||
This sink element simply swallows any data fed to it. It is useful when
|
||||
debugging, to replace your normal sinks and rule them out of the
|
||||
equation. It can be very verbose when combined with the `-v` switch
|
||||
of `gst-launch`, so use the `silent` property to remove any unwanted
|
||||
of `gst-launch-1.0`, so use the `silent` property to remove any unwanted
|
||||
noise.
|
||||
|
||||
```
|
||||
gst-launch-0.10 audiotestsrc num-buffers=1000 ! fakesink sync=false
|
||||
gst-launch-1.0 audiotestsrc num-buffers=1000 ! fakesink sync=false
|
||||
```
|
||||
|
||||
### `identity`
|
||||
|
@ -351,7 +349,7 @@ things this seemingly harmless element can
|
|||
do.
|
||||
|
||||
```
|
||||
gst-launch-0.10 audiotestsrc ! identity drop-probability=0.1 ! audioconvert ! autoaudiosink
|
||||
gst-launch-1.0 audiotestsrc ! identity drop-probability=0.1 ! audioconvert ! autoaudiosink
|
||||
```
|
||||
|
||||
# Conclusion
|
||||
|
@ -362,5 +360,3 @@ valuable for production pipelines, whereas others are only needed for
|
|||
debugging purposes.
|
||||
|
||||
It has been a pleasure having you here, and see you soon\!
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Basic tutorial 15: Clutter integration
|
||||
|
||||
This page last changed on Jul 11, 2012 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
“[Clutter](https://clutter-project.org/) is an open source software
|
||||
|
@ -250,5 +248,3 @@ This tutorial has shown:
|
|||
` cluttersink` or `autocluttersink`.
|
||||
|
||||
It has been a pleasure having you here, and see you soon\!
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Basic tutorial 16: Platform-specific elements
|
||||
|
||||
This page last changed on May 30, 2013 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
Even though GStreamer is a multiplatform framework, not all the elements
|
||||
|
@ -139,7 +137,7 @@ framework similar to GStreamer. They are different enough, though, so
|
|||
that their pipelines cannot be interconnected. However, through this
|
||||
element, GStreamer can benefit from the decoding elements present in
|
||||
Direct Show. `dshowdecwrapper` wraps multiple Direct Show decoders so
|
||||
they can be embedded in a GStreamer pipeline. Use the `gst-inspect` tool
|
||||
they can be embedded in a GStreamer pipeline. Use the `gst-inspect-1.0` tool
|
||||
(see [Basic tutorial 10: GStreamer
|
||||
tools](Basic%2Btutorial%2B10%253A%2BGStreamer%2Btools.html)) to see the
|
||||
available decoders.
|
||||
|
@ -207,5 +205,3 @@ worry about them when using multiplatform elements like `playbin2` or
|
|||
instancing them manually.
|
||||
|
||||
It has been a pleasure having you here, and see you soon\!
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -224,7 +224,7 @@ which controls the type of test video the element outputs. Try different
|
|||
values!
|
||||
|
||||
The names and possible values of all the properties an element exposes
|
||||
can be found using the gst-inspect tool described in [Basic tutorial 10:
|
||||
can be found using the gst-inspect-1.0 tool described in [Basic tutorial 10:
|
||||
GStreamer tools](Basic+tutorial+10+GStreamer+tools.markdown).
|
||||
|
||||
### Error checking
|
||||
|
|
|
@ -336,7 +336,7 @@ case, we pass a pointer to the `CustomData` structure we built specially
|
|||
for this purpose.
|
||||
|
||||
The signals that a `GstElement` generates can be found in its
|
||||
documentation or using the `gst-inspect` tool as described in [Basic
|
||||
documentation or using the `gst-inspect-1.0` tool as described in [Basic
|
||||
tutorial 10: GStreamer
|
||||
tools](Basic+tutorial+10+GStreamer+tools.markdown).
|
||||
|
||||
|
|
|
@ -464,7 +464,7 @@ This tutorial has shown:
|
|||
- That Pad Caps are important to know beforehand if two elements can
|
||||
be linked together.
|
||||
|
||||
- That Pad Caps can be found using the `gst-inspect` tool described
|
||||
- That Pad Caps can be found using the `gst-inspect-1.0` tool described
|
||||
in [Basic tutorial 10: GStreamer
|
||||
tools](Basic+tutorial+10+GStreamer+tools.markdown).
|
||||
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Basic tutorial 9: Media information gathering
|
||||
|
||||
This page last changed on May 30, 2012 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
Sometimes you might want to quickly find out what kind of media a file
|
||||
|
@ -68,7 +66,7 @@ The following code tries to discover the URI provided through the
|
|||
command line, and outputs the retrieved information (If no URI is
|
||||
provided it uses a default one).
|
||||
|
||||
This is a simplified version of what the `gst-discoverer` tool does
|
||||
This is a simplified version of what the `gst-discoverer-1.0` tool does
|
||||
([Basic tutorial 10: GStreamer
|
||||
tools](Basic%2Btutorial%2B10%253A%2BGStreamer%2Btools.html)), which is
|
||||
an application that only displays data, but does not perform any
|
||||
|
@ -548,5 +546,3 @@ This tutorial has shown:
|
|||
obtained with `gst_discoverer_info_get_result()`.
|
||||
|
||||
It has been a pleasure having you here, and see you soon\!
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Deploying your application
|
||||
|
||||
This page last changed on Jun 12, 2013 by xartigas.
|
||||
|
||||
Once the development of your application is finished, you will need to
|
||||
deploy it to the target machine, usually in the form of a package or
|
||||
installer. You have several options here, and, even though this subject
|
||||
|
@ -126,5 +124,3 @@ options.
|
|||
Cerbero](Multiplatform%2Bdeployment%2Busing%2BCerbero.html)
|
||||
|
||||
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# GStreamer reference
|
||||
|
||||
This page last changed on Jun 25, 2012 by xartigas.
|
||||
|
||||
# GStreamer reference
|
||||
|
||||
This is the complete documentation for the GStreamer API, automatically
|
||||
|
@ -52,5 +50,3 @@ generated from the source code of GStreamer.
|
|||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:28
|
||||
|
|
|
@ -4,3 +4,12 @@
|
|||
|
||||
FIXME: replace with documentation home page
|
||||
|
||||
| Section | |
|
||||
|--|--|
|
||||
| [![](attachments/download.png)](Installing+the+SDK.markdown) | [Download and install GStreamer](Installing+the+SDK.markdown) |
|
||||
| [![](attachments/tutorials.png)](Tutorials.markdown) | [Tutorials: Learn how to use the GStreamer SDK](Tutorials.markdown) |
|
||||
| [![](attachments/deploy.png)](Deploying+your+application.markdown) | [Deploy the SDK with your application](Deploying+your+application) |
|
||||
| [![](attachments/reference.png)](GStreamer+reference.markdown) | [GStreamer API reference](GStreamer+reference.markdown) |
|
||||
| [![](attachments/faq.png)](Frequently+Asked+Questions.markdown) | [Frequently Asked Questions](Frequently+Asked+Questions.markdown) |
|
||||
| [![](attachments/legal.png)](Legal+information.markdown) | [Patents, Licenses and legal F.A.Q.](Legal+information.markdown) |
|
||||
| [![](attachments/contact.png)](Contact.markdown) | [Community support, bug reporting...](Contact.markdown) |
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Installing for Android development
|
||||
# Installing for Android development
|
||||
|
||||
![](images/icons/emoticons/information.png) All versions starting from 2.3.1 Gingerbread are supported
|
||||
![information] All versions starting from 2.3.1 Gingerbread are supported
|
||||
|
||||
## Prerequisites
|
||||
|
||||
|
@ -11,33 +11,27 @@ should obviously be an Android device.
|
|||
The development machine can either be a Linux, Mac OS X or Windows, and
|
||||
needs to have installed:
|
||||
|
||||
- The latest version of the [Android
|
||||
SDK](http://developer.android.com/sdk/index.html)
|
||||
- The latest version of the [Android
|
||||
NDK](http://developer.android.com/tools/sdk/ndk/index.html)
|
||||
- The GStreamer SDK for Android is targeted at API version 9 (Android
|
||||
- The latest version of the [Android SDK]
|
||||
- The latest version of the [Android NDK]
|
||||
- The GStreamer SDK for Android is targeted at API version 9 (Android
|
||||
2.3.1, Gingerbread) or higher. Use the SDK Manager tool to make sure
|
||||
you have at least one Android SDK platform installed with API
|
||||
version 9 or higher.
|
||||
|
||||
Optionally, you can use the [Android Studio] (FIX LINK). As stated in the Android
|
||||
documentation, *developing in Android Studio is highly recommended and
|
||||
is the fastest way to get started*.
|
||||
Optionally, you can use the \[Android Studio\] (FIX LINK). As stated in
|
||||
the Android documentation, *developing in Android Studio is highly
|
||||
recommended and is the fastest way to get started*.
|
||||
|
||||
Before continuing, make sure you can compile and run the samples
|
||||
included in the Android NDK, and that you understand how the integration
|
||||
of C and Java works via the [Java Native
|
||||
Interface](http://en.wikipedia.org/wiki/Java_Native_Interface) (JNI).
|
||||
Besides the [Android
|
||||
NDK](http://developer.android.com/tools/sdk/ndk/index.html)
|
||||
documentation, you can find some useful [Android JNI tips
|
||||
here](http://developer.android.com/guide/practices/jni.html).
|
||||
of C and Java works via the [Java Native Interface] (JNI). Besides the
|
||||
[Android NDK] documentation, you can find some useful [Android JNI tips
|
||||
here].
|
||||
|
||||
## Download and install the SDK
|
||||
|
||||
The GStreamer project provides [prebuilt binaries](https://gstreamer.freedesktop.org/data/pkg/android/)
|
||||
you should download the latest version and unzip it into any folder of your
|
||||
choice.
|
||||
The GStreamer project provides [prebuilt binaries] you should download
|
||||
the latest version and unzip it into any folder of your choice.
|
||||
|
||||
In the process of building GStreamer-enabled Android applications, some
|
||||
tools will need to know where you installed the SDK. You must define an
|
||||
|
@ -48,12 +42,13 @@ system-wide by adding it to your `~/.profile` file (on Linux and Mac) or
|
|||
to the Environment Variables in the System Properties dialog (on
|
||||
Windows).
|
||||
|
||||
Point `GSTREAMER_SDK_ROOT_ANDROID` to the folder where you unzipped the SDK.
|
||||
Point `GSTREAMER_SDK_ROOT_ANDROID` to the folder where you unzipped the
|
||||
SDK.
|
||||
|
||||
> ![](images/icons/emoticons/information.png) If you plan to use Android Studio and
|
||||
> do not want to define this environment variable globally, you can set
|
||||
> it inside Eclipse. Go to Window → Preferences → C/C++ → Build → Build Variables
|
||||
> and define `GSTREAMER_SDK_ROOT_ANDROID` there.
|
||||
> ![information] If you plan to use Android Studio and do not want to define this
|
||||
> environment variable globally, you can set it inside Eclipse. Go to
|
||||
> Window → Preferences → C/C++ → Build → Build Variables and define
|
||||
> `GSTREAMER_SDK_ROOT_ANDROID` there.
|
||||
|
||||
## Configure your development environment
|
||||
|
||||
|
@ -62,12 +57,10 @@ writing your GStreamer code in Java or in C.
|
|||
|
||||
Android applications are mainly written in Java, so adding GStreamer
|
||||
code to them in the same language is a huge advantage. However, this
|
||||
requires using [language
|
||||
bindings](http://en.wikipedia.org/wiki/Language_binding) for the
|
||||
GStreamer API which are not complete yet. In the meantime, this
|
||||
documentation will use Java for the User Interface (UI) part and C for
|
||||
the GStreamer code. Both parts interact through
|
||||
[JNI](http://en.wikipedia.org/wiki/Java_Native_Interface).
|
||||
requires using [language bindings] for the GStreamer API which are not
|
||||
complete yet. In the meantime, this documentation will use Java for the
|
||||
User Interface (UI) part and C for the GStreamer code. Both parts
|
||||
interact through [JNI][Java Native Interface].
|
||||
|
||||
### Building the tutorials
|
||||
|
||||
|
@ -80,9 +73,8 @@ The rest of the GStreamer SDK tutorials (basic and playback tutorials)
|
|||
cannot be run on Android without modification.
|
||||
|
||||
Android projects with GStreamer support are built like conventional
|
||||
Android NDK projects, so the instructions at the [Android
|
||||
NDK](http://developer.android.com/tools/sdk/ndk/index.html) home can be
|
||||
followed:
|
||||
Android NDK projects, so the instructions at the [Android NDK] home can
|
||||
be followed:
|
||||
|
||||
#### Using Eclipse
|
||||
|
||||
|
@ -91,8 +83,8 @@ prerequisites section, and that they are both aware of the location of
|
|||
the Android SDK and NDK respectively.
|
||||
|
||||
Import a tutorial into the Eclipse workspace:
|
||||
File → New → Project… → Android Project from Existing
|
||||
Code, and select the folder called `android-tutorial-1`.
|
||||
File → New → Project… → Android Project from Existing Code, and select
|
||||
the folder called `android-tutorial-1`.
|
||||
|
||||
After reading in the project and generating some extra files and
|
||||
folders, Eclipse might complain about missing files. **This is normal**,
|
||||
|
@ -100,7 +92,8 @@ we are not finished yet.
|
|||
|
||||
Provide native development support by activating the NDK plugin:
|
||||
Right-click on the project in the Project Explorer (this should be the
|
||||
top-most folder, called `com.gst_sdk_tutorials.tutorial_1.Tutorial1`) → Android
|
||||
top-most folder,
|
||||
called `com.gst_sdk_tutorials.tutorial_1.Tutorial1`) → Android
|
||||
tools → Add Native Support… Here the NDK plugin asks for a library name.
|
||||
This is irrelevant and any valid file name will do. Accept.
|
||||
|
||||
|
@ -121,15 +114,12 @@ OpenGL ES).
|
|||
|
||||
#### Using the command line
|
||||
|
||||
> ![](images/icons/emoticons/warning.png) Note that, on Windows,
|
||||
> this procedure requires a working Cygwin shell, as explained in
|
||||
> the [Android NDK System Requirements](http://developer.android.com/tools/sdk/ndk/index.html#Reqs)
|
||||
> ![warning] Note that, on Windows, this procedure requires a working Cygwin
|
||||
> shell, as explained in the [Android NDK System Requirements]
|
||||
|
||||
For each tutorial, move to its folder and run:
|
||||
|
||||
```
|
||||
android update project -p . -s --target X
|
||||
```
|
||||
android update project -p . -s --target X
|
||||
|
||||
Where `X` is one of the targets available in your system (the ones you
|
||||
installed with the SDK manager). Make sure to use a target with at least
|
||||
|
@ -138,18 +128,14 @@ API level 9.
|
|||
To get a list of all available targets in your system issue this
|
||||
command:
|
||||
|
||||
```
|
||||
android list
|
||||
```
|
||||
android list
|
||||
|
||||
The “update project” command generates the `build.xml` file needed by
|
||||
the build system. You only need to perform this action once per project.
|
||||
|
||||
To build the C part, just call:
|
||||
|
||||
```
|
||||
ndk-build
|
||||
```
|
||||
ndk-build
|
||||
|
||||
A few lines in the `Android.mk` file (reviewed later) pull up the
|
||||
necessary machinery to compile the GStreamer bits and generate the
|
||||
|
@ -158,15 +144,11 @@ methods.
|
|||
|
||||
Finally, compile the Java code with:
|
||||
|
||||
```
|
||||
ant debug
|
||||
```
|
||||
ant debug
|
||||
|
||||
And install on the device with:
|
||||
|
||||
```
|
||||
adb install -r bin/Tutorial1-debug.apk
|
||||
```
|
||||
adb install -r bin/Tutorial1-debug.apk
|
||||
|
||||
The `-r` switch allows the installer to overwrite previous versions.
|
||||
Otherwise, you need to manually uninstall previous versions of your
|
||||
|
@ -178,20 +160,28 @@ tutorial in an Android Virtual Device (AVD), make sure to create the
|
|||
device with support for audio playback and GPU Emulation (to enable
|
||||
OpenGL ES).
|
||||
|
||||
> ![](images/icons/emoticons/warning.png) Windows linkage problems
|
||||
> ![warning] Windows linkage problems
|
||||
>
|
||||
> Due to problems related to the standard linker, Google’s <a href="http://en.wikipedia.org/wiki/Gold_(linker)" class="external-link">Gold Linker</a> is used to build GStreamer applications. Unfortunately, the Android NDK toolchain for Windows does not include the gold linker and the standard one has to be used.
|
||||
> Due to problems related to the standard linker, Google’s
|
||||
> <a href="http://en.wikipedia.org/wiki/Gold_(linker)" class="external-link">Gold
|
||||
> Linker</a> is used to build GStreamer applications. Unfortunately,
|
||||
> the Android NDK toolchain for Windows does not include the gold linker
|
||||
> and the standard one has to be used.
|
||||
>
|
||||
> If you observe linkage problems, you can replace the linker in your Android NDK with the gold one from [this project](http://code.google.com/p/mingw-and-ndk/downloads/detail?name=android-ndk-r8b-ma-windows.7z&can=2&q=). Download the `android-ndk-r8b-ma-windows.7z` file, extract `\android-ndk-r8b\toolchains\arm-linux-androideabi-4.6\prebuilt\windows\arm-linux-androideabi\bin\ld.exe` (only this file is needed) and overwrite the one in the same folder in your Android NDK installation. You might need the free [7-Zip archiving utility](http://www.7-zip.org/)
|
||||
> If you observe linkage problems, you can replace the linker in your
|
||||
> Android NDK with the gold one from [this project]. Download the
|
||||
> `android-ndk-r8b-ma-windows.7z` file, extract
|
||||
> `\android-ndk-r8b\toolchains\arm-linux-androideabi-4.6\prebuilt\windows\arm-linux-androideabi\bin\ld.exe`
|
||||
> (only this file is needed) and overwrite the one in the same folder in
|
||||
> your Android NDK installation. You might need the free [7-Zip
|
||||
> archiving utility]
|
||||
|
||||
### Creating new projects
|
||||
|
||||
Create a normal NDK project, either from the command line as described
|
||||
in the [Android
|
||||
NDK](http://developer.android.com/tools/sdk/ndk/index.html#GetStarted)
|
||||
home, or use Eclipse: File → New → Project… → Android Application
|
||||
Project, and, once the wizard is complete, right click on the project
|
||||
→ Android Tools → Add Native Support …
|
||||
in the [Android NDK][2] home, or use Eclipse: File → New → Project…
|
||||
→ Android Application Project, and, once the wizard is complete, right
|
||||
click on the project → Android Tools → Add Native Support …
|
||||
|
||||
To add GStreamer support you only need to modify the
|
||||
`jni/Android.mk` file. This file describes the native files in your
|
||||
|
@ -199,16 +189,14 @@ project, and its barebones structure (as auto-generated by Eclipse) is:
|
|||
|
||||
**Android.mk**
|
||||
|
||||
```
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
LOCAL_MODULE := NativeApplication
|
||||
LOCAL_SRC_FILES := NativeApplication.c
|
||||
LOCAL_MODULE := NativeApplication
|
||||
LOCAL_SRC_FILES := NativeApplication.c
|
||||
|
||||
include $(BUILD_SHARED_LIBRARY)
|
||||
```
|
||||
include $(BUILD_SHARED_LIBRARY)
|
||||
|
||||
Where line 5 specifies the name of the `.so` file that will contain your
|
||||
native code and line 6 states all source files that compose your native
|
||||
|
@ -218,26 +206,24 @@ Adding GStreamer support only requires adding these lines:
|
|||
|
||||
**Android.mk with GStreamer support**
|
||||
|
||||
```
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
LOCAL_MODULE := NativeApplication
|
||||
LOCAL_SRC_FILES := NativeApplication.c
|
||||
LOCAL_SHARED_LIBRARIES := gstreamer_android
|
||||
LOCAL_LDLIBS := -landroid
|
||||
LOCAL_MODULE := NativeApplication
|
||||
LOCAL_SRC_FILES := NativeApplication.c
|
||||
LOCAL_SHARED_LIBRARIES := gstreamer_android
|
||||
LOCAL_LDLIBS := -landroid
|
||||
|
||||
include $(BUILD_SHARED_LIBRARY)
|
||||
include $(BUILD_SHARED_LIBRARY)
|
||||
|
||||
GSTREAMER_SDK_ROOT := $(GSTREAMER_SDK_ROOT_ANDROID)
|
||||
GSTREAMER_NDK_BUILD_PATH := $(GSTREAMER_SDK_ROOT)/share/gst-android/ndk-build/
|
||||
GSTREAMER_PLUGINS := coreelements ogg theora vorbis ffmpegcolorspace playback eglglessink soup opensles
|
||||
G_IO_MODULES := gnutls
|
||||
GSTREAMER_EXTRA_DEPS := gstreamer-interfaces-0.10 gstreamer-video-0.10
|
||||
GSTREAMER_SDK_ROOT := $(GSTREAMER_SDK_ROOT_ANDROID)
|
||||
GSTREAMER_NDK_BUILD_PATH := $(GSTREAMER_SDK_ROOT)/share/gst-android/ndk-build/
|
||||
GSTREAMER_PLUGINS := coreelements ogg theora vorbis ffmpegcolorspace playback eglglessink soup opensles
|
||||
G_IO_MODULES := gnutls
|
||||
GSTREAMER_EXTRA_DEPS := gstreamer-interfaces-0.10 gstreamer-video-0.10
|
||||
|
||||
include $(GSTREAMER_NDK_BUILD_PATH)/gstreamer.mk
|
||||
```
|
||||
include $(GSTREAMER_NDK_BUILD_PATH)/gstreamer.mk
|
||||
|
||||
Where line 7 specifies an extra library to be included in the project:
|
||||
`libgstreamer_android.so`. This library contains all GStreamer code,
|
||||
|
@ -264,22 +250,34 @@ Listing all desired plugins can be cumbersome, so they have been grouped
|
|||
into categories, which can be used by including the `plugins.mk` file,
|
||||
and used as follows:
|
||||
|
||||
```
|
||||
include $(GSTREAMER_NDK_BUILD_PATH)/plugins.mk
|
||||
GSTREAMER_PLUGINS := $(GSTREAMER_PLUGINS_CORE) $(GSTREAMER_PLUGINS_CODECS) playbin souphttpsrc
|
||||
```
|
||||
include $(GSTREAMER_NDK_BUILD_PATH)/plugins.mk
|
||||
GSTREAMER_PLUGINS := $(GSTREAMER_PLUGINS_CORE) $(GSTREAMER_PLUGINS_CODECS) playbin souphttpsrc
|
||||
|
||||
|
||||
#### List of categories and included plugins
|
||||
|
||||
| Category | Included plugins |
|
||||
|--|--|
|
||||
| `GSTREAMER_PLUGINS_CORE` | coreelements coreindexers adder app audioconvert audiorate audioresample audiotestsrc ffmpegcolorspace gdp gio pango typefindfunctions videorate videoscale videotestsrc volume autodetect videofilter |
|
||||
| `GSTREAMER_PLUGINS_PLAYBACK` | decodebin playbin |
|
||||
| `GSTREAMER_PLUGINS_CODECS` | subparse ogg theora vorbis alaw annodex apetag audioparsers auparse avi flac flv flxdec icydemux id3demux isomp4 jpeg matroska mulaw multipart png speex taglib wavenc wavpack wavparse y4menc adpcmdec adpcmenc aiff cdxaparse dtmf dvbsuboverlay dvdspu fragmented hdvparse id3tag ivfparse jp2k kate mve mxf nsf nuvdemux opus pcapparse pnm schro siren subenc tta videoparsersbad vmnc vp8 y4mdec |
|
||||
| `GSTREAMER_PLUGINS_VIS` | libvisual goom goom2k1 audiovisualizers |
|
||||
| `GSTREAMER_PLUGINS_EFFECTS` | alpha alphacolor audiofx cutter debug deinterlace effectv equalizer gdkpixbuf imagefreeze interleave level multifile replaygain shapewipe smpte spectrum videobox videocrop videomixer autoconvert bayer coloreffects faceoverlay fieldanalysis freeverb frei0r gaudieffects geometrictransform interlace jp2kdecimator liveadder rawparse removesilence scaletempoplugin segmentclip smooth speed stereo videofiltersbad videomeasure videosignal |
|
||||
| `GSTREAMER_PLUGINS_NET` | rtsp rtp rtpmanager souphttpsrc udp dataurisrc rtpmux rtpvp8 sdpelem |
|
||||
| `GSTREAMER_PLUGINS_CODECS_GPL` | assrender |
|
||||
| `GSTREAMER_PLUGINS_SYS` | eglglessink opensles amc |
|
||||
| Category | Included plugins |
|
||||
|--------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `GSTREAMER_PLUGINS_CORE` | coreelements coreindexers adder app audioconvert audiorate audioresample audiotestsrc ffmpegcolorspace gdp gio pango typefindfunctions videorate videoscale videotestsrc volume autodetect videofilter |
|
||||
| `GSTREAMER_PLUGINS_PLAYBACK` | decodebin playbin |
|
||||
| `GSTREAMER_PLUGINS_CODECS` | subparse ogg theora vorbis alaw annodex apetag audioparsers auparse avi flac flv flxdec icydemux id3demux isomp4 jpeg matroska mulaw multipart png speex taglib wavenc wavpack wavparse y4menc adpcmdec adpcmenc aiff cdxaparse dtmf dvbsuboverlay dvdspu fragmented hdvparse id3tag ivfparse jp2k kate mve mxf nsf nuvdemux opus pcapparse pnm schro siren subenc tta videoparsersbad vmnc vp8 y4mdec |
|
||||
| `GSTREAMER_PLUGINS_VIS` | libvisual goom goom2k1 audiovisualizers |
|
||||
| `GSTREAMER_PLUGINS_EFFECTS` | alpha alphacolor audiofx cutter debug deinterlace effectv equalizer gdkpixbuf imagefreeze interleave level multifile replaygain shapewipe smpte spectrum videobox videocrop videomixer autoconvert bayer coloreffects faceoverlay fieldanalysis freeverb frei0r gaudieffects geometrictransform interlace jp2kdecimator liveadder rawparse removesilence scaletempoplugin segmentclip smooth speed stereo videofiltersbad videomeasure videosignal |
|
||||
| `GSTREAMER_PLUGINS_NET` | rtsp rtp rtpmanager souphttpsrc udp dataurisrc rtpmux rtpvp8 sdpelem |
|
||||
| `GSTREAMER_PLUGINS_CODECS_GPL` | assrender |
|
||||
| `GSTREAMER_PLUGINS_SYS` | glimagesink opensles amc |
|
||||
|
||||
Build and run your application as explained in the **Building the tutorials** section.
|
||||
|
||||
[information]: images/icons/emoticons/information.png
|
||||
[Android SDK]: http://developer.android.com/sdk/index.html
|
||||
[Android NDK]: http://developer.android.com/tools/sdk/ndk/index.html
|
||||
[Java Native Interface]: http://en.wikipedia.org/wiki/Java_Native_Interface
|
||||
[Android JNI tips here]: http://developer.android.com/guide/practices/jni.html
|
||||
[prebuilt binaries]: https://gstreamer.freedesktop.org/data/pkg/android/
|
||||
[language bindings]: http://en.wikipedia.org/wiki/Language_binding
|
||||
[warning]: images/icons/emoticons/warning.png
|
||||
[Android NDK System Requirements]: http://developer.android.com/tools/sdk/ndk/index.html#Reqs
|
||||
[this project]: http://code.google.com/p/mingw-and-ndk/downloads/detail?name=android-ndk-r8b-ma-windows.7z&can=2&q=
|
||||
[7-Zip archiving utility]: http://www.7-zip.org/
|
||||
[2]: http://developer.android.com/tools/sdk/ndk/index.html#GetStarted
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Installing on Linux
|
||||
|
||||
This page last changed on Jun 12, 2013 by slomo.
|
||||
|
||||
# Prerequisites
|
||||
|
||||
To develop applications using the GStreamer SDK on Linux you will need
|
||||
|
@ -280,5 +278,3 @@ at `gst-sdk-shell` to see what this script needs to do. It is also
|
|||
possible to create a custom wrapper script with
|
||||
the `gensdkshell` command of the Cerbero build system, if you built
|
||||
the SDK yourself as explained above.
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -65,8 +65,8 @@ useful:
|
|||
- /Library/Frameworks/GStreamer.framework/Headers: path with the
|
||||
development headers
|
||||
- /Library/Frameworks/GStreamer.framework/Commands: link to the
|
||||
commands provided by the framework, such as gst-inspect-0.10 or
|
||||
gst-launch-0.10
|
||||
commands provided by the framework, such as gst-inspect-1.0 or
|
||||
gst-launch-1.0
|
||||
|
||||
For more information on OS X Frameworks anatomy, you can consult the
|
||||
following [link](https://developer.apple.com/library/mac/#documentation/MacOSX/Conceptual/BPFrameworks/Concepts/FrameworkAnatomy.html)
|
||||
|
|
|
@ -2,7 +2,10 @@
|
|||
|
||||
## Choose your platform by clicking on the corresponding logo
|
||||
|
||||
[![](attachments/1540163.png)](Installing+on+Mac+OS+X.markdown) [![](attachments/1540164.png)](Installing+on+Windows.markdown) [![](attachments/2654239.png)](Installing+for+Android+development.markdown) [![](attachments/3539150.jpeg)](Installing+for+iOS+development.markdown)
|
||||
[![](attachments/1540163.png)](Installing+on+Mac+OS+X.markdown)
|
||||
[![](attachments/1540164.png)](Installing+on+Windows.markdown)
|
||||
[![](attachments/2654239.png)](Installing+for+Android+development.markdown)
|
||||
[![](attachments/3539150.jpeg)](Installing+for+iOS+development.markdown)
|
||||
|
||||
## Linux
|
||||
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Legal information
|
||||
|
||||
This page last changed on Jun 11, 2012 by xartigas.
|
||||
|
||||
# Installer, default installation
|
||||
|
||||
The installer (Microsoft Windows and MacOSX) and the default
|
||||
|
@ -217,5 +215,3 @@ relink the library (“any data and utility programs needed for
|
|||
reproducing the executable from it”, except the “major components”) and
|
||||
that the license of the conditions of the resulting program must allow
|
||||
decompilation to debug modifications to the library.
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:28
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Mac OS X deployment
|
||||
|
||||
This page last changed on Nov 28, 2012 by xartigas.
|
||||
|
||||
This page explains how to deploy GStreamer along your application. There
|
||||
are different mechanisms, which have been reviewed in [Deploying your
|
||||
application](Deploying%2Byour%2Bapplication.html). The details for some
|
||||
|
@ -275,8 +273,8 @@ dependent dynamic libraries
|
|||
using [otool](https://developer.apple.com/library/mac/#documentation/darwin/reference/manpages/man1/otool.1.html):
|
||||
|
||||
``` lang=bash
|
||||
$ otool -L /Library/Frameworks/GStreamer.framework/Commands/gst-launch-0.10
|
||||
/Library/Frameworks/GStreamer.framework/Commands/gst-launch-0.10:
|
||||
$ otool -L /Library/Frameworks/GStreamer.framework/Commands/gst-launch-1.0
|
||||
/Library/Frameworks/GStreamer.framework/Commands/gst-launch-1.0:
|
||||
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 550.43.0)
|
||||
/Library/Frameworks/GStreamer.framework/Versions/0.10/x86/lib/libgstreamer-0.10.0.dylib (compatibility version 31.0.0, current version 31.0.0)
|
||||
/Library/Frameworks/GStreamer.framework/Versions/0.10/x86/lib/libxml2.2.dylib (compatibility version 10.0.0, current version 10.8.0)
|
||||
|
@ -302,7 +300,7 @@ $ otool -D /Library/Frameworks/GStreamer.framework/Libraries/libgstreamer-0.10.d
|
|||
Any object file that links to the dynamic library `gstreamer-0.10` will
|
||||
use the
|
||||
path `/Library/Frameworks/GStreamer.framework/Versions/0.10/x86/lib/libgstreamer-0.10.0.dylib` to
|
||||
locate it, as we saw previously with `gst-launch-0.10`.
|
||||
locate it, as we saw previously with `gst-launch-1.0`.
|
||||
|
||||
Since working exclusively with full paths wouldn't let us install our
|
||||
binaries anywhere in the path, the linker provides a mechanism of string
|
||||
|
@ -379,5 +377,3 @@ You can use the following functions:
|
|||
[PackageMaker1.png](attachments/2097292/2424841.png) (image/png)
|
||||
![](images/icons/bullet_blue.gif)
|
||||
[PackageMaker2.png](attachments/2097292/2424842.png) (image/png)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Multiplatform deployment using Cerbero
|
||||
|
||||
This page last changed on Nov 21, 2012 by slomo.
|
||||
|
||||
Cerbero is the build and packaging system used to construct the
|
||||
GStreamer SDK. It uses “recipe” files that indicate how to build
|
||||
particular projects, and on what other projects they depend.
|
||||
|
@ -481,5 +479,3 @@ in the `packages` directory. This command will build your software and
|
|||
all its dependencies, and then make individual packages for them (both
|
||||
the dependencies and your software). The resulting files will be in the
|
||||
current working directory.
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Playback tutorial 2: Subtitle management
|
||||
|
||||
This page last changed on May 16, 2012 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
This tutorial is very similar to the previous one, but instead of
|
||||
|
@ -398,5 +396,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Playback tutorial 3: Short-cutting the pipeline
|
||||
|
||||
This page last changed on Jun 26, 2012 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
[Basic tutorial 8: Short-cutting the
|
||||
|
@ -267,5 +265,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
[vs2010.zip](attachments/1442200/2424849.zip) (application/zip)
|
||||
![](images/icons/bullet_blue.gif)
|
||||
[playback-tutorial-3.c](attachments/1442200/2424848.c) (text/plain)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Playback tutorial 4: Progressive streaming
|
||||
|
||||
This page last changed on Sep 13, 2012 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
[Basic tutorial 12:
|
||||
|
@ -445,5 +443,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
[playback-tutorial-4.c](attachments/327808/2424846.c) (text/plain)
|
||||
![](images/icons/bullet_blue.gif)
|
||||
[vs2010.zip](attachments/327808/2424847.zip) (application/zip)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Playback tutorial 5: Color Balance
|
||||
|
||||
This page last changed on Jun 25, 2012 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
Brightness, Contrast, Hue and Saturation are common video adjustments,
|
||||
|
@ -325,5 +323,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
[playback-tutorial-5.c](attachments/327804/2424874.c) (text/plain)
|
||||
![](images/icons/bullet_blue.gif)
|
||||
[vs2010.zip](attachments/327804/2424875.zip) (application/zip)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Playback tutorial 6: Audio visualization
|
||||
|
||||
This page last changed on Jun 26, 2012 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
GStreamer comes with a set of elements that turn audio into video. They
|
||||
|
@ -271,5 +269,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
[vs2010.zip](attachments/327802/2424878.zip) (application/zip)
|
||||
![](images/icons/bullet_blue.gif)
|
||||
[playback-tutorial-6.c](attachments/327802/2424879.c) (text/plain)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Playback tutorial 7: Custom playbin2 sinks
|
||||
|
||||
This page last changed on Dec 03, 2012 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
`playbin2` can be further customized by manually selecting its audio and
|
||||
|
@ -241,5 +239,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
[playback-tutorial-7.c](attachments/1441842/2424881.c) (text/plain)
|
||||
![](images/icons/bullet_blue.gif)
|
||||
[vs2010.zip](attachments/1441842/2424882.zip) (application/zip)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Playback tutorial 8: Hardware-accelerated video decoding
|
||||
|
||||
This page last changed on Jul 24, 2012 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
Hardware-accelerated video decoding has rapidly become a necessity, as
|
||||
|
@ -346,5 +344,3 @@ accelerated video decoding. Particularly,
|
|||
rank of the decoding element with `gst_plugin_feature_set_rank()`.
|
||||
|
||||
It has been a pleasure having you here, and see you soon\!
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Playback tutorial 9: Digital audio pass-through
|
||||
|
||||
This page last changed on Jul 24, 2012 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
This tutorial shows how GStreamer handles digital audio pass-through.
|
||||
|
@ -104,5 +102,3 @@ In particular, it has shown that:
|
|||
panel of the operating system.
|
||||
|
||||
It has been a pleasure having you here, and see you soon\!
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,10 +1,6 @@
|
|||
# Playback tutorials
|
||||
|
||||
This page last changed on Mar 28, 2012 by xartigas.
|
||||
|
||||
# Welcome to the GStreamer SDK Playback tutorials
|
||||
|
||||
These tutorials explain everything you need to know to produce a media
|
||||
playback application using GStreamer.
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Qt tutorials
|
||||
|
||||
This page last changed on May 02, 2013 by tdfischer.
|
||||
|
||||
# Welcome to the GStreamer SDK Qt tutorials
|
||||
|
||||
These tutorials describe Qt-specific topics. General GStreamer concepts
|
||||
|
@ -14,5 +12,3 @@ The Qt tutorials have the same structure as the [Android
|
|||
tutorials](Android%2Btutorials.html): Each one builds on top of the
|
||||
previous one and adds progressively more functionality, until a working
|
||||
media player application is obtained in \#FIXME\#
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# QtGStreamer vs C GStreamer
|
||||
|
||||
This page last changed on May 24, 2013 by xartigas.
|
||||
|
||||
QtGStreamer is designed to mirror the C GStreamer API as closely as
|
||||
possible. There are, of course, minor differences. They are documented
|
||||
here.
|
||||
|
@ -108,5 +106,3 @@ need them. This is accessible with a simple cast:
|
|||
ElementPtr qgstElement = QGst::ElementFactory::make("playbin2");
|
||||
GstElement* gstElement = GST_ELEMENT(qgstElement);
|
||||
```
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
# Todo
|
||||
|
||||
|
||||
This is just a simple TODO list to follow progress of the port from
|
||||
gstreamer.com content to hotdoc
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
# Table of Concepts
|
||||
This page last changed on Jun 06, 2012 by xartigas.
|
||||
|
||||
This table shows in which tutorial each of the following key GStreamer
|
||||
concepts is discussed.
|
||||
|
@ -12,9 +11,9 @@ concepts is discussed.
|
|||
- Debugging: [Basic tutorial 11: Debugging tools]
|
||||
- Discoverer: [Basic tutorial 9: Media information gathering]
|
||||
- Elements: [Basic tutorial 2: GStreamer concepts]
|
||||
- gst-discoverer: [Basic tutorial 10: GStreamer tools]
|
||||
- gst-inspect: [Basic tutorial 10: GStreamer tools], [gst-inspect]
|
||||
- gst-launch: [Basic tutorial 10: GStreamer tools], [gst-launch]
|
||||
- gst-discoverer-1.0: [Basic tutorial 10: GStreamer tools]
|
||||
- gst-inspect-1.0: [Basic tutorial 10: GStreamer tools], [gst-inspect-1.0]
|
||||
- gst-launch-1.0: [Basic tutorial 10: GStreamer tools], [gst-launch-1.0]
|
||||
- GUI: [Basic tutorial 5: GUI toolkit integration]
|
||||
- Links: [Basic tutorial 2: GStreamer concepts]
|
||||
- Pads: [Basic tutorial 3: Dynamic pipelines]
|
||||
|
@ -37,8 +36,8 @@ concepts is discussed.
|
|||
[Basic tutorial 11: Debugging tools]: Basic+tutorial+11+Debugging+tools.markdown
|
||||
[Basic tutorial 9: Media information gathering]: Basic+tutorial+9+Media+information+gathering.markdown
|
||||
[Basic tutorial 10: GStreamer tools]: Basic+tutorial+10+GStreamer+tools.markdown
|
||||
[gst-inspect]: gst-inspect.markdown
|
||||
[gst-launch]: gst-launch.markdown
|
||||
[gst-inspect-1.0]: gst-inspect.markdown
|
||||
[gst-launch-1.0]: gst-launch.markdown
|
||||
[Basic tutorial 5: GUI toolkit integration]: Basic+tutorial+5+GUI+toolkit+integration.markdown
|
||||
[Basic tutorial 3: Dynamic pipelines]: Basic+tutorial+3+Dynamic+pipelines.markdown
|
||||
[Basic tutorial 7: Multithreading and Pad Availability]: Basic+tutorial+7+Multithreading+and+Pad+Availability.markdown
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Using appsink/appsrc in Qt
|
||||
|
||||
This page last changed on May 24, 2013 by xartigas.
|
||||
|
||||
# Goal
|
||||
|
||||
For those times when you need to stream data into or out of GStreamer
|
||||
|
@ -241,5 +239,3 @@ You should now have an understanding of how to push and pull arbitrary
|
|||
data into and out of a GStreamer pipeline.
|
||||
|
||||
It has been a pleasure having you here, and see you soon\!
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# Windows deployment
|
||||
|
||||
This page last changed on Nov 28, 2012 by xartigas.
|
||||
|
||||
This page explains how to deploy GStreamer along your application. There
|
||||
are different mechanisms, which have been reviewed in [Deploying your
|
||||
application](Deploying%2Byour%2Bapplication.html). The details for some
|
||||
|
@ -256,5 +254,3 @@ Get the ZIP file with all Merge Modules for your architecture:
|
|||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
BIN
attachments/1540163.png
Normal file
BIN
attachments/1540163.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 8.8 KiB |
BIN
attachments/1540164.png
Normal file
BIN
attachments/1540164.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 31 KiB |
BIN
attachments/2654239.png
Normal file
BIN
attachments/2654239.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 5 KiB |
BIN
attachments/3539150.jpeg
Normal file
BIN
attachments/3539150.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.1 KiB |
BIN
attachments/emoticons/information.png
Normal file
BIN
attachments/emoticons/information.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3 KiB |
|
@ -1,37 +1,35 @@
|
|||
# gst-inspect
|
||||
|
||||
This page last changed on May 30, 2012 by xartigas.
|
||||
# gst-inspect-1.0
|
||||
|
||||
<table>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><img src="images/icons/emoticons/information.png" width="16" height="16" /></td>
|
||||
<td><p><span>This is the Linux man page for the </span><code>gst-inspect</code><span> tool. As such, it is very Linux-centric regarding path specification and plugin names. Please be patient while it is rewritten to be more generic.</span></p></td>
|
||||
<td><p><span>This is the Linux man page for the </span><code>gst-inspect-1.0</code><span> tool. As such, it is very Linux-centric regarding path specification and plugin names. Please be patient while it is rewritten to be more generic.</span></p></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
## Name
|
||||
|
||||
gst-inspect - print info about a GStreamer plugin or element
|
||||
gst-inspect-1.0 - print info about a GStreamer plugin or element
|
||||
|
||||
## Synopsis
|
||||
|
||||
**gst-inspect \[OPTION...\] \[PLUGIN|ELEMENT\]**
|
||||
**gst-inspect-1.0 \[OPTION...\] \[PLUGIN|ELEMENT\]**
|
||||
|
||||
## Description
|
||||
|
||||
*gst-inspect* is a tool that prints out information on
|
||||
*gst-inspect-1.0* is a tool that prints out information on
|
||||
available *GStreamer* plugins, information about a particular plugin,
|
||||
or information about a particular element. When executed with no PLUGIN
|
||||
or ELEMENT argument, *gst-inspect* will print a list of all plugins and
|
||||
or ELEMENT argument, *gst-inspect-1.0* will print a list of all plugins and
|
||||
elements together with a sumary. When executed with a PLUGIN or ELEMENT
|
||||
argument, *gst-inspect* will print information about that plug-in or
|
||||
argument, *gst-inspect-1.0* will print information about that plug-in or
|
||||
element.
|
||||
|
||||
## Options
|
||||
|
||||
*gst-inspect* accepts the following arguments and options:
|
||||
*gst-inspect-1.0* accepts the following arguments and options:
|
||||
|
||||
**PLUGIN**
|
||||
|
||||
|
@ -82,7 +80,7 @@ Add directories separated with ':' to the plugin search path
|
|||
## Example
|
||||
|
||||
```
|
||||
gst-inspect-0.10 audiotestsrc
|
||||
gst-inspect-1.0 audiotestsrc
|
||||
```
|
||||
|
||||
should produce:
|
||||
|
@ -208,5 +206,3 @@ Element Properties:
|
|||
flags: readable, writable
|
||||
Boolean. Default: false
|
||||
```
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:28
|
||||
|
|
|
@ -1,27 +1,25 @@
|
|||
# gst-launch
|
||||
|
||||
This page last changed on May 30, 2012 by xartigas.
|
||||
# gst-launch-1.0
|
||||
|
||||
<table>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><img src="images/icons/emoticons/information.png" width="16" height="16" /></td>
|
||||
<td><p>This is the Linux man page for the <code>gst-launch</code> tool. As such, it is very Linux-centric regarding path specification and plugin names. Please be patient while it is rewritten to be more generic.</p></td>
|
||||
<td><p>This is the Linux man page for the <code>gst-launch-1.0</code> tool. As such, it is very Linux-centric regarding path specification and plugin names. Please be patient while it is rewritten to be more generic.</p></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
## Name
|
||||
|
||||
gst-launch - build and run a GStreamer pipeline
|
||||
gst-launch-1.0 - build and run a GStreamer pipeline
|
||||
|
||||
## Synopsis
|
||||
|
||||
**gst-launch** *\[OPTION...\]* PIPELINE-DESCRIPTION
|
||||
**gst-launch-1.0** *\[OPTION...\]* PIPELINE-DESCRIPTION
|
||||
|
||||
## Description
|
||||
|
||||
*gst-launch* is a tool that builds and runs basic *GStreamer* pipelines.
|
||||
*gst-launch-1.0* is a tool that builds and runs basic *GStreamer* pipelines.
|
||||
|
||||
In simple form, a PIPELINE-DESCRIPTION is a list of elements separated
|
||||
by exclamation marks (\!). Properties may be appended to elements, in
|
||||
|
@ -31,14 +29,14 @@ For a complete description of possible PIPELINE-DESCRIPTIONS see the
|
|||
section*pipeline description* below or consult the GStreamer
|
||||
documentation.
|
||||
|
||||
Please note that *gst-launch* is primarily a debugging tool for
|
||||
Please note that *gst-launch-1.0* is primarily a debugging tool for
|
||||
developers and users. You should not build applications on top of it.
|
||||
For applications, use the gst\_parse\_launch() function of the GStreamer
|
||||
API as an easy way to construct pipelines from pipeline descriptions.
|
||||
|
||||
## Options
|
||||
|
||||
*gst-launch* accepts the following options:
|
||||
*gst-launch-1.0* accepts the following options:
|
||||
|
||||
**--help**
|
||||
|
||||
|
@ -77,7 +75,7 @@ time to work.
|
|||
|
||||
## Gstreamer Options
|
||||
|
||||
*gst-launch* also accepts the following options that are common to all
|
||||
*gst-launch-1.0* also accepts the following options that are common to all
|
||||
GStreamer applications:
|
||||
|
||||
## Pipeline Description
|
||||
|
@ -96,7 +94,7 @@ Creates an element of type ELEMENTTYPE and sets the PROPERTIES.
|
|||
|
||||
PROPERTY=VALUE ...
|
||||
|
||||
Sets the property to the specified value. You can use **gst-inspect**(1)
|
||||
Sets the property to the specified value. You can use **gst-inspect-1.0**(1)
|
||||
to find out about properties and allowed values of different elements.
|
||||
Enumeration properties can be set by name, nick or value.
|
||||
|
||||
|
@ -185,85 +183,85 @@ ffmpegcolorspace (for video) in front of the sink to make things work.
|
|||
|
||||
**Audio playback**
|
||||
|
||||
**gst-launch filesrc location=music.mp3 \! mad \! audioconvert \!
|
||||
**gst-launch-1.0 filesrc location=music.mp3 \! mad \! audioconvert \!
|
||||
audioresample \! osssink**
|
||||
Play the mp3 music file "music.mp3" using a libmad-based plug-in and
|
||||
output to an OSS device
|
||||
|
||||
**gst-launch filesrc location=music.ogg \! oggdemux \! vorbisdec \!
|
||||
**gst-launch-1.0 filesrc location=music.ogg \! oggdemux \! vorbisdec \!
|
||||
audioconvert \! audioresample \! osssink**
|
||||
Play an Ogg Vorbis format file
|
||||
|
||||
**gst-launch gnomevfssrc location=music.mp3 \! mad \! osssink
|
||||
gst-launch gnomevfssrc location=<http://domain.com/music.mp3> \! mad \!
|
||||
**gst-launch-1.0 gnomevfssrc location=music.mp3 \! mad \! osssink
|
||||
gst-launch-1.0 gnomevfssrc location=<http://domain.com/music.mp3> \! mad \!
|
||||
audioconvert \! audioresample \! osssink**
|
||||
Play an mp3 file or an http stream using GNOME-VFS
|
||||
|
||||
**gst-launch gnomevfssrc location=<smb://computer/music.mp3> \! mad \!
|
||||
**gst-launch-1.0 gnomevfssrc location=<smb://computer/music.mp3> \! mad \!
|
||||
audioconvert \! audioresample \! osssink**
|
||||
Use GNOME-VFS to play an mp3 file located on an SMB server
|
||||
|
||||
**Format conversion**
|
||||
|
||||
**gst-launch filesrc location=music.mp3 \! mad \! audioconvert \!
|
||||
**gst-launch-1.0 filesrc location=music.mp3 \! mad \! audioconvert \!
|
||||
vorbisenc \! oggmux \! filesink location=music.ogg**
|
||||
Convert an mp3 music file to an Ogg Vorbis file
|
||||
|
||||
**gst-launch filesrc location=music.mp3 \! mad \! audioconvert \!
|
||||
**gst-launch-1.0 filesrc location=music.mp3 \! mad \! audioconvert \!
|
||||
flacenc \! filesink location=test.flac**
|
||||
Convert to the FLAC format
|
||||
|
||||
**Other**
|
||||
|
||||
**gst-launch filesrc location=music.wav \! wavparse \! audioconvert \!
|
||||
**gst-launch-1.0 filesrc location=music.wav \! wavparse \! audioconvert \!
|
||||
audioresample \! osssink**
|
||||
Plays a .WAV file that contains raw audio data (PCM).
|
||||
|
||||
**gst-launch filesrc location=music.wav \! wavparse \! audioconvert \!
|
||||
**gst-launch-1.0 filesrc location=music.wav \! wavparse \! audioconvert \!
|
||||
vorbisenc \! oggmux \! filesink location=music.ogg
|
||||
gst-launch filesrc location=music.wav \! wavparse \! audioconvert \!
|
||||
gst-launch-1.0 filesrc location=music.wav \! wavparse \! audioconvert \!
|
||||
lame \! filesink location=music.mp3**
|
||||
Convert a .WAV file containing raw audio data into an Ogg Vorbis or mp3
|
||||
file
|
||||
|
||||
**gst-launch cdparanoiasrc mode=continuous \! audioconvert \! lame \!
|
||||
**gst-launch-1.0 cdparanoiasrc mode=continuous \! audioconvert \! lame \!
|
||||
id3v2mux \! filesink location=cd.mp3**
|
||||
rips all tracks from compact disc and convert them into a single mp3
|
||||
file
|
||||
|
||||
**gst-launch cdparanoiasrc track=5 \! audioconvert \! lame \! id3v2mux
|
||||
**gst-launch-1.0 cdparanoiasrc track=5 \! audioconvert \! lame \! id3v2mux
|
||||
\! filesink location=track5.mp3**
|
||||
rips track 5 from the CD and converts it into a single mp3 file
|
||||
|
||||
Using **gst-inspect**(1), it is possible to discover settings like the
|
||||
Using **gst-inspect-1.0**(1), it is possible to discover settings like the
|
||||
above for cdparanoiasrc that will tell it to rip the entire cd or only
|
||||
tracks of it. Alternatively, you can use an URI and gst-launch-0.10 will
|
||||
tracks of it. Alternatively, you can use an URI and gst-launch-1.0 will
|
||||
find an element (such as cdparanoia) that supports that protocol for
|
||||
you, e.g.: **gst-launch [cdda://5]() \! lame vbr=new vbr-quality=6 \!
|
||||
you, e.g.: **gst-launch-1.0 [cdda://5]() \! lame vbr=new vbr-quality=6 \!
|
||||
filesink location=track5.mp3**
|
||||
|
||||
**gst-launch osssrc \! audioconvert \! vorbisenc \! oggmux \! filesink
|
||||
**gst-launch-1.0 osssrc \! audioconvert \! vorbisenc \! oggmux \! filesink
|
||||
location=input.ogg**
|
||||
records sound from your audio input and encodes it into an ogg file
|
||||
|
||||
**Video**
|
||||
|
||||
**gst-launch filesrc location=JB\_FF9\_TheGravityOfLove.mpg \! dvddemux
|
||||
**gst-launch-1.0 filesrc location=JB\_FF9\_TheGravityOfLove.mpg \! dvddemux
|
||||
\! mpeg2dec \! xvimagesink**
|
||||
Display only the video portion of an MPEG-1 video file, outputting to an
|
||||
X display window
|
||||
|
||||
**gst-launch filesrc location=/flflfj.vob \! dvddemux \! mpeg2dec \!
|
||||
**gst-launch-1.0 filesrc location=/flflfj.vob \! dvddemux \! mpeg2dec \!
|
||||
sdlvideosink**
|
||||
Display the video portion of a .vob file (used on DVDs), outputting to
|
||||
an SDL window
|
||||
|
||||
**gst-launch filesrc location=movie.mpg \! dvddemux name=demuxer
|
||||
**gst-launch-1.0 filesrc location=movie.mpg \! dvddemux name=demuxer
|
||||
demuxer. \! queue \! mpeg2dec \! sdlvideosink demuxer. \! queue \! mad
|
||||
\! audioconvert \! audioresample \! osssink**
|
||||
Play both video and audio portions of an MPEG movie
|
||||
|
||||
**gst-launch filesrc location=movie.mpg \! mpegdemux name=demuxer
|
||||
**gst-launch-1.0 filesrc location=movie.mpg \! mpegdemux name=demuxer
|
||||
demuxer. \! queue \! mpeg2dec \! ffmpegcolorspace \! sdlvideosink
|
||||
demuxer. \! queue \! mad \! audioconvert \! audioresample \! osssink**
|
||||
Play an AVI movie with an external text subtitle stream
|
||||
|
@ -271,42 +269,42 @@ Play an AVI movie with an external text subtitle stream
|
|||
This example also shows how to refer to specific pads by name if an
|
||||
element (here: textoverlay) has multiple sink or source pads.
|
||||
|
||||
**gst-launch textoverlay name=overlay \! ffmpegcolorspace \! videoscale
|
||||
**gst-launch-1.0 textoverlay name=overlay \! ffmpegcolorspace \! videoscale
|
||||
\! autovideosink filesrc location=movie.avi \! decodebin2 \!
|
||||
ffmpegcolorspace \! overlay.video\_sink filesrc location=movie.srt \!
|
||||
subparse \! overlay.text\_sink**
|
||||
|
||||
Play an AVI movie with an external text subtitle stream using playbin2
|
||||
|
||||
**gst-launch playbin2 uri=<file:///path/to/movie.avi>
|
||||
**gst-launch-1.0 playbin2 uri=<file:///path/to/movie.avi>
|
||||
suburi=<file:///path/to/movie.srt>**
|
||||
|
||||
**Network streaming**
|
||||
|
||||
Stream video using RTP and network elements.
|
||||
|
||||
**gst-launch v4l2src \!
|
||||
**gst-launch-1.0 v4l2src \!
|
||||
video/x-raw-yuv,width=128,height=96,format='(fourcc)'UYVY \!
|
||||
ffmpegcolorspace \! ffenc\_h263 \! video/x-h263 \! rtph263ppay pt=96 \!
|
||||
udpsink host=192.168.1.1 port=5000 sync=false**
|
||||
Use this command on the receiver
|
||||
|
||||
**gst-launch udpsrc port=5000 \! application/x-rtp,
|
||||
**gst-launch-1.0 udpsrc port=5000 \! application/x-rtp,
|
||||
clock-rate=90000,payload=96 \! rtph263pdepay queue-delay=0 \!
|
||||
ffdec\_h263 \! xvimagesink**
|
||||
This command would be run on the transmitter
|
||||
|
||||
**Diagnostic**
|
||||
|
||||
**gst-launch -v fakesrc num-buffers=16 \! fakesink**
|
||||
**gst-launch-1.0 -v fakesrc num-buffers=16 \! fakesink**
|
||||
Generate a null stream and ignore it (and print out details).
|
||||
|
||||
**gst-launch audiotestsrc \! audioconvert \! audioresample \!
|
||||
**gst-launch-1.0 audiotestsrc \! audioconvert \! audioresample \!
|
||||
osssink**
|
||||
Generate a pure sine tone to test the audio output
|
||||
|
||||
**gst-launch videotestsrc \! xvimagesink
|
||||
gst-launch videotestsrc \! ximagesink**
|
||||
**gst-launch-1.0 videotestsrc \! xvimagesink
|
||||
gst-launch-1.0 videotestsrc \! ximagesink**
|
||||
Generate a familiar test pattern to test the video output
|
||||
|
||||
**Automatic linking**
|
||||
|
@ -314,29 +312,29 @@ Generate a familiar test pattern to test the video output
|
|||
You can use the decodebin element to automatically select the right
|
||||
elements to get a working pipeline.
|
||||
|
||||
**gst-launch filesrc location=musicfile \! decodebin \! audioconvert \!
|
||||
**gst-launch-1.0 filesrc location=musicfile \! decodebin \! audioconvert \!
|
||||
audioresample \! osssink**
|
||||
Play any supported audio format
|
||||
|
||||
**gst-launch filesrc location=videofile \! decodebin name=decoder
|
||||
**gst-launch-1.0 filesrc location=videofile \! decodebin name=decoder
|
||||
decoder. \! queue \! audioconvert \! audioresample \! osssink decoder.
|
||||
\! ffmpegcolorspace \! xvimagesink**
|
||||
Play any supported video format with video and audio output. Threads are
|
||||
used automatically. To make this even easier, you can use the playbin
|
||||
element:
|
||||
|
||||
**gst-launch playbin uri=<file:///home/joe/foo.avi>**
|
||||
**gst-launch-1.0 playbin uri=<file:///home/joe/foo.avi>**
|
||||
|
||||
**Filtered connections**
|
||||
|
||||
These examples show you how to use filtered caps.
|
||||
|
||||
**gst-launch videotestsrc \!
|
||||
**gst-launch-1.0 videotestsrc \!
|
||||
'video/x-raw-yuv,format=(fourcc)YUY2;video/x-raw-yuv,format=(fourcc)YV12'
|
||||
\! xvimagesink**
|
||||
Show a test image and use the YUY2 or YV12 video format for this.
|
||||
|
||||
**gst-launch osssrc \!
|
||||
**gst-launch-1.0 osssrc \!
|
||||
'audio/x-raw-int,rate=\[32000,64000\],width=\[16,32\],depth={16,24,32},signed=(boolean)true'
|
||||
\! wavenc \! filesink location=recording.wav**
|
||||
record audio and write it to a .wav file. Force usage of signed 16 to 32
|
||||
|
@ -401,5 +399,3 @@ Simply set G\_DEBUG as mentioned above and run the program in gdb (or
|
|||
let it core dump). Then get a stack trace in the usual way
|
||||
|
||||
<!-- end list -->
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:28
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# iOS tutorial 1: Link against GStreamer
|
||||
|
||||
This page last changed on May 06, 2013 by xartigas.
|
||||
|
||||
# Goal![](attachments/thumbnails/3014792/3113601)
|
||||
|
||||
The first iOS tutorial is simple. The objective is to get the GStreamer
|
||||
|
@ -142,5 +140,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
![](images/icons/bullet_blue.gif)
|
||||
[ios-tutorial1-screenshot.png](attachments/3014792/3113601.png)
|
||||
(image/png)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# iOS tutorial 2: A running pipeline
|
||||
|
||||
This page last changed on May 13, 2013 by xartigas.
|
||||
|
||||
# Goal![](attachments/3571718/3538953.png)
|
||||
|
||||
As seen in the [Basic](Basic%2Btutorials.html) and
|
||||
|
@ -663,5 +661,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
![](images/icons/bullet_blue.gif)
|
||||
[ios-tutorial2-screenshot.png](attachments/3571718/3538953.png)
|
||||
(image/png)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# iOS tutorial 3: Video
|
||||
|
||||
This page last changed on May 13, 2013 by xartigas.
|
||||
|
||||
# Goal![](attachments/3571736/3538955.png)
|
||||
|
||||
Except for [Basic tutorial 5: GUI toolkit
|
||||
|
@ -583,5 +581,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
![](images/icons/bullet_blue.gif)
|
||||
[ios-tutorial3-screenshot.png](attachments/3571736/3538955.png)
|
||||
(image/png)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# iOS tutorial 4: A basic media player
|
||||
|
||||
This page last changed on May 21, 2013 by xartigas.
|
||||
|
||||
# Goal![](attachments/3571758/3539044.png)
|
||||
|
||||
Enough testing with synthetic images and audio tones\! This tutorial
|
||||
|
@ -1237,5 +1235,3 @@ here into an acceptable iOS media player.
|
|||
![](images/icons/bullet_blue.gif)
|
||||
[ios-tutorial4-screenshot.png](attachments/3571758/3539044.png)
|
||||
(image/png)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,8 +1,5 @@
|
|||
# iOS tutorial 5: A Complete media player
|
||||
|
||||
This page last changed on May 22, 2013 by
|
||||
xartigas.
|
||||
|
||||
# Goal![](attachments/3571769/3539046.png)![](attachments/3571769/3539045.png)
|
||||
|
||||
This tutorial wants to be the “demo application” that showcases what can
|
||||
|
@ -73,5 +70,3 @@ It has been a pleasure having you here, and see you soon\!
|
|||
![](images/icons/bullet_blue.gif)
|
||||
[ios-tutorial5-screenshot0.png](attachments/3571769/3539045.png)
|
||||
(image/png)
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
# iOS tutorials
|
||||
|
||||
This page last changed on May 07, 2013 by xartigas.
|
||||
|
||||
# Welcome to the GStreamer SDK iOS tutorials
|
||||
|
||||
These tutorials describe iOS-specific topics. General GStreamer concepts
|
||||
|
@ -34,5 +32,3 @@ All iOS tutorials are split into the following classes:
|
|||
- The `GStreamerBackendDelegate` protocol defines which methods a
|
||||
class can implement in order to serve as a UI delegate for the
|
||||
`GStreamerBackend`.
|
||||
|
||||
Document generated by Confluence on Oct 08, 2015 10:27
|
||||
|
|
Loading…
Reference in a new issue