예제 #1
0
        public static string RtspOptionsAsText(Gst.Rtsp.RTSPMethod options)
        {
            IntPtr raw_ret = gst_rtsp_options_as_text((int)options);
            string ret     = GLib.Marshaller.PtrToStringGFree(raw_ret);

            return(ret);
        }
예제 #2
0
        public static string RtspMethodAsText(Gst.Rtsp.RTSPMethod method)
        {
            IntPtr raw_ret = gst_rtsp_method_as_text((int)method);
            string ret     = GLib.Marshaller.Utf8PtrToString(raw_ret);

            return(ret);
        }
예제 #3
0
        public static Gst.Rtsp.RTSPMethod RtspFindMethod(string method)
        {
            IntPtr native_method = GLib.Marshaller.StringToPtrGStrdup(method);
            int    raw_ret       = gst_rtsp_find_method(native_method);

            Gst.Rtsp.RTSPMethod ret = (Gst.Rtsp.RTSPMethod)raw_ret;
            GLib.Marshaller.Free(native_method);
            return(ret);
        }
예제 #4
0
        public static Gst.Rtsp.RTSPMethod RtspOptionsFromText(string options)
        {
            IntPtr native_options = GLib.Marshaller.StringToPtrGStrdup(options);
            int    raw_ret        = gst_rtsp_options_from_text(native_options);

            Gst.Rtsp.RTSPMethod ret = (Gst.Rtsp.RTSPMethod)raw_ret;
            GLib.Marshaller.Free(native_options);
            return(ret);
        }
예제 #5
0
        public Gst.Rtsp.RTSPResult InitRequest(Gst.Rtsp.RTSPMethod method, string uri)
        {
            IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal(System.Runtime.InteropServices.Marshal.SizeOf(this));

            System.Runtime.InteropServices.Marshal.StructureToPtr(this, this_as_native, false);
            IntPtr native_uri = GLib.Marshaller.StringToPtrGStrdup(uri);
            int    raw_ret    = gst_rtsp_message_init_request(this_as_native, (int)method, native_uri);

            Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult)raw_ret;
            ReadNative(this_as_native, ref this);
            System.Runtime.InteropServices.Marshal.FreeHGlobal(this_as_native);
            GLib.Marshaller.Free(native_uri);
            return(ret);
        }
예제 #6
0
        public Gst.Rtsp.RTSPResult ParseRequest(out Gst.Rtsp.RTSPMethod method, out string uri, out Gst.Rtsp.RTSPVersion version)
        {
            IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal(System.Runtime.InteropServices.Marshal.SizeOf(this));

            System.Runtime.InteropServices.Marshal.StructureToPtr(this, this_as_native, false);
            int    native_method;
            IntPtr native_uri;
            int    native_version;
            int    raw_ret = gst_rtsp_message_parse_request(this_as_native, out native_method, out native_uri, out native_version);

            Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult)raw_ret;
            ReadNative(this_as_native, ref this);
            System.Runtime.InteropServices.Marshal.FreeHGlobal(this_as_native);
            method  = (Gst.Rtsp.RTSPMethod)native_method;
            uri     = GLib.Marshaller.Utf8PtrToString(native_uri);
            version = (Gst.Rtsp.RTSPVersion)native_version;
            return(ret);
        }
예제 #7
0
        public static Gst.Rtsp.RTSPResult RtspMessageNewRequest(out Gst.Rtsp.RTSPMessage msg, Gst.Rtsp.RTSPMethod method, string uri)
        {
            IntPtr native_msg = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(Gst.Rtsp.RTSPMessage)));
            IntPtr native_uri = GLib.Marshaller.StringToPtrGStrdup(uri);
            int    raw_ret    = gst_rtsp_message_new_request(native_msg, (int)method, native_uri);

            Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult)raw_ret;
            msg = Gst.Rtsp.RTSPMessage.New(native_msg);
            Marshal.FreeHGlobal(native_msg);
            GLib.Marshaller.Free(native_uri);
            return(ret);
        }