diff --git a/CHANGELOG.md b/CHANGELOG.md index f463db2a7..b8d62fb16 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,13 +9,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added +- Added support for new sonic-3 languages in `CartesiaTTSService` and + `CartesiaHttpTTSService`. + - `EndFrame` and `EndTaskFrame` have an optional `reason` field to indicate why the pipeline is being ended. - `CancelFrame` and `CancelTaskFrame` have an optional `reason` field to indicate why the pipeline is being canceled. This can be also specified when you cancel a task with `PipelineTask.cancel(reason="cancellation your - reason")`. +reason")`. ### Fixed diff --git a/src/pipecat/services/cartesia/tts.py b/src/pipecat/services/cartesia/tts.py index c2185a355..b3fb3f44e 100644 --- a/src/pipecat/services/cartesia/tts.py +++ b/src/pipecat/services/cartesia/tts.py @@ -78,20 +78,47 @@ def language_to_cartesia_language(language: Language) -> Optional[str]: The corresponding Cartesia language code, or None if not supported. """ BASE_LANGUAGES = { + Language.AR: "ar", + Language.BG: "bg", + Language.BN: "bn", + Language.CS: "cs", + Language.DA: "da", Language.DE: "de", Language.EN: "en", + Language.EL: "el", Language.ES: "es", + Language.FI: "fi", Language.FR: "fr", + Language.GU: "gu", + Language.HE: "he", Language.HI: "hi", + Language.HR: "hr", + Language.HU: "hu", + Language.ID: "id", Language.IT: "it", Language.JA: "ja", + Language.KA: "ka", + Language.KN: "kn", Language.KO: "ko", + Language.ML: "ml", + Language.MR: "mr", + Language.MS: "ms", Language.NL: "nl", + Language.NO: "no", + Language.PA: "pa", Language.PL: "pl", Language.PT: "pt", + Language.RO: "ro", Language.RU: "ru", + Language.SK: "sk", Language.SV: "sv", + Language.TA: "ta", + Language.TE: "te", + Language.TH: "th", + Language.TL: "tl", Language.TR: "tr", + Language.UK: "uk", + Language.VI: "vi", Language.ZH: "zh", }