mpeg_encode
機能
画像ファイルからMPEG-1のデータを作る
起動方法
mpeg_encode [-stat stat_file] [-quiet num_seconds] [-no_frame_summary]
[-gop gop_num] [-combine_gops] [-frames first_frame last_frame]
[-combine_frames] [-nice] [-max_machines num_machines]
[-snr] param_file
機能
画像ファイルからMPEG-1形式のデータファイルを作る(エンコードする)コマンドである。
param_fileに入力ファイルなどのデータを記述しておく。
param_fileのパラメータは次の通り。
- OUTPUT output_file
- 出力するファイル名を指定する。
- INPUT_DIR directory
- 画像ファイルの存在するディレクトリーを指定する。
- INPUT
- 画像ファイルの記述始まり。
- END_INPUT
- 画像ファイルの記述終り。
画像ファイルはINPUTとEND_INPUTの間に記述する。
例えば
INPUT
anim*.ppm [1-480]
END_INPUT
はanim1.ppm,anim2.ppm...anim480.ppmという画像ファイルがエンコードされる。
INPUT
anim.*.ppm [001-480]
END_INPUT
はanim001.ppm,anim002.ppm...anim480.ppmという画像ファイルがエンコードされる。
INPUT
anim.*.ppm [001-480+4]
END_INPUT
というふうに+4をつけるとanim1.ppm,anim5.ppm,anim9.ppm...という
画像ファイルがエンコードされる。
- BASE_FILE_FORMAT [YUV or PPM or PNM]
- 画像ファイルの種類を指定する。
YUVの場合は
YUV_SIZE "w"x"h"
を指定すること。
- INPUT_CONVERT conversion_command
- ppm,yuv以外の画像フォーマットを
変換する時に使用する時のコマンドを指定する。
例えばgifファイルをエンコードする場合は
INPUT_CONVERT giftoppm *
とすればgifの画像ファイルをgiftoppmによってppmに変換してからMPEGにエンコードする。
また画像ファイルがcompressなどで圧縮されている時、
INPUT_CONVERT zcat * | pnmscale -xsize 320 -ysize 240
とすれば解凍しながら、320x240の大きさにスケールしてエンコードされる。
- GOP_SIZE n
- 画像のグループの枚数を指定する。
- SLICES_PER_FRAME n
- 1フレームごとのスライスの数を指定する。
- PIXEL (FULL or HALF)
- モーションベクトルとしてhalf-pixelかfully-pixelを使用するかを指定する。
- RANGE n
- 圧縮のために+/1nフレームを使用する。
- PSEARCH_ALG algorithm
- P-フレームをサーチするためのアルゴリズムを指定する。
EXHAUSTIVE, TWOLEVEL, SUBSAMPLE, LOGARITHMICの内の一つを指定する。
- BSEARCH_ALG algorithm
- B-フレームをサーチするためのアルゴリズムを指定する。
SIMPLE, CROSS2, EXHAUSTIVEの内の一つを指定する。
- IQSCALE n
- I-フレームのqスケールの値nを指定する。
- PQSCALE n
- P-フレームのqスケールの値nを指定する。
- BQSCALE n
- B-フレームのqスケールの値nを指定する。
- REFERENCE_FRAME (ORIGINAL or DECODED)
- ORIGINALを指定するとモーションベクターとしてオリジナルの画像を指定する。
DECODEDを指定するとモーションベクターとしてデコードされた画像を指定する。
こちらの方が画質は良くなるがエンコードに時間がかかる。
- 次のパラメータはオプションである。
- FORCE_I_ALIGN parallel execution の場合に指定する。
param_fileの例
とりあえずはOUTPUT,INPUT_DIRとINPUT,END_INPUTの間にある
ファイル名、番号を書き変えればこのまま使用できる。
PATTERN IBBPBBPBBPBBPBB
OUTPUT anim.mpg
BASE_FILE_FORMAT PPM
GOP_SIZE 30
SLICES_PER_FRAME 1
PIXEL HALF
RANGE 10
PSEARCH_ALG LOGARITHMIC
BSEARCH_ALG CROSS2
IQSCALE 8
PQSCALE 10
BQSCALE 25
REFERENCE_FRAME ORIGINAL
INPUT_CONVERT *
INPUT_DIR pic
INPUT
anim*.ppm [1-480]
END_INPUT
INPUT_DIR
のところはカレントディレクトリに画像ファイルがある場合には
INPUT_DIR pic
の代わりに
INPUT_DIR .
( .(ピリオド)はカレントディレクトリを表すピリオド )
と書いておく。
オプション
- -stat stat_file
- エンコードの情報をstat_fileに書き出す。
- -quiet num_seconds
- num_seconds経過するまでは残り時間を表示しない。
num_secondsが負の値の場合は表示をしない。
0の場合は表示をする。(デフォールト)
- -no_frame_summary
- 各フレームにおける表示をやらない。
- -gop gop_num
- gop_numで指定されたGOPをエンコードする。
- -combine_gops
- いくつかのGOPファイルを一つのMPEGファイルに結合する。
- -frames first_frame
- last_frame first_frameからlast_frameまでをエンコードする。
- -nice
- 並列実行の時に実行を最適化する。
- -max_machines
- num_machines 並列実行の時の実行するマシンの最大数を指定する。
- -snr signal-to-noise
- レシオを表示する。
参照
Home | Contents
Mail