共存のための基礎知識
ページタイトルでは2.0と2.5の共存となっていますが、1.0も含めてAviSynthのバージョンを切り替える方法を紹介したいと思います。といっても、そんなに難しくはありません。
基本的にはavisynth.dllを入れ替えるだけで、異なるバージョンのAviSynthに切り替えることができます。
そのために、まず、それぞれのバージョンのAviSynthをインストールした後でavisynth.dllをバックアップしておいてください。
あとは使用したいバージョンのavisynth.dllをシステムフォルダに上書きコピーするだけでOKです。
ただし、上書きインストールでいいのか、いったんどちらかのバージョンをアンインストールしてから、もう一方をインストールしたほうがいいのかということも考えておいたほうがいいかもしれません。
念のためにAviSynth2.0と2.5のインストール時の違いを見ておくことにしましょう。
基本的にはavisynth.dllを入れ替えるだけで、異なるバージョンのAviSynthに切り替えることができます。
そのために、まず、それぞれのバージョンのAviSynthをインストールした後でavisynth.dllをバックアップしておいてください。
あとは使用したいバージョンのavisynth.dllをシステムフォルダに上書きコピーするだけでOKです。
ただし、上書きインストールでいいのか、いったんどちらかのバージョンをアンインストールしてから、もう一方をインストールしたほうがいいのかということも考えておいたほうがいいかもしれません。
念のためにAviSynth2.0と2.5のインストール時の違いを見ておくことにしましょう。
AviSynth2.0と2.5のインストール時の違い
(1)インストール内容の違い
AviSynth2.0.8のインストール画面 |
AviSynth2.5.3のインストール画面 |
上の画像がAviSynth2.0.8のインストール画面、下の画像がAviSynth2.5.3のインストール画面です。
1行目のOutput directory(folder)はavisynth.dllがインストールされるシステムフォルダです。
2行目でavisynth.dllがシステムフォルダに抽出(Extract)されているのがわかります。
AviSynth2.0.8では、このあとマニュアルなどのインストールに移っていますが、AviSynth2.5.3ではdevil.dllとavisynth_c.dllの2つがインストールされています。
devil.dll(DevIL)は、AviSynth2.5.2から追加されたImageReaderフィルタで画像の読み込みに使用されます。オプションで、AviSynth標準のBMPパーサーを使用するか、DevILを使用するかを選択することができるようになっています。
avisynth_c.dllはKevin Atkinson氏作成のAviSynth C APIプラグインです。Kevin Atkinson氏のConditional Temporal Median Filterなどを使用する際に必要になります。
以上の点を考えると、これら2つのプラグインは必ずしも必要ではないかもしれません。ただし、AviSynth2.5.*をアンインストールしてしまうと同時に削除されてしまいますので、それにより何らかの不具合が生じないとも限りません。
このため「AviSynth2.5のインストール->AviSynth2.5のアンインストール->AviSynth2.0のインストール」という手順は避けたほうが無難でしょう。
(2)レジストリ情報
1行目のOutput directory(folder)はavisynth.dllがインストールされるシステムフォルダです。
2行目でavisynth.dllがシステムフォルダに抽出(Extract)されているのがわかります。
AviSynth2.0.8では、このあとマニュアルなどのインストールに移っていますが、AviSynth2.5.3ではdevil.dllとavisynth_c.dllの2つがインストールされています。
devil.dll(DevIL)は、AviSynth2.5.2から追加されたImageReaderフィルタで画像の読み込みに使用されます。オプションで、AviSynth標準のBMPパーサーを使用するか、DevILを使用するかを選択することができるようになっています。
avisynth_c.dllはKevin Atkinson氏作成のAviSynth C APIプラグインです。Kevin Atkinson氏のConditional Temporal Median Filterなどを使用する際に必要になります。
以上の点を考えると、これら2つのプラグインは必ずしも必要ではないかもしれません。ただし、AviSynth2.5.*をアンインストールしてしまうと同時に削除されてしまいますので、それにより何らかの不具合が生じないとも限りません。
このため「AviSynth2.5のインストール->AviSynth2.5のアンインストール->AviSynth2.0のインストール」という手順は避けたほうが無難でしょう。
(2)レジストリ情報
2.0.6以降のインストーラでインストールした場合、レジストリの次の場所にプラグイン・ディレクトリの情報が書き込まれます。
[AviSynth2.0の場合]
|
||
[AviSynth2.5の場合]
|
このレジストリ情報は、オートローディングを利用してプラグインを読み込む際に必要です。
しかし、アンインストールするとこれらの情報はレジストリから削除されてしまうため、アンインストールしたバージョンに切り替えたときにはオートローディング機能が利用できなくなります。
オートローディングを利用するなら、一方のバージョンをアンインストールしてから、もう一方をインストールするのではなく、上書きインストールするほうがいいと言えるでしょう。
しかし、アンインストールするとこれらの情報はレジストリから削除されてしまうため、アンインストールしたバージョンに切り替えたときにはオートローディング機能が利用できなくなります。
オートローディングを利用するなら、一方のバージョンをアンインストールしてから、もう一方をインストールするのではなく、上書きインストールするほうがいいと言えるでしょう。
共存環境構築までの手順(一例)
以上のような前提をふまえた上で、AviSynth2.0と2.5の共存環境を構築するための手順の一例を紹介します。
ただし、この方法を実行することにより何らかの不具合が生じる可能性がないとは言えません。そのため、実行する際は自己責任で行ってください。
とくにAviSynthを共存させる必要がなく、単にAviSynthのバージョンをアップデートしたいだけなら、通常のアンインストール->インストールという手順を取ることをおすすめします。
ただし、この方法を実行することにより何らかの不具合が生じる可能性がないとは言えません。そのため、実行する際は自己責任で行ってください。
とくにAviSynthを共存させる必要がなく、単にAviSynthのバージョンをアップデートしたいだけなら、通常のアンインストール->インストールという手順を取ることをおすすめします。
(1)バックアップフォルダの作成
あらかじめAviSynth2.0とAviSynth2.5、それぞれのavisynth.dllをバックアップするためのフォルダを作成しておきます。 例では、まずDLLフォルダを作成し、その中にAviSynth2.0用の20フォルダとAviSynth2.5用の25フォルダを作成しています。 |
(2)AviSynth2.0のインストール
AviSynth2.0.*をインストールします。 |
(3)avisynth.dllのバックアップ1
システムフォルダからavisynth.dllをAviSynth2.0用のバックアップフォルダ(20フォルダ)にコピーします。 システムフォルダの場所は環境によって異なりますが、一般的にはWindows98/Meなら「C:\Windows\System\」、Windows2000/XPならC:\Windows(またはWINNT)\System32\」です。 |
(4)AviSynth2.5のインストール
AviSynth2.5.*を上書きインストールします。 |
(5)avisynth.dllのバックアップ2
システムフォルダからavisynth.dllをAviSynth2.5バックアップ用フォルダにコピーします。 AviSynth2.5のインストールにより、システムフォルダ内にあるavisynth.dllのバージョンはAviSynth2.5.*になっています。 |
(6)AviSynthのバージョンの切り替え
AviSynthのバージョンを切り替えたいときは、使用したいバージョンのavisynth.dllをそれぞれのバックアップフォルダからシステムフォルダへコピーします。 「上書きしますか」というメッセージが出た場合は、「はい」をクリックしてavisynth.dllを上書きしてください。 これでAviSynthのバージョンが切り替わります。 |
AviSynth2.0 <-> 2.5切り替え用バッチファイル
上で説明した方法のようにavisynth.dllを一々コピーしてもいいのですが、少し面倒です。
そこで、バッチファイルを使って、AviSynthのバージョンを切り替える方法を紹介します。
なお、以下で紹介するバッチファイルは、2ちゃんねるのAviSynthを絶賛しようよスレ Part11の940氏、Doom9フォーラムのhanfrunz氏とN_F氏の投稿を参考に作成しました。三氏には、この場でお礼申し上げます。
そこで、バッチファイルを使って、AviSynthのバージョンを切り替える方法を紹介します。
なお、以下で紹介するバッチファイルは、2ちゃんねるのAviSynthを絶賛しようよスレ Part11の940氏、Doom9フォーラムのhanfrunz氏とN_F氏の投稿を参考に作成しました。三氏には、この場でお礼申し上げます。
[AviSynth2.0 <-> 2.5切り替え用バッチファイル] |
||
|
線で囲んでいる中の部分(「@echo off」から「:end」まで)をメモ帳にコピーしてください。
そして次の箇所を自分の環境に合わせて書き換えてください。
そして次の箇所を自分の環境に合わせて書き換えてください。
赤い太字の部分:AviSynthのインストール先(システムフォルダ) 青い太字の部分:インストールバージョン判定用ダミーファイルの保存先 オレンジの太字の部分:AviSynth2.0用avisynth.dllバックアップフォルダ 緑の太字の部分:AviSynth2.5用avisynth.dllバックアップフォルダ |
拡張子を*.BATにして、適当な名前を付けて保存してください。
デスクトップなどにショートカットを作成しておくと便利です。 |
バッチファイルを実行(ダブルクリック)すると、初回に限り、「installed.20が見つかりませんでした。」と表示されます。
このとき何かのキーを押すとinstalled.25が自動的に作成され、AviSynth2.5がインストール(AviSynth2.5のavisynth.dllがシステムフォルダにコピー)されます。
installed.20やinstalled.25は「バージョン判定用ダミーファイル」です。青い太字の部分で保存先を指定したのは、このファイルのことです。 |
このバッチファイルでは、installed.20があればAviSynth2.5のavisynth.dllをシステムフォルダにコピーして、installed.20をinstalled.25に書き換えます。逆に、installed.25があればAviSynth2.0のavisynth.dllをシステムフォルダにコピーして、installed.25をinstalled.20に書き換えます。
つまり、ダミーファイルの拡張子の数字とは逆のバージョンのAviSynthに切り替えます。
初めてバッチファイルを実行したときにダミーファイルが作成されますので、2回目からは「installed.**が見つかりませんでした。」という表示は出ません。
これ以降はバッチファイル実行->何かのキーをクリックするだけでAviSynthのバージョンを切り替えることができるようになります。
つまり、ダミーファイルの拡張子の数字とは逆のバージョンのAviSynthに切り替えます。
初めてバッチファイルを実行したときにダミーファイルが作成されますので、2回目からは「installed.**が見つかりませんでした。」という表示は出ません。
これ以降はバッチファイル実行->何かのキーをクリックするだけでAviSynthのバージョンを切り替えることができるようになります。
|
ちなみにダミーファイルの中身はdummyと書かれているだけです。 |
AvisynthSwitcher
AvisynthSwitcherは、AviSynthのバージョンを切り替えるソフトウェアです。
なぜかうまくダウンロードできなかったため、詳細は不明です。
・AvisynthSwitcher(lalternative.org)
http://www.lalternative.org/
なぜかうまくダウンロードできなかったため、詳細は不明です。
・AvisynthSwitcher(lalternative.org)
http://www.lalternative.org/
最終更新日 2003年12月10日