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

コメント