|
from RealtimeTTS.base_engine import BaseEngine, TimingInfo |
|
from .orpheus_engine import OrpheusEngine |
|
|
|
__all__ = [ |
|
"BaseEngine", "TimingInfo", |
|
"SystemEngine", "SystemVoice", |
|
"OrpheusEngine", "OrpheusVoice", |
|
] |
|
|
|
|
|
|
|
|
|
|
|
|
|
def _load_system_engine(): |
|
from .system_engine import SystemEngine, SystemVoice |
|
globals()["SystemEngine"] = SystemEngine |
|
globals()["SystemVoice"] = SystemVoice |
|
return SystemEngine |
|
|
|
def _load_orpheus_engine(): |
|
from .orpheus_engine import OrpheusEngine, OrpheusVoice |
|
globals()["OrpheusEngine"] = OrpheusEngine |
|
globals()["OrpheusVoice"] = OrpheusVoice |
|
return OrpheusEngine |
|
|
|
|
|
|
|
_lazy_imports = { |
|
"SystemEngine": _load_system_engine, |
|
"SystemVoice": _load_system_engine, |
|
"OrpheusEngine": _load_orpheus_engine, |
|
"OrpheusVoice": _load_orpheus_engine, |
|
} |
|
|
|
|
|
def __getattr__(name): |
|
if name in _lazy_imports: |
|
return _lazy_imports[name]() |
|
raise AttributeError(f"module {__name__} has no attribute {name}") |