動画から音声を抽出し、MP3と再生時間を取得。
動画のURLをPOSTするだけで、MP3と再生時間が返ってきます。Fotovidがホスト型インフラ上で抽出処理を実行するため、バイナリもパイプラインもスタックに組み込む必要はありません。
curl -X POST https://api.fotovid.co/v1/video/extract-audio \
-H "Authorization: Bearer p6_YOUR_KEY_ID:YOUR_SECRET" \
-H "Content-Type: application/json" \
-d '{
"source_url": "https://cdn.yoursite.com/talk.mp4"
}'動画から音声を取り出すのに、サーバー側にffmpegは要らないはずです
動画から音声トラックを取り出す処理自体は、ffmpegのコマンド1行で済みます。ただし、サーバーレス関数で実行しようとした途端に話は変わります。静的ビルドされたffmpegバイナリは数十メガバイトあり、Vercel、Netlify、Lambdaのデプロイサイズ上限を軽く超えてしまいます。動画をデコードしてMP3に再エンコードする処理はCPUとメモリを大量に消費するため、よほど大きなインスタンスでない限り、関数のタイムアウトやコールドスタートの制限に引っかかります。さらに、ソースのダウンロード、サブプロセスの起動、出力ファイルの回収、そして結果をどこか永続的な場所へアップロードする作業まで自前で行う必要があります。
- ffmpegの静的ビルドは、ほとんどのサーバーレスのデプロイ成果物に収めるには大きすぎます
- 音声抽出はトラック全体を再エンコードするため、CPU・メモリ・タイムアウトの上限に達してしまいます
- 生成したMP3をホストし、アプリから使えるURLとして返す仕組みも自前で用意する必要があります
- メディア処理の面倒な部分を一切抱えずにMP3だけを手に入れたいときは、このエンドポイントを使ってください
リクエストパラメータ
POST /v1/video/extract-audio
パラメータは不要です。source_urlをPOSTするだけで、MP3と再生時間が返ってきます。
| Field | Type | Default | Description |
|---|---|---|---|
| source_url* | string (URL) | — | 元動画のHTTPS URL(MP4、MOV、WebM、MKVなど) |
3ステップで最初の呼び出しを
- 1無料のAPIキーを取得
サインアップしてダッシュボードからキーを作成します。リクエストの認証にはAuthorization: Bearer p6_<key_id>:<secret>ヘッダーを使用します。新規キーには無料クレジットが付与され、料金は純粋な従量課金制です。$1で100クレジットとなり、この操作は1回あたり約1クレジットなので、事前に契約や最低利用料を約束する必要はありません。
- 2動画を/v1/video/extract-audioへPOST
https://api.fotovid.co/v1/video/extract-audioへ、標準のエンベロープでリクエストを送信します。エンベロープには、動画のHTTPS URLを指すsource_urlと空のparamsオブジェクトを含めます(音声抽出にはパラメータが不要なため)。Fotovidが動画をダウンロードし、音声トラックを取り出してMP3に同期的にエンコードし、ファイルが用意でき次第レスポンスを返します。
- 3返却されたMP3のURLを使う
レスポンスはフラットなJSONで、id、type、Fotovidがホストするurl(MP3)、expires_at、そして再生時間(秒)が含まれます。このurlはそのままポッドキャストフィード、文字起こしやAIパイプライン、あるいはプレーヤーに渡せます。ホストされる結果は一時的なものなので、フロー内でMP3を自分側にダウンロードして保存してください。
