HandBrake CLIでマイプリセットを活用
動画変換ソフトHandBrakeは、いつも大変お世話になっている。カーナビで動画を再生するためにはSDカードに入れないといけないが、動画形式やサイズなどは決められており、そのための設定をマイプリセットに保存しておいてカーナビ用に動画を変換している。
HandBrake公式サイト
その一方で、HandBrake CLIというコマンドライン版もある。CLIの用途としては、当然のことながらシェルスクリプトなどで大量の動画を自動処理するためのものだが、通常のHandBrakeで保存したマイプリセットを活用しながら自動処理ができるのか公式のマニュアルなどを見ながら試行錯誤したところ、ようやく解決した。手順は以下の通りである。
1. GUI版のHandBrakeでお好みの設定をマイプリセットに保存
2. HandBrake CLIでマイプリセットを利用しながら動画変換処理
Qiita記事の「HandBrakeCLIでチャプターごとに動画を分割」を参考にしつつ、マイプリセットを読み込みながら動画変換をバッチで行うスクリプトを書いてみた。
#!/bin/sh
source_filename="movie.m4v"
# マイプリセットを読みつつ、24チャプターに分かれているmovie.m4vを分割
for var in {1..24}
do
file="${var}.m4v"
HandBrakeCLI --preset-import-gui --preset "カーナビ16_9" -c $var -i $source_filename -o $file
done
肝心のポイントは以下の部分である。”--preset-import-gui ”ではGUIのプリセット(マイプリセットを含む)を読み込み、”--preset "カーナビ16_9"で使用したいプリセット名を選択する。
HandBrakeCLI --preset-import-gui --preset "カーナビ16_9" 以下省略
以上