Video Clip Assistant
動画自動編集アシスタント。FFmpeg をベースに、動画カット、字幕生成、ショート動画出力などを提供します。
コア機能
- タイムラインカット — タイムスタンプを指定してクリップを抽出
- キーワードスライス — ASR 字幕を基にキーワード該当部分を抽出
- 字幕焼き込み — SRT 字幕を動画に焼き付け
- ショート動画出力 — 9:16/1:1/16:9 のマルチアスペクト比で出力
- ハイライト抽出 — 長動画から自動で見どころ部分を抽出
クイックスタート
タイム指定でカット
python3 scripts/cut_video.py --input video.mp4 --start 10 --duration 30 --output clip.mp4
複数セグメントを抽出
python3 scripts/cut_video.py --input video.mp4 --segments "0-30,60-90,120-150" --output ./clips/
字幕を焼き込み
python3 scripts/burn_subtitles.py --input video.mp4 --srt subs.srt --output subtitled.mp4
ショート動画を出力
python3 scripts/export_social.py --input video.mp4 --format vertical --duration 60 --output shorts/
スクリプト説明
scripts/cut_video.py
タイムラインに沿って動画をカットします。
python3 scripts/cut_video.py \
--input <動画ファイル> \
--start <秒> \
--duration <秒> \
[--segments "0-30,60-90"] \
--output <出力>
scripts/burn_subtitles.py
SRT 字幕を動画に焼き付けます。
python3 scripts/burn_subtitles.py \
--input <動画> \
--srt <字幕ファイル> \
--output <出力>
字幕の位置、フォントサイズ、色をカスタマイズ可能。
scripts/export_social.py
マルチプラットフォーム向けフォーマットで出力します。
python3 scripts/export_social.py \
--input <動画> \
--format <vertical|square|horizontal> \
--duration <秒> \
--output <出力ディレクトリ>
| フォーマット | アスペクト比 | 用途 |
|---|---|---|
| vertical | 9:16 | 抖音/快手/小红书 |
| square | 1:1 | |
| horizontal | 16:9 | YouTube/B 站 |
scripts/extract_highlights.py
長動画からハイライト部分を自動抽出します。
python3 scripts/extract_highlights.py \
--input <動画> \
--num-clips <クリップ数> \
--min-duration <最小秒数> \
--output <出力ディレクトリ>
シーン検出アルゴリズムを使用して見どころの切り替わりポイントを特定します。
scripts/generate_subtitles.py
SRT 字幕ファイルを生成します(ASR サービスが必要)。
python3 scripts/generate_subtitles.py \
--input <動画> \
--provider <whisper|funclip> \
--output <字幕.srt>
典型的なワークフロー
ワークフロー1:会議録画から3つのハイライトを抽出
# 1. 3つのクリップをカット
python3 scripts/cut_video.py \
--input meeting.mp4 \
--segments "300-360,720-780,1200-1260" \
--output ./clips/
# 2. それぞれ抖音形式で出力
for f in ./clips/*.mp4; do
python3 scripts/export_social.py \
--input "$f" \
--format vertical \
--output ./shorts/
done
ワークフロー2:動画に字幕を追加
# 1. 字幕を生成
python3 scripts/generate_subtitles.py \
--input video.mp4 \
--provider whisper \
--output video.srt
# 2. 字幕を焼き込み
python3 scripts/burn_subtitles.py \
--input video.mp4 \
--srt video.srt \
--output subtitled.mp4
ワークフロー3:ワンクリックで複数のショート動画を生成
python3 scripts/export_social.py \
--input long_video.mp4 \
--format vertical \
--duration 60 \
--output ./shorts/
環境要件
- 必須:FFmpeg(
ffmpeg/ffprobe) - 推奨:FunClip(Alibaba オープンソース ASR 動画編集ツール)
- 推奨:Whisper(ローカルまたは API モード)
インストール参考
# FunClip のインストール(推奨)
pip install funclip
# Whisper のインストール
pip install openai-whisper
# FFmpeg(既存)
which ffmpeg # パスが表示されることを確認