File size: 1,376 Bytes
aad9d66
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
"""
Configuration for HuggingFace Spaces deployment
Handles espeak-ng and model paths for cloud environment
"""
import os
from pathlib import Path

# Detect if running on HuggingFace Spaces
IS_SPACES = os.getenv("SPACE_ID") is not None

# Configure espeak-ng for HuggingFace Spaces
if IS_SPACES:
    # On Spaces, espeak-ng is installed via packages.txt
    # It's available system-wide
    if os.path.exists("/usr/bin/espeak-ng"):
        os.environ["PHONEMIZER_ESPEAK_PATH"] = "/usr/bin/espeak-ng"
        if os.path.exists("/usr/lib/x86_64-linux-gnu/libespeak-ng.so"):
            os.environ["PHONEMIZER_ESPEAK_LIBRARY"] = "/usr/lib/x86_64-linux-gnu/libespeak-ng.so"
        elif os.path.exists("/usr/lib/libespeak-ng.so"):
            os.environ["PHONEMIZER_ESPEAK_LIBRARY"] = "/usr/lib/libespeak-ng.so"
else:
    # Local development - use bundled espeak-ng
    espeak_path = Path(__file__).parent.parent / "external" / "espeak-ng"
    if espeak_path.exists():
        os.environ["PHONEMIZER_ESPEAK_LIBRARY"] = str(espeak_path / "libespeak-ng.dll")
        os.environ["PHONEMIZER_ESPEAK_PATH"] = str(espeak_path)

print(f"πŸ”§ Environment: {'HuggingFace Spaces' if IS_SPACES else 'Local'}")
print(f"πŸ”Š PHONEMIZER_ESPEAK_PATH: {os.getenv('PHONEMIZER_ESPEAK_PATH', 'Not set')}")
print(f"πŸ“š PHONEMIZER_ESPEAK_LIBRARY: {os.getenv('PHONEMIZER_ESPEAK_LIBRARY', 'Not set')}")