niiyan's blog

niiyanの個人ブログ。

ユーザー定義関数: BlackenFields

BlackenFieldsとは?

1フィールド、または、特定の範囲の連続したフィールドを、黒色(または、その他の色)に塗りつぶす関数です。

実際には、本当に塗りつぶすわけではありません。黒いフィールド画像を重ねる(Overlayする)ことによって、黒く塗りつぶしたように見せかけます。

ダウンロード

BlackenFields.zip - Windows Live (ZIP 形式で圧縮)

書式

BlackenFields(clip clip, int "start", int "end", bool "debug", int "color")
引数
  • start: 塗りつぶし開始フィールド番号。
  • end: 塗りつぶし終了フィールド番号。デフォルトはstart。1フィールドのみ塗りつぶす場合は省略。
  • debug: debug=trueで設定モード。デフォルトはfalse。
  • color: 塗りつぶす色の指定。デフォルトは$000000(黒)。

使い方

1. BlackenFields.avsをImportする。
# 例:
Import("BlackenFields.avs")
2. debug=trueで設定モードにする。
# 例:
BlackenFields(debug=true)
  • ここでは、他の引数は指定しません。
  • サンプル画像: サンプルクリップ(関数適用前)

  • サンプル画像: debug=trueにした場合

  • 設定モードのサンプル画像の説明
    • 上部: 各フィールドを縮小した画像(左が偶数フィールド、右が奇数フィールド)。
    • 下部: フレーム画像(元のフレームサイズにあわせるために、縦に圧縮されている)。
3. 塗りつぶしたいフィールド番号を指定する。

塗りつぶしたいフィールド番号を指定します。フレーム番号ではなく、フィールド番号であることに注意してください。フィールド番号は、画像上部のフィールド別画像で確認することができます(debug=true時のみ)。

# 例: 151フィールドを塗りつぶす
BlackenFields(151, debug=true)
  • サンプル画像: 151フィールドを塗りつぶし指定


4. 設定モードを解除する。

debug=falseとするか、引数debugの指定部分を削除して、設定モードを解除します。これで設定は完了です。

# 例:
BlackenFields(151)
  • サンプル画像: 設定モードを解除したところ


  • 複数の連続したフィールドを塗りつぶしたい場合
# 例: 151から153までのフィールドを塗りつぶす
BlackenFields(151, 153)
  • 黒以外の色で塗りつぶしたい場合
# 例: $ff0000(赤)で塗りつぶす
BlackenFields(151, color=$ff0000)

更新履歴

  • v1.*: BlackenFieldとして公開。
  • v2.0(非公開):
    • 1から書き直した。
    • 複数のフィールドを黒くすることが可能。
    • 上記の変更にあわせて、BlackenFieldsと改名した。
  • v2.1(非公開):
    • debugモードを更新。
    • フレーム数の表示などを追加した。
  • v2.2:
    • debugモードをサブ関数として分離(BlackenFieldsDebug)。
    • 黒以外の色を指定できるようにした。
  • (2007-10-23 追記)ZIP 形式で圧縮したものに差し替えました。内容は v2.2 から変更はありません。