Commit ad0779c4 authored by Thibault Saunier's avatar Thibault Saunier 🌵
Browse files

Build GStreamer modules API documentation as part of our build

Adding a nice landing page.

And update emoticons.

Using meson subprojects
parent 288caa0b
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="16"
height="16"
viewBox="0 0 16 16"
id="svg9842"
version="1.1"
inkscape:version="0.91 r13725"
sodipodi:docname="distribute.svg">
<defs
id="defs9844" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="15.839192"
inkscape:cx="4.8937873"
inkscape:cy="24.853738"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="true"
units="px"
borderlayer="true"
inkscape:showpageshadow="false"
inkscape:window-width="2560"
inkscape:window-height="1376"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="1">
<inkscape:grid
type="xygrid"
id="grid10400" />
</sodipodi:namedview>
<metadata
id="metadata9847">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-1036.3622)">
<g
transform="translate(-100.91898,109.40724)"
style="display:inline"
id="g32799"
inkscape:label="insert-object">
<path
sodipodi:nodetypes="cccccccccccc"
inkscape:connector-curvature="0"
id="path15214"
d="m 109.0002,930 -4.99967,3.14259 0,4.71482 4.99951,3.14259 5.00049,-3.14259 0,-4.71482 z m 0,6 -3.64507,-2.17601 3.64507,-2.29205 3.64623,2.29205 z"
style="fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none" />
</g>
</g>
</svg>
# API reference
---
short-description: Tutorials and Manuals
render-subpages: false
...
# Documentation and Tutorials
Feel free to jump straight to the download section, start practicing
with the tutorials, or read the F.A.Q. if you don’t know what this is
all about.
## General
* [Application Development Manual (Read this first)](application-development/index.md)
* [Frequently Asked Questions](frequently-asked-questions/index.md)
* [Plugin Writer's Guide](plugin-development/index.md)
* <a href="/data/doc/gstreamer/head/gstreamer/html/">Core Reference</a>
* <a href="/data/doc/gstreamer/head/gstreamer-libs/html/">Core Libraries Reference</a>
* [Core Design Documentation](design/index.md)
* [GStreamer 0.10 to 1.0 porting guide](https://gitlab.freedesktop.org/gstreamer/gstreamer/raw/master/docs/random/porting-to-1.0.txt)
<!-- FIXME: save useful bits from wiki
| GStreamer Wiki (see esp. <a href="&site;/wiki/ReleasePlanning">ReleasePlanning</a> and <a href="&site;/wiki/SubmittingPatches">SubmittingPatches</a>)
| <a href="&site;/wiki/">HTML</a> |
-->
## GStreamer APIs References
* [GStreamer Core library](gstreamer)
* [GStreamer Libraries Reference](libs.html)
* [GStreamer Plugins Reference](plugins_doc.html)
> ![Warning](images/icons/emoticons/warning.svg) Only the API in libraries from
> GStreamer core and gst-plugins-base are guaranteed to be API and ABI stable
## Other modules
* [GStreamer Editing Services Reference](gst-editing-services)
* [GStreamer RTSP Server Reference](gst-rtsp-server)
* [GStreamer VAAPI Reference](vaapi)
* [GStreamer Validate](gst-devtools)
* <a href="/data/doc/orc/">Orc - Optimized inner loop Runtime Compiler</a>
## GStreamer Conference Videos and Slides
* [GStreamer Conference 2016: Videos and Slides] [(PDF slides)]
* [GStreamer Conference 2015: Videos and Slides] [(PDF slides)][1]
* [GStreamer Conference 2014: Videos and Slides] [(PDF slides)][2]
* [GStreamer Conference 2013: Videos and Slides] [(PDF slides)][3]
* [GStreamer Conference 2012: Videos and Slides] [(PDF slides)][4]
* [GStreamer Conference 2011: Videos and Slides] [(PDF slides)][5]
* [GStreamer Conference 2010: Videos and Slides] [(PDF slides)][6]
[GStreamer Conference 2016: Videos and Slides]: http://gstconf.ubicast.tv/channels/#gstreamer-conference-2016
[GStreamer Conference 2015: Videos and Slides]: http://gstconf.ubicast.tv/channels/#gstreamer-conference-2015
[GStreamer Conference 2014: Videos and Slides]: http://gstconf.ubicast.tv/channels/#gstreamer-conference-2014
[GStreamer Conference 2013: Videos and Slides]: http://gstconf.ubicast.tv/channels/#gstreamer-conference-2013
[GStreamer Conference 2012: Videos and Slides]: http://gstconf.ubicast.tv/channels/#gstreamer-conference-2012
[GStreamer Conference 2011: Videos and Slides]: http://gstconf.ubicast.tv/channels/#conferences-2011
[GStreamer Conference 2010: Videos and Slides]: http://gstconf.ubicast.tv/channels/#conferences-2010
[(PDF slides)]: https://gstreamer.freedesktop.org/data/events/gstreamer-conference/2016/
[1]: https://gstreamer.freedesktop.org/data/events/gstreamer-conference/2015/
[2]: https://gstreamer.freedesktop.org/data/events/gstreamer-conference/2014/
[3]: https://gstreamer.freedesktop.org/data/events/gstreamer-conference/2013/
[4]: https://gstreamer.freedesktop.org/data/events/gstreamer-conference/2012/
[5]: https://gstreamer.freedesktop.org/data/events/gstreamer-conference/2011/
[6]: https://gstreamer.freedesktop.org/data/events/gstreamer-conference/2010/
## GStreamer licensing advisory
The GStreamer community provides the following licensing advisory for
developers planing on or already using GStreamer for their applications:
* [GStreamer Licensing Advisory](licensing.md)
## GStreamer plugin module split-up
[An explanation of the various plugin modules and how they were split up](splitup.md)
## RTP and RTSP support in GStreamer
* [RTSP and RTP component overview](rtp.md)
# GStreamer
This is the main GStreamer documentation. It contains two sections
the first one contains manuals, tutorials and misc answers to
questions people have concerning how to use/get involved in
the GStreamer project. The second section is the GStreamer API
reference.
# GStreamer documentation
Feel free to jump straight to the download section, start practicing
with the tutorials, or read the F.A.Q. if you don’t know what this is
all about.
## General
* [Application Development Manual (Read this first)](application-development/index.md)
* [Frequently Asked Questions](frequently-asked-questions/index.md)
* [Plugin Writer's Guide](plugin-development/index.md)
* <a href="/data/doc/gstreamer/head/gstreamer/html/">Core Reference</a>
* <a href="/data/doc/gstreamer/head/gstreamer-libs/html/">Core Libraries Reference</a>
* [Core Design Documentation](design/index.md)
* [GStreamer 0.10 to 1.0 porting guide](https://gitlab.freedesktop.org/gstreamer/gstreamer/raw/master/docs/random/porting-to-1.0.txt)
<!-- FIXME: save useful bits from wiki
| GStreamer Wiki (see esp. <a href="&site;/wiki/ReleasePlanning">ReleasePlanning</a> and <a href="&site;/wiki/SubmittingPatches">SubmittingPatches</a>)
| <a href="&site;/wiki/">HTML</a> |
-->
## GStreamer Plugins-Base Module Libraries Reference
* <a href="/data/doc/gstreamer/head/gst-plugins-base-libs/html/">GStreamer Base Plugins Libraries Reference</a>
## GStreamer Plugins-Bad Module Libraries Reference
Note: The API from these gst-plugins-bad libraries is unstable and can
change between releases.
Only the API in libraries from GStreamer core and
gst-plugins-base are guaranteed to be API and ABI stable
* <a href="/data/doc/gstreamer/head/gst-plugins-bad-libs/html/">GStreamer Bad Plugins Libraries Reference</a>
## Plugin Modules
* <a href="plugins.html">Overview of all Plug-ins</a>
* <a href="/data/doc/gstreamer/head/gstreamer-plugins/html/">GStreamer Core Plugins Reference</a>
* <a href="/data/doc/gstreamer/head/gst-plugins-base-plugins/html/">GStreamer Base Plugins Reference</a>
* <a href="/data/doc/gstreamer/head/gst-plugins-good-plugins/html/">GStreamer Good Plugins Reference</a>
* <a href="/data/doc/gstreamer/head/gst-plugins-ugly-plugins/html/">GStreamer Ugly Plugins Reference</a>
* <a href="/data/doc/gstreamer/head/gst-plugins-bad-plugins/html/">GStreamer Bad Plugins Reference</a>
## Other modules
* <a href="/data/doc/gstreamer/head/gstreamer-editing-services/html/">GStreamer Editing Services Reference</a>
* <a href="/data/doc/gstreamer/head/gst-rtsp-server/html/">GStreamer RTSP Server Reference</a>
* <a href="/data/doc/gstreamer/head/gstreamer-vaapi-plugins/html/">GStreamer VAAPI Reference</a>
* <a href="/data/doc/gstreamer/head/qt-gstreamer/html/">QtGStreamer Reference</a>
* <a href="/data/doc/gstreamer/head/gst-validate/html/">GstValidate Reference</a>
* <a href="/data/doc/orc/">Orc - Optimized inner loop Runtime Compiler</a>
* <a href="/data/doc/gstreamer/head/gnonlin/html/">GStreamer Non-Linear Multimedia Editing Plugins Reference (deprecated, use GStreamer Editing Services instead)</a>
## GStreamer Conference Videos and Slides
* <a href="http://gstconf.ubicast.tv/channels/#gstreamer-conference-2018">GStreamer Conference 2018: Videos and Slides</a> <a href="/data/events/gstreamer-conference/2018/">(PDF slides)</a>
* <a href="http://gstconf.ubicast.tv/channels/#gstreamer-conference-2017">GStreamer Conference 2017: Videos and Slides</a> <a href="/data/events/gstreamer-conference/2017/">(PDF slides)</a>
* <a href="http://gstconf.ubicast.tv/channels/#gstreamer-conference-2016">GStreamer Conference 2016: Videos and Slides</a> <a href="/data/events/gstreamer-conference/2016/">(PDF slides)</a>
* <a href="http://gstconf.ubicast.tv/channels/#gstreamer-conference-2015">GStreamer Conference 2015: Videos and Slides</a> <a href="/data/events/gstreamer-conference/2015/">(PDF slides)</a>
* <a href="http://gstconf.ubicast.tv/channels/#gstreamer-conference-2014">GStreamer Conference 2014: Videos and Slides</a> <a href="/data/events/gstreamer-conference/2014/">(PDF slides)</a>
* <a href="http://gstconf.ubicast.tv/channels/#gstreamer-conference-2013">GStreamer Conference 2013: Videos and Slides</a> <a href="/data/events/gstreamer-conference/2013/">(PDF slides)</a>
* <a href="http://gstconf.ubicast.tv/channels/#gstreamer-conference-2012">GStreamer Conference 2012: Videos and Slides</a> <a href="/data/events/gstreamer-conference/2012/">(PDF slides)</a>
* <a href="http://gstconf.ubicast.tv/channels/#conferences-2011">GStreamer Conference 2011: Videos and Slides</a> <a href="/data/events/gstreamer-conference/2011/">(PDF slides)</a>
* <a href="http://gstconf.ubicast.tv/channels/#conferences-2010">GStreamer Conference 2010: Videos and Slides</a> <a href="/data/events/gstreamer-conference/2010/">(PDF slides)</a>
## GStreamer licensing advisory
The GStreamer community provides the following licensing advisory for
developers planing on or already using GStreamer for their applications:
* <a href="/documentation/licensing.html">GStreamer Licensing Advisory</a>
## GStreamer plugin module split-up
[An explanation of the various plugin modules and how they were split up](splitup.md)
## RTP and RTSP support in GStreamer
* [RTSP and RTP component overview](rtp.md)
---
full-width: true
title: GStreamer
render-subpages: false
...
<div class="container">
<div class="page-header">
<h1>GStreamer: a flexible, fast and multiplatform multimedia framework</h1>
<p>
GStreamer is an extremely powerful and versatile framework for creating
streaming media applications. Many of the virtues of the GStreamer
framework come from its modularity: GStreamer can seamlessly incorporate
new plugin modules. But because modularity and power often come at a
cost of greater complexity, writing new applications is not always easy.
</p>
<a class="btn btn-default btn-xl page-scroll" href="doc_index.html" data-hotdoc-relative-link=true>Get Started</a>
</div>
</div>
<div class="row toned-row">
<div class="col-lg-2 col-lg-offset-2 col-xs-6 col-md-3">
<a class="icon" id="apiref" href="api.html" data-hotdoc-relative-link=true>API Reference</a>
</div>
<div class="col-lg-2 col-xs-6 col-md-3">
<a class="icon" id="hig" href="application-development/index.html" data-hotdoc-relative-link=true>
Application developer manual
</a>
</div>
<div class="col-lg-2 col-xs-6 col-md-3">
<a class="icon" id="tutorials" href="tutorials/index.html" data-hotdoc-relative-link=true>
Tutorials
</a>
</div>
<div class="col-lg-2 col-xs-6 col-md-3">
<a class="icon" id="deploy" href="deploying/index.html" data-hotdoc-relative-link=true>
Deploying
</a>
</div>
</div>
---
short-description: All the GStreamer libraries from the various components
...
# GStreamer libraries
---
short-description: All the GStreamer plugins from its various components
...
# GStreamer plugins
---
title: GStreamer
...
# GStreamer: a flexible, fast and multiplatform multimedia framework
GStreamer is an extremely powerful and versatile framework for creating
streaming media applications. Many of the virtues of the GStreamer
framework come from its modularity: GStreamer can seamlessly incorporate
new plugin modules. But because modularity and power often come at a
cost of greater complexity, writing new applications is not always easy.
\ No newline at end of file
......@@ -3,24 +3,70 @@ project('GStreamer manuals and tutorials', 'c',
meson_version: '>=0.48.0')
hotdoc = import('hotdoc')
hotdoc_subprojects = []
apiversion = '1.0'
if host_machine.system() == 'windows'
pathsep = ';'
else
pathsep = ':'
endif
libs = ''
plugins_doc = ''
deps = []
plugins_sitemap = ''
if get_option('built_subprojects') != ''
foreach project_name: get_option('built_subprojects').split(',')
sub = subproject(project_name)
if sub.get_variable('build_hotdoc')
message('Building @0@ documentation'.format(project_name))
foreach lib: sub.get_variable('libs_doc')
hotdoc_subprojects += [lib]
libs += lib.full_path() + pathsep
deps += [lib]
endforeach
foreach plugin_doc: sub.get_variable('plugins_doc')
plugins_doc += plugin_doc.full_path() + pathsep
hotdoc_subprojects += [plugin_doc]
deps += [plugin_doc]
endforeach
else
message('@0@ did not build hotdoc documentation, can\'t build API doc'.format(project_name))
endif
endforeach
endif
if get_option('use_portal_index')
index = 'markdown/index.md'
else
index = 'markdown/simple-index.md'
endif
sitemap_gen = find_program('scripts/generate_sitemap.py')
sitemap = configure_file(command: [sitemap_gen, '@INPUT@', '@OUTPUT@',
index.split('/')[1], libs, plugins_doc],
input: 'sitemap.txt',
output: 'sitemap.txt')
html_theme = 'https://github.com/hotdoc/hotdoc_lumen_theme/releases/download/0.9/hotdoc_lumen_theme-0.9.tar.xz?sha256=ec3807f13eda2d4914fcf251b7e9607e90f33430725a2b1d433a90c9210a52fc'
gstreamer_doc = hotdoc.generate_doc('GStreamer',
project_version: apiversion,
sitemap: 'sitemap.txt',
index: 'markdown/index.md',
build_by_default: true,
sitemap: sitemap,
index: index,
install: true,
extra_assets: [join_paths(meson.current_source_dir(), 'images')],
syntax_highlighting_activate: true,
html_theme: html_theme,
include_paths: join_paths(meson.current_source_dir(), 'examples'),
html_extra_theme: join_paths(meson.current_source_dir(), 'theme/extra'),
edit_on_github_repository: 'https://gitlab.freedesktop.org/gstreamer/gst-docs/',
edit_on_github_branch: 'master',
dependencies: deps,
subprojects: hotdoc_subprojects,
disable_incremental_build: true,
gst_list_plugins_page: 'plugins_doc.md',
devhelp_activate: true,
build_always_stale: true,
edit_on_github_repository: 'https://gitlab.freedesktop.org/gstreamer/gst-docs/',
)
# Special option to tell `gst-docs` what subprojects with
# API documentation can be used.
option('built_subprojects', type : 'string', value : '')
# Special entry to make `gst-docs` usable as part of a bigger
# portal (gnome-portal for example).
option('use_portal_index', type : 'boolean', value : true)
#!/usr/bin/env python3
import os
import sys
if __name__ == "__main__":
in_, out, index_md = sys.argv[1], sys.argv[2], sys.argv[3]
with open(in_) as f:
index = f.read()
if sys.argv[4]:
index = '\n'.join('\t' + l for l in index.splitlines())
libs, plugins = sys.argv[4].split(os.pathsep), sorted(
sys.argv[5].split(os.pathsep), key=lambda x: os.path.basename(x))
index += '\n api.md\n libs.md'
for lib in libs:
if not lib:
continue
index += "\n " + lib + '.json'
index += '\n plugins_doc.md'
for plugin in plugins:
if not plugin:
continue
index += "\n " + plugin + '.json'
index = '%s\n%s' % (index_md, index)
with open(out, 'w') as fw:
fw.write(index)
index.md
installing/index.md
installing/for-android-development.md
installing/for-ios-development.md
installing/on-mac-osx.md
installing/on-windows.md
doc_index.md
installing/index.md
installing/for-android-development.md
installing/for-ios-development.md
installing/on-mac-osx.md
installing/on-windows.md
installing/on-linux.md
installing/building-from-source-using-cerbero.md
installing/building-from-source-using-cerbero.md
frequently-asked-questions/index.md
frequently-asked-questions/general.md
frequently-asked-questions/dependencies.md
......@@ -50,7 +50,7 @@ index.md
application-development/appendix/integration.md
application-development/appendix/licensing.md
application-development/appendix/quotes.md
tutorials/index.md
tutorials/index.md
tutorials/basic/index.md
tutorials/basic/hello-world.md
tutorials/basic/concepts.md
......@@ -206,4 +206,4 @@ index.md
design/draft-tagreading.md
design/toc.md
design/tracing.md
design/trickmodes.md
\ No newline at end of file
design/trickmodes.md
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg xmlns:cc='http://creativecommons.org/ns#' xmlns:dc='http://purl.org/dc/elements/1.1/' sodipodi:docname='view-dual-symbolic.svg' height='16' id='svg7384' xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd' xmlns:svg='http://www.w3.org/2000/svg' inkscape:version='0.48.3.1 r9886' version='1.1' width='16' xmlns='http://www.w3.org/2000/svg'>
<metadata id='metadata90'>
<rdf:RDF>
<cc:Work rdf:about=''>
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource='http://purl.org/dc/dcmitype/StillImage'/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview inkscape:bbox-nodes='true' inkscape:bbox-paths='true' bordercolor='#666666' borderopacity='1' inkscape:current-layer='layer12' inkscape:cx='8.341015' inkscape:cy='-17.299448' gridtolerance='10' inkscape:guide-bbox='true' guidetolerance='10' id='namedview88' inkscape:object-nodes='false' inkscape:object-paths='false' objecttolerance='10' pagecolor='#3a3b39' inkscape:pageopacity='1' inkscape:pageshadow='2' showborder='false' showgrid='false' showguides='true' inkscape:snap-bbox='true' inkscape:snap-bbox-midpoints='false' inkscape:snap-global='true' inkscape:snap-grids='true' inkscape:snap-nodes='false' inkscape:snap-others='false' inkscape:snap-to-guides='true' inkscape:window-height='709' inkscape:window-maximized='1' inkscape:window-width='1366' inkscape:window-x='0' inkscape:window-y='27' inkscape:zoom='1'>
<inkscape:grid empspacing='2' enabled='true' id='grid4866' originx='60.0002px' originy='650.00012px' snapvisiblegridlinesonly='true' spacingx='1px' spacingy='1px' type='xygrid' visible='true'/>
</sodipodi:namedview>
<title id='title9167'>Gnome Symbolic Icon Theme</title>
<defs id='defs7386'/>
<g inkscape:groupmode='layer' id='layer9' inkscape:label='status' style='display:inline' transform='translate(-181,-867.00012)'/>
<g inkscape:groupmode='layer' id='layer10' inkscape:label='devices' transform='translate(-181,-867.00012)'/>
<g inkscape:groupmode='layer' id='layer11' inkscape:label='apps' transform='translate(-181,-867.00012)'/>
<g inkscape:groupmode='layer' id='layer13' inkscape:label='places' transform='translate(-181,-867.00012)'/>
<g inkscape:groupmode='layer' id='layer14' inkscape:label='mimetypes' transform='translate(-181,-867.00012)'/>
<g inkscape:groupmode='layer' id='layer15' inkscape:label='emblems' style='display:inline' transform='translate(-181,-867.00012)'/>
<g inkscape:groupmode='layer' id='g71291' inkscape:label='emotes' style='display:inline' transform='translate(-181,-867.00012)'/>
<g inkscape:groupmode='layer' id='g4953' inkscape:label='categories' style='display:inline' transform='translate(-181,-867.00012)'/>
<g inkscape:groupmode='layer' id='layer12' inkscape:label='actions' style='display:inline' transform='translate(-181,-867.00012)'>
<path inkscape:connector-curvature='0' d='m 181,868 0,1 0,11 0,1 1,0 5,0 c 0.1754,0 0.52538,0.15166 0.8125,0.34375 0.28712,0.19209 0.46875,0.375 0.46875,0.375 L 189,882.4375 l 0.71875,-0.75 c 0,0 0.8963,-0.6875 1.28125,-0.6875 l 5,0 1,0 0,-1 0,-11 0,-1 -1,0 -5,0 c -0.87652,0 -1.56017,0.34756 -2.03125,0.6875 -0.0301,-0.0207 -0.031,-0.0105 -0.0625,-0.0312 C 188.44557,868.35254 187.82811,868 187,868 l -5,0 -1,0 z m 2,2 4,0 c 0.13821,0 0.51476,0.14746 0.8125,0.34375 0.29774,0.19629 0.5,0.375 0.5,0.375 l 0.71875,0.6875 0.6875,-0.71875 c 0,0 0.89975,-0.6875 1.28125,-0.6875 l 4,0 0,9 -4,0 c -0.87693,0 -1.56008,0.34735 -2.03125,0.6875 -0.0196,-0.0135 -0.011,-0.0177 -0.0312,-0.0312 C 188.47725,879.34834 187.83512,879 187,879 l -4,0 0,-9 z' id='rect7352-28-4-8' style='font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#bebebe;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans'/>
<rect height='2' id='rect42942-5-3-1-4-4-5-9' inkscape:label='a' rx='0.375' ry='0.375' style='opacity:0.35;color:#bebebe;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible' transform='scale(-1,1)' width='3.0000136' x='-187.00021' y='871.99976'/>
<rect height='2.0002136' id='rect42944-7-5-3-5-1-5-0-2-62-5' inkscape:label='a' rx='0.375' ry='0.375' style='opacity:0.35;color:#bebebe;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible' transform='scale(-1,1)' width='3.0000129' x='-187.00021' y='874.99976'/>
<rect height='2.0002136' id='rect42942-5-3-1-4-4-6-0-1' inkscape:label='a' rx='0.375' ry='0.375' style='opacity:0.35;color:#bebebe;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible' transform='scale(-1,1)' width='3.0000136' x='-194.00021' y='871.99976'/>
<rect height='2.0002136' id='rect42944-7-5-3-5-1-5-0-2-6-4-6' inkscape:label='a' rx='0.375' ry='0.375' style='opacity:0.35;color:#bebebe;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible' transform='scale(-1,1)' width='3.0000129' x='-194.00021' y='874.99976'/>
</g>
</svg>
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg xmlns:cc='http://creativecommons.org/ns#' xmlns:dc='http://purl.org/dc/elements/1.1/' sodipodi:docname='gtk3-widget-factory-symbolic.svg' height='16.03125' id='svg7384' xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape' xmlns:osb='http://www.openswatchbook.org/uri/2009/osb' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd' xmlns:svg='http://www.w3.org/2000/svg' inkscape:version='0.48.5 r10040' version='1.1' width='16' xmlns='http://www.w3.org/2000/svg'>
<metadata id='metadata90'>
<rdf:RDF>
<cc:Work rdf:about=''>
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource='http://purl.org/dc/dcmitype/StillImage'/>
<dc:title>Gnome Symbolic Icon Theme</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview inkscape:bbox-paths='true' bordercolor='#666666' borderopacity='1' inkscape:current-layer='layer9' inkscape:cx='15.183262' inkscape:cy='0.30876' gridtolerance='10' inkscape:guide-bbox='true' guidetolerance='10' id='namedview88' inkscape:object-nodes='false' inkscape:object-paths='false' objecttolerance='10' pagecolor='#555753' inkscape:pageopacity='1' inkscape:pageshadow='2' showborder='false' showgrid='false' showguides='true' inkscape:snap-bbox='true' inkscape:snap-bbox-midpoints='false' inkscape:snap-global='true' inkscape:snap-grids='true' inkscape:snap-nodes='true' inkscape:snap-others='false' inkscape:snap-to-guides='true' inkscape:window-height='1375' inkscape:window-maximized='1' inkscape:window-width='2560' inkscape:window-x='0' inkscape:window-y='27' inkscape:zoom='16'>
<inkscape:grid empspacing='2' enabled='true' id='grid4866' originx='-203px' originy='-251.96875px' snapvisiblegridlinesonly='true' spacingx='1px' spacingy='1px' type='xygrid' visible='true'/>
</sodipodi:namedview>
<title id='title9167'>Gnome Symbolic Icon Theme</title>
<defs id='defs7386'>
<linearGradient id='linearGradient7212' osb:paint='solid'>
<stop id='stop7214' offset='0' style='stop-color:#000000;stop-opacity:1;'/>
</linearGradient>
</defs>
<g inkscape:groupmode='layer' id='layer9' inkscape:label='apps' style='display:inline' transform='translate(-444.0002,35)'>
<path inkscape:connector-curvature='0' d='m 446.21875,-34 c -0.64785,0 -1.1875,0.539653 -1.1875,1.1875 l 0,4.625 c 0,0.647847 0.53965,1.1875 1.1875,1.1875 l 11.65625,0 c 0.64785,0 1.15625,-0.539653 1.15625,-1.1875 l 0,-4.625 c 0,-0.647847 -0.5084,-1.1875 -1.15625,-1.1875 l -11.65625,0 z m 0,1 11.65625,0 c 0.11114,0 0.15625,0.07636 0.15625,0.1875 l 0,4.625 c 0,0.111144 -0.0451,0.1875 -0.15625,0.1875 l -11.65625,0 c -0.11114,0 -0.1875,-0.07636 -0.1875,-0.1875 l 0,-4.625 c 0,-0.111144 0.0764,-0.1875 0.1875,-0.1875 z' id='rect7030' style='font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new;font-family:Sans;-inkscape-font-specification:Sans'/>
<path inkscape:connector-curvature='0' d='m 454.0002,-32 0,1 0,0.0312 1.53125,1.375 1.46875,-1.4062 0,-1 -0.75781,0 -0.73828,0.74609 L 454.77754,-32 z' id='path7800' sodipodi:nodetypes='cccccccccc' style='font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:1.39999998;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new;font-family:Sans;-inkscape-font-specification:Sans'/>
<path inkscape:connector-curvature='0' d='m 446.21875,-26 c -0.64785,0 -1.1875,0.539653 -1.1875,1.1875 l 0,4.65625 c 0,0.647847 0.53965,1.1875 1.1875,1.1875 l 11.65625,0 c 0.64785,0 1.15625,-0.539653 1.15625,-1.1875 l 0,-4.65625 c 0,-0.647847 -0.5084,-1.1875 -1.15625,-1.1875 l -11.65625,0 z m 0,1 11.65625,0 c 0.11114,0 0.15625,0.07636 0.15625,0.1875 l 0,4.65625 c 0,0.111144 -0.0451,0.1875 -0.15625,0.1875 l -11.65625,0 c -0.11114,0 -0.1875,-0.07636 -0.1875,-0.1875 l 0,-4.65625 c 0,-0.111144 0.0764,-0.1875 0.1875,-0.1875 z' id='rect7811' style='font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new;font-family:Sans;-inkscape-font-specification:Sans'/>
<rect height='2' id='rect7813' rx='0' ry='0' style='color:#000000;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.39999998;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new' width='8' x='448.00021' y='-24'/>
<rect height='1' id='rect7815' rx='0' ry='0' style='opacity:0.3;color:#000000;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.39999998;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new' width='12.860504' x='445.53082' y='-29'/>
<rect height='1' id='rect7817' rx='0' ry='0' style='opacity:0.3;color:#000000;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.39999998;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new' width='12.860504' x='445.53085' y='-20.96875'/>
</g>
</svg>
@require(page)
<li class="dropdown">
<a class="dropdown-toggle" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
API References<span class="caret"></span>
</a>
<ul class="dropdown-menu" id="modules-menu">
@for tup in (("gstreamer-1.0/gi-index.html","GStreamer core"), \
("libs.html","GStreamer Libraries"),\
("plugins_doc.html","GStreamer Plugins")):
<li>
<a href="@tup[0]">@tup[1]</a>
</li>
@end
</li>
<li>
<a href="application-development/index.html">Application manual</a>
</li>
<li>
<a href="tutorials/index.html">Tutorials</a>
</li>
This diff is collapsed.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment