拡張編集

Readmeをフォーマットしました。

拡張編集プラグイン version 0.93rc1 by ＫＥＮくん

# － はじめに －

AviUtlで複数の映像、画像、テキスト等を任意の場所に表示したり、フィルタを任意の場所に指定したりすることが出来るプラグインです。SSE2が使えるCPUが必要です。

# － インストール －

0

解凍したファイルをAviUtl(version0.99k以降)と同じフォルダに入れてください。

# － 問題点＆注意点 －

○フィルタ途中の画像を取得するプラグインでは正しい画像が取得出来ない可能性が高いです。
○編集向け機能についてはいろいろと模索中なので、今後仕様等の変更や編集データ互換性もなくなる可能性が高いです。
○拡張編集上やその後にリサイズやクリッピング等をするとメインウィンドウでのドラッグの位置がずれる可能性があります。
○フレーム間圧縮された動画ファイルや圧縮された音声ファイルは重くなったり正しく扱えなかったりする可能性があります。
○ポリゴンの描画処理は32bit固定少数点で演算しているので精度が低かったり破錠することがあります。
○出力時にフレームレートを変更すると正しい結果が得られないフィルタがあります。
○AviUtl本体側でのフレーム削除等の編集は拡張編集側での編集には反映されません。
○ほとんど最適化してないので処理が重めです。
○VFAPIでは動作しません。
# － 簡易説明 －

### ○編集画面

AviUtlのメニューの設定から拡張編集の設定をチェックすると編集画面が表示されます。画面上部の目盛をクリックすると表示フレームを移動します。スクロールバーやマウスのホイール、Alt+ドラッグで表示エリアを移動できます。

### ○レイヤー

1

100個のレイヤーがあり、上から順にフィルタが適用されます。左端のレイヤー番号が表示されている部分を押すと表示/非表示を変更できます。Ctrlキーを押しながらだとレイヤー上の全てのオブジェクトを選択状態にします。右クリックメニューから下記の操作が出来ます。

◇レイヤーのロック
レイヤーの編集のロックをON/OFFします。
◇レイヤーの表示
レイヤー上のオブジェクトの有効/無効を切り替えます。
◇レイヤー名の変更
レイヤーの名前を変更します。
◇他のレイヤーを全表示/非表示
他のレイヤーを全て表示もしくは非表示にします。
◇レイヤーの挿入
レイヤーを挿入します。
※現状では最下層のレイヤーを挿入するようになっています。
◇レイヤーの削除
レイヤーを削除します。
◇座標のリンク
メディアオブジェクトの座標を隣のオブジェクトとリンクさせます。
※オブジェクトの種類や移動方法によっては反映されません。
◇上のオブジェクトでクリッピング
上位のレイヤーにあるメディアオブジェクトでクリッピングをしてから描画するようにします。
※描画直前にオフスクリーン描画されます。
※オブジェクトの種類や状態によっては反映されません。
### ○シーン

26

50個のシーンがありそれぞれ別々のタイムラインを保持することが出来ます。編集画面の左上にあるシーン名を左クリックすると編集シーンを変更できます。またシーン名を右クリックで現在のシーンの設定を変更できます。

※一番上のルートシーンは一部動作が特殊になります。
◇シーン名
シーンの名前を変更します。
◇画像サイズ
シーンの画像サイズを変更します。未指定の場合はプロジェクトのサイズになります。ルートシーンでサイズを指定した場合は指定サイズで描画を行った後にプロジェクトのサイズにクリッピングします。
◇アルファチャンネルあり
シーンにアルファチャンネルを持たせるかを指定します。アルファチャンネルがあるとシーンに透過情報を持たせることが出来ますがフィルタオブジェクトが使えなくなります。ルートシーンでは常にアルファチャンネルなしになります。
※現状ではアルファチャンネルがある場合に一部フィルタ(フレームバッファや上のオブジェクトでクリッピング)等で編集時とシーン読み込み時で結果が異なるものがあります。(後で処理を変えるので現状は使用しない方が良いかもです)
### ○ズーム

ルーラーの左側のメモリをクリックするとタイムライン(時間軸)の拡大率を変更できます。Ctrlキーを押しながらマウスのホイールで変更できます。[^][\]キー(標準設定)で拡大率を変更することも出来ます。

### ○メディアオブジェクトの追加

1

任意の場所のレイヤーでマウスの右クリックメニューから動画読み込み、画像読み込み等のメディアオブジェクトをレイヤー上に追加することが出来ます。

メニューにあるフィルタ効果の追加からフィルタ効果をレイヤー上に配置すると直前のメディアオブジェクトに対してフィルタ効果をかけることが出来ます。

### ○フィルタオブジェクトの追加

1

任意の場所のレイヤーでマウスの右クリックメニューからAviUtlの各種フィルタをレイヤー上に追加することが出来ます。

このプラグインから他のプラグインフィルタを無理に実行しているのでフィルタによっては正常に処理出来なかったり強制終了する可能性があります。

また、下記の条件のフィルタは扱えません。

◇トラックバーが 64 個を超えるもの
◇チェックボックスが 48 個を超えるもの
◇フィルタの名前が 63 バイト以上のもの
◇拡張データ領域が 1024 バイトを超えるもの
◇func\_proc が無いもの
◇下記のフラグを使用しているもの
* FILTER\_FLAG\_DISP\_FILTER,
* FILTER\_FLAG\_INTERLACE\_FILTER
* FILTER\_FLAG\_CONFIG\_POPUP
* FILTER\_FLAG\_CONFIG\_CHECK
* FILTER\_FLAG\_CONFIG\_RADIO
* FILTER\_FLAG\_RADIO\_BUTTON
* FILTER\_FLAG\_WINDOW\_HSCROLL
* FILTER\_FLAG\_WINDOW\_VSCROLL

### ○移動

1

レイヤー上のオブジェクトをドラッグすることで移動できます。オブジェクトの左右の端をドラッグすることで開始点や終了点のみの移動が出来ます。ドラッグ中にカーソルキーで1フレーム単位の移動が出来ます。

### ○コピー

オブジェクトの上でのマウスの右クリックメニューからオブジェクトのコピーが出来ます。Ctrlキーを押しながら複数のオブジェクトを選択してコピーすることも出来ます。Ctrl+Shiftキー及びCtrl+ドラッグで範囲選択が出来ます。左クリックで選択しながらCtrl+[C]キーでもコピーすることが出来ます。

### ○貼り付け

任意の場所のレイヤーでマウスの右クリックメニューから既にコピーしておいたオブジェクトを貼り付けることが出来ます。レイヤー上でCtrl+[V]キーでも貼り付けすることが出来ます。

### ○切り取り

オブジェクトの上でのマウスの右クリックメニューからオブジェクトを選択範囲で切り取ることが出来ます。

### ○分割

オブジェクトの上でのマウスの右クリックメニューからオブジェクトを分割することが出来ます。[S]キー(標準設定)で設定中オブジェクトのカーソル位置で分割することが出来ます。

### ○削除

1

オブジェクトの上でのマウスの右クリックメニューからオブジェクトの削除が出来ます。Ctrlキーを押しながら複数のオブジェクトを選択して削除することも出来ます。左クリックで選択しながらDeleteキーでも削除することが出来ます。

### ○選択オブジェクトを複製

メインウィンドウのメニューの[編集]-[拡張編集]から選択オブジェクトを下のレイヤーに複製することが出来ます。Ctrl+[D]キー(標準設定)で複製することが出来ます。

### ○オブジェクトの選択

指定の方法でオブジェクトを選択します。Ctrlキーを押している時のみ選択できます。

### ○中間点を追加

オブジェクトの上でのマウスの右クリックメニューからオブジェクトの中間点を追加出来ます。中間点でオブジェクトの設定値を変更することが出来ます。[P]キー(標準設定)で設定中オブジェクトのカーソル位置に中間点を追加することが出来ます。

### ○中間点を削除

オブジェクトの上でのマウスの右クリックメニューからオブジェクトの中間点を削除することが出来ます。

### ○上のオブジェクトでクリッピング

1

上位のレイヤーにあるメディアオブジェクトでクリッピングをしてから描画するようにします。設定ダイアログの左上のボタンでも変更出来ます。

※描画直前にオフスクリーン描画されます。
※オブジェクトの種類や状態によっては反映されません。
### ○カメラ制御の対象

オブジェクトをカメラ制御の対象にします。設定ダイアログの左上のカメラボタンでも変更出来ます。

※オブジェクトの種類や状態によっては反映されません。
### ○エイリアスを作成

選択オブジェクトの設定内容で別名の追加メニューを作成します。オブジェクトの長さや中間点等の内容も保持されます。格納フォルダを指定すると階層メニューを作成できます。エイリアス設定ファイル(.exa)がプラグインと同じフォルダに作成されますので削除や階層の移動をしたい場合は直接ファイルを操作してください。保存したエイリアス設定ファイルを編集中にD&Dすると指定の位置にオブジェクトを読み込むことができます。

### ○グリッド(BPM)の表示

タイムラインにグリッドを表示します。タイムラインから[G]キー(標準設定)でグリッドを表示することも出来ます。

### ○グリッド(XY軸)の表示

メインウィンドウのXY軸にグリッドを表示します。メインウィンドウから[G]キー(標準設定)でグリッドを表示することも出来ます。

### ○グリッド(カメラ制御)の表示

メインウィンドウにカメラ制御用のグリッドを表示します。カメラ制御関係のオブジェクト編集時のみ表示されます。

### ○グリッドの設定

