Skip to content

bassdrum-org/cut-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cut-generator

アニメ制作現場の「線撮(ラフ動画)作成」工程を支援するPythonツール

概要

このツールは以下の用途に向けた1カット単位の映像を迅速に生成します:

  1. 現在の素材確認(とりあえず並べてみる)
  2. アフレコ用のタイミング確認用ムービー(セリフのON/OFF表示つき)

機能

  • レイヤー機能: 各要素をZ順で合成(A=最下層、B,C,D...=上層)
  • MP4出力: 標準的な動画形式で出力
  • CSV制御: タイミングデータをCSVファイルで管理
  • フレームレート設定: コマンドライン引数でFPS指定可能
  • 解像度設定: --width と --height オプションで出力解像度を指定可能
  • 簡易的なタイムコード表示: 各フレームに HH:MM:SS:FF 形式のタイムコードを簡易的に表示
  • セリフ表示: 座布団カラー指定可能なセリフオーバーレイ

インストール

pip install -r requirements.txt

使用方法

基本的な使い方

python cut_generator.py <画像ディレクトリ> <CSVファイル> <出力ファイル>

オプション付きの例

python cut_generator.py images/ timing.csv output.mp4 --fps 30
python cut_generator.py images/ timing.csv output.mp4 --width 1280 --height 720
python cut_generator.py images/ timing.csv output.mp4 --fps 30 --width 3840 --height 2160

ファイル形式

画像ファイルの構造

画像はレイヤーごとのフォルダに配置:

images/
├── BG/          # 背景レイヤー(最下層)
│   ├── 1.png
│   └── 2.png
├── A/           # レイヤーA
│   ├── 1.png
│   └── 2.png
├── B/           # レイヤーB
│   ├── 1.png
│   └── 2.png
├── C/           # レイヤーC
│   └── 1.png
└── D/           # レイヤーD
    └── 1.png
  • フォルダ名: BG(背景、最下層)、A, B, C, D... (アルファベット順で上に重なる)
  • ファイル名: 1.png, 2.png, 3.png... (使用順序の連番)
  • 画像はアスペクト比を保ったまま出力解像度に合わせて拡大縮小されます(CSS containと同様の動作)

CSVファイル形式

A,B,C,D,セリフ,座布団カラー
1,1,1,1,こんにちは,#FF0000
1,2,1,1,元気ですか?,#1E90FF
2,1,1,2,,
2,2,2,2,さようなら,
  • 列ヘッダー: BG, A, B, C, D... (レイヤー名), セリフ, 座布団カラー
  • : 各フレームのタイミングデータ
  • セル: そのタイミングで使用する素材の番号
  • 座布団カラー: セリフ背景色(#RGB または #RRGGBB 形式、省略可能)

サンプルファイル構成

example/
├── images/
│   ├── A/
│   │   ├── 1.png, 2.png, ...
│   ├── B/
│   │   ├── 1.png, 2.png, ...
│   ├── C/
│   │   ├── 1.png, 2.png, ...
│   └── D/
│       ├── 1.png, 2.png, ...
└── timesheet.csv

実行例

# 基本例(デフォルト解像度 1920x1080)
python cut_generator.py example/images/ example/timesheet.csv example/output.mp4 --fps 24

# HD解像度での出力
python cut_generator.py example/images/ example/timesheet.csv example/output_hd.mp4 --fps 30 --width 1280 --height 720

# 4K解像度での出力
python cut_generator.py example/images/ example/timesheet.csv example/output_4k.mp4 --fps 24 --width 3840 --height 2160

技術仕様

  • 対応画像形式: PNG, JPG, JPEG, BMP
  • 出力形式: MP4 (H.264)
  • デフォルトFPS: 24
  • デフォルト解像度: 1920x1080 (--width, --height で変更可能)
  • レイヤー合成: アルファ対応
  • テキスト表示: セリフのオーバーレイ表示(座布団カラー対応)
  • タイムコード: HH:MM:SS:FF 形式、左上角に表示

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages