| 音利用関数 | ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.wavをノーマル再生します
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
// test.wavのノーマル再生
PlaySoundFile( "test.wav" , DX_PLAYTYPE_NORMAL ) ;
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.wavをバックグラウンド再生し、なり終わるまで待つ
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
// test.wavのバックグラウンド再生
PlaySoundFile( "test.wav" , DX_PLAYTYPE_BACK ) ;
// なり終わるまでここでループ
while( CheckSoundFile() == 1 )
{
// メッセージ処理
if( ProcessMessage() == -1 )
{
break ; // エラーが起きたらループを抜ける
}
}
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.wavをループ再生し、5秒経ったら止めます
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
// test.wavのループ再生
PlaySoundFile( "test.wav" , DX_PLAYTYPE_LOOP ) ;
// 5秒待つ『WaitTimer』使用
WaitTimer( 5000 ) ;
// 再生を止めます
StopSoundFile() ;
// キー入力があるまで待ちます(『WaitKey』使用)
WaitKey() ;
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.wavをメモリに読み込みそのサウンドハンドルを int型変数 Shandle に保存しその後再生します。
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
int SHandle ;
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
// test.wavのメモリへの読み込みサウンドハンドルをSHandleに保存します
SHandle = LoadSoundMem( "test.wav" ) ;
// 読みこんだ音をノーマル再生します(『PlaySoundMem』関数使用)
PlaySoundMem( SHandle , DX_PLAYTYPE_NORMAL ) ;
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル 上記『LoadSoundMem』関数を参照してください | ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.wavをメモリに読み込みバックグラウンド再生し、なり終わる まで待つ
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
int SHandle ;
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
// test.wavのメモリへの読み込みサウンドハンドルをSHandleに保存します
SHandle = LoadSoundMem( "test.wav" ) ;
// 読みこんだ音をバックグラウンド再生します(『PlaySoundMem』関数使用)
PlaySoundMem( SHandle , DX_PLAYTYPE_NORMAL ) ;
// なり終わるまでここでループ
while( CheckSoundMem( SHandle ) == 1 )
{
// メッセージ処理
if( ProcessMessage() == -1 )
{
break ; // エラーが起きたらループを抜ける
}
}
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.wavをループ再生し、5秒経ったら止めます
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
int SHandle ;
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
// test.wavのメモリへの読み込みサウンドハンドルをSHandleに保存します
SHandle = LoadSoundMem( "test.wav" ) ;
// 読みこんだ音をループ再生します(『PlaySoundMem』関数使用)
PlaySoundMem( SHandle , DX_PLAYTYPE_LOOP ) ;
// 5秒待つ『WaitTimer』使用
WaitTimer( 5000 ) ;
// 再生を止めます
StopSoundMem( SHandle ) ;
// キー入力があるまで待ちます(『WaitKey』使用)
WaitKey() ;
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.wavをループ再生し、5秒経ったら止め、その後そのサウンド データを削除し終了します。
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
int SHandle ;
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
// test.wavのメモリへの読み込みサウンドハンドルをSHandleに保存します
SHandle = LoadSoundMem( "test.wav" ) ;
// 読みこんだ音をループ再生します(『PlaySoundMem』関数使用)
PlaySoundMem( SHandle , DX_PLAYTYPE_LOOP ) ;
// 5秒待つ『WaitTimer』使用
WaitTimer( 5000 ) ;
// いらなくなったので音を削除します
DeleteSoundMem( SHandle ) ;
// キー入力があるまで待ちます(『WaitKey』使用)
WaitKey() ;
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.wavを5回ロードし、0.1秒ごとに1回づつ再生した後 音をすべて削除します
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
int SHandle[ 5 ] ;
int i ;
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
// test.wavのメモリへの読み込みサウンドハンドルをSHandleに保存します
for( i = 0 ; i < 5 ; i ++ )
{
SHandle[ i ] = LoadSoundMem( "test.wav" ) ;
}
// 読みこんだ音を0.1秒おきにバックグラウンド再生します(『PlaySoundMem』関数使用)
for( i = 0 ; i < 10 ; i ++ )
{
// 音の再生
PlaySoundMem( SHandle[ i ] , DX_PLAYTYPE_BACK ) ;
// 0.5秒待つ(『WaitTimer』使用)
WaitTimer( 100 ) ;
}
// 音をすべて削除します
InitSoundMem() ;
// キー入力があるまで待ちます(『WaitKey』使用)
WaitKey() ;
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.wavを読みこんで右のスピーカのみから音を出します
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
int SHandle ;
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
// test.wavのメモリへの読み込みサウンドハンドルをSHandleに保存します
SHandle = LoadSoundMem( "test.wav" ) ;
// パンの設定
SetPanSoundMem( 10000 , SHandle ) ;
// 音の再生
PlaySoundMem( SHandle , DX_PLAYTYPE_BACK ) ;
// キー入力があるまで待ちます(『WaitKey』使用)
WaitKey() ;
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.wavを読みこんで80%の音量で再生します
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
int SHandle ;
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
// test.wavのメモリへの読み込みサウンドハンドルをSHandleに保存します
SHandle = LoadSoundMem( "test.wav" ) ;
// 音量の設定
ChangeVolumeSoundMem( 255 * 80 / 100, SHandle ) ;
// 音の再生
PlaySoundMem( SHandle , DX_PLAYTYPE_BACK ) ;
// キー入力があるまで待ちます(『WaitKey』使用)
WaitKey() ;
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.wav をループ再生させながら、再生周波数を上げたり下げたりします。
#include "DxLib.h"
// WinMain関数
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
int SoundHandle ;
int Freq , Add ;
// DXライブラリ初期化処理
if( DxLib_Init() == -1 ) return -1;
// 音をロードする
SoundHandle = LoadSoundMem( "test.wav" ) ;
// 再生周波数と再生周波数の推移値を設定する
Freq = 22050 ;
Add = -10 ;
// ロードした音のループ再生を開始する
PlaySoundMem( SoundHandle , DX_PLAYTYPE_LOOP ) ;
// ESCキーが押されるか、システムがエラーを起こすまでループする
while( ProcessMessage() == 0 && CheckHitKey( KEY_INPUT_ESCAPE ) == 0 )
{
// 再生周波数の設定値を変化させる
Freq += Add ;
if( Freq > 100000 ){ Freq = 100000 ; Add = -10 ; }
if( Freq < 1000 ){ Freq = 1000 ; Add = 10 ; }
// 再生周波数を設定する
SetFrequencySoundMem( Freq , SoundHandle ) ;
// 少し待つ
WaitTimer( 10 ) ;
}
// DXライブラリ使用の終了処理
DxLib_End() ;
// ソフトの終了
return 0 ;
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル testMusic.wav のループ後の位置を先頭から20秒後に設定してから再生します。 (testMusic.wav はサンプルプログラム実行用フォルダにはありませんので自前で用意してください)
#include "DxLib.h"
// WinMain関数
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
int SoundHandle ;
// DXライブラリ初期化処理
if( DxLib_Init() == -1 ) return -1;
// 音声をロードする
SoundHandle = LoadSoundMem( "testMusic.wav" ) ;
// ループ位置を音声の先頭から20秒後にセットする
SetLoopPosSoundMem( 20000, SoundHandle ) ;
// 音声をループ再生する
PlaySoundMem( SoundHandle, DX_PLAYTYPE_LOOP ) ;
// キーの入力待ち
WaitKey() ;
// DXライブラリ使用の終了処理
DxLib_End() ;
// ソフトの終了
return 0 ;
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル ありません | ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル ありません | ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.wav を LoadSoundMem で読み込み、同じサウンドデータを使用するサウンドハンドルを作成してそれぞれのサウンドハンドルから音を再生します。
#include "DxLib.h"
// WinMain関数
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
int SHandle, DupSHandle ;
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
// test.wavのメモリへの読み込みサウンドハンドルをSHandleに保存します
SHandle = LoadSoundMem( "test.wav" ) ;
// test.wavを使用する SHandle とは別のサウンドハンドルを作成する
DupSHandle = DuplicateSoundMem( SHandle ) ;
// 読みこんだ音をノーマル再生します(『PlaySoundMem』関数使用)
PlaySoundMem( SHandle , DX_PLAYTYPE_NORMAL ) ;
// SHandle から複製した DupSHandle をノーマル再生します
PlaySoundMem( DupSHandle , DX_PLAYTYPE_NORMAL ) ;
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
| ||||||||||||||||||||
| 音楽再生関数 | ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.mid をノーマル演奏します
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
// test.midのノーマル演奏
PlayMusic( "test.mid" , DX_PLAYTYPE_NORMAL ) ;
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.mid をバックグラウンド演奏し、演奏が終了するまで待ちます。
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
// test.midのバックグラウンド演奏
PlayMusic( "test.mid" , DX_PLAYTYPE_BACK ) ;
// 演奏終了までここでループ
while( CheckMusic() == 1 )
{
// メッセージ処理
if( ProcessMessage() == -1 )
{
break ; // エラーが起きたらループを抜ける
}
}
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル test.midをループ再生し、2秒経ったら止めます
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
// test.midのループ演奏
PlayMusic( "test.wav" , DX_PLAYTYPE_LOOP ) ;
// 2秒待つ『WaitTimer』使用
WaitTimer( 2000 ) ;
// 演奏を止めます
StopMusic() ;
// キー入力があるまで待ちます(『WaitKey』使用)
WaitKey() ;
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
| ||||||||||||||||||||
| ||||||||||||||||||||
|
サンプル ありません。 | ||||||||||||||||||||
|
戻る | ||||||||||||||||||||