name: video-transcript-txt description: 將一個或多個本地影片轉寫為帶每段開始和結束時間的整理版 TXT。當用戶要求影片轉文字、影片轉寫、提取影片文本或字幕、批次生成帶時間戳 TXT、整理影片口述內容、統計影片處理耗時時使用。通過 uv、ffmpeg/ffprobe 和 openai-whisper 處理;中間檔案寫入系統臨時目錄並自動清理,永不刪除源影片。 metadata: short-description: 影片轉寫為帶起止時間的 TXT
發現更多技能外掛,請訪問7w4.net。
將完整下載的本地影片轉寫為帶逐段起止時間的純文本檔案。單影片生成一個 .txt;多影片時每個影片獨立生成一個 .txt,並在全部完成後彙總總影片時長與實際處理總耗時。
<影片檔名>_整理版.txt。[HH:MM:SS.mmm - HH:MM:SS.mmm]文本--force。.downloading、.part、.partial 等未完成下載檔案。zh;使用者明確指定時使用其語言。uv、ffmpeg、ffprobe 是否可用。uv run ~/.claude/skills/video-transcript-txt/scripts/video_transcript_txt.py \
"/absolute/path/to/video.mp4"
指定輸出:
uv run ~/.claude/skills/video-transcript-txt/scripts/video_transcript_txt.py \
"/absolute/path/to/video.mp4" \
--output "/absolute/path/to/result.txt"
使用者已明確允許覆蓋時:
uv run ~/.claude/skills/video-transcript-txt/scripts/video_transcript_txt.py \
"/absolute/path/to/video.mp4" \
--force
可選引數:
--model:Whisper 模型,預設 small。--language:語言程式碼,預設 zh。--model-dir:模型快取目錄,預設 ~/.cache/whisper。--force:覆蓋已存在的最終 TXT,僅在使用者明確允許時使用。ffprobe 獲取影片時長。uv run --with openai-whisper whisper 轉寫,所有格式輸出到臨時目錄。segments。SUMMARY_JSON: 行作為機器可讀摘要。當用戶提供多個影片時,由主 agent 統籌,多名子 agent 分批處理:
每個子 agent 完成後必須回傳:
status:success 或 error。優先從指令碼輸出的 SUMMARY_JSON: 解析這些欄位;解析失敗時再從中文輸出中提取,並說明摘要解析失敗。
使用者說“總時長”但未明確含義時,默認同時彙報兩類時長:
ffprobe。多影片並行時,實際處理總耗時通常小於各單影片處理耗時之和;最終回覆必須說明這一點。
彙總模板:
處理完成。
成功:3 個
失敗:1 個
成功檔案:
1. /path/a_整理版.txt
影片時長:00:10:12.350
處理耗時:00:03:05.120
段落數:96
失敗檔案:
1. /path/c.mp4
原因:輸出已存在,未獲覆蓋授權
彙總:
總影片時長:00:40:00.330
實際處理總耗時:00:06:28.500
說明:因為多個影片並行處理,實際處理總耗時不是各單影片處理耗時的簡單相加。
出現以下情況時停止對應影片,不生成誤導性結果:
.txt。uv、ffmpeg 或 ffprobe 不可用。依賴缺失通常影響全部影片,應停止整批處理並提示使用者修復環境。單個輸入或單個轉寫失敗只停止該影片,其餘影片繼續。
不要做以下事情:
--force。這個影片轉文字工具質量不錯,文件寫得清楚詳細,指令碼執行穩定可靠,能很好地保護原始檔安全。使用起來比較簡單,單個或多個影片都能處理。需要注意的是它依賴 ffmpeg 等外部工具,執行時需要等待轉寫過程,整體體驗較好但對環境配置有一定要求。