Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#4079 closed defect (fixed)

Clock does not speak in 13.1.0

Reported by: greenfeld Owned by: humitos
Priority: Normal Milestone:
Component: Clock Version: 0.97.x
Severity: Unspecified Keywords: regression, r?
Cc: garycmartin, godiard Distribution/OS: OLPC
Bug Status: Unconfirmed

Description

Clock-10 does not speak or tell the time in 13.1.0 os7 when that option is enabled in the top menu bar.

Attachments (1)

0001-Clock-goes-back-to-the-speaking-mode-SL-4079.patch (2.4 KB) - added by humitos 8 years ago.
A workaround to the real problem - no needed in Gtk3 and Gst 1.0 versions

Download all attachments as: .zip

Change History (12)

comment:1 Changed 8 years ago by dsd

  • Milestone changed from Unspecified by Release Team to 0.98

comment:2 Changed 8 years ago by godiard

  • Keywords regression added
  • Priority changed from Unspecified by Maintainer to Normal

comment:3 Changed 8 years ago by humitos

  • Owner changed from garycmartin to humitos
  • Status changed from new to accepted

comment:4 Changed 8 years ago by humitos

Similar old issue: #3453

  1. the espeak plugin for gstreamer is not available for 0.11 gstreamer version. We have already installed espeak and espeak plugin for gstreamer, but the version installed is for gstreamer 1.0. So we get an exception when we try to get the pipeline: no element "espeak"
    Installed Packages
    espeak.armv7hl -> 1.46.02-6.fc18
    gstreamer-plugins-espeak.armv7hl -> 0.4.0-1.fc18                                                     
    
  2. So, the codes tries to handle that exception and use the comand "espeak" instead, but that command does not work on XO-4 13.1.0 build 18. Then, it fails and does not speak at all.
    • the command espeak does not work on XO-4 13.1.0 build 18
      espeak: wave_pulse.cpp:691: size_t wave_write(void*, char*, size_t): Assertion `stream' failed.
      

comment:5 Changed 8 years ago by humitos

I tried compiling espeak (on XO-4 13.1.0 build 18) from its source code:

sudo yum install gcc-c++ make portaudio-devel
wget "http://downloads.sourceforge.net/project/espeak/espeak/espeak-1.46/espeak-1.46.02-source.zip"
unzip espeak-1.46.02-source.zip
cd espeak-1.46.02-source/src
cp portaudio19.h portaudio.h
make

Then I ran espeak and I got the same error:

./espeak "Hello World"
espeak: wave_pulse.cpp:691: size_t wave_write(void*, char*, size_t): Assertion `stream' failed.
Aborted

comment:6 Changed 8 years ago by humitos

The only workaround that I see here is to save the espeak output in a temp wav file and then play it. Something like this:

espeak "Hello world" -w /tmp/espeak.wav ; playwave /tmp/espeak.wav

Speak uses that method, but instead of playing it with playwave it uses gstreamer to play a file.

Changed 8 years ago by humitos

A workaround to the real problem - no needed in Gtk3 and Gst 1.0 versions

comment:7 Changed 8 years ago by humitos

  • Cc garycmartin godiard added
  • Keywords r? added

@gary: I attached a patch with a workaround for this issue. I think it's useful for this cycle but we won't need it when Clock uses Gtk3 and Gst 1.0

comment:8 Changed 8 years ago by godiard

Please prepare a .xo to include in the next image (and ask dsd to include it).

Is sad ship this activity with a regression like this.

comment:9 Changed 8 years ago by garycmartin

  • Resolution set to fixed
  • Status changed from accepted to closed

Thanks for the patch humitos! Tested on two XO-4s, and an XO-1.75 running 13.1.0 build 18, also tested with the long distant 802 release (Sugar 0.82.1) on an XO-1. Tested both the English and Spanish spoken time translations. Fix landed in the just released Clock-12.

comment:10 Changed 8 years ago by dsd

Thanks for the fix. Just a minor review comment: this creates a temporarily file but never deletes it. Fortunately its not a big deal since the file is small and it will be automatically deleted (on XO at least) at shutdown time. "espeak --stdout" might have been a better option though.

comment:11 Changed 8 years ago by dnarvaez

  • Milestone 0.98 deleted

Milestone 0.98 deleted

Note: See TracTickets for help on using tickets.