Opened 7 years ago

Closed 7 years ago

Last modified 6 years ago

#3901 closed defect (fixed)

Speak starts in CPU loop on OLPC 13.1.0 os1

Reported by: greenfeld Owned by: humitos
Priority: Unspecified by Maintainer Milestone:
Component: Speak Version: Unspecified
Severity: Major Keywords:
Cc: godiard, humitos Distribution/OS: OLPC
Bug Status: Unconfirmed

Description

Speak-42 starts up in a CPU loop in 13.1.0 os1, and never really displays anything graphical.

It speaks its opening phrase and may eventually get to something you type but seems to be spinning CPU otherwise.

Attachments (1)

0001-Use-radians-instead-of-degrees.patch (1.6 KB) - added by humitos 7 years ago.

Download all attachments as: .zip

Change History (9)

comment:1 Changed 7 years ago by manuq

  • Cc godiard humitos added

comment:2 Changed 7 years ago by erikos

  • Milestone changed from Unspecified by Release Team to 0.98

comment:3 Changed 7 years ago by manuq

  • Owner changed from RafaelOrtiz to manuq
  • Status changed from new to assigned

comment:4 Changed 7 years ago by humitos

  • Owner changed from manuq to humitos
  • Status changed from assigned to accepted

comment:5 Changed 7 years ago by humitos

I don't have the solution yet, but I found some differences between 12.1.0 (working) and 13.1.0 (not working) with the same Speak version:

  • XO-1.75, 12.1.0 os21
    • Speak v42 works properly
    • I can import gst espeak plugin
      >>> import gst
      >>> gst.element_factory_make('espeak')
      <__main__.GstEspeak object (espeak0) at 0x1a20cd0>
      
    • RPM: gstreamer-plugins-espeak-0.3.5-2.fc17.i686
  • XO-1.5, 13.1.0 os6
    • Speak v42 does not work (CPU issue)
    • I can't import gst espeak plugin
      >>> import gst
      >>> gst.element_factory_make('espeak')
      Traceback (most recent call last):
        File "<stdin>", line 1, in <module>
      gst.ElementNotFoundError: espeak
      
    • RPM: gstreamer-plugins-espeak-0.4.0-1.fc18.i686
  • Desktop, Fedora 17. sugar-build
    • Speak v42 works properly
    • RPM: gstreamer-plugins-espeak-0.3.5-2.fc17.x86_64
    • I can import gst espeak plugin

comment:6 Changed 7 years ago by humitos

  • Keywords r? added

After a long research we found the problem. It has to do with cairo and the way that context.arc was being used. The angle was given in degrees and .arc function needs radians. So, it was taking a lot of time (up to 8 seconds) to draw an arc with 360 radians.

I'm uploading a patch that fix this in Speak v42 (gtk2)

The problem between the different version of the builds (12.1.0 and 13.1.0) could be related with the cairo version. It seems the new cairo version doesn't work well with the angle in degrees.

12.1.0 -> cairo-1.10.2-7.fc17.i686
13.1.0 -> cairo-1.12.4-1.fc18.i686

Changed 7 years ago by humitos

comment:7 Changed 7 years ago by godiard

  • Keywords 13.1.0 r? removed
  • Resolution set to fixed
  • Status changed from accepted to closed

Fixed an available in Speak 43

comment:8 Changed 6 years ago by dnarvaez

  • Milestone 0.98 deleted

Milestone 0.98 deleted

Note: See TracTickets for help on using tickets.