X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=simgear%2Fsound%2Fopenal_test2.cxx;h=43bd464d7708847d7d93dfd0c7d09ff879d256a7;hb=a62f11c5509f8d7b2a4c3b587c0e7af8d4f5a39b;hp=f887769c7fa2a9fe02b7b37d01f48e7c7ca1705d;hpb=1cff7fcfea3ae156f820133d6fca0960d3fbb1e2;p=simgear.git diff --git a/simgear/sound/openal_test2.cxx b/simgear/sound/openal_test2.cxx index f887769c..43bd464d 100644 --- a/simgear/sound/openal_test2.cxx +++ b/simgear/sound/openal_test2.cxx @@ -1,54 +1,105 @@ #include -#ifdef __MINGW32__ -// This is broken, but allows the file to compile without a POSIX -// environment. -static unsigned int sleep(unsigned int secs) { return 0; } +#ifdef _WIN32 +#include +#define sleep(x) Sleep(x*1000) #else -#include // sleep() +#include #endif -#include "sample_openal.hxx" +#include +#include +#include + #include "soundmgr_openal.hxx" +#include "sample_group.hxx" +#include "sample_openal.hxx" int main( int argc, char *argv[] ) { - SGSoundMgr sm; + SGSampleGroup *sgr; + SGSoundMgr *smgr; + + smgr = new SGSoundMgr; + + smgr->bind(); + smgr->init(); + sgr = smgr->find("default", true); + smgr->set_volume(0.9); + smgr->activate(); - SGSoundSample sample1( ".", "jet.wav" ); - sample1.set_volume(0.5); - sample1.set_volume(0.2); - sample1.play_looped(); + SGPath srcDir(SRC_DIR); + + SGSoundSample *sample1 = new SGSoundSample("jet.wav", srcDir); + sample1->set_volume(1.0); + sample1->set_pitch(1.0); + sample1->play_looped(); + sgr->add(sample1, "sound1"); + smgr->update(1.0); + printf("playing sample1\n"); + sleep(1); + + SGSoundSample *sample2 = new SGSoundSample("jet.wav", srcDir); + sample2->set_volume(0.5); + sample2->set_pitch(0.4); + sample2->play_looped(); + sgr->add(sample2, "sound2"); + smgr->update(1.0); + printf("playing sample2\n"); sleep(1); - SGSoundSample sample2( ".", "jet.wav" ); - sample2.set_volume(0.5); - sample2.set_pitch(0.4); - sample2.play_looped(); + SGSoundSample *sample3 = new SGSoundSample("jet.wav", srcDir); + sample3->set_volume(0.5); + sample3->set_pitch(0.8); + sample3->play_looped(); + sgr->add(sample3, "sound3"); + smgr->update(1.0); + printf("playing sample3\n"); sleep(1); - SGSoundSample sample3( ".", "jet.wav" ); - sample3.set_volume(0.5); - sample3.set_pitch(0.8); - sample3.play_looped(); + SGSoundSample *sample4 = new SGSoundSample("jet.wav", srcDir); + sample4->set_volume(0.5); + sample4->set_pitch(1.2); + sample4->play_looped(); + sgr->add(sample4, "sound4"); + smgr->update(1.0); + printf("playing sample4\n"); sleep(1); - SGSoundSample sample4( ".", "jet.wav" ); - sample4.set_volume(0.5); - sample4.set_pitch(1.2); - sample4.play_looped(); + SGSoundSample *sample5 = new SGSoundSample("jet.wav", srcDir); + sample5->set_volume(0.5); + sample5->set_pitch(1.6); + sample5->play_looped(); + sgr->add(sample5, "sound5"); + smgr->update(1.0); + printf("playing sample5\n"); sleep(1); - SGSoundSample sample5( ".", "jet.wav" ); - sample5.set_volume(0.5); - sample5.set_pitch(1.6); - sample5.play_looped(); + SGSoundSample *sample6 = new SGSoundSample("jet.wav", srcDir); + sample6->set_volume(0.5); + sample6->set_pitch(2.0); + sample6->play_looped(); + sgr->add(sample6, "sound6"); + smgr->update(1.0); + printf("playing sample6\n"); sleep(1); - SGSoundSample sample6( ".", "jet.wav" ); - sample6.set_volume(0.5); - sample6.set_pitch(2.0); - sample6.play_looped(); + for (int i=0; i<10; i++) { + sleep(1); + smgr->update(1); + } + + sgr->stop("sound1"); + sgr->stop("sound2"); + sgr->stop("sound3"); + SGTimeStamp::sleepForMSec(500); + smgr->update(0.5); + sgr->stop("sound4"); + sgr->stop("sound5"); + sgr->stop("sound6"); + smgr->update(1); sleep(1); - sleep(10); + smgr->unbind(); + sleep(2); + delete smgr; }