Hi everyone!

   I finally found what exactly was wrong with my super-video
application: I was missing a call to:

gst_bus_add_signal_watch (GST_ELEMENT_BUS (video->pipeline));

   I notced this call in video-sink test app but didn't think of it as
something important since the app wasn't using any signals from the
bus, but when nothing else worked i put this call in my app and tada
everything starts to work. The reason is that ClutterGstVideoSink is
using bus signal hander to actually render the frame. IMHO! the only
good reason for the element to do that is for clutter to be unable to
provide thread safety. If that is the case then is it a valid one
anymore now that clutter (>= 0.4) provide thread safety primitives
(_threads_enter/leave)?

If  there is some other reason(s) to do things how they are currently
done, then I prose we either:

1. modify the element to make use of idle func (as in g_idle_add) and
asyn queues.
2. put the gst_bus_add_signal_watch() call in the element.

  #2 is apparently the simplest one-liner change but I and Wim Taymans
think #1 is a much better approach.

  In any case! please let me know of your opinion(s) and i'll try to
come-up with the appropriate patch(es) ASAP for me.

-- 
Regards,

Zeeshan Ali Khattak
FSF member#5124
-- 
To unsubscribe send a mail to [EMAIL PROTECTED]

Reply via email to