Spaces:
Running
Running
| from phonemizer.backend import EspeakBackend | |
| # 1. Khởi tạo backend đúng với cấu hình bạn đang dùng | |
| backend = EspeakBackend( | |
| language='vi', | |
| preserve_punctuation=True, | |
| with_stress=True, | |
| language_switch='remove-flags' | |
| ) | |
| def phonemize_text(text: str) -> str: | |
| # Logic làm sạch text (giống trong hàm write_file của bạn) | |
| text_clean = text.replace('\n', ' ').strip() | |
| # Logic gen IPA | |
| ipa = backend.phonemize([text_clean], strip=True)[0] | |
| # Logic replace đặc thù của bạn: | |
| # Mục đích: Chuyển 't' thường thành 'tʰ' (bật hơi) và giữ 't' răng (t̪) là 't' | |
| ipa = ipa.replace('t̪', '\uFFFF').replace('t', 'tʰ').replace('\uFFFF', 't') | |
| return ipa | |
| # --- Sử dụng --- | |
| if __name__ == "__main__": | |
| test_text = "mỹ, mỵ" | |
| result = phonemize_text(test_text) | |
| print(f"Input: {test_text}") | |
| print(f"Output IPA: {result}") |