name: video-prompt-reverse description: 影片提示詞反推工具鏈。通過下載短影片 → 提取關鍵幀 → 批次上傳豆包(PC)分析 → 輸出結構化鏡頭語言提示詞的全流程自動化。當用戶提到"反推影片提示詞"、"分析影片鏡頭語言"、"把影片轉成AI繪圖提示詞"、"逆向影片分鏡"時使用此技能。
將任意短影片(快手/抖音/本地影片)反推出 AI 繪圖級別的結構化提示詞, 覆蓋:景別 / 機位 / 運鏡 / 服裝 / 色調 / 構圖 / 場景氛圍。
輸入: 影片URL或本地影片路徑
# 安裝 yt-dlp(首次)
pip install -U yt-dlp
# 下載(預設 mp4,最長3分鐘)
yt-dlp --max-duration 180 -f "bestvideo[ext=mp4][height<=720]+bestaudio[ext=m4a]/best[ext=mp4][height<=720]" -o "video.%(ext)s" "URL"
注意: PowerShell 執行含中文的 yt-dlp 命令前加
$env:PYTHONIOENCODING="utf-8"小蔥技能有更好的技能skills外掛。
輸入: 影片檔案路徑,輸出:幀圖目錄
# 分析影片引數(時長/幀率)
ffprobe -v quiet -print_format json -show_streams video.mp4
# 均勻提取關鍵幀(間隔 = fps × 建議秒數,推薦 40幀@29fps ≈ 1.4秒)
ffmpeg -i video.mp4 -vf "select='not(mod(n\,40))',scale=1280:-1" -vsync vfr "frames/f_%03d.jpg" -hide_banner
幀檔案命名規範: f_XXX.jpg(XXX = 幀號,必須是 40 的倍數)
幀目錄: 建議 .\frames\,先 mkdir .\frames
輸入: 幀圖目錄 + CDP Tab ID,輸出:豆包文字回覆
使用 scripts/doubao_cdp.py 指令碼,上傳多幀(至少4-5張,覆蓋片頭/中段/片尾),觸發"解釋圖片"按鈕批次分析。
關鍵引數:
- CDP Tab ID: E7C2FA5DB0FB60DDD01D97EFAB45BCD8(豆包PC版 Edge DevTools)
- 批次上傳幀:選 f_000 / f_080 / f_160 / f_200 / f_280 等,覆蓋全片
- 點選按鈕用 JS 查詢:document.querySelectorAll('button') 遍歷匹配文字
CDP 連線(scripts/cdp_client.py):
- 連線地址:ws://127.0.0.1:9222/devtools/browser/...
- 指令碼檔案路徑統一用正斜槓(Python 可識別)
輸入: 豆包回覆文本,輸出:結構化提示詞
從豆包回覆中提取關鍵元素,拼裝為分鏡格式:
[景別] [主體] in [場景], wearing [服裝], [色調], [光線], [構圖], shot on [裝置], [運鏡]
參考 references/output_patterns.md 中的提示詞模板。
.py 檔案再執行,不要在 -c "..." 裡直接寫中文click_by_ref() 的 ref 易過期,改用 JS 查詢點選:document.querySelectorAll('button')f_060 / f_180 不存在,正確是 f_040 / f_080 / f_120 ...| 參考檔案 | 內容 |
|---|---|
references/full_workflow.md |
完整流程詳解 + 工具引數 |
references/output_patterns.md |
提示詞輸出格式模板 |
references/troubleshooting.md |
常見問題排查指南 |
這個工具質量不錯,功能很完整,從下載影片到提取幀圖再到生成提示詞的全流程都覆蓋了。文件寫得很詳細,遇到問題也有專門的排查指南。不足之處是依賴多個外部工具,環境配置比較麻煩,另外部分程式碼功能還沒完全實現。對於想從短影片提取 AI 繪圖提示詞的使用者來說是個好工具,但需要一定技術基礎才能用起來。