Approximetal commited on
Commit
2a432c5
·
verified ·
1 Parent(s): b1224ff

Update lemas_tts/infer/text_norm/tokenizer.py

Browse files
lemas_tts/infer/text_norm/tokenizer.py CHANGED
@@ -22,12 +22,25 @@ import torch
22
  import torchaudio
23
  # from lhotse.features import FeatureExtractor
24
  # from lhotse.utils import Seconds, compute_num_frames
 
25
  from phonemizer.backend import EspeakBackend
26
  from phonemizer.backend.espeak.language_switch import LanguageSwitch
27
  from phonemizer.backend.espeak.words_mismatch import WordMismatch
28
  from phonemizer.punctuation import Punctuation
29
  from phonemizer.separator import Separator
30
 
 
 
 
 
 
 
 
 
 
 
 
 
31
 
32
 
33
  class TextTokenizer:
 
22
  import torchaudio
23
  # from lhotse.features import FeatureExtractor
24
  # from lhotse.utils import Seconds, compute_num_frames
25
+ from phonemizer.backend.espeak.wrapper import EspeakWrapper
26
  from phonemizer.backend import EspeakBackend
27
  from phonemizer.backend.espeak.language_switch import LanguageSwitch
28
  from phonemizer.backend.espeak.words_mismatch import WordMismatch
29
  from phonemizer.punctuation import Punctuation
30
  from phonemizer.separator import Separator
31
 
32
+ # Configure espeak-ng via espeakng_loader if available.
33
+ # This provides a consistent libespeak-ng + data across environments (e.g. HF Spaces).
34
+ try:
35
+ import espeakng_loader
36
+
37
+ EspeakWrapper.set_library(espeakng_loader.get_library_path())
38
+ EspeakWrapper.set_data_path(espeakng_loader.get_data_path())
39
+ print("[LEMAS-TTS] espeak-ng configured via espeakng_loader")
40
+ except Exception as e: # ImportError or runtime errors
41
+ # Fall back to system espeak-ng discovery.
42
+ print(f"[LEMAS-TTS] espeakng_loader not available or failed ({e}); using system espeak-ng")
43
+
44
 
45
 
46
  class TextTokenizer: