VVCの参照ソフトウェアVTMのインストール方法
Linux環境にVTMのインストールを行う方法を解説する。
VTMのインストールを行うにはgcc 7.4以上が必要となる。
(gcc 5.4ではビルドに成功しなかった)
よってdockerhubなどからdockerの環境でVTMをインストールしようとする際も、新しめのdocker imageを利用することがオススメである。
gccのバージョンは
$ gcc --version
で確認ができる。
VTMのGitLabページを以下に示す。
https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM/tree/master
$ git clone https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM.git
VTMのマニュアルはvtmのgitリポジトリの中に含まれている。
(VVCSoftware_VTM/doc/software_manual.pdf)
インストール方法を記述する。
クローンを行うと
VVCSoftware_VT
というディレクトリができる。
その下に移りbuildディレクトリを作成し、buildディレクトリの下に移動する。
$ cd VVCSoftware_VT
$ mkdir build
$ cd build
次にLinux Release Makefileを作成し、ビルドの準備をする。
$ cmake .. -DCMAKE_BUILD_TYPE=Release
最後にビルドする。
$ make -j
これを行うとVVCSoftware_VTM/bin に
EncoderAppStatic と DecoderAppStatic とその他ファイルが生成される。
これが実行ファイルである。
(DCMAKE_BUILD_TYPEをDebugに指定するとEncoderAppStaticd のように末尾にdが付く)
実行方法は以下の様な書き方をする。
./VVCSoftware_VTM/bin/EncoderAppStatic -c ./VVCSoftware_VTM/cfg/encoder_randomaccess_vtm.cfg -c ./BQMall.cfg -q 37 -i /mnt/Datasets/sequence/HEVC/BQMall_832x480_60.yuv --OutputBitDepth=8 -b out_bit.bin -o out.yuv -f 9
./VVCSoftware_VTM/bin/EncoderAppStatic:EncoderAppStaticまでのパス
-c:configurationファイルを指定(intra, lowdelay, randomaccessなど)
自分のconfigurationファイルも付け足す事ができる。例えば例にある
BQMall.cfgファイルの中身は以下の様になっている。
#======== File I/O ===============
InputFile : ../../origCfP/BQMall_832x480_60.yuv
InputBitDepth : 8 # Input bitdepth
FrameRate : 60 # Frame Rate per second
FrameSkip : 0 # Number of frames to be skipped in input
SourceWidth : 832 # Input frame width
SourceHeight : 480 # Input frame height
FramesToBeEncoded : 600 # Number of frames to be coded
Level : 3.1
-q:qpの値
-i:入力動画
--OutputBitDepth:VTMのデフォルトのoutput bit depthが10になっているので、
8が欲しければ例の様に書く
-b:バイナリファイル。つまり符号化後のファイル。
-o:符号化、復号されたときの動画。