CRI Sofdec  Last Updated: 2025-09-30 13:25 p
コンソール版 Sofdec エンコーダー

Sofdec用データを作成するためのコンソールツールです。
ビデオコーデックは Sofdec.Prime/H264/VP9/AV1 の中から選択できます。

GUI版エンコードツールでビデオコーデックにH264/VP9/AV1を指定したプロジェクトから バッチエンコード の手順を行うと、本ツール用のバッチファイルを出力します。

実行ファイル名

  • SofdecEncoderCLI.exe

入力ファイルと出力ファイル

基本的な使い方

Sofdecエンコーダーを起動するには、コマンドプロンプトを起動し、コマンドラインで次の書式でコマンドを入力します。

[書式]SofdecEncoderCLI [-subcommand=param1[,param2,...]]
[入力]subcommand :サブコマンド
    param# :サブコマンドパラメーター


【例】ビデオファイルsample.aviからSofdecファイルsample.usmを作成する。

> SofdecEncoderCLI -in=sample.avi -out=sample.usm


[備考] サブコマンドについて
 サブコマンドとはコマンドオプションのことで、どのような処理を行うかをプログラムに対して指示します。
 例えば、プログラムの入力ファイル、出力ファイル、プログラムの動作方法などを指定します。


サブコマンド一覧

  • ファイルサブコマンド
    サブコマンド名 内容
    in 入力ビデオファイルの指定
    out 出力ファイルの指定
    input_video 入力ビデオストリームファイルの指定
    input_alpha 入力アルファストリームファイルの指定
    input_audio# 入力オーディオファイルの指定
    output_video 出力ビデオストリームファイルの指定
    output_audio# 出力オーディオストリームファイルの指定
    subtitle# 字幕情報ファイルの指定
    cuepoint キューポイント情報ファイルの指定

  • ビデオ編集サブコマンド
    サブコマンド名 内容
    crop クロップ
    scale リサイズ
    usm_disp_width 表示サイズ (幅)
    usm_disp_height 表示サイズ (高さ)

  • ビデオエンコード設定サブコマンド
    サブコマンド名 内容
    vcodec ビデオコーデックの指定
    vbitrate ビットレートの指定
    framerate フレームレートの指定
    keyint GOPの最大長(またはIDRフレームの入る間隔上限)
    y_is_alpha アルファ部分をYとしてムービーを出力する
    cdesc_convert 色空間変換モードの指定
    cdesc_cp 情報源原色の色度座標の指定
    cdesc_tc 原ピクチャの光電子伝達特性の指定
    cdesc_mc 原色から輝度、色差信号を導出する行列の係数の指定
    vfullrange フルレンジにするかどうかの指定

  • オーディオエンコード設定サブコマンド
    サブコマンド名 内容
    acodec オーディオコーデックの指定
    hca_quality HCAコーデック使用時の音質設定
    ambisonics Ambisonicsとしてエンコード
    channel_config# オーディオチャンネルコンフィグの設定



サブコマンド仕様

ファイルサブコマンド

in: 入力ビデオファイルの指定
[書式]-in=filename
[入力]filename: 入力ビデオファイル
[機能]入力ビデオファイルを指定します。


入力ビデオファイルを指定するために必要なサブコマンドです。
ビデオファイルの詳細については「 ビデオ素材ファイル 」を参照してください。

【例】入力ビデオファイルに sample.avi を指定します。

> SofdecEncoderCLI -in=sample.avi -out=sample.usm



out: 出力ファイルの指定
[書式]-out=filename
[入力]out: 出力ファイル(usmファイル)
[機能]出力ファイル名を指定します。

出力ファイル名を指定するために必要なサブコマンドです。
ファイル名の拡張子には"usm"を指定してください。

【例】出力ファイル名をsample.usmに指定します。

> SofdecEncoderCLI -in=sample.avi -out=sample.usm



input_video: 入力ビデオストリームファイルの指定
[書式]-input_video=filename
[入力]filename:  入力ビデオストリームファイル
[機能]入力ビデオストリームファイルを指定します。


ビデオストリームファイルとは、後述の output_video オプションで出力されたストリームファイルです。
拡張子は以下のいずれかとなります。(本ツールではファイルの拡張子で解析処理を切り分けているため、拡張子は出力されたものから変更しないでください)

  • .sfv (Sofdec.Prime コーデック)
  • .264 (H264 コーデック)
  • .ivf (VP9 コーデック)
  • .av1.ivf (AV1 コーデック)
> SofdecEncoderCLI -input_video=smpvid.sfv -input_audio=smpaud.hca -out=sample.usm



