mcpField
A
audio-transcribe

audio-transcribe

github.com/agntswrm创意与媒体6194 次安装34 周前更新
代码仓库

关于 audio-transcribe

audio-transcribe 是一项命令行技能,可将音频转为带时间戳的文本,适合需要转录及可选说话人标注的场景。它支持本地和托管提供方,并输出结构化 JSON。

主要功能

  1. 01转录并标注分段时间戳
  2. 02自动检测语言
  3. 03可选说话人识别
  4. 04支持本地及托管提供方
  5. 05输出结构化 JSON

适用场景

  1. 01转录访谈或会议
  2. 02区分播客中的说话人
  3. 03选择提供方处理音频

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/agntswrm/agent-media --skill audio-transcribe

安装后在 Claude Code 中输入/audio-transcribe确认已加载。

详细介绍

音频转录

将音频文件转录为文本并添加时间戳。支持自动检测语言、说话人识别(说话人分离),并输出包含分段级时间信息的结构化 JSON。

命令

npx agent-media@latest audio transcribe --in <path> [options]

输入

选项必填描述
--in是输入音频文件路径或 URL(支持 mp3、wav、m4a、ogg)
--diarize否启用说话人识别
--language否语言代码(未提供时自动检测)
--speakers否说话人分离的说话人数提示
--out否输出路径、文件名或目录(默认:./)
--provider否要使用的提供方(local、fal、replicate、runpod)

输出

返回包含转录数据的 JSON 对象:

{
  "ok": true,
  "media_type": "audio",
  "action": "transcribe",
  "provider": "fal",
  "output_path": "transcription_123_abc.json",
  "transcription": {
    "text": "Full transcription text...",
    "language": "en",
    "segments": [
      { "start": 0.0, "end": 2.5, "text": "Hello.", "speaker": "SPEAKER_0" },
      { "start": 2.5, "end": 5.0, "text": "Hi there.", "speaker": "SPEAKER_1" }
    ]
  }
}

示例

基础转录(自动检测语言):

npx agent-media@latest audio transcribe --in interview.mp3

启用说话人识别的转录:

npx agent-media@latest audio transcribe --in meeting.wav --diarize

指定语言和说话人数的转录:

npx agent-media@latest audio transcribe --in podcast.mp3 --diarize --language en --speakers 3

使用指定提供方:

npx agent-media@latest audio transcribe --in audio.wav --provider replicate

从视频中提取音频

要转录视频文件,请先提取音频:

# Step 1: Extract audio from video
npx agent-media@latest audio extract --in video.mp4 --format mp3

# Step 2: Transcribe the extracted audio
npx agent-media@latest audio transcribe --in extracted_xxx.mp3

提供方

local

使用 Transformers.js 在本地通过 CPU 运行,无需 API 密钥。

  • 使用 Moonshine 模型(速度比 Whisper 快 5 倍)
  • 首次使用时下载模型(约 100MB)
  • 不支持说话人分离——说话人识别请使用 fal 或 replicate
  • 你可能会看到 mutex lock failed 错误——可以忽略;如果 "ok": true,则输出正确
npx agent-media@latest audio transcribe --in audio.mp3 --provider local
fal
  • 需要 FAL_API_KEY
  • 禁用说话人分离时,使用 wizper 模型进行快速转录(速度快 2 倍)
  • 启用说话人分离时,使用 whisper 模型(原生支持)
replicate
  • 需要 REPLICATE_API_TOKEN
  • 使用基于 Whisper Large V3 Turbo 的 whisper-diarization 模型
  • 原生支持说话人分离和词级时间戳
runpod
  • 需要 RUNPOD_API_KEY
  • 使用 pruna/whisper-v3-large 模型(Whisper Large V3)
  • 不支持说话人分离(说话人识别)——需要说话人分离时请使用 fal 或 replicate
npx agent-media@latest audio transcribe --in audio.mp3 --provider runpod

评论

支持 Markdown