audio-transcribe について
audio-transcribeは、音声ファイルをタイムスタンプ付きのテキストに変換するコマンドラインスキルです。話者ラベルの追加にも対応し、ローカルまたはホスト型プロバイダーを選んで構造化JSONを出力できます。
主な機能
- 01区間ごとのタイムスタンプ付き文字起こし
- 02言語の自動検出
- 03話者識別の追加
- 04ローカル・ホスト型プロバイダー対応
- 05構造化JSON出力
活用シーン
- 01インタビューや会議の文字起こし
- 02ポッドキャストの話者区別
- 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 対応