2009/1/22 Jason Tackaberry <[email protected]>

>
> When clutter-gst has a new frame to draw, it attaches an idle callback
> at G_PRIORITY_HIGH_IDLE (== 100).  When there's a timeline running, it
> runs at CLUTTER_PRIORITY_TIMELINE (== 30).  (As with nice, lower value
> is higher priority.)  I assume this means that while the timeline is
> running, it may in practice starve the video.
>

That's the reason. We tried changing the priority to HIGH and video does not
stop when you trigger timelines.

>
> Theoretically, I don't think it would be too hard to implement
> clutter-gst this way too.  In fact, it's so obviously more correct that
> I have to wonder if there's not a good reason the authors used an idle
> timeout instead, which reason has eluded me.  (Please educate me, if
> that's the case.)


One benefit of the idle call is that clutter drawing is done in the clutter
main thread. I've remarked that, on some driver, even putting
clutter_thread_enter/leave does not prevent crashes. Making sure that
everything happens in the main thread seems to be the safest way.

Julien

Reply via email to