字幕書き出し
希望する形式で字幕をダウンロードし、文字起こしプロジェクトのリアルタイムステータスを追跡します。
/api/v1/export/:projectIdcurl -X POST https://api.srtgen.com/api/v1/export/proj_8k2n9m1b \
-H "x-api-key: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"output": "srt"
}'パラメータ
| パラメータ | タイプ | 必須 | 説明 |
|---|---|---|---|
| 主要パラメータ | |||
id | String | Yes | URLパスで渡される一意のプロジェクト識別子。 |
output | String | No | 書き出しに必要な字幕形式またはメディアアセット。 オプション: srt, vtt, ass, txt, json, mp4 | デフォルト: srt |
burnId | String | No | 特定の焼付けジョブIDのステータス/結果を明示的にリクエストします。 |
language | String | No | 字幕のターゲット言語。 範囲: 翻訳された任意のコードまたは 'original' | デフォルト: original |
| 多言語サポート (新規) | |||
languages | Array | No | 同じファイルに複数の言語を表示するための設定配列。 制限: 最大3言語 | デフォルト: デフォルト: ASS, VTT |
- language | String | Yes* | この言語スロットのコード (例: 'zh' または 'original')。 |
- lineBreakRules | Object | No | 言語ごとのセグメンテーションの上書き設定。 |
- styleSettings | Object | No | 言語ごとのスタイリング (ASSでは主要)。 |
| 改行ルール (lineBreakRules) | |||
lineBreakRules | Object | No | 字幕のセグメンテーションロジック用のネストされたオブジェクト。 |
- maxChars | Number | No | 1行あたりの最大文字数。 範囲: 5 - 100 | デフォルト: 45 |
- maxWords | Number | No | 1つの字幕行あたりの最大単語数。 範囲: 1 - 20 | デフォルト: 10 |
- balanceLines | Boolean | No | 複数行の字幕で行の長さを均等にします。 デフォルト: true |
- sentenceSplit | Boolean | No | 文末での改行を優先します。 デフォルト: true |
- gapThreshold | Number | No | 行内の単語間の最大ギャップ(秒)。 範囲: 0.1 - 2.0 | デフォルト: 0.4 |
| スタイル基本設定 (styleSettings) | |||
uppercase | Boolean | No | すべての文字起こしテキストを大文字に強制します。 |
styleSettings | Object | No | 視覚的スタイリングの上書き用のネストされたオブジェクト。 |
- preset | String | No | ベースとして組み込みのスタイルプリセットを適用します。 オプション: standard-stream, classic-apple, etc. |
- fontSize | Number | No | 動画の高さに対する比率としてのフォントサイズ。 デフォルト: 0.045 (approx 48px) |
- fontFamily | String | No | レンダリングに使用される標準フォント名。 デフォルト: レンダリングに使用される標準フォント名。 |
- bold | Boolean | No | テキストに太字を適用します。 範囲: true | false | デフォルト: false |
- italic | Boolean | No | テキストにイタリック体を適用します。 範囲: true | false | デフォルト: false |
| 色と境界線 | |||
- primaryColor | Hex | No | メインテキストの色(16進コード)。 デフォルト: #FFFFFF |
- secondaryColor | Hex | No | セカンダリカラー(カラオケ効果に使用)。 デフォルト: #00FFFF |
- outlineColor | Hex | No | テキストの縁取りの色。 デフォルト: #000000 |
- outline | Number | No | 縁取りの太さ(高さに対する比率)。 デフォルト: 0.002 |
- shadow | Number | No | 影の深さ(高さに対する比率)。 デフォルト: 0.001 |
| 配置 (比率 0-1) | |||
- alignment | Number | No | ASS配置コード (1-9)。下部中央は2です。 範囲: 1 - 9 | デフォルト: 2 |
- posX | Number | No | 水平位置 (0 = 左, 1 = 右)。 範囲: 0.0 - 1.0 | デフォルト: 0.5 |
- posY | Number | No | 垂直位置の比率 (0 = 上, 1 = 下)。デフォルト: 0.88。 範囲: 0.0 - 1.0 | デフォルト: 0.88 |
- marginV | Number | No | 下部/上部からの垂直マージンの比率。デフォルト: 0.056。 範囲: 0.0 - 0.5 | デフォルト: 0.056 |
| アニメーションと効果 | |||
- fadeIn | Number | No | フェードインの時間(ミリ秒)。 範囲: 0ms - 5000ms | デフォルト: 0 |
- fadeOut | Number | No | フェードアウトの時間(ミリ秒)。 範囲: 0ms - 5000ms | デフォルト: 0 |
- karaoke | String | No | カラオケタグのタイプ (k, kf, ko, ks)。 オプション: k, kf, ko, ks | デフォルト: none |
curl -X POST https://api.srtgen.com/api/v1/export/proj_8k2n9m1b \
-H "x-api-key: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"output": "srt",
"language": "fr",
"lineBreakRules": {
"maxChars": 25,
"maxWords": 5,
"balanceLines": true
}
}'curl -X POST https://api.srtgen.com/api/v1/export/proj_8k2n9m1b \
-H "x-api-key: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"output": "ass",
"lineBreakRules": {
"maxChars": 30
},
"styleSettings": {
"preset": "standard-stream",
"fontSize": 55,
"primaryColor": "#FF0000",
"bold": true
}
}'curl -X POST https://api.srtgen.com/api/v1/export/proj_8k2n9m1b \
-H "x-api-key: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"output": "ass",
"languages": [
{
"language": "original",
"styleSettings": {
"preset": "classic-apple",
"fontSize": 40,
"posY": 0.85
}
},
{
"language": "zh",
"lineBreakRules": {
"maxChars": 16,
"balanceLines": false
},
"styleSettings": {
"preset": "standard-stream",
"fontSize": 55,
"posY": 0.7
}
}
]
}'レスポンス構造
1. 処理中の状態
プロジェクトがまだAIエンジンによって処理中または保留中の場合は、現在の状態を示すステータス更新が返されます。
これにより、ステータスが completed になるまで、同じエンドポイントを使用してフロントエンドに簡単なポーリングを実装できます。
{ "projectId": "proj_abc123", "status": "processing", "message": "AI is generating..." }
2. 完了した状態
最終確定されると、レスポンスにはリクエストした形式の 字幕コンテンツ が含まれます。
各形式は、そのユースケースに合わせて最適化されています。
{ "success": true, "projectId": "proj_abc123", "status": "completed", "format": "srt", "content": "1\\n00:00:01,000 --> 00:00:03,000\\nHello..." }
エラーコード
| ステータス | エラーコード | 説明 |
|---|---|---|
| 400 | param_not_valid | 提供されたパラメータが許容範囲外です。 |
| 401 | unauthorized | APIキーが欠落しているか無効です。 |
| 404 | not_found | プロジェクトIDが存在しません。 |
| 500 | export_error | フォーマット中にエラーが発生しました。 |
| 500 | project_fetch_failed | プロジェクトデータの取得に失敗しました。 |
| 500 | server_error | 予期しない内部サーバーエラーが発生しました。 |
{ "success": false, "error": "unauthorized", "message": "提供されたAPIキーは無効か期限切れです。" }