SuperAPI AI 工具集

wjs-transcribing-audio

设计与创作

查看项目

更新于 10-15 23:32

技能介绍

用途:输入音频或视频,输出与源语言一致的带时间戳 SRT 字幕(母版),不做翻译。适用于需要逐字稿或 SRT、缺少源语言字幕、或先要字幕再翻译的场景;若已有源语言 SRT,应直接进入翻译技能。

引擎路由:中文(zh-CN/zh-HK/zh-TW)默认用火山(豆包)ASR,准确率优于 Whisper;其他语言用 OpenAI Whisper API 并请求词级时间戳;离线或无 API 时用本地 openai-whisper(medium)作为兜底。中文不应默认走 Whisper,除非用户明确要求或火山不可用。

Whisper 路径要点:不要请求 response_format=srt,否则长独白会出现 30 秒整块字幕、安静段会出现循环幻觉。应请求 verbose_json 加 timestamp_granularities[]=word,固定 language,temperature 用 0.2 以启用回退链。上传前用 64kbps 单声道 MP3 压缩,按 10 分钟分块(约 4.5MB),并发 2 较稳,调用做指数退避重试;合并时给每块时间戳加上该块绝对起始偏移。自行组装字幕:目标 3 秒、上限 5 秒、中文每行约 18 字、静音超过 1 秒强制切分,并按标点与词间最大间隔切分,最后做循环检测丢弃重复短语。

火山路径:用大模型流式 WebSocket API(wss://openspeech.bytedance.com/api/v3/sauc/bigmodel),推送 16kHz 单声道 PCM 字节,无需公网音频 URL;脚本 scripts/volc_asr_stream.py 与 scripts/build_srt_from_asr.py 构建词级计时 SRT,支持 --max-chars、--soft-min、--strip-punct 等参数。不要用飞书妙记做 ASR。凭据存放在 ~/code/.env,ASR 与 TTS 共用同一组 appid 与 token。

中文最终需由 Claude 在会话内做一次错别字修正:只改明显同音错字,不得改动时间戳、编号与切分边界,不润色、不猜测专有名词,并输出修改清单供核对。输出文件名为 <source-stem>.srt,标准 SRT 格式、毫秒用逗号。交接前检查编号连续、时间不重叠、不截断词、无循环残留。

限制:详细参数与命令以原文为准;未提供具体价格、账号申请与配额信息。