input_alpha: 入力アルファストリームファイルの指定
[書式]-input_alpha=filename
[入力]filename:  入力アルファストリームファイル
[機能]入力アルファファイルを指定します。


アルファストリームファイルとは、後述の output_video オプションと y_is_alpha オプションを組み合わせて出力されたストリームファイルです。
アルファ成分のビデオコーデックは Sofdec.Prime 固定で、拡張子は以下のものとなります。(本ツールではファイルの拡張子で解析処理を切り分けているため、拡張子は出力されたものから変更しないでください)

  • .sfv
    > SofdecEncoderCLI -input_video=smpvid.sfv -input_alpha=smpalp.sfv -out=sample.usm


input_audio: 入力オーディオファイルの指定
[書式]-input_audio#**=filename
[入力]filename:  オーディオファイル
    ** :  オーディオトラック番号(範囲:00 - 31)
[機能]入力オーディオファイルを指定します。


(1) オーディオファイル
 オーディオファイルの詳細については「 オーディオ素材ファイル 」を参照してください。

(2) オーディオトラック番号
 (a) ここで指定したトラック番号が、Sofdecファイルのオーディオトラック番号になります。
 (b) オーディオファイルは最大32本指定することができます。

【例】トラック01, 02にそれぞれ英語音声、日本語音声ファイルを割り当て、トラック00に音楽ファイルを割り当てます。

> SofdecEncoderCLI -in=smpvid.avi -out=sample.usm
-input_audio#00=music.wav -input_audio#01=voice_en.wav -input_audio#02=voice_ja.wav



output_video: 出力ビデオストリームファイルの指定
[書式]-output_video=filename
[入力]filename:  出力ビデオストリームファイル
[機能]出力ビデオストリームファイルを指定します。


ビデオストリームファイルとは、このオプションで USM ファイルの代わりに出力されるストリームファイル(中間ファイル)です。
アルファエンコードやアルファプラスムービを作成する場合に使用します。 拡張子はビデオコーデックに従って以下のいずれかを指定してください。

  • .sfv (Sofdec.Prime コーデック)
  • .264 (H264 コーデック)
  • .ivf (VP9 コーデック)
  • .av1.ivf (AV1 コーデック)
> SofdecEncoderCLI -in=smpvid.avi -output_video=smpvid.sfv -vcodec=prime



output_audio: 出力オーディオストリームファイルの指定
[書式]-output_audio#**=filename
[入力]filename:  オーディオストリームファイル
    ** :  オーディオトラック番号(範囲:00 - 31)
[機能]出力オーディオストリームファイルを指定します。


(1) オーディオストリームファイル
オーディオストリームファイルとは、このオプションで出力されるエンコード済のオーディオファイル(中間ファイル)です。
拡張子はオーディオコーデックに従って以下のいずれかを指定してください。

  • .adx (ADX コーデック)
  • .hca (HCA コーデック)
    (2) オーディオトラック番号
     (a) ここで指定したトラック番号が、Sofdecファイルのオーディオトラック番号になります。
     (b) オーディオファイルは最大32本指定することができます。

    > SofdecEncoderCLI -in=smpvid.avi -output_video=smpvid.sfv -vcodec=prime
    -input_audio#00=music.wav -input_audio#01=voice_en.wav -input_audio#02=voice_ja.wav
    -output_audio#00=music.adx -output_audio#01=voice_en.adx -output_audio#02=voice_ja.adx
    -acodec=adx


subtitle: 字幕情報ファイルの指定
[書式]-subtitle#**=filename
[入力]filename:  字幕情報ファイル
    ** :  字幕チャンネル番号(範囲:00 - 15)
[機能]字幕情報ファイルを指定します。


(1) 字幕情報ファイル
 字幕情報ファイルの詳細については「 字幕情報ファイル 」を参照してください。

(2) 字幕チャンネル番号
 (a) ここで指定したチャンネル番号が、Sofdecデータの字幕チャンネル番号になります。
 (b) 字幕情報ファイルを1つしか使わない場合は、チャンネル00を使うようにしてください。
 (c) 最大16本までの字幕情報ファイルを指定することができます。

【例】英語用字幕情報ファイルと日本語用字幕情報ファイルを、それぞれチャンネル00、チャンネル01に割り当てます。

> SofdecEncoderCLI -in=smpvid.avi -input_audio#00=smpaud.wav -out=sample.usm
-subtitle#00=subttl_en.txt -subtitle#01=subttl_ja.txt



cuepoint: キューポイント情報ファイルの指定
[書式]-cuepoint=filename
    filename:  キューポイント情報ファイル
[機能]キューポイント情報ファイルを指定します。


 キューポイント情報ファイルの詳細については「 キューポイント情報ファイル 」を参照してください。

【例】

> SofdecEncoderCLI -in=sample.avi -out=sample.usm -cuepoint=sample_cuepoint.txt



ビデオ編集サブコマンド

crop: クロップ
[書式]-crop=crx,cry,crw,crh
[入力]crx:  クロップ後画像の元画像に対するX座標
    cry:  クロップ後画像の元画像に対するY座標
    crw:  クロップ後画像の横幅
    crh:  クロップ後画像の高さ
[機能]ビデオ素材の一部をクロップします。


クロップ画像が元画像の中に収まる範囲で指定できます。
デフォルトではクロップしません。

【例】ビデオ素材を 座標(0,0)、サイズ640x480でクロップします。

> SofdecEncoderCLI -in=sample.avi -out=sample.usm -crop=0,0,640,480



scale: リサイズ
[書式]-scale=scw,sch
[入力]scw:  リサイズ後画像の横幅
    sch:  リサイズ後画像の高さ
[機能]元画像にピクセル値の平均化によるリサイズ処理を施します。


デフォルトではリサイズしません。
解像度は1x1~4088x2400の範囲、
8の倍数で指定する必要があります。

【例】640x480にリサイズします。

> SofdecEncoderCLI -in=sample.avi -out=sample.usm -scale=640,480



usm_disp_width: 表示サイズ (幅)
[書式]-usm_disp_width=dispw
[入力]dispw:  表示したいビデオの横幅
[機能]表示したいビデオのサイズ (幅) の情報を記録します。

usm_disp_height: 表示サイズ (高さ)
[書式]-usm_disp_height=disph
[入力]disph:  表示したいビデオの高さ
[機能]表示したいビデオのサイズ の情報を記録します。


実際にランタイム再生時に表示したいビデオのサイズ情報を記録します。
ツール:Wizz、ランタイムではムービーヘッダの解析結果で情報を確認できます。
通常は入力元素材の解像度の情報をそのまま記録してください。
本オプションを指定しない場合は出力時の解像度の情報を記録します。

【補足】
ムービーコーテックによって出力解像度の制限があり、エンコーダ側で黒枠を追加することがあります。
その場合は本情報を使用して黒枠部を表示しないようにテクスチャのUV調整などで表示領域だけ描画するといった用途に使用します。
【例】640x480を表示サイズとして記録します。

> SofdecEncoderCLI -in=sample.avi -out=sample.usm -usm_disp_width=640 -usm_disp_height=480



ビデオエンコード設定サブコマンド

vcodec: ビデオコーデックの指定
[書式]-vcodec=codec
[入力]codec:  コーデック名
         prime : Sofdec.Prime
         h264 : H264
         vp9 : VP9
         av1.ivf : AV1
[機能]ビデオのコーデックを指定します。

このサブコマンドを省略した場合は、H264 コーデックでエンコードします。

  • デフォルト値: h264

【例】ビデオコーデックにVP9を指定します。

> SofdecEncoderCLI -in=smpvid.avi -input_audio#00=smpaud.wav -out=sample.usm
-vcodec=vp9



vbitrate: ビットレートの指定
[書式]-vbitrate=rate
[入力]rate: 平均ビットレート [bps]
[機能]出力ファイルの平均ビットレートを指定します。

指定した平均ビットレートに近づくよう、可変ビットレートでエンコード処理を行います。
このサブコマンドを省略した場合は、リトライをせずに高品質のファイルを出力します。

【例】ビットレートを6Mbpsに設定します。

> SofdecEncoderCLI -in=smpvid.avi -input_audio#00=smpaud.wav -out=sample.usm
-vbitrate=6000000



framerate: フレームレートの指定
[書式]-framerate=fr_num,fr_den
[入力]fr_num: 分数でフレームレートを指定します。分子
    fr_den: 分数でフレームレートを指定します。分母。
[機能]ムービーのフレームレートを指定します。[fps]


  • フレームレートに29.97fpsを指定する場合のコマンド例に示します。
    • 分数表現: -framerate=30000,1001
  • 60fpsまで指定できます。
  • このサブコマンドを省略した場合は、ビデオ素材のフレームレートが使われます。
  • 音声指定も行う場合、フレームレート変更に合わせた音声素材(サンプリング周波数の変更などにより動画と尺を合わせたもの)を予め用意しておく必要があります。
  • フレームレートの指定はフレームを挿入したり、間引いたりする機能では
    ありませんのでご注意下さい。
    ここで指定したフレームレート情報はムービーデータのヘッダーに埋め込まれ、
    ランタイム再生時にフレーム取得タイミング調整などで使用されるものです。
    例えば60fps素材を30fps指定でエンコードしても、データサイズは変わりません。
    30fpsムービーを作成するためには元素材レベルで30fpsのものを用意して下さい。

    【例】フレームレートを29.97fpsに設定します。
    > SofdecEncoderCLI -in=smpvid.avi -input_audio#00=smpaud.wav -out=sample.usm
    -framerate=30000,1001

    【補足】
    現状、ムービーヘッダーに記載される平均ビットレート情報(バージョンチェックツール「Wizz」で 確認できるAverage bitrate)について、実際のムービーの平均ビットレートとは異なる情報を 埋めてしてしまうケースがありますのでご注意下さい。具体的には以下になります。

    指定フレームレートによる平均ビットレート計算内容
    指定フレームレート[fps] 計算内容
    23.976未満 23.976に切り上げて計算したものをムービーヘッダーへ記載
    60より大きい 60に切り下げて計算したものをムービーヘッダーへ記載


keyint: GOPの最大長(またはIDRフレームの入る間隔上限)
[書式]-keyint=maxgop
[入力]maxgop: GOPの最大長
[機能]GOPの最大長を指定します。


SofdecムービーファイルはGOP単位で構成されており、シーク位置に合わせて対象となるGOP先頭のキーフレームからデコード開始、フレーム破棄を繰り返します。 例えば、GOP先頭へシークするのに対してGOP末尾にシークする場合、最も状態遷移に時間がかかります。
この値を小さくするとシーク処理時間は短くなりますが、キーフレームが多くなるため圧縮率は下がります。
逆に、この値を大きくすると圧縮率は改善しますが、シーク時間が長くなります。

  • デフォルト値: 60


y_is_alpha: アルファ部分をYとしてムービーを出力する
[書式]-y_is_alpha=sw
[入力]sw: アルファのみ出力機能のスイッチ
     on : アルファ部分をYとしてムービーを出力するモード
     off: 通常モード(デフォルト)
[機能]ONにしたとき、アルファ成分を含む入力素材の場合、アルファ成分のみをYとしてグレースケールのムービーを出力します。


現在、Sofdec.Prime コーデックを指定した時のみ正常に動作します。
また、後述の vfullrange オプションと併用して指定してください。


cdesc_convert: 色空間変換モードの指定
[書式]-cdesc_convert=mode
[入力]mode : 色空間変換モード
     fix : 固定モード(デフォルト)
     auto : 自動判定モード(入力ビデオ素材の色空間を読み取ってそのままムービーヘッダにも記録する)
     bt709: BT.709 モード(可能な限り BT.709 に変換する)
[機能]ムービーの色空間情報を設定します。


Sofdec では、入力ビデオを YUV BT.601 か YUV BT.709 のどちらかに調整してからエンコードを行います。
デフォルトの固定モードは、後述の cdesc_cp / cdesc_tc / cdesc_mc オプションで与えられた値を元に色空間情報をムービーヘッダに記録します。
入力ビデオ素材の色空間が非圧縮のRGBだった場合、必ず上記の値を使って色空間を変換しますが、入力ビデオ素材の色空間が YUV だった場合、色空間の変換を行いません。
cdesc_cp / cdesc_tc / cdesc_mc オプションが省略された場合はそれぞれのデフォルトの値を用いるため、BT.601 Limited Range であるとして色空間情報を記録します。
入力ビデオ素材の色空間が YUV であり、cdesc_cp / cdesc_tc / cdesc_mc オプションで与えられた値と、実際の入力ビデオ素材の色空間が異なっていた場合、色空間の変換が行われないため誤った色空間情報が記録されてしまいます。
アプリケーション側でムービーヘッダから色空間情報を読み取って描画処理を変える場合、このモードでは正しい描画ができません。
そのような場合は自動判定モードを指定してください。
自動判定モードでは、入力ビデオ素材から色空間情報を読み取って色空間の変換を行わずにムービーヘッダに記録するため、アプリケーションで色空間情報を読み取って描画処理を適切に選択することが可能です。
なお、入力ビデオ素材が非圧縮のRGBだった場合、固定モードと同じ挙動になります。

BT.709 モードでは、入力ビデオ素材が変換可能な YUV 色空間であれば BT.709 色空間に変換を行ってからエンコードを行います。

