音声ファイルが再生できない?

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

音声ファイルが再生できない?

#1

投稿記事 by » 17年前

うまく動作しなくて困っていることがあります。
突然、音声ファイルを読み込んで再生するプログラム等で音声が再生されなくなりました。
DXライブラリ本家のサイトにあるサンプルプログラムを試しても駄目でした。
以前正常に動作した(音声が再生された)プログラムすらも出来ません。
音声再生以外の動作はちゃんと行います。
どうして音声ファイルが再生できないのでしょうか?

例えば、

#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
ChangeWindowMode( TRUE ) ; // ウインドウモードに変更
if( DxLib_Init() == -1 ) return -1; // DXライブラリ初期化処理 エラーが起きたら終了

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

WaitKey() ; // キーの入力待ち(『WaitKey』を使用)
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}

このようなものを実行しても駄目です。
ちなみにtest.mid以外のファイル(wavやogg等)でも試してみましたが駄目でした。
ファイルは実際にありますし場所も間違っていないはずです。

他のアプリケーションでは音声や音楽が聴けますし(IEでtest.midを開く等)
音量が小さくなっているということもありません。

もしかしたらこちらの環境に問題があるのかもしれないので環境を書いておきます。

コンパイラ BorlandC++ 5.5
Windows XP SP2
Pentium III 700MHz
128MB RAM

それとLog.txtに気になる行を見つけたのですがこれは関係あるのでしょうか?
682: 総サウンドメモリ領域:0.00KB 空きサウンドメモリ領域:0.00KB

よろしくお願いします。

バグ

Re:音声ファイルが再生できない?

#2

投稿記事 by バグ » 17年前

if( PlayMusic( "test.mid" , DX_PLAYTYPE_BACK ) == -1 )
{
printfDx( "Error!!" );
return -1;
}

PlayMusic関数の部分を上記のように変更して、メッセージが表示されたら、関数の実行に失敗していると思われます。エラーの内容まではリファレンスに書かれていなかったので、製作者の方に聞かれてみては如何でしょう?

Re:音声ファイルが再生できない?

#3

投稿記事 by » 17年前

PlayMusic関数の部分を変更してみましたが、メッセージは表示されませんでした。
とりあえず本家のほうで質問してみたいと思います。
どうもありがとうございました。

管理人

Re:音声ファイルが再生できない?

#4

投稿記事 by 管理人 » 17年前

バグさんのおっしゃる
 

if( PlayMusic( "test.mid" , DX_PLAYTYPE_BACK ) == -1 ) 
{ 
printfDx( "Error!!" ); 
return -1; 
}
 
 
の後には裏画面反映関数を書く必要があるようです。

midファイルの再生にはSWシンセサイザのボリュームが関係しているんでしたよね??
そこが下がっているとか・・しかし他のmidファイルは聞けるのでしたら
そうではないようですね。

一度、
 
if( PlayMusic( "test.mid" , DX_PLAYTYPE_BACK ) == -1 ) 
{ 
        printfDx( "Error!!" ); 
        ScreenFlip() ;
        WaitKey();
        return -1; 
}
 
 


このように書いてみてはいかがでしょうか。

Re:音声ファイルが再生できない?

#5

投稿記事 by » 17年前

そのようにしても変化はなく、メッセージは表示されませんでした。

ちなみにPlaySound関数でもPlayMusic関数でも同じ結果です。
まあ別にmidでもwavでもoggでもいいんですがね;

閉鎖

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