mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-28 19:20:35 +00:00
Various fixes
This commit is contained in:
parent
2154455db8
commit
e53f0d0eed
7 changed files with 108 additions and 146 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -15,6 +15,9 @@ ltmain.sh
|
|||
missing
|
||||
stamp-h
|
||||
|
||||
# gedit temporary files
|
||||
*.*~
|
||||
|
||||
# glue binaries/objects (FIXME: kill the glue, kthxbye)
|
||||
sources/glue/.deps/
|
||||
sources/glue/*.o
|
||||
|
|
|
@ -7,4 +7,4 @@ EXTRA_DIST = gstreamer-sharp-1.0.pc.in out/gstreamer-sharp.dll.config
|
|||
DISTCLEANFILES = gstreamer-sharp-1.0.pc
|
||||
|
||||
regenerate:
|
||||
bindinate --name=gstreamer --regenerate=true --merge-with=GstApp-1.0,GstAudio-1.0,GstBase-1.0,GstController-1.0,GstFft-1.0,GstInsertBin-1.0,GstMpegts-1.0,GstNet-1.0,GstPbutils-1.0,GstRiff-1.0,GstRtp-1.0,GstRtsp-1.0,GstSdp-1.0,GstTag-1.0,GstVideo-1.0 --gir=Gst-1.0
|
||||
bindinate --name=gstreamer --regenerate=true --merge-with=GstApp-1.0,GstAudio-1.0,GstBase-1.0,GstController-1.0,GstFft-1.0,GstMpegts-1.0,GstNet-1.0,GstPbutils-1.0,GstRiff-1.0,GstRtp-1.0,GstRtsp-1.0,GstSdp-1.0,GstTag-1.0,GstVideo-1.0 --gir=Gst-1.0
|
||||
|
|
4
sources/Gst-1.0-merged.metadata
Normal file
4
sources/Gst-1.0-merged.metadata
Normal file
|
@ -0,0 +1,4 @@
|
|||
<?xml version="1.0"?>
|
||||
<metadata>
|
||||
<remove-attr path="//*[local-name()='method' and @name='ref']" name="introspectable"/>
|
||||
</metadata>
|
45
sources/custom/MiniObject.cs
Normal file
45
sources/custom/MiniObject.cs
Normal file
|
@ -0,0 +1,45 @@
|
|||
// Copyright (C) 2014 Stephan Sundermann <stephansundermann@gmail.com>
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Lesser General Public
|
||||
// License as published by the Free Software Foundation; either
|
||||
// version 2.1 of the License, or (at your option) any later version.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public
|
||||
// License along with this library; if not, write to the Free Software
|
||||
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
// 02110-1301 USA
|
||||
|
||||
namespace Gst {
|
||||
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
partial class MiniObject
|
||||
{
|
||||
protected MiniObject () {}
|
||||
|
||||
[DllImport("libgstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
||||
static extern bool gst_mini_object_replace(IntPtr olddata, IntPtr newdata);
|
||||
|
||||
public static bool Replace(ref Gst.MiniObject olddata, Gst.MiniObject newdata) {
|
||||
return gst_mini_object_replace(olddata.Handle, newdata == null ? IntPtr.Zero : newdata.Handle);
|
||||
}
|
||||
|
||||
public static bool Replace(ref Gst.MiniObject olddata) {
|
||||
return Replace (ref olddata, null);
|
||||
}
|
||||
|
||||
[DllImport("libgstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
||||
static extern bool gst_mini_object_take(IntPtr olddata, IntPtr newdata);
|
||||
|
||||
public static bool Take(ref Gst.MiniObject olddata, Gst.MiniObject newdata) {
|
||||
return gst_mini_object_take(olddata.Handle, newdata == null ? IntPtr.Zero : newdata.Handle);
|
||||
}
|
||||
}
|
||||
}
|
29
sources/custom/VideoGLUploadMeta.cs
Normal file
29
sources/custom/VideoGLUploadMeta.cs
Normal file
|
@ -0,0 +1,29 @@
|
|||
// Copyright (C) 2014 Stephan Sundermann <stephansundermann@gmail.com>
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Lesser General Public
|
||||
// License as published by the Free Software Foundation; either
|
||||
// version 2.1 of the License, or (at your option) any later version.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public
|
||||
// License along with this library; if not, write to the Free Software
|
||||
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
// 02110-1301 USA
|
||||
|
||||
namespace Gst.Video {
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
partial struct VideoGLTextureUploadMeta
|
||||
{
|
||||
public bool Equals (VideoGLTextureUploadMeta other)
|
||||
{
|
||||
return Meta.Equals (other.Meta) && TextureOrientation.Equals (other.TextureOrientation) && NTextures.Equals (other.NTextures) && TextureType.Equals (other.TextureType);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -7602,6 +7602,12 @@
|
|||
<parameter name="flags" type="GstLockFlags"/>
|
||||
</parameters>
|
||||
</method>
|
||||
<method name="Ref" cname="gst_mini_object_ref">
|
||||
<return-type type="GstMiniObject*" owned="true">
|
||||
<warning>missing glib:type-name</warning>
|
||||
</return-type>
|
||||
<parameters/>
|
||||
</method>
|
||||
<method name="SetQdata" cname="gst_mini_object_set_qdata">
|
||||
<return-type type="void"/>
|
||||
<parameters>
|
||||
|
@ -10931,8 +10937,8 @@
|
|||
<constant value="-1" ctype="gint" gtype="gint" name="VALUE_LESS_THAN"/>
|
||||
<constant value="2" ctype="gint" gtype="gint" name="VALUE_UNORDERED"/>
|
||||
<constant value="1" ctype="gint" gtype="gint" name="VERSION_MAJOR"/>
|
||||
<constant value="91" ctype="gint" gtype="gint" name="VERSION_MICRO"/>
|
||||
<constant value="3" ctype="gint" gtype="gint" name="VERSION_MINOR"/>
|
||||
<constant value="0" ctype="gint" gtype="gint" name="VERSION_MICRO"/>
|
||||
<constant value="4" ctype="gint" gtype="gint" name="VERSION_MINOR"/>
|
||||
<constant value="0" ctype="gint" gtype="gint" name="VERSION_NANO"/>
|
||||
</object>
|
||||
</namespace>
|
||||
|
@ -16056,131 +16062,6 @@
|
|||
</object>
|
||||
<object name="Constants" cname="GstFftConstants" opaque="true"/>
|
||||
</namespace>
|
||||
<namespace name="GstInsertBin" library="gstinsertbin-1.0">
|
||||
<callback name="InsertBinCallback" cname="GstInsertBinCallback">
|
||||
<return-type type="void"/>
|
||||
<parameters>
|
||||
<parameter name="insertbin" type="GstInsertBin*"/>
|
||||
<parameter name="element" type="GstElement*"/>
|
||||
<parameter name="success" type="gboolean"/>
|
||||
<parameter closure="3" name="user_data" type="gpointer"/>
|
||||
</parameters>
|
||||
</callback>
|
||||
<object name="InsertBin" cname="GstInsertBin" opaque="false" hidden="false" parent="GstBin">
|
||||
<implements>
|
||||
<interface cname="GstChildProxy"/>
|
||||
</implements>
|
||||
<class_struct cname="GstInsertBinClass">
|
||||
<field cname="parent_class" access="public" writeable="false" readable="true" name="ParentClass" type="GstBinClass">
|
||||
<warning>missing glib:type-name</warning>
|
||||
</field>
|
||||
</class_struct>
|
||||
<method name="GetType" cname="gst_insert_bin_get_type" shared="true">
|
||||
<return-type type="GType"/>
|
||||
</method>
|
||||
<constructor cname="gst_insert_bin_new">
|
||||
<parameters>
|
||||
<parameter name="name" type="const-gchar*"/>
|
||||
</parameters>
|
||||
</constructor>
|
||||
<method name="Append" cname="gst_insert_bin_append">
|
||||
<return-type type="void"/>
|
||||
<parameters>
|
||||
<parameter name="element" type="GstElement*"/>
|
||||
<parameter closure="2" scope="async" name="callback" type="GstInsertBinCallback"/>
|
||||
<parameter name="user_data" type="gpointer"/>
|
||||
</parameters>
|
||||
</method>
|
||||
<method name="InsertAfter" cname="gst_insert_bin_insert_after">
|
||||
<return-type type="void"/>
|
||||
<parameters>
|
||||
<parameter name="element" type="GstElement*"/>
|
||||
<parameter name="sibling" type="GstElement*"/>
|
||||
<parameter closure="3" scope="async" name="callback" type="GstInsertBinCallback"/>
|
||||
<parameter name="user_data" type="gpointer"/>
|
||||
</parameters>
|
||||
</method>
|
||||
<method name="InsertBefore" cname="gst_insert_bin_insert_before">
|
||||
<return-type type="void"/>
|
||||
<parameters>
|
||||
<parameter name="element" type="GstElement*"/>
|
||||
<parameter name="sibling" type="GstElement*"/>
|
||||
<parameter closure="3" scope="async" name="callback" type="GstInsertBinCallback"/>
|
||||
<parameter name="user_data" type="gpointer"/>
|
||||
</parameters>
|
||||
</method>
|
||||
<method name="Prepend" cname="gst_insert_bin_prepend">
|
||||
<return-type type="void"/>
|
||||
<parameters>
|
||||
<parameter name="element" type="GstElement*"/>
|
||||
<parameter closure="2" scope="async" name="callback" type="GstInsertBinCallback"/>
|
||||
<parameter name="user_data" type="gpointer"/>
|
||||
</parameters>
|
||||
</method>
|
||||
<method name="Remove" cname="gst_insert_bin_remove">
|
||||
<return-type type="void"/>
|
||||
<parameters>
|
||||
<parameter name="element" type="GstElement*"/>
|
||||
<parameter closure="2" scope="async" name="callback" type="GstInsertBinCallback"/>
|
||||
<parameter name="user_data" type="gpointer"/>
|
||||
</parameters>
|
||||
</method>
|
||||
<field cname="parent" access="public" writeable="false" readable="true" name="Parent" type="GstBin*"/>
|
||||
<field cname="priv" access="private" writeable="false" readable="false" name="Priv" type="GstInsertBinPrivate*">
|
||||
<warning>missing glib:type-name</warning>
|
||||
</field>
|
||||
<signal name="AppendEvent" cname="append" when="last">
|
||||
<return-type type="void"/>
|
||||
<parameters>
|
||||
<parameter name="_object" type="GstElement*"/>
|
||||
<parameter name="p0" type="gpointer"/>
|
||||
<parameter name="p1" type="gpointer"/>
|
||||
</parameters>
|
||||
<warning>Signal renamed because of existing method with same name</warning>
|
||||
</signal>
|
||||
<signal name="InsertAfterEvent" cname="insert-after" when="last">
|
||||
<return-type type="void"/>
|
||||
<parameters>
|
||||
<parameter name="_object" type="GstElement*"/>
|
||||
<parameter name="p0" type="GstElement*"/>
|
||||
<parameter name="p1" type="gpointer"/>
|
||||
<parameter name="p2" type="gpointer"/>
|
||||
</parameters>
|
||||
<warning>Signal renamed because of existing method with same name</warning>
|
||||
</signal>
|
||||
<signal name="InsertBeforeEvent" cname="insert-before" when="last">
|
||||
<return-type type="void"/>
|
||||
<parameters>
|
||||
<parameter name="_object" type="GstElement*"/>
|
||||
<parameter name="p0" type="GstElement*"/>
|
||||
<parameter name="p1" type="gpointer"/>
|
||||
<parameter name="p2" type="gpointer"/>
|
||||
</parameters>
|
||||
<warning>Signal renamed because of existing method with same name</warning>
|
||||
</signal>
|
||||
<signal name="PrependEvent" cname="prepend" when="last">
|
||||
<return-type type="void"/>
|
||||
<parameters>
|
||||
<parameter name="_object" type="GstElement*"/>
|
||||
<parameter name="p0" type="gpointer"/>
|
||||
<parameter name="p1" type="gpointer"/>
|
||||
</parameters>
|
||||
<warning>Signal renamed because of existing method with same name</warning>
|
||||
</signal>
|
||||
<signal name="RemoveEvent" cname="remove" when="last">
|
||||
<return-type type="void"/>
|
||||
<parameters>
|
||||
<parameter name="_object" type="GstElement*"/>
|
||||
<parameter name="p0" type="gpointer"/>
|
||||
<parameter name="p1" type="gpointer"/>
|
||||
</parameters>
|
||||
<warning>Signal renamed because of existing method with same name</warning>
|
||||
</signal>
|
||||
</object>
|
||||
<struct name="InsertBinPrivate" cname="GstInsertBinPrivate" opaque="true" hidden="true"/>
|
||||
<object name="Global" cname="GstInsertBinGlobal" opaque="true"/>
|
||||
<object name="Constants" cname="GstInsertBinConstants" opaque="true"/>
|
||||
</namespace>
|
||||
<namespace name="GstMpegts" library="gstmpegts-1.0">
|
||||
<enum name="ATSCDescriptorType" cname="GstMpegtsATSCDescriptorType" type="enum">
|
||||
<member cname="GST_MTS_DESC_ATSC_STUFFING" name="Stuffing" value="128"/>
|
||||
|
@ -17447,7 +17328,7 @@
|
|||
<field cname="symbol_rate" access="public" writeable="true" readable="true" name="SymbolRate" type="guint32"/>
|
||||
<field cname="fec_inner" access="public" writeable="true" readable="true" name="FecInner" type="GstMpegtsDVBCodeRate"/>
|
||||
</struct>
|
||||
<boxed name="Section" cname="GstMpegtsSection" opaque="true" hidden="false">
|
||||
<boxed name="Section" cname="GstMpegtsSection" opaque="false" hidden="false">
|
||||
<method name="GetType" cname="gst_mpegts_section_get_type" shared="true">
|
||||
<return-type type="GType"/>
|
||||
</method>
|
||||
|
@ -18946,8 +18827,8 @@
|
|||
<constant value="online-service" ctype="gchar*" gtype="gchar*" name="ENCODING_CATEGORY_ONLINE_SERVICE"/>
|
||||
<constant value="storage-editing" ctype="gchar*" gtype="gchar*" name="ENCODING_CATEGORY_STORAGE_EDITING"/>
|
||||
<constant value="1" ctype="gint" gtype="gint" name="PLUGINS_BASE_VERSION_MAJOR"/>
|
||||
<constant value="91" ctype="gint" gtype="gint" name="PLUGINS_BASE_VERSION_MICRO"/>
|
||||
<constant value="3" ctype="gint" gtype="gint" name="PLUGINS_BASE_VERSION_MINOR"/>
|
||||
<constant value="0" ctype="gint" gtype="gint" name="PLUGINS_BASE_VERSION_MICRO"/>
|
||||
<constant value="4" ctype="gint" gtype="gint" name="PLUGINS_BASE_VERSION_MINOR"/>
|
||||
<constant value="0" ctype="gint" gtype="gint" name="PLUGINS_BASE_VERSION_NANO"/>
|
||||
</object>
|
||||
</namespace>
|
||||
|
@ -25487,7 +25368,7 @@
|
|||
<parameters/>
|
||||
</method>
|
||||
</struct>
|
||||
<struct name="VideoGLTextureUploadMeta" cname="GstVideoGLTextureUploadMeta" opaque="true" hidden="false">
|
||||
<struct name="VideoGLTextureUploadMeta" cname="GstVideoGLTextureUploadMeta" opaque="false" hidden="false">
|
||||
<field cname="meta" access="public" writeable="true" readable="true" name="Meta" type="GstMeta">
|
||||
<warning>missing glib:type-name</warning>
|
||||
</field>
|
||||
|
|
|
@ -24,6 +24,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
|||
<!-- Error with array -->
|
||||
<attr path="/api/namespace/object[@cname='GstGlobal']/method[@cname='gst_formats_contains']" name="hidden">true</attr>
|
||||
<!-- MiniObject issues -->
|
||||
<attr path="/api/namespace/struct[@cname='GstMiniObject']" name="opaque">true</attr>
|
||||
<attr path="/api/namespace/struct[@cname='GstMiniObject']/field[@cname='copy']" name="type">gpointer</attr>
|
||||
<attr path="/api/namespace/struct[@cname='GstMiniObject']/field[@cname='free']" name="type">gpointer</attr>
|
||||
<attr path="/api/namespace/struct[@cname='GstMiniObject']/field[@cname='dispose']" name="type">gpointer</attr>
|
||||
|
@ -46,14 +47,13 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
|||
<attr path="/api/namespace/object[@cname='GstBin']/field[@cname='element']" name="hidden">true</attr>
|
||||
<attr path="/api/namespace/object[@cname='GstPipeline']/field[@cname='bin']" name="hidden">true</attr>
|
||||
<!-- add opaque attribute to all structs which need special handling -->
|
||||
<change-node-type path="/api//namespace//boxed[field/@cname='mini_object']">struct</change-node-type>
|
||||
<attr path="/api/namespace//struct[field/@cname='mini_object']" name="opaque">true</attr>
|
||||
<change-node-type path="/api/namespace//boxed[@cname='GstStructure']">struct</change-node-type>
|
||||
<attr path="/api/namespace/struct[@cname='GstStructure']" name="opaque">true</attr>
|
||||
<attr path="/api/namespace//boxed[field[@type='GstMiniObject']]" name="opaque">true</attr>
|
||||
<attr path="/api/namespace//boxed[field[@type='GstMiniObject']]" name="parent">GstMiniObject</attr>
|
||||
<attr path="/api/namespace//boxed/field[@type='GstMiniObject']" name="hidden">true</attr>
|
||||
<attr path="/api/namespace/boxed[@cname='GstStructure']" name="opaque">true</attr>
|
||||
<attr path="/api/namespace/struct[@cname='GstRTSPMessage']" name="opaque">true</attr>
|
||||
<change-node-type path="/api/namespace//boxed[@cname='GstIterator']">struct</change-node-type>
|
||||
<attr path="/api/namespace/struct[@cname='GstIterator']" name="opaque">true</attr>
|
||||
<attr path="/api/namespace/struct[@cname='GstIterator']/method[@cname='gst_iterator_next']" name="hidden">true</attr>
|
||||
<attr path="/api/namespace/boxed[@cname='GstIterator']" name="opaque">true</attr>
|
||||
<attr path="/api/namespace/boxed[@cname='GstIterator']/method[@cname='gst_iterator_next']" name="hidden">true</attr>
|
||||
<remove-node path="/api/namespace/boxed[@cname='GstStructure']/field[@cname='name']" />
|
||||
<!-- Fix for GstChildProxy -->
|
||||
<attr path="/api/namespace/interface[@cname='GstChildProxy']/method[@cname='gst_child_proxy_get_property']" name="hidden">1</attr>
|
||||
|
@ -82,10 +82,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
|||
<attr path="/api/namespace/struct[@cname='GstClockEntry']/field[@cname='destroy_data']" name="hidden">true</attr>
|
||||
<attr path="/api/namespace/object[@cname='GstTask']/field[@cname='notify']" name="hidden">true</attr>
|
||||
|
||||
<!-- Add miniobject methods to all miniobject types -->
|
||||
<copy-node path="/api/namespace/struct[@cname='GstMiniObject']//method">/api/namespace//boxed[field/@cname='mini_object']</copy-node>
|
||||
<attr path="/api/namespace/struct[@cname='GstMiniObject']//method" name="hidden">true</attr>
|
||||
|
||||
<!-- hide user data; FIXME: already removed in 1.2 GIR file, remove when we update to this version -->
|
||||
<attr path="/api/namespace/object[@cname='GstBus']/method[@cname='gst_bus_sync_signal_handler']/parameters/parameter[@name='data']" name="hidden">1</attr>
|
||||
|
||||
|
@ -119,9 +115,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
|||
<move-node path="/api/namespace/object[@name='Global']//method[starts-with(@cname, 'gst_pad')]">/api/namespace/object[@cname='GstPad']</move-node>
|
||||
|
||||
<!-- Things implemented on our own -->
|
||||
<attr path="/api/namespace/struct[@cname='GstMessage']/method[@cname='gst_message_parse_error']" name="hidden">true</attr>
|
||||
<attr path="/api/namespace/struct[@cname='GstMessage']/method[@cname='gst_message_get_stream_status_object']" name="hidden">true</attr>
|
||||
<attr path="/api/namespace/struct[@cname='GstMessage']/method[@cname='gst_message_set_stream_status_object']" name="hidden">true</attr>
|
||||
<attr path="/api/namespace/boxed[@cname='GstMessage']/method[@cname='gst_message_parse_error']" name="hidden">true</attr>
|
||||
<attr path="/api/namespace/boxed[@cname='GstMessage']/method[@cname='gst_message_get_stream_status_object']" name="hidden">true</attr>
|
||||
<attr path="/api/namespace/boxed[@cname='GstMessage']/method[@cname='gst_message_set_stream_status_object']" name="hidden">true</attr>
|
||||
|
||||
<!-- GstVideo -->
|
||||
<attr path="/api/namespace/boxed[@cname='GstVideoCodecState']/field[@cname='padding']" name="type">gpointer</attr>
|
||||
|
@ -192,6 +188,10 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
|||
<remove-attr path="//object[@cname='GstMpegtsGlobal']//method//return-type[@type='GPtrArray']" name="null_term_array"/>
|
||||
<remove-attr path="//boxed[@cname='GstMpegtsDescriptor']//method//parameter[@type='GPtrArray***']" name="array"/>
|
||||
<remove-attr path="//boxed[@cname='GstMpegtsDescriptor']//method//parameter[@type='GPtrArray***']" name="null_term_array"/>
|
||||
<attr path="//method[@cname='gst_mini_object_replace']" name="hidden">true</attr>
|
||||
<attr path="//method[@cname='gst_mini_object_take']" name="hidden">true</attr>
|
||||
<attr path="//struct[@cname='GstVideoGLTextureUploadMeta']" name="nohash">true</attr>
|
||||
<attr path="//struct[@cname='GstVideoGLTextureUploadMeta']" name="noequals">true</attr>
|
||||
|
||||
<!-- No way to correctly generate these without the element type -->
|
||||
<attr path="//boxed[@cname='GstMpegtsDescriptor']//method[parameters/parameter[@type='GArray***']]" name="hidden">true</attr>
|
||||
|
|
Loading…
Reference in a new issue