diff --git a/vapi/clutter-gst-1.0.vapi b/vapi/clutter-gst-1.0.vapi
index 00df0e4..2443f66 100644
--- a/vapi/clutter-gst-1.0.vapi
+++ b/vapi/clutter-gst-1.0.vapi
@@ -16,6 +16,7 @@ namespace ClutterGst {
 		public bool check(int major, int minor, int micro);
 	}
 	public class VideoSink : Gst.BaseSink {
+		[CCode (type = "GstElement*", has_construct_function = false)]
 		public VideoSink (Clutter.Texture texture);
 		[NoAccessorMethod]
 		public Clutter.Texture texture { get; set; }
@@ -23,9 +24,12 @@ namespace ClutterGst {
 		public int update_priority { get; set; }
 	}
 	public class VideoTexture : Clutter.Texture, Clutter.Media {
-		[CCode (type = "ClutterActor*")]
+		[CCode (type = "ClutterActor*", has_construct_function = false)]
 		public VideoTexture ();
-		public unowned Gst.Element get_pipeline ();
+		[CCode (type = "GstElement*")]
+		public unowned Gst.Pipeline get_pipeline ();
+		public string user_agent { owned get; set; }
+		public Cogl.Handle idle_material { get; set; }
 	}
 	public static Clutter.InitError init ([CCode (array_length_pos = 0.9)] ref unowned string[] argv);
 	public static Clutter.InitError init_with_args ([CCode (array_length_pos = 0.9)] ref unowned string[] argv, string parameter_string, [CCode (array_length = false)] GLib.OptionEntry[] entries, string translation_domain) throws GLib.OptionError;
