From 92d05c2600fd7dfc1f3c9c03e69aafabcce9b3c2 Mon Sep 17 00:00:00 2001 From: Aleksey Lim Date: Tue, 10 Mar 2009 01:39:00 +0000 Subject: Tweak default values for pitch/rate --- 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 -- cgit v0.9.1