非力なスマホでサイズの大きな動画を再生するのはしんどい。
スマホの画面相当の解像度があれば十分だ。
画質がきれいな方がいいに決まってるけど色々設定が面倒だ。
設定に時間を取るくらいならさっさとエンコードしてスマホで動画を楽しむ時間にあてた方がよっぽどいい。
というようなコンセプトで、具体的には以下のようなことをやる。
解像度はスマホに合わせて2048×1024にする(VR動画なのでこんな縦横比)。
エンコードの設定はデフォルトのままにする(考えるのが面倒なだけ)。
NVEncをバッチファイルから直接起動してエンコードさせる(その方が速いらしい)。
AviUtlとAviUtlで使うNVEncの設定はすでに済んでいるものとする。
ここで新たに用意するのは2つ。
もらってきたNVEnc(現時点ではAviutl_NVEnc_6.05v2.zip)を解凍した
Aviutl_NVEnc_6.05v2¥exe_files¥NVEncC¥x64
の中身をどこか専用のフォルダ(NVEnc_x64とした)にコピーしたもの。
エンコード用のバッチファイル。
バッチファイルに記述するパラメタは、AviUtl上でNVEncの設定をする際に表示されるコマンド列(下の絵の赤枠の部分)を拝借する。
適当な名前のBATファイル(encode.batとした)をNVEnc_x64内に作り、上の絵の赤枠の部分をコピペする。
コピペ部分の先頭に「NVEncC64.exe 」を追加(「」の中、スペースも)する。
末尾に
1 |
--audio-copy -i %1 -o %~n1_2048x1024%~x1 |
を追加する。
エンコードしたい動画とNVEnc_x64の中身を同じフォルダに置く。
動画をencode.batにドロップする。
エンコードが開始される。
追加した部分の意味は以下の通り。
1 |
--audio-copy |
音声をそのままコピーしながら映像とともに出力する。
1 |
-i %1 |
第1引数を読み込みファイルとする。
ドロップしたファイルのファイル名が第1引数になる。
1 |
-o %~n1_2048x1024%~x1 |
[第1引数のファイル名]+[_2048x1024]+[第1引数の拡張子]
を出力ファイル名とする。
例えば、hoge.mpg をドロップすると hoge_2048x1024.mpg が作成される。
AviUtlから実行すると26fps、52分かかるものが、
BATファイルから実行すると200fps、6分でエンコードできる。
参考サイト
https://github.com/rigaya/NVEnc/releases
https://github.com/rigaya/NVEnc/blob/master/NVEncC_Options.ja.md
https://correct-log.com/bat_get_filename_without_extension/