Smile activity version 1

Wade Brainerd wadetb at
Sat Sep 19 21:42:27 EDT 2009

Hi Tony,
Sorry for taking so long to respond to this one.

I had a similar problem in Colors! and solved it by adding a timer event
while playback was running:

1350    def start_update_timer(self):
1351        if self.update_timer:
1352            gobject.source_remove(self.update_timer)
1354        # The timer priority is chosen to be above PRIORITY_REDRAW
(which is PRIORITY_HIGH_IDLE_20, but not defined in PyGTK).
1355        self.update_timer = gobject.timeout_add(1, self.update,

The update event would trigger a paint event and return True when playback
was active, else return False if playback was done.  When playback was
started again it would start the timer running again.  This starting and
stopping prevents pegging the CPU all the time.

Anyway, this might help solve your problem by forcing the event loop to run,
although it does sound like the root problem could be a different issue.


On Thu, Sep 3, 2009 at 12:02 PM, Tony Anderson <tony at> wrote:

> Hi,
> I am always tempted to blame my code, but the same problem appeared
> in the Ambulant demo wrapper ( on Ubuntu. It appears only
> in the python wrapper (not the C++ version). The Ambulant team has opened a
> ticket. The problem appears to be an interaction between the gtk.main()
> event loop and the Ambulant redraw logic. doesn't call
> gtk.main but instead uses a loop:
> while gtk.events_pending():
>   gtk.main_iteration()
> I think it is safe to rule out Sugar as a culprit, but not my building of
> the Ambulant package!
> Yours,
> Tony
> Tomeu Vizoso wrote:
>> On Wed, Sep 2, 2009 at 18:31, Tony Anderson<tony at> wrote:
>>> I posted version 1 of the Smile activity to It
>>> matches the code posted on gitorious.
>>> The Smile activity implements the open source Ambulant SMIL3 player. It
>>> plays a variety of media types. More importantly it can play a complex
>>> multimedia presentation including text, images, audio, and video using a
>>> standard SMIL script.
>>> My goal is to use the Smile activity to play children's stories so that
>>> they can see the text highlighted karaoke-style while listening to the
>>> story's audio track and looking at background images.
>>> Similar to the Quiz and ShowNTell activities, the Smile activity plays a
>>> bundle with an extension '.smxo' and mime_type 'application/x-smile'
>>> which contains the controlling SMIL script and the associated media
>>> files.
>>> Version 1 has two serious problems. Video playback and multimedia
>>> playback does not redraw correctly (playback is advanced by moving the
>>> mouse!). In addition, it is possible to replay only be re-selecting the
>>> presentation. The pause and stop buttons do not work correctly.
>>> I hope that both of these problems will be resolved in version 2 by the
>>> end of September.
>> Hi Tony,
>> do you know if the cause for these problems in the Ambulant SMIL3
>> player or in the activity code?
>> Regards,
>> Tomeu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Devel mailing list