Windows 2000で XACT/XAudio/XInput を有効にして 3DGame対応を強化【BM】

DirectX 9.0cには、2006年ごろから強化されたオーディオライブラリが搭載されています。

しかし、何故か、Windows 2000だと、様々な追加機能がインストールされません。


XAudio
Direct Soundに代わるオーディオAPIでXAudio2 や X3DAudio(空間音響用ヘルパーライブラリ)などもこの中に含まれます。
オーディオのハードウェアアクセラレータを使用せずソフトウェアで処理する事で、ハードウェアの互換性の違いを吸収しCPUの負荷を上げる代わりに、どんなハードウェアでも動作するようになりました。

XBoxや XP・Vistaでも互換性があるため、Microsoftはこの規格を積極的に推しているようです。

XAPOFX
XAPO(Cross Pratform Audio Processing Object) を XAudio2で利用するためのオーディオエフェクトコレクション。
これも何故かWin2000にはインストールされません。

XACT
X3DAudioを使うためのライブラリでXBoxとクロスプラットフォームになっている。

XINPUT
XBox360に特化した入力用API。

どれも、XBOXに特化したAPIなのですが、XBoxのOSカーネルがWindows 2000である事を考えると、動作するのは至極当然なのかもしれませんね。

検索して見ると

Level-R、ロストプラネット、StreetFighter IV、Call of Duty 4、Overlord、らぶデス4BioShock

辺りが、これらのライブラリを使用している事が分かります。

ダウンロードはこちら。

FileName: Dx9W2kFx14a.exe
Version: v1.4a/DirectX 9.0c 2010(Feb)
更新日: 2010/05/25
Download: v1.4a(2.32M)
Language: 日本語/English
Description: DirectX9.0c Extension fix for Windows2000
Old Version: v1.0, v1.1, v1.2, v1.3(5.40M)

同梱のインストーラーを起動すると、ライブラリが使用可能になります。

FileName: dxJun2010w2kb.exe
Version: DirectX 9.0c 2010(June)
更新日: 2011/01/27 Download: 58.1M
Language: Multi
Description: DirectX9.0c + Extension for Windows2000
Previous version: 66.7M(11th June, 2010)

2010/6/11 全部版も作ってみました。
2011/1/26 dsound/msvcrt プレインストーラ追加。
2011/1/27 インストール途中でファイルが消えてしまう不具合修正

FileName: dx_Jun2010_w2kexv2a.wlu
Version: DirectX 9.0c 2010(June)
更新日: 2021/12/15 Download: 80M
Language: Multi
Description: DirectX9.0c + Extension for Windows2000
with Extended Kernel (拡張カーネル必須)

FaultRepとDX10のパックはゲームごとに個別に入れてください。
faultrepdx10.cab

履歴
v1.2 2010 Feb版にアップデート
v1.3 セキュリティアップデート適用
v1.4 セキュリティアップデート適用
v1.4a セットアップの不具合修正/kernelxp差し替え

関連サイト:
アニメ・オーディオ依存症候群  えっ・・・
そこはかとない現実と二次元を描く。 DirectSound と XAudio

おすすめ

30件のフィードバック

  1. net35の人 より:

    これ入れると、atitrytool
    http://cid-a50350ea7a969f0c.skydrive.live.com/self.aspx/Public/attsetup.exe
    で不具合が発生します
    msvcrt.dllのプロジャーエントリどうの

  2. blackwingcat より:

    KDWのmsvcrt.dllか、WMP10 for Win2000の msvcrt.dll(WMP10インストールしなくてもセットアップを最初に実行するとインストールされます)を導入して見てください。
    後、このソフト自体、再頒布可能な VisualStudio2008のRuntimeが必要みたいですね|ω・)

  3. 永久 より:

    インストールしてみましたが、ロストプラネットの体験版動きませんでした。
    やはり、win2000で動かすのは厳しいんですね。
    DirectX9も最新にしてみたのですが・・・
    KDWを使わないと無理なんですかね。

  4. blackwingcat より:

    KDWを使わないと無理ですね

  5. jack より:

    黒翼猫さんの改良したdirectx_Jun2010_w2k.exeですが、XPでも正常動作するのでしょうか。
    試しにXP SP3に入れてみたところインストールは正常に終了しました。

  6. Win2000派 より:

    はじめまして。
    他にもadobeのAIRとかWin2000で使えるようにしていただいた物を
    ありがたく使わせていただいている者です。
    今回とあるゲームを起動させたところXaudio2の初期化に失敗しましたと
    表示されて起動できなかったのでもしかしたらと思いこちらのv1.4aを使わせていただきました。
    結局警告は変わらず起動できなかったのですがなぜか
    wmvファイルがffdshowとBSplayerで開けなくなってしまいました。
    ちょっとバージョンが古いからかもしれませんがコーデックの設定をしても
    音声がWMA10のファイルだけ音が出ないままになってしまいました。
    新しいffdshowをインストールする前に一言お聞き出来ればと思いご連絡いたしました。

  7. 黒翼猫 より:

    XAudioのパックは DirectX 9.0June for Windows 2000のパッケージに
    既に含まれていますが、XAudio パックに入っている追加の DX10用
    ファイルなどを入れると動作しないソフトが出る可能性があります
    体験版などがあるゲームでしたらソフト名を出していただければ対応
    できるかもしれません。

  8. Win2000派 より:

    お返事ありがとうございます。
    エロゲーなので気が向かないようでしたら対応していただかなくても構いませんので…
    一応体験版のアドレスは
    http://trial.dlsite.com/doujin/RJ100000/RJ099755_trial.zip
    となっているようです。
    ゲームは出来なくても仕方ないのですが
    今までffdshowを使用していなかったコーデックのWMV9が
    BSplayerで再生できなくなったのが気になります。
    システムログにはmsyuv.dllとmspqm.sysとquartz.dllが
    不正なバージョンとして古いのに置き換えたと残っていました。
    ffdshowやBSplayerにもdirectxって関係しているんでしょうか?

  9. 黒翼猫 より:

    おそらくSFPが誤動作して、古いバージョンのシステムファイルに
    置き換えてしまったのが原因で動作しなくなってしまったのでしょう
    うちのWindows 2000だと、エラーなしで起動できますね。・ω・
    過去記事にありますが、SFPフォルダをリネームしてインストールするという方法もあります。

  10. 黒翼猫 より:

    インストール後10秒程度でSFPが機能します。
    フォルダがリネームされてた場合、ダイアログが出ますから
    それをキャンセルしたあと戻せばOKです。

  11. win2000派 より:

    ご教授された通りにやってみました。
    コマンドプロンプトでもWINNT\system32\dllcacheがリネームできなかったので
    置き換えられなかったmsyuv.dllとmspqm.sysとquartz.dllのみリネームして
    実行してみてシステムログを見たところ不正なバージョンとして置き換わったようです。
    そのあとファイル名を元に戻したのですがこれでも良かったのでしょうか?
    結果としてはゲームは起動出来なかったですがwmvファイルの
    音声は出るようになりましたしDirectXのバージョンも9.0cと確認しているので
    これで起動しないならハード的に無理なんでしょうか…

  12. 黒翼猫 より:

    >結果としてはゲームは起動出来なかったですがwmvファイルの
    音声は出るようになりましたしDirectXのバージョンも9.0cと確認しているので
    これで起動しないならハード的に無理なんでしょうか…
    XAudio2 は音楽のソフトウェアエミュレーションなのでCPUさえ要件を満たしていれば
    問題ないと思いますが、利用するためのハードウェア要件に CPU SSE2対応というの
    があります。
    CPUが Pentium 4以降/Athlon64以降なら問題ありませんが、それ以前の
    PCだと無理だと思います。

  13. win2000派 より:

    長々とお付き合いいただきありがとうございました。
    DirectXにハードウェア要件があるとは思いませんでした。
    これなら動かなかったのも納得できます。
    こんなくだらない質問にも対応していただき助かりました。
    これからもWin2000が使える限り応援していきます!

  14. 黒翼猫 より:

    >2012/10/16更新分が見つかりません・・・。
    ありがとうございます。昨日の更新時に定義ファイルを上書きしてしまったようです。
    修正しました。

  15. Forest より:

    DirectX9.0c + Extension for Windows2000 をインストールしてみたのですが…。
    AVCHD ビデオファイルや h.264 の動画の再生が乱れるようになってしまいました。これらのコーデックのデコードには LAVFilters を使用しています。インストールログから更新されたファイルを特定し元に戻したところ、きちんと再生されるようになりました。

  16. 黒翼猫 より:

    よかったら、その特定のファイルを教えて下さい。
    徹底的に調査しますので・ω・

  17. Forest より:

    すみません。その時の削除したファイルの一覧は既に無いのですが、その後にインストールし直した DirextX のログからそれらしきファイルの一覧を抜き出してみました。
    C:\WINNT\system32\dmband.dll
    C:\WINNT\system32\dmcompos.dll
    C:\WINNT\system32\dmime.dll
    C:\WINNT\system32\dmloader.dll
    C:\WINNT\system32\dmstyle.dll
    C:\WINNT\system32\dmsynth.dll
    C:\WINNT\system32\dmusic.dll
    C:\WINNT\system32\dplayx.dll
    C:\WINNT\system32\amstream.dll
    C:\WINNT\system32\devenum.dll
    C:\WINNT\system32\mpg2splt.ax
    C:\WINNT\system32\qcap.dll
    C:\WINNT\system32\qdv.dll
    C:\WINNT\system32\qdvd.dll
    C:\WINNT\system32\quartz.dll
    C:\WINNT\Driver Cache\i386\ksproxy.ax
    C:\WINNT\Driver Cache\i386\ksolay.ax
    C:\WINNT\Driver Cache\i386\ksuser.dll
    C:\WINNT\Driver Cache\i386\ks.sys
    C:\WINNT\Driver Cache\i386\mskssrv.sys
    -続く

  18. Forest より:

    -続き
    C:\WINNT\Driver Cache\i386\mspclock.sys
    C:\WINNT\Driver Cache\i386\mstee.sys
    C:\WINNT\Driver Cache\i386\stream.sys
    C:\WINNT\Driver Cache\i386\swenum.sys
    C:\WINNT\system32\dpnhupnp.dll
    C:\WINNT\system32\dpnhpast.dll
    C:\WINNT\system32\dpnet.dll
    C:\WINNT\system32\dpvacm.dll
    C:\WINNT\system32\dpvoice.dll
    C:\WINNT\system32\dpvvox.dll
    C:\WINNT\system32\dxdiagn.dll
    C:\WINNT\system32\encapi.dll
    C:\WINNT\system32\mswebdvd.dll
    C:\WINNT\system32\qasf.dll
    C:\WINNT\system32\qedit.dll
    C:\WINNT\system32\dmscript.dll
    C:\WINNT\system32\dswave.dll
    C:\WINNT\system32\dsdmo.dll
    C:\WINNT\system32\dxdllreg.exe
    C:\WINNT\system32\l3codecx.ax
    C:\WINNT\system32\bdaplgin.ax
    C:\WINNT\system32\msdvbnp.ax
    C:\WINNT\system32\psisdecd.dll
    C:\WINNT\system32\psisrndr.ax
    C:\WINNT\system32\wstdecod.dll
    C:\WINNT\system32\mpeg2data.ax
    C:\WINNT\system32\msvidctl.dll
    C:\WINNT\Driver Cache\i386\ccdecode.sys
    C:\WINNT\Driver Cache\i386\msyuv.dll
    C:\WINNT\Driver Cache\i386\kstvtune.ax
    C:\WINNT\Driver Cache\i386\kswdmcap.ax
    C:\WINNT\Driver Cache\i386\ksxbar.ax
    C:\WINNT\Driver Cache\i386\msdv.sys
    C:\WINNT\RegisteredPackages\{AA936DF4-2B08-4B1F-B071-72192E287704}\dx9bda.cat
    C:\WINNT\RegisteredPackages\{44BBA855-CC51-11CF-AAFA-00AA00B6015C}\dxxp.cat
    C:\WINNT\system32\dxdllreg.exe
    以上です。

  19. po より:

    拡張カーネル版dx_Jun2010_w2kex.exeをインストールしたところ、一回では約30個ほどのファイルが更新されず(dxdiagでバージョン警告)、再起動後さらにインストールで全て更新される、という挙動が出ました。
    環境は拡張カーネルv20o、dxJun2010w2kb.exeをインストール済みです。

  20. 黒翼猫 より:

    > すみません。その時の削除したファイルの一覧は既に無いのですが、その後にインストールし直した DirextX のログからそれらしきファイルの一覧を抜き出してみました。
    それは置換すべきファイルのほとんど全部の気がする・ω・;

  21. 黒翼猫 より:

    DLLCACHEと Driver Cache ServicePackFiles 以外にSFC対象フォルダが無いか確認してみてください
    http://blog.livedoor.jp/blackwingcat/archives/979150.html

  22. po より:

    policyの方にはキーが存在せずwinlogonだけですが、
    SFCDisable=0
    SfcQuota=0xffffffff
    のみで、sfcdir指定はないようでした。
    書き忘れてましたが、拡張カーネルの入れ替えの利便の為にServicePackFiles\i386は削除してて、ごみ箱に入れてる状態です。
    それと、インストール後再起動でスタートアップ中にコマンドプロンプトが表示されてました(一瞬だった為内容は確認出来ませんでした)

  23. 黒翼猫 より:

    動作的には、インストール前に、ServicePackFiles と dllcache をリネームして SFCが機能しないようにしてから、インストーラーを起動し、再起動時のコマンドプロンプトでフォルダの場所を元に戻して、最新のファイルがあれば上書きするという動作をしています。
    ですから、SFCフォルダが別にあれば書き戻されてしまうようです。
    他に、書き戻し用のフォルダがないか確認してみてください。
    例えば、Windows 2000 CDが挿入されていたり、CDのイメージ指定フォルダに存在すると
    SFCはそこから復元します。

  24. po より:

    イベントログからccdecode.sysやmsdv.sys、dinput.dllなどのSFCが作動したファイルについて全ドライブに対し、ファイル検索とExplzhの書庫内検索をしましたが、DriverCacheとdllcache以外では$NtUninstallフォルダとRegisteredPackages/{GUID}フォルダだけで、他にはありませんでした。(上記フォルダを削除して試しましたがSFCによる置き換えが働きます。)
    勿論、インストールCDやインストールイメージは一切使用していません。
    >dllcacheをリネーム
    dxsetupf.cmdにはdllcacheの置き換え処理が無いようですが、これは別で行っているということでしょうか?
    とりあえず環境要因のようですので暫く調査してみます。回答ありがとうございました。

  25. po より:

    連投すみません。
    私の環境では、インストール時にdllcacheフォルダが効いているようです。
    試しにdllcacheからmsdv.sysやccdecode.sysを削除してインストールしてみたところ、SFCの置き換え処理が阻害されました。(インストールCDを~のダイアログが表示される。)
    原因がわかりませんが、該当ファイルを削除して対処します。失礼しました。

  26. 名無し より:

    Norton Internet Security(Norton AntiVirus)で下記のログが出ました。
    Dx9W2kFx14a.exe
    Backdoor.Bifrose : 検疫できませんでした
    手動スキャナ
    リスクのカテゴリ: ウイルス
    クリックでこのリスクについての詳しい情報を表示 : Backdoor.Bifrose
    適用した処理: 検疫できませんでした
    説明: 影響がある領域:
    以上

  27. 黒翼猫 より:

    うちのsepでも出てますねそれ。たぶん公式のやつを改ざんしたからだと思われますが

  28. ckem より:

    dx_Jun2010_w2kexv2.wluがダウンロード出来なくなっています。
    faultrepdx10.cabはダウンロード可能です。
    修正をお願いします。

  29. 黒翼猫 より:

    >>30
    dx_Jun2010_w2kexv2a.wlu に更新されています。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です