rm USE_OPENAL;

This commit is contained in:
bjorn 2018-09-19 17:27:30 -07:00 committed by Bjorn Swenson
parent 5a9cd5187c
commit 2d788e2f41
5 changed files with 11 additions and 120 deletions

View File

@ -17,7 +17,6 @@ option(LOVR_ENABLE_ENET "Bundle with lua-enet" ON)
option(LOVR_ENABLE_JSON "Bundle with lua-cjson" ON)
option(LOVR_USE_LUAJIT "Use LuaJIT instead of Lua" ON)
option(LOVR_USE_OPENAL "Enable the OpenAL backend for the audio module" ON)
option(LOVR_USE_OPENVR "Enable the OpenVR backend for the headset module" ON)
option(LOVR_USE_WEBVR "Enable the WebVR backend for the headset module" OFF)
option(LOVR_USE_OCULUS "Enable the LibOVR backend for the headset module (be sure to also set LOVR_OCULUS_PATH to point to the Oculus SDK)" OFF)
@ -221,7 +220,7 @@ if(LOVR_ENABLE_PHYSICS)
endif()
# OpenAL
if(LOVR_ENABLE_AUDIO AND LOVR_USE_OPENAL)
if(LOVR_ENABLE_AUDIO)
if(LOVR_SYSTEM_OPENAL)
pkg_search_module(OPENAL openal-soft)
if (NOT OPENAL_FOUND)
@ -303,17 +302,13 @@ endif()
if(LOVR_ENABLE_AUDIO)
add_definitions(-DLOVR_ENABLE_AUDIO)
set(LOVR_AUDIO_SRC
src/audio/audio.c
src/audio/microphone.c
src/audio/source.c
src/api/audio.c
src/api/types/source.c
src/api/types/microphone.c
)
if(LOVR_USE_OPENAL)
add_definitions(-DLOVR_USE_OPENAL)
set(LOVR_AUDIO_SRC ${LOVR_AUDIO_SRC} src/audio/audio.c src/audio/source.c src/audio/microphone.c)
else()
set(LOVR_AUDIO_SRC ${LOVR_AUDIO_SRC} src/audio/null.c)
endif()
endif()
if(LOVR_ENABLE_DATA)

View File

