cheese r776 - in branches/cheese-vala: . src



Author: jhaitsma
Date: Mon Jun 23 06:03:32 2008
New Revision: 776
URL: http://svn.gnome.org/viewvc/cheese?rev=776&view=rev

Log:
Use add instead of add_many. add_many does not work correctly in vala yet


Modified:
   branches/cheese-vala/   (props changed)
   branches/cheese-vala/src/cheese-webcam.vala

Modified: branches/cheese-vala/src/cheese-webcam.vala
==============================================================================
--- branches/cheese-vala/src/cheese-webcam.vala	(original)
+++ branches/cheese-vala/src/cheese-webcam.vala	Mon Jun 23 06:03:32 2008
@@ -144,8 +144,12 @@
 		create_video_save_bin ();
 
 		pipeline = new Pipeline ("pipeline");
-
+		/* FIXME add_many does not work correctly yet
 		pipeline.add_many (video_display_bin, photo_save_bin);
+		*/
+		pipeline.add (video_display_bin);
+		pipeline.add (photo_save_bin);
+
 		bool ok;
 		ok = video_display_bin.link (photo_save_bin);
 
@@ -553,9 +557,19 @@
 		video_scale.set ("method", 1);
 
 		var video_sink = ElementFactory.make ("gconfvideosink", "video_sink");
-
+		/* FIXME add_many does not work correctly yet 
 		video_display_bin.add_many (webcam_source_bin, effect_filter, csp_post_effect, 
 					    tee, save_queue, video_display_queue, video_scale, video_sink);
+		*/
+		video_display_bin.add (webcam_source_bin);
+		video_display_bin.add (effect_filter);
+		video_display_bin.add (csp_post_effect);
+		video_display_bin.add (tee);
+		video_display_bin.add (save_queue);
+		video_display_bin.add (video_display_queue);
+		video_display_bin.add (video_scale);
+		video_display_bin.add (video_sink);
+		
 		bool ok;
 		ok = webcam_source_bin.link_many (effect_filter, csp_post_effect, tee);
 		ok &= tee.link_many (save_queue);
@@ -573,8 +587,11 @@
 		photo_save_bin = new Gst.Bin ("photo_save_bin");
 		var csp_photo_save_bin = ElementFactory.make ("ffmpegcolorspace", "csp_photo_save_bin");
 		photo_sink = ElementFactory.make ("fakesink", "photo_sink");
-
+		/* FIXME add_many is not working correctly yet
 		photo_save_bin.add_many (csp_photo_save_bin,photo_sink);
+		*/
+		photo_save_bin.add (csp_photo_save_bin);
+		photo_save_bin.add (photo_sink);
 
 		/* add ghostpad */
 		var pad = csp_photo_save_bin.get_pad ("sink");
@@ -607,10 +624,22 @@
 
 		var mux = ElementFactory.make ("oggmux", "mux");
 		video_file_sink = ElementFactory.make ("filesink", "video_file_sink");
-
+		
+		/* FIXME add_many does not work correctly in vala yet because it is
+		   not transferring ownership
 		video_save_bin.add_many (audio_source, audio_queue, audio_convert, 
 					 audio_enc, video_save_csp, video_save_scale, video_enc, 
-				         mux, video_file_sink);
+				         mux, video_file_sink); */
+
+		video_save_bin.add (audio_source);
+		video_save_bin.add (audio_queue);
+		video_save_bin.add (audio_convert);
+		video_save_bin.add (audio_enc);
+		video_save_bin.add (video_save_csp);
+		video_save_bin.add (video_save_scale);
+		video_save_bin.add (video_enc);
+		video_save_bin.add (mux);
+		video_save_bin.add (video_file_sink);
 
 		/* add ghostpad */
 		var pad = video_save_csp.get_pad ("sink");
@@ -634,8 +663,6 @@
 		
 		stop ();
 		src.unlink (old_sink);
-		/* Increase ref with one so old_sink won't get freed */
-		old_sink.ref ();
 		pipeline.remove (old_sink);
 
 		pipeline.add (new_sink);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]