Skip to main content

fix duration TTS tool - combines intelligent TTS with LLM

Project description

SOGA TTS - 固定时长语音合成

生成指定时长的语音文件,支持智能文本优化和精确时长控制。

安装

pip install soga-tts

基本使用

命令行(最简单)

soga_tts "Hello world" --duration 5.0           # 生成5秒语音,默认使用本地ollma的gemma3:4b模型,请事先安装

soga_tts "Hello world" --duration 5.0 --no-llm  # 不使用LLM,直接生成语音,通过强制拉伸的方式来控制时长

Python API

from soga_tts import soga_tts

# 最简单的用法
text, audio_path, duration = soga_tts("Hello world", 5.0)
print(f"音频文件: {audio_path}")

高级用法

异常处理

from soga_tts import soga_tts
from soga_tts.fixed_duration_tts import TTSPrecisionError

try:
    text, audio_path, duration = soga_tts("Hello", 10.0, tolerance_pct=5.0)
except TTSPrecisionError as e:
    print(f"精度不够: {e.error_pct:.1f}% (要求: 5.0%)")
from soga_tts import soga_tts
from soga_tts.fixed_duration_tts import TTSPrecisionError

try:
    text, audio_path, duration = soga_tts("Hello", 10.0, tolerance_pct=5.0)
except TTSPrecisionError as e:
    print(f"精度不够: {e.error_pct:.1f}% (要求: 5.0%)")

自定义LLM服务

# 使用OpenAI
soga_tts "Hello" --duration 5.0 \
  --llm-url "https://api.openai.com/v1" \
  --llm-key "your-key" \
  --llm-model "gpt-3.5-turbo"

# 使用Ollama(默认)
soga_tts "Hello" --duration 5.0

参数调整

soga_tts(
    text="Hello world",
    target_duration=10.0,
    tolerance_pct=3.0,      # 误差容忍度
    max_rounds=5,           # 最大优化回合
    force_exact_duration=True  # 音频缩放
)

常见问题

1. Ollama连接失败

# 启动Ollama服务
ollama serve

# 检查服务状态
curl http://localhost:11434/api/tags

2. 精度不够怎么办?

  • 使用更宽松的容差:--tolerance 10.0
  • 增加优化回合数:--max-rounds 20
  • 启用音频缩放(默认开启)

3. 速度太慢?

  • 使用 --no-llm 跳过文本优化
  • 减少回合数:--max-rounds 3
  • 使用本地Ollama而不是远程API

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

soga_tts-0.1.4.tar.gz (14.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

soga_tts-0.1.4-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file soga_tts-0.1.4.tar.gz.

File metadata

  • Download URL: soga_tts-0.1.4.tar.gz
  • Upload date:
  • Size: 14.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.7

File hashes

Hashes for soga_tts-0.1.4.tar.gz
Algorithm Hash digest
SHA256 aae4e6d631a19e5431d16cdf2290d2ee7c7bd44aa088d360cb926c26708ca78b
MD5 f9b8c36a8ee81fce33dd669a966a5f95
BLAKE2b-256 33d5ab93d786107fb2eb20cf96b5459ca9c78d920f6862e9fe168a00140e3fc2

See more details on using hashes here.

File details

Details for the file soga_tts-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: soga_tts-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.7

File hashes

Hashes for soga_tts-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 952593fce3975af57696e095a033654fd09346d97fca3e464087e8000fc61bb7
MD5 c010b5c8561627862f516eaec30ad62a
BLAKE2b-256 bd9d0d122d1a5c38a18df09f82f45aecf1c6f80ca34e42c8c15686a91f79c1db

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page