バグ?:Pyエンジン上で再生可能なmp3がxエディター上では再生ができない

Issue #388 resolved
ルンバ created an issue

Build: 2020-07-28 22:35:53 Debug (64-bit)
Compiled by Digital Mars D 2092

Pyエンジン上で再生可能なmp3がxエディター上では再生ができないという曲が

ある素材作者様のMP3で複数あります。(全てでは無いです)

Comments (5)

  1. k4nagatsuki repo owner

    ご報告ありがとうございます。

    試してみましたが、これらのファイルはSDL2_mixerを使用して再生しようとするとおかしくなるようです。たぶんヘッダ等が一部壊れているのだと思います。bass.dllでは問題ありません。CWPyも以前はSDL_mixerを使用していましたが、現在はサポートを廃止しており、常にbass.dllを使用しています。

    cwxeditorでは、音声再生方式の設定にもよりますが、エンジンのパスをたどってbass.dllを再生に使用しようとし、それに失敗した場合はSDL2_mixerを使うようになっています。エンジンのパスや音声再生方式の設定を確認していただけないでしょうか。

  2. ルンバ reporter

    確認ありがとうございます。

    設定/その他/BGM再生方式 は「自動選択」になっていました。「WinMM(CardWirth方式)」に変えても再生はできず、「SDL_mixer(旧方式)」で試すと曲によっては再生可能になりましたが曲によってはxeditorがフリーズします。

    「bass.dll」の選択の仕方がわからないのですが、エンジンのパスとはxeditor設定のクラシックエンジンの設定の実行ファイルパスの事でしょうか?(そこで指定している1.50エンジンのパスにはbass.dllは入っています)

    >cwxeditorでは、音声再生方式の設定にもよりますが、エンジンのパスをたどってbass.dllを再生に使用しようとし、それに失敗した場合はSDL2_mixerを使うようになっています。

    BGM再生方式が「自動選択」であれば、そのようになっているという事でしょうか?

  3. k4nagatsuki repo owner

    探索対象になるbass.dllは以下の通りです。

    1. 編集中のシナリオのスキンがクラシックエンジンで、CardWirth 1.30以降であれば、エンジンと同じディレクトリにあるもの。ただしCardWirthには32-bit版のDLLしか同梱されていないためcwxeditorが32-bit版である必要がある。
    2. WSN形式を編集中であるか、上記のDLLが見つからなかった場合は、CardWirthPy.exeと同じディレクトリにあるbass.dllか(32-bit)、CardWirthPy.exeのディレクトリの下にあるx64ディレクトリの中にあるbass.dll(64-bit)

    上記のものが見つからなければSDLでの再生を試みます。CardWirthPyのパスが設定されていれば普通は見つかるはずです。

  4. ルンバ reporter

    xeditor基本設定の「CardWirthPyの場所」が「シナリオの場所から自動的に探す」にしていたのですがパスを直接入力して解決できました。 クラシックエンジンの設定の方かと勘違いしていました。

    ありがとうございました。 解決できたので曲名URL等は削除しました。

  5. Log in to comment