どうでもいい話
ウィンドウズは高いので入れたくないし,macは入りません.
ていうことでubuntuを入れてDaVinci Resolve をインストールしたところ,linux版は対応しているコーデックは少ない!
そこで,対応しているコーデックに動画を変換してやる必要が有るのでffmpegを使うのですが,動画のクリップ一個一個を手動で変換していくのは手間ですよね?
そこでMakefileを用いて自働化してしまいましょう!
作業
ffmpegのインストール
$ sudo apt update
$ sudo apt -y upgrade
$ sudo apt install ffmpeg
対応しているコーデックへの変換
変換方法のリンク
上記のリンクを参考に変換するためのコマンドを書きます.
ffmpeg -i input.mp4 -vcodec dnxhd -acodec pcm_s16le -s 1920x1080 -r 30000/1001 -b:v 36M -pix_fmt yuv422p -f mov output.mov
一応これをそれぞれの動画に対して入力,出力を書き換えてやれば変換は済みます.
でもいくつものファイルに対してコマンド叩くのはめんどくさいでしょ?
Makefileを書く
.
├── encode
│ ├── hoge.mov
│ └── fuga,mov
├── Makefile
├── hoge.MOV
└── fuga.MOV
下のMakefileは上の構造のような形で使います.
OUTDIR := encoded
SRCS := $(wildcard *.MOV)
TARGET := $(addprefix $(OUTDIR)/,$(patsubst %.MOV,%.mov,$(SRCS)))
$(warning $(TARGET))
CC = ffmpeg
CFLAGS = -i
.PHONY: all clean
all: $(TARGET)
$(OUTDIR)/%.mov: %.MOV
@if [ ! -e `dirname $@` ]; then mkdir -p `dirname $@`; fi
$(CC) $(CFLAGS) $< -vcodec dnxhd -acodec pcm_s16le -s 1920x1080 -r 30000/1001 -b:v 36M -pix_fmt yuv422p -f mov $@
clean:
rm -rf $(OUTDIR)
とりあえず説明は喫茶店でかきます