Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.

33 lines
776B

  1. """
  2. voice factory
  3. """
  4. def create_voice(voice_type):
  5. """
  6. create a voice instance
  7. :param voice_type: voice type code
  8. :return: voice instance
  9. """
  10. if voice_type == "baidu":
  11. from voice.baidu.baidu_voice import BaiduVoice
  12. return BaiduVoice()
  13. elif voice_type == "google":
  14. from voice.google.google_voice import GoogleVoice
  15. return GoogleVoice()
  16. elif voice_type == "openai":
  17. from voice.openai.openai_voice import OpenaiVoice
  18. return OpenaiVoice()
  19. elif voice_type == "pytts":
  20. from voice.pytts.pytts_voice import PyttsVoice
  21. return PyttsVoice()
  22. elif voice_type == "azure":
  23. from voice.azure.azure_voice import AzureVoice
  24. return AzureVoice()
  25. raise RuntimeError