mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 11:41:09 +00:00
doc: Build documentation with hotdoc
This commit is contained in:
parent
5caf822526
commit
e7816eba1d
25 changed files with 928 additions and 1735 deletions
|
@ -1,12 +1,10 @@
|
|||
DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc --with-bash-completion-dir=no
|
||||
|
||||
if BUILD_EXAMPLES
|
||||
EXAMPLES_SUBDIRS= examples
|
||||
else
|
||||
EXAMPLES_SUBDIRS=
|
||||
endif
|
||||
|
||||
SUBDIRS = ges tests tools common m4 pkgconfig docs bindings plugins $(EXAMPLES_SUBDIRS)
|
||||
SUBDIRS = ges tests tools common m4 pkgconfig bindings plugins $(EXAMPLES_SUBDIRS)
|
||||
|
||||
DIST_SUBDIRS = $(SUBDIRS)
|
||||
|
||||
|
|
|
@ -114,12 +114,6 @@ AM_CONDITIONAL(HAVE_VALGRIND, test ! "x$VALGRIND_PATH" = "xno")
|
|||
dnl check for gobject-introspection
|
||||
GOBJECT_INTROSPECTION_CHECK([0.9.6])
|
||||
|
||||
dnl check for documentation tools
|
||||
AG_GST_DOCBOOK_CHECK
|
||||
GTK_DOC_CHECK([1.3])
|
||||
AS_PATH_PYTHON([2.1])
|
||||
AG_GST_PLUGIN_DOCS([1.3],[2.1])
|
||||
|
||||
dnl check for pygobject
|
||||
AC_SUBST(PYGOBJECT_REQ, 3.0)
|
||||
PKG_CHECK_MODULES(PYGOBJECT, pygobject-3.0 >= $PYGOBJECT_REQ,
|
||||
|
@ -417,9 +411,6 @@ examples/c/Makefile
|
|||
tests/validate/Makefile
|
||||
tests/validate/scenarios/Makefile
|
||||
tools/Makefile
|
||||
docs/Makefile
|
||||
docs/version.entities
|
||||
docs/libs/Makefile
|
||||
pkgconfig/Makefile
|
||||
pkgconfig/gst-editing-services.pc
|
||||
pkgconfig/gst-editing-services-uninstalled.pc
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
if ENABLE_GTK_DOC
|
||||
DOCS_SUBDIRS = libs
|
||||
else
|
||||
DOCS_SUBDIRS =
|
||||
endif
|
||||
|
||||
SUBDIRS = $(DOCS_SUBDIRS)
|
||||
DIST_SUBDIRS = libs
|
||||
|
||||
EXTRA_DIST = \
|
||||
version.entities.in
|
||||
|
||||
upload:
|
||||
@if test "x$(SUBDIRS)" != x; then for a in $(SUBDIRS); do cd $$a; make upload; cd ..; done; fi
|
1
docs/base-classes.md
Normal file
1
docs/base-classes.md
Normal file
|
@ -0,0 +1 @@
|
|||
# Base classes
|
669
docs/gst_plugins_cache.json
Normal file
669
docs/gst_plugins_cache.json
Normal file
|
@ -0,0 +1,669 @@
|
|||
{
|
||||
"nle": {
|
||||
"description": "GStreamer Non Linear Engine",
|
||||
"elements": {
|
||||
"nlecomposition": {
|
||||
"author": "Wim Taymans <wim.taymans@gmail.com>, Edward Hervey <bilboed@bilboed.com>, Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>, Thibault Saunier <tsaunier@gnome.org>",
|
||||
"description": "Combines NLE objects",
|
||||
"hierarchy": [
|
||||
"NleComposition",
|
||||
"NleObject",
|
||||
"GstBin",
|
||||
"GstElement",
|
||||
"GstObject",
|
||||
"GInitiallyUnowned",
|
||||
"GObject"
|
||||
],
|
||||
"klass": "Filter/Editor",
|
||||
"long-name": "GNonLin Composition",
|
||||
"name": "nlecomposition",
|
||||
"pad-templates": {
|
||||
"src": {
|
||||
"caps": "ANY",
|
||||
"direction": "src",
|
||||
"presence": "always"
|
||||
}
|
||||
},
|
||||
"properties": {
|
||||
"active": {
|
||||
"blurb": "Use this object in the NleComposition",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "true",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"async-handling": {
|
||||
"blurb": "The bin will handle Asynchronous state changes",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "false",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"caps": {
|
||||
"blurb": "Caps used to filter/choose the output stream",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "ANY",
|
||||
"type-name": "GstCaps",
|
||||
"writable": true
|
||||
},
|
||||
"duration": {
|
||||
"blurb": "Outgoing duration (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "9223372036854775807",
|
||||
"min": "0",
|
||||
"type-name": "gint64",
|
||||
"writable": true
|
||||
},
|
||||
"expandable": {
|
||||
"blurb": "Expand to the full duration of the container composition",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "false",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"inpoint": {
|
||||
"blurb": "The media start position (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "18446744073709551615",
|
||||
"max": "18446744073709551615",
|
||||
"min": "0",
|
||||
"type-name": "guint64",
|
||||
"writable": true
|
||||
},
|
||||
"media-duration-factor": {
|
||||
"blurb": "The relative rate caused by this object",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "1",
|
||||
"max": "1.79769e+308",
|
||||
"min": "0.01",
|
||||
"type-name": "gdouble",
|
||||
"writable": true
|
||||
},
|
||||
"message-forward": {
|
||||
"blurb": "Forwards all children messages",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "false",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"name": {
|
||||
"blurb": "The name of the object",
|
||||
"construct": true,
|
||||
"construct-only": false,
|
||||
"default": "NULL",
|
||||
"hotdoc-fixed-default": true,
|
||||
"type-name": "gchararray",
|
||||
"writable": true
|
||||
},
|
||||
"parent": {
|
||||
"blurb": "The parent of the object",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"type-name": "GstObject",
|
||||
"writable": true
|
||||
},
|
||||
"priority": {
|
||||
"blurb": "The priority of the object (0 = highest priority)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "-1",
|
||||
"min": "0",
|
||||
"type-name": "guint",
|
||||
"writable": true
|
||||
},
|
||||
"start": {
|
||||
"blurb": "The start position relative to the parent (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "18446744073709551615",
|
||||
"min": "0",
|
||||
"type-name": "guint64",
|
||||
"writable": true
|
||||
},
|
||||
"stop": {
|
||||
"blurb": "The stop position relative to the parent (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "18446744073709551615",
|
||||
"min": "0",
|
||||
"type-name": "guint64",
|
||||
"writable": false
|
||||
}
|
||||
},
|
||||
"rank": "none",
|
||||
"signals": {
|
||||
"commit": {
|
||||
"args": [
|
||||
"gboolean"
|
||||
],
|
||||
"retval": "gboolean"
|
||||
},
|
||||
"commited": {
|
||||
"args": [
|
||||
"gboolean"
|
||||
],
|
||||
"retval": "void"
|
||||
},
|
||||
"query-position": {
|
||||
"args": [],
|
||||
"retval": "guint64"
|
||||
}
|
||||
}
|
||||
},
|
||||
"nleoperation": {
|
||||
"author": "Wim Taymans <wim.taymans@gmail.com>, Edward Hervey <bilboed@bilboed.com>",
|
||||
"description": "Encapsulates filters/effects for use with NLE Objects",
|
||||
"hierarchy": [
|
||||
"NleOperation",
|
||||
"NleObject",
|
||||
"GstBin",
|
||||
"GstElement",
|
||||
"GstObject",
|
||||
"GInitiallyUnowned",
|
||||
"GObject"
|
||||
],
|
||||
"klass": "Filter/Editor",
|
||||
"long-name": "GNonLin Operation",
|
||||
"name": "nleoperation",
|
||||
"pad-templates": {
|
||||
"sink%%d": {
|
||||
"caps": "ANY",
|
||||
"direction": "sink",
|
||||
"presence": "request"
|
||||
},
|
||||
"src": {
|
||||
"caps": "ANY",
|
||||
"direction": "src",
|
||||
"presence": "always"
|
||||
}
|
||||
},
|
||||
"properties": {
|
||||
"active": {
|
||||
"blurb": "Use this object in the NleComposition",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "true",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"async-handling": {
|
||||
"blurb": "The bin will handle Asynchronous state changes",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "false",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"caps": {
|
||||
"blurb": "Caps used to filter/choose the output stream",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "ANY",
|
||||
"type-name": "GstCaps",
|
||||
"writable": true
|
||||
},
|
||||
"duration": {
|
||||
"blurb": "Outgoing duration (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "9223372036854775807",
|
||||
"min": "0",
|
||||
"type-name": "gint64",
|
||||
"writable": true
|
||||
},
|
||||
"expandable": {
|
||||
"blurb": "Expand to the full duration of the container composition",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "false",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"inpoint": {
|
||||
"blurb": "The media start position (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "18446744073709551615",
|
||||
"max": "18446744073709551615",
|
||||
"min": "0",
|
||||
"type-name": "guint64",
|
||||
"writable": true
|
||||
},
|
||||
"media-duration-factor": {
|
||||
"blurb": "The relative rate caused by this object",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "1",
|
||||
"max": "1.79769e+308",
|
||||
"min": "0.01",
|
||||
"type-name": "gdouble",
|
||||
"writable": true
|
||||
},
|
||||
"message-forward": {
|
||||
"blurb": "Forwards all children messages",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "false",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"name": {
|
||||
"blurb": "The name of the object",
|
||||
"construct": true,
|
||||
"construct-only": false,
|
||||
"default": "NULL",
|
||||
"hotdoc-fixed-default": true,
|
||||
"type-name": "gchararray",
|
||||
"writable": true
|
||||
},
|
||||
"parent": {
|
||||
"blurb": "The parent of the object",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"type-name": "GstObject",
|
||||
"writable": true
|
||||
},
|
||||
"priority": {
|
||||
"blurb": "The priority of the object (0 = highest priority)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "-1",
|
||||
"min": "0",
|
||||
"type-name": "guint",
|
||||
"writable": true
|
||||
},
|
||||
"sinks": {
|
||||
"blurb": "Number of input sinks (-1 for automatic handling)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "1",
|
||||
"max": "2147483647",
|
||||
"min": "-1",
|
||||
"type-name": "gint",
|
||||
"writable": true
|
||||
},
|
||||
"start": {
|
||||
"blurb": "The start position relative to the parent (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "18446744073709551615",
|
||||
"min": "0",
|
||||
"type-name": "guint64",
|
||||
"writable": true
|
||||
},
|
||||
"stop": {
|
||||
"blurb": "The stop position relative to the parent (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "18446744073709551615",
|
||||
"min": "0",
|
||||
"type-name": "guint64",
|
||||
"writable": false
|
||||
}
|
||||
},
|
||||
"rank": "none",
|
||||
"signals": {
|
||||
"commit": {
|
||||
"args": [
|
||||
"gboolean"
|
||||
],
|
||||
"retval": "gboolean"
|
||||
},
|
||||
"input-priority-changed": {
|
||||
"args": [
|
||||
"GstPad",
|
||||
"guint"
|
||||
],
|
||||
"retval": "void"
|
||||
}
|
||||
}
|
||||
},
|
||||
"nlesource": {
|
||||
"author": "Wim Taymans <wim.taymans@gmail.com>, Edward Hervey <bilboed@bilboed.com>",
|
||||
"description": "Manages source elements",
|
||||
"hierarchy": [
|
||||
"NleSource",
|
||||
"NleObject",
|
||||
"GstBin",
|
||||
"GstElement",
|
||||
"GstObject",
|
||||
"GInitiallyUnowned",
|
||||
"GObject"
|
||||
],
|
||||
"klass": "Filter/Editor",
|
||||
"long-name": "GNonLin Source",
|
||||
"name": "nlesource",
|
||||
"pad-templates": {
|
||||
"src": {
|
||||
"caps": "ANY",
|
||||
"direction": "src",
|
||||
"presence": "always"
|
||||
}
|
||||
},
|
||||
"properties": {
|
||||
"active": {
|
||||
"blurb": "Use this object in the NleComposition",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "true",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"async-handling": {
|
||||
"blurb": "The bin will handle Asynchronous state changes",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "true",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"caps": {
|
||||
"blurb": "Caps used to filter/choose the output stream",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "ANY",
|
||||
"type-name": "GstCaps",
|
||||
"writable": true
|
||||
},
|
||||
"duration": {
|
||||
"blurb": "Outgoing duration (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "9223372036854775807",
|
||||
"min": "0",
|
||||
"type-name": "gint64",
|
||||
"writable": true
|
||||
},
|
||||
"expandable": {
|
||||
"blurb": "Expand to the full duration of the container composition",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "false",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"inpoint": {
|
||||
"blurb": "The media start position (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "18446744073709551615",
|
||||
"max": "18446744073709551615",
|
||||
"min": "0",
|
||||
"type-name": "guint64",
|
||||
"writable": true
|
||||
},
|
||||
"media-duration-factor": {
|
||||
"blurb": "The relative rate caused by this object",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "1",
|
||||
"max": "1.79769e+308",
|
||||
"min": "0.01",
|
||||
"type-name": "gdouble",
|
||||
"writable": true
|
||||
},
|
||||
"message-forward": {
|
||||
"blurb": "Forwards all children messages",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "false",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"name": {
|
||||
"blurb": "The name of the object",
|
||||
"construct": true,
|
||||
"construct-only": false,
|
||||
"default": "NULL",
|
||||
"hotdoc-fixed-default": true,
|
||||
"type-name": "gchararray",
|
||||
"writable": true
|
||||
},
|
||||
"parent": {
|
||||
"blurb": "The parent of the object",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"type-name": "GstObject",
|
||||
"writable": true
|
||||
},
|
||||
"priority": {
|
||||
"blurb": "The priority of the object (0 = highest priority)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "-1",
|
||||
"min": "0",
|
||||
"type-name": "guint",
|
||||
"writable": true
|
||||
},
|
||||
"start": {
|
||||
"blurb": "The start position relative to the parent (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "18446744073709551615",
|
||||
"min": "0",
|
||||
"type-name": "guint64",
|
||||
"writable": true
|
||||
},
|
||||
"stop": {
|
||||
"blurb": "The stop position relative to the parent (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "18446744073709551615",
|
||||
"min": "0",
|
||||
"type-name": "guint64",
|
||||
"writable": false
|
||||
}
|
||||
},
|
||||
"rank": "none",
|
||||
"signals": {
|
||||
"commit": {
|
||||
"args": [
|
||||
"gboolean"
|
||||
],
|
||||
"retval": "gboolean"
|
||||
}
|
||||
}
|
||||
},
|
||||
"nleurisource": {
|
||||
"author": "Edward Hervey <bilboed@bilboed.com>",
|
||||
"description": "High-level URI Source element",
|
||||
"hierarchy": [
|
||||
"NleURISource",
|
||||
"NleSource",
|
||||
"NleObject",
|
||||
"GstBin",
|
||||
"GstElement",
|
||||
"GstObject",
|
||||
"GInitiallyUnowned",
|
||||
"GObject"
|
||||
],
|
||||
"klass": "Filter/Editor",
|
||||
"long-name": "GNonLin URI Source",
|
||||
"name": "nleurisource",
|
||||
"pad-templates": {
|
||||
"src": {
|
||||
"caps": "ANY",
|
||||
"direction": "src",
|
||||
"presence": "sometimes"
|
||||
}
|
||||
},
|
||||
"properties": {
|
||||
"active": {
|
||||
"blurb": "Use this object in the NleComposition",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "true",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"async-handling": {
|
||||
"blurb": "The bin will handle Asynchronous state changes",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "true",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"caps": {
|
||||
"blurb": "Caps used to filter/choose the output stream",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "ANY",
|
||||
"type-name": "GstCaps",
|
||||
"writable": true
|
||||
},
|
||||
"duration": {
|
||||
"blurb": "Outgoing duration (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "9223372036854775807",
|
||||
"min": "0",
|
||||
"type-name": "gint64",
|
||||
"writable": true
|
||||
},
|
||||
"expandable": {
|
||||
"blurb": "Expand to the full duration of the container composition",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "false",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"inpoint": {
|
||||
"blurb": "The media start position (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "18446744073709551615",
|
||||
"max": "18446744073709551615",
|
||||
"min": "0",
|
||||
"type-name": "guint64",
|
||||
"writable": true
|
||||
},
|
||||
"media-duration-factor": {
|
||||
"blurb": "The relative rate caused by this object",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "1",
|
||||
"max": "1.79769e+308",
|
||||
"min": "0.01",
|
||||
"type-name": "gdouble",
|
||||
"writable": true
|
||||
},
|
||||
"message-forward": {
|
||||
"blurb": "Forwards all children messages",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "false",
|
||||
"type-name": "gboolean",
|
||||
"writable": true
|
||||
},
|
||||
"name": {
|
||||
"blurb": "The name of the object",
|
||||
"construct": true,
|
||||
"construct-only": false,
|
||||
"default": "NULL",
|
||||
"hotdoc-fixed-default": true,
|
||||
"type-name": "gchararray",
|
||||
"writable": true
|
||||
},
|
||||
"parent": {
|
||||
"blurb": "The parent of the object",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"type-name": "GstObject",
|
||||
"writable": true
|
||||
},
|
||||
"priority": {
|
||||
"blurb": "The priority of the object (0 = highest priority)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "-1",
|
||||
"min": "0",
|
||||
"type-name": "guint",
|
||||
"writable": true
|
||||
},
|
||||
"start": {
|
||||
"blurb": "The start position relative to the parent (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "18446744073709551615",
|
||||
"min": "0",
|
||||
"type-name": "guint64",
|
||||
"writable": true
|
||||
},
|
||||
"stop": {
|
||||
"blurb": "The stop position relative to the parent (in nanoseconds)",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "0",
|
||||
"max": "18446744073709551615",
|
||||
"min": "0",
|
||||
"type-name": "guint64",
|
||||
"writable": false
|
||||
},
|
||||
"uri": {
|
||||
"blurb": "Uri of the file to use",
|
||||
"construct": false,
|
||||
"construct-only": false,
|
||||
"default": "NULL",
|
||||
"type-name": "gchararray",
|
||||
"writable": true
|
||||
}
|
||||
},
|
||||
"rank": "none",
|
||||
"signals": {
|
||||
"commit": {
|
||||
"args": [
|
||||
"gboolean"
|
||||
],
|
||||
"retval": "gboolean"
|
||||
},
|
||||
"no-more-pads": {
|
||||
"args": [],
|
||||
"retval": "void"
|
||||
},
|
||||
"pad-added": {
|
||||
"args": [
|
||||
"GstPad"
|
||||
],
|
||||
"retval": "void"
|
||||
},
|
||||
"pad-removed": {
|
||||
"args": [
|
||||
"GstPad"
|
||||
],
|
||||
"retval": "void"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"filename": "libgstnle.so",
|
||||
"license": "LGPL",
|
||||
"package": "GStreamer Editing Services",
|
||||
"source": "gst-editing-services",
|
||||
"url": "Unknown package origin"
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
68
docs/index.md
Normal file
68
docs/index.md
Normal file
|
@ -0,0 +1,68 @@
|
|||
---
|
||||
short-description: GStreamer Editing Services API reference.
|
||||
...
|
||||
|
||||
# GStreamer Editing Services
|
||||
|
||||
The "GStreamer Editing Services" is a library to simplify the creation
|
||||
of multimedia editing applications. Based on the GStreamer multimedia framework
|
||||
and the GNonLin set of plugins, its goals are to suit all types of editing-related
|
||||
applications.
|
||||
|
||||
The GStreamer Editing Services are cross-platform and work on most UNIX-like
|
||||
platform as well as Windows. It is released under the GNU Library General Public License
|
||||
(GNU LGPL).
|
||||
|
||||
## Goals of GStreamer Editing Services
|
||||
|
||||
The GStreamer multimedia framework and the accompanying GNonLin set of
|
||||
plugins for non-linear editing offer all the building blocks for:
|
||||
|
||||
- Decoding and encoding to a wide variety of formats, through all the
|
||||
available GStreamer plugins.
|
||||
|
||||
- Easily choosing segments of streams and arranging them through time
|
||||
through the GNonLin set of plugins.
|
||||
|
||||
But all those building blocks only offer stream-level access, which
|
||||
results in developers who want to write non-linear editors to write a
|
||||
consequent amount of code to get to the level of *non-linear editing*
|
||||
notions which are closer and more meaningful for the end-user (and
|
||||
therefore the application).
|
||||
|
||||
The GStreamer Editing Services (hereafter GES) aims to fill the gap
|
||||
between GStreamer/GNonLin and the application developer by offering a
|
||||
series of classes to simplify the creation of many kind of
|
||||
editing-related applications.
|
||||
|
||||
## Architecture
|
||||
|
||||
### Timeline and TimelinePipeline
|
||||
|
||||
The most top-level object encapsulating every other object is the
|
||||
[GESTimeline](GESTimeline). It is the central object for any editing project.
|
||||
|
||||
The `GESTimeline` is a `GstElement`. It can therefore be used in any
|
||||
GStreamer pipeline like any other object.
|
||||
|
||||
### Tracks and Layers
|
||||
|
||||
The GESTimeline can contain two types of objects (seen in
|
||||
"Layers and Tracks"):
|
||||
|
||||
- Layers - Corresponds to the user-visible arrangement of clips, and
|
||||
what you primarily interact with as an application developer. A
|
||||
minimalistic timeline would only have one layer, but a more complex
|
||||
editing application could use as many as needed.
|
||||
|
||||
- Tracks - Corresponds to the output streams in GStreamer. A typical
|
||||
GESTimeline, aimed at a video editing application, would have an
|
||||
audio track and a video track. A GESTimeline for an audio editing
|
||||
application would only require an audio track. Multiple layers can
|
||||
be related to each track.
|
||||
|
||||
![Layers and Tracks](images/layer_track_overview.png)
|
||||
|
||||
In order to reduce even more the amount of GStreamer interaction the
|
||||
application developer has to deal with, a convenience GstPipeline has
|
||||
been made available specifically for Timelines : [GESPipeline](GESPipeline).
|
17
docs/libs/.gitignore
vendored
17
docs/libs/.gitignore
vendored
|
@ -1,17 +0,0 @@
|
|||
ges-decl-list.txt
|
||||
ges-decl.txt
|
||||
ges-overrides.txt
|
||||
ges-undeclared.txt
|
||||
ges-undocumented.txt
|
||||
ges-unused.txt
|
||||
ges.args
|
||||
ges.hierarchy
|
||||
ges.interfaces
|
||||
ges.prerequisites
|
||||
ges.signals
|
||||
*.stamp
|
||||
|
||||
html/
|
||||
tmpl/
|
||||
xml/
|
||||
doc-registry.xml
|
|
@ -1,86 +0,0 @@
|
|||
GST_DOC_SCANOBJ = $(top_srcdir)/common/gstdoc-scangobj
|
||||
|
||||
## Process this file with automake to produce Makefile.in
|
||||
|
||||
# The name of the module, e.g. 'glib'.
|
||||
MODULE=ges
|
||||
DOC_MODULE=$(MODULE)
|
||||
|
||||
# for upload-doc.mak
|
||||
DOC=gstreamer-editing-services
|
||||
FORMATS=html
|
||||
html: html-build.stamp
|
||||
include $(top_srcdir)/common/upload-doc.mak
|
||||
|
||||
# The top-level SGML file. Change it if you want.
|
||||
DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml
|
||||
|
||||
# The directory containing the source code.
|
||||
# gtk-doc will search all .c & .h files beneath here for inline comments
|
||||
# documenting functions and macros.
|
||||
DOC_SOURCE_DIR = $(top_srcdir)/ges
|
||||
|
||||
SCAN_OPTIONS=
|
||||
|
||||
# Extra options to supply to gtkdoc-mkdb.
|
||||
MKDB_OPTIONS=--sgml-mode --source-suffixes=c,h,cc,m
|
||||
|
||||
# Extra options to supply to gtkdoc-fixref.
|
||||
FIXXREF_OPTIONS=--extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html \
|
||||
--extra-dir=$(GST_PREFIX)/share/gtk-doc/html \
|
||||
--extra-dir=$(GSTPB_PREFIX)/share/gtk-doc/html
|
||||
|
||||
# Used for dependencies.
|
||||
HFILE_GLOB=$(top_srcdir)/ges/ges-*.h
|
||||
CFILE_GLOB=$(top_srcdir)/ges/ges-*.c
|
||||
|
||||
# Extra options to supply to gtkdoc-scan.
|
||||
SCANOBJ_OPTIONS=--type-init-func="g_type_init();gst_init(&argc,&argv)"
|
||||
|
||||
# Header files to ignore when scanning.
|
||||
IGNORE_HFILES = \
|
||||
gesmarshal.h \
|
||||
ges-internal.h \
|
||||
ges-auto-transition.h \
|
||||
ges-structured-interface.h \
|
||||
ges-structure-parser.h \
|
||||
ges-smart-video-mixer.h \
|
||||
gstframepositioner.h
|
||||
IGNORE_CFILES =
|
||||
|
||||
# we add all .h files of elements that have signals/args we want
|
||||
# sadly this also pulls in the private methods - maybe we should
|
||||
# move those around in the source ?
|
||||
# also, we should add some stuff here conditionally based on whether
|
||||
# or not the plugin will actually build
|
||||
# but I'm not sure about that - it might be this Just Works given that
|
||||
# the registry won't have the element
|
||||
|
||||
EXTRA_HFILES = \
|
||||
$(top_srcdir)/ges/ges-types.h
|
||||
|
||||
# Images to copy into HTML directory.
|
||||
HTML_IMAGES = layer_track_overview.png
|
||||
|
||||
# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
|
||||
content_files = architecture.xml
|
||||
|
||||
# Other files to distribute.
|
||||
extra_files =
|
||||
|
||||
# CFLAGS and LDFLAGS for compiling scan program. Only needed if your app/lib
|
||||
# contains GtkObjects/GObjects and you want to document signals and properties.
|
||||
GTKDOC_CFLAGS = -I$(top_srcdir) $(GST_PBUTILS_CFLAGS) $(GST_BASE_CFLAGS) \
|
||||
$(GST_CFLAGS) $(GIO_CFLAGS) $(GCOV_CFLAGS)
|
||||
GTKDOC_LIBS = \
|
||||
$(top_builddir)/ges/libges-@GST_API_VERSION@.la \
|
||||
$(GST_BASE_LIBS) $(GST_LIBS) $(GIO_LIBS) $(GCOV_LIBS)
|
||||
|
||||
GTKDOC_CC=$(LIBTOOL) --tag=CC --mode=compile $(CC)
|
||||
GTKDOC_LD=$(LIBTOOL) --tag=CC --mode=link $(CC)
|
||||
|
||||
# If you need to override some of the declarations, place them in this file
|
||||
# and uncomment this line.
|
||||
DOC_OVERRIDES = $(DOC_MODULE)-overrides.txt
|
||||
|
||||
include $(top_srcdir)/common/gtk-doc.mak
|
|
@ -1,111 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
|
||||
<!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'">
|
||||
]>
|
||||
<refentry id="ges-architecture" revision="25 mar 2009">
|
||||
<refmeta>
|
||||
<refentrytitle>Overview and architecture</refentrytitle>
|
||||
|
||||
<manvolnum>1</manvolnum>
|
||||
|
||||
<refmiscinfo>GStreamer Editing Services</refmiscinfo>
|
||||
</refmeta>
|
||||
|
||||
<!-- <refnamediv> -->
|
||||
|
||||
<!-- <refname>Overview</refname> -->
|
||||
|
||||
<!-- <refpurpose> -->
|
||||
|
||||
<!-- Goals of the GStreamer Editing Services. -->
|
||||
|
||||
<!-- </refpurpose> -->
|
||||
|
||||
<!-- </refnamediv> -->
|
||||
|
||||
<refsect1>
|
||||
<title>Goals of GStreamer Editing Services</title>
|
||||
|
||||
<para>The GStreamer multimedia framework and the accompanying GNonLin set
|
||||
of plugins for non-linear editing offer all the building blocks for:
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>Decoding and encoding to a wide variety of formats, through
|
||||
all the available GStreamer plugins.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Easily choosing segments of streams and arranging them through
|
||||
time through the GNonLin set of plugins.</para>
|
||||
</listitem>
|
||||
</itemizedlist></para>
|
||||
|
||||
<para>But all those building blocks only offer stream-level access, which
|
||||
results in developers who want to write non-linear editors to write a
|
||||
consequent amount of code to get to the level of <emphasis>non-linear
|
||||
editing</emphasis> notions which are closer and more meaningful for the
|
||||
end-user (and therefore the application).</para>
|
||||
|
||||
<para>The GStreamer Editing Services <remark>(hereafter GES)</remark> aims
|
||||
to fill the gap between GStreamer/GNonLin and the application developer by
|
||||
offering a series of classes to simplify the creation of many kind of
|
||||
editing-related applications.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Architecture</title>
|
||||
|
||||
<refsect2>
|
||||
<title>Timeline and TimelinePipeline</title>
|
||||
|
||||
<para>The most top-level object encapsulating every other object is the
|
||||
<link linkend="GESTimeline">GESTimeline</link>. It is the central object
|
||||
for any editing project.</para>
|
||||
|
||||
<para>The <classname>GESTimeline</classname> is a
|
||||
<classname>GstElement</classname>. It can therefore be used in any
|
||||
GStreamer pipeline like any other object.</para>
|
||||
</refsect2>
|
||||
|
||||
|
||||
<refsect2>
|
||||
<title>Tracks and Layers</title>
|
||||
|
||||
<para>The GESTimeline can contain two types of objects (seen in <xref
|
||||
linkend="layer_tracks_diagram" />): <itemizedlist>
|
||||
<listitem>
|
||||
<para>Layers - Corresponds to the user-visible arrangement of clips,
|
||||
and what you primarily interact with as an application developer.
|
||||
A minimalistic timeline would only have one layer,
|
||||
but a more complex editing application could use as many as needed.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Tracks - Corresponds to the output streams in GStreamer.
|
||||
A typical GESTimeline, aimed at a video editing application, would
|
||||
have an audio track and a video track.
|
||||
A GESTimeline for an audio editing application would only require
|
||||
an audio track. Multiple layers can be related to each track.</para>
|
||||
</listitem>
|
||||
</itemizedlist></para>
|
||||
|
||||
<figure float="0" id="layer_tracks_diagram">
|
||||
<title>Layers and Tracks</title>
|
||||
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="layer_track_overview.png" scale="75" />
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>In order to reduce even more the amount of GStreamer interaction
|
||||
the application developer has to deal with, a convenience GstPipeline
|
||||
has been made available specifically for Timelines : <link
|
||||
linkend="GESPipeline">GESPipeline</link>.</para>
|
||||
</refsect2>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
|
@ -1,130 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
|
||||
<!ENTITY % version-entities SYSTEM "version.entities">
|
||||
%version-entities;
|
||||
]>
|
||||
|
||||
<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">
|
||||
<bookinfo>
|
||||
<title>GStreamer Editing Services &GES_VERSION; Reference Manual</title>
|
||||
<releaseinfo>
|
||||
for GStreamer Editing Services &GST_API_VERSION; (&GES_VERSION;)
|
||||
</releaseinfo>
|
||||
</bookinfo>
|
||||
|
||||
<chapter>
|
||||
<title>GStreamer Editing Services Overview</title>
|
||||
<para>
|
||||
The "GStreamer Editing Services" is a library to simplify the creation
|
||||
of multimedia editing applications. Based on the GStreamer multimedia framework
|
||||
and the GNonLin set of plugins, its goals are to suit all types of editing-related
|
||||
applications.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The GStreamer Editing Services are cross-platform and work on most UNIX-like
|
||||
platform as well as Windows. It is released under the GNU Library General Public License
|
||||
(GNU LGPL).
|
||||
</para>
|
||||
<xi:include href="architecture.xml"/>
|
||||
<xi:include href="xml/ges-common.xml"/>
|
||||
<xi:include href="xml/ges-enums.xml"/>
|
||||
<xi:include href="xml/ges-gerror.xml"/>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>Base Classes</title>
|
||||
<xi:include href="xml/gestimeline.xml"/>
|
||||
<xi:include href="xml/geslayer.xml"/>
|
||||
<xi:include href="xml/gestimelineelement.xml"/>
|
||||
<xi:include href="xml/gescontainer.xml"/>
|
||||
<xi:include href="xml/gesclip.xml"/>
|
||||
<xi:include href="xml/gessourceclip.xml"/>
|
||||
<xi:include href="xml/gesoperationclip.xml"/>
|
||||
<xi:include href="xml/gesoverlayclip.xml"/>
|
||||
<xi:include href="xml/gesbaseeffectclip.xml"/>
|
||||
<xi:include href="xml/gestrack.xml"/>
|
||||
<xi:include href="xml/gestrackelement.xml"/>
|
||||
<xi:include href="xml/gessource.xml"/>
|
||||
<xi:include href="xml/gesvideosource.xml"/>
|
||||
<xi:include href="xml/gesaudiosource.xml"/>
|
||||
<xi:include href="xml/gesbaseeffect.xml"/>
|
||||
<xi:include href="xml/gesoperation.xml"/>
|
||||
<xi:include href="xml/gesbasetransitionclip.xml"/>
|
||||
<xi:include href="xml/gesasset.xml"/>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>Timeline objects</title>
|
||||
<xi:include href="xml/gesuriclip.xml"/>
|
||||
<xi:include href="xml/gestitleclip.xml"/>
|
||||
<xi:include href="xml/gestestclip.xml"/>
|
||||
<xi:include href="xml/gestextoverlayclip.xml"/>
|
||||
<xi:include href="xml/gestransitionclip.xml"/>
|
||||
<xi:include href="xml/geseffectclip.xml"/>
|
||||
<xi:include href="xml/gesgroup.xml"/>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>Track objects</title>
|
||||
<xi:include href="xml/gesaudiourisource.xml"/>
|
||||
<xi:include href="xml/gesvideourisource.xml"/>
|
||||
<xi:include href="xml/gestitlesource.xml"/>
|
||||
<xi:include href="xml/gesaudiotestsource.xml"/>
|
||||
<xi:include href="xml/gesvideotestsource.xml"/>
|
||||
<xi:include href="xml/gestextoverlay.xml"/>
|
||||
<xi:include href="xml/gestransition.xml"/>
|
||||
<xi:include href="xml/gesvideotransition.xml"/>
|
||||
<xi:include href="xml/gesaudiotransition.xml"/>
|
||||
<xi:include href="xml/gesimagesource.xml"/>
|
||||
<xi:include href="xml/gesmultifilesource.xml"/>
|
||||
<xi:include href="xml/geseffect.xml"/>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>Convenience classes</title>
|
||||
<xi:include href="xml/gespipeline.xml"/>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>Serialization Classes</title>
|
||||
<xi:include href="xml/gesformatter.xml"/>
|
||||
<xi:include href="xml/gespitiviformatter.xml"/>
|
||||
<xi:include href="xml/gesbasexmlformatter.xml"/>
|
||||
<xi:include href="xml/gesxmlformatter.xml"/>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>Interfaces</title>
|
||||
<xi:include href="xml/gesmetacontainer.xml"/>
|
||||
<xi:include href="xml/gesextractable.xml"/>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>Assets</title>
|
||||
<xi:include href="xml/gesclipasset.xml"/>
|
||||
<xi:include href="xml/gestrackelementasset.xml"/>
|
||||
<xi:include href="xml/gesuriclipasset.xml"/>
|
||||
<xi:include href="xml/gesurisourceasset.xml"/>
|
||||
<xi:include href="xml/gesproject.xml"/>
|
||||
</chapter>
|
||||
|
||||
<chapter>
|
||||
<title>Tracks</title>
|
||||
<xi:include href="xml/gesvideotrack.xml"/>
|
||||
<xi:include href="xml/gesaudiotrack.xml"/>
|
||||
</chapter>
|
||||
|
||||
<chapter id="ges-hierarchy">
|
||||
<title>Object Hierarchy</title>
|
||||
<xi:include href="xml/tree_index.sgml"/>
|
||||
</chapter>
|
||||
|
||||
<index id="api-index-full">
|
||||
<title>API Index</title>
|
||||
<xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>
|
||||
</index>
|
||||
|
||||
<xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
|
||||
</book>
|
File diff suppressed because it is too large
Load diff
|
@ -1,43 +0,0 @@
|
|||
#include <gst/gst.h>
|
||||
#include <ges/ges.h>
|
||||
|
||||
ges_formatter_get_type
|
||||
%ges_text_halign_get_type
|
||||
%ges_text_valign_get_type
|
||||
ges_timeline_get_type
|
||||
ges_layer_get_type
|
||||
ges_clip_get_type
|
||||
ges_operation_clip_get_type
|
||||
ges_overlay_clip_get_type
|
||||
ges_pipeline_get_type
|
||||
ges_source_clip_get_type
|
||||
ges_test_clip_get_type
|
||||
ges_base_transition_clip_get_type
|
||||
ges_transition_clip_get_type
|
||||
ges_base_effect_clip_get_type
|
||||
ges_effect_clip_get_type
|
||||
ges_uri_clip_get_type
|
||||
ges_text_overlay_clip_get_type
|
||||
ges_title_clip_get_type
|
||||
ges_audio_test_source_get_type
|
||||
ges_audio_transition_get_type
|
||||
ges_video_uri_source_get_type
|
||||
ges_audio_uri_source_get_type
|
||||
ges_track_get_type
|
||||
ges_image_source_get_type
|
||||
ges_multi_file_source_get_type
|
||||
ges_track_element_get_type
|
||||
ges_base_effect_get_type
|
||||
ges_effect_get_type
|
||||
ges_operation_get_type
|
||||
ges_source_get_type
|
||||
ges_text_overlay_get_type
|
||||
ges_title_source_get_type
|
||||
ges_transition_get_type
|
||||
%ges_track_type_get_type
|
||||
ges_video_test_source_get_type
|
||||
ges_video_transition_get_type
|
||||
ges_project_get_type
|
||||
%ges_video_test_pattern_get_type
|
||||
%ges_video_standard_transition_type_get_type
|
||||
ges_meta_container_get_type
|
|
@ -1,35 +0,0 @@
|
|||
types = configure_file(input : 'ges.types',
|
||||
output : 'ges.types',
|
||||
copy: true)
|
||||
|
||||
doc_deps_names = ['glib-2.0',
|
||||
'gstreamer-@0@'.format(apiversion),
|
||||
'gstreamer-plugins-base-@0@'.format(apiversion)]
|
||||
|
||||
doc_deps = []
|
||||
foreach doc_dep : doc_deps_names
|
||||
# TODO: Use get_pkgconfig_variable()
|
||||
runcmd = run_command('pkg-config', '--variable=prefix', doc_dep)
|
||||
if runcmd.returncode() == 0
|
||||
tmp = '--extra-dir=' + runcmd.stdout().strip() + '/share/gtk-doc/html/'
|
||||
tmp.strip()
|
||||
doc_deps = doc_deps + [tmp]
|
||||
endif
|
||||
endforeach
|
||||
|
||||
gnome.gtkdoc('ges',
|
||||
main_sgml : 'ges-docs.sgml',
|
||||
src_dir : '@0@/../../ges'.format(meson.current_source_dir()),
|
||||
scan_args : ['--deprecated-guards=GST_DISABLE_DEPRECATED',
|
||||
'--ignore-decorators=GES_API',
|
||||
'--ignore-headers=gesmarshal.h ges-internal.h ges-auto-transition.h ges-structured-interface.h ges-structure-parser.h ges-smart-video-mixer.h gstframepositioner.h'
|
||||
],
|
||||
scanobjs_args : ['--type-init-func="gst_init(NULL,NULL)"'],
|
||||
gobject_typesfile : types,
|
||||
dependencies : [ges_dep],
|
||||
fixxref_args: doc_deps + ['--html-dir=' + get_option('prefix') + '/share/gtk-doc/html/'],
|
||||
content_files : ['architecture.xml', 'ges-sections.txt', version_entities],
|
||||
html_assets : 'layer_track_overview.png',
|
||||
install : true,
|
||||
install_dir : 'gstreamer-editing-services',
|
||||
)
|
5
docs/low_level.md
Normal file
5
docs/low_level.md
Normal file
|
@ -0,0 +1,5 @@
|
|||
# Low level APIs
|
||||
|
||||
Those APIs should usually not be used unless you know
|
||||
what you are doing, check other parts of the documentation
|
||||
before deciding you should use one of those.
|
111
docs/meson.build
111
docs/meson.build
|
@ -1,11 +1,106 @@
|
|||
docconf = configuration_data()
|
||||
build_hotdoc = false
|
||||
|
||||
docconf.set('GST_API_VERSION', apiversion)
|
||||
docconf.set('VERSION', gst_version)
|
||||
docconf.set('PLUGINDIR', '@0@/lib/gstreamer-1.0'.format(get_option('prefix')))
|
||||
if meson.is_cross_build()
|
||||
if get_option('doc').enabled()
|
||||
error('Documentation enabled but building the doc while cross building is not supported yet.')
|
||||
endif
|
||||
|
||||
version_entities = configure_file(input : 'version.entities.in',
|
||||
output : 'version.entities',
|
||||
configuration : docconf)
|
||||
message('Documentation not built as building it while cross building is not supported yet.')
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
subdir('libs')
|
||||
required_hotdoc_extensions = ['gi-extension', 'gst-extension']
|
||||
if gst_dep.type_name() == 'internal'
|
||||
gst_proj = subproject('gstreamer')
|
||||
plugins_cache_generator = gst_proj.get_variable('plugins_cache_generator')
|
||||
else
|
||||
plugins_cache_generator = find_program(join_paths(gst_dep.get_pkgconfig_variable('libexecdir'), 'gstreamer-' + apiversion, 'gst-plugins-doc-cache-generator'))
|
||||
endif
|
||||
|
||||
plugins_cache = join_paths(meson.current_source_dir(), 'gst_plugins_cache.json')
|
||||
|
||||
if plugins_cache_generator.found()
|
||||
plugins_doc_dep = custom_target('editing-services-doc-cache',
|
||||
build_by_default: true,
|
||||
command: [plugins_cache_generator, plugins_cache, '@OUTPUT@', '@INPUT@'],
|
||||
input: plugins,
|
||||
output: 'gst_plugins_cache.json',
|
||||
)
|
||||
else
|
||||
warning('GStreamer plugin inspector for documentation not found, can\'t update the cache')
|
||||
endif
|
||||
|
||||
hotdoc_p = find_program('hotdoc', required: get_option('doc'))
|
||||
if not hotdoc_p.found()
|
||||
message('Hotdoc not found, not building the documentation')
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
hotdoc = import('hotdoc')
|
||||
foreach extension: required_hotdoc_extensions
|
||||
if not hotdoc.has_extensions(extension)
|
||||
if get_option('doc').enabled()
|
||||
error('Documentation enabled but gi-extension missing')
|
||||
endif
|
||||
|
||||
message('@0@ extensions not found, not building documentation requiring it'.format(extension))
|
||||
endif
|
||||
endforeach
|
||||
|
||||
if not build_gir
|
||||
if get_option('doc').enabled()
|
||||
error('Documentation enabled but introspection not built.')
|
||||
endif
|
||||
|
||||
message('Introspection not built, can\'t build the documentation')
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
build_hotdoc = true
|
||||
ges_excludes = []
|
||||
foreach f: ['gesmarshal.*',
|
||||
'ges-internal.*',
|
||||
'ges-auto-transition.*',
|
||||
'ges-structured-interface.*',
|
||||
'ges-structure-parser.*',
|
||||
'ges-version.h',
|
||||
'ges-smart-*',
|
||||
'ges-command-line-formatter.*',
|
||||
'ges-base-xml-formatter.h',
|
||||
'gstframepositioner.*',
|
||||
'lex.priv_ges_parse_yy.c',
|
||||
'ges-parse-lex.[c]']
|
||||
ges_excludes += [join_paths(meson.current_source_dir(), '..', '..', 'ges', f)]
|
||||
endforeach
|
||||
|
||||
hotdoc = import('hotdoc')
|
||||
libs_doc = [hotdoc.generate_doc('gst-editing-services',
|
||||
project_version: apiversion,
|
||||
extra_assets: [join_paths(meson.current_source_dir(), 'images')],
|
||||
gi_c_sources: ges_sources + ges_headers,
|
||||
gi_c_source_roots: [join_paths(meson.current_source_dir(), '../ges/')],
|
||||
gi_sources: [ges_gir[0].full_path()],
|
||||
gi_c_source_filters: ges_excludes,
|
||||
sitemap: 'sitemap.txt',
|
||||
index: 'index.md',
|
||||
gi_index: 'index.md',
|
||||
gi_smart_index: true,
|
||||
gi_order_generated_subpages: true,
|
||||
dependencies: [ges_dep],
|
||||
disable_incremental_build: true,
|
||||
)]
|
||||
|
||||
plugins_doc = [hotdoc.generate_doc('nle',
|
||||
project_version: apiversion,
|
||||
extra_assets: [join_paths(meson.current_source_dir(), 'images')],
|
||||
sitemap: 'nle-sitemap.txt',
|
||||
index: 'nle-index.md',
|
||||
dependencies: [nle],
|
||||
disable_incremental_build: true,
|
||||
gst_order_generated_subpages: true,
|
||||
gst_index: 'nle-index.md',
|
||||
gst_c_sources: ['../../plugins/nle/*.[ch]'],
|
||||
gst_smart_index: true,
|
||||
gst_cache_file: plugins_cache,
|
||||
gst_plugin_name: 'nle',
|
||||
)]
|
0
docs/nle-index.md
Normal file
0
docs/nle-index.md
Normal file
1
docs/nle-sitemap.txt
Normal file
1
docs/nle-sitemap.txt
Normal file
|
@ -0,0 +1 @@
|
|||
gst-index
|
7
docs/nle.md
Normal file
7
docs/nle.md
Normal file
|
@ -0,0 +1,7 @@
|
|||
---
|
||||
short-description: Non Linear Engine
|
||||
...
|
||||
|
||||
# Non Linear Engine
|
||||
|
||||
NLE is a set of elements to implement Non Linear multimedia editing.
|
58
docs/sitemap.txt
Normal file
58
docs/sitemap.txt
Normal file
|
@ -0,0 +1,58 @@
|
|||
gi-index
|
||||
ges.h
|
||||
ges-timeline.h
|
||||
ges-layer.h
|
||||
ges-clip.h
|
||||
ges-uri-clip.h
|
||||
ges-title-clip.h
|
||||
ges-test-clip.h
|
||||
ges-pipeline.h
|
||||
ges-project.h
|
||||
ges-effect.h
|
||||
base-classes.md
|
||||
ges-timeline-element.h
|
||||
ges-container.h
|
||||
ges-track.h
|
||||
ges-audio-track.h
|
||||
ges-video-track.h
|
||||
ges-asset.h
|
||||
ges-extractable.h
|
||||
ges-gerror.h
|
||||
ges-group.h
|
||||
ges-meta-container.h
|
||||
ges-text-overlay.h
|
||||
ges-formatter.h
|
||||
ges-track-element.h
|
||||
ges-video-source.h
|
||||
ges-audio-source.h
|
||||
ges-enums.h
|
||||
low_level.md
|
||||
ges-audio-test-source.h
|
||||
ges-audio-transition.h
|
||||
ges-audio-uri-source.h
|
||||
ges-base-effect-clip.h
|
||||
ges-base-effect.h
|
||||
ges-base-transition-clip.h
|
||||
ges-clip-asset.h
|
||||
# ges-effect-asset.h
|
||||
ges-effect-clip.h
|
||||
ges-image-source.h
|
||||
ges-multi-file-source.h
|
||||
ges-operation-clip.h
|
||||
ges-operation.h
|
||||
ges-overlay-clip.h
|
||||
# ges-pitivi-formatter.h
|
||||
ges-screenshot.h
|
||||
ges-source-clip.h
|
||||
ges-source.h
|
||||
ges-text-overlay-clip.h
|
||||
ges-title-source.h
|
||||
ges-track-element-asset.h
|
||||
ges-transition-clip.h
|
||||
ges-transition.h
|
||||
ges-types.h
|
||||
ges-uri-asset.h
|
||||
ges-video-test-source.h
|
||||
ges-video-transition.h
|
||||
ges-video-uri-source.h
|
||||
# ges-xml-formatter.h
|
|
@ -1,4 +1,4 @@
|
|||
ges_sources = [
|
||||
ges_sources = files([
|
||||
'ges.c',
|
||||
'ges-enums.c',
|
||||
'ges-meta-container.c',
|
||||
|
@ -62,9 +62,9 @@ ges_sources = [
|
|||
'ges-structured-interface.c',
|
||||
'ges-structure-parser.c',
|
||||
'gstframepositioner.c'
|
||||
]
|
||||
])
|
||||
|
||||
ges_headers = [
|
||||
ges_headers = files([
|
||||
'ges-types.h',
|
||||
'ges.h',
|
||||
'ges-prelude.h',
|
||||
|
@ -123,7 +123,7 @@ ges_headers = [
|
|||
'ges-effect-asset.h',
|
||||
'ges-utils.h',
|
||||
'ges-group.h'
|
||||
]
|
||||
])
|
||||
|
||||
if libxml_dep.found()
|
||||
ges_sources += files(['ges-pitivi-formatter.c'])
|
||||
|
@ -177,7 +177,7 @@ if build_gir
|
|||
'-I' + meson.current_build_dir() + '/..',
|
||||
'--cflags-end']
|
||||
endif
|
||||
ges_gen_sources += [gnome.generate_gir(libges,
|
||||
ges_gir = gnome.generate_gir(libges,
|
||||
sources : ges_sources + ges_headers,
|
||||
namespace : 'GES',
|
||||
nsversion : apiversion,
|
||||
|
@ -188,7 +188,9 @@ if build_gir
|
|||
install : true,
|
||||
dependencies : libges_deps,
|
||||
extra_args : ges_gir_extra_args
|
||||
)]
|
||||
)
|
||||
|
||||
ges_gen_sources += [ges_gir]
|
||||
endif
|
||||
|
||||
ges_dep = declare_dependency(link_with : libges,
|
||||
|
|
13
meson.build
13
meson.build
|
@ -1,6 +1,6 @@
|
|||
project('gst-editing-services', 'c',
|
||||
version : '1.17.0.1',
|
||||
meson_version : '>= 0.47',
|
||||
meson_version : '>= 0.48',
|
||||
default_options : [ 'warning_level=1',
|
||||
'buildtype=debugoptimized' ])
|
||||
|
||||
|
@ -180,6 +180,7 @@ subdir('tools')
|
|||
subdir('pkgconfig')
|
||||
subdir('tests')
|
||||
subdir('examples')
|
||||
subdir('docs')
|
||||
|
||||
override_detector = '''
|
||||
import sys
|
||||
|
@ -225,14 +226,4 @@ if pygi_override_dir != ''
|
|||
subdir('bindings/python')
|
||||
endif
|
||||
|
||||
if build_machine.system() == 'windows'
|
||||
message('Disabling gtk-doc while building on Windows')
|
||||
else
|
||||
if find_program('gtkdoc-scan', required : get_option('gtk_doc')).found()
|
||||
subdir('docs')
|
||||
else
|
||||
message('Not building documentation as gtk-doc was not found')
|
||||
endif
|
||||
endif
|
||||
|
||||
run_command(python3, '-c', 'import shutil; shutil.copy("hooks/pre-commit.hook", ".git/hooks/pre-commit")')
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
option('gtk_doc', type : 'feature', value : 'auto', yield : true,
|
||||
description : 'Build API documentation with gtk-doc')
|
||||
option('introspection', type : 'feature', value : 'auto', yield : true,
|
||||
description : 'Generate gobject-introspection bindings')
|
||||
option('tests', type : 'feature', value : 'auto', yield : true,
|
||||
|
@ -8,3 +6,5 @@ option('pygi-overrides-dir', type : 'string', value : '',
|
|||
description: 'Path to pygobject overrides directory')
|
||||
option('xptv', type : 'feature', value : 'auto',
|
||||
description : 'Build the deprecated xptv formater')
|
||||
option('doc', type : 'feature', value : 'auto', yield: true,
|
||||
description: 'Enable documentation.')
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
plugins = []
|
||||
subdir('nle')
|
||||
subdir('ges')
|
|
@ -15,3 +15,4 @@ nle = library('gstnle', nle_sources,
|
|||
install_dir : plugins_install_dir,
|
||||
)
|
||||
pkgconfig.generate(nle, install_dir : plugins_pkgconfig_install_dir)
|
||||
plugins += [nle]
|
||||
|
|
Loading…
Reference in a new issue