LmntTTSService: add model param and additional languages
This commit is contained in:
@@ -9,6 +9,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
### Added
|
||||
|
||||
- Added additional languages to `LmntTTSService`. Languages include: `hi`, `id`,
|
||||
`it`, `ja`, `nl`, `pl`, `ru`, `sv`, `th`, `tr`, `uk`, `vi`.
|
||||
|
||||
- Added a `model` parameter to the `LmntTTSService` constructor, allowing
|
||||
switching between LMNT models.
|
||||
|
||||
- Added `MiniMaxHttpTTSService`, which implements MiniMax's T2A API for TTS.
|
||||
Learn more: https://www.minimax.io/platform_overview
|
||||
|
||||
|
||||
@@ -40,8 +40,20 @@ def language_to_lmnt_language(language: Language) -> Optional[str]:
|
||||
Language.EN: "en",
|
||||
Language.ES: "es",
|
||||
Language.FR: "fr",
|
||||
Language.HI: "hi",
|
||||
Language.ID: "id",
|
||||
Language.IT: "it",
|
||||
Language.JA: "ja",
|
||||
Language.KO: "ko",
|
||||
Language.NL: "nl",
|
||||
Language.PL: "pl",
|
||||
Language.PT: "pt",
|
||||
Language.RU: "ru",
|
||||
Language.SV: "sv",
|
||||
Language.TH: "th",
|
||||
Language.TR: "tr",
|
||||
Language.UK: "uk",
|
||||
Language.VI: "vi",
|
||||
Language.ZH: "zh",
|
||||
}
|
||||
|
||||
@@ -66,6 +78,7 @@ class LmntTTSService(InterruptibleTTSService):
|
||||
voice_id: str,
|
||||
sample_rate: Optional[int] = None,
|
||||
language: Language = Language.EN,
|
||||
model: str = "aurora",
|
||||
**kwargs,
|
||||
):
|
||||
super().__init__(
|
||||
@@ -76,7 +89,8 @@ class LmntTTSService(InterruptibleTTSService):
|
||||
)
|
||||
|
||||
self._api_key = api_key
|
||||
self._voice_id = voice_id
|
||||
self.set_voice(voice_id)
|
||||
self.set_model_name(model)
|
||||
self._settings = {
|
||||
"language": self.language_to_service_language(language),
|
||||
"format": "raw", # Use raw format for direct PCM data
|
||||
@@ -135,6 +149,7 @@ class LmntTTSService(InterruptibleTTSService):
|
||||
"format": self._settings["format"],
|
||||
"sample_rate": self.sample_rate,
|
||||
"language": self._settings["language"],
|
||||
"model": self.model_name,
|
||||
}
|
||||
|
||||
# Connect to LMNT's websocket directly
|
||||
|
||||
Reference in New Issue
Block a user