public Gst.ParseContext Copy() { IntPtr raw_ret = gst_parse_context_copy(Handle); Gst.ParseContext ret = raw_ret == IntPtr.Zero ? null : (Gst.ParseContext)GLib.Opaque.GetOpaque(raw_ret, typeof(Gst.ParseContext), true); return(ret); }
public static unsafe Gst.Element LaunchvFull(string[] argv, Gst.ParseContext context, Gst.ParseFlags flags) { int cnt_argv = argv == null ? 0 : argv.Length; IntPtr[] native_argv = new IntPtr [cnt_argv + 1]; for (int i = 0; i < cnt_argv; i++) { native_argv [i] = GLib.Marshaller.StringToPtrGStrdup(argv[i]); } native_argv [cnt_argv] = IntPtr.Zero; IntPtr error = IntPtr.Zero; IntPtr raw_ret = gst_parse_launchv_full(native_argv, context == null ? IntPtr.Zero : context.Handle, (int)flags, out error); Gst.Element ret = GLib.Object.GetObject(raw_ret) as Gst.Element; for (int i = 0; i < native_argv.Length - 1; i++) { argv [i] = GLib.Marshaller.Utf8PtrToString(native_argv[i]); GLib.Marshaller.Free(native_argv[i]); } if (error != IntPtr.Zero) { throw new GLib.GException(error); } return(ret); }
public static unsafe Gst.Element LaunchFull(string pipeline_description, Gst.ParseContext context, Gst.ParseFlags flags) { IntPtr native_pipeline_description = GLib.Marshaller.StringToPtrGStrdup(pipeline_description); IntPtr error = IntPtr.Zero; IntPtr raw_ret = gst_parse_launch_full(native_pipeline_description, context == null ? IntPtr.Zero : context.Handle, (int)flags, out error); Gst.Element ret = GLib.Object.GetObject(raw_ret) as Gst.Element; GLib.Marshaller.Free(native_pipeline_description); if (error != IntPtr.Zero) { throw new GLib.GException(error); } return(ret); }
public static unsafe Gst.Element BinFromDescriptionFull(string bin_description, bool ghost_unlinked_pads, Gst.ParseContext context, Gst.ParseFlags flags) { IntPtr native_bin_description = GLib.Marshaller.StringToPtrGStrdup(bin_description); IntPtr error = IntPtr.Zero; IntPtr raw_ret = gst_parse_bin_from_description_full(native_bin_description, ghost_unlinked_pads, context == null ? IntPtr.Zero : context.Handle, (int)flags, out error); Gst.Element ret = GLib.Object.GetObject(raw_ret) as Gst.Element; GLib.Marshaller.Free(native_bin_description); if (error != IntPtr.Zero) { throw new GLib.GException(error); } return(ret); }