Advertisement
Guest User

Untitled

a guest
Sep 30th, 2016
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.25 KB | None | 0 0
  1. $ ls -l
  2. total 48
  3. -rw-rw-r-- 1 travis travis 500 Sep 29 20:14 appveyor.yml
  4. drwxrwxr-x 3 travis travis 4096 Sep 29 20:14 espeak4py
  5. -rw-rw-r-- 1 travis travis 32400 Sep 29 20:14 LICENSE.md
  6. -rw-rw-r-- 1 travis travis 2298 Sep 29 20:14 README.md
  7. -rw-rw-r-- 1 travis travis 0 Sep 29 20:14 requirements.txt
  8. -rw-rw-r-- 1 travis travis 759 Sep 29 20:14 test.py
  9.  
  10. $ ls -l espeak4py
  11. total 592
  12. -rw-rw-r-- 1 travis travis 276306 Sep 29 20:14 espeak
  13. drwxrwxr-x 5 travis travis 4096 Sep 29 20:14 espeak-data
  14. -rw-rw-r-- 1 travis travis 319488 Sep 29 20:14 espeak.exe
  15. -rw-rw-r-- 1 travis travis 1125 Sep 29 20:14 __init__.py
  16.  
  17. $ python3 test.py
  18. Testing espeak4py
  19. Testing wait4prev
  20. Traceback (most recent call last):
  21. File "test.py", line 10, in <module>
  22. mySpeaker.say('Hello, World!')
  23. File "/home/travis/build/sayak-brm/espeak4py/espeak4py/__init__.py", line 38, in say
  24. self.prevproc = subprocess.Popen(cmd, executable=self.executable, cwd=os.path.dirname(os.path.abspath(__file__)))
  25. File "/opt/python/3.2.6/lib/python3.2/subprocess.py", line 744, in __init__
  26. restore_signals, start_new_session)
  27. File "/opt/python/3.2.6/lib/python3.2/subprocess.py", line 1394, in _execute_child
  28. raise child_exception_type(errno_num, err_msg)
  29. OSError: [Errno 2] No such file or directory: '/home/travis/build/sayak-brm/espeak4py/espeak4py/espeak'
  30.  
  31. #! python3
  32. import subprocess
  33. import os
  34. import platform
  35.  
  36. class Speaker:
  37. """
  38. Speaker class for differentiating different speech properties.
  39. """
  40. def __init__(self, voice="en", wpm=120, pitch=80):
  41. self.prevproc = None
  42. self.voice = voice
  43. self.wpm = wpm
  44. self.pitch = pitch
  45. if platform.system() == 'Windows': self.executable = os.path.dirname(os.path.abspath(__file__)) + "/espeak.exe"
  46. else: self.executable = os.path.dirname(os.path.abspath(__file__)) + "/espeak"
  47.  
  48. def generateCommand(self, phrase):
  49. cmd = [
  50. self.executable,
  51. "--path=.",
  52. "-v", self.voice,
  53. "-p", self.pitch,
  54. "-s", self.wpm,
  55. phrase
  56. ]
  57. cmd = [str(x) for x in cmd]
  58. return cmd
  59.  
  60. def say(self, phrase, wait4prev=False):
  61. cmd=self.generateCommand(phrase)
  62. if wait4prev:
  63. try: self.prevproc.wait()
  64. except AttributeError: pass
  65. else:
  66. try: self.prevproc.terminate()
  67. except AttributeError: pass
  68. self.prevproc = subprocess.Popen(cmd, executable=self.executable, cwd=os.path.dirname(os.path.abspath(__file__)))
  69.  
  70. #! python3
  71. import espeak4py
  72. import time
  73.  
  74. print('Testing espeak4pyn')
  75. print('Testing wait4prev')
  76.  
  77. mySpeaker = espeak4py.Speaker()
  78.  
  79. mySpeaker.say('Hello, World!')
  80. time.sleep(1)
  81. mySpeaker.say('Interrupted!')
  82. time.sleep(3)
  83.  
  84. mySpeaker.say('Hello, World!')
  85. time.sleep(1)
  86. mySpeaker.say('Not Interrupted.', wait4prev=True)
  87. time.sleep(5)
  88.  
  89. print('Testing pitch')
  90.  
  91. myHighPitchedSpeaker = espeak4py.Speaker(pitch=120)
  92. myHighPitchedSpeaker.say('I am a demo of the say function')
  93. time.sleep(5)
  94.  
  95. print('Testing wpm')
  96.  
  97. myFastSpeaker = espeak4py.Speaker(wpm=140)
  98. myFastSpeaker.say('I am a demo of the say function')
  99. time.sleep(5)
  100.  
  101. print('Testing voice')
  102.  
  103. mySpanishSpeaker = espeak4py.Speaker(voice='es')
  104. mySpanishSpeaker.say('Hola. Como estas?')
  105.  
  106. print('Testing Completed.')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement