- 本項ではsofdec2encVP9.exeで可能なSofdec.Prime/H.264エンコードの使用方法について説明します。
エンコードで使用するバッチファイルの変更について
- GUI版のSofdec2EncWiz.exeでビデオコーデックでVP9を選択しておき、
その他のエンコードパラメータを設定後にメニュー>エクスポートからバッチファイルを出力します。
その後、バッチファイルについて以下手順にて変更する事をおすすめします。
Sofdec.Primeエンコード用にバッチファイル変更
- sofdec2encVP9.exeのSofdec.Primeエンコード用のバッチファイルの作成についてはVP9のバッチファイルの以下4点について変更、削除してお試しください。
(1) -multi_pass=2のあるコマンド行(VP9 2パス目)の削除。
(2) 拡張子がivfになっているところをsfvに変更する。
(3) 「-vengine=libvpx -vcodec=vp9 -multi_pass=1 -vpx_speed=4」といったのVP9に関するオプションの削除。
(4)「-vcodec=prime -vengine=pms」のオプションの追加。
- 例えば以下のようなバッチ内容になります。
"sofdec2encVP9.exe" -in="sample.mov" -output_video="sample.sfv" -vbitrate=10000000 -acodec=hca -hca_quality=4 -input_audio#00="sample.mov" -vcodec=prime -vengine=pms
"sofdec2encVP9.exe" -input_video="sample.sfv" -input_audio#00="sample#00.hca" -out="sample.usm" -usm_disp_width=1920 -usm_disp_height=1080
H.264エンコード用にバッチファイル変更
- sofdec2encVP9.exeのH.264エンコード用のバッチファイルの作成についてはVP9のバッチファイルの以下4点について変更、削除してお試しください。
(1) -multi_pass=2のあるコマンド行(VP9 2パス目)の削除。
(2) 拡張子がivfになっているところを264に変更。
(3) 「-vengine=libvpx -vcodec=vp9 -multi_pass=1 -vpx_speed=4」といったのVP9に関するオプションの削除。
(4) 「-num_b_pictures=0 -slices=1 -maxgop=30」のオプションの追加。
- 例えば以下のようなバッチ内容になります。
"sofdec2encVP9.exe" -in="sample.mov" -output_video="sample.264" -vbitrate=10000000 -acodec=hca -hca_quality=4 -input_audio#00="sample.mov" -num_b_pictures=0 -slices=1 -maxgop=30
"sofdec2encVP9.exe" -input_video="sample.264" -input_audio#00="sample#00.hca" -out="sample.usm" -usm_disp_width=1920 -usm_disp_height=1080
サブコマンド(オプション)について
- 以下に既存のsofdec2enc.exe/sofdec2encH.264.exeのサブコマンドと仕様が異なってくる、注意すべきものについて説明します。
サブコマンド一覧
- ファイルサブコマンド
- ビデオ編集サブコマンド
- ビデオエンコード設定サブコマンド
- オーディオエンコード設定サブコマンド
サブコマンド名 | 内容 |
acodec | オーディオコーデックの指定 |
input_audio: オーディオファイルの指定(サラウンドオーディオ含む)
[書式]-input_audio#aa=filename
(-input_audio#aa#bb=filename)
[入力]filename: オーディオファイル
aa : オーディオトラック番号(範囲:00 - 31)
bb : オーディオチャンネル番号(範囲:00 - 05)
モノラル素材指定によるサラウンドオーディオの場合に使用
[機能]入力オーディオファイルを指定します。
(1) オーディオファイル
オーディオファイルの詳細については「 オーディオ素材ファイル 」を参照してください。
(2) オーディオトラック番号
(a) ここで指定したトラック番号が、Sofdecファイルのオーディオトラック番号になります。
(b) オーディオファイルを一つしか使わない場合は、トラック00を使うようにしてください。
(c) オーディオファイルは最大32本指定することができます。
(3) サラウンド用素材について
(a) 5.1chサラウンドオーディオにエンコードする場合は、6ch音声の素材を指定してください。
(b) モノラル素材を指定してサラウンドオーディオをエンコードする場合は #bb を以下のポジションに合わせて指定してください。
6ch素材のチャンネル番号 | スピーカーポジション |
00 | LEFT |
01 | RIGHT |
02 | CENTER |
03 | LFE |
04 | LEFT Surround |
05 | RIGHT Surround |
【例】HCAコーデックにてトラック00に5.1chサラウンドをモノラル素材指定、トラック01、02にそれぞれ英語音声、日本語音声ファイルを割り当てます。
rem <H.264エンコード>
"sofdec2encVP9.exe" -in="sample.mov" -output_video="sample.264" -vbitrate=10000000 -acodec=hca -hca_quality=4 -num_b_pictures=0 -slices=1 -maxgop=30 ^
-input_audio#00#00=l.wav ^
-input_audio#00#01=r.wav ^
-input_audio#00#02=c.wav ^
-input_audio#00#03=lfe.wav ^
-input_audio#00#04=ls.wav ^
-input_audio#00#05=rs.wav ^
-input_audio#01=voice_jp.wav ^
-input_audio#02=voice_en.wav
rem <マルチプレクス処理>
"sofdec2encVP9.exe" -input_video="sample.264" -out="sample.usm" -usm_disp_width=1920 -usm_disp_height=1080 ^
-input_audio#00#00=l.hca ^
-input_audio#00#01=r.hca ^
-input_audio#00#02=c.hca ^
-input_audio#00#03=lfe.hca ^
-input_audio#00#04=ls.hca ^
-input_audio#00#05=rs.hca ^
-input_audio#01=voice_jp.hca ^
-input_audio#02=voice_en.hca
resize: リサイズ
[書式]-resize="rw,rh"
[入力]rw: リサイズ後画像の横幅
rh: リサイズ後画像の高さ
[機能]元画像にピクセル値の平均化によるリサイズ処理を施します。
【例】640x480にリサイズします。
"sofdec2encVP9.exe" -in="sample.mov" -output_video="sample.264" -vbitrate=10000000 -acodec=hca -hca_quality=4 -input_audio#00="sample.mov" -num_b_pictures=0 -slices=1 -maxgop=30 -resize="640,480"
"sofdec2encVP9.exe" -input_video="sample.264" -input_audio#00="sample#00.hca" -out="sample.usm" -usm_disp_width=640 -usm_disp_height=480
h264_profile: H.264プロファイルの指定
[書式]-h264_profile=profile
[入力]profile: プロファイル名
high : H.264 High Profile
main : H.264 Main Profile
baseline: H.264 Baseline Profile
[機能]エンコード時のH.264プロファイルを指定します。
【例】H.264プロファイルを Main Profile に設定します。
"sofdec2encVP9.exe" -in="sample.mov" -output_video="sample.264" -vbitrate=10000000 -acodec=hca -hca_quality=4 -input_audio#00="sample.mov" -num_b_pictures=0 -slices=1 -maxgop=30 -h264_profile=main
"sofdec2encVP9.exe" -input_video="sample.264" -input_audio#00="sample#00.hca" -out="sample.usm" -usm_disp_width=1920 -usm_disp_height=1080
このサブコマンドを省略した場合、H.264プロファイルを自動設定し、エンコードします。
H.264では以下の利用ケースに応じて明示的に値の設定を行うようにして下さい。
(a) ゲーム機向け:high
(b) スマホ向け:main
slices: スライス数
[書式]-slices=slices
[入力]slices: スライス数
[機能]1枚のフレームを指定数の処理単位に分けて並列処理します。
本オプションを指定しない場合、解像度に応じて自動的に値が決定されます。
H.264では以下の利用ケースに応じて明示的に値の設定を行うようにして下さい。
(a) ゲーム機向け
PS4、PS5が対象な場合、4を指定して下さい。
並列処理を行い、フルHDといった大きな解像度で再生負荷を下げれます。
(b) スマホ向け
1を指定するようにして下さい。
SofdecでiOSは複数スライスによる並列処理は未対応です。
【例】スライス数を4に設定します。
"sofdec2encVP9.exe" -in="sample.mov" -output_video="sample.264" -vbitrate=10000000 -acodec=hca -hca_quality=4 -input_audio#00="sample.mov" -num_b_pictures=0 -slices=4 -maxgop=30
"sofdec2encVP9.exe" -input_video="sample.264" -input_audio#00="sample#00.hca" -out="sample.usm" -usm_disp_width=1920 -usm_disp_height=1080
num_b_pictures: Bピクチャの枚数
[書式]-num_b_pictures=num_b_pictures
[入力]num_b_pictures: Bピクチャの枚数
[機能]Bピクチャの枚数を指定します。
Bピクチャの枚数を指定します。
SofdecではBピクチャ有りのH.264データの再生には未対応です。
必ず0を指定して下さい。
【例】Bピクチャの枚数を0に設定します。
"sofdec2encVP9.exe" -in="sample.mov" -output_video="sample.264" -vbitrate=10000000 -acodec=hca -hca_quality=4 -input_audio#00="sample.mov" -num_b_pictures=0 -slices=1 -maxgop=30
"sofdec2encVP9.exe" -input_video="sample.264" -input_audio#00="sample#00.hca" -out="sample.usm" -usm_disp_width=1920 -usm_disp_height=1080
acodec: オーディオコーデックの指定
[書式]-acodec=acodec
[入力]acodec: オーディオコーデック名
none/adx : ADX
hca : HCA
[機能]エンコード時のオーディオコーデックを指定します。
マルチプレクス処理の音声コーデックADX/HCAの違いについて
(a) -input_audioでエンコード用に指定した音声元素材は以下のような中間ファイルとして出力されます。
- none/adx:sample#00.sfa
- hca :sample#00.hca
(b) (a) の出力ファイルはマルチプレクス処理部で-input_audioで指定する必要があります。
【例】オーディオコーデックを ADX に設定します。
"sofdec2encVP9.exe" -in="sample.mov" -output_video="sample.264" -vbitrate=10000000 -acodec=adx -input_audio#00="sample.mov" -num_b_pictures=0 -slices=1 -maxgop=30
"sofdec2encVP9.exe" -input_video="sample.264" -input_audio#00="sample#00.sfa" -out="sample.usm" -usm_disp_width=1920 -usm_disp_height=1080
【例】オーディオコーデックを HCA に設定します。
"sofdec2encVP9.exe" -in="sample.mov" -output_video="sample.264" -vbitrate=10000000 -acodec=hca -hca_quality=4 -input_audio#00="sample.mov" -num_b_pictures=0 -slices=1 -maxgop=30
"sofdec2encVP9.exe" -input_video="sample.264" -input_audio#00="sample#00.hca" -out="sample.usm" -usm_disp_width=1920 -usm_disp_height=1080