各種グリッドの表示間隔の設定をします。Shift+[G]キー(標準設定)でグリッドの設定を表示することも出来ます。

◇グリッド(BPM)の表示間隔
グリッドの表示間隔をテンポ、拍子等で指定します。
◇グリッド(XY軸)の表示間隔
XY軸のグリッドの表示間隔を指定します。縦幅を省略すると横幅と同じ値で表示します。
◇グリッド(カメラ制御)の表示間隔
カメラ制御用のグリッドの表示間隔を指定します。
### ○フレーム領域外の表示

フレーム領域外のオブジェクト領域の枠が見えるように表示します。[V]キー(標準設定)でフレーム領域外の表示をすることも出来ます。[1/1][2/3][1/3]ボタンで領域外の大きさを変更することも出来ます。

### ○選択オブジェクトの追従

表示フレームを移動した時に設定ダイアログが表示されている選択オブジェクトを同一レイヤーの表示フレーム上にあるオブジェクトに移動するようにします。

### ○オブジェクトをスナップ

レイヤー上のオブジェクトを移動している時に現在のフレームや上下のオブジェクトの先頭や終了位置等にスナップするようにします。右クリックメニューの追加や貼り付け等の位置もスナップされます。

### ○画像処理を間引いて表示

出力中以外で画像の表示をする時に一部の処理の重いフィルタの処理を簡略化して速度優先で描画するようにします。[Q]キー(標準設定)で画像処理を間引いて表示することも出来ます。

※対象：放射ブラー、方向ブラー、閃光、凸エッジ、ポリゴン描画
### ○最後のオブジェクト位置を最終フレーム

最後のオブジェクトの位置を最終フレームにします。新規プロジェクトで作成している場合のみ有効になります。

### ○現在位置を最終フレーム

現在のカーソル位置を最終フレームにします。新規プロジェクトで作成している場合のみ有効になります。

### ○色選択ダイアログ

テキストや図形等の色の選択時に色選択のダイアログが表示されます。左側のパレットをクリックすると即座に色が選択出来ます。RGB値を数値で指定したり右側のカラーサークル等で色を決めてからOKボタンで決定することも出来ます。スポイトボタンは他のウィンドウの色を取得することが出来ます。

### ○環境設定

環境設定をします。

◇時間表示単位
編集画面や設定ダイアログでの時間の表示単位の形式を指定します。
◇レイヤーの幅
レイヤーの縦幅を指定します。
◇再生ウィンドウで再生した時にカーソルを連動
再生ウィンドウで再生した時に編集のカーソルを連動させます。
◇カーソル移動時に自動でスクロール
編集のカーソルの移動に合わせて編集画面を自動的にスクロールさせます。
◇D&D読み込み時に複数オブジェクトをグループ化
D&D読み込み時に複数オブジェクトで構成されるものをグループ化します。
◇ファイルの場所が変更された時にプロジェクトパスから読む
動画や画像ファイル等の場所が変更されて読み込めない時にプロジェクトのパスから読み込むようにします。
◇中間点追加・分割時に中間の値を反映する
中間点追加や分割する時にその中間点の値を設定に反映させるようにします。トラックバーの変化方法によって反映のしかたが変わります。
◇中間点追加・分割を常に現在フレームで行う
中間点追加や分割を常に現在のフレームのみで行うようにします。
◇オブジェクトの端をつまむ時に隣接するオブジェクトも選択
オブジェクトの端をつまむ時に隣接するオブジェクトも一緒に選択するようにします。
◇分割時にグループを別々にする
分割や切り取りをしてオブジェクトが別れた場合にグループをそれぞれ別々になるようにします。
◇RGB色空間で飽和
明るさの上限を超えた色をRGB色空間で飽和するようにします。新規プロジェクトで作成している場合のみ有効になります。
◇自動バックアップを有効
自動バックアップ機能を有効にします。バックアップの対象は拡張編集の編集データのみなのでAviUtl本体側の編集情報は保存されません。バックアップファイルはexedit.aufの階層にbackupフォルダを作成してそこに保存します。
◇バックアップの間隔(分)
自動バックアップする時間間隔を指定します。操作していない時はバックアップをスキップします。出力直前は間隔に関係なくバックアップをします。
◇バックアップファイルの最大数
自動バックアップするファイルの最大数を指定します。
◇動画ファイルのハンドル数
同時に開く動画ファイルの数を指定します。同時に開く動画ファイル数が多くなるとかなりのメモリを消費します。同一フレームで使用される動画ファイルがこの数を超えると極端にパフォーマンスが落ちます。
◇画像データのキャッシュ数(-0.92)
オブジェクトが使用する画像データのキャッシュ数を指定します。キャッシュの数が多くなるとかなりのメモリを消費します。1個で最大画像サイズのデータをキャッシュする大きさがあるので小さなデータの場合は指定の数より多くキャッシュすることが出来ます。キャッシュが不足するとパフォーマンスが落ちたり処理が省略されます。画像以外のキャッシュとしても使用されます。
◇LuaJITを利用する(0.93rc1-)
スクリプトの実行にLuaJITモジュール(lua51jit.dll)を使用します。
LuaJITは高速に動作しますが標準のLua用のスクリプトが動作しない可能性があります。
※現状、ファイル名を参照するスクリプトで頻発するようです。
利用しない場合は標準のLuaモジュール(lua51.dll)を使用します。
※ファイル名の偽装は今まで通り可能です。
◇最大画像サイズ
拡張編集で編集する最大画像サイズを指定します。フィルタによってはAviUtlの最大画像サイズの設定で制限される場合があります。
◇シャドウマップサイズ
シャドー(カメラ制御)で使用するシャドウマップのサイズを指定します。
### ○新規プロジェクトの作成

