出力する映像をクリッピング(切り抜き)する


■説明
エンコードする映像の一部をクリッピング(切り抜き)するにはencoderオブジェクトのsetCropState(()メソッドにtrueを設定します。その後、encoderオブジェクトのsetCropType()メソッドに0〜2の値を設定します。この値を設定した場合、映像は以下のように処理されます。
0クリッピングしたサイズを映像サイズに合わせる(拡大)
1単純に切り抜く。映像のまわりは黒い枠になる
2不明
次にencoderオブジェクトのsetCropOffsets()メソッドを使って切り抜く範囲を指定します。パラメータは左、上、右、下の順番に端からのオフセットを指定します。値の単位はピクセルになります。
setScaleType()メソッドと併用した場合、setScaleType()のパラメーターに1を指定すると映像は最終出力映像サイズに拡大されます。パラメーターに2を指定した場合は拡大されず映像のまわりは黒色になります。

■ソースコード
eHost = app.getEncoderHost();
enc = eHost.createEncoderForFormat("QuickTime");
flag = enc.loadPreset("HD 1080i 29.97, H.264, AAC 48kHz");
if (flag){
enc.setCropState(true);
enc.setCropType(1);
enc.setCropOffsets(200, 150, 50, 100); // Left, Top, Right, Bottom
enc.encode("/Users/test/Desktop/00000.MTS", "/Users/test/Desktop/0.mov");
enc.onEncodeFinished = function(success){
if (success){
alert("正常にエンコードされました");
}else{
alert("エンコードに失敗しました");
}
}
eHost.runBatch();
}else{
alert("プリセットが読み込めませんでした");
}

サンプルをダウンロード
目次へ戻る