CRI Sofdec
Last Updated: 2024-09-25 20:36 p
|
Sofdec用データをビデオコーデックSofdec.Primeで作成するためのコンソールツールです。
GUI版エンコードツールでビデオコーデックにSofdec.Primeを指定したプロジェクトから バッチエンコード の手順を行うと、本ツール用のバッチファイルを出力します。
Sofdecエンコーダーを起動するには、コマンドプロンプトを起動し、コマンドラインで次の書式でコマンドを入力します。
【例】ビデオファイルsample.aviからSofdecファイルsample.usmを作成する。
[備考] サブコマンドについて
サブコマンドとはコマンドオプションのことで、どのような処理を行うかをプログラムに対して指示します。
例えば、プログラムの入力ファイル、出力ファイル、プログラムの動作方法などを指定します。
サブコマンド名 | 内容 |
---|---|
in | 入力ビデオファイルの指定 |
out | 出力ファイルの指定 |
video## | ビデオファイルの指定 |
alpha## | アルファファイルの指定 |
audio## | オーディオファイルの指定 |
mca##_** | サラウンドムービー用オーディオファイルの指定 |
subtitle## | 字幕情報ファイルの指定 |
cuepoint | キューポイント情報ファイルの指定 |
サブコマンド名 | 内容 |
---|---|
crop | クロップ |
scale | リサイズ |
disp_size | 表示サイズ |
サブコマンド名 | 内容 |
---|---|
bitrate | ビットレートの指定 |
br_range | 可変ビットレート時のビットレート範囲の指定 |
framerate | フレームレートの指定 |
hcfilter | 高圧縮フィルターの適用 |
gop_i | Iピクチャ数 |
gop_p | Pピクチャ数 |
gop_b | Bピクチャ数 |
gop_closed | クローズドGOP |
detectsc | シーンチェンジの検出 |
ms_fullpel_still | 静止画部分の動き検索フルペル指定 |
qmf_range | 適応量子化マトリクスの範囲指定 |
alpha_quality | アルファチャンネル品質調整 |
サブコマンド名 | 内容 |
---|---|
hca | オーディオ素材をHCAコーデックでエンコード |
hca_quality | HCAコーデック使用時の音質設定 |
ambisonics | Ambisonicsとしてエンコード |
channel_config## | オーディオチャンネルコンフィグの設定 |
サブコマンド名 | 内容 |
---|---|
cleanup | 中間ファイルの削除 |
work_dir | 作業ディレクトリの設定 |
debug | デバッグ情報の出力 |
outputsc | 【実験版】シーンチェンジ位置リストファイルの出力 |
入力ビデオファイルを指定するために必要なサブコマンドです。
videoサブコマンドの代わりに使うことができます。
【例】入力ビデオファイルに sample.avi を指定します。
出力ファイル名を指定するために必要なサブコマンドです。
ファイル名の拡張子には"usm"を指定してください。
【例】出力ファイル名をsample.usmに指定します。
(1) ビデオファイル
ビデオファイルの詳細については「 ビデオ素材ファイル 」を参照してください。
(2) ビデオトラック番号
トラック番号には必ず00を指定するようにしてください。
他のトラック番号はサポートされていません。
【例】トラック00にAVIファイルsmpvid.aviを割り当てます。
アルファムービーを作成する時に、エンコードしたいアルファチャンネルを含むAVIファイルを指定してください。
(1) アルファトラック番号
トラック番号には必ず00を指定するようにしてください。
【例】トラック00にAVIファイルsmpvid.aviのアルファチャンネルを割り当てます。
(1) オーディオファイル
オーディオファイルの詳細については「 オーディオ素材ファイル 」を参照してください。
(2) オーディオトラック番号
(a) ここで指定したトラック番号が、Sofdecファイルのオーディオトラック番号になります。
(b) オーディオファイルは最大32本指定することができます。
【例】トラック01, 02にそれぞれ英語音声、日本語音声ファイルを割り当て、トラック00に音楽ファイルを割り当てます。
【注意】
6チャンネルのサラウンドムービー用オーディオファイルの指定で以下の2つのオプションは併用することができません。
どちらか一方のオプションだけで指定するようにしてください。
(1) オーディオファイル
(a) サラウンドムービー用データを作成するには、各スピーカーポジションに対応した素材ファイルが必要です。
(b) サラウンドムービーの素材ファイルはモノラルデータである必要があります。
(2) オーディオトラック番号
(a) ここで指定したトラック番号が、Sofdecファイルのオーディオトラック番号になります。
(b) オーディオトラックを一つしか使わない場合は、トラック00を使うようにしてください。
(c) オーディオファイルは最大32本指定することができます。
(3) チャンネル番号
(a) サラウンドムービー用データのチャンネル指定は省略できません。必ず全てのチャンネルに素材ファイルを指定してください。
(b) サラウンドムービー用オーディオファイルのチャンネル番号とスピーカーポジションの対応は以下の通りです。
チャンネル番号 | スピーカーポジション |
---|---|
00 | LEFT |
01 | RIGHT |
02 | LEFT Surround |
03 | RIGHT Surround |
04 | CENTER |
05 | LFE |
【例】トラック00にサラウンドムービー用オーディオファイルを割り当てます。
【注意】
6チャンネルのサラウンドムービー用オーディオファイルの指定で以下の2つのオプションは併用することができません。
どちらか一方のオプションだけで指定するようにしてください。
(1) 字幕情報ファイル
字幕情報ファイルの詳細については「 字幕情報ファイル 」を参照してください。
(2) 字幕チャンネル番号
(a) ここで指定したチャンネル番号が、Sofdecデータの字幕チャンネル番号になります。
(b) 字幕情報ファイルを1つしか使わない場合は、チャンネル00を使うようにしてください。
(c) 最大16本までの字幕情報ファイルを指定することができます。
【例】英語用字幕情報ファイルと日本語用字幕情報ファイルを、それぞれチャンネル00、チャンネル01に割り当てます。
キューポイント情報ファイルの詳細については「 キューポイント情報ファイル 」を参照してください。
【例】
クロップ画像が元画像の中に収まる範囲で指定できます。
デフォルトではクロップしません。
【例】ビデオ素材を 座標(0,0)、サイズ640x480でクロップします。
デフォルトではリサイズしません。
解像度は1x1~4088x2400の範囲、
8の倍数で指定する必要があります。
【例】640x480にリサイズします。
実際にランタイム再生時に表示したいビデオのサイズ情報を記録します。
ツール:Wizz、ランタイムではムービーヘッダの解析結果で情報を確認できます。
通常は入力元素材の解像度の情報をそのまま記録してください。
本オプションを指定しない場合は出力時の解像度の情報を記録します。
【補足】
ムービーコーテックによって出力解像度の制限があり、エンコーダ側で黒枠を追加することがあります。
その場合は本情報を使用して黒枠部を表示しないようにテクスチャのUV調整などで表示領域だけ描画するといった用途に使用します。
【例】640x480を表示サイズとして記録します。
指定した平均ビットレートに近づくよう、可変ビットレートでエンコード処理を行います。
このサブコマンドを省略した場合は、リトライをせずに高品質のファイルを出力します。
【例】ビットレートを6Mbpsに設定します。
【補足】
(*1) アルファムービー作成時にはコンテンツ内容にもよりますが、本オプションで 指定したビットレート値の約2倍のUSMファイルを作成されます。 (RGB部、アルファ部にそれぞれ-bitrateで指定された値でエンコードを試みます) アルファ部のビットレート割り当てを下げたい場合には「alpha_quality」オプションで 画質、圧縮率を調整してみて下さい。
このオプションは主に可変ビットレートでの低いビットレートの部分を 底上げすることを目的としております。
maxの最大ビットレート上限値を設定して高いビットレートを落とす、 ピークをカットするという抑止効果はあまりないです。
その場合は「-bitrate」で指定している値を下げて調整するようにして下さい。(*1)
【例】最小ビットレートを0bps、最大ビットレートを3000000bps でエンコードします。
【補足】
(*1) ビットレートの下げ止まりが発生した場合は高圧縮なムービーデータをエンコードするには? をご参考の上、
「-qmf_range」、「alpha_quality」オプションで画質、圧縮率を調整してみて下さい。
指定フレームレート[fps] | 計算内容 |
---|---|
23.976未満 | 23.976に切り上げて計算したものをムービーヘッダーへ記載 |
60より大きい | 60に切り下げて計算したものをムービーヘッダーへ記載 |
高圧縮フィルターは低ビットレートでエンコードする場合に特に有効です。
現在、Iピクチャ数は1のみエンコード可能になっております。
2以上の値ではエンコードができない仕様になっておりますのでご注意下さい。
GOP長やGOP中の調整はP、Bピクチャの数の変更で行って下さい。
GOP長やGOP中のI、P、Bピクチャの数を調整することで、ムービーの画質を改善することができます。
【補足】
エンコードエンジンの挙動上、GOP間隔がある程度長くなってくると ビットレートやファイルサイズが大きくなり、また、画質も悪くなる(絵の崩れや色ズレのノイズ) 可能性があります。 GOP間隔は15~30(-p=4~8, -b=2~4)程度をおすすめします。
GOP長やGOP中のI、P、Bピクチャの数を調整することで、ムービーの画質を改善することができます。
【補足】
エンコードエンジンの挙動上、GOP間隔がある程度長くなってくると ビットレートやファイルサイズが大きくなり、また、画質も悪くなる(絵の崩れや色ズレのノイズ) 可能性があります。 GOP間隔は15~30(-p=4~8, -b=2~4)程度をおすすめします。
クローズドGOPにした場合、GOPシーケンスが他のGOPとは独立になり、編集作業が容易になります。
シーンチェンジ検出を使うと、Iピクチャを自動的に挿入することができます。
新しいシーンの先頭にIピクチャを挿入することで、シーンチェンジ直後の画質を改善することができます。
このオプションを有効にすると、動画部分をハーフペル(半画素)で、静止画部分をフルペル(全画素)で動き検索を行います。
暗いシーンでのざわつきを抑えることができますが、微妙な動きを再現できなくなります。
このオプションを使用すると適応する量子化マトリクスが調整されるため、
より圧縮を効きやすくするといったことが可能です。
例えばこの範囲指定の上限値をデフォルトの5.0から低いものにするほど圧縮効果の
高い量子化マトリクスが適応されます。
上限値を4.0、3.0、2.0…と小さくしてみて、画質と圧縮率の調整をしてください。
【例】適応量子化マトリクスの範囲指定で上限値を4.0へ調整します。
アルファムービーのエンコード時にRGB部に対するアルファ部のビットレート割合を
指定し、圧縮率の調整を行うことが可能です。このオプションの指定値としては
100~0[%]で指定します。
RGB部と比較して100であれば等倍の指定ビットレート、50であれば半分の指
定ビットレートをアルファ部に割り当ててエンコードを行います。
【例】半分の指定ビットレートをアルファ部に割り当ててエンコードを行います。
「-hca」だけコマンド指定した場合もHCAコーデックとしてエンコードします。 HCAオプションがOFFの場合、ADXコーデックとしてエンコードします。コーデックに関する詳細はコーデックの選択 を参照ください。
エンコード品質の設定値と、大まかな圧縮率は以下のとおりです。
品質設定 | モノラル時 | ステレオ以上 |
---|---|---|
5 | 1/4 | 1/4 |
4 | 1/6 | 1/6 |
3 | 1/8 | 1/8 |
2 | 1/10 | 1/12 |
1 | 1/12 | 1/16 |
オプションに指定できる文字列の一覧は以下のとおりです。
チャンネル数 | 文字列 | 説明 |
---|---|---|
1 | MONO | モノラル |
2 | STEREO | ステレオ |
3 | 3_LRC | 3ch(L, R, C) |
3 | 3_LRS | 3ch(L, R, Cs) |
4 | QUAD | 4ch(L, R, Ls, Rs) |
5 | 5 | 5ch |
5 | 4_1 | 4.1ch |
6 | 5_1 | 5.1ch |
7 | 6_1 | 6.1ch |
8 | 7_1 | 7.1ch |
8 | 5_1_2 | 5.1.2ch |
10 | 7_1_2 | 7.1.2ch |
12 | 7_1_4 | 7.1.4ch |
OFF に設定した場合、Sofdecビデオファイル(.sfv)とSofdecオーディオファイル(.sfa)が素材ファイルと同じフォルダーに残ります。
デフォルトはON(削除する)です。
作業ディレクトリを指定しない場合は、入力ファイルと同じ場所に中間ファイルが作られます。
デフォルト設定は OFF です。(デバッグ情報なし)
エンコード時に合わせてエンコード素材を解析し、シーンチェンジが発生したフレーム番号を リストファイルとして出力します。
用途としては、動画素材側に編集が行われた場合に、動画内のどのあたりで編集が行われたかの 目安にする、ということを想定しています。
本機能は実験的に追加しているものです。予告なく仕様を変更する場合があります。