equal
deleted
inserted
replaced
66 |
66 |
67 ALboolean openal_ready(void) { |
67 ALboolean openal_ready(void) { |
68 return openalReady; |
68 return openalReady; |
69 } |
69 } |
70 |
70 |
71 ALboolean openal_init(uint32_t memorysize) { |
71 ALboolean openal_init(uint32_t usehardware, uint32_t memorysize) { |
72 /*Initialize an OpenAL contex and allocate memory space for data and buffers*/ |
72 /*Initialize an OpenAL contex and allocate memory space for data and buffers*/ |
73 ALCcontext *context; |
73 ALCcontext *context; |
74 ALCdevice *device; |
74 ALCdevice *device; |
75 const ALCchar *default_device; |
75 const ALCchar *default_device; |
76 |
76 |
83 |
83 |
84 if(openalReady == AL_TRUE) { |
84 if(openalReady == AL_TRUE) { |
85 fprintf(stderr, "ERROR: OpenAL already initialized\n"); |
85 fprintf(stderr, "ERROR: OpenAL already initialized\n"); |
86 return AL_FALSE; |
86 return AL_FALSE; |
87 } |
87 } |
88 |
88 |
89 default_device = alcGetString(NULL, ALC_DEFAULT_DEVICE_SPECIFIER); |
89 if(usehardware) |
90 fprintf(stderr, "Using default device: %s\n", default_device); |
90 { |
91 |
91 if ((device = alcOpenDevice(NULL)) == NULL) { |
92 if ((device = alcOpenDevice(default_device)) == NULL) { |
92 fprintf(stderr, "ERROR: Failed to open sound device\n"); |
93 fprintf(stderr, "ERROR: Failed to open sound device\n"); |
93 return AL_FALSE; |
94 return AL_FALSE; |
94 } |
95 } |
95 } |
|
96 else |
|
97 { |
|
98 if ((device = alcOpenDevice("Generic Software")) == NULL) { |
|
99 fprintf(stderr, "ERROR: Failed to open sound device\n"); |
|
100 return AL_FALSE; |
|
101 } |
|
102 } |
|
103 fprintf(stderr, "Using default device: %s\n", alcGetString(device, ALC_DEVICE_SPECIFIER)); |
96 |
104 |
97 context = alcCreateContext(device, NULL); |
105 context = alcCreateContext(device, NULL); |
98 alcMakeContextCurrent(context); |
106 alcMakeContextCurrent(context); |
99 alcProcessContext(context); |
107 alcProcessContext(context); |
100 |
108 |