Am Freitag 29 Oktober 2010, um 12:31:45 schrieb Damien Lespiau: > On Thu, 2010-10-28 at 21:20 +0100, Lukas Ruetz wrote: > > now I see that the stuttering is only there if a ClutterTimeline is > > running (the translucent actors without the timeline are no problem). > > One case is a clock hh:mm which timeline runs every 15sec. Again - this > > does not influence the playback of a H.264 video (or at least it's not > > visible). > > > > Any idea how this interferes with gstreamer? > > I can at least describe what happens if it's useful: > > 1/ Gstreamer pushes GstBuffers to the sink from an arbitrary thread, > > 2/ The sink keeps a reference to the buffer and wakes up the Clutter > thread to signal there's a new buffer awaiting, > > 3/ The new frame is uploaded in the the Clutter thread without doing > anything special (with glTexImage2D()) which probably means a memcpy() > somewhere. This upload takes time (ie. blocks the main thread) and is > done given priority: > > #define CLUTTER_GST_DEFAULT_PRIORITY (G_PRIORITY_HIGH_IDLE) > > while the master clock has the following priority > > #define CLUTTER_PRIORITY_REDRAW (G_PRIORITY_HIGH_IDLE + 50) > > (that means that the uploading frames has a higher priority than the > master clock) > > Notes: > > * The priority of the frame uploading is tweakable with the > "update-priority" property on the sink. > * depending on your platform, there's probably a better way to stream > textures. > > HTH,
Hi Damien, thank you for your help and time. Changing the priority helped a bit but not completely. At least my understanding of the whole thing grows .. Finally after identifying the timelines as problem I had to admit that timelines are an overkill for simple periodic tasks. So now I use clutter_threads_add_timeout() to do the periodic changes what works as expected. I'll need timelines in the future during video playback but this gives me now some time to dig deeper. Lukas _______________________________________________ clutter-app-devel-list mailing list [email protected] http://lists.clutter-project.org/listinfo/clutter-app-devel-list
