cli-anything-kdenlive 是做什麼的?
一種有狀態的命令列介面,用於影片編輯,遵循與 Blender CLI 工具相同的模式。使用 JSON 專案格式,並生成 MLT XML 以用於 Kdenlive/melt。
安裝
此 CLI 是作為 cli-anything-kdenlive 套件的一部分安裝的:
pip install cli-anything-kdenlive
先決條件:
- Python 3.10+
- 系統必須已安裝 kdenlive
使用方式
基本指令
# 顯示說明
cli-anything-kdenlive --help
# 啟動互動式 REPL 模式
cli-anything-kdenlive
# 建立新專案
cli-anything-kdenlive project new -o project.json
# 以 JSON 輸出執行(供代理消費)
cli-anything-kdenlive --json project info -p project.json
REPL 模式
當不帶子指令呼叫時,CLI 會進入互動式 REPL 會話:
cli-anything-kdenlive
# 以選項卡補全和歷史記錄功能互動式輸入指令
指令群組
專案
專案管理指令。
| 指令 | 描述 |
|---|---|
new | 建立新專案 |
open | 開啟現有專案 |
save | 儲存目前專案 |
info | 顯示專案資訊 |
profiles | 列出可用的影片設定檔 |
json | 列印原始專案 JSON |
素材箱群組
媒體素材箱管理指令。
| 指令 | 描述 |
|---|---|
import | 將剪輯匯入媒體素材箱 |
remove | 從素材箱移除剪輯 |
list | 列出素材箱中的所有剪輯 |
get | 取得詳細的剪輯資訊 |
時間軸
時間軸管理指令。
| 指令 | 描述 |
|---|---|
add-track | 在時間軸上新增軌道 |
remove-track | 移除軌道 |
add-clip | 將剪輯新增至軌道 |
remove-clip | 從軌道移除剪輯 |
trim | 修剪剪輯的 In/Out 點 |
split | 在時間偏移處分割剪輯 |
move | 將剪輯移至新位置 |
list | 列出所有軌道 |
濾鏡群組
濾鏡/效果管理指令。
| 指令 | 描述 |
|---|---|
add | 為剪輯新增濾鏡 |
remove | 從剪輯移除濾鏡 |
set | 設定濾鏡參數 |
list | 列出剪輯上的濾鏡 |
available | 列出所有可用的濾鏡 |
轉場
轉場管理指令。
| 指令 | 描述 |
|---|---|
add | 在軌道之間新增轉場 |
remove | 移除轉場 |
set | 設定轉場參數 |
list | 列出所有轉場 |
標記
標記/標記管理指令。
| 指令 | 描述 |
|---|---|
add | 在位置(秒)新增標記 |
remove | 移除標記 |
list | 列出所有標記 |
匯出
匯出和渲染指令。
| 指令 | 描述 |
|---|---|
xml | 生成 Kdenlive/MLT XML |
presets | 列出可用的渲染預設集 |
會話
會話管理指令。
| 指令 | 描述 |
|---|---|
status | 顯示會話狀態 |
undo | 復原上一次操作 |
redo | 重做上一次復原的操作 |
history | 顯示復原歷史記錄 |
範例
建立新專案
建立新的 kdenlive 專案檔案。
cli-anything-kdenlive project new -o myproject.json
# 或者使用 JSON 輸出供程式化使用
cli-anything-kdenlive --json project new -o myproject.json
互動式 REPL 會話
啟動一個支援復原/重做的互動式會話。
cli-anything-kdenlive
# 互動式輸入指令
# 使用 'help' 查看可用指令
# 使用 'undo' 和 'redo' 進行歷史記錄導航
匯出專案
將專案匯出為最終輸出格式。
cli-anything-kdenlive --project myproject.json export render output.pdf --overwrite
狀態管理
CLI 使用以下方式維護會話狀態:
- 復原/重做:最多 50 層歷史記錄
- 專案持久性:以 JSON 格式儲存/載入專案狀態
- 會話追蹤:追蹤修改和變更
輸出格式
所有指令均支援雙輸出模式:
- 人類可讀(預設):表格、顏色、格式化文字
- 機器可讀(
--json標誌):結構化 JSON 供代理消費
# 人類輸出
cli-anything-kdenlive project info -p project.json
# 供代理使用的 JSON 輸出
cli-anything-kdenlive --json project info -p project.json
給 AI 代理的提示
以程式化方式使用此 CLI 時:
- 始終使用
--json標誌 以獲得可解析的輸出 - 檢查回傳碼 - 0 表示成功,非零表示錯誤
- 解析 stderr 以獲取失敗時的錯誤訊息
- 對所有檔案操作使用絕對路徑
- 在匯出操作後確認輸出存在
更多資訊
- 完整文件:請參閱套件中的 README.md
- 測試覆蓋率:請參閱套件中的 TEST.md
- 方法論:請參閱 cli-anything-plugin 中的 HARNESS.md
版本
1.0.0