1

拡張編集用の新規プロジェクトを作成して編集します。拡張編集の編集ウィンドウ上に動画ファイル等をD&Dすることによって作成することも出来ます。Ctrl+[N]キー(標準設定)でも作成することが出来ます。通常の動画ファイルを開いて使用する場合とは異なり、オブジェクトの追加や移動に合わせて動画の長さが自動的に拡張されます。動画の長さを短くする場合はフレームの削除等で調整してください。

※AviUtlの追加読み込みや音声読み込み等で別のファイルを開かないでください。
◇画像サイズ
作成する動画の解像度を指定します。
◇フレームレート
作成する動画のフレームレートを指定します。少数や分数(分母/分子)でも指定できます。設定できる最小フレームレートは1fpsです。
◇音声レート
作成する動画の音声サンプリングレートを指定します。
### ○メディアオブジェクトのAVI/BMP出力(RGBA)

拡張編集のメディアオブジェクトのみを出力対象としてアルファチャンネル付きのAVIファイルを出力します。拡張子にBMPを指定すると連番BMPファイルで出力します。AVIファイルの場合は出力はビデオのみになります。RGBA32bitを扱えるコーデックでないと正しく出力できません。解像度、フレームレートは拡張編集での値になり出力ダイアログとは異なります。

### ○オブジェクトファイルのインポート

拡張編集の編集データ(.exo)をファイルから読み込みます。読み込まれたデータは現在の編集中データの最後尾に追加されます。

※各フィルタの仕様が保存時と異なっている場合は正常に読み込めません。
### ○オブジェクトファイルのエクスポート

拡張編集の編集データ(.exo)をファイルで保存します。保存した編集ファイルはオブジェクトファイルのインポートやオブジェクトファイルから新規作成から読み込めます。保存した編集データファイル(.exo)を編集中にD&Dすると指定の位置に編集データを読み込むことができます。

※オブジェクトが重なる位置には正しく読み込めません。
保存した編集データファイル(.exo)をこのexedit.aufと同じフォルダに入れるとメディアオブジェクトの追加のメニュー項目に追加されます。メニューを選択すると空いているシーンにその編集データを読み込んでシーンオブジェクトを追加することが出来ます。

### ○オブジェクトファイルから新規作成

拡張編集の編集データをファイルから読み込んで拡張編集用の新規プロジェクトを作成します。

### ○バックアップファイルから新規作成

自動バックアップしたファイルを読み込んで拡張編集用の新規プロジェクトを作成します。

### ○ショートカットキー

AviUtl本体の環境設定のショートカットキーの設定からいくつかの機能についてのショートカットキーを変更する事が出来ます。ショートカットキーの設定のリストの中にある[編集][拡張編集]のある項目が変更可能なショートカットキーになります。ショートカットキーはAviUtlのメインウィンドウ、拡張編集のウィンドウ拡張編集の設定ダイアログで使用できます。

# － 使用上の注意 －

このプログラムはフリーソフトウェアです。このプログラムの使用によって何らかの障害が発生した場合でも、作者は一切の責任を負わないものとします。

# － 0.92からの履歴 －

6

* [2013/7/15] ver 0.92
* [2019/10/3] ver 0.93rc1
	+ ビルド環境の更新とそれに伴う調整をした。
	+ 画像データ、スクリプトのキャッシュを本体管理の共有メモリで確保するようにした。
	+ オブジェクトファイルをインポートした時にトラックバーの値が正しく読み込めない場合があったのを修正した。
	+ オブジェクトファイルをインポートした時にトラックバー変化方法の設定値が正しく読み込めない場合があったのを修正した。
	+ オブジェクトファイルをエクスポートした時にシーン番号が正しく保存されないのを修正した。
	+ RGB色空間で飽和する処理を微調整した。
	+ Luaの実行モジュールにLuaJITを利用できるようにした。
	+ 今回のバージョンから本体ver1.10以降が必要になります。