入力ビデオ素材が YUV BT.601 色空間のもの、YUV BT.709 色空間のもので混在しているが、描画処理は BT.709 に共通化したい場合はこのモードを使用してください。
また、レンジは入力ビデオ素材の情報をそのまま使用します。(入力が BT.601 Full Range ならば変換後は BT.709 Full Range になります)
なお、このモードでも入力ビデオ素材が非圧縮のRGBだった場合、固定モードと同じ挙動になります。

【補足】
現在、Sofdec で対応している色空間は BT.601 (Limited Range/Full Range) と BT.709 (Limited Range/Full Range) のみです。
今後の更新で、BT.2020 などの色空間にも対応する予定です。


cdesc_cp: 情報源原色の色度座標の指定
[書式]-cdesc_cp=value
[入力]value : 情報源原色の色度座標
[機能]情報源原色の色度座標を指定します。


cdesc_tc: 原ピクチャの光電子伝達特性の指定
[書式]-cdesc_tc=value
[入力]value : 原ピクチャの光電子伝達特性
[機能]原ピクチャの光電子伝達特性を指定します。


cdesc_mc: 原色から輝度、色差信号を導出する行列の係数の指定
[書式]-cdesc_mc=value
[入力]value : 原色から輝度、色差信号を導出する行列の係数
[機能]原色から輝度、色差信号を導出する行列の係数を指定します。


現時点で、Sofdec で対応している色空間は BT.601 (Limited Range/Full Range) と BT.709 (Limited Range/Full Range) のみです。
入力ビデオ素材の色空間が RGB で、BT.601 でエンコードしたい場合はそれぞれ 6 を、BT.709 でエンコードしたい場合はそれぞれ 1 を指定してください。
また、入力ビデオ素材の色空間が YUV である場合は、そのビデオ素材の色空間に従って上記の通りの値を指定してください。

  • デフォルト値: -cdesc_cp=6 -cdesc_tc=6 -cdesc_mc=6


    vfullrange: フルレンジにするかどうかの指定
[書式]-vfullrange=sw
[入力]sw: フルレンジかどうかのスイッチ
     on : フルレンジ
     off: リミテッドレンジ(デフォルト)
[機能]フルレンジにするかどうかを指定します。


ビデオの階調をフルレンジにするかリミテッドレンジにするかを指定します。
y_is_alpha オプションと併用する場合、-vfullrange=on を指定してください。


オーディオエンコード設定サブコマンド

acodec: オーディオコーデックの指定
[書式]-acodec=codec
[入力]codec: オーディオコーデック
      ADX: ADX コーデック (デフォルト)
      HCA: HCA コーデック
[機能]オーディオのコーデックを指定します。


オーディオコーデックに関する詳細はコーデックの選択 を参照ください。

hca_quality: HCAコーデック使用時の音質設定
[書式]-hca_quality=count
[入力]count: エンコード品質の設定。以下の5つの値が指定可能。
      5 = 最高品質
      4 = 高品質(デフォルト)
      3 = 中品質
      2 = 低品質(高圧縮)
      1 = 最低品質(最高圧縮)
[機能]オーディオのエンコードをHCAとしてエンコードするかどうかを指定します。


エンコード品質の設定値と、大まかな圧縮率は以下のとおりです。

品質設定 モノラル時 ステレオ以上
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



ambisonics: Ambisonicsとしてエンコード
[書式]-ambisonics
[入力]なし
[機能]入力された音声素材をAmbisonicsとしてエンコードを行います。
    本機能はHCAコーデックのみ対象となるため、同時に-hca=ONオプションを指定する必要があります。
    また、audioオプションでAmbisonics用のオーディオ素材ファイルを指定する必要があります。



channel_config: オーディオチャンネルコンフィグの設定
[書式]-channel_config##=string
[入力]string :  チャンネルコンフィグ文字列
    ## :  オーディオトラック番号(範囲:00 - 31)
[機能]オーディオトラックに対して、チャンネル構成を示す値を設定します。
    本機能で指定した値は、AtomExプレイヤーを使用する設定で再生を行う際に使用され、
    各チャンネルと出力スピーカーの対応付けが行われます。
    AtomExプレイヤーを使用しない場合、この設定は使用しません。
    また、この値を指定しなかった場合、そのチャンネル数のデフォルトのチャンネル構成で再生を行います。
    チャンネル構成のデフォルトの値に関しては、「CRI ADXマニュアル」を参照してください。


オプションに指定できる文字列の一覧は以下のとおりです。

チャンネル数 文字列 説明
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