67 lines
1.7 KiB
Python
67 lines
1.7 KiB
Python
"""Infra layer: expose a simple module-level API backed by
|
|
`TranscribeService` adapter.
|
|
|
|
This replaces the previous re-export from `transcribe_impl` so the
|
|
implementation lives inside the adapter class.
|
|
"""
|
|
|
|
from .transcribe_adapter import TranscribeService
|
|
|
|
|
|
# default service instance used by module-level helpers
|
|
_DEFAULT = TranscribeService()
|
|
|
|
|
|
def transcribe_openai_whisper(file: str):
|
|
return _DEFAULT.transcribe_openai(file)
|
|
|
|
|
|
def transcribe_transformers(file: str):
|
|
return _DEFAULT.transcribe_transformers(file)
|
|
|
|
|
|
def transcribe_faster_whisper(file: str):
|
|
return _DEFAULT.transcribe_faster(file)
|
|
|
|
|
|
def write_srt(segments, out_path: str):
|
|
return _DEFAULT.write_srt(segments, out_path)
|
|
|
|
|
|
def dedupe_adjacent_segments(segments):
|
|
return _DEFAULT.dedupe_adjacent_segments(segments)
|
|
|
|
|
|
def get_audio_duration(file_path: str):
|
|
return _DEFAULT.get_audio_duration(file_path)
|
|
|
|
|
|
def make_uniform_segments(duration: float, seg_seconds: float):
|
|
return _DEFAULT.make_uniform_segments(duration, seg_seconds)
|
|
|
|
|
|
def transcribe_segmented_with_tempfiles(*args, **kwargs):
|
|
return _DEFAULT.transcribe_segmented_with_tempfiles(*args, **kwargs)
|
|
|
|
|
|
def tts_synthesize(text: str, out_path: str, model: str = "kokoro") -> bool:
|
|
return _DEFAULT.tts_synthesize(text, out_path, model=model)
|
|
|
|
|
|
def ensure_tts_model(repo_id: str):
|
|
return _DEFAULT.ensure_tts_model(repo_id)
|
|
|
|
|
|
__all__ = [
|
|
"transcribe_openai_whisper",
|
|
"transcribe_transformers",
|
|
"transcribe_faster_whisper",
|
|
"write_srt",
|
|
"dedupe_adjacent_segments",
|
|
"get_audio_duration",
|
|
"make_uniform_segments",
|
|
"transcribe_segmented_with_tempfiles",
|
|
"tts_synthesize",
|
|
"ensure_tts_model",
|
|
]
|