Exemple #1
0
        public static Gst.Sample ImageDataToImageSample(byte image_data, uint image_data_len, Gst.Tags.TagImageType image_type)
        {
            IntPtr raw_ret = gst_tag_image_data_to_image_sample(image_data, image_data_len, (int)image_type);

            Gst.Sample ret = raw_ret == IntPtr.Zero ? null : (Gst.Sample)GLib.Opaque.GetOpaque(raw_ret, typeof(Gst.Sample), true);
            return(ret);
        }
Exemple #2
0
        public static Gst.Sample PlaySinkConvertFrame(Gst.Element playsink, Gst.Caps caps)
        {
            IntPtr raw_ret = ges_play_sink_convert_frame(playsink == null ? IntPtr.Zero : playsink.Handle, caps == null ? IntPtr.Zero : caps.Handle);

            Gst.Sample ret = raw_ret == IntPtr.Zero ? null : (Gst.Sample)GLib.Opaque.GetOpaque(raw_ret, typeof(Gst.Sample), true);
            return(ret);
        }
Exemple #3
0
        public Gst.Sample PullPreroll()
        {
            IntPtr raw_ret = gst_app_sink_pull_preroll(Handle);

            Gst.Sample ret = raw_ret == IntPtr.Zero ? null : (Gst.Sample)GLib.Opaque.GetOpaque(raw_ret, typeof(Gst.Sample), true);
            return(ret);
        }
Exemple #4
0
        public Gst.Sample TryPullSample(ulong timeout)
        {
            IntPtr raw_ret = gst_app_sink_try_pull_sample(Handle, timeout);

            Gst.Sample ret = raw_ret == IntPtr.Zero ? null : (Gst.Sample)GLib.Opaque.GetOpaque(raw_ret, typeof(Gst.Sample), true);
            return(ret);
        }
Exemple #5
0
        public Gst.Sample GetThumbnailRgb24(int width, int height)
        {
            IntPtr raw_ret = ges_pipeline_get_thumbnail_rgb24(Handle, width, height);

            Gst.Sample ret = raw_ret == IntPtr.Zero ? null : (Gst.Sample)GLib.Opaque.GetOpaque(raw_ret, typeof(Gst.Sample), true);
            return(ret);
        }
        public Gst.FlowReturn PushSample(Gst.Sample sample)
        {
            int raw_ret = gst_app_src_push_sample(Handle, sample == null ? IntPtr.Zero : sample.Handle);

            Gst.FlowReturn ret = (Gst.FlowReturn)raw_ret;
            return(ret);
        }
Exemple #7
0
        public Gst.Sample GetThumbnail(Gst.Caps caps)
        {
            IntPtr raw_ret = ges_pipeline_get_thumbnail(Handle, caps == null ? IntPtr.Zero : caps.Handle);

            Gst.Sample ret = raw_ret == IntPtr.Zero ? null : (Gst.Sample)GLib.Opaque.GetOpaque(raw_ret, typeof(Gst.Sample), true);
            return(ret);
        }
Exemple #8
0
        public bool GetSampleIndex(string tag, uint index, out Gst.Sample sample)
        {
            IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup(tag);
            IntPtr native_sample;
            bool   raw_ret = gst_tag_list_get_sample_index(Handle, native_tag, index, out native_sample);
            bool   ret     = raw_ret;

            GLib.Marshaller.Free(native_tag);
            sample = native_sample == IntPtr.Zero ? null : (Gst.Sample)GLib.Opaque.GetOpaque(native_sample, typeof(Gst.Sample), true);
            return(ret);
        }
        private Gst.FlowReturn InternalPushSampleEvent(Gst.Sample sample)
        {
            PushSampleEventNativeDelegate unmanaged = null;

            unsafe {
                IntPtr *raw_ptr = (IntPtr *)(((long)this.LookupGType().GetThresholdType().GetClassPtr()) + (long)class_abi.GetFieldOffset("push_sample"));
                unmanaged = (PushSampleEventNativeDelegate)Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(PushSampleEventNativeDelegate));
            }
            if (unmanaged == null)
            {
                return((Gst.FlowReturn) 0);
            }

            int __result = unmanaged(this.Handle, sample == null ? IntPtr.Zero : sample.Handle);

            return((Gst.FlowReturn)__result);
        }
 protected virtual Gst.FlowReturn OnPushSampleEvent(Gst.Sample sample)
 {
     return(InternalPushSampleEvent(sample));
 }
Exemple #11
0
 void InvokeNative(Gst.Sample sample, IntPtr error)
 {
     native_cb(sample == null ? IntPtr.Zero : sample.Handle, error, __data);
 }
Exemple #12
0
 protected virtual Gst.FlowReturn OnPushSampleEvent(Gst.Sample _object)
 {
     return(InternalPushSampleEvent(_object));
 }