midが聞こえなくなりました。

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
ツリー

midが聞こえなくなりました。

#1

投稿記事 by ツリー » 17年前

Visual C++を使っています。
数週間前に、作りかけで一時止めていたゲーム製作を再び始めたのですが、
以前と同じ、ソースでやっているのに、midの音が聞こえなくなりました。
以前と同じソースなので、間違いは無いはずですが、絶対と言うのはないので、
ためしに、簡単にmidの音が出ると言うだけのソースを作ったのですが、やはりなりません。
どなたか分かる方原因を教えてください。


onngakuというファイルに入ったOPのmidを鳴らす。
#include "DxLib.h"

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
        ChangeWindowMode( TRUE ) ;          // ウィンドウモード
        if( DxLib_Init() == -1 ) return -1;     // 初期化


        PlayMusic( "onngaku/OP.mid" , DX_PLAYTYPE_BACK ) ; // test.midのバックグラウンド演奏


        WaitKey() ;
        DxLib_End() ;           // DXライブラリ使用の終了処理
        return 0 ;              // ソフトの終了
}

J

Re:midが聞こえなくなりました。

#2

投稿記事 by J » 17年前

”以前と同じ”ソースなら鳴らないはずはありません。プログラムで開くのではなく、自分でmidファイルを再生してみてください。再生されないようであれば、パソコンの問題です。再生されれば、プログラム側の問題です。DXライブラリを入れなおすとかしてみると直るかもしれません(こちらは詳しくはわかりません。)
原因として考えられるのは、ボリュームコントロールの設定でmidi音源のがミュートまたは0になっているか、サウンドデバイスがおかしくなっているかです。前者はコントロールパネルかタスクバーの「音量」から開けるボリュームコントロールのSW Synthの音量を試しに最大にして再生してみてください。後者は再起動すると直ることがあります。
そして最悪場合、ファイルが破損してしまっていることも考えられます。

ツリー

Re:midが聞こえなくなりました。

#3

投稿記事 by ツリー » 17年前

返信ありがとうございます。
試してみたところ。
いついじったのかわかりませんが、SWシンセサイザの音量が0になってました。
ばかばかしい質問すいませんでした。
SWシンセサイザをいじったらMP3とかの音楽はなるけどmidは再生されないのかな?
勉強になりました。

おっちゃん1号

Re:midが聞こえなくなりました。

#4

投稿記事 by おっちゃん1号 » 17年前

もう遅いかな?助言を。
SWシンセサイザは何もしていなくても勝手に0になったり、
ほかのユーザーがログイン状態だとMIDIが再生されなかったりと
なにかと意味のわからない設定項目なので、
どうしても再生させたいときに最終的には再起動しないといけなくなったり…

>SWシンセサイザをいじったらMP3とかの音楽はなるけどmidは再生されないのかな?
そうですね、SWシンセサイザはMIDI音源にしか適用されないようです。

閉鎖

“C言語何でも質問掲示板” へ戻る