mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer-rs.git
synced 2024-11-22 09:31:06 +00:00
Import gir-files from 1.18.0 with GL separated per API
This commit is contained in:
parent
5b520d7c47
commit
e5dbd137bf
12 changed files with 1593 additions and 401 deletions
430
gir-files/GstAllocators-1.0.gir
Normal file
430
gir-files/GstAllocators-1.0.gir
Normal file
|
@ -0,0 +1,430 @@
|
|||
<?xml version="1.0"?>
|
||||
<!-- This file was automatically generated from C sources - DO NOT EDIT!
|
||||
To affect the contents of this file, edit the original C definitions,
|
||||
and/or use gtk-doc annotations. -->
|
||||
<repository xmlns="http://www.gtk.org/introspection/core/1.0" xmlns:c="http://www.gtk.org/introspection/c/1.0" xmlns:glib="http://www.gtk.org/introspection/glib/1.0" version="1.2">
|
||||
<include name="Gst" version="1.0"/>
|
||||
<package name="gstreamer-allocators-1.0"/>
|
||||
<c:include name="gst/allocators/allocators.h"/>
|
||||
<namespace name="GstAllocators" version="1.0" shared-library="libgstallocators-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst">
|
||||
<constant name="ALLOCATOR_DMABUF" value="dmabuf" c:type="GST_ALLOCATOR_DMABUF">
|
||||
|
||||
<type name="utf8" c:type="gchar*"/>
|
||||
</constant>
|
||||
<constant name="ALLOCATOR_FD" value="fd" c:type="GST_ALLOCATOR_FD">
|
||||
|
||||
<type name="utf8" c:type="gchar*"/>
|
||||
</constant>
|
||||
<constant name="CAPS_FEATURE_MEMORY_DMABUF" value="memory:DMABuf" c:type="GST_CAPS_FEATURE_MEMORY_DMABUF" version="1.12">
|
||||
<doc xml:space="preserve">Constant that defines the caps feature name for DMA buffer sharing.
|
||||
|
||||
It has to be used for non-mappable dma-buf only, i.e. when the underlying
|
||||
memory is not mappable to user space. Or when the mapped memory contains
|
||||
non meaningful data. It can be the case for protected content or when the
|
||||
user wants explicitly avoid any software post processing.
|
||||
|
||||
In these cases all elements between the exported and the importer has to work
|
||||
in passthrough mode. This is done by adding this caps feature.
|
||||
|
||||
When the memory is mappable for read and write requests then it is assumes
|
||||
to be a fast path and so this caps feature should not be used. Though
|
||||
according to the dma-buf protocol, while it is mapped it prevents the
|
||||
exporter to migrate the buffer.
|
||||
|
||||
This caps feature should not serve at all the purpose of selecting the
|
||||
@GST_ALLOCATOR_DMABUF allocator during caps negotiation.
|
||||
When the exporter is the upstream element from the importer point of view,
|
||||
the exporter should try to map the dma buffer at runtime (preferably during
|
||||
decide_allocation phase). When it succeeds for #GST_MAP_READWRITE this caps
|
||||
feature should not be used. This allows scalers, color converts and any image
|
||||
processing filters to work directly on the dma buffer.
|
||||
In this case the importer element should check all incoming memory using
|
||||
gst_is_dmabuf_memory().</doc>
|
||||
|
||||
<type name="utf8" c:type="gchar*"/>
|
||||
</constant>
|
||||
<function-macro name="DMABUF_ALLOCATOR" c:identifier="GST_DMABUF_ALLOCATOR" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="DMABUF_ALLOCATOR_CAST" c:identifier="GST_DMABUF_ALLOCATOR_CAST" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="DMABUF_ALLOCATOR_CLASS" c:identifier="GST_DMABUF_ALLOCATOR_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="DMABUF_ALLOCATOR_GET_CLASS" c:identifier="GST_DMABUF_ALLOCATOR_GET_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<class name="DmaBufAllocator" c:symbol-prefix="dmabuf_allocator" c:type="GstDmaBufAllocator" version="1.12" parent="FdAllocator" glib:type-name="GstDmaBufAllocator" glib:get-type="gst_dmabuf_allocator_get_type" glib:type-struct="DmaBufAllocatorClass">
|
||||
<doc xml:space="preserve">Base class for allocators with dmabuf-backed memory</doc>
|
||||
|
||||
<constructor name="new" c:identifier="gst_dmabuf_allocator_new" version="1.2">
|
||||
<doc xml:space="preserve">Return a new dmabuf allocator.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a new dmabuf allocator, or NULL if the allocator
|
||||
isn't available. Use gst_object_unref() to release the allocator after
|
||||
usage</doc>
|
||||
<type name="Gst.Allocator" c:type="GstAllocator*"/>
|
||||
</return-value>
|
||||
</constructor>
|
||||
<function name="alloc" c:identifier="gst_dmabuf_allocator_alloc" version="1.2">
|
||||
<doc xml:space="preserve">Return a %GstMemory that wraps a dmabuf file descriptor.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a GstMemory based on @allocator.
|
||||
When the buffer will be released dmabuf allocator will close the @fd.
|
||||
The memory is only mmapped on gst_buffer_map() request.</doc>
|
||||
<type name="Gst.Memory" c:type="GstMemory*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="allocator" transfer-ownership="none">
|
||||
<doc xml:space="preserve">allocator to be used for this memory</doc>
|
||||
<type name="Gst.Allocator" c:type="GstAllocator*"/>
|
||||
</parameter>
|
||||
<parameter name="fd" transfer-ownership="none">
|
||||
<doc xml:space="preserve">dmabuf file descriptor</doc>
|
||||
<type name="gint" c:type="gint"/>
|
||||
</parameter>
|
||||
<parameter name="size" transfer-ownership="none">
|
||||
<doc xml:space="preserve">memory size</doc>
|
||||
<type name="gsize" c:type="gsize"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<function name="alloc_with_flags" c:identifier="gst_dmabuf_allocator_alloc_with_flags" version="1.16">
|
||||
<doc xml:space="preserve">Return a %GstMemory that wraps a dmabuf file descriptor.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a GstMemory based on @allocator.
|
||||
|
||||
When the buffer will be released the allocator will close the @fd unless
|
||||
the %GST_FD_MEMORY_FLAG_DONT_CLOSE flag is specified.
|
||||
The memory is only mmapped on gst_buffer_mmap() request.</doc>
|
||||
<type name="Gst.Memory" c:type="GstMemory*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="allocator" transfer-ownership="none">
|
||||
<doc xml:space="preserve">allocator to be used for this memory</doc>
|
||||
<type name="Gst.Allocator" c:type="GstAllocator*"/>
|
||||
</parameter>
|
||||
<parameter name="fd" transfer-ownership="none">
|
||||
<doc xml:space="preserve">dmabuf file descriptor</doc>
|
||||
<type name="gint" c:type="gint"/>
|
||||
</parameter>
|
||||
<parameter name="size" transfer-ownership="none">
|
||||
<doc xml:space="preserve">memory size</doc>
|
||||
<type name="gsize" c:type="gsize"/>
|
||||
</parameter>
|
||||
<parameter name="flags" transfer-ownership="none">
|
||||
<doc xml:space="preserve">extra #GstFdMemoryFlags</doc>
|
||||
<type name="FdMemoryFlags" c:type="GstFdMemoryFlags"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<field name="parent">
|
||||
<type name="FdAllocator" c:type="GstFdAllocator"/>
|
||||
</field>
|
||||
<field name="_gst_reserved" readable="0" private="1">
|
||||
<array zero-terminated="0" fixed-size="4">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</array>
|
||||
</field>
|
||||
</class>
|
||||
<record name="DmaBufAllocatorClass" c:type="GstDmaBufAllocatorClass" glib:is-gtype-struct-for="DmaBufAllocator">
|
||||
|
||||
<field name="parent_class">
|
||||
<type name="FdAllocatorClass" c:type="GstFdAllocatorClass"/>
|
||||
</field>
|
||||
<field name="_gst_reserved" readable="0" private="1">
|
||||
<array zero-terminated="0" fixed-size="4">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</array>
|
||||
</field>
|
||||
</record>
|
||||
<function-macro name="FD_ALLOCATOR" c:identifier="GST_FD_ALLOCATOR" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="FD_ALLOCATOR_CAST" c:identifier="GST_FD_ALLOCATOR_CAST" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="FD_ALLOCATOR_CLASS" c:identifier="GST_FD_ALLOCATOR_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="FD_ALLOCATOR_GET_CLASS" c:identifier="GST_FD_ALLOCATOR_GET_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<class name="FdAllocator" c:symbol-prefix="fd_allocator" c:type="GstFdAllocator" version="1.6" parent="Gst.Allocator" glib:type-name="GstFdAllocator" glib:get-type="gst_fd_allocator_get_type" glib:type-struct="FdAllocatorClass">
|
||||
<doc xml:space="preserve">Base class for allocators with fd-backed memory</doc>
|
||||
|
||||
<constructor name="new" c:identifier="gst_fd_allocator_new" version="1.6">
|
||||
<doc xml:space="preserve">Return a new fd allocator.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a new fd allocator, or NULL if the allocator
|
||||
isn't available. Use gst_object_unref() to release the allocator after
|
||||
usage</doc>
|
||||
<type name="Gst.Allocator" c:type="GstAllocator*"/>
|
||||
</return-value>
|
||||
</constructor>
|
||||
<function name="alloc" c:identifier="gst_fd_allocator_alloc" version="1.6">
|
||||
<doc xml:space="preserve">Return a %GstMemory that wraps a generic file descriptor.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a GstMemory based on @allocator.
|
||||
When the buffer will be released the allocator will close the @fd unless
|
||||
the %GST_FD_MEMORY_FLAG_DONT_CLOSE flag is specified.
|
||||
The memory is only mmapped on gst_buffer_map() request.</doc>
|
||||
<type name="Gst.Memory" c:type="GstMemory*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="allocator" transfer-ownership="none">
|
||||
<doc xml:space="preserve">allocator to be used for this memory</doc>
|
||||
<type name="Gst.Allocator" c:type="GstAllocator*"/>
|
||||
</parameter>
|
||||
<parameter name="fd" transfer-ownership="none">
|
||||
<doc xml:space="preserve">file descriptor</doc>
|
||||
<type name="gint" c:type="gint"/>
|
||||
</parameter>
|
||||
<parameter name="size" transfer-ownership="none">
|
||||
<doc xml:space="preserve">memory size</doc>
|
||||
<type name="gsize" c:type="gsize"/>
|
||||
</parameter>
|
||||
<parameter name="flags" transfer-ownership="none">
|
||||
<doc xml:space="preserve">extra #GstFdMemoryFlags</doc>
|
||||
<type name="FdMemoryFlags" c:type="GstFdMemoryFlags"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<field name="parent">
|
||||
<type name="Gst.Allocator" c:type="GstAllocator"/>
|
||||
</field>
|
||||
</class>
|
||||
<record name="FdAllocatorClass" c:type="GstFdAllocatorClass" glib:is-gtype-struct-for="FdAllocator">
|
||||
|
||||
<field name="parent_class">
|
||||
<type name="Gst.AllocatorClass" c:type="GstAllocatorClass"/>
|
||||
</field>
|
||||
</record>
|
||||
<bitfield name="FdMemoryFlags" version="1.6" c:type="GstFdMemoryFlags">
|
||||
<doc xml:space="preserve">Various flags to control the operation of the fd backed memory.</doc>
|
||||
|
||||
<member name="none" value="0" c:identifier="GST_FD_MEMORY_FLAG_NONE">
|
||||
<doc xml:space="preserve">no flag</doc>
|
||||
</member>
|
||||
<member name="keep_mapped" value="1" c:identifier="GST_FD_MEMORY_FLAG_KEEP_MAPPED">
|
||||
<doc xml:space="preserve">once the memory is mapped,
|
||||
keep it mapped until the memory is destroyed.</doc>
|
||||
</member>
|
||||
<member name="map_private" value="2" c:identifier="GST_FD_MEMORY_FLAG_MAP_PRIVATE">
|
||||
<doc xml:space="preserve">do a private mapping instead of
|
||||
the default shared mapping.</doc>
|
||||
</member>
|
||||
<member name="dont_close" value="4" c:identifier="GST_FD_MEMORY_FLAG_DONT_CLOSE">
|
||||
<doc xml:space="preserve">don't close the file descriptor when
|
||||
the memory is freed. Since: 1.10</doc>
|
||||
</member>
|
||||
</bitfield>
|
||||
<function-macro name="IS_DMABUF_ALLOCATOR" c:identifier="GST_IS_DMABUF_ALLOCATOR" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_DMABUF_ALLOCATOR_CLASS" c:identifier="GST_IS_DMABUF_ALLOCATOR_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_FD_ALLOCATOR" c:identifier="GST_IS_FD_ALLOCATOR" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_FD_ALLOCATOR_CLASS" c:identifier="GST_IS_FD_ALLOCATOR_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="PHYS_MEMORY_ALLOCATOR_CAST" c:identifier="GST_PHYS_MEMORY_ALLOCATOR_CAST" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="PHYS_MEMORY_ALLOCATOR_GET_INTERFACE" c:identifier="GST_PHYS_MEMORY_ALLOCATOR_GET_INTERFACE" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<interface name="PhysMemoryAllocator" c:symbol-prefix="phys_memory_allocator" c:type="GstPhysMemoryAllocator" version="1.14" glib:type-name="GstPhysMemoryAllocator" glib:get-type="gst_phys_memory_allocator_get_type" glib:type-struct="PhysMemoryAllocatorInterface">
|
||||
|
||||
<prerequisite name="Gst.Allocator"/>
|
||||
<virtual-method name="get_phys_addr">
|
||||
|
||||
<return-value transfer-ownership="none">
|
||||
<type name="guintptr" c:type="guintptr"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<instance-parameter name="allocator" transfer-ownership="none">
|
||||
<type name="PhysMemoryAllocator" c:type="GstPhysMemoryAllocator*"/>
|
||||
</instance-parameter>
|
||||
<parameter name="mem" transfer-ownership="none">
|
||||
<type name="Gst.Memory" c:type="GstMemory*"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</virtual-method>
|
||||
</interface>
|
||||
<record name="PhysMemoryAllocatorInterface" c:type="GstPhysMemoryAllocatorInterface" glib:is-gtype-struct-for="PhysMemoryAllocator" version="1.14">
|
||||
<doc xml:space="preserve">Marker interface for allocators with physical address backed memory</doc>
|
||||
|
||||
<field name="parent_iface" readable="0" private="1">
|
||||
<type name="GObject.TypeInterface" c:type="GTypeInterface"/>
|
||||
</field>
|
||||
<field name="get_phys_addr">
|
||||
<callback name="get_phys_addr">
|
||||
|
||||
<return-value transfer-ownership="none">
|
||||
<type name="guintptr" c:type="guintptr"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="allocator" transfer-ownership="none">
|
||||
<type name="PhysMemoryAllocator" c:type="GstPhysMemoryAllocator*"/>
|
||||
</parameter>
|
||||
<parameter name="mem" transfer-ownership="none">
|
||||
<type name="Gst.Memory" c:type="GstMemory*"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</callback>
|
||||
</field>
|
||||
</record>
|
||||
<function name="dmabuf_memory_get_fd" c:identifier="gst_dmabuf_memory_get_fd" version="1.2">
|
||||
<doc xml:space="preserve">Return the file descriptor associated with @mem.</doc>
|
||||
|
||||
<return-value transfer-ownership="none">
|
||||
<doc xml:space="preserve">the file descriptor associated with the memory, or -1. The file
|
||||
descriptor is still owned by the GstMemory. Use dup to take a copy
|
||||
if you intend to use it beyond the lifetime of this GstMemory.</doc>
|
||||
<type name="gint" c:type="gint"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="mem" transfer-ownership="none">
|
||||
<doc xml:space="preserve">the memory to get the file descriptor</doc>
|
||||
<type name="Gst.Memory" c:type="GstMemory*"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<function name="fd_memory_get_fd" c:identifier="gst_fd_memory_get_fd" version="1.6">
|
||||
<doc xml:space="preserve">Get the fd from @mem. Call gst_is_fd_memory() to check if @mem has
|
||||
an fd.</doc>
|
||||
|
||||
<return-value transfer-ownership="none">
|
||||
<doc xml:space="preserve">the fd of @mem or -1 when there is no fd on @mem</doc>
|
||||
<type name="gint" c:type="gint"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="mem" transfer-ownership="none">
|
||||
<doc xml:space="preserve">#GstMemory</doc>
|
||||
<type name="Gst.Memory" c:type="GstMemory*"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<function name="is_dmabuf_memory" c:identifier="gst_is_dmabuf_memory" version="1.2">
|
||||
<doc xml:space="preserve">Check if @mem is dmabuf memory.</doc>
|
||||
|
||||
<return-value transfer-ownership="none">
|
||||
<doc xml:space="preserve">%TRUE if @mem is dmabuf memory, otherwise %FALSE</doc>
|
||||
<type name="gboolean" c:type="gboolean"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="mem" transfer-ownership="none">
|
||||
<doc xml:space="preserve">the memory to be check</doc>
|
||||
<type name="Gst.Memory" c:type="GstMemory*"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<function name="is_fd_memory" c:identifier="gst_is_fd_memory" version="1.6">
|
||||
<doc xml:space="preserve">Check if @mem is memory backed by an fd</doc>
|
||||
|
||||
<return-value transfer-ownership="none">
|
||||
<doc xml:space="preserve">%TRUE when @mem has an fd that can be retrieved with
|
||||
gst_fd_memory_get_fd().</doc>
|
||||
<type name="gboolean" c:type="gboolean"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="mem" transfer-ownership="none">
|
||||
<doc xml:space="preserve">#GstMemory</doc>
|
||||
<type name="Gst.Memory" c:type="GstMemory*"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<function name="is_phys_memory" c:identifier="gst_is_phys_memory" version="1.14">
|
||||
|
||||
<return-value transfer-ownership="none">
|
||||
<doc xml:space="preserve">whether the memory at @mem is backed by physical memory</doc>
|
||||
<type name="gboolean" c:type="gboolean"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="mem" transfer-ownership="none">
|
||||
<doc xml:space="preserve">a #GstMemory</doc>
|
||||
<type name="Gst.Memory" c:type="GstMemory*"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<function name="phys_memory_get_phys_addr" c:identifier="gst_phys_memory_get_phys_addr" version="1.14">
|
||||
|
||||
<return-value transfer-ownership="none">
|
||||
<doc xml:space="preserve">Physical memory address that is backing @mem, or 0 if none</doc>
|
||||
<type name="guintptr" c:type="guintptr"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="mem" transfer-ownership="none">
|
||||
<doc xml:space="preserve">a #GstMemory</doc>
|
||||
<type name="Gst.Memory" c:type="GstMemory*"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
</namespace>
|
||||
</repository>
|
|
@ -10646,6 +10646,16 @@ channel positions.</doc>
|
|||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<docsection name="gstaudio">
|
||||
<doc xml:space="preserve">This library contains some helper functions for audio elements.</doc>
|
||||
</docsection>
|
||||
<docsection name="gstaudiochannels">
|
||||
<doc xml:space="preserve">This library contains some helper functions for multichannel audio.</doc>
|
||||
</docsection>
|
||||
<docsection name="gstaudioiec61937">
|
||||
<doc xml:space="preserve">This module contains some helper functions for encapsulating various
|
||||
audio formats in IEC 61937 headers and padding.</doc>
|
||||
</docsection>
|
||||
<function name="stream_volume_convert_volume" c:identifier="gst_stream_volume_convert_volume" moved-to="StreamVolume.convert_volume">
|
||||
|
||||
<return-value transfer-ownership="none">
|
||||
|
|
|
@ -10556,6 +10556,13 @@ or a valid GLSL version and/or profile.</doc>
|
|||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<docsection name="gstglapi">
|
||||
<doc xml:space="preserve">Provides some helper API for dealing with OpenGL API's and platforms</doc>
|
||||
</docsection>
|
||||
<docsection name="gstglformat">
|
||||
<doc xml:space="preserve">Some useful utilities for converting between various formats and OpenGL
|
||||
formats.</doc>
|
||||
</docsection>
|
||||
<function name="is_gl_base_memory" c:identifier="gst_is_gl_base_memory" version="1.8">
|
||||
|
||||
<return-value transfer-ownership="none">
|
||||
|
@ -10621,395 +10628,5 @@ or a valid GLSL version and/or profile.</doc>
|
|||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
|
||||
|
||||
|
||||
|
||||
<class name="GLDisplayEGL" c:symbol-prefix="gl_display_egl" c:type="GstGLDisplayEGL" parent="GstGL.GLDisplay" glib:type-name="GstGLDisplayEGL" glib:get-type="gst_gl_display_egl_get_type" glib:type-struct="GLDisplayEGLClass">
|
||||
<doc xml:space="preserve">the contents of a #GstGLDisplayEGL are private and should only be accessed
|
||||
through the provided API</doc>
|
||||
|
||||
<constructor name="new" c:identifier="gst_gl_display_egl_new">
|
||||
<doc xml:space="preserve">Create a new #GstGLDisplayEGL using the default EGL_DEFAULT_DISPLAY.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a new #GstGLDisplayEGL or %NULL</doc>
|
||||
<type name="GLDisplayEGL" c:type="GstGLDisplayEGL*"/>
|
||||
</return-value>
|
||||
</constructor>
|
||||
<constructor name="new_with_egl_display" c:identifier="gst_gl_display_egl_new_with_egl_display">
|
||||
|
||||
<return-value transfer-ownership="none">
|
||||
<type name="GLDisplayEGL" c:type="GstGLDisplayEGL*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="display" transfer-ownership="none" nullable="1" allow-none="1">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</constructor>
|
||||
<function name="from_gl_display" c:identifier="gst_gl_display_egl_from_gl_display" version="1.12">
|
||||
<doc xml:space="preserve">Creates a EGL display connection from a native Display.
|
||||
|
||||
This function will return the same value for multiple calls with the same
|
||||
@display.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a new #GstGLDisplayEGL</doc>
|
||||
<type name="GLDisplayEGL" c:type="GstGLDisplayEGL*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="display" transfer-ownership="none">
|
||||
<doc xml:space="preserve">an existing #GstGLDisplay</doc>
|
||||
<type name="GstGL.GLDisplay" c:type="GstGLDisplay*"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<function name="get_from_native" c:identifier="gst_gl_display_egl_get_from_native" version="1.12">
|
||||
<doc xml:space="preserve">Attempts to create a new `EGLDisplay` from @display. If @type is
|
||||
%GST_GL_DISPLAY_TYPE_ANY, then @display must be 0. @type must not be
|
||||
%GST_GL_DISPLAY_TYPE_NONE.</doc>
|
||||
|
||||
<return-value transfer-ownership="none" nullable="1">
|
||||
<doc xml:space="preserve">A `EGLDisplay` or `EGL_NO_DISPLAY`</doc>
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="type" transfer-ownership="none">
|
||||
<doc xml:space="preserve">a #GstGLDisplayType</doc>
|
||||
<type name="GstGL.GLDisplayType" c:type="GstGLDisplayType"/>
|
||||
</parameter>
|
||||
<parameter name="display" transfer-ownership="none">
|
||||
<doc xml:space="preserve">pointer to a display (or 0)</doc>
|
||||
<type name="guintptr" c:type="guintptr"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<field name="parent">
|
||||
<type name="GstGL.GLDisplay" c:type="GstGLDisplay"/>
|
||||
</field>
|
||||
<field name="display" readable="0" private="1">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</field>
|
||||
<field name="foreign_display" readable="0" private="1">
|
||||
<type name="gboolean" c:type="gboolean"/>
|
||||
</field>
|
||||
<field name="_padding" readable="0" private="1">
|
||||
<array zero-terminated="0" fixed-size="4">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</array>
|
||||
</field>
|
||||
</class>
|
||||
<record name="GLDisplayEGLClass" c:type="GstGLDisplayEGLClass" glib:is-gtype-struct-for="GLDisplayEGL">
|
||||
|
||||
<field name="object_class">
|
||||
<type name="GstGL.GLDisplayClass" c:type="GstGLDisplayClass"/>
|
||||
</field>
|
||||
<field name="_padding">
|
||||
<array zero-terminated="0" fixed-size="4">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</array>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<function-macro name="GL_DISPLAY_EGL" c:identifier="GST_GL_DISPLAY_EGL" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_EGL_CAST" c:identifier="GST_GL_DISPLAY_EGL_CAST" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_EGL_CLASS" c:identifier="GST_GL_DISPLAY_EGL_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_EGL_DEVICE" c:identifier="GST_GL_DISPLAY_EGL_DEVICE" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_EGL_DEVICE_CAST" c:identifier="GST_GL_DISPLAY_EGL_DEVICE_CAST" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_EGL_DEVICE_CLASS" c:identifier="GST_GL_DISPLAY_EGL_DEVICE_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<constant name="GL_DISPLAY_EGL_NAME" value="gst.gl.display.egl" c:type="GST_GL_DISPLAY_EGL_NAME">
|
||||
|
||||
<type name="utf8" c:type="gchar*"/>
|
||||
</constant>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<function-macro name="IS_GL_DISPLAY_EGL" c:identifier="GST_IS_GL_DISPLAY_EGL" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_GL_DISPLAY_EGL_CLASS" c:identifier="GST_IS_GL_DISPLAY_EGL_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_GL_DISPLAY_EGL_DEVICE" c:identifier="GST_IS_GL_DISPLAY_EGL_DEVICE" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_GL_DISPLAY_EGL_DEVICE_CLASS" c:identifier="GST_IS_GL_DISPLAY_EGL_DEVICE_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<class name="GLDisplayWayland" c:symbol-prefix="gl_display_wayland" c:type="GstGLDisplayWayland" parent="GstGL.GLDisplay" glib:type-name="GstGLDisplayWayland" glib:get-type="gst_gl_display_wayland_get_type" glib:type-struct="GLDisplayWaylandClass">
|
||||
<doc xml:space="preserve">the contents of a #GstGLDisplayWayland are private and should only be accessed
|
||||
through the provided API</doc>
|
||||
|
||||
<constructor name="new" c:identifier="gst_gl_display_wayland_new">
|
||||
<doc xml:space="preserve">Create a new #GstGLDisplayWayland from the wayland display name. See `wl_display_connect`()
|
||||
for details on what is a valid name.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a new #GstGLDisplayWayland or %NULL</doc>
|
||||
<type name="GLDisplayWayland" c:type="GstGLDisplayWayland*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="name" transfer-ownership="none" nullable="1" allow-none="1">
|
||||
<doc xml:space="preserve">a display name</doc>
|
||||
<type name="utf8" c:type="const gchar*"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</constructor>
|
||||
<constructor name="new_with_display" c:identifier="gst_gl_display_wayland_new_with_display">
|
||||
<doc xml:space="preserve">Creates a new display connection from a wl_display Display.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a new #GstGLDisplayWayland</doc>
|
||||
<type name="GLDisplayWayland" c:type="GstGLDisplayWayland*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="display" transfer-ownership="none" nullable="1" allow-none="1">
|
||||
<doc xml:space="preserve">an existing, wayland display</doc>
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</constructor>
|
||||
<field name="parent">
|
||||
<type name="GstGL.GLDisplay" c:type="GstGLDisplay"/>
|
||||
</field>
|
||||
<field name="display">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</field>
|
||||
<field name="registry">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</field>
|
||||
<field name="compositor">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</field>
|
||||
<field name="subcompositor">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</field>
|
||||
<field name="shell">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</field>
|
||||
<field name="foreign_display" readable="0" private="1">
|
||||
<type name="gboolean" c:type="gboolean"/>
|
||||
</field>
|
||||
<field name="_padding" readable="0" private="1">
|
||||
<array zero-terminated="0" fixed-size="4">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</array>
|
||||
</field>
|
||||
</class>
|
||||
<record name="GLDisplayWaylandClass" c:type="GstGLDisplayWaylandClass" glib:is-gtype-struct-for="GLDisplayWayland">
|
||||
|
||||
<field name="object_class">
|
||||
<type name="GstGL.GLDisplayClass" c:type="GstGLDisplayClass"/>
|
||||
</field>
|
||||
<field name="_padding">
|
||||
<array zero-terminated="0" fixed-size="4">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</array>
|
||||
</field>
|
||||
</record>
|
||||
<function-macro name="GL_DISPLAY_WAYLAND" c:identifier="GST_GL_DISPLAY_WAYLAND" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_WAYLAND_CAST" c:identifier="GST_GL_DISPLAY_WAYLAND_CAST" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_WAYLAND_CLASS" c:identifier="GST_GL_DISPLAY_WAYLAND_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_GL_DISPLAY_WAYLAND" c:identifier="GST_IS_GL_DISPLAY_WAYLAND" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_GL_DISPLAY_WAYLAND_CLASS" c:identifier="GST_IS_GL_DISPLAY_WAYLAND_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<class name="GLDisplayX11" c:symbol-prefix="gl_display_x11" c:type="GstGLDisplayX11" parent="GstGL.GLDisplay" glib:type-name="GstGLDisplayX11" glib:get-type="gst_gl_display_x11_get_type" glib:type-struct="GLDisplayX11Class">
|
||||
<doc xml:space="preserve">the contents of a #GstGLDisplayX11 are private and should only be accessed
|
||||
through the provided API</doc>
|
||||
|
||||
<constructor name="new" c:identifier="gst_gl_display_x11_new">
|
||||
<doc xml:space="preserve">Create a new #GstGLDisplayX11 from the x11 display name. See `XOpenDisplay`()
|
||||
for details on what is a valid name.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a new #GstGLDisplayX11 or %NULL</doc>
|
||||
<type name="GLDisplayX11" c:type="GstGLDisplayX11*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="name" transfer-ownership="none" nullable="1" allow-none="1">
|
||||
<doc xml:space="preserve">a display name</doc>
|
||||
<type name="utf8" c:type="const gchar*"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</constructor>
|
||||
<constructor name="new_with_display" c:identifier="gst_gl_display_x11_new_with_display" introspectable="0">
|
||||
<doc xml:space="preserve">Creates a new display connection from a X11 Display.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a new #GstGLDisplayX11</doc>
|
||||
<type name="GLDisplayX11" c:type="GstGLDisplayX11*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="display" transfer-ownership="none">
|
||||
<doc xml:space="preserve">an existing, x11 display</doc>
|
||||
<type c:type="gpointer" name="gpointer"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</constructor>
|
||||
<field name="parent" readable="0" private="1">
|
||||
<type name="GstGL.GLDisplay" c:type="GstGLDisplay"/>
|
||||
</field>
|
||||
<field name="name" readable="0" private="1">
|
||||
<type name="utf8" c:type="gchar*"/>
|
||||
</field>
|
||||
<field name="display" introspectable="0" readable="0" private="1">
|
||||
<type c:type="gpointer" name="gpointer"/>
|
||||
</field>
|
||||
<field name="xcb_connection" introspectable="0" readable="0" private="1">
|
||||
<type c:type="gpointer" name="gpointer"/>
|
||||
</field>
|
||||
<field name="foreign_display" readable="0" private="1">
|
||||
<type name="gboolean" c:type="gboolean"/>
|
||||
</field>
|
||||
<field name="_padding" readable="0" private="1">
|
||||
<array zero-terminated="0" fixed-size="4">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</array>
|
||||
</field>
|
||||
</class>
|
||||
<record name="GLDisplayX11Class" c:type="GstGLDisplayX11Class" glib:is-gtype-struct-for="GLDisplayX11">
|
||||
|
||||
<field name="object_class">
|
||||
<type name="GstGL.GLDisplayClass" c:type="GstGLDisplayClass"/>
|
||||
</field>
|
||||
<field name="_padding">
|
||||
<array zero-terminated="0" fixed-size="4">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</array>
|
||||
</field>
|
||||
</record>
|
||||
<function-macro name="GL_DISPLAY_X11" c:identifier="GST_GL_DISPLAY_X11" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_X11_CAST" c:identifier="GST_GL_DISPLAY_X11_CAST" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_X11_CLASS" c:identifier="GST_GL_DISPLAY_X11_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_GL_DISPLAY_X11" c:identifier="GST_IS_GL_DISPLAY_X11" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_GL_DISPLAY_X11_CLASS" c:identifier="GST_IS_GL_DISPLAY_X11_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
</namespace>
|
||||
</repository>
|
||||
|
|
208
gir-files/GstGLEGL-1.0.gir
Normal file
208
gir-files/GstGLEGL-1.0.gir
Normal file
|
@ -0,0 +1,208 @@
|
|||
<?xml version="1.0"?>
|
||||
<!-- This file was automatically generated from C sources - DO NOT EDIT!
|
||||
To affect the contents of this file, edit the original C definitions,
|
||||
and/or use gtk-doc annotations. -->
|
||||
<repository xmlns="http://www.gtk.org/introspection/core/1.0" xmlns:c="http://www.gtk.org/introspection/c/1.0" xmlns:glib="http://www.gtk.org/introspection/glib/1.0" version="1.2">
|
||||
<include name="Gst" version="1.0"/>
|
||||
<include name="GstBase" version="1.0"/>
|
||||
<include name="GstGL" version="1.0"/>
|
||||
<include name="GstVideo" version="1.0"/>
|
||||
<package name="gstreamer-gl-egl-1.0"/>
|
||||
<c:include name="gst/gl/egl/egl.h"/>
|
||||
<namespace name="GstGLEGL" version="1.0" shared-library="libgstgl-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst">
|
||||
|
||||
|
||||
|
||||
|
||||
<class name="GLDisplayEGL" c:symbol-prefix="gl_display_egl" c:type="GstGLDisplayEGL" parent="GstGL.GLDisplay" glib:type-name="GstGLDisplayEGL" glib:get-type="gst_gl_display_egl_get_type" glib:type-struct="GLDisplayEGLClass">
|
||||
<doc xml:space="preserve">the contents of a #GstGLDisplayEGL are private and should only be accessed
|
||||
through the provided API</doc>
|
||||
|
||||
<constructor name="new" c:identifier="gst_gl_display_egl_new">
|
||||
<doc xml:space="preserve">Create a new #GstGLDisplayEGL using the default EGL_DEFAULT_DISPLAY.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a new #GstGLDisplayEGL or %NULL</doc>
|
||||
<type name="GLDisplayEGL" c:type="GstGLDisplayEGL*"/>
|
||||
</return-value>
|
||||
</constructor>
|
||||
<constructor name="new_with_egl_display" c:identifier="gst_gl_display_egl_new_with_egl_display">
|
||||
|
||||
<return-value transfer-ownership="none">
|
||||
<type name="GLDisplayEGL" c:type="GstGLDisplayEGL*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="display" transfer-ownership="none" nullable="1" allow-none="1">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</constructor>
|
||||
<function name="from_gl_display" c:identifier="gst_gl_display_egl_from_gl_display" version="1.12">
|
||||
<doc xml:space="preserve">Creates a EGL display connection from a native Display.
|
||||
|
||||
This function will return the same value for multiple calls with the same
|
||||
@display.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a new #GstGLDisplayEGL</doc>
|
||||
<type name="GLDisplayEGL" c:type="GstGLDisplayEGL*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="display" transfer-ownership="none">
|
||||
<doc xml:space="preserve">an existing #GstGLDisplay</doc>
|
||||
<type name="GstGL.GLDisplay" c:type="GstGLDisplay*"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<function name="get_from_native" c:identifier="gst_gl_display_egl_get_from_native" version="1.12">
|
||||
<doc xml:space="preserve">Attempts to create a new `EGLDisplay` from @display. If @type is
|
||||
%GST_GL_DISPLAY_TYPE_ANY, then @display must be 0. @type must not be
|
||||
%GST_GL_DISPLAY_TYPE_NONE.</doc>
|
||||
|
||||
<return-value transfer-ownership="none" nullable="1">
|
||||
<doc xml:space="preserve">A `EGLDisplay` or `EGL_NO_DISPLAY`</doc>
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="type" transfer-ownership="none">
|
||||
<doc xml:space="preserve">a #GstGLDisplayType</doc>
|
||||
<type name="GstGL.GLDisplayType" c:type="GstGLDisplayType"/>
|
||||
</parameter>
|
||||
<parameter name="display" transfer-ownership="none">
|
||||
<doc xml:space="preserve">pointer to a display (or 0)</doc>
|
||||
<type name="guintptr" c:type="guintptr"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<field name="parent">
|
||||
<type name="GstGL.GLDisplay" c:type="GstGLDisplay"/>
|
||||
</field>
|
||||
<field name="display" readable="0" private="1">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</field>
|
||||
<field name="foreign_display" readable="0" private="1">
|
||||
<type name="gboolean" c:type="gboolean"/>
|
||||
</field>
|
||||
<field name="_padding" readable="0" private="1">
|
||||
<array zero-terminated="0" fixed-size="4">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</array>
|
||||
</field>
|
||||
</class>
|
||||
<record name="GLDisplayEGLClass" c:type="GstGLDisplayEGLClass" glib:is-gtype-struct-for="GLDisplayEGL">
|
||||
|
||||
<field name="object_class">
|
||||
<type name="GstGL.GLDisplayClass" c:type="GstGLDisplayClass"/>
|
||||
</field>
|
||||
<field name="_padding">
|
||||
<array zero-terminated="0" fixed-size="4">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</array>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<function-macro name="GL_DISPLAY_EGL" c:identifier="GST_GL_DISPLAY_EGL" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_EGL_CAST" c:identifier="GST_GL_DISPLAY_EGL_CAST" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_EGL_CLASS" c:identifier="GST_GL_DISPLAY_EGL_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_EGL_DEVICE" c:identifier="GST_GL_DISPLAY_EGL_DEVICE" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_EGL_DEVICE_CAST" c:identifier="GST_GL_DISPLAY_EGL_DEVICE_CAST" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_EGL_DEVICE_CLASS" c:identifier="GST_GL_DISPLAY_EGL_DEVICE_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<constant name="GL_DISPLAY_EGL_NAME" value="gst.gl.display.egl" c:type="GST_GL_DISPLAY_EGL_NAME">
|
||||
|
||||
<type name="utf8" c:type="gchar*"/>
|
||||
</constant>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<function-macro name="IS_GL_DISPLAY_EGL" c:identifier="GST_IS_GL_DISPLAY_EGL" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_GL_DISPLAY_EGL_CLASS" c:identifier="GST_IS_GL_DISPLAY_EGL_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_GL_DISPLAY_EGL_DEVICE" c:identifier="GST_IS_GL_DISPLAY_EGL_DEVICE" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_GL_DISPLAY_EGL_DEVICE_CLASS" c:identifier="GST_IS_GL_DISPLAY_EGL_DEVICE_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<docsection name="gstgldisplay_egl">
|
||||
<doc xml:space="preserve">#GstGLDisplayEGL represents a connection to an EGL `EGLDisplay` handle created
|
||||
internally (gst_gl_display_egl_new()) or wrapped by the application
|
||||
(gst_gl_display_egl_new_with_egl_display())</doc>
|
||||
</docsection>
|
||||
<docsection name="gstgldisplay_egl_device">
|
||||
<doc xml:space="preserve">#GstGLDisplayEGLDevice represents a `EGLDeviceEXT` handle created internally
|
||||
(gst_gl_display_egl_device_new()) or wrapped by the application
|
||||
(gst_gl_display_egl_device_new_with_egl_device())</doc>
|
||||
</docsection>
|
||||
|
||||
</namespace>
|
||||
</repository>
|
125
gir-files/GstGLWayland-1.0.gir
Normal file
125
gir-files/GstGLWayland-1.0.gir
Normal file
|
@ -0,0 +1,125 @@
|
|||
<?xml version="1.0"?>
|
||||
<!-- This file was automatically generated from C sources - DO NOT EDIT!
|
||||
To affect the contents of this file, edit the original C definitions,
|
||||
and/or use gtk-doc annotations. -->
|
||||
<repository xmlns="http://www.gtk.org/introspection/core/1.0" xmlns:c="http://www.gtk.org/introspection/c/1.0" xmlns:glib="http://www.gtk.org/introspection/glib/1.0" version="1.2">
|
||||
<include name="Gst" version="1.0"/>
|
||||
<include name="GstBase" version="1.0"/>
|
||||
<include name="GstGL" version="1.0"/>
|
||||
<include name="GstVideo" version="1.0"/>
|
||||
<package name="gstreamer-gl-wayland-1.0"/>
|
||||
<c:include name="gst/gl/wayland/wayland.h"/>
|
||||
<namespace name="GstGLWayland" version="1.0" shared-library="libgstgl-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst">
|
||||
<class name="GLDisplayWayland" c:symbol-prefix="gl_display_wayland" c:type="GstGLDisplayWayland" parent="GstGL.GLDisplay" glib:type-name="GstGLDisplayWayland" glib:get-type="gst_gl_display_wayland_get_type" glib:type-struct="GLDisplayWaylandClass">
|
||||
<doc xml:space="preserve">the contents of a #GstGLDisplayWayland are private and should only be accessed
|
||||
through the provided API</doc>
|
||||
|
||||
<constructor name="new" c:identifier="gst_gl_display_wayland_new">
|
||||
<doc xml:space="preserve">Create a new #GstGLDisplayWayland from the wayland display name. See `wl_display_connect`()
|
||||
for details on what is a valid name.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a new #GstGLDisplayWayland or %NULL</doc>
|
||||
<type name="GLDisplayWayland" c:type="GstGLDisplayWayland*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="name" transfer-ownership="none" nullable="1" allow-none="1">
|
||||
<doc xml:space="preserve">a display name</doc>
|
||||
<type name="utf8" c:type="const gchar*"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</constructor>
|
||||
<constructor name="new_with_display" c:identifier="gst_gl_display_wayland_new_with_display">
|
||||
<doc xml:space="preserve">Creates a new display connection from a wl_display Display.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a new #GstGLDisplayWayland</doc>
|
||||
<type name="GLDisplayWayland" c:type="GstGLDisplayWayland*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="display" transfer-ownership="none" nullable="1" allow-none="1">
|
||||
<doc xml:space="preserve">an existing, wayland display</doc>
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</constructor>
|
||||
<field name="parent">
|
||||
<type name="GstGL.GLDisplay" c:type="GstGLDisplay"/>
|
||||
</field>
|
||||
<field name="display">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</field>
|
||||
<field name="registry">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</field>
|
||||
<field name="compositor">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</field>
|
||||
<field name="subcompositor">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</field>
|
||||
<field name="shell">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</field>
|
||||
<field name="foreign_display" readable="0" private="1">
|
||||
<type name="gboolean" c:type="gboolean"/>
|
||||
</field>
|
||||
<field name="_padding" readable="0" private="1">
|
||||
<array zero-terminated="0" fixed-size="4">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</array>
|
||||
</field>
|
||||
</class>
|
||||
<record name="GLDisplayWaylandClass" c:type="GstGLDisplayWaylandClass" glib:is-gtype-struct-for="GLDisplayWayland">
|
||||
|
||||
<field name="object_class">
|
||||
<type name="GstGL.GLDisplayClass" c:type="GstGLDisplayClass"/>
|
||||
</field>
|
||||
<field name="_padding">
|
||||
<array zero-terminated="0" fixed-size="4">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</array>
|
||||
</field>
|
||||
</record>
|
||||
<function-macro name="GL_DISPLAY_WAYLAND" c:identifier="GST_GL_DISPLAY_WAYLAND" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_WAYLAND_CAST" c:identifier="GST_GL_DISPLAY_WAYLAND_CAST" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_WAYLAND_CLASS" c:identifier="GST_GL_DISPLAY_WAYLAND_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_GL_DISPLAY_WAYLAND" c:identifier="GST_IS_GL_DISPLAY_WAYLAND" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_GL_DISPLAY_WAYLAND_CLASS" c:identifier="GST_IS_GL_DISPLAY_WAYLAND_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<docsection name="gstgldisplay_wayland">
|
||||
<doc xml:space="preserve">#GstGLDisplayWayland represents a connection to a Wayland `wl_display` handle
|
||||
created internally (gst_gl_display_wayland_new()) or wrapped by the application
|
||||
(gst_gl_display_wayland_new_with_display())</doc>
|
||||
</docsection>
|
||||
</namespace>
|
||||
</repository>
|
119
gir-files/GstGLX11-1.0.gir
Normal file
119
gir-files/GstGLX11-1.0.gir
Normal file
|
@ -0,0 +1,119 @@
|
|||
<?xml version="1.0"?>
|
||||
<!-- This file was automatically generated from C sources - DO NOT EDIT!
|
||||
To affect the contents of this file, edit the original C definitions,
|
||||
and/or use gtk-doc annotations. -->
|
||||
<repository xmlns="http://www.gtk.org/introspection/core/1.0" xmlns:c="http://www.gtk.org/introspection/c/1.0" xmlns:glib="http://www.gtk.org/introspection/glib/1.0" version="1.2">
|
||||
<include name="Gst" version="1.0"/>
|
||||
<include name="GstBase" version="1.0"/>
|
||||
<include name="GstGL" version="1.0"/>
|
||||
<include name="GstVideo" version="1.0"/>
|
||||
<package name="gstreamer-gl-x11-1.0"/>
|
||||
<c:include name="gst/gl/x11/x11.h"/>
|
||||
<namespace name="GstGLX11" version="1.0" shared-library="libgstgl-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst">
|
||||
<class name="GLDisplayX11" c:symbol-prefix="gl_display_x11" c:type="GstGLDisplayX11" parent="GstGL.GLDisplay" glib:type-name="GstGLDisplayX11" glib:get-type="gst_gl_display_x11_get_type" glib:type-struct="GLDisplayX11Class">
|
||||
<doc xml:space="preserve">the contents of a #GstGLDisplayX11 are private and should only be accessed
|
||||
through the provided API</doc>
|
||||
|
||||
<constructor name="new" c:identifier="gst_gl_display_x11_new">
|
||||
<doc xml:space="preserve">Create a new #GstGLDisplayX11 from the x11 display name. See `XOpenDisplay`()
|
||||
for details on what is a valid name.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a new #GstGLDisplayX11 or %NULL</doc>
|
||||
<type name="GLDisplayX11" c:type="GstGLDisplayX11*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="name" transfer-ownership="none" nullable="1" allow-none="1">
|
||||
<doc xml:space="preserve">a display name</doc>
|
||||
<type name="utf8" c:type="const gchar*"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</constructor>
|
||||
<constructor name="new_with_display" c:identifier="gst_gl_display_x11_new_with_display" introspectable="0">
|
||||
<doc xml:space="preserve">Creates a new display connection from a X11 Display.</doc>
|
||||
|
||||
<return-value transfer-ownership="full">
|
||||
<doc xml:space="preserve">a new #GstGLDisplayX11</doc>
|
||||
<type name="GLDisplayX11" c:type="GstGLDisplayX11*"/>
|
||||
</return-value>
|
||||
<parameters>
|
||||
<parameter name="display" transfer-ownership="none">
|
||||
<doc xml:space="preserve">an existing, x11 display</doc>
|
||||
<type c:type="gpointer" name="gpointer"/>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</constructor>
|
||||
<field name="parent" readable="0" private="1">
|
||||
<type name="GstGL.GLDisplay" c:type="GstGLDisplay"/>
|
||||
</field>
|
||||
<field name="name" readable="0" private="1">
|
||||
<type name="utf8" c:type="gchar*"/>
|
||||
</field>
|
||||
<field name="display" introspectable="0" readable="0" private="1">
|
||||
<type c:type="gpointer" name="gpointer"/>
|
||||
</field>
|
||||
<field name="xcb_connection" introspectable="0" readable="0" private="1">
|
||||
<type c:type="gpointer" name="gpointer"/>
|
||||
</field>
|
||||
<field name="foreign_display" readable="0" private="1">
|
||||
<type name="gboolean" c:type="gboolean"/>
|
||||
</field>
|
||||
<field name="_padding" readable="0" private="1">
|
||||
<array zero-terminated="0" fixed-size="4">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</array>
|
||||
</field>
|
||||
</class>
|
||||
<record name="GLDisplayX11Class" c:type="GstGLDisplayX11Class" glib:is-gtype-struct-for="GLDisplayX11">
|
||||
|
||||
<field name="object_class">
|
||||
<type name="GstGL.GLDisplayClass" c:type="GstGLDisplayClass"/>
|
||||
</field>
|
||||
<field name="_padding">
|
||||
<array zero-terminated="0" fixed-size="4">
|
||||
<type name="gpointer" c:type="gpointer"/>
|
||||
</array>
|
||||
</field>
|
||||
</record>
|
||||
<function-macro name="GL_DISPLAY_X11" c:identifier="GST_GL_DISPLAY_X11" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_X11_CAST" c:identifier="GST_GL_DISPLAY_X11_CAST" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="GL_DISPLAY_X11_CLASS" c:identifier="GST_GL_DISPLAY_X11_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_GL_DISPLAY_X11" c:identifier="GST_IS_GL_DISPLAY_X11" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="obj">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<function-macro name="IS_GL_DISPLAY_X11_CLASS" c:identifier="GST_IS_GL_DISPLAY_X11_CLASS" introspectable="0">
|
||||
|
||||
<parameters>
|
||||
<parameter name="klass">
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<docsection name="gstgldisplay_x11">
|
||||
<doc xml:space="preserve">#GstGLDisplayX11 represents a connection to an X11 `Display` handle created
|
||||
internally (gst_gl_display_x11_new()) or wrapped by the application
|
||||
(gst_gl_display_x11_new_with_display())</doc>
|
||||
</docsection>
|
||||
</namespace>
|
||||
</repository>
|
|
@ -3462,6 +3462,309 @@ invalid Opus caps.</doc>
|
|||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<docsection name="encoding-profile">
|
||||
<doc xml:space="preserve">Functions to create and handle encoding profiles.
|
||||
|
||||
Encoding profiles describe the media types and settings one wishes to use
|
||||
for an encoding process. The top-level profiles are commonly
|
||||
#GstEncodingContainerProfile(s) (which contains a user-readable name and
|
||||
description along with which container format to use). These, in turn,
|
||||
reference one or more #GstEncodingProfile(s) which indicate which encoding
|
||||
format should be used on each individual streams.
|
||||
|
||||
#GstEncodingProfile(s) can be provided to the 'encodebin' element, which
|
||||
will take care of selecting and setting up the required elements to produce
|
||||
an output stream conforming to the specifications of the profile.
|
||||
|
||||
Unlike other systems, the encoding profiles do not specify which #GstElement
|
||||
to use for the various encoding and muxing steps, but instead relies on
|
||||
specifying the format one wishes to use.
|
||||
|
||||
Encoding profiles can be created at runtime by the application or loaded
|
||||
from (and saved to) file using the #GstEncodingTarget API.
|
||||
|
||||
## Defining a GstEncodingProfile as a string
|
||||
|
||||
### Serialized encoding profile formats
|
||||
|
||||
#### Using encoders and muxer element factory name:
|
||||
|
||||
```
|
||||
muxer_factory_name:video_encoder_factory_name:audio_encoder_factory_name
|
||||
```
|
||||
|
||||
For example to encode a stream into a WebM container, with an OGG audio
|
||||
stream and a VP8 video stream, the serialized #GstEncodingProfile looks
|
||||
like:
|
||||
|
||||
```
|
||||
webmmux:vp8enc:vorbisenc
|
||||
```
|
||||
|
||||
#### Define the encoding profile in a generic way using caps:
|
||||
|
||||
```
|
||||
muxer_source_caps:video_encoder_source_caps:audio_encoder_source_caps
|
||||
```
|
||||
|
||||
For example to encode a stream into a WebM container, with an OGG audio
|
||||
stream and a VP8 video stream, the serialized #GstEncodingProfile looks
|
||||
like:
|
||||
|
||||
```
|
||||
video/webm:video/x-vp8:audio/x-vorbis
|
||||
```
|
||||
|
||||
It is possible to mix caps and element type names so you can specify a specific
|
||||
video encoder while using caps for other encoders/muxer.
|
||||
|
||||
### Advanced encoding format serialization features:
|
||||
|
||||
You can also set the preset name of the encoding profile using the
|
||||
caps+preset_name syntax as in:
|
||||
|
||||
```
|
||||
video/webm:video/x-vp8+youtube-preset:audio/x-vorbis
|
||||
```
|
||||
|
||||
Moreover, you can set extra properties `presence`, `single-segment` and
|
||||
`variable-framerate` * of an * encoding profile using the `|presence=` syntax
|
||||
as in:
|
||||
|
||||
```
|
||||
video/webm:video/x-vp8|presence=1,variable-framerate=true|single-segment=true:audio/x-vorbis
|
||||
```
|
||||
|
||||
This field allows specifies the maximum number of times a
|
||||
#GstEncodingProfile can be used inside an encodebin. If 0, it is not a
|
||||
mandatory stream and can be used as many times as necessary.
|
||||
|
||||
You can also use the `restriction_caps->encoded_format_caps` syntax to
|
||||
specify the restriction caps to be set on a #GstEncodingProfile
|
||||
|
||||
It corresponds to the restriction #GstCaps to apply before the encoder that
|
||||
will be used in the profile. The fields present in restriction caps are
|
||||
properties of the raw stream (that is, before encoding), such as height and
|
||||
width for video and depth and sampling rate for audio. This property does
|
||||
not make sense for muxers. See #gst_encoding_profile_get_restriction for
|
||||
more details.
|
||||
|
||||
To force a video stream to be encoded with a Full HD resolution (using WebM
|
||||
as the container format, VP8 as the video codec and Vorbis as the audio
|
||||
codec), you should use:
|
||||
|
||||
```
|
||||
"video/webm:video/x-raw,width=1920,height=1080->video/x-vp8:audio/x-vorbis"
|
||||
```
|
||||
|
||||
> NOTE: Make sure to enclose into quotes to avoid '>' to be reinterpreted by
|
||||
> the shell.
|
||||
|
||||
In the case you are using encoder types, the following is also possible:
|
||||
|
||||
```
|
||||
"matroskamux:x264enc,width=1920,height=1080:audio/x-vorbis"
|
||||
```
|
||||
|
||||
## Some serialized encoding formats examples:
|
||||
|
||||
MP3 audio and H264 in MP4:
|
||||
|
||||
```
|
||||
video/quicktime,variant=iso:video/x-h264:audio/mpeg,mpegversion=1,layer=3
|
||||
```
|
||||
|
||||
Vorbis and theora in OGG:
|
||||
|
||||
```
|
||||
application/ogg:video/x-theora:audio/x-vorbis
|
||||
```
|
||||
|
||||
AC3 and H264 in MPEG-TS:
|
||||
|
||||
```
|
||||
video/mpegts:video/x-h264:audio/x-ac3
|
||||
```
|
||||
|
||||
## Loading a profile from encoding targets
|
||||
|
||||
Anywhere where you have to use a string to define a #GstEncodingProfile,
|
||||
you can use load it from a #GstEncodingTarget using the following syntaxes:
|
||||
|
||||
```
|
||||
target_name[/profilename/category]
|
||||
```
|
||||
|
||||
or
|
||||
|
||||
```
|
||||
/path/to/target.gep:profilename
|
||||
```
|
||||
|
||||
## Examples
|
||||
|
||||
### Creating a profile
|
||||
|
||||
``` c
|
||||
#include <gst/pbutils/encoding-profile.h>
|
||||
...
|
||||
GstEncodingProfile *
|
||||
create_ogg_theora_profile(void)
|
||||
{
|
||||
GstEncodingContainerProfile *prof;
|
||||
GstCaps *caps;
|
||||
|
||||
caps = gst_caps_from_string("application/ogg");
|
||||
prof = gst_encoding_container_profile_new("Ogg audio/video",
|
||||
"Standard OGG/THEORA/VORBIS",
|
||||
caps, NULL);
|
||||
gst_caps_unref (caps);
|
||||
|
||||
caps = gst_caps_from_string("video/x-theora");
|
||||
gst_encoding_container_profile_add_profile(prof,
|
||||
(GstEncodingProfile*) gst_encoding_video_profile_new(caps, NULL, NULL, 0));
|
||||
gst_caps_unref (caps);
|
||||
|
||||
caps = gst_caps_from_string("audio/x-vorbis");
|
||||
gst_encoding_container_profile_add_profile(prof,
|
||||
(GstEncodingProfile*) gst_encoding_audio_profile_new(caps, NULL, NULL, 0));
|
||||
gst_caps_unref (caps);
|
||||
|
||||
return (GstEncodingProfile*) prof;
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
### Example: Using an encoder preset with a profile
|
||||
|
||||
``` c
|
||||
#include <gst/pbutils/encoding-profile.h>
|
||||
...
|
||||
GstEncodingProfile *
|
||||
create_ogg_theora_profile(void)
|
||||
{
|
||||
GstEncodingVideoProfile *v;
|
||||
GstEncodingAudioProfile *a;
|
||||
GstEncodingContainerProfile *prof;
|
||||
GstCaps *caps;
|
||||
GstPreset *preset;
|
||||
|
||||
caps = gst_caps_from_string ("application/ogg");
|
||||
prof = gst_encoding_container_profile_new ("Ogg audio/video",
|
||||
"Standard OGG/THEORA/VORBIS",
|
||||
caps, NULL);
|
||||
gst_caps_unref (caps);
|
||||
|
||||
preset = GST_PRESET (gst_element_factory_make ("theoraenc", "theorapreset"));
|
||||
g_object_set (preset, "bitrate", 1000, NULL);
|
||||
// The preset will be saved on the filesystem,
|
||||
// so try to use a descriptive name
|
||||
gst_preset_save_preset (preset, "theora_bitrate_preset");
|
||||
gst_object_unref (preset);
|
||||
|
||||
caps = gst_caps_from_string ("video/x-theora");
|
||||
v = gst_encoding_video_profile_new (caps, "theora_bitrate_preset", NULL, 0);
|
||||
gst_encoding_container_profile_add_profile (prof, (GstEncodingProfile*) v);
|
||||
gst_caps_unref (caps);
|
||||
|
||||
caps = gst_caps_from_string ("audio/x-vorbis");
|
||||
a = gst_encoding_audio_profile_new (caps, NULL, NULL, 0);
|
||||
gst_encoding_container_profile_add_profile (prof, (GstEncodingProfile*) a);
|
||||
gst_caps_unref (caps);
|
||||
|
||||
return (GstEncodingProfile*) prof;
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
### Listing categories, targets and profiles
|
||||
|
||||
``` c
|
||||
#include <gst/pbutils/encoding-profile.h>
|
||||
...
|
||||
GstEncodingProfile *prof;
|
||||
GList *categories, *tmpc;
|
||||
GList *targets, *tmpt;
|
||||
...
|
||||
categories = gst_encoding_list_available_categories ();
|
||||
|
||||
... Show available categories to user ...
|
||||
|
||||
for (tmpc = categories; tmpc; tmpc = tmpc->next) {
|
||||
gchar *category = (gchar *) tmpc->data;
|
||||
|
||||
... and we can list all targets within that category ...
|
||||
|
||||
targets = gst_encoding_list_all_targets (category);
|
||||
|
||||
... and show a list to our users ...
|
||||
|
||||
g_list_foreach (targets, (GFunc) gst_encoding_target_unref, NULL);
|
||||
g_list_free (targets);
|
||||
}
|
||||
|
||||
g_list_foreach (categories, (GFunc) g_free, NULL);
|
||||
g_list_free (categories);
|
||||
|
||||
...
|
||||
```</doc>
|
||||
</docsection>
|
||||
<docsection name="encoding-target">
|
||||
<doc xml:space="preserve">On top of the notion of profiles, we implement the notion of EncodingTarget.
|
||||
Encoding Targets are basically a higher level of abstraction to define formats
|
||||
for specific target types. Those can define several GstEncodingProfiles with
|
||||
different names, for example one for transcoding in full HD, another one for
|
||||
low res, etc.. which are defined in the same encoding target.
|
||||
|
||||
Basically if you want to encode a stream to send it to, say, youtube you should
|
||||
have a Youtube encoding target defined in the "online-service" category.
|
||||
|
||||
## Encoding target serialization format
|
||||
|
||||
Encoding targets are serialized in a KeyFile like files.
|
||||
|
||||
|[
|
||||
[GStreamer Encoding Target]
|
||||
name : <name>
|
||||
category : <category>
|
||||
\description : <description> #translatable
|
||||
|
||||
[profile-<profile1name>]
|
||||
name : <name>
|
||||
\description : <description> #optional
|
||||
format : <format>
|
||||
preset : <preset>
|
||||
|
||||
[streamprofile-<id>]
|
||||
parent : <encodingprofile.name>[,<encodingprofile.name>..]
|
||||
\type : <type> # "audio", "video", "text"
|
||||
format : <format>
|
||||
preset : <preset>
|
||||
restriction : <restriction>
|
||||
presence : <presence>
|
||||
pass : <pass>
|
||||
variableframerate : <variableframerate>
|
||||
]|
|
||||
|
||||
## Location of encoding target files
|
||||
|
||||
$GST_DATADIR/gstreamer-GST_API_VERSION/encoding-profile
|
||||
$HOME/gstreamer-GST_API_VERSION/encoding-profile
|
||||
|
||||
There also is a GST_ENCODING_TARGET_PATH environment variable
|
||||
defining a list of folder containing encoding target files.
|
||||
|
||||
## Naming convention
|
||||
|
||||
|[
|
||||
$(target.category)/$(target.name).gep
|
||||
]|
|
||||
|
||||
## Naming restrictions:
|
||||
|
||||
* lowercase ASCII letter for the first character
|
||||
* Same for all other characters + numerics + hyphens</doc>
|
||||
</docsection>
|
||||
<function name="encoding_list_all_targets" c:identifier="gst_encoding_list_all_targets">
|
||||
<doc xml:space="preserve">List all available #GstEncodingTarget for the specified category, or all categories
|
||||
if @categoryname is %NULL.</doc>
|
||||
|
@ -3527,6 +3830,306 @@ of #GstEncodingTarget categories.</doc>
|
|||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<docsection name="gstpbutils">
|
||||
<doc xml:space="preserve">libgstpbutils is a general utility library for plugins and applications.
|
||||
It currently provides the
|
||||
following:
|
||||
|
||||
* human-readable description strings of codecs, elements, sources, decoders,
|
||||
encoders, or sinks from decoder/encoder caps, element names, or protocol
|
||||
names.
|
||||
|
||||
* support for applications to initiate installation of missing plugins (if
|
||||
this is supported by the distribution or operating system used)
|
||||
|
||||
* API for GStreamer elements to create missing-plugin messages in order to
|
||||
communicate to the application that a certain type of plugin is missing
|
||||
(decoder, encoder, URI protocol source, URI protocol sink, named element)
|
||||
|
||||
* API for applications to recognise and handle missing-plugin messages
|
||||
|
||||
## Linking to this library
|
||||
|
||||
You should obtain the required CFLAGS and LIBS using pkg-config on the
|
||||
gstreamer-plugins-base-1.0 module. You will then also need to add
|
||||
'-lgstreamer-pbutils-1.0' manually to your LIBS line.
|
||||
|
||||
## Library initialisation
|
||||
|
||||
Before using any of its functions, applications and plugins must call
|
||||
gst_pb_utils_init() to initialise the library.</doc>
|
||||
</docsection>
|
||||
<docsection name="gstpbutilscodecutils">
|
||||
<doc xml:space="preserve">Provides codec-specific ulility functions such as functions to provide the
|
||||
codec profile and level in human-readable string form from header data.</doc>
|
||||
</docsection>
|
||||
<docsection name="gstpbutilsdescriptions">
|
||||
<doc xml:space="preserve">The above functions provide human-readable strings for media formats
|
||||
and decoder/demuxer/depayloader/encoder/muxer/payloader elements for use
|
||||
in error dialogs or other messages shown to users.
|
||||
|
||||
gst_pb_utils_add_codec_description_to_tag_list() is a utility function
|
||||
for demuxer and decoder elements to add audio/video codec tags from a
|
||||
given (fixed) #GstCaps.</doc>
|
||||
</docsection>
|
||||
<docsection name="gstpbutilsinstallplugins">
|
||||
<doc xml:space="preserve">## Overview
|
||||
|
||||
Using this API, applications can request the installation of missing
|
||||
GStreamer plugins. These may be missing decoders/demuxers or
|
||||
encoders/muxers for a certain format, sources or sinks for a certain URI
|
||||
protocol (e.g. 'http'), or certain elements known by their element
|
||||
factory name ('audioresample').
|
||||
|
||||
Whether plugin installation is supported or not depends on the operating
|
||||
system and/or distribution in question. The vendor of the operating
|
||||
system needs to make sure the necessary hooks and mechanisms are in
|
||||
place for plugin installation to work. See below for more detailed
|
||||
information.
|
||||
|
||||
From the application perspective, plugin installation is usually
|
||||
triggered either
|
||||
|
||||
- when the application itself has found that it wants or needs to
|
||||
install a certain element
|
||||
- when the application has been notified by an element (such as
|
||||
playbin or decodebin) that one or more plugins are missing *and* the
|
||||
application has decided that it wants to install one or more of
|
||||
those missing plugins
|
||||
|
||||
The install functions in this section all take one or more 'detail
|
||||
strings'. These detail strings contain information about the type of
|
||||
plugin that needs to be installed (decoder, encoder, source, sink, or
|
||||
named element), and some additional information such GStreamer version
|
||||
used and a human-readable description of the component to install for
|
||||
user dialogs.
|
||||
|
||||
Applications should not concern themselves with the composition of the
|
||||
string itself. They should regard the string as if it was a shared
|
||||
secret between GStreamer and the plugin installer application.
|
||||
|
||||
Detail strings can be obtained using the function
|
||||
gst_missing_plugin_message_get_installer_detail() on a
|
||||
missing-plugin message. Such a message will either have been found by
|
||||
the application on a pipeline's #GstBus, or the application will have
|
||||
created it itself using gst_missing_element_message_new(),
|
||||
gst_missing_decoder_message_new(),
|
||||
gst_missing_encoder_message_new(),
|
||||
gst_missing_uri_sink_message_new(), or
|
||||
gst_missing_uri_source_message_new().
|
||||
|
||||
For each GStreamer element/plugin/component that should be installed,
|
||||
the application needs one of those 'installer detail' string mentioned
|
||||
in the previous section. This string can be obtained, as already
|
||||
mentioned above, from a missing-plugin message using the function
|
||||
gst_missing_plugin_message_get_installer_detail(). The
|
||||
missing-plugin message is either posted by another element and then
|
||||
found on the bus by the application, or the application has created it
|
||||
itself as described above.
|
||||
|
||||
The application will then call gst_install_plugins_async(), passing a
|
||||
NULL-terminated array of installer detail strings, and a function that
|
||||
should be called when the installation of the plugins has finished
|
||||
(successfully or not). Optionally, a #GstInstallPluginsContext created
|
||||
with gst_install_plugins_context_new() may be passed as well. This
|
||||
way additional optional arguments like the application window's XID can
|
||||
be passed to the external installer application.
|
||||
|
||||
gst_install_plugins_async() will return almost immediately, with the
|
||||
return code indicating whether plugin installation was started or not.
|
||||
If the necessary hooks for plugin installation are in place and an
|
||||
external installer application has in fact been called, the passed in
|
||||
function will be called with a result code as soon as the external
|
||||
installer has finished. If the result code indicates that new plugins
|
||||
have been installed, the application will want to call
|
||||
gst_update_registry() so the run-time plugin registry is updated and
|
||||
the new plugins are made available to the application.
|
||||
|
||||
> A Gtk/GLib main loop must be running in order for the result function
|
||||
> to be called when the external installer has finished. If this is not
|
||||
> the case, make sure to regularly call in your code:
|
||||
>
|
||||
> g_main_context_iteration (NULL,FALSE);
|
||||
|
||||
## 1. Installer hook
|
||||
|
||||
When GStreamer applications initiate plugin installation via
|
||||
gst_install_plugins_async() or gst_install_plugins_sync(), a
|
||||
pre-defined helper application will be called.
|
||||
|
||||
The exact path of the helper application to be called is set at compile
|
||||
time, usually by the build system based on the install prefix.
|
||||
For a normal package build into the `/usr` prefix, this will usually
|
||||
default to `/usr/libexec/gst-install-plugins-helper` or
|
||||
`/usr/lib/gst-install-plugins-helper`.
|
||||
|
||||
Vendors/distros who want to support GStreamer plugin installation should
|
||||
either provide such a helper script/application or use the meson option
|
||||
`-Dinstall_plugins_helper'=/path/to/installer` to make GStreamer call an
|
||||
installer of their own directly.
|
||||
|
||||
It is strongly recommended that vendors provide a small helper
|
||||
application as interlocutor to the real installer though, even more so
|
||||
if command line argument munging is required to transform the command
|
||||
line arguments passed by GStreamer to the helper application into
|
||||
arguments that are understood by the real installer.
|
||||
|
||||
The helper application path defined at compile time can be overridden at
|
||||
runtime by setting the GST_INSTALL_PLUGINS_HELPER environment
|
||||
variable. This can be useful for testing/debugging purposes.
|
||||
|
||||
## 2. Arguments passed to the install helper
|
||||
|
||||
GStreamer will pass the following arguments to the install helper (this
|
||||
is in addition to the path of the executable itself, which is by
|
||||
convention argv[0]):
|
||||
|
||||
- none to many optional arguments in the form of `--foo-bar=val`.
|
||||
Example: `--transient-for=XID` where XID is the X Window ID of the
|
||||
main window of the calling application (so the installer can make
|
||||
itself transient to that window). Unknown optional arguments should
|
||||
be ignored by the installer.
|
||||
|
||||
- one 'installer detail string' argument for each plugin to be
|
||||
installed; these strings will have a `gstreamer` prefix; the exact
|
||||
format of the detail string is explained below
|
||||
|
||||
## 3. Detail string describing the missing plugin
|
||||
|
||||
The string is in UTF-8 encoding and is made up of several fields,
|
||||
separated by '|' characters (but neither the first nor the last
|
||||
character is a '|'). The fields are:
|
||||
|
||||
- plugin system identifier, ie. "gstreamer"
|
||||
This identifier determines the format of the rest of the detail
|
||||
string. Automatic plugin installers should not process detail
|
||||
strings with unknown identifiers. This allows other plugin-based
|
||||
libraries to use the same mechanism for their automatic plugin
|
||||
installation needs, or for the format to be changed should it turn
|
||||
out to be insufficient.
|
||||
- plugin system version, e.g. "1.0"
|
||||
This is required so that when there is GStreamer-2.0 at some point
|
||||
in future, the different major versions can still co-exist and use
|
||||
the same plugin install mechanism in the same way.
|
||||
- application identifier, e.g. "totem"
|
||||
This may also be in the form of "pid/12345" if the program name
|
||||
can't be obtained for some reason.
|
||||
- human-readable localised description of the required component, e.g.
|
||||
"Vorbis audio decoder"
|
||||
- identifier string for the required component (see below for details
|
||||
about how to map this to the package/plugin that needs installing),
|
||||
e.g.
|
||||
- urisource-$(PROTOCOL_REQUIRED), e.g. urisource-http or
|
||||
urisource-mms
|
||||
- element-$(ELEMENT_REQUIRED), e.g. element-videoconvert
|
||||
- decoder-$(CAPS_REQUIRED), e.g. (do read below for more
|
||||
details!):
|
||||
- decoder-audio/x-vorbis
|
||||
- decoder-application/ogg
|
||||
- decoder-audio/mpeg, mpegversion=(int)4
|
||||
- decoder-video/mpeg, systemstream=(boolean)true,
|
||||
mpegversion=(int)2
|
||||
- encoder-$(CAPS_REQUIRED), e.g. encoder-audio/x-vorbis
|
||||
- optional further fields not yet specified
|
||||
|
||||
An entire ID string might then look like this, for example: `
|
||||
gstreamer|1.0|totem|Vorbis audio decoder|decoder-audio/x-vorbis`
|
||||
|
||||
Plugin installers parsing this ID string should expect further fields
|
||||
also separated by '|' symbols and either ignore them, warn the user, or
|
||||
error out when encountering them.
|
||||
|
||||
Those unfamiliar with the GStreamer 'caps' system should note a few
|
||||
things about the caps string used in the above decoder/encoder case:
|
||||
|
||||
- the first part ("video/mpeg") of the caps string is a GStreamer
|
||||
media type and *not* a MIME type. Wherever possible, the GStreamer
|
||||
media type will be the same as the corresponding MIME type, but
|
||||
often it is not.
|
||||
- a caps string may or may not have additional comma-separated fields
|
||||
of various types (as seen in the examples above)
|
||||
- the caps string of a 'required' component (as above) will always
|
||||
have fields with fixed values, whereas an introspected string (see
|
||||
below) may have fields with non-fixed values. Compare for example:
|
||||
- `audio/mpeg, mpegversion=(int)4` vs.
|
||||
`audio/mpeg, mpegversion=(int){2, 4}`
|
||||
- `video/mpeg, mpegversion=(int)2` vs.
|
||||
`video/mpeg, systemstream=(boolean){ true, false}, mpegversion=(int)[1, 2]`
|
||||
|
||||
## 4. Exit codes the installer should return
|
||||
|
||||
The installer should return one of the following exit codes when it
|
||||
exits:
|
||||
|
||||
- 0 if all of the requested plugins could be installed
|
||||
(#GST_INSTALL_PLUGINS_SUCCESS)
|
||||
- 1 if no appropriate installation candidate for any of the requested
|
||||
plugins could be found. Only return this if nothing has been
|
||||
installed (#GST_INSTALL_PLUGINS_NOT_FOUND)
|
||||
- 2 if an error occurred during the installation. The application will
|
||||
assume that the user will already have seen an error message by the
|
||||
installer in this case and will usually not show another one
|
||||
(#GST_INSTALL_PLUGINS_ERROR)
|
||||
- 3 if some of the requested plugins could be installed, but not all
|
||||
(#GST_INSTALL_PLUGINS_PARTIAL_SUCCESS)
|
||||
- 4 if the user aborted the installation
|
||||
(#GST_INSTALL_PLUGINS_USER_ABORT)
|
||||
|
||||
## 5. How to map the required detail string to packages
|
||||
|
||||
It is up to the vendor to find mechanism to map required components from
|
||||
the detail string to the actual packages/plugins to install. This could
|
||||
be a hardcoded list of mappings, for example, or be part of the
|
||||
packaging system metadata.
|
||||
|
||||
GStreamer plugin files can be introspected for this information. The
|
||||
`gst-inspect` utility has a special command line option that will output
|
||||
information similar to what is required. For example `
|
||||
$ gst-inspect-1.0 --print-plugin-auto-install-info /path/to/libgstvorbis.so
|
||||
should output something along the lines of
|
||||
`decoder-audio/x-vorbis`, `element-vorbisdec` `element-vorbisenc`
|
||||
`element-vorbisparse`, `element-vorbistag`, `encoder-audio/x-vorbis`
|
||||
|
||||
Note that in the encoder and decoder case the introspected caps can be
|
||||
more complex with additional fields, e.g.
|
||||
`audio/mpeg,mpegversion=(int){2,4}`, so they will not always exactly
|
||||
match the caps wanted by the application. It is up to the installer to
|
||||
deal with this (either by doing proper caps intersection using the
|
||||
GStreamer #GstCaps API, or by only taking into account the media type).
|
||||
|
||||
Another potential source of problems are plugins such as ladspa or
|
||||
libvisual where the list of elements depends on the installed
|
||||
ladspa/libvisual plugins at the time. This is also up to the
|
||||
distribution to handle (but usually not relevant for playback
|
||||
applications).</doc>
|
||||
</docsection>
|
||||
<docsection name="gstpbutilsmissingplugins">
|
||||
<doc xml:space="preserve">Functions to create, recognise and parse missing-plugins messages for
|
||||
applications and elements.
|
||||
|
||||
Missing-plugin messages are posted on the bus by elements like decodebin
|
||||
or playbin if they can't find an appropriate source element or decoder
|
||||
element. The application can use these messages for two things:
|
||||
|
||||
* concise error/problem reporting to the user mentioning what exactly
|
||||
is missing, see gst_missing_plugin_message_get_description()
|
||||
|
||||
* initiate installation of missing plugins, see
|
||||
gst_missing_plugin_message_get_installer_detail() and
|
||||
gst_install_plugins_async()
|
||||
|
||||
Applications may also create missing-plugin messages themselves to install
|
||||
required elements that are missing, using the install mechanism mentioned
|
||||
above.</doc>
|
||||
</docsection>
|
||||
<docsection name="gstpluginsbaseversion">
|
||||
<doc xml:space="preserve">Use the GST_PLUGINS_BASE_VERSION_* macros e.g. to check what version of
|
||||
gst-plugins-base you are building against, and gst_plugins_base_version()
|
||||
if you need to check at runtime what version of the gst-plugins-base
|
||||
libraries are being used / you are currently linked against.
|
||||
|
||||
The version macros get defined by including &lt;gst/pbutils/pbutils.h&gt;.</doc>
|
||||
</docsection>
|
||||
<function name="install_plugins_async" c:identifier="gst_install_plugins_async">
|
||||
<doc xml:space="preserve">Requests plugin installation without blocking. Once the plugins have been
|
||||
installed or installation has failed, @func will be called with the result
|
||||
|
|
|
@ -4864,6 +4864,14 @@ is no such metadata on @buffer.</doc>
|
|||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<docsection name="gstrtpdefs">
|
||||
<doc xml:space="preserve">Provides common defines for the RTP library.</doc>
|
||||
</docsection>
|
||||
<docsection name="gstrtppayloads">
|
||||
<doc xml:space="preserve">The GstRTPPayloads helper functions makes it easy to deal with static and dynamic
|
||||
payloads. Its main purpose is to retrieve properties such as the default clock-rate
|
||||
and get session bandwidth information.</doc>
|
||||
</docsection>
|
||||
<function name="rtcp_buffer_map" c:identifier="gst_rtcp_buffer_map" moved-to="RTCPBuffer.map">
|
||||
<doc xml:space="preserve">Open @buffer for reading or writing, depending on @flags. The resulting RTCP
|
||||
buffer state is stored in @rtcp.</doc>
|
||||
|
|
|
@ -4138,6 +4138,9 @@ not equal #GST_RTSP_OK.</doc>
|
|||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<docsection name="gstrtspdefs">
|
||||
<doc xml:space="preserve">Provides common defines for the RTSP library.</doc>
|
||||
</docsection>
|
||||
<function name="rtsp_auth_credentials_free" c:identifier="gst_rtsp_auth_credentials_free" version="1.12">
|
||||
<doc xml:space="preserve">Free a %NULL-terminated array of credentials returned from
|
||||
gst_rtsp_message_parse_auth_credentials().</doc>
|
||||
|
|
|
@ -4099,6 +4099,10 @@ time.</doc>
|
|||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<docsection name="gstmikey">
|
||||
<doc xml:space="preserve">The GstMIKEY helper functions makes it easy to parse and create MIKEY
|
||||
messages.</doc>
|
||||
</docsection>
|
||||
<function name="sdp_address_is_multicast" c:identifier="gst_sdp_address_is_multicast">
|
||||
<doc xml:space="preserve">Check if the given @addr is a multicast address.</doc>
|
||||
|
||||
|
|
|
@ -930,6 +930,41 @@ the schema wasn't in the list</doc>
|
|||
<type name="GObject.TypeInterface" c:type="GTypeInterface"/>
|
||||
</field>
|
||||
</record>
|
||||
<docsection name="gsttag">
|
||||
<doc xml:space="preserve">Contains additional standardized GStreamer tag definitions for plugins
|
||||
and applications, and functions to register them with the GStreamer
|
||||
tag system.</doc>
|
||||
</docsection>
|
||||
<docsection name="gsttagexif">
|
||||
<doc xml:space="preserve">Contains utility function to parse #GstTagList<!-- -->s from exif
|
||||
buffers and to create exif buffers from #GstTagList<!-- -->s
|
||||
|
||||
Note that next IFD fields on the created exif buffers are set to 0.</doc>
|
||||
</docsection>
|
||||
<docsection name="gsttagid3">
|
||||
<doc xml:space="preserve">Contains various utility functions for plugins to parse or create
|
||||
ID3 tags and map ID3v2 identifiers to and from GStreamer identifiers.</doc>
|
||||
</docsection>
|
||||
<docsection name="gsttaglanguagecodes">
|
||||
<doc xml:space="preserve">Provides helper functions to convert between the various ISO-639 language
|
||||
codes, and to map language codes to language names.</doc>
|
||||
</docsection>
|
||||
<docsection name="gsttaglicenses">
|
||||
<doc xml:space="preserve">Provides information about Creative Commons media licenses, which are
|
||||
often expressed in media files as a license URI in tags. Also useful
|
||||
for applications creating media files, in case the user wants to license
|
||||
the content under a Creative Commons license.</doc>
|
||||
</docsection>
|
||||
<docsection name="gsttagvorbis">
|
||||
<doc xml:space="preserve">Contains various utility functions for plugins to parse or create
|
||||
vorbiscomments and map them to and from #GstTagList<!-- -->s.</doc>
|
||||
</docsection>
|
||||
<docsection name="gsttagxmp">
|
||||
<doc xml:space="preserve">Contains various utility functions for plugins to parse or create
|
||||
xmp packets and map them to and from #GstTagList<!-- -->s.
|
||||
|
||||
Please note that the xmp parser is very lightweight and not strict at all.</doc>
|
||||
</docsection>
|
||||
<function name="tag_check_language_code" c:identifier="gst_tag_check_language_code">
|
||||
<doc xml:space="preserve">Check if a given string contains a known ISO 639 language code.
|
||||
|
||||
|
|
|
@ -4337,6 +4337,7 @@ They can conflict with other extended buffer flags.</doc>
|
|||
GST_VIDEO_BUFFER_FLAG_ONEFIELD (Since: 1.16).
|
||||
Use GST_VIDEO_BUFFER_IS_TOP_FIELD() to check for this flag.</doc>
|
||||
</member>
|
||||
|
||||
<member name="bottom_field" value="8388608" c:identifier="GST_VIDEO_BUFFER_FLAG_BOTTOM_FIELD" glib:nick="bottom-field">
|
||||
<doc xml:space="preserve">The video frame has the bottom field only. This is
|
||||
the same as GST_VIDEO_BUFFER_FLAG_ONEFIELD
|
||||
|
@ -8677,11 +8678,11 @@ for details about the layout and packing of these formats in memory.</doc>
|
|||
<member name="y412_le" value="96" c:identifier="GST_VIDEO_FORMAT_Y412_LE" glib:nick="y412-le">
|
||||
<doc xml:space="preserve">packed 4:4:4:4 YUV, 12 bits per channel(U-Y-V-A...) (Since: 1.18)</doc>
|
||||
</member>
|
||||
<member name="nv12_4l4" value="97" c:identifier="GST_VIDEO_FORMAT_NV12_4L4" glib:nick="nv12-4l4">
|
||||
<doc xml:space="preserve">NV12 with 4x4 tiles in linear order (Since: 1.18)</doc>
|
||||
<member name="nv12_4l4" value="97" c:identifier="GST_VIDEO_FORMAT_NV12_4L4" version="1.18" glib:nick="nv12-4l4">
|
||||
<doc xml:space="preserve">NV12 with 4x4 tiles in linear order.</doc>
|
||||
</member>
|
||||
<member name="nv12_32l32" value="98" c:identifier="GST_VIDEO_FORMAT_NV12_32L32" glib:nick="nv12-32l32">
|
||||
<doc xml:space="preserve">NV12 with 32x32 tiles in linear order (Since: 1.18)</doc>
|
||||
<member name="nv12_32l32" value="98" c:identifier="GST_VIDEO_FORMAT_NV12_32L32" version="1.18" glib:nick="nv12-32l32">
|
||||
<doc xml:space="preserve">NV12 with 32x32 tiles in linear order.</doc>
|
||||
</member>
|
||||
<function name="from_fourcc" c:identifier="gst_video_format_from_fourcc">
|
||||
<doc xml:space="preserve">Converts a FOURCC value into the corresponding #GstVideoFormat.
|
||||
|
@ -9352,6 +9353,7 @@ All video planes of @buffer will be mapped and the pointers will be set in
|
|||
is the same as GST_VIDEO_FRAME_FLAG_TFF | GST_VIDEO_FRAME_FLAG_ONEFIELD
|
||||
(Since: 1.16).</doc>
|
||||
</member>
|
||||
|
||||
<member name="bottom_field" value="8" c:identifier="GST_VIDEO_FRAME_FLAG_BOTTOM_FIELD" glib:nick="bottom-field">
|
||||
<doc xml:space="preserve">The video frame has the bottom field
|
||||
only. This is the same as GST_VIDEO_FRAME_FLAG_ONEFIELD
|
||||
|
@ -12842,8 +12844,8 @@ frames will only be rendered in PLAYING state.</doc>
|
|||
in memory in Z or flipped Z order. In case of odd rows, the last row
|
||||
of blocks is arranged in linear order.</doc>
|
||||
</member>
|
||||
<member name="linear" value="131072" c:identifier="GST_VIDEO_TILE_MODE_LINEAR" glib:nick="linear">
|
||||
<doc xml:space="preserve">Tiles are in row order. (Since: 1.18)</doc>
|
||||
<member name="linear" value="131072" c:identifier="GST_VIDEO_TILE_MODE_LINEAR" version="1.18" glib:nick="linear">
|
||||
<doc xml:space="preserve">Tiles are in row order.</doc>
|
||||
</member>
|
||||
</enumeration>
|
||||
<enumeration name="VideoTileType" glib:type-name="GstVideoTileType" glib:get-type="gst_video_tile_type_get_type" c:type="GstVideoTileType">
|
||||
|
@ -13601,11 +13603,8 @@ non-linear RGB (R'G'B') and linear RGB</doc>
|
|||
STD-B67 and Rec. ITU-R BT.2100-1 hybrid loggamma (HLG) system
|
||||
Since: 1.18</doc>
|
||||
</member>
|
||||
<member name="bt601" value="16" c:identifier="GST_VIDEO_TRANSFER_BT601" glib:nick="bt601">
|
||||
<doc xml:space="preserve">also known as SMPTE170M / ITU-R BT1358 525 or 625 / ITU-R BT1700 NTSC
|
||||
Functionally the same as the values
|
||||
GST_VIDEO_TRANSFER_BT709, and GST_VIDEO_TRANSFER_BT2020_10.
|
||||
Since: 1.18</doc>
|
||||
<member name="bt601" value="16" c:identifier="GST_VIDEO_TRANSFER_BT601" version="1.18" glib:nick="bt601">
|
||||
<doc xml:space="preserve">also known as SMPTE170M / ITU-R BT1358 525 or 625 / ITU-R BT1700 NTSC</doc>
|
||||
</member>
|
||||
<function name="from_iso" c:identifier="gst_video_transfer_function_from_iso" version="1.18">
|
||||
<doc xml:space="preserve">Converts the @value to the #GstVideoTransferFunction
|
||||
|
@ -14467,6 +14466,28 @@ in @align</doc>
|
|||
</parameter>
|
||||
</parameters>
|
||||
</function-macro>
|
||||
<docsection name="gstvideo">
|
||||
<doc xml:space="preserve">This library contains some helper functions and includes the
|
||||
videosink and videofilter base classes.</doc>
|
||||
</docsection>
|
||||
<docsection name="gstvideoanc">
|
||||
<doc xml:space="preserve">A collection of objects and methods to assist with handling Ancillary Data
|
||||
present in Vertical Blanking Interval as well as Closed Caption.</doc>
|
||||
</docsection>
|
||||
<docsection name="gstvideochroma">
|
||||
<doc xml:space="preserve">The functions gst_video_chroma_from_string() and gst_video_chroma_to_string() convert
|
||||
between #GstVideoChromaSite and string descriptions.
|
||||
|
||||
#GstVideoChromaResample is a utility object for resampling chroma planes
|
||||
and converting between different chroma sampling sitings.</doc>
|
||||
</docsection>
|
||||
<docsection name="gstvideopool">
|
||||
<doc xml:space="preserve">Special GstBufferPool subclass for raw video buffers.
|
||||
|
||||
Allows configuration of video-specific requirements such as
|
||||
stride alignments or pixel padding, and can also be configured
|
||||
to automatically add #GstVideoMeta to the buffers.</doc>
|
||||
</docsection>
|
||||
<function name="is_video_overlay_prepare_window_handle_message" c:identifier="gst_is_video_overlay_prepare_window_handle_message">
|
||||
<doc xml:space="preserve">Convenience function to check if the given message is a
|
||||
"prepare-window-handle" message from a #GstVideoOverlay.</doc>
|
||||
|
@ -16488,5 +16509,14 @@ and "ITU-T H.273 Table 3".
|
|||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
<docsection name="videoconverter">
|
||||
<doc xml:space="preserve">This object is used to convert video frames from one format to another.
|
||||
The object can perform conversion of:
|
||||
|
||||
* video format
|
||||
* video colorspace
|
||||
* chroma-siting
|
||||
* video size</doc>
|
||||
</docsection>
|
||||
</namespace>
|
||||
</repository>
|
||||
|
|
Loading…
Reference in a new issue