Remove most mentions of the SDK

This commit is contained in:
Olivier Crête 2016-06-17 18:21:42 -04:00
parent f131594d7d
commit 208c456f81
16 changed files with 123 additions and 130 deletions

View file

@ -703,7 +703,7 @@ changed, and simply instruct the video sink to redraw itself, via the
size from the surface itself, so we do not need to bother about it size from the surface itself, so we do not need to bother about it
here. We need to call `gst_video_overlay_expose()` twice because of the way here. We need to call `gst_video_overlay_expose()` twice because of the way
the surface changes propagate down the OpenGL ES / EGL pipeline (The the surface changes propagate down the OpenGL ES / EGL pipeline (The
only video sink available for Android in the GStreamer SDK uses OpenGL only video sink available for Android in GStreamer uses OpenGL
ES). By the time we call the first expose, the surface that the sink ES). By the time we call the first expose, the surface that the sink
will pick up still contains the old size. will pick up still contains the old size.
@ -872,13 +872,13 @@ LOCAL_SHARED_LIBRARIES := gstreamer_android
LOCAL_LDLIBS := -llog -landroid LOCAL_LDLIBS := -llog -landroid
include $(BUILD_SHARED_LIBRARY) include $(BUILD_SHARED_LIBRARY)
ifndef GSTREAMER_SDK_ROOT ifndef GSTREAMER_ROOT
ifndef GSTREAMER_SDK_ROOT_ANDROID ifndef GSTREAMER_ROOT_ANDROID
$(error GSTREAMER_SDK_ROOT_ANDROID is not defined!) $(error GSTREAMER_ROOT_ANDROID is not defined!)
endif endif
GSTREAMER_SDK_ROOT := $(GSTREAMER_SDK_ROOT_ANDROID) GSTREAMER_ROOT := $(GSTREAMER_ROOT_ANDROID)
endif endif
GSTREAMER_NDK_BUILD_PATH := $(GSTREAMER_SDK_ROOT)/share/gst-android/ndk-build/ GSTREAMER_NDK_BUILD_PATH := $(GSTREAMER_ROOT)/share/gst-android/ndk-build/
include $(GSTREAMER_NDK_BUILD_PATH)/plugins.mk include $(GSTREAMER_NDK_BUILD_PATH)/plugins.mk
GSTREAMER_PLUGINS := $(GSTREAMER_PLUGINS_CORE) $(GSTREAMER_PLUGINS_SYS) $(GSTREAMER_PLUGINS_EFFECTS) GSTREAMER_PLUGINS := $(GSTREAMER_PLUGINS_CORE) $(GSTREAMER_PLUGINS_SYS) $(GSTREAMER_PLUGINS_EFFECTS)
GSTREAMER_EXTRA_DEPS := gstreamer-video-1.0 GSTREAMER_EXTRA_DEPS := gstreamer-video-1.0

View file

@ -1,6 +1,6 @@
# Android tutorials # Android tutorials
## Welcome to the GStreamer SDK Android tutorials ## Welcome to the GStreamer Android tutorials
These tutorials describe Android-specific topics. General GStreamer These tutorials describe Android-specific topics. General GStreamer
concepts will not be explained in these tutorials, so the concepts will not be explained in these tutorials, so the

View file

@ -14,13 +14,14 @@ and relax, and we will teach you:
## Introduction ## Introduction
These tools are available in the bin directory of the SDK. You need to These tools are available in the bin directory of the GStreamer
move to this directory to execute them, because it is not added to the binaries. You need to move to this directory to execute them, because
systems `PATH` environment variable (to avoid polluting it too much). it is not added to the systems `PATH` environment variable (to avoid
polluting it too much).
Just open a terminal (or console window) and go to the `bin` directory Just open a terminal (or console window) and go to the `bin` directory
of your GStreamer SDK installation (Read again the [Installing the of your GStreamer installation (Read again the [Installing
SDK](sdk-installing.html) section to find our where this is), GStreamer](sdk-installing.html) section to find our where this is),
and you are ready to start typing the commands given in this tutorial. and you are ready to start typing the commands given in this tutorial.
@ -36,7 +37,7 @@ 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 In order to allow for multiple versions of GStreamer to coexists in the
same system, these tools are versioned, this is, a GStreamer version 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 number is appended to their name. This version is based on
GStreamer 1.0, so the tools are called `gst-launch-1.0`, GStreamer 1.0, so the tools are called `gst-launch-1.0`,
`gst-inspect-1.0` and `gst-discoverer-1.0` `gst-inspect-1.0` and `gst-discoverer-1.0`

View file

@ -5,4 +5,4 @@ short-description: General topics required to understand the rest of the tutoria
# Basic tutorials # Basic tutorials
These tutorials describe general topics required to understand the rest These tutorials describe general topics required to understand the rest
of tutorials in the GStreamer SDK. of tutorials.

View file

