From: Raluca Elena Podiuc Date: Sat, 30 Jul 2011 13:12:31 +0000 (+0300) Subject: camerabin2 remove redundant viewfinder-colorspace and viewfinder-scale X-Git-Tag: 1.19.3~507^2~16045^2~7 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2e28fe2e18f0ce4ab81aff009e2b1bc09e3b7109;p=platform%2Fupstream%2Fgstreamer.git camerabin2 remove redundant viewfinder-colorspace and viewfinder-scale camrabin2 connects a viewfinderbin on "vfsrc". viewfinderbin is made of: vfbin-csp ! vfbin-videoscale ! videosink. we should either remove csp/videoscale from wrappercamerabinsrc (as done in this patch) or we should get rid of viewfinderbin altogether. --- diff --git a/gst/camerabin2/gstwrappercamerabinsrc.c b/gst/camerabin2/gstwrappercamerabinsrc.c index d0c6468..16aa34b 100644 --- a/gst/camerabin2/gstwrappercamerabinsrc.c +++ b/gst/camerabin2/gstwrappercamerabinsrc.c @@ -395,7 +395,6 @@ gst_wrapper_camera_bin_src_construct_pipeline (GstBaseCameraSrc * bcamsrc) GstElement *src_csp; GstElement *capsfilter; gboolean ret = FALSE; - GstElement *videoscale; GstPad *vf_pad; GstPad *tee_capture_pad; GstPad *src_caps_src_pad; @@ -473,17 +472,9 @@ gst_wrapper_camera_bin_src_construct_pipeline (GstBaseCameraSrc * bcamsrc) /* viewfinder pad */ vf_pad = gst_element_get_request_pad (tee, "src%d"); g_object_set (tee, "alloc-pad", vf_pad, NULL); + gst_ghost_pad_set_target (GST_GHOST_PAD (self->vfsrc), vf_pad); gst_object_unref (vf_pad); - /* the viewfinder should always work, so we add some converters to it */ - if (!gst_camerabin_create_and_add_element (cbin, "ffmpegcolorspace", - "viewfinder-colorspace")) - goto done; - if (!(videoscale = - gst_camerabin_create_and_add_element (cbin, "videoscale", - "viewfinder-scale"))) - goto done; - /* image/video pad from tee */ tee_capture_pad = gst_element_get_request_pad (tee, "src%d"); @@ -526,10 +517,7 @@ gst_wrapper_camera_bin_src_construct_pipeline (GstBaseCameraSrc * bcamsrc) NULL); } - /* hook-up the vf ghostpad */ - vf_pad = gst_element_get_static_pad (videoscale, "src"); - gst_ghost_pad_set_target (GST_GHOST_PAD (self->vfsrc), vf_pad); - gst_object_unref (vf_pad); + gst_pad_set_active (self->vfsrc, TRUE); gst_pad_set_active (self->imgsrc, TRUE); /* XXX ??? */