ADD_CAPTIONS API 接口文檔
接口信息
POST /openapi/capcut-mate/v1/add_captions
功能描述
向現有草稿中批量添加字幕。該接口用於在指定的時間段內添加字幕到剪映草稿中,支持豐富的字幕樣式設置,包括文本顏色、邊框顏色、對齊方式、透明度、字體、字體大小、字間距、行間距、縮放和位置調整等。
更多文檔
📖 更多詳細文檔和教程請訪問:https://docs.jcaigc.cn
請求參數
{
"draft_url": "https://capcut-mate.jcaigc.cn/openapi/capcut-mate/v1/get_draft?draft_id=2025092811473036584258",
"captions": "[{\"start\":0,\"end\":10000000,\"text\":\"你好,剪映\",\"keyword\":\"好\",\"keyword_color\":\"#457616\",\"keyword_font_size\":15,\"font_size\":15}]",
"text_color": "#ffffff",
"border_color": null,
"alignment": 1,
"alpha": 1.0,
"font": null,
"font_size": 15,
"letter_spacing": null,
"line_spacing": null,
"scale_x": 1.0,
"scale_y": 1.0,
"transform_x": 0,
"transform_y": 0,
"style_text": false
}
參數説明
| 參數名 | 類型 | 必填 | 默認值 | 説明 |
|---|---|---|---|---|
| draft_url | string | ✅ | - | 目標草稿的完整URL |
| captions | string | ✅ | - | 字幕信息列表的JSON字符串 |
| text_color | string | ❌ | "#ffffff" | 文本顏色(十六進制) |
| border_color | string | ❌ | null | 邊框顏色(十六進制) |
| alignment | integer | ❌ | 1 | 文本對齊方式(0-5) |
| alpha | number | ❌ | 1.0 | 文本透明度(0.0-1.0) |
| font | string | ❌ | null | 字體名稱 |
| font_size | integer | ❌ | 15 | 字體大小 |
| letter_spacing | number | ❌ | null | 字間距 |
| line_spacing | number | ❌ | null | 行間距 |
| scale_x | number | ❌ | 1.0 | 水平縮放比例 |
| scale_y | number | ❌ | 1.0 | 垂直縮放比例 |
| transform_x | integer | ❌ | 0 | X軸位置偏移(像素) |
| transform_y | integer | ❌ | 0 | Y軸位置偏移(像素) |
| style_text | boolean | ❌ | false | 是否使用樣式文本 |
captions字段詳細説明
captions是一個JSON字符串,包含字幕數組,每個字幕對象包含以下字段:
| 字段名 | 類型 | 必填 | 默認值 | 説明 | |
|---|---|---|---|---|---|
| start | integer | ✅ | - | 字幕開始時間(微秒) | |
| end | integer | ✅ | - | 字幕結束時間(微秒) | |
| text | string | ✅ | - | 字幕文本內容 | |
| keyword | string | ❌ | null | 關鍵詞(用\ | 分隔多個關鍵詞) |
| keyword_color | string | ❌ | "#ff7100" | 關鍵詞顏色 | |
| keyword_font_size | integer | ❌ | 15 | 關鍵詞字體大小 | |
| font_size | integer | ❌ | 15 | 文本字體大小 | |
| in_animation | string | ❌ | null | 入場動畫 | |
| out_animation | string | ❌ | null | 出場動畫 | |
| loop_animation | string | ❌ | null | 循環動畫 | |
| in_animation_duration | integer | ❌ | null | 入場動畫時長 | |
| out_animation_duration | integer | ❌ | null | 出場動畫時長 | |
| loop_animation_duration | integer | ❌ | null | 循環動畫時長 |
參數詳解
時間參數
- start: 字幕在時間軸上的開始時間,單位為微秒(1秒 = 1,000,000微秒)
- end: 字幕在時間軸上的結束時間,單位為微秒
- duration: 字幕顯示時長 = end - start
對齊方式説明
| 值 | 説明 |
|---|---|
| 0 | 左對齊 |
| 1 | 居中對齊 |
| 2 | 右對齊 |
| 3 | 垂直居中 |
| 4 | 垂直左對齊 |
| 5 | 垂直右對齊 |
縮放參數
-
scale_x: 字幕的水平縮放比例
- 1.0 = 原始大小
- 0.5 = 水平縮小到一半
- 2.0 = 水平放大到兩倍
-
scale_y: 字幕的垂直縮放比例
- 1.0 = 原始大小
- 0.5 = 垂直縮小到一半
- 2.0 = 垂直放大到兩倍
位置參數
-
transform_x: 字幕在X軸方向的位置偏移,單位為像素
- 正值向右移動
- 負值向左移動
- 以畫布中心為原點
- 實際存儲時會轉換為半畫布寬單位(假設畫布寬度1920,即除以960)
-
transform_y: 字幕在Y軸方向的位置偏移,單位為像素
- 正值向下移動
- 負值向上移動
- 以畫布中心為原點
- 實際存儲時會轉換為半畫布高單位(假設畫布高度1080,即除以540)
響應格式
成功響應 (200)
{
"draft_url": "https://capcut-mate.jcaigc.cn/openapi/capcut-mate/v1/get_draft?draft_id=2025092811473036584258",
"track_id": "text_track_123",
"text_ids": ["text_001", "text_002"],
"segment_ids": ["seg_001", "seg_002"],
"segment_infos": [
{
"id": "seg_001",
"start": 0,
"end": 5000000
},
{
"id": "seg_002",
"start": 5000000,
"end": 10000000
}
]
}
響應字段説明
| 字段名 | 類型 | 説明 |
|---|---|---|
| draft_url | string | 更新後的草稿URL |
| track_id | string | 字幕軌道ID |
| text_ids | array | 字幕ID列表 |
| segment_ids | array | 字幕片段ID列表 |
| segment_infos | array | 片段信息列表 |
錯誤響應 (4xx/5xx)
{
"detail": "錯誤信息描述"
}
使用示例
cURL 示例
1. 基本字幕添加
curl -X POST https://capcut-mate.jcaigc.cn/openapi/capcut-mate/v1/add_captions \
-H "Content-Type: application/json" \
-d '{
"draft_url": "YOUR_DRAFT_URL",
"captions": "[{\"start\":0,\"end\":5000000,\"text\":\"你好,剪映\"}]",
"text_color": "#ffffff",
"alignment": 1,
"alpha": 1.0,
"font_size": 20
}'
2. 多字幕添加
curl -X POST https://capcut-mate.jcaigc.cn/openapi/capcut-mate/v1/add_captions \
-H "Content-Type: application/json" \
-d '{
"draft_url": "YOUR_DRAFT_URL",
"captions": "[{\"start\":0,\"end\":5000000,\"text\":\"你好,剪映\"},{\"start\":5000000,\"end\":10000000,\"text\":\"歡迎使用字幕功能\"}]",
"text_color": "#ffffff",
"alignment": 1,
"alpha": 1.0,
"font_size": 16
}'
3. 帶樣式和位置的字幕
curl -X POST https://capcut-mate.jcaigc.cn/openapi/capcut-mate/v1/add_captions \
-H "Content-Type: application/json" \
-d '{
"draft_url": "YOUR_DRAFT_URL",
"captions": "[{\"start\":0,\"end\":5000000,\"text\":\"你好,剪映\",\"keyword\":\"好\",\"keyword_color\":\"#ff0000\"}]",
"text_color": "#ffffff",
"alignment": 1,
"alpha": 1.0,
"font_size": 20,
"scale_x": 1.2,
"scale_y": 1.2,
"transform_x": 100,
"transform_y": -50
}'
錯誤碼説明
| 錯誤碼 | 錯誤信息 | 説明 | 解決方案 |
|---|---|---|---|
| 400 | draft_url是必填項 | 缺少草稿URL參數 | 提供有效的draft_url |
| 400 | captions是必填項 | 缺少字幕信息參數 | 提供有效的captions |
| 400 | 無效的字幕信息,請檢查captions字段值是否正確 | 字幕參數校驗失敗 | 檢查字幕參數是否符合要求 |
| 400 | 時間範圍無效 | end必須大於start | 確保結束時間大於開始時間 |
| 404 | 草稿不存在 | 指定的草稿URL無效 | 檢查草稿URL是否正確 |
| 500 | 字幕添加失敗 | 內部處理錯誤 | 聯繫技術支持 |
注意事項
- 時間單位: 所有時間參數使用微秒(1秒 = 1,000,000微秒)
- 字幕時長: end 時間必須大於 start 時間
- 顏色格式: 顏色值使用十六進制格式,如 "#ffffff"、"#ff0000"
- 關鍵詞高亮: 暫未完全實現,目前為預留功能
- 動畫效果: 暫未完全實現,目前為預留功能
- 字體支持: 字體名稱需要系統支持或使用默認字體
- 對齊方式: 目前僅支持基礎對齊方式(0-2),高級對齊方式(3-5)為預留功能
- 座標系統: transform_x 和 transform_y 使用像素值,會自動轉換為草稿相對座標
- 縮放參數: scale_x 和 scale_y 建議在合理範圍內使用
工作流程
- 驗證必填參數(draft_url, captions)
- 檢查時間範圍的有效性
- 從緩存中獲取草稿
- 創建字幕軌道(如果不存在)
- 遍歷字幕信息,創建字幕片段
- 添加片段到軌道
- 保存草稿
- 返回字幕信息
相關接口
- 創建草稿
- 添加視頻
- 添加音頻
- 添加圖片
- 保存草稿
- 生成視頻
<div align="right">
📚 項目資源
GitHub搜索capcut-mate就能找到。
</div>