リップシンク
リップシンク ジョブを作成してクエリします。
#リップシンク
リップシンク ジョブは、ソース ビデオとオーディオ トラックを結合して、同期された結果ビデオを作成します。ビデオ処理には通常の HTTP リクエストよりも時間がかかる可能性があるため、エンドポイントは非同期です。
ジョブの作成
POST /api/open/v1/media/lip-sync/jobs
Authorization: Bearer FISHAUDIO_API_KEY
Content-Type: application/json### リクエスト
{
"videoUrl": "https://example.com/video.mp4",
"audioUrl": "https://example.com/audio.mp3"
}両方の URL が API サービスから到達可能である必要があります。プライベート メディアには有効期間が短い署名付き URL を使用し、作業者がファイルをダウンロードできる程度の有効期間を維持します。
curl https://fishaudio.org/api/open/v1/media/lip-sync/jobs \
-H "Authorization: Bearer FISHAUDIO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"videoUrl":"https://example.com/video.mp4","audioUrl":"https://example.com/audio.mp3"}'### 応答
{
"success": true,
"message": "Job created",
"data": {
"id": "job_123",
"status": "queued"
}
}ユーザーに表示される状態を更新する前にジョブ ID を保持します。ブラウザが閉じても、バックエンドは引き続きポーリングして、最終結果を元のプロジェクトに添付できるはずです。
ジョブのリストを表示する
GET /api/open/v1/media/lip-sync/jobs?page=1&limit=20&status=completed
Authorization: Bearer FISHAUDIO_API_KEYサポートされているフィルターには、page、limit、および status が含まれます。リストは、高頻度のポーリング ループとしてではなく、バックオフィスのリカバリとプロジェクト履歴に使用します。
仕事を得る
GET /api/open/v1/media/lip-sync/jobs/{jobId}
Authorization: Bearer FISHAUDIO_API_KEY完了したジョブには、data の結果メタデータが含まれます。失敗したジョブにはエラー コードまたはメッセージが含まれます。ポーリングを繰り返しても履歴結果レコードが書き換えられないように、独自のデータベース内で端末の状態を不変に保ちます。
請求とクレジット
リップシンク作業は通常、受け入れられたジョブまたは完了した処理時間に応じて料金が発生します。送信前にビデオの長さとオーディオの長さを検証し、ポーリング リクエストがタイムアウトしたときに 2 番目のジョブが自動的に作成されないようにします。
ユーザーが多くのジョブを起動できる場合は、独自のキューと同時実行制限を適用します。 プロファイル を使用して、高価なバッチを受け入れる前に残高不足を検出します。
エラー
| ステータス | 意味 | アクション |
|---|---|---|
400 | 無効なメディア URL、ペイロード、またはステータス フィルター | リクエストを修正する |
401 | API キーが無効です | 資格情報を更新する |
402 | クレジットまたは割り当てが不十分です | キューを一時停止する |
404 | この API キーのジョブ ID は不明です | アカウントと保存された ID を確認する |
422 | メディアはアクセス可能ですが、処理できません。別のソース メディアを要求する |