Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/Speak.activity
diff options
context:
space:
mode:
authorAleksey Lim <alsroot@member.fsf.org>2009-03-10 01:39:00 (GMT)
committer Aleksey Lim <alsroot@member.fsf.org>2009-03-10 01:39:00 (GMT)
commit92d05c2600fd7dfc1f3c9c03e69aafabcce9b3c2 (patch)
treec9aa19d2b772e0c659458e1899d68ff13010bdbc /Speak.activity
parent79553f3d45558c12f19b1ec130c22af5bb61e42b (diff)
Tweak default values for pitch/rate
Diffstat (limited to 'Speak.activity')
-rwxr-xr-xSpeak.activity/activity.py7
-rw-r--r--Speak.activity/audio.py18
-rw-r--r--Speak.activity/face.py6
3 files changed, 22 insertions, 9 deletions
diff --git a/Speak.activity/activity.py b/Speak.activity/activity.py
index 70a0f2d..8c4eaf5 100755
--- a/Speak.activity/activity.py
+++ b/Speak.activity/activity.py
@@ -43,6 +43,7 @@ import waveform_mouth
import voice
import face
import chat
+import audio
from collab import CollabActivity
from messenger import Messenger, SERVICE
@@ -241,7 +242,7 @@ class SpeakActivity(CollabActivity):
combotool.show()
self.pitchadj = gtk.Adjustment(self.face.status.pitch, 0,
- face.PITCH_MAX, 1, face.PITCH_MAX/10, 0)
+ audio.PITCH_MAX, 1, audio.PITCH_MAX/10, 0)
pitchbar = gtk.HScale(self.pitchadj)
pitchbar.set_draw_value(False)
#pitchbar.set_inverted(True)
@@ -253,8 +254,8 @@ class SpeakActivity(CollabActivity):
voicebar.insert(pitchtool, -1)
pitchbar.show()
- self.rateadj = gtk.Adjustment(self.face.status.rate, 0, face.RATE_MAX,
- 1, face.RATE_MAX/10, 0)
+ self.rateadj = gtk.Adjustment(self.face.status.rate, 0, audio.RATE_MAX,
+ 1, audio.RATE_MAX/10, 0)
ratebar = gtk.HScale(self.rateadj)
ratebar.set_draw_value(False)
#ratebar.set_inverted(True)
diff --git a/Speak.activity/audio.py b/Speak.activity/audio.py
index a9bf1c4..cd69529 100644
--- a/Speak.activity/audio.py
+++ b/Speak.activity/audio.py
@@ -37,6 +37,20 @@ from struct import *
logger = logging.getLogger('speak')
+try:
+ import gst
+ gst.element_factory_make('espeak')
+
+ PITCH_MAX = 200
+ RATE_MAX = 200
+ PITCH_DEFAULT = PITCH_MAX/2
+ RATE_DEFAULT = RATE_MAX/2
+except:
+ PITCH_MAX = 99
+ RATE_MAX = 99
+ PITCH_DEFAULT = PITCH_MAX/2
+ RATE_DEFAULT = RATE_MAX/3
+
class AudioGrab(gobject.GObject):
__gsignals__ = {
'new-buffer': (gobject.SIGNAL_RUN_FIRST, None, [gobject.TYPE_PYOBJECT])
@@ -57,8 +71,8 @@ class AudioGrab(gobject.GObject):
self._playfile(wavpath)
def _speak(self, status, text):
- pitch = int(status.pitch) * 2 - 100
- rate = int(status.rate) * 2 - 100
+ pitch = int(status.pitch) - 100
+ rate = int(status.rate) - 100
logger.debug('pitch=%d rate=%d voice=%s text=%s' % (pitch, rate,
status.voice.name, text))
diff --git a/Speak.activity/face.py b/Speak.activity/face.py
index 2947ff1..5f2f249 100644
--- a/Speak.activity/face.py
+++ b/Speak.activity/face.py
@@ -39,15 +39,13 @@ import waveform_mouth
logger = logging.getLogger('speak')
-PITCH_MAX = 99
-RATE_MAX = 99
FACE_PAD = 2
class Status:
def __init__(self):
self.voice = voice.defaultVoice()
- self.pitch = PITCH_MAX/2
- self.rate = RATE_MAX/3
+ self.pitch = audio.PITCH_DEFAULT
+ self.rate = audio.RATE_DEFAULT
self.eyes = [eye.Eye] * 2
self.mouth = mouth.Mouth