//===================================================================
//　　DirectShow File Reader プラグイン for AviUtl
//　　Ver 0.26 by ぽむ
//　　http://www.tenchi.ne.jp/~yoko/aviutl/  e-mail:yoko@tenchi.ne.jp
//===================================================================

DirectShow経由でファイルの読み込みをするためのプラグインです。
AviUtl0.98以降に対応しています。

プラグインds_input.auiをAviUtlのフォルダにコピーすると使えるようになります。
メディアプレーヤーで再生できるものは基本的に読み込めるはずですが、メディアプレーヤーとはDirectShowフィルタの使い方が異なるため正しく動作しないことがあるかもしれません。

■音声について
現在のところ音声バッファを実装していないため、出力プラグインによっては音声が乱れることがあります。
その際には一度WAV出力を行って出力したWAVを再読み込みしてください。
→wmvout.auoなどが該当するようです。
入力ファイルが正確にシークできないファイルの場合に発生します。(wmvなど)

■設定画面
環境設定からDirectShow File Readerの設定画面を呼び出せます。
設定値はAviUtlのフォルダのds_input.iniに保存されます。

・フレームレート設定[Video]
フレームレートの設定は自動設定の場合、入力ファイルでの設定値
または1秒間再生してみたときのフレームレートが使用されます。
指定値では指定された数値が使用されます。
フレームレートは1fps未満は設定できません。

ファイルを開いたときにds_input.iniのSourceFrameRateの項目に
フレームレートが書き込まれます。（再生レートの場合は括弧がつきます）
SourceFrameRate=29.70fps   // 通常
SourceFrameRate=(29.70fps) // 再生レート

・アルファチャンネルを追加読み込みする
このオプションをチェックすると入力ファイルにアルファチャンネル（透過色）があった場合、
アルファチャンネルを白黒画像として追加読み込みすることができます。
拡張編集などでのアルファチャンネル読み込みではこのオプションを付ける必要はありません。

・サンプルレート設定[Audio]
通常は自動設定にしてください。
音声周波数の認識に失敗した場合に周波数を指定してみてください。
8000Hz未満は設定できません。


■補足
デコード処理は別スレッドで行われます。（1フレーム先読み）
キャッシュは30フレーム分持っています。音声はバッファのみ。
キャッシュは不要なシーク発生を防ぐためとフレームレート変換のために実装しています。

デコーダによってはシークの精度が悪い(キーフレームにしかシークできないなど）のでカット位置あわせは時間方向にコマ送りしながら行ってください。
送りすぎて少し戻すのはキャッシュがあるので大丈夫です。逆方向にコマ送りを続けるとシークの位置ずれで正しく位置あわせができないことがあります。
DirectShowはフィルタによっては正確な位置にシークできないことがあります。

■変更履歴
2009.11.23 ver 0.26a 一部ソースの修正が反映されていませんでした。
2009.11.23 ver 0.26 フィルタ登録を不要にした、アルファチャンネル対応、設定画面追加、png,jpgなどの読み込み不具合修正。
2008.06.11 ver 0.25c v0.25以降日本語フォルダで動作しなくなっていたのを修正。
2008.06.07 ver 0.25b 管理者権限チェックをVista以降のみに修正。
2008.05.30 ver 0.25a regsvr32の呼び出しに失敗することがあるのを修正。
2008.05.30 ver 0.25 最終フレーム読み込み修正、Vista対応改善。
2007.09.17 Ver 0.24 Vista対応。管理者権限なしでも動作するようにした。
2005.08.04 Ver 0.23 音声をデコードしてサンプル周波数を取得するようにした。
                    DV音声認識失敗が直るはず。
2005.07.13 Ver 0.22 音声のサンプル周波数強制オプション追加。
2004.09.02 Ver 0.21
      範囲再生が正常に出来ないスプリッタフィルタを使用するとフリーズ
      したようになる問題を修正。
2003.05.02 Ver 0.20 （正式版）
      フレームレートが取得できないときは再生レートを取得するように
      した。強制フレームレート変換オプション追加。シーク単位の設定
      オプション廃止。フレームレート変換で生じる無駄なキャッシュを
      しないようにした。その他バグ修正。
2003.02.17 Ver 0.11
      画像・音声をデータのタイムスタンプを元にスケジューリングする
      ようにした。再生速度による位置ずれはなくなったはず。
      ogmの音声(Ogg Vorbis)が読めなかったのを修正。
      DV(MS-DV Decoder)の解像度設定を追加。
      画像のシーク時の位置ずれのオフセット値が反映されていなかった
      のを修正。これで画像と音声のずれは無くなったみたい。
2003.01.05 Ver 0.10 公開（仮）