@ -4,10 +4,10 @@
## Build requirements ## Build requirements
The GStreamer SDK build system provides bootstrapping facilities for all The GStreamer build system provides bootstrapping facilities for all
platforms, but it still needs a minimum base to bootstrap: platforms, but it still needs a minimum base to bootstrap:
- python >= 2.6 and python's `argparse` module, which is already - python > 2.6 and python's `argparse` module, which is already
included in python2.7. included in python2.7.
- git - git
@ -60,13 +60,13 @@ XCode. They are available from the "Preferences" dialog under
### iOS developers ### iOS developers
If you want to build the GStreamer-SDK for iOS, you also need the iOS If you want to build GStreamer for iOS, you also need the iOS
SDK. The minimum required iOS SDK version is 6.0 and is included in SDK. The minimum required iOS SDK version is 6.0 and is included in
[XCode] since version 4. [XCode] since version 4.
## Download the sources ## Download the sources
To build the GStreamer SDK, you first need to download **Cerbero**. To build GStreamer, you first need to download **Cerbero**.
Cerbero is a multi-platform build system for Open Source projects that Cerbero is a multi-platform build system for Open Source projects that
builds and creates native packages for different platforms, builds and creates native packages for different platforms,
architectures and distributions. architectures and distributions.
@ -106,15 +106,15 @@ cloned/unpacked Cerbero and type:
Enter the superuser/root password when prompted. Enter the superuser/root password when prompted.
The bootstrap process will then install all packages required to build The bootstrap process will then install all packages required to build
the GStreamer SDK. GStreamer.
## Build the SDK ## Build GSTreamer
To generate the SDK, use the following command: To generate GStreamer binaries, use the following command:
cerbero package gstreamer-1.0 cerbero package gstreamer-1.0
This should build all required SDK components and create packages for This should build all required GStreamer components and create packages for
your distribution at the Cerbero source directory. your distribution at the Cerbero source directory.
A list of supported packages to build can be retrieved using: A list of supported packages to build can be retrieved using:
@ -144,17 +144,17 @@ Once built, the output of the recipes will be installed at the prefix
defined in the Cerbero configuration file `$HOME/.cerbero/cerbero.cbc` defined in the Cerbero configuration file `$HOME/.cerbero/cerbero.cbc`
or at `$HOME/cerbero/dist` if no prefix is defined. or at `$HOME/cerbero/dist` if no prefix is defined.
### Build a single project with the SDK ### Build a single project with GStreamer
Rebuilding the whole SDK is relatively fast on Linux and OS X, but it Rebuilding the whole GStreamer is relatively fast on Linux and OS X, but it
can be very slow on Windows, so if you only need to rebuild a single can be very slow on Windows, so if you only need to rebuild a single
project (eg: gst-plugins-good to patch qtdemux) there is a much faster project (eg: gst-plugins-good to patch qtdemux) there is a much faster
way of doing it. You will need to follow the steps detailed in this way of doing it. You will need to follow the steps detailed in this
page, but skipping the step "**Build the SDK**", and installing the page, but skipping the step "**Build GStreamer**", and installing the
SDK's development files as explained in [Installing the SDK]. GStreamer's development files as explained in [Installing GStreamer].
By default, Cerbero uses as prefix a folder in the user directory with By default, Cerbero uses as prefix a folder in the user directory with
the following schema \~/cerbero/dist/$platform\_$arch, but for the SDK the following schema \~/cerbero/dist/$platform\_$arch, but for GStreamer
we must change this prefix to use its installation directory. This can we must change this prefix to use its installation directory. This can
be done with a custom configuration file named *custom.cbc*: be done with a custom configuration file named *custom.cbc*:
@ -176,22 +176,22 @@ you fix it before, for instance with:
$ sudo chown -R <username> /Library/Frameworks/GStreamer.framework/ $ sudo chown -R <username> /Library/Frameworks/GStreamer.framework/
Cerbero has a shell command that starts a new shell with all the Cerbero has a shell command that starts a new shell with all the
environment set up to target the SDK. You can start a new shell using environment set up to target GStreamer. You can start a new shell using
the installation prefix defined in *custom.cbc *with the following the installation prefix defined in *custom.cbc *with the following
command: command:
$ cerbero -c custom.cbc shell $ cerbero -c custom.cbc shell
Once you are in Cerbero's shell you can compile new projects targeting Once you are in Cerbero's shell you can compile new projects targeting
the SDK using the regular build process: GStreamer using the regular build process:
$ git clone -b sdk-1.0.31 git://anongit.freedesktop.org/gstreamer-sdk/gst-plugins-good; cd gst-plugins-good $ git clone git://anongit.freedesktop.org/gstreamer/gst-plugins-good; cd gst-plugins-good
$ sh autogen.sh --disable-gtk-doc --prefix=<prefix> $ sh autogen.sh --disable-gtk-doc --prefix=<prefix>
$ make -C gst/isomp4 $ make -C gst/isomp4
### Cross-compilation of the SDK ### Cross-compilation of GStreamer
Cerbero can be used to cross-compile the SDK to other platforms like Cerbero can be used to cross-compile GStreamer to other platforms like
Android or Windows. You only need to use a configuration file that sets Android or Windows. You only need to use a configuration file that sets
the target platform, but we also provide a set of of pre-defined the target platform, but we also provide a set of of pre-defined
configuration files for the supported platforms (you will find them in configuration files for the supported platforms (you will find them in
@ -199,7 +199,7 @@ the `config` folder with the `.cbc` extension
#### Android #### Android
You can cross-compile the SDK for Android from a Linux host using the You can cross-compile GStreamer for Android from a Linux host using the
configuration file `config/cross-android.cbc`. Replace all the previous configuration file `config/cross-android.cbc`. Replace all the previous
commands with: commands with:
@ -207,7 +207,7 @@ commands with:
#### Windows #### Windows
The SDK can also be cross-compiled to Windows from Linux, but you should GStreamer can also be cross-compiled to Windows from Linux, but you should
only use it for testing purpose. The DirectShow plugins cannot be only use it for testing purpose. The DirectShow plugins cannot be
cross-compiled yet and WiX can't be used with Wine yet, so packages can cross-compiled yet and WiX can't be used with Wine yet, so packages can
only be created from Windows. only be created from Windows.
@ -238,4 +238,4 @@ To cross compile for iOS from OS X, use the configuration file
[Windows Driver Kit 7.1.0]: http://msdn.microsoft.com/en-us/windows/hardware/hh852365 [Windows Driver Kit 7.1.0]: http://msdn.microsoft.com/en-us/windows/hardware/hh852365
[XCode]: https://developer.apple.com/devcenter/ios/index.action#downloads [XCode]: https://developer.apple.com/devcenter/ios/index.action#downloads
[here]: http://www.freedesktop.org/software/gstreamer-sdk/cerbero.cbc.template [here]: http://www.freedesktop.org/software/gstreamer-sdk/cerbero.cbc.template
[Installing the SDK]: sdk-installing.md [Installing GStreamer]: sdk-installing.md

View file

@ -13,7 +13,7 @@ needs to have installed:
- The latest version of the [Android SDK] - The latest version of the [Android SDK]
- The latest version of the [Android NDK] - The latest version of the [Android NDK]
- The GStreamer SDK for Android is targeted at API version 9 (Android - GStreamer for Android is targeted at API version 9 (Android
2.3.1, Gingerbread) or higher. Use the SDK Manager tool to make sure 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 you have at least one Android SDK platform installed with API
version 9 or higher. version 9 or higher.
@ -28,27 +28,26 @@ of C and Java works via the [Java Native Interface] (JNI). Besides the
[Android NDK] documentation, you can find some useful [Android JNI tips [Android NDK] documentation, you can find some useful [Android JNI tips
here]. here].
## Download and install the SDK ## Download and install GStreamer binaries
The GStreamer project provides [prebuilt binaries] you should download The GStreamer project provides [prebuilt binaries] you should download
the latest version and unzip it into any folder of your choice. the latest version and unzip it into any folder of your choice.
In the process of building GStreamer-enabled Android applications, some In the process of building GStreamer-enabled Android applications,
tools will need to know where you installed the SDK. You must define an some tools will need to know where you installed the GStreamer
environment variable called `GSTREAMER_SDK_ROOT_ANDROID` and point it to binaries. You must define an environment variable called
the folder where you extracted the SDK. This environment variable must `GSTREAMER_ROOT_ANDROID` and point it to the folder where you
be available at build time, so maybe you want to make it available extracted the GStreamer binaries. This environment variable must be available at
system-wide by adding it to your `~/.profile` file (on Linux and Mac) or build time, so maybe you want to make it available system-wide by
to the Environment Variables in the System Properties dialog (on adding it to your `~/.profile` file (on Linux and Mac) or to the
Windows). Environment Variables in the System Properties dialog (on Windows).
Point `GSTREAMER_SDK_ROOT_ANDROID` to the folder where you unzipped the Point `GSTREAMER_ROOT_ANDROID` to the folder where you unzipped the binaries.
SDK.
> ![information] If you plan to use Android Studio and do not want to define this > ![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 > environment variable globally, you can set it inside Eclipse. Go to
> Window → Preferences → C/C++ → Build → Build Variables and define > Window → Preferences → C/C++ → Build → Build Variables and define
> `GSTREAMER_SDK_ROOT_ANDROID` there. > `GSTREAMER_ROOT_ANDROID` there.
## Configure your development environment ## Configure your development environment
@ -65,11 +64,11 @@ interact through [JNI][Java Native Interface].
### Building the tutorials ### Building the tutorials
There are a few Android-specific tutorials in the There are a few Android-specific tutorials in the
`$GSTREAMER_SDK_ROOT_ANDROID\share\gst-sdk\tutorials` folder. Each `$GSTREAMER_ROOT_ANDROID\share\gst-sdk\tutorials` folder. Each
tutorial is a folder containing source code (in Java and C) and the tutorial is a folder containing source code (in Java and C) and the
resource files required to build a complete Android application. resource files required to build a complete Android application.
The rest of the GStreamer SDK tutorials (basic and playback tutorials) The rest of the GStreamer tutorials (basic and playback tutorials)
cannot be run on Android without modification. cannot be run on Android without modification.
Android projects with GStreamer support are built like conventional Android projects with GStreamer support are built like conventional
@ -107,7 +106,7 @@ missing files will appear and all error messages should be gone. The
project is now ready to run. Hit Run  Run. project is now ready to run. Hit Run  Run.
A new application called “Android tutorial 1” should now be available on A new application called “Android tutorial 1” should now be available on
your device, with the GStreamer SDK logo. If you want to run the your device, with the GStreamer logo. If you want to run the
tutorial in an Android Virtual Device (AVD), make sure to create the tutorial in an Android Virtual Device (AVD), make sure to create the
device with support for audio playback and GPU Emulation (to enable device with support for audio playback and GPU Emulation (to enable
OpenGL ES). OpenGL ES).
@ -155,7 +154,7 @@ Otherwise, you need to manually uninstall previous versions of your
application. application.
A new application called “Android tutorial 1” should now be available on A new application called “Android tutorial 1” should now be available on
your device, with the GStreamer SDK logo. If you want to run the your device, with the GStreamer logo. If you want to run the
tutorial in an Android Virtual Device (AVD), make sure to create the tutorial in an Android Virtual Device (AVD), make sure to create the
device with support for audio playback and GPU Emulation (to enable device with support for audio playback and GPU Emulation (to enable
OpenGL ES). OpenGL ES).
@ -217,8 +216,8 @@ Adding GStreamer support only requires adding these lines:
include $(BUILD_SHARED_LIBRARY) include $(BUILD_SHARED_LIBRARY)
GSTREAMER_SDK_ROOT := $(GSTREAMER_SDK_ROOT_ANDROID) GSTREAMER_ROOT := $(GSTREAMER__ROOT_ANDROID)
GSTREAMER_NDK_BUILD_PATH := $(GSTREAMER_SDK_ROOT)/share/gst-android/ndk-build/ GSTREAMER_NDK_BUILD_PATH := $(GSTREAMER_ROOT)/share/gst-android/ndk-build/
GSTREAMER_PLUGINS := coreelements ogg theora vorbis ffmpegcolorspace playback eglglessink soup opensles GSTREAMER_PLUGINS := coreelements ogg theora vorbis ffmpegcolorspace playback eglglessink soup opensles
G_IO_MODULES := gnutls G_IO_MODULES := gnutls
GSTREAMER_EXTRA_DEPS := gstreamer-interfaces-1.0 gstreamer-video-1.0 GSTREAMER_EXTRA_DEPS := gstreamer-interfaces-1.0 gstreamer-video-1.0

View file

@ -17,13 +17,11 @@ recommend taking a look at the available documentation at Apple's
website. website.
[This](http://developer.apple.com/library/ios/#DOCUMENTATION/iPhone/Conceptual/iPhone101/Articles/00_Introduction.html) can be a good starting point. [This](http://developer.apple.com/library/ios/#DOCUMENTATION/iPhone/Conceptual/iPhone101/Articles/00_Introduction.html) can be a good starting point.
# Download and install the SDK # Download and install GStreamer binaries
The GStreamer SDK installer can be found at: GStreamer binary installer can be found at:
**FIXME: Add links** [https://gstreamer.freedesktop.org/data/pkg/ios/](https://gstreamer.freedesktop.org/data/pkg/ios/)
> ![Warning](images/icons/emoticons/warning.png) Due to the size of these files, usage of a [Download Manager](http://en.wikipedia.org/wiki/Download_manager) is **highly recommended**. Take a look at [this list](http://en.wikipedia.org/wiki/Comparison_of_download_managers) if you do not have one installed. If, after downloading, the installer reports itself as corrupt, chances are that the connection ended before the file was complete. A Download Manager will typically re-start the process and fetch the missing parts.
Double click the package file and follow the instructions presented by Double click the package file and follow the instructions presented by
the install wizard. In case the system complains about the package not the install wizard. In case the system complains about the package not

View file

@ -45,9 +45,6 @@ Get **both the runtime and the development installers** from here:
> ![Warning](images/icons/emoticons/warning.png) > ![Warning](images/icons/emoticons/warning.png)
> On Mac OS X 10.6 (Snow Leopard) you have to install Python 2.7 manually. It is included in later versions of OS X already. You can get it from [here](http://www.python.org/getit). > On Mac OS X 10.6 (Snow Leopard) you have to install Python 2.7 manually. It is included in later versions of OS X already. You can get it from [here](http://www.python.org/getit).
> ![Warning](images/icons/emoticons/warning.png)
> Due to the size of these files, usage of a [Download Manager](http://en.wikipedia.org/wiki/Download_manager) is **highly recommended**. Take a look at [this list](http://en.wikipedia.org/wiki/Comparison_of_download_managers) if you do not have one installed. If, after downloading, the installer reports itself as corrupt, chances are that the connection ended before the file was complete. A Download Manager will typically re-start the process and fetch the missing parts.
The downloads are [Apple Disk Images The downloads are [Apple Disk Images
(.dmg)](http://en.wikipedia.org/wiki/Apple_Disk_Image) containing an (.dmg)](http://en.wikipedia.org/wiki/Apple_Disk_Image) containing an
[Installer Package [Installer Package
@ -91,7 +88,7 @@ switch the tutorial to build selecting one of the available schemes.
### Creating new projects ### Creating new projects
The GStreamer SDK provides a The GStreamer binaries provides a
[framework](https://developer.apple.com/library/mac/#documentation/MacOSX/Conceptual/BPFrameworks/Tasks/IncludingFrameworks.html) [framework](https://developer.apple.com/library/mac/#documentation/MacOSX/Conceptual/BPFrameworks/Tasks/IncludingFrameworks.html)
that you can drag and drop to XCode to start using it, or using the that you can drag and drop to XCode to start using it, or using the
linker option ***-framework GStreamer****.* linker option ***-framework GStreamer****.*

View file

@ -9,12 +9,12 @@
## Prerequisites ## Prerequisites
To develop applications using the GStreamer SDK for Windows you will To develop applications using GStreamer for Windows you will
need [Windows need [Windows
XP](http://windows.microsoft.com/en-US/windows/products/windows-xp) or XP](http://windows.microsoft.com/en-US/windows/products/windows-xp) or
later. later.
The GStreamer SDK includes C headers (`.h`) and library files (`.lib`) GStreamer binaries includes C headers (`.h`) and library files (`.lib`)
valid for any version of [Microsoft Visual valid for any version of [Microsoft Visual
Studio](http://www.microsoft.com/visualstudio). For convenience, Studio](http://www.microsoft.com/visualstudio). For convenience,
property pages (`.props`) are also included which extremely simplify property pages (`.props`) are also included which extremely simplify
@ -31,15 +31,15 @@ Studio 2010](http://www.microsoft.com/visualstudio/en-us/products/2010-editions)
a look at its [system a look at its [system
requirements](http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express)). requirements](http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express)).
Installing the SDK for 32-bits platforms requires approximately 286MB of Installing GStreamer for 32-bits platforms requires approximately 286MB of
free disk space for the runtime and 207MB for the development files. free disk space for the runtime and 207MB for the development files.
Installing the SDK for 64-bits platforms requires approximately 340MB of Installing GStreamer for 64-bits platforms requires approximately 340MB of
free disk space for the runtime and 216MB for the development files. free disk space for the runtime and 216MB for the development files.
## Download and install the SDK ## Download and install GStreamer binaries
There are 3 sets of files in the SDK: There are 3 sets of files in GStreamer binaries:
- The runtime files are needed to run GStreamer applications. You - The runtime files are needed to run GStreamer applications. You
probably want to distribute these files with your application (or probably want to distribute these files with your application (or
@ -48,8 +48,8 @@ There are 3 sets of files in the SDK:
GStreamer applications. GStreamer applications.
- The [Merge - The [Merge
Modules](http://msdn.microsoft.com/en-us/library/windows/desktop/aa369820%28v=vs.85%29.aspx) Modules](http://msdn.microsoft.com/en-us/library/windows/desktop/aa369820%28v=vs.85%29.aspx)
files are **additional** files you can use to deploy the GStreamer files are **additional** files you can use to deploy GStreamer binaries
SDK alongside your application (see [Windows alongside your application (see [Windows
deployment](Windows%2Bdeployment.html)). deployment](Windows%2Bdeployment.html)).
Get **the Runtime and Development files** installers appropriate for Get **the Runtime and Development files** installers appropriate for
@ -57,20 +57,17 @@ your architecture from here:
**FIXME: Add links ** **FIXME: Add links **
> ![Warning](images/icons/emoticons/warning.png)
> Due to the size of these files, usage of a [Download Manager](http://en.wikipedia.org/wiki/Download_manager) is **highly recommended**. Take a look at [this list](http://en.wikipedia.org/wiki/Comparison_of_download_managers) if you do not have one installed. If, after downloading, the installer reports itself as corrupt, chances are that the connection ended before the file was complete. A Download Manager will typically re-start the process and fetch the missing parts.
Execute the installers and choose an installation folder. The suggested Execute the installers and choose an installation folder. The suggested
default is usually OK. default is usually OK.
> ![Warning](images/icons/emoticons/warning.png) > ![Warning](images/icons/emoticons/warning.png)
>`If you plan to use Visual Studio, **close it before installing the GStreamer SDK**. The installer will define new environment variables which will not be picked up by Visual Studio if it is open. >`If you plan to use Visual Studio, **close it before installing GStreamer**. The installer will define new environment variables which will not be picked up by Visual Studio if it is open.
> On **Windows 8** and **Windows 10**, it might be necessary to log out and log back in to your account after the installation for the newly defined environment variables to be picked up by Visual Studio. > On **Windows 8** and **Windows 10**, it might be necessary to log out and log back in to your account after the installation for the newly defined environment variables to be picked up by Visual Studio.
It is the application's responsibility to ensure that, at runtime, It is the application's responsibility to ensure that, at runtime,
GStreamer can access its libraries and plugins. It can be done by adding GStreamer can access its libraries and plugins. It can be done by adding
`%GSTREAMER_SDK_ROOT_X86%\bin` to the `%PATH%` environment variable, or `%GSTREAMER_ROOT_X86%\bin` to the `%PATH%` environment variable, or
by running the application from this same folder. by running the application from this same folder.
At runtime, GStreamer will look for its plugins in the following At runtime, GStreamer will look for its plugins in the following
@ -86,7 +83,7 @@ it will find the GStreamer plugins, as long as the installation folder
structure is unmodified. If you do change this structure in your structure is unmodified. If you do change this structure in your
application, then you can use the `%GST_PLUGIN_PATH%` environment application, then you can use the `%GST_PLUGIN_PATH%` environment
variable to point GStreamer to its plugins. The plugins are initially variable to point GStreamer to its plugins. The plugins are initially
found at `%GSTREAMER_SDK_ROOT_X86%\lib\gstreamer-1.0`. found at `%GSTREAMER_ROOT_X86%\lib\gstreamer-1.0`.
Additionally, if you want to prevent GStreamer from looking in all the Additionally, if you want to prevent GStreamer from looking in all the
default folders listed above, you can set the default folders listed above, you can set the
@ -98,11 +95,11 @@ plugins are located.
### Building the tutorials ### Building the tutorials
The tutorial's code, along with project files and a solution file for The tutorial's code, along with project files and a solution file for
Visual Studio 2010 are all included in the SDK, in Visual Studio 2010 are all included in the GStreamer binaries, in
the `%GSTREAMER_SDK_ROOT_X86%``\share\gst-sdk\tutorials` folder. the `%GSTREAMER_ROOT_X86%``\share\gst-sdk\tutorials` folder.
`%GSTREAMER_SDK_ROOT_X86%` is an environment variable that the installer `%GSTREAMER_ROOT_X86%` is an environment variable that the installer
defined for you, and points to the installation folder of the SDK. defined for you, and points to the installation folder of GStreamer binaries.
In order to prevent accidental modification of the original code, and to In order to prevent accidental modification of the original code, and to
make sure Visual Studio has the necessary permissions to write the make sure Visual Studio has the necessary permissions to write the
@ -112,9 +109,9 @@ liking, and work from there.
> ![Information](images/icons/emoticons/information.png) > ![Information](images/icons/emoticons/information.png)
> **64-bit Users** > **64-bit Users**
> >
>Use `%GSTREAMER_SDK_ROOT_X86_64%` if you have installed the SDK for 64-bit platforms. Both SDKs (32 and 64-bit) can be installed simultaneously, and hence the separate environment variables. >Use `%GSTREAMER_ROOT_X86_64%` if you have installed GStreamer binaries for 64-bit platforms. Both GStreamer binariess (32 and 64-bit) can be installed simultaneously, and hence the separate environment variables.
> >
>Make sure you select the Solution Configuration that matches the GStreamer SDK that you have installed: `Win32` for 32 bits or `x64` for 64 bits. >Make sure you select the Solution Configuration that matches GStreamer that you have installed: `Win32` for 32 bits or `x64` for 64 bits.
> >
> ![Windows Install Configuration](attachments/WindowsInstall-Configuration.png) > ![Windows Install Configuration](attachments/WindowsInstall-Configuration.png)
@ -133,12 +130,12 @@ Build Solution. All projects should build without problems.
### Running the tutorials ### Running the tutorials
In order to run the tutorials, we will set the current working directory In order to run the tutorials, we will set the current working directory
to `%GSTREAMER_SDK_ROOT_X86%`\\`bin` in the Debugging section of the to `%GSTREAMER_ROOT_X86%`\\`bin` in the Debugging section of the
project properties. **This property is not stored in the project files, project properties. **This property is not stored in the project files,
so you will need to manually add it to every tutorial you want to run so you will need to manually add it to every tutorial you want to run
from within Visual Studio**. Right click on a project in the Solution from within Visual Studio**. Right click on a project in the Solution
Explorer, Properties → Debugging → Working Directory, and type Explorer, Properties → Debugging → Working Directory, and type
`$(GSTREAMER_SDK_ROOT_X86)`\\`bin` `$(GSTREAMER_ROOT_X86)`\\`bin`
(The `$(...)` notation is required to access environment variables (The `$(...)` notation is required to access environment variables
from within Visual Studio. You use the `%...%` notation from Windows from within Visual Studio. You use the `%...%` notation from Windows
@ -152,14 +149,14 @@ You should now be able to run the tutorials.
Solution and Project configurations as Solution and Project configurations as
explained [here](http://msdn.microsoft.com/en-us/library/9yb4317s\(v=vs.100\).aspx).** explained [here](http://msdn.microsoft.com/en-us/library/9yb4317s\(v=vs.100\).aspx).**
#### Include the necessary SDK Property Sheet #### Include the necessary GStreamer Property Sheet
The included property sheets make creating new projects extremely easy. The included property sheets make creating new projects extremely easy.
In Visual Studio 2010 create a new project (Normally a `Win32 In Visual Studio 2010 create a new project (Normally a `Win32
Console` or `Win32 Application`). Then go to the Property Manager Console` or `Win32 Application`). Then go to the Property Manager
(View→Property Manager), right-click on your project and select “Add (View→Property Manager), right-click on your project and select “Add
Existing Property Sheet...”. Navigate to Existing Property Sheet...”. Navigate to
`%GSTREAMER_SDK_ROOT_X86%`\\`share\vs\2010\libs` and `%GSTREAMER_ROOT_X86%`\\`share\vs\2010\libs` and
load `gstreamer-1.0.props ` load `gstreamer-1.0.props `
This property sheet contains the directories where the headers and This property sheet contains the directories where the headers and
@ -210,7 +207,7 @@ was a regular compressed file (you will need decompression software that
understands the ISO format). understands the ISO format).
Then, add the `x86.props` or `x86_64.props` (for 32 or 64 bits) property Then, add the `x86.props` or `x86_64.props` (for 32 or 64 bits) property
sheet found in `%GSTREAMER_SDK_ROOT_X86%``\``share\vs\2010\msvc` to your sheet found in `%GSTREAMER_ROOT_X86%``\``share\vs\2010\msvc` to your
project. This will make your application use the ubiquitous project. This will make your application use the ubiquitous
`MSVCRT.DLL` saving you some troubles in the future. `MSVCRT.DLL` saving you some troubles in the future.
@ -222,7 +219,7 @@ project. This will make your application use the ubiquitous
### Creating new projects using the wizard ### Creating new projects using the wizard
Go to File → New → Project… and you should find a template Go to File → New → Project… and you should find a template
named **GStreamer SDK Project**. It takes no parameters, and sets all named **GStreamer Project**. It takes no parameters, and sets all
necessary project settings, both for 32 and 64 bits architectures. necessary project settings, both for 32 and 64 bits architectures.
The generated project file includes the two required Property Sheets The generated project file includes the two required Property Sheets

View file

@ -2,7 +2,7 @@
short-description: Download and install GStreamer short-description: Download and install GStreamer
... ...
# Installing the SDK # Installing GStreamer
## Choose your platform by clicking on the corresponding logo ## Choose your platform by clicking on the corresponding logo
@ -13,11 +13,11 @@ short-description: Download and install GStreamer
## Linux ## Linux
The GStreamer community does not provide the SDK for GNU/Linux platforms The GStreamer community does not provide binaries for GNU/Linux
as it will always be available through package managers on all platforms as it will always be available through package managers on
distribution. It is also always installed by default on desktop all distribution. It is also always installed by default on desktop
environments, you will just need to make sure you have the development environments, you will just need to make sure you have the development
packages installed (refer to your distribution documentation for more packages installed (refer to your distribution documentation for more
information). If you really want to run the Sdk on Linux, you can information). If you really want to run upstream style binaries on
always follow the instructions to Linux, you can always follow the instructions to [build from source
[build from source using cerbero](sdk-building-from-source-using-cerbero.md). using cerbero](sdk-building-from-source-using-cerbero.md).

View file

@ -1,6 +1,6 @@
# iOS tutorials # iOS tutorials
## Welcome to the GStreamer SDK iOS tutorials ## Welcome to the GStreamer iOS tutorials
These tutorials describe iOS-specific topics. General GStreamer These tutorials describe iOS-specific topics. General GStreamer
concepts will not be explained in these tutorials, so the concepts will not be explained in these tutorials, so the

View file

@ -13,9 +13,9 @@ components is also possible, but read on for certain legal cautions you
might want to take. All downloads are from the might want to take. All downloads are from the
[gstreamer.freedesktop.org](http://gstreamer.freedesktop.org) website. [gstreamer.freedesktop.org](http://gstreamer.freedesktop.org) website.
# Licensing of SDK # Licensing of GStreamer
GStreamer SDK minimal default installation only contains packages which GStreamer minimal default installation only contains packages which
are licensed under the [GNU LGPL license are licensed under the [GNU LGPL license
v2.1](http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html). This v2.1](http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html). This
license gives you the Freedom to use, modify, make copies of the license gives you the Freedom to use, modify, make copies of the
@ -26,10 +26,10 @@ but you are free to link the LGPL software as a library used by other
software under whichever license. In other words, it is a weak copyleft software under whichever license. In other words, it is a weak copyleft
license. license.
Therefore, it is possible to use the SDK to build applications that are Therefore, it is possible to use GStreamer to build applications that are
then distributed under a different license, including a proprietary one, then distributed under a different license, including a proprietary one,
provided that reverse engineering is not prohibited for debugging provided that reverse engineering is not prohibited for debugging
modifications purposes. Only the pieces of the SDK that are under the modifications purposes. Only the pieces of GStreamer that are under the
LGPL need to be kept under the LGPL, and the corresponding source code LGPL need to be kept under the LGPL, and the corresponding source code
must be distributed along with the application (or an irrevocable offer must be distributed along with the application (or an irrevocable offer
to do so for at least three years from distribution). Please consult to do so for at least three years from distribution). Please consult
@ -71,9 +71,9 @@ as in the United States). In certain others, patents on pure software
solutions are formally prohibited, but granted (this is the case in many solutions are formally prohibited, but granted (this is the case in many
European countries), and in others again are neither allowed nor granted. European countries), and in others again are neither allowed nor granted.
It is up to you to make sure that in the countries where the SDK is It is up to you to make sure that in the countries where GStreamer is
used, products are made using it and product are distributed, a license used, products are made using it and product are distributed, a license
from the applicable patent holders is required or not. Receiving the SDK from the applicable patent holders is required or not. Receiving GStreamer
or links to other downloadable software does not provide any license or links to other downloadable software does not provide any license
expressed or implied over these patents, except in very limited expressed or implied over these patents, except in very limited
conditions where the license so provides. No representation is made. conditions where the license so provides. No representation is made.
@ -86,7 +86,7 @@ patents.
# Software is as-is # Software is as-is
All software and the entire GStreamer SDK is provided as-is, without any All software and the entire GStreamer binaries areprovided as-is, without any
warranty whatsoever. The individual licenses have particular language warranty whatsoever. The individual licenses have particular language
disclaiming liability: we invite you to read all of them. Should you disclaiming liability: we invite you to read all of them. Should you
need a warranty on the fact that software works as intended or have any need a warranty on the fact that software works as intended or have any
@ -106,7 +106,7 @@ and on an aggregate basis only.
#### What licenses are there? #### What licenses are there?
The SDK containst software under various licenses. See above. GStreamer binaries containst software under various licenses. See above.
#### How does this relate to the packaging system? #### How does this relate to the packaging system?
@ -119,16 +119,16 @@ download, should you elect to do so. You could do the same by finding
and downloading the same packages for your own platform. So it is and downloading the same packages for your own platform. So it is
entirely up to you to decide what to do. entirely up to you to decide what to do.
Also, we note that SDK elements are divided into different packages, Also, we note that GStreamer elements are divided into different packages,
roughly following the licensing conditions attached to the same. For roughly following the licensing conditions attached to the same. For
instance, the codecs-gpl package contains GPL licensed codecs. All the instance, the codecs-gpl package contains GPL licensed codecs. All the
packages installed by default, conversely, are licensed under the LGPL packages installed by default, conversely, are licensed under the LGPL
or a more liberal license. This division is provided only for ease of or a more liberal license. This division is provided only for ease of
reference, but we cannot guarantee that our selection is 100% correct, reference, but we cannot guarantee that our selection is 100% correct,
so it is up to the user to verify the actual licensing conditions before so it is up to the user to verify the actual licensing conditions before
distributing works that utilize the SDK. distributing works that utilize GStreamer.
#### Can I / must I distribute the SDK along with my application? #### Can I / must I distribute GStreamer along with my application?
You surely can. All software is Free/Open Source software, and can be You surely can. All software is Free/Open Source software, and can be
distributed freely. You are not **required** to distribute it. Only, distributed freely. You are not **required** to distribute it. Only,
@ -137,12 +137,12 @@ certain licenses to make a work containing such software, is that you
also distribute the complete source code of the original code (or of also distribute the complete source code of the original code (or of
the modified code, if you have modified it). There are alternative the modified code, if you have modified it). There are alternative
ways to comply with this obligation, some of them do not require any ways to comply with this obligation, some of them do not require any
actual distribution of source code, but since the SDK contains the actual distribution of source code, but since GStreamer contains the
entire source code, you might want to include it (or the directories entire source code, you might want to include it (or the directories
containing the source code) with your application as a safe way to containing the source code) with your application as a safe way to
comply with this requirement of the license. comply with this requirement of the license.
#### What happens when I modify the GStreamer SDK's source code? #### What happens when I modify the GStreamer's source code?
You are invited to do so, as the licenses (unless you are dealing with You are invited to do so, as the licenses (unless you are dealing with
proprietary bits, but in that case you will not find the corresponding proprietary bits, but in that case you will not find the corresponding
@ -203,7 +203,7 @@ designed to be loaded into a particular kind of software, even through
API, requires permission by the copyright holder of the library when API, requires permission by the copyright holder of the library when
the two pieces are distributed together. the two pieces are distributed together.
In all cases, since most of the software we include in the SDK is under In all cases, since most of the software we include in GStreamer is under
the LGPL, this permission is granted once for all, subject to compliance the LGPL, this permission is granted once for all, subject to compliance
with the conditions set out by it. Therefore, the problem only arises with the conditions set out by it. Therefore, the problem only arises
when you want to use GPL libraries to make non-GPL applications, and you when you want to use GPL libraries to make non-GPL applications, and you

View file

@ -129,7 +129,7 @@ Once the recipe is ready, instruct Cerbero to build it:
## Adding a package for you software ## Adding a package for you software
To distribute your software with the SDK it is necessary to put it into To distribute your software with GStreamer it is necessary to put it into
a package or installer, depending on the target platform. This is done a package or installer, depending on the target platform. This is done
by selecting the files that should be included. To add a package you by selecting the files that should be included. To add a package you
have to create a package file in `cerbero/packages`. The package files have to create a package file in `cerbero/packages`. The package files
@ -215,20 +215,20 @@ class Package(package.Package):
At this point you have two main options: you could either have a single At this point you have two main options: you could either have a single
package that contains everything your software needs, or depend on a package that contains everything your software needs, or depend on a
shared version of the SDK. shared version of GStreamer.
### Having a private version of the SDK ### Having a private version of GStreamer
To have a private version of the SDK included in a single package you To have a private version of GStreamer included in a single package you
don't have to add the `deps` variable to the package file but instead don't have to add the `deps` variable to the package file but instead
list all files you need in the `files` variables. If you decide to go list all files you need in the `files` variables. If you decide to go
this road you must make sure that you use a different prefix than the this road you must make sure that you use a different prefix than
GStreamer SDK in the Cerbero configuration file, otherwise your package GStreamer in the Cerbero configuration file, otherwise your package
will have file conflicts with GStreamer. will have file conflicts with GStreamer.
### Having a shared version of the SDK ### Having a shared version of GStreamer
If you decide to use a shared version of the SDK you can create a If you decide to use a shared version of GStreamer you can create a
package file like the other package files in GStreamer. Just package file like the other package files in GStreamer. Just
list all packages you need in the `deps` variable and put the files your list all packages you need in the `deps` variable and put the files your
software needs inside the `files` variables. When building a package software needs inside the `files` variables. When building a package

View file

@ -55,7 +55,7 @@ media is playing.
## The multilingual player ## The multilingual player
Copy this code into a text file named `playback-tutorial-1.c` (or find Copy this code into a text file named `playback-tutorial-1.c` (or find
it in the SDK installation). it in the GStreamer installation).
**playback-tutorial-1.c** **playback-tutorial-1.c**

View file

@ -35,7 +35,7 @@ and adds another one from another file (for the Greek language).
## The multilingual player with subtitles ## The multilingual player with subtitles
Copy this code into a text file named `playback-tutorial-2.c` (or find Copy this code into a text file named `playback-tutorial-2.c` (or find
it in the SDK installation). it in the GStreamer installation).
**playback-tutorial-2.c** **playback-tutorial-2.c**

View file

@ -1,10 +1,10 @@
--- ---
short-description: Learn how to use the GStreamer SDK short-description: Learn how to use GStreamer
... ...
# Tutorials # Tutorials
## Welcome to the GStreamer SDK Tutorials! ## Welcome to the GStreamer Tutorials!
The following sections introduce a series of tutorials designed to help The following sections introduce a series of tutorials designed to help
you learn how to use GStreamer, the multi-platform, modular, you learn how to use GStreamer, the multi-platform, modular,
@ -14,7 +14,7 @@ open-source, media streaming framework.
Before following these tutorials, you need to set up your development Before following these tutorials, you need to set up your development
environment according to your platform. If you have not done so yet, go environment according to your platform. If you have not done so yet, go
to the [installing the SDK] page and come back here afterwards. to the [installing GStreamer] page and come back here afterwards.
The tutorials are currently written only in the C programming language, The tutorials are currently written only in the C programming language,
so you need to be comfortable with it. Even though C is not an so you need to be comfortable with it. Even though C is not an
@ -26,10 +26,11 @@ will make the trip easier.
### Source code ### Source code
Every tutorial represents a self-contained project, with full source Every tutorial represents a self-contained project, with full source
code in C (and eventually in other languages too). Source code snippets code in C (and eventually in other languages too). Source code
are introduced alongside the text, and the full code (with any other snippets are introduced alongside the text, and the full code (with
required files like makefiles or project files) is distributed with the any other required files like makefiles or project files) is
SDK, as explained in the installation instructions. distributed with GStreamer, as explained in the installation
instructions.
### A short note on GObject and GLib ### A short note on GObject and GLib
@ -54,7 +55,7 @@ upstream [GStreamer documentation].
The tutorials are organized in sections, revolving about a common theme: The tutorials are organized in sections, revolving about a common theme:
- [Basic tutorials]: Describe general topics required to understand - [Basic tutorials]: Describe general topics required to understand
the rest of tutorials in the GStreamer SDK. the rest of tutorials in GStreamer.
- [Playback tutorials]: Explain everything you need to know to produce - [Playback tutorials]: Explain everything you need to know to produce
a media playback application using GStreamer. a media playback application using GStreamer.
- [Android tutorials]: Tutorials dealing with the few Android-specific - [Android tutorials]: Tutorials dealing with the few Android-specific
@ -76,7 +77,7 @@ purposes.
- [Sintel, the Durian Open Movie Project] - [Sintel, the Durian Open Movie Project]
[installing the SDK]: sdk-installing.md [installing GStreamer]: sdk-installing.md
[GStreamer documentation]: http://gstreamer.freedesktop.org/documentation/ [GStreamer documentation]: http://gstreamer.freedesktop.org/documentation/
[Basic tutorials]: sdk-basic-tutorials.md [Basic tutorials]: sdk-basic-tutorials.md
[Playback tutorials]: sdk-playback-tutorials.md [Playback tutorials]: sdk-playback-tutorials.md