@ -1,16 +1,15 @@
#include "audio/source.h"
#include "audio/microphone.h"
#include "lib/vec/vec.h"
#include <AL/al.h>
#include <AL/alc.h>
#include <AL/alext.h>
#include <stdbool.h>
#pragma once
#define MAX_MICROPHONES 8
#ifdef LOVR_USE_OPENAL
#include <AL/al.h>
#include <AL/alc.h>
#include <AL/alext.h>
typedef struct {
bool initialized;
ALCdevice* device;
@ -21,10 +20,6 @@ typedef struct {
float position[3];
float velocity[3];
} AudioState;
#else
typedef unsigned int AudioState;
typedef unsigned int ALenum;
#endif
ALenum lovrAudioConvertFormat(int bitDepth, int channelCount);

View File

@ -1,12 +1,11 @@
#include "util.h"
#include "data/soundData.h"
#include <AL/al.h>
#include <AL/alc.h>
#include <stdbool.h>
#pragma once
#ifdef LOVR_USE_OPENAL
#include <AL/al.h>
#include <AL/alc.h>
typedef struct {
Ref ref;
ALCdevice* device;
@ -16,9 +15,6 @@ typedef struct {
int bitDepth;
int channelCount;
} Microphone;
#else
typedef unsigned int Microphone;
#endif
Microphone* lovrMicrophoneCreate(const char* name, int samples, int sampleRate, int bitDepth, int channelCount);
void lovrMicrophoneDestroy(void* ref);

View File

@ -1,89 +0,0 @@
// "Null" implementation of all audio code for no-OpenAL mode
// Currently, some of these functions may lead to crashes (IE by returning null values)
// audio.c
#include "audio/audio.h"
ALenum lovrAudioConvertFormat(int bitDepth, int channelCount) { return 0; }
void lovrAudioInit() {}
void lovrAudioDestroy() {}
void lovrAudioUpdate() {}
void lovrAudioAdd(Source* source) {}
void lovrAudioGetDopplerEffect(float* factor, float* speedOfSound) {}
void lovrAudioGetMicrophoneNames(const char* names[MAX_MICROPHONES], uint8_t* count) {}
void lovrAudioGetOrientation(float* angle, float* ax, float* ay, float* az) {}
void lovrAudioGetPosition(float* x, float* y, float* z) {}
void lovrAudioGetVelocity(float* x, float* y, float* z) {}
float lovrAudioGetVolume() { return 0; }
bool lovrAudioHas(Source* source) { return false; }
bool lovrAudioIsSpatialized() { return false; }
void lovrAudioPause() {}
void lovrAudioResume() {}
void lovrAudioRewind() {}
void lovrAudioSetDopplerEffect(float factor, float speedOfSound) {}
void lovrAudioSetOrientation(float angle, float ax, float ay, float az) {}
void lovrAudioSetPosition(float x, float y, float z) {}
void lovrAudioSetVelocity(float x, float y, float z) {}
void lovrAudioSetVolume(float volume) {}
void lovrAudioStop() {}
// microphone.c
#include "audio/microphone.h"
Microphone* lovrMicrophoneCreate(const char* name, int samples, int sampleRate, int bitDepth, int channelCount) { return 0; }
void lovrMicrophoneDestroy(void* ref) {}
int lovrMicrophoneGetBitDepth(Microphone* microphone) { return 0; }
int lovrMicrophoneGetChannelCount(Microphone* microphone) { return 0; }
SoundData* lovrMicrophoneGetData(Microphone* microphone) { return NULL; }
const char* lovrMicrophoneGetName(Microphone* microphone) { return NULL; }
int lovrMicrophoneGetSampleCount(Microphone* microphone) { return 0; }
int lovrMicrophoneGetSampleRate(Microphone* microphone) { return 0; }
bool lovrMicrophoneIsRecording(Microphone* microphone) { return false; }
void lovrMicrophoneStartRecording(Microphone* microphone) {}
void lovrMicrophoneStopRecording(Microphone* microphone) {}
// source.c
#include "audio/source.h"
Source* lovrSourceCreateStatic(SoundData* soundData) { return NULL; }
Source* lovrSourceCreateStream(AudioStream* stream) { return NULL; }
void lovrSourceDestroy(void* ref) {}
SourceType lovrSourceGetType(Source* source) { return SOURCE_STATIC; }
int lovrSourceGetBitDepth(Source* source) { return 0; }
int lovrSourceGetChannelCount(Source* source) { return 0; }
void lovrSourceGetCone(Source* source, float* innerAngle, float* outerAngle, float* outerGain) {}
void lovrSourceGetDirection(Source* source, float* x, float* y, float* z) {}
int lovrSourceGetDuration(Source* source) { return 0; }
void lovrSourceGetFalloff(Source* source, float* reference, float* max, float* rolloff) {}
float lovrSourceGetPitch(Source* source) { return 0; }
void lovrSourceGetPosition(Source* source, float* x, float* y, float* z) {}
void lovrSourceGetVelocity(Source* source, float* x, float* y, float* z) {}
int lovrSourceGetSampleRate(Source* source) { return 0; }
float lovrSourceGetVolume(Source* source) { return 0; }
void lovrSourceGetVolumeLimits(Source* source, float* min, float* max) {}
bool lovrSourceIsLooping(Source* source) { return false; }
bool lovrSourceIsPaused(Source* source) { return false; }
bool lovrSourceIsPlaying(Source* source) { return false; }
bool lovrSourceIsRelative(Source* source) { return false; }
bool lovrSourceIsStopped(Source* source) { return false; }
void lovrSourcePause(Source* source) {}
void lovrSourcePlay(Source* source) {}
void lovrSourceResume(Source* source) {}
void lovrSourceRewind(Source* source) {}
void lovrSourceSeek(Source* source, int sample) {}
void lovrSourceSetCone(Source* source, float inner, float outer, float outerGain) {}
void lovrSourceSetDirection(Source* source, float x, float y, float z) {}
void lovrSourceSetFalloff(Source* source, float reference, float max, float rolloff) {}
void lovrSourceSetLooping(Source* source, bool isLooping) {}
void lovrSourceSetPitch(Source* source, float pitch) {}
void lovrSourceSetPosition(Source* source, float x, float y, float z) {}
void lovrSourceSetRelative(Source* source, bool isRelative) {}
void lovrSourceSetVelocity(Source* source, float x, float y, float z) {}
void lovrSourceSetVolume(Source* source, float volume) {}
void lovrSourceSetVolumeLimits(Source* source, float min, float max) {}
void lovrSourceStop(Source* source) {}
void lovrSourceStream(Source* source, ALuint* buffers, int count) {}
int lovrSourceTell(Source* source) { return 0; }

View File

@ -1,6 +1,8 @@
#include "data/audioStream.h"
#include "data/soundData.h"
#include "util.h"
#include <AL/al.h>
#include <AL/alc.h>
#include <stdbool.h>
#pragma once
@ -17,9 +19,6 @@ typedef enum {
UNIT_SAMPLES
} TimeUnit;
#ifdef LOVR_USE_OPENAL
#include <AL/al.h>
#include <AL/alc.h>
typedef struct {
Ref ref;
SourceType type;
@ -29,11 +28,6 @@ typedef struct {
ALuint buffers[SOURCE_BUFFERS];
bool isLooping;
} Source;
#else
typedef struct { Ref ref; } Source;
typedef unsigned int ALuint;
#define ALC_HRTF_SOFT 0
#endif
Source* lovrSourceCreateStatic(SoundData* soundData);
Source* lovrSourceCreateStream(AudioStream* stream);