Still can't get videomixer to do live video at full frame rate

wally_bkg wb666greene at gmail.com
Fri Aug 19 09:12:54 PDT 2011


Stefan Kost wrote:
> 
> On 08/17/11 18:37, wally_bkg wrote:
>> wally_bkg wrote:
> 
>>         // shift a camera to bottom half of container frame
>> 	mixsink1=gst_element_get_pad(mixer,"sink_1");
> gst_element_get_static_pad
> 
> Stefan
> 
>> 	if(mixsink1){
>> 		g_object_set (G_OBJECT (mixsink1), "ypos", 480, NULL);	 
>> 	}else
>> 		g_print("Can't get mixer sink_1 pad!");
> 

Thanks, but this is a bit confusing.  Are you saying I should just use
gst_element_get_static_pad() with the same arguments I used with
gst_element_get_pad()?  

I though the mixer pads were "request".  The documentation says the problem
with gst_element_get_pad() was after getting the pad reference it wasn't
clear which kind of pad it was.  

I'm not really clear why I need to care at this "top level" of my program as 
these pad links are permanent for the duration of my program and I only
needed the reference to set the ypos property on it before running the
pipeline.  I don't see the need to free it here, what bad might happen if I
don't free it before the program terminates?

As a library design issue, why can't the pad_free function use object
properties to free the proper pad type when called and free the user from
knowing these internal details?

My main complaint with gstreamer is there always seems to be multiple ways
to do something and little or  no guidance as to in what situation one way
would be better than the other.

I tend to want to use an Occam's razor in that the approach that uses fewer
lines of code is certainly better in terms of the next person to inherit my
code when I retire.


--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Still-can-t-get-videomixer-to-do-live-video-at-full-frame-rate-tp3748457p3755579.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.


More information about the gstreamer-devel mailing list