Fix compilation errors

This commit is contained in:
Stephan Sundermann 2014-07-20 03:32:48 +02:00
parent 663a2b0872
commit b1f6e5bbe2
6 changed files with 121 additions and 114 deletions

View file

@ -35,11 +35,11 @@ generated-stamp: $(API)
$(GAPI_CODEGEN) --generate $(srcdir)/$(API) $(GLIB_SHARP_CFLAGS) \
--outdir=generated \
--glue-filename=$(GLUEDIR)/generated.c --gluelib-name=libgstreamersharpglue-1.0.0.dll \
--glue-includes=gst/gst.h,`cd $(GST_INCLUDEDIR);find gst -type f -name "*.h" | tr "\n" ","` \
--glue-includes=gst/gst.h,`cd $(GST_INCLUDEDIR);find gst -type f -name "*.h" -not -path "gst/gl/*" | tr "\n" ","` \
--assembly-name=$(ASSEMBLY_NAME) && touch generated-stamp
$(DLL): $(build_sources) generated-stamp
$(CSC) -nowarn:169 -unsafe -target:library $(GLIB_SHARP_LIBS) \
$(CSC) -nowarn:169 -nowarn:108 -nowarn:114 -unsafe -target:library $(GLIB_SHARP_LIBS) \
$(build_sources) generated/*/*.cs -out:$(DLL)
install-data-local:

50
sources/custom/Buffer.cs Normal file
View file

@ -0,0 +1,50 @@
// 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.Collections;
using System.Runtime.InteropServices;
partial class Buffer {
[DllImport("libgstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
static extern UIntPtr gst_buffer_extract(IntPtr raw, UIntPtr offset, byte[] dest, UIntPtr size);
public ulong Extract(ulong offset, ref byte[] dest) {
UIntPtr raw_ret = gst_buffer_extract(Handle, new UIntPtr (offset), dest, new UIntPtr ((ulong)dest.Length));
ulong ret = (ulong) raw_ret;
return ret;
}
[DllImport("libgstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
static extern void gst_buffer_extract_dup(IntPtr raw, UIntPtr offset, UIntPtr size, out IntPtr dest, out UIntPtr dest_size);
public ulong ExtractDup(ulong offset, ulong size, out byte[] dest) {
UIntPtr native_dest_size;
IntPtr ptr;
gst_buffer_extract_dup(Handle, new UIntPtr (offset), new UIntPtr (size), out ptr, out native_dest_size);
byte[] bytes = new byte[(ulong)native_dest_size];
Marshal.Copy (ptr, bytes, 0, (int)native_dest_size);
dest = bytes;
GLib.Marshaller.Free (ptr);
return (ulong) native_dest_size;
}
}
}

View file

@ -114,7 +114,7 @@ namespace Gst {
~Iterator () {
if (Raw != IntPtr.Zero)
Free ();
Free (Handle);
}
}

View file

@ -8,6 +8,8 @@ libgstreamersharpglue_1_0_0_la_LDFLAGS = -module -avoid-version -no-undefined
libgstreamersharpglue_1_0_0_la_LIBADD = $(GST_LIBS)
libgstreamersharpglue_1_0_0_la_CPPFLAGS = -DGST_USE_UNSTABLE_API
INCLUDES = $(GST_CFLAGS) -I$(top_srcdir)
libgstreamersharpglue.dll: $(libgstreamersharpglue_1_0_0_la_OBJECTS) libgstreamersharpglue.rc libgstreamersharpglue.def

View file

@ -16241,18 +16241,18 @@
</enum>
<enum name="DVBCodeRate" cname="GstMpegtsDVBCodeRate" type="enum">
<member cname="GST_MPEGTS_FEC_NONE" name="None" value="0"/>
<member cname="GST_MPEGTS_FEC_1_2" name="12" value="1"/>
<member cname="GST_MPEGTS_FEC_2_3" name="23" value="2"/>
<member cname="GST_MPEGTS_FEC_3_4" name="34" value="3"/>
<member cname="GST_MPEGTS_FEC_4_5" name="45" value="4"/>
<member cname="GST_MPEGTS_FEC_5_6" name="56" value="5"/>
<member cname="GST_MPEGTS_FEC_6_7" name="67" value="6"/>
<member cname="GST_MPEGTS_FEC_7_8" name="78" value="7"/>
<member cname="GST_MPEGTS_FEC_8_9" name="89" value="8"/>
<member cname="GST_MPEGTS_FEC_1_2" name="_112" value="1"/>
<member cname="GST_MPEGTS_FEC_2_3" name="_223" value="2"/>
<member cname="GST_MPEGTS_FEC_3_4" name="_334" value="3"/>
<member cname="GST_MPEGTS_FEC_4_5" name="_445" value="4"/>
<member cname="GST_MPEGTS_FEC_5_6" name="_556" value="5"/>
<member cname="GST_MPEGTS_FEC_6_7" name="_667" value="6"/>
<member cname="GST_MPEGTS_FEC_7_8" name="_778" value="7"/>
<member cname="GST_MPEGTS_FEC_8_9" name="_889" value="8"/>
<member cname="GST_MPEGTS_FEC_AUTO" name="Auto" value="9"/>
<member cname="GST_MPEGTS_FEC_3_5" name="35" value="10"/>
<member cname="GST_MPEGTS_FEC_9_10" name="910" value="11"/>
<member cname="GST_MPEGTS_FEC_2_5" name="25" value="12"/>
<member cname="GST_MPEGTS_FEC_3_5" name="_335" value="10"/>
<member cname="GST_MPEGTS_FEC_9_10" name="_9910" value="11"/>
<member cname="GST_MPEGTS_FEC_2_5" name="_225" value="12"/>
</enum>
<enum name="DVBDescriptorType" cname="GstMpegtsDVBDescriptorType" type="enum">
<member cname="GST_MTS_DESC_DVB_NETWORK_NAME" name="NetworkName" value="64"/>
@ -16544,9 +16544,9 @@
<member cname="GST_MPEGTS_POLARIZATION_CIRCULAR_RIGHT" name="CircularRight" value="3"/>
</enum>
<enum name="SatelliteRolloff" cname="GstMpegtsSatelliteRolloff" type="enum">
<member cname="GST_MPEGTS_ROLLOFF_35" name="35" value="0"/>
<member cname="GST_MPEGTS_ROLLOFF_20" name="20" value="1"/>
<member cname="GST_MPEGTS_ROLLOFF_25" name="25" value="2"/>
<member cname="GST_MPEGTS_ROLLOFF_35" name="_35" value="0"/>
<member cname="GST_MPEGTS_ROLLOFF_20" name="_20" value="1"/>
<member cname="GST_MPEGTS_ROLLOFF_25" name="_25" value="2"/>
<member cname="GST_MPEGTS_ROLLOFF_RESERVED" name="Reserved" value="3"/>
<member cname="GST_MPEGTS_ROLLOFF_AUTO" name="Auto" value="4"/>
</enum>
@ -16632,8 +16632,8 @@
<member cname="GST_MTS_TABLE_ID_CONDITIONAL_ACCESS" name="ConditionalAccess" value="1"/>
<member cname="GST_MTS_TABLE_ID_TS_PROGRAM_MAP" name="TsProgramMap" value="2"/>
<member cname="GST_MTS_TABLE_ID_TS_DESCRIPTION" name="TsDescription" value="3"/>
<member cname="GST_MTS_TABLE_ID_14496_SCENE_DESCRIPTION" name="14496SceneDescription" value="4"/>
<member cname="GST_MTS_TABLE_ID_14496_OBJET_DESCRIPTOR" name="14496ObjetDescriptor" value="5"/>
<member cname="GST_MTS_TABLE_ID_14496_SCENE_DESCRIPTION" name="_1449614496SceneDescription" value="4"/>
<member cname="GST_MTS_TABLE_ID_14496_OBJET_DESCRIPTOR" name="_1449614496ObjetDescriptor" value="5"/>
<member cname="GST_MTS_TABLE_ID_METADATA" name="Metadata" value="6"/>
<member cname="GST_MTS_TABLE_ID_IPMP_CONTROL_INFORMATION" name="IpmpControlInformation" value="7"/>
<member cname="GST_MTS_TABLE_ID_DSM_CC_MULTIPROTO_ENCAPSULATED_DATA" name="DsmCcMultiprotoEncapsulatedData" value="58"/>
@ -16704,14 +16704,14 @@
<member cname="GST_MPEGTS_STREAM_TYPE_IPMP_STREAM" name="IpmpStream" value="127"/>
</enum>
<enum name="TerrestrialGuardInterval" cname="GstMpegtsTerrestrialGuardInterval" type="enum">
<member cname="GST_MPEGTS_GUARD_INTERVAL_1_32" name="132" value="0"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_1_16" name="116" value="1"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_1_8" name="18" value="2"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_1_4" name="14" value="3"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_1_32" name="_1132" value="0"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_1_16" name="_1116" value="1"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_1_8" name="_118" value="2"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_1_4" name="_114" value="3"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_AUTO" name="Auto" value="4"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_1_128" name="1128" value="5"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_19_128" name="19128" value="6"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_19_256" name="19256" value="7"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_1_128" name="_11128" value="5"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_19_128" name="_1919128" value="6"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_19_256" name="_1919256" value="7"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_PN420" name="Pn420" value="8"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_PN595" name="Pn595" value="9"/>
<member cname="GST_MPEGTS_GUARD_INTERVAL_PN945" name="Pn945" value="10"/>
@ -16720,17 +16720,17 @@
<member cname="GST_MPEGTS_HIERARCHY_NONE" name="None" value="0"/>
<member cname="GST_MPEGTS_HIERARCHY_1" name="GSTMPEGTSHIERARCHY1" value="1"/>
<member cname="GST_MPEGTS_HIERARCHY_2" name="GSTMPEGTSHIERARCHY2" value="2"/>
<member cname="GST_MPEGTS_HIERARCHY_4" name="4" value="3"/>
<member cname="GST_MPEGTS_HIERARCHY_4" name="_4" value="3"/>
<member cname="GST_MPEGTS_HIERARCHY_AUTO" name="Auto" value="4"/>
</enum>
<enum name="TerrestrialTransmissionMode" cname="GstMpegtsTerrestrialTransmissionMode" type="enum">
<member cname="GST_MPEGTS_TRANSMISSION_MODE_2K" name="2k" value="0"/>
<member cname="GST_MPEGTS_TRANSMISSION_MODE_8K" name="8k" value="1"/>
<member cname="GST_MPEGTS_TRANSMISSION_MODE_2K" name="_2k" value="0"/>
<member cname="GST_MPEGTS_TRANSMISSION_MODE_8K" name="_8k" value="1"/>
<member cname="GST_MPEGTS_TRANSMISSION_MODE_AUTO" name="Auto" value="2"/>
<member cname="GST_MPEGTS_TRANSMISSION_MODE_4K" name="4k" value="3"/>
<member cname="GST_MPEGTS_TRANSMISSION_MODE_1K" name="1k" value="4"/>
<member cname="GST_MPEGTS_TRANSMISSION_MODE_16K" name="16k" value="5"/>
<member cname="GST_MPEGTS_TRANSMISSION_MODE_32K" name="32k" value="6"/>
<member cname="GST_MPEGTS_TRANSMISSION_MODE_4K" name="_4k" value="3"/>
<member cname="GST_MPEGTS_TRANSMISSION_MODE_1K" name="_1k" value="4"/>
<member cname="GST_MPEGTS_TRANSMISSION_MODE_16K" name="_16k" value="5"/>
<member cname="GST_MPEGTS_TRANSMISSION_MODE_32K" name="_32k" value="6"/>
<member cname="GST_MPEGTS_TRANSMISSION_MODE_C1" name="C1" value="7"/>
<member cname="GST_MPEGTS_TRANSMISSION_MODE_C3780" name="C3780" value="8"/>
</enum>
@ -17447,7 +17447,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="false" hidden="false">
<boxed name="Section" cname="GstMpegtsSection" opaque="true" hidden="false">
<method name="GetType" cname="gst_mpegts_section_get_type" shared="true">
<return-type type="GType"/>
</method>
@ -19224,7 +19224,7 @@
</enum>
<enum name="RTPPayload" cname="GstRTPPayload" type="enum">
<member cname="GST_RTP_PAYLOAD_PCMU" name="Pcmu" value="0"/>
<member cname="GST_RTP_PAYLOAD_1016" name="1016" value="1"/>
<member cname="GST_RTP_PAYLOAD_1016" name="_1016" value="1"/>
<member cname="GST_RTP_PAYLOAD_G721" name="G721" value="2"/>
<member cname="GST_RTP_PAYLOAD_GSM" name="Gsm" value="3"/>
<member cname="GST_RTP_PAYLOAD_G723" name="G723" value="4"/>
@ -20683,8 +20683,8 @@
</enum>
<enum name="RTSPVersion" cname="GstRTSPVersion" type="enum" gtype="gst_rtsp_version_get_type">
<member cname="GST_RTSP_VERSION_INVALID" name="Invalid" value="0"/>
<member cname="GST_RTSP_VERSION_1_0" name="10" value="16"/>
<member cname="GST_RTSP_VERSION_1_1" name="11" value="17"/>
<member cname="GST_RTSP_VERSION_1_0" name="_110" value="16"/>
<member cname="GST_RTSP_VERSION_1_1" name="_111" value="17"/>
</enum>
<enum name="RTSPEvent" cname="GstRTSPEvent" type="flags" gtype="gst_rtsp_event_get_type">
<member cname="GST_RTSP_EV_READ" name="Read" value="1"/>
@ -23804,8 +23804,8 @@
</enum>
<enum name="VideoColorRange" cname="GstVideoColorRange" type="enum" gtype="gst_video_color_range_get_type">
<member cname="GST_VIDEO_COLOR_RANGE_UNKNOWN" name="Unknown" value="0"/>
<member cname="GST_VIDEO_COLOR_RANGE_0_255" name="0255" value="1"/>
<member cname="GST_VIDEO_COLOR_RANGE_16_235" name="16235" value="2"/>
<member cname="GST_VIDEO_COLOR_RANGE_0_255" name="_00255" value="1"/>
<member cname="GST_VIDEO_COLOR_RANGE_16_235" name="_1616235" value="2"/>
</enum>
<enum name="VideoFormat" cname="GstVideoFormat" type="enum" gtype="gst_video_format_get_type">
<member cname="GST_VIDEO_FORMAT_UNKNOWN" name="Unknown" value="0"/>
@ -25487,7 +25487,7 @@
<parameters/>
</method>
</struct>
<struct name="VideoGLTextureUploadMeta" cname="GstVideoGLTextureUploadMeta" opaque="false" hidden="false">
<struct name="VideoGLTextureUploadMeta" cname="GstVideoGLTextureUploadMeta" opaque="true" hidden="false">
<field cname="meta" access="public" writeable="true" readable="true" name="Meta" type="GstMeta">
<warning>missing glib:type-name</warning>
</field>

View file

@ -45,14 +45,14 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
<attr path="/api/namespace/object[@cname='GstElement']/field[@cname='object']" name="hidden">true</attr>
<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 native 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="native">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="native">true</attr>
<attr path="/api/namespace/struct[@cname='GstRTSPMessage']" name="native">true</attr>
<attr path="/api/namespace/struct[@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="native">true</attr>
<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>
<remove-node path="/api/namespace/boxed[@cname='GstStructure']/field[@cname='name']" />
<!-- Fix for GstChildProxy -->
@ -61,14 +61,13 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
<!-- FIXME: array handling -->
<attr path="/api/namespace/struct[@cname='GstRTCPPacket']/method[@cname='gst_rtcp_packet_sdes_copy_entry']" name="hidden">true</attr>
<attr path="/api/namespace/struct[@cname='GstRTCPPacket']/method[@cname='gst_rtcp_packet_sdes_get_entry']" name="hidden">true</attr>
<attr path="/api/namespace/struct[@cname='GstRTCPPacket']/method[@cname='gst_rtcp_packet_sdes_extension_data']" name="hidden">true</attr>
<attr path="/api/namespace/struct[@cname='GstRTPBuffer']/method[@cname='gst_rtp_buffer_get_extension_data']" name="hidden">true</attr>
<attr path="/api/namespace/struct[@cname='GstRTPBuffer']/method[@cname='gst_rtp_buffer_get_extension_onebyte_header']" name="hidden">true</attr>
<attr path="/api/namespace/struct[@cname='GstRTPBuffer']/method[@cname='gst_rtp_buffer_get_extension_twobytes_header']" name="hidden">true</attr>
<attr path="/api/namespace/struct[@cname='GstRTSPMessage']/method[@cname='gst_rtsp_message_get_body']" name="hidden">true</attr>
<attr path="/api/namespace/struct[@cname='GstRTSPMessage']/method[@cname='gst_rtsp_message_steal_body']" name="hidden">true</attr>
<attr path="/api/namespace/struct[@cname='GstFFTF32']/method[@cname='gst_fft_f32_fft']" name="hidden">true</attr>
<attr path="/api/namespace/struct[@cname='GstFFTF32']/method[@cname='gst_fft_f32_window']" name="hidden">true</attr>
<attr path="//virtual_method[@cname='get_g_value_array']" name="hidden">true</attr>
<!-- Maybe some problems with the name -->
<remove-node path="/api/namespace/interface[@cname='GstURIHandler']/class_struct/method[@vm='get_type']" name="vm" />
<remove-node path="/api/namespace/interface[@cname='GstURIHandler']/virtual_method[@cname='get_type']" name="hidden" />
@ -83,54 +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>
<!-- These classes are not abstract but should not be instantiable from managed. FIXME: bug in gir metadata? -->
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstAllocator']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstAllocator']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstClock']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstClock']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstControlBinding']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstControlBinding']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstControlSource']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstControlSource']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstElement']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstElement']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstObject']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstObject']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstPluginFeature']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstPluginFeature']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstBaseParse']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstBaseParse']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstBaseSink']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstBaseSink']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstBaseSrc']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstBaseSrc']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstBaseTransform']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstBaseTransform']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstTagDemux']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstTagDemux']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstTagMux']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstTagMux']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstVideoDecoder']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstVideoDecoder']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstVideoEncoder']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstVideoEncoder']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstVideoFilter']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstVideoFilter']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstAudioDecoder']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstAudioDecoder']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstAudioEncoder']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstAudioEncoder']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstAudioFilter']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstAudioFilter']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstAudioRingBuffer']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstAudioRingBuffer']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstTimedValueControlSource']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstTimedValueControlSource']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstRTPBaseDepayload']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstRTPBaseDepayload']">protected</attr>
<remove-attr name="abstract" path="/api/namespace/object[@cname='GstRTPBasePayload']"/>
<attr name="defaultconstructoraccess" path="/api/namespace/object[@cname='GstRTPBasePayload']">protected</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>
@ -176,11 +127,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
<attr path="/api/namespace/boxed[@cname='GstVideoCodecState']/field[@cname='padding']" name="type">gpointer</attr>
<attr path="/api/namespace/object[@cname='GstVideoDecoder']/field[@cname='padding']" name="type">gpointer</attr>
<attr path="/api/namespace/object[@cname='GstVideoDecoder']/class_struct/field[@cname='padding']" name="type">gpointer</attr>
<attr path="/api/namespace/enum[@cname='GstVideoColorRange']/member[@name='0255']" name="name">EightBit</attr>
<attr path="/api/namespace/enum[@cname='GstVideoColorRange']/member[@name='16235']" name="name">SixteenBit</attr>
<attr path="/api/namespace/object[@cname='GstAdapter']/method[@cname='gst_adapter_copy']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='GstByteReader']" name="opaque">1</attr>
<remove-node path="/api/namespace//struct[@cname='GstByteReader']//method" />
<attr path="//struct[@name='VideoGLTextureUploadMeta']//field[@cname='user_data_copy' or @cname='user_data_free']" name="hidden">true</attr>
<!-- FIXME: remove when https://bugzilla.gnome.org/show_bug.cgi?id=709938 is fixed -->
<attr path="/api/namespace/interface[@cname='GstNavigation']/method[@cname='gst_navigation_query_parse_commands_length']/parameters/parameter[@name='n_cmds']" name="pass_as">out</attr>
@ -192,10 +141,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
<!-- Name clashes -->
<attr path="/api/namespace/struct[@cname='GstRTCPBuffer']/field[@cname='map']" name="name">MapInfo</attr>
<attr path="/api/namespace/struct[@cname='GstRTPBuffer']/field[@cname='map']" name="name">MapInfo</attr>
<!-- Enums starting with numbers -->
<attr path="/api/namespace/enum[@cname='GstRTPPayload']/member[@name='1016']" name="name">ThousandSixteen</attr>
<attr path="/api/namespace/enum[@cname='GstRTSPVersion']/member[@name='10']" name="name">Ten</attr>
<attr path="/api/namespace/enum[@cname='GstRTSPVersion']/member[@name='11']" name="name">Eleven</attr>
<!-- Namespace switches -->
<attr path="/api/namespace[@name='GstVideo']" name="name">Gst.Video</attr>
<attr path="/api/namespace[@name='GstAudio']" name="name">Gst.Audio</attr>
@ -211,7 +156,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
<attr path="/api/namespace[@name='GstRtsp']" name="name">Gst.Rtsp</attr>
<attr path="/api/namespace[@name='GstSdp']" name="name">Gst.Sdp</attr>
<!-- FIXME: Remove when https://bugzilla.gnome.org/show_bug.cgi?id=710001 is fixed -->
<attr path="/api/namespace" name="library">libgstreamer-1.0-0.dll</attr>
<attr path="/api/namespace[@name='Gst.Base']" name="library">libgstbase-1.0-0.dll</attr>
<attr path="/api/namespace[@name='Gst.Audio']" name="library">libgstaudio-1.0-0.dll</attr>
@ -227,18 +171,29 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
<attr path="/api/namespace[@name='Gst.Rtsp']" name="library">libgstrtsp-1.0-0.dll</attr>
<attr path="/api/namespace[@name='Gst.Sdp']" name="library">libgstsdp-1.0-0.dll</attr>
<!-- DoubleRange and Fraction are in Value.cs -->
<attr path="//struct[@name='DoubleRange' or @name='Fraction' or @name='IntRange' or @name='FractionRange']" name="hidden">true</attr>
<!-- AppSink fixes -->
<attr path="/api/namespace/object[@cname='GstAppSink']/signal[@cname='pull-sample']" name="hidden">true</attr>
<attr path="/api/namespace/object[@cname='GstAppSink']/signal[@cname='pull-preroll']" name="hidden">true</attr>
<add-node path="/api/namespace/object[@cname='GstAppSink']">
<method name="PullPreroll" cname="gst_app_sink_pull_preroll">
<return-type type="GstSample*" owned="true" />
<parameters/>
</method>
<method name="PullSample" cname="gst_app_sink_pull_sample">
<return-type type="GstSample*" owned="true" />
<parameters/>
</method>
</add-node>
<!-- MessageType should be uint -->
<attr path="//enum[@name='MessageType']/member[@cname='GST_MESSAGE_UNKNOWN']" name="value">0U</attr>
<!-- Extract is manually bound -->
<attr path="//method[@cname='gst_buffer_extract']" name="hidden">true</attr>
<attr path="//method[@cname='gst_buffer_extract_dup']" name="hidden">true</attr>
<!-- Introspection fails -->
<attr path="//object[@cname='GstBufferPool']/field[@cname='flushing']" name="type">gboolean</attr>
<remove-attr path="//boxed[@cname='GstMpegtsSection']//method//return-type[@type='GPtrArray']" name="array"/>
<remove-attr path="//boxed[@cname='GstMpegtsSection']//method//return-type[@type='GPtrArray']" name="null_term_array"/>
<remove-attr path="//object[@cname='GstMpegtsGlobal']//method//return-type[@type='GPtrArray']" name="array"/>
<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"/>
<!-- No way to correctly generate these without the element type -->
<attr path="//boxed[@cname='GstMpegtsDescriptor']//method[parameters/parameter[@type='GArray***']]" name="hidden">true</attr>
</metadata>