DevMaster.net Forums
[[ Home | Forums | 3D Engines Database | Wiki | Articles/Tutorials | Game Dev Jobs | IRC Chat Network | Contact Us ]]

Go Back   DevMaster.net Forums > Programming & Development > Sound and Music Programming
User Name
Password
Register FAQ Members List Search Today's Posts Mark Forums Read

Reply
 
Thread Tools Search this Thread Display Modes
Old 04-28-2005, 03:06 AM   #1
Cleves
New Member
 
Join Date: Jan 2005
Posts: 26
Default

Hey, I followed the tutorials on OpenAL and I've got it to work but for some reason after recompiling once, it stopped working. I have no idea why, I've searched the code many times and didn't find anything wrong. Maybe you guys can help me.


Code:
#include <conio.h> #include <stdlib.h> #include <al.h> #include <alc.h> #include <alut.h> #include <stdio.h> // Maximum data buffers we will need. #define NUM_BUFFERS 2 // Maximum emissions we will need. #define NUM_SOURCES 2 // These index the buffers and sources. #define WALK 0 #define MAIN 1 // Buffers hold sound data. ALuint Buffers[NUM_BUFFERS]; // Sources are points of emitting sound. ALuint Sources[NUM_SOURCES]; // Position of the source sounds. ALfloat SourcePos[NUM_SOURCES][2]; // Velocity of the source sounds. ALfloat SourceVel[NUM_SOURCES][2]; // Position of the listener. ALfloat ListenerPos[] = { 0.0, 0.0, 0.0 }; // Velocity of the listener. ALfloat ListenerVel[] = { 0.0, 0.0, 0.0 }; // Orientation of the listener. (first 3 elements are "at", second 3 are "up") ALfloat ListenerOri[] = { 0.0, 0.0, -1.0, 0.0, 1.0, 0.0 }; ALboolean LoadALData() { // Variables to load into. ALenum format; ALsizei size; ALvoid* data; ALsizei freq; ALboolean loop; // Load wav data into a buffer. alGenBuffers(NUM_BUFFERS, Buffers); if (alGetError() != AL_NO_ERROR) { printf("ERROR 10: in loading wave files into buffer\n"); return AL_FALSE; } alutLoadWAVFile("Data/foot.wav", &format, &data, &size, &freq, &loop); alBufferData(Buffers[WALK], format, data, size, freq); alutUnloadWAV(format, data, size, freq); alutLoadWAVFile("Data/main.wav", &format, &data, &size, &freq, &loop); alBufferData(Buffers[MAIN], format, data, size, freq); alutUnloadWAV(format, data, size, freq); // Bind buffers into audio sources. alGenSources(NUM_SOURCES, Sources); if (alGetError() != AL_NO_ERROR) { printf("ERROR 11: in binding buffers to audio sources\n"); return AL_FALSE; } alSourcei (Sources[WALK], AL_BUFFER, Buffers[WALK] ); alSourcef (Sources[WALK], AL_PITCH, 1.0 ); alSourcef (Sources[WALK], AL_GAIN, 1.0 ); alSourcefv(Sources[WALK], AL_POSITION, SourcePos[WALK]); alSourcefv(Sources[WALK], AL_VELOCITY, SourceVel[WALK]); alSourcei (Sources[WALK], AL_LOOPING, AL_TRUE ); alSourcei (Sources[MAIN], AL_BUFFER, Buffers[MAIN] ); alSourcef (Sources[MAIN], AL_PITCH, 1.0 ); alSourcef (Sources[MAIN], AL_GAIN, 1.0 ); alSourcefv(Sources[MAIN], AL_POSITION, SourcePos[MAIN]); alSourcefv(Sources[MAIN], AL_VELOCITY, SourceVel[MAIN]); alSourcei (Sources[MAIN], AL_LOOPING, AL_TRUE ); // Do another error check and return. if( alGetError() != AL_NO_ERROR) return AL_FALSE; return AL_TRUE; }; void SetListenerValues() { alListenerfv(AL_POSITION, ListenerPos); alListenerfv(AL_VELOCITY, ListenerVel); alListenerfv(AL_ORIENTATION, ListenerOri); }; void KillALData() { alDeleteBuffers(NUM_BUFFERS, &Buffers[0]); alDeleteSources(NUM_SOURCES, &Sources[0]); alutExit(); }; // I add this to my Main function /Initialize OpenAL and clear the error bit. alutInit(NULL, 0); alGetError(); // Load the wav data. if (LoadALData() == AL_FALSE) { printf("FAILED LOADING DATA \n"); return -1; }; SetListenerValues(); alSourcePlay(Sources[WALK]);//Footsteps sound alSourcePlay(Sources[MAIN]);

Thanks
Cleves is offline   Reply With Quote
Old 05-16-2005, 11:01 AM   #2
lestat
New Member
 
Join Date: Feb 2005
Posts: 6
Default

Check error after GenSource.
lestat is offline   Reply With Quote
Old 10-28-2005, 07:16 AM   #3
DragonCode
New Member
 
Join Date: Oct 2005
Location: FL
Posts: 3
Default Re: OpenAL problem

I am having the same problem and I do not see any errors being reported by alGetError().

Have you had any resolution on this cleves?

There is another thread with the same issue:

http://www.devmaster.net/forums/showthread.php?t=3203
DragonCode is offline   Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Forum Jump


All times are GMT -7. The time now is 03:41 AM.


Powered by vBulletin
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.