mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 04:01:08 +00:00
117 lines
5.3 KiB
Markdown
117 lines
5.3 KiB
Markdown
# GStreamer SDK documentation : Installing for iOS development
|
||
|
||
This page last changed on Jun 12, 2013 by xartigas.
|
||
|
||
# Prerequisites
|
||
|
||
For iOS development you need to download Xcode and the iOS SDK. Xcode
|
||
can be found at the App Store or
|
||
[here](https://developer.apple.com/devcenter/ios/index.action#downloads)
|
||
and the iOS SDK, if it is not already included in your version of Xcode,
|
||
can be downloaded from Xcode's preferences menu under the downloads tab.
|
||
The minimum required iOS version is 6.0. The minimum required version of
|
||
Xcode is 4, but 4.5 is recommended.
|
||
|
||
In case you are not familiar with iOS, Objective-C or Xcode, we
|
||
recommend taking a look at the available documentation at Apple's
|
||
website.
|
||
[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
|
||
|
||
The GStreamer SDK installer can be found at:
|
||
|
||
<table>
|
||
<colgroup>
|
||
<col width="100%" />
|
||
</colgroup>
|
||
<thead>
|
||
<tr class="header">
|
||
<th>Universal</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td><ul>
|
||
<li><a href="http://cdn.gstreamer.com/ios/gstreamer-sdk-devel-2013.6-ios-universal.dmg" class="external-link">GStreamer SDK 2013.6 (Congo) for iOS (Installer Package)</a> - <a href="http://www.freedesktop.org/software/gstreamer-sdk/data/packages/ios/gstreamer-sdk-devel-2013.6-ios-universal.dmg" class="external-link">mirror</a> - <a href="http://cdn.gstreamer.com/ios/gstreamer-sdk-devel-2013.6-ios-universal.dmg.md5" class="external-link">md5</a> - <a href="http://cdn.gstreamer.com/ios/gstreamer-sdk-devel-2013.6-ios-universal.dmg.sha1" class="external-link">sha1</a></li>
|
||
</ul></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
|
||
<table>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td><img src="images/icons/emoticons/warning.png" width="16" height="16" /></td>
|
||
<td><p><span>Due to the size of these files, usage of a </span><a href="http://en.wikipedia.org/wiki/Download_manager" class="external-link">Download Manager</a><span> is </span><strong>highly recommended</strong><span>. Take a look at </span><a href="http://en.wikipedia.org/wiki/Comparison_of_download_managers" class="external-link">this list</a><span> 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.</span></p></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
|
||
Double click the package file and follow the instructions presented by
|
||
the install wizard. In case the system complains about the package not
|
||
being signed, you can control-click it and open to start the
|
||
installation. When you do this, it will warn you, but there is an option
|
||
to install anyway. Otherwise you can go to System Preferences → Security
|
||
and Privacy → General and select the option to allow installation of
|
||
packages from "anywhere".
|
||
|
||
The GStreamer SDK installs itself in your home directory, so it is
|
||
available only to the user that installed it. The SDK library is
|
||
installed to `~/Library/Developer/GStreamer/iPhone.sdk`. Inside this
|
||
directory there is the GStreamer.framework that contains the libs,
|
||
headers and resources, and there is a `Templates` directory that has
|
||
Xcode application templates for GStreamer development. Those templates
|
||
are also copied to `~/Library/Developer/Xcode/Templates` during
|
||
installation so that Xcode can find them.
|
||
|
||
# Configure your development environment
|
||
|
||
GStreamer is written in C, and the iOS API uses mostly Objective-C (and
|
||
C for some parts), but this should cause no problems as those languages
|
||
interoperate freely. You can mix both in the same source code, for
|
||
example.
|
||
|
||
### Building the tutorials
|
||
|
||
The GStreamer SDK ships a few tutorials in the `xcode iOS` folder inside
|
||
the `.dmg` file. Copy them out of the package and into a more suitable
|
||
place.** **We recommend that you open the project in Xcode, take a look
|
||
at the sources and build them. This should confirm that the installation
|
||
works and give some insight on how simple it is to mix Objective-C and C
|
||
code.
|
||
|
||
### Creating new projects
|
||
|
||
After installation, when creating a new Xcode project, you should see
|
||
the GStreamer project templates under the `Templates` category. OS X and
|
||
iOS have a different way of organizing libraries headers and binaries.
|
||
They are grouped into Frameworks, and that's how we ship GStreamer and
|
||
its dependencies for iOS (and OS X). Due to this difference from
|
||
traditional linux development, we strongly recommend using the SDK
|
||
templates, as they set a few variables on your project that allows Xcode
|
||
to find, use and link GStreamer just like in traditional linux
|
||
development. For example, if you don't use the templates, you'll have to
|
||
use:
|
||
|
||
``` theme: Default; brush: cpp; gutter: false
|
||
#include <GStreamer/gst/gst.h>
|
||
```
|
||
|
||
instead of the usual:
|
||
|
||
``` theme: Default; brush: cpp; gutter: false
|
||
#include <gst/gst.h>
|
||
```
|
||
|
||
Among some other things the template does, this was a decision made to
|
||
keep development consistent across all the platforms the SDK supports.
|
||
|
||
Once a project has been created using a GStreamer SDK Template, it is
|
||
ready to build and run. All necessary infrastructure is already in
|
||
place. To understand what files have been created and how they interact,
|
||
take a look at the [iOS tutorials](iOS%2Btutorials.html).
|
||
|
||
Document generated by Confluence on Oct 08, 2015 10:27
|
||
|