[Sugar-devel] Smile activity version 1

David Farning dfarning at sugarlabs.org
Sat Sep 19 22:05:46 EDT 2009

By way of introduction for the newer contributors--

Wade started and was the first co-ordinator of the Activities Team.
He took a break last spring for the birth of a child:)  I wonder if he
has looked at activities.sugarlabs.org lately. It has had over 680,000
activity downloads, most of them since June.

Congratulation on the baby and starting something pretty cool.


On Sat, Sep 19, 2009 at 8:42 PM, Wade Brainerd <wadetb at gmail.com> wrote:
> 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)
> 1353
> 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,
> priority=gobject.PRIORITY_HIGH_IDLE+30)
> 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.
> Best,
> Wade
> On Thu, Sep 3, 2009 at 12:02 PM, Tony Anderson <tony at olenepal.org> wrote:
>> Hi,
>> I am always tempted to blame my code, but the same problem appeared
>> in the Ambulant demo wrapper (player_pygtk.py) 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. Player_pygtk.py 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 olenepal.org> wrote:
>>>> I posted version 1 of the Smile activity to activities.sugarlabs.org. 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
> _______________________________________________
> Sugar-devel mailing list
> Sugar-devel at lists.sugarlabs.org
> http://lists.sugarlabs.org/listinfo/sugar-devel

More information about the Devel mailing list