Adapt platforms to AudioServer refactoring
Fixes compilation on Windows and likely other platforms (at least as far as AudioServer changes were concerned), though they were not tested.
This commit is contained in:
parent
6a3dae5be9
commit
7b059965e8
|
@ -30,11 +30,9 @@
|
||||||
|
|
||||||
#ifdef ALSA_ENABLED
|
#ifdef ALSA_ENABLED
|
||||||
|
|
||||||
#include <errno.h>
|
|
||||||
#include "globals.h"
|
#include "globals.h"
|
||||||
|
|
||||||
|
#include <errno.h>
|
||||||
|
|
||||||
|
|
||||||
Error AudioDriverALSA::init() {
|
Error AudioDriverALSA::init() {
|
||||||
|
|
||||||
|
@ -46,7 +44,7 @@ Error AudioDriverALSA::init() {
|
||||||
samples_out = NULL;
|
samples_out = NULL;
|
||||||
|
|
||||||
mix_rate = GLOBAL_DEF("audio/mix_rate",44100);
|
mix_rate = GLOBAL_DEF("audio/mix_rate",44100);
|
||||||
output_format = SPEAKER_MODE_STEREO;
|
speaker_mode = SPEAKER_MODE_STEREO;
|
||||||
channels = 2;
|
channels = 2;
|
||||||
|
|
||||||
|
|
||||||
|
@ -207,14 +205,16 @@ int AudioDriverALSA::get_mix_rate() const {
|
||||||
|
|
||||||
AudioDriver::SpeakerMode AudioDriverALSA::get_speaker_mode() const {
|
AudioDriver::SpeakerMode AudioDriverALSA::get_speaker_mode() const {
|
||||||
|
|
||||||
return output_format;
|
return speaker_mode;
|
||||||
};
|
};
|
||||||
|
|
||||||
void AudioDriverALSA::lock() {
|
void AudioDriverALSA::lock() {
|
||||||
|
|
||||||
if (!thread || !mutex)
|
if (!thread || !mutex)
|
||||||
return;
|
return;
|
||||||
mutex->lock();
|
mutex->lock();
|
||||||
};
|
};
|
||||||
|
|
||||||
void AudioDriverALSA::unlock() {
|
void AudioDriverALSA::unlock() {
|
||||||
|
|
||||||
if (!thread || !mutex)
|
if (!thread || !mutex)
|
||||||
|
|
|
@ -48,7 +48,7 @@ class AudioDriverALSA : public AudioDriver {
|
||||||
static void thread_func(void* p_udata);
|
static void thread_func(void* p_udata);
|
||||||
|
|
||||||
unsigned int mix_rate;
|
unsigned int mix_rate;
|
||||||
SpeakerMode output_format;
|
SpeakerMode speaker_mode;
|
||||||
|
|
||||||
snd_pcm_uframes_t buffer_size;
|
snd_pcm_uframes_t buffer_size;
|
||||||
snd_pcm_uframes_t period_size;
|
snd_pcm_uframes_t period_size;
|
||||||
|
|
|
@ -44,7 +44,7 @@ Error AudioDriverPulseAudio::init() {
|
||||||
samples_out = NULL;
|
samples_out = NULL;
|
||||||
|
|
||||||
mix_rate = GLOBAL_DEF("audio/mix_rate",44100);
|
mix_rate = GLOBAL_DEF("audio/mix_rate",44100);
|
||||||
output_format = SPEAKER_MODE_STEREO;
|
speaker_mode = SPEAKER_MODE_STEREO;
|
||||||
channels = 2;
|
channels = 2;
|
||||||
|
|
||||||
pa_sample_spec spec;
|
pa_sample_spec spec;
|
||||||
|
@ -151,7 +151,7 @@ int AudioDriverPulseAudio::get_mix_rate() const {
|
||||||
|
|
||||||
AudioDriver::SpeakerMode AudioDriverPulseAudio::get_speaker_mode() const {
|
AudioDriver::SpeakerMode AudioDriverPulseAudio::get_speaker_mode() const {
|
||||||
|
|
||||||
return output_format;
|
return speaker_mode;
|
||||||
}
|
}
|
||||||
|
|
||||||
void AudioDriverPulseAudio::lock() {
|
void AudioDriverPulseAudio::lock() {
|
||||||
|
|
|
@ -48,7 +48,7 @@ class AudioDriverPulseAudio : public AudioDriver{
|
||||||
static void thread_func(void* p_udata);
|
static void thread_func(void* p_udata);
|
||||||
|
|
||||||
unsigned int mix_rate;
|
unsigned int mix_rate;
|
||||||
SpeakerMode output_format;
|
SpeakerMode speaker_mode;
|
||||||
|
|
||||||
unsigned int buffer_size;
|
unsigned int buffer_size;
|
||||||
int channels;
|
int channels;
|
||||||
|
|
|
@ -85,6 +85,8 @@ Error AudioDriverRtAudio::init() {
|
||||||
ERR_EXPLAIN("Cannot initialize RtAudio audio driver: No devices present.")
|
ERR_EXPLAIN("Cannot initialize RtAudio audio driver: No devices present.")
|
||||||
ERR_FAIL_COND_V( dac->getDeviceCount() < 1, ERR_UNAVAILABLE );
|
ERR_FAIL_COND_V( dac->getDeviceCount() < 1, ERR_UNAVAILABLE );
|
||||||
|
|
||||||
|
// FIXME: Adapt to the OutputFormat -> SpeakerMode change
|
||||||
|
/*
|
||||||
String channels = GLOBAL_DEF("audio/output","stereo");
|
String channels = GLOBAL_DEF("audio/output","stereo");
|
||||||
|
|
||||||
if (channels=="5.1")
|
if (channels=="5.1")
|
||||||
|
@ -95,6 +97,7 @@ Error AudioDriverRtAudio::init() {
|
||||||
output_format=OUTPUT_MONO;
|
output_format=OUTPUT_MONO;
|
||||||
else
|
else
|
||||||
output_format=OUTPUT_STEREO;
|
output_format=OUTPUT_STEREO;
|
||||||
|
*/
|
||||||
|
|
||||||
RtAudio::StreamParameters parameters;
|
RtAudio::StreamParameters parameters;
|
||||||
parameters.deviceId = dac->getDefaultOutputDevice();
|
parameters.deviceId = dac->getDefaultOutputDevice();
|
||||||
|
@ -125,11 +128,10 @@ Error AudioDriverRtAudio::init() {
|
||||||
|
|
||||||
while(true) {
|
while(true) {
|
||||||
while( true) {
|
while( true) {
|
||||||
switch(output_format) {
|
switch(speaker_mode) {
|
||||||
case OUTPUT_MONO: parameters.nChannels = 1; break;
|
case SPEAKER_MODE_STEREO: parameters.nChannels = 2; break;
|
||||||
case OUTPUT_STEREO: parameters.nChannels = 2; break;
|
case SPEAKER_SURROUND_51: parameters.nChannels = 6; break;
|
||||||
case OUTPUT_QUAD: parameters.nChannels = 4; break;
|
case SPEAKER_SURROUND_71: parameters.nChannels = 8; break;
|
||||||
case OUTPUT_5_1: parameters.nChannels = 6; break;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
@ -142,11 +144,10 @@ Error AudioDriverRtAudio::init() {
|
||||||
// try with less channels
|
// try with less channels
|
||||||
ERR_PRINT("Unable to open audio, retrying with fewer channels..");
|
ERR_PRINT("Unable to open audio, retrying with fewer channels..");
|
||||||
|
|
||||||
switch(output_format) {
|
switch(speaker_mode) {
|
||||||
case OUTPUT_MONO: ERR_EXPLAIN("Unable to open audio."); ERR_FAIL_V( ERR_UNAVAILABLE ); break;
|
case SPEAKER_MODE_STEREO: speaker_mode=SPEAKER_MODE_STEREO; break;
|
||||||
case OUTPUT_STEREO: output_format=OUTPUT_MONO; break;
|
case SPEAKER_SURROUND_51: speaker_mode=SPEAKER_SURROUND_51; break;
|
||||||
case OUTPUT_QUAD: output_format=OUTPUT_STEREO; break;
|
case SPEAKER_SURROUND_71: speaker_mode=SPEAKER_SURROUND_71; break;
|
||||||
case OUTPUT_5_1: output_format=OUTPUT_QUAD; break;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -189,9 +190,9 @@ int AudioDriverRtAudio::get_mix_rate() const {
|
||||||
return mix_rate;
|
return mix_rate;
|
||||||
}
|
}
|
||||||
|
|
||||||
AudioDriverSW::OutputFormat AudioDriverRtAudio::get_output_format() const {
|
AudioDriver::SpeakerMode AudioDriverRtAudio::get_speaker_mode() const {
|
||||||
|
|
||||||
return output_format;
|
return speaker_mode;
|
||||||
}
|
}
|
||||||
|
|
||||||
void AudioDriverRtAudio::start() {
|
void AudioDriverRtAudio::start() {
|
||||||
|
@ -229,7 +230,7 @@ AudioDriverRtAudio::AudioDriverRtAudio()
|
||||||
|
|
||||||
mutex=NULL;
|
mutex=NULL;
|
||||||
mix_rate=44100;
|
mix_rate=44100;
|
||||||
output_format=OUTPUT_STEREO;
|
speaker_mode=SPEAKER_MODE_STEREO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -31,16 +31,16 @@
|
||||||
|
|
||||||
#ifdef RTAUDIO_ENABLED
|
#ifdef RTAUDIO_ENABLED
|
||||||
|
|
||||||
#include "servers/audio/audio_server_sw.h"
|
#include "servers/audio_server.h"
|
||||||
|
|
||||||
#include <RtAudio.h>
|
#include <RtAudio.h>
|
||||||
|
|
||||||
class AudioDriverRtAudio : public AudioDriverSW {
|
class AudioDriverRtAudio : public AudioDriver {
|
||||||
|
|
||||||
|
|
||||||
static int callback( void *outputBuffer, void *inputBuffer, unsigned int nBufferFrames,
|
static int callback( void *outputBuffer, void *inputBuffer, unsigned int nBufferFrames,
|
||||||
double streamTime, RtAudioStreamStatus status, void *userData );
|
double streamTime, RtAudioStreamStatus status, void *userData );
|
||||||
OutputFormat output_format;
|
SpeakerMode speaker_mode;
|
||||||
Mutex *mutex;
|
Mutex *mutex;
|
||||||
RtAudio *dac;
|
RtAudio *dac;
|
||||||
int mix_rate;
|
int mix_rate;
|
||||||
|
@ -53,7 +53,7 @@ public:
|
||||||
virtual Error init();
|
virtual Error init();
|
||||||
virtual void start();
|
virtual void start();
|
||||||
virtual int get_mix_rate() const ;
|
virtual int get_mix_rate() const ;
|
||||||
virtual OutputFormat get_output_format() const;
|
virtual SpeakerMode get_speaker_mode() const;
|
||||||
virtual void lock();
|
virtual void lock();
|
||||||
virtual void unlock();
|
virtual void unlock();
|
||||||
virtual void finish();
|
virtual void finish();
|
||||||
|
|
|
@ -46,7 +46,8 @@ Error AudioDriverXAudio2::init() {
|
||||||
|
|
||||||
|
|
||||||
mix_rate = 48000;
|
mix_rate = 48000;
|
||||||
output_format = OUTPUT_STEREO;
|
// FIXME: speaker_mode seems unused in the Xaudio2 driver so far
|
||||||
|
speaker_mode = SPEAKER_MODE_STEREO;
|
||||||
channels = 2;
|
channels = 2;
|
||||||
|
|
||||||
int latency = GLOBAL_DEF("audio/output_latency", 25);
|
int latency = GLOBAL_DEF("audio/output_latency", 25);
|
||||||
|
@ -156,9 +157,9 @@ int AudioDriverXAudio2::get_mix_rate() const {
|
||||||
return mix_rate;
|
return mix_rate;
|
||||||
};
|
};
|
||||||
|
|
||||||
AudioDriver::OutputFormat AudioDriverXAudio2::get_output_format() const {
|
AudioDriver::SpeakerMode AudioDriverXAudio2::get_speaker_mode() const {
|
||||||
|
|
||||||
return output_format;
|
return speaker_mode;
|
||||||
};
|
};
|
||||||
|
|
||||||
float AudioDriverXAudio2::get_latency() {
|
float AudioDriverXAudio2::get_latency() {
|
||||||
|
|
|
@ -29,8 +29,7 @@
|
||||||
#ifndef AUDIO_DRIVER_XAUDIO2_H
|
#ifndef AUDIO_DRIVER_XAUDIO2_H
|
||||||
#define AUDIO_DRIVER_XAUDIO2_H
|
#define AUDIO_DRIVER_XAUDIO2_H
|
||||||
|
|
||||||
#include "servers/audio/audio_server_sw.h"
|
#include "servers/audio_server.h"
|
||||||
|
|
||||||
#include "core/os/thread.h"
|
#include "core/os/thread.h"
|
||||||
#include "core/os/mutex.h"
|
#include "core/os/mutex.h"
|
||||||
|
|
||||||
|
@ -72,7 +71,7 @@ class AudioDriverXAudio2 : public AudioDriver {
|
||||||
int buffer_size;
|
int buffer_size;
|
||||||
|
|
||||||
unsigned int mix_rate;
|
unsigned int mix_rate;
|
||||||
OutputFormat output_format;
|
SpeakerMode speaker_mode;
|
||||||
|
|
||||||
int channels;
|
int channels;
|
||||||
|
|
||||||
|
@ -96,7 +95,7 @@ public:
|
||||||
virtual Error init();
|
virtual Error init();
|
||||||
virtual void start();
|
virtual void start();
|
||||||
virtual int get_mix_rate() const;
|
virtual int get_mix_rate() const;
|
||||||
virtual OutputFormat get_output_format() const;
|
virtual SpeakerMode get_speaker_mode() const;
|
||||||
virtual float get_latency();
|
virtual float get_latency();
|
||||||
virtual void lock();
|
virtual void lock();
|
||||||
virtual void unlock();
|
virtual void unlock();
|
||||||
|
|
|
@ -27,9 +27,11 @@
|
||||||
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
#include "audio_driver_jandroid.h"
|
#include "audio_driver_jandroid.h"
|
||||||
|
|
||||||
#include "globals.h"
|
#include "globals.h"
|
||||||
#include "os/os.h"
|
#include "os/os.h"
|
||||||
#include "thread_jandroid.h"
|
#include "thread_jandroid.h"
|
||||||
|
|
||||||
#ifndef ANDROID_NATIVE_ACTIVITY
|
#ifndef ANDROID_NATIVE_ACTIVITY
|
||||||
|
|
||||||
AudioDriverAndroid* AudioDriverAndroid::s_ad=NULL;
|
AudioDriverAndroid* AudioDriverAndroid::s_ad=NULL;
|
||||||
|
@ -199,9 +201,9 @@ int AudioDriverAndroid::get_mix_rate() const {
|
||||||
return mix_rate;
|
return mix_rate;
|
||||||
}
|
}
|
||||||
|
|
||||||
AudioDriver::OutputFormat AudioDriverAndroid::get_output_format() const{
|
AudioDriver::SpeakerMode AudioDriverAndroid::get_speaker_mode() const{
|
||||||
|
|
||||||
return OUTPUT_STEREO;
|
return SPEAKER_MODE_STEREO;
|
||||||
}
|
}
|
||||||
|
|
||||||
void AudioDriverAndroid::lock(){
|
void AudioDriverAndroid::lock(){
|
||||||
|
|
|
@ -29,7 +29,8 @@
|
||||||
#ifndef AUDIO_DRIVER_ANDROID_H
|
#ifndef AUDIO_DRIVER_ANDROID_H
|
||||||
#define AUDIO_DRIVER_ANDROID_H
|
#define AUDIO_DRIVER_ANDROID_H
|
||||||
|
|
||||||
#include "servers/audio/audio_server_sw.h"
|
#include "servers/audio_server.h"
|
||||||
|
|
||||||
#ifndef ANDROID_NATIVE_ACTIVITY
|
#ifndef ANDROID_NATIVE_ACTIVITY
|
||||||
|
|
||||||
#include "java_glue.h"
|
#include "java_glue.h"
|
||||||
|
@ -65,7 +66,7 @@ public:
|
||||||
virtual Error init();
|
virtual Error init();
|
||||||
virtual void start();
|
virtual void start();
|
||||||
virtual int get_mix_rate() const ;
|
virtual int get_mix_rate() const ;
|
||||||
virtual OutputFormat get_output_format() const;
|
virtual SpeakerMode get_speaker_mode() const;
|
||||||
virtual void lock();
|
virtual void lock();
|
||||||
virtual void unlock();
|
virtual void unlock();
|
||||||
virtual void finish();
|
virtual void finish();
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
#include "audio_driver_opensl.h"
|
#include "audio_driver_opensl.h"
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#define MAX_NUMBER_INTERFACES 3
|
#define MAX_NUMBER_INTERFACES 3
|
||||||
#define MAX_NUMBER_OUTPUT_DEVICES 6
|
#define MAX_NUMBER_OUTPUT_DEVICES 6
|
||||||
|
|
||||||
|
@ -373,9 +370,9 @@ int AudioDriverOpenSL::get_mix_rate() const {
|
||||||
return 44100;
|
return 44100;
|
||||||
}
|
}
|
||||||
|
|
||||||
AudioDriver::OutputFormat AudioDriverOpenSL::get_output_format() const{
|
AudioDriver::SpeakerMode AudioDriverOpenSL::get_speaker_mode() const{
|
||||||
|
|
||||||
return OUTPUT_STEREO;
|
return SPEAKER_MODE_STEREO;
|
||||||
}
|
}
|
||||||
|
|
||||||
void AudioDriverOpenSL::lock(){
|
void AudioDriverOpenSL::lock(){
|
||||||
|
|
|
@ -29,13 +29,11 @@
|
||||||
#ifndef AUDIO_DRIVER_OPENSL_H
|
#ifndef AUDIO_DRIVER_OPENSL_H
|
||||||
#define AUDIO_DRIVER_OPENSL_H
|
#define AUDIO_DRIVER_OPENSL_H
|
||||||
|
|
||||||
|
#include "servers/audio_server.h"
|
||||||
|
|
||||||
#include "servers/audio/audio_server_sw.h"
|
|
||||||
#include "os/mutex.h"
|
#include "os/mutex.h"
|
||||||
#include <SLES/OpenSLES.h>
|
|
||||||
#include "SLES/OpenSLES_Android.h"
|
|
||||||
|
|
||||||
|
#include <SLES/OpenSLES.h>
|
||||||
|
#include <SLES/OpenSLES_Android.h>
|
||||||
|
|
||||||
class AudioDriverOpenSL : public AudioDriver {
|
class AudioDriverOpenSL : public AudioDriver {
|
||||||
|
|
||||||
|
@ -94,7 +92,7 @@ public:
|
||||||
virtual Error init();
|
virtual Error init();
|
||||||
virtual void start();
|
virtual void start();
|
||||||
virtual int get_mix_rate() const ;
|
virtual int get_mix_rate() const ;
|
||||||
virtual OutputFormat get_output_format() const;
|
virtual SpeakerMode get_speaker_mode() const;
|
||||||
virtual void lock();
|
virtual void lock();
|
||||||
virtual void unlock();
|
virtual void unlock();
|
||||||
virtual void finish();
|
virtual void finish();
|
||||||
|
|
|
@ -27,18 +27,15 @@
|
||||||
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
#include "os_android.h"
|
#include "os_android.h"
|
||||||
#include "drivers/gles2/rasterizer_gles2.h"
|
|
||||||
|
|
||||||
|
#include "drivers/gles2/rasterizer_gles2.h"
|
||||||
#include "core/io/file_access_buffered_fa.h"
|
#include "core/io/file_access_buffered_fa.h"
|
||||||
#include "drivers/unix/file_access_unix.h"
|
#include "drivers/unix/file_access_unix.h"
|
||||||
#include "drivers/unix/dir_access_unix.h"
|
#include "drivers/unix/dir_access_unix.h"
|
||||||
|
|
||||||
#include "servers/visual/visual_server_raster.h"
|
#include "servers/visual/visual_server_raster.h"
|
||||||
#include "servers/visual/visual_server_wrap_mt.h"
|
#include "servers/visual/visual_server_wrap_mt.h"
|
||||||
#include "main/main.h"
|
#include "main/main.h"
|
||||||
|
|
||||||
#include "file_access_android.h"
|
#include "file_access_android.h"
|
||||||
|
|
||||||
#include "core/globals.h"
|
#include "core/globals.h"
|
||||||
|
|
||||||
#ifdef ANDROID_NATIVE_ACTIVITY
|
#ifdef ANDROID_NATIVE_ACTIVITY
|
||||||
|
@ -154,19 +151,6 @@ void OS_Android::initialize(const VideoMode& p_desired,int p_video_driver,int p_
|
||||||
ERR_PRINT("Initializing audio failed.");
|
ERR_PRINT("Initializing audio failed.");
|
||||||
}
|
}
|
||||||
|
|
||||||
sample_manager = memnew( SampleManagerMallocSW );
|
|
||||||
audio_server = memnew( AudioServerSW(sample_manager) );
|
|
||||||
|
|
||||||
audio_server->set_mixer_params(AudioMixerSW::INTERPOLATION_LINEAR,true);
|
|
||||||
audio_server->init();
|
|
||||||
|
|
||||||
spatial_sound_server = memnew( SpatialSoundServerSW );
|
|
||||||
spatial_sound_server->init();
|
|
||||||
|
|
||||||
spatial_sound_2d_server = memnew( SpatialSound2DServerSW );
|
|
||||||
spatial_sound_2d_server->init();
|
|
||||||
|
|
||||||
//
|
|
||||||
physics_server = memnew( PhysicsServerSW );
|
physics_server = memnew( PhysicsServerSW );
|
||||||
physics_server->init();
|
physics_server->init();
|
||||||
//physics_2d_server = memnew( Physics2DServerSW );
|
//physics_2d_server = memnew( Physics2DServerSW );
|
||||||
|
|
|
@ -33,31 +33,20 @@
|
||||||
#include "drivers/unix/os_unix.h"
|
#include "drivers/unix/os_unix.h"
|
||||||
#include "os/main_loop.h"
|
#include "os/main_loop.h"
|
||||||
#include "servers/physics/physics_server_sw.h"
|
#include "servers/physics/physics_server_sw.h"
|
||||||
#include "servers/spatial_sound/spatial_sound_server_sw.h"
|
#include "servers/audio_server.h"
|
||||||
#include "servers/spatial_sound_2d/spatial_sound_2d_server_sw.h"
|
|
||||||
#include "servers/audio/audio_server_sw.h"
|
|
||||||
#include "servers/physics_2d/physics_2d_server_sw.h"
|
#include "servers/physics_2d/physics_2d_server_sw.h"
|
||||||
#include "servers/physics_2d/physics_2d_server_wrap_mt.h"
|
#include "servers/physics_2d/physics_2d_server_wrap_mt.h"
|
||||||
#include "servers/visual/rasterizer.h"
|
#include "servers/visual/rasterizer.h"
|
||||||
#include "main/input_default.h"
|
#include "main/input_default.h"
|
||||||
|
#include "audio_driver_jandroid.h"
|
||||||
//#ifdef USE_JAVA_FILE_ACCESS
|
#include "audio_driver_opensl.h"
|
||||||
|
|
||||||
|
|
||||||
#ifdef ANDROID_NATIVE_ACTIVITY
|
#ifdef ANDROID_NATIVE_ACTIVITY
|
||||||
|
|
||||||
#include <android/sensor.h>
|
#include <android/sensor.h>
|
||||||
#include <android/log.h>
|
#include <android/log.h>
|
||||||
#include <android_native_app_glue.h>
|
#include <android_native_app_glue.h>
|
||||||
|
|
||||||
#else
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "audio_driver_jandroid.h"
|
|
||||||
#include "audio_driver_opensl.h"
|
|
||||||
|
|
||||||
typedef void (*GFXInitFunc)(void *ud,bool gl2);
|
typedef void (*GFXInitFunc)(void *ud,bool gl2);
|
||||||
typedef int (*OpenURIFunc)(const String&);
|
typedef int (*OpenURIFunc)(const String&);
|
||||||
typedef String (*GetDataDirFunc)();
|
typedef String (*GetDataDirFunc)();
|
||||||
|
@ -118,10 +107,6 @@ private:
|
||||||
|
|
||||||
Rasterizer *rasterizer;
|
Rasterizer *rasterizer;
|
||||||
VisualServer *visual_server;
|
VisualServer *visual_server;
|
||||||
AudioServerSW *audio_server;
|
|
||||||
SampleManagerMallocSW *sample_manager;
|
|
||||||
SpatialSoundServerSW *spatial_sound_server;
|
|
||||||
SpatialSound2DServerSW *spatial_sound_2d_server;
|
|
||||||
PhysicsServer *physics_server;
|
PhysicsServer *physics_server;
|
||||||
Physics2DServer *physics_2d_server;
|
Physics2DServer *physics_2d_server;
|
||||||
|
|
||||||
|
|
|
@ -44,7 +44,7 @@ Error AudioDriverBB10::init(const char* p_name) {
|
||||||
samples_out = NULL;
|
samples_out = NULL;
|
||||||
|
|
||||||
mix_rate = 44100;
|
mix_rate = 44100;
|
||||||
output_format = OUTPUT_STEREO;
|
speaker_mode = SPEAKER_MODE_STEREO;
|
||||||
|
|
||||||
char* dev_name;
|
char* dev_name;
|
||||||
if (p_name == NULL) {
|
if (p_name == NULL) {
|
||||||
|
@ -70,7 +70,7 @@ Error AudioDriverBB10::init(const char* p_name) {
|
||||||
ERR_FAIL_COND_V(!(cinfo.formats & SND_PCM_FMT_S16_LE), FAILED);
|
ERR_FAIL_COND_V(!(cinfo.formats & SND_PCM_FMT_S16_LE), FAILED);
|
||||||
|
|
||||||
printf("voices %i\n", cinfo.max_voices);
|
printf("voices %i\n", cinfo.max_voices);
|
||||||
output_format = cinfo.max_voices >= 2 ? OUTPUT_STEREO : OUTPUT_MONO;
|
speaker_mode = SPEAKER_MODE_STEREO;
|
||||||
|
|
||||||
snd_pcm_channel_params_t cp;
|
snd_pcm_channel_params_t cp;
|
||||||
zeromem(&cp, sizeof(cp));
|
zeromem(&cp, sizeof(cp));
|
||||||
|
@ -84,7 +84,7 @@ Error AudioDriverBB10::init(const char* p_name) {
|
||||||
cp.buf.block.frags_min = 1;
|
cp.buf.block.frags_min = 1;
|
||||||
cp.format.interleave = 1;
|
cp.format.interleave = 1;
|
||||||
cp.format.rate = mix_rate;
|
cp.format.rate = mix_rate;
|
||||||
cp.format.voices = output_format == OUTPUT_MONO ? 1 : 2;
|
cp.format.voices = speaker_mode;
|
||||||
cp.format.format = SND_PCM_SFMT_S16_LE;
|
cp.format.format = SND_PCM_SFMT_S16_LE;
|
||||||
|
|
||||||
ret = snd_pcm_plugin_params(pcm_handle, &cp);
|
ret = snd_pcm_plugin_params(pcm_handle, &cp);
|
||||||
|
@ -121,7 +121,7 @@ void AudioDriverBB10::thread_func(void* p_udata) {
|
||||||
|
|
||||||
AudioDriverBB10* ad = (AudioDriverBB10*)p_udata;
|
AudioDriverBB10* ad = (AudioDriverBB10*)p_udata;
|
||||||
|
|
||||||
int channels = (ad->output_format == OUTPUT_MONO ? 1 : 2);
|
int channels = speaker_mode;
|
||||||
int frame_count = ad->sample_buf_count / channels;
|
int frame_count = ad->sample_buf_count / channels;
|
||||||
int bytes_out = frame_count * channels * 2;
|
int bytes_out = frame_count * channels * 2;
|
||||||
|
|
||||||
|
@ -204,16 +204,18 @@ int AudioDriverBB10::get_mix_rate() const {
|
||||||
return mix_rate;
|
return mix_rate;
|
||||||
};
|
};
|
||||||
|
|
||||||
AudioDriver::OutputFormat AudioDriverBB10::get_output_format() const {
|
AudioDriver::SpeakerMode AudioDriverBB10::get_speaker_mode() const {
|
||||||
|
|
||||||
return output_format;
|
return speaker_mode;
|
||||||
};
|
};
|
||||||
|
|
||||||
void AudioDriverBB10::lock() {
|
void AudioDriverBB10::lock() {
|
||||||
|
|
||||||
if (!thread)
|
if (!thread)
|
||||||
return;
|
return;
|
||||||
mutex->lock();
|
mutex->lock();
|
||||||
};
|
};
|
||||||
|
|
||||||
void AudioDriverBB10::unlock() {
|
void AudioDriverBB10::unlock() {
|
||||||
|
|
||||||
if (!thread)
|
if (!thread)
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
|
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
|
||||||
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
#include "servers/audio/audio_server_sw.h"
|
#include "servers/audio_server.h"
|
||||||
|
|
||||||
#include "core/os/thread.h"
|
#include "core/os/thread.h"
|
||||||
#include "core/os/mutex.h"
|
#include "core/os/mutex.h"
|
||||||
|
@ -47,7 +47,7 @@ class AudioDriverBB10 : public AudioDriver {
|
||||||
static void thread_func(void* p_udata);
|
static void thread_func(void* p_udata);
|
||||||
|
|
||||||
int mix_rate;
|
int mix_rate;
|
||||||
OutputFormat output_format;
|
SpeakerMode speaker_mode;
|
||||||
|
|
||||||
int pcm_frag_size;
|
int pcm_frag_size;
|
||||||
int pcm_max_frags;
|
int pcm_max_frags;
|
||||||
|
@ -67,7 +67,7 @@ public:
|
||||||
virtual Error init(const char* p_name);
|
virtual Error init(const char* p_name);
|
||||||
virtual void start();
|
virtual void start();
|
||||||
virtual int get_mix_rate() const;
|
virtual int get_mix_rate() const;
|
||||||
virtual OutputFormat get_output_format() const;
|
virtual SpeakerMode get_speaker_mode() const;
|
||||||
virtual void lock();
|
virtual void lock();
|
||||||
virtual void unlock();
|
virtual void unlock();
|
||||||
virtual void finish();
|
virtual void finish();
|
||||||
|
|
|
@ -31,22 +31,21 @@
|
||||||
#include "drivers/gles2/rasterizer_gles2.h"
|
#include "drivers/gles2/rasterizer_gles2.h"
|
||||||
#include "servers/visual/visual_server_raster.h"
|
#include "servers/visual/visual_server_raster.h"
|
||||||
#include "core/os/dir_access.h"
|
#include "core/os/dir_access.h"
|
||||||
|
|
||||||
#include "core/globals.h"
|
#include "core/globals.h"
|
||||||
#include "main/main.h"
|
#include "main/main.h"
|
||||||
#include "bbutil.h"
|
#include "bbutil.h"
|
||||||
|
#include "core/os/keyboard.h"
|
||||||
|
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <stdbool.h>
|
#include <stdbool.h>
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
#include "core/os/keyboard.h"
|
#include <bps/bps.h>
|
||||||
|
#include <bps/screen.h>
|
||||||
#include "bps/bps.h"
|
#include <bps/navigator.h>
|
||||||
#include "bps/screen.h"
|
#include <bps/accelerometer.h>
|
||||||
#include "bps/navigator.h"
|
#include <bps/orientation.h>
|
||||||
#include "bps/accelerometer.h"
|
#include <bps/virtualkeyboard.h>
|
||||||
#include "bps/orientation.h"
|
#include <bps/audiodevice.h>
|
||||||
#include "bps/virtualkeyboard.h"
|
|
||||||
#include "bps/audiodevice.h"
|
|
||||||
|
|
||||||
#ifdef BB10_SCORELOOP_ENABLED
|
#ifdef BB10_SCORELOOP_ENABLED
|
||||||
#include "modules/scoreloop/scoreloop_bb10.h"
|
#include "modules/scoreloop/scoreloop_bb10.h"
|
||||||
|
@ -141,18 +140,6 @@ void OSBB10::initialize(const VideoMode& p_desired,int p_video_driver,int p_audi
|
||||||
audio_driver->set_singleton();
|
audio_driver->set_singleton();
|
||||||
audio_driver->init(NULL);
|
audio_driver->init(NULL);
|
||||||
|
|
||||||
sample_manager = memnew( SampleManagerMallocSW );
|
|
||||||
audio_server = memnew( AudioServerSW(sample_manager) );
|
|
||||||
audio_server->set_mixer_params(AudioMixerSW::INTERPOLATION_LINEAR,false);
|
|
||||||
audio_server->init();
|
|
||||||
|
|
||||||
spatial_sound_server = memnew( SpatialSoundServerSW );
|
|
||||||
spatial_sound_server->init();
|
|
||||||
|
|
||||||
spatial_sound_2d_server = memnew( SpatialSound2DServerSW );
|
|
||||||
spatial_sound_2d_server->init();
|
|
||||||
|
|
||||||
//
|
|
||||||
physics_server = memnew( PhysicsServerSW );
|
physics_server = memnew( PhysicsServerSW );
|
||||||
physics_server->init();
|
physics_server->init();
|
||||||
physics_2d_server = memnew( Physics2DServerSW );
|
physics_2d_server = memnew( Physics2DServerSW );
|
||||||
|
@ -185,22 +172,12 @@ void OSBB10::finalize() {
|
||||||
memdelete(main_loop);
|
memdelete(main_loop);
|
||||||
main_loop=NULL;
|
main_loop=NULL;
|
||||||
|
|
||||||
spatial_sound_server->finish();
|
|
||||||
memdelete(spatial_sound_server);
|
|
||||||
spatial_sound_2d_server->finish();
|
|
||||||
memdelete(spatial_sound_2d_server);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
if (debugger_connection_console) {
|
if (debugger_connection_console) {
|
||||||
memdelete(debugger_connection_console);
|
memdelete(debugger_connection_console);
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
memdelete(sample_manager);
|
|
||||||
|
|
||||||
audio_server->finish();
|
|
||||||
memdelete(audio_server);
|
|
||||||
|
|
||||||
visual_server->finish();
|
visual_server->finish();
|
||||||
memdelete(visual_server);
|
memdelete(visual_server);
|
||||||
memdelete(rasterizer);
|
memdelete(rasterizer);
|
||||||
|
|
|
@ -34,9 +34,7 @@
|
||||||
#include "os/main_loop.h"
|
#include "os/main_loop.h"
|
||||||
#include "main/input_default.h"
|
#include "main/input_default.h"
|
||||||
#include "servers/physics/physics_server_sw.h"
|
#include "servers/physics/physics_server_sw.h"
|
||||||
#include "servers/spatial_sound/spatial_sound_server_sw.h"
|
#include "servers/audio_server.h"
|
||||||
#include "servers/spatial_sound_2d/spatial_sound_2d_server_sw.h"
|
|
||||||
#include "servers/audio/audio_server_sw.h"
|
|
||||||
#include "servers/physics_2d/physics_2d_server_sw.h"
|
#include "servers/physics_2d/physics_2d_server_sw.h"
|
||||||
#include "servers/visual/rasterizer.h"
|
#include "servers/visual/rasterizer.h"
|
||||||
#include "audio_driver_bb10.h"
|
#include "audio_driver_bb10.h"
|
||||||
|
@ -44,8 +42,7 @@
|
||||||
|
|
||||||
#include <screen/screen.h>
|
#include <screen/screen.h>
|
||||||
#include <sys/platform.h>
|
#include <sys/platform.h>
|
||||||
#include "bps/event.h"
|
#include <bps/event.h>
|
||||||
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
class OSBB10 : public OS_Unix {
|
class OSBB10 : public OS_Unix {
|
||||||
|
@ -58,11 +55,6 @@ class OSBB10 : public OS_Unix {
|
||||||
|
|
||||||
Rasterizer *rasterizer;
|
Rasterizer *rasterizer;
|
||||||
VisualServer *visual_server;
|
VisualServer *visual_server;
|
||||||
//AudioDriverPSP audio_driver_psp;
|
|
||||||
AudioServerSW *audio_server;
|
|
||||||
SampleManagerMallocSW *sample_manager;
|
|
||||||
SpatialSoundServerSW *spatial_sound_server;
|
|
||||||
SpatialSound2DServerSW *spatial_sound_2d_server;
|
|
||||||
PhysicsServer *physics_server;
|
PhysicsServer *physics_server;
|
||||||
Physics2DServer *physics_2d_server;
|
Physics2DServer *physics_2d_server;
|
||||||
AudioDriverBB10* audio_driver;
|
AudioDriverBB10* audio_driver;
|
||||||
|
|
|
@ -38,7 +38,7 @@ Error AudioDriverMediaKit::init() {
|
||||||
active = false;
|
active = false;
|
||||||
|
|
||||||
mix_rate = 44100;
|
mix_rate = 44100;
|
||||||
output_format = OUTPUT_STEREO;
|
speaker_mode = SPEAKER_MODE_STEREO;
|
||||||
channels = 2;
|
channels = 2;
|
||||||
|
|
||||||
int latency = GLOBAL_DEF("audio/output_latency", 25);
|
int latency = GLOBAL_DEF("audio/output_latency", 25);
|
||||||
|
@ -99,8 +99,8 @@ int AudioDriverMediaKit::get_mix_rate() const {
|
||||||
return mix_rate;
|
return mix_rate;
|
||||||
}
|
}
|
||||||
|
|
||||||
AudioDriverSW::OutputFormat AudioDriverMediaKit::get_output_format() const {
|
AudioDriverSW::SpeakerMode AudioDriverMediaKit::get_speaker_mode() const {
|
||||||
return output_format;
|
return speaker_mode;
|
||||||
}
|
}
|
||||||
|
|
||||||
void AudioDriverMediaKit::lock() {
|
void AudioDriverMediaKit::lock() {
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
|
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
|
||||||
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
#include "servers/audio/audio_server_sw.h"
|
#include "servers/audio_server.h"
|
||||||
|
|
||||||
#ifdef MEDIA_KIT_ENABLED
|
#ifdef MEDIA_KIT_ENABLED
|
||||||
|
|
||||||
|
@ -36,7 +36,7 @@
|
||||||
#include <kernel/image.h> // needed for image_id
|
#include <kernel/image.h> // needed for image_id
|
||||||
#include <SoundPlayer.h>
|
#include <SoundPlayer.h>
|
||||||
|
|
||||||
class AudioDriverMediaKit : public AudioDriverSW {
|
class AudioDriverMediaKit : public AudioDriver {
|
||||||
Mutex* mutex;
|
Mutex* mutex;
|
||||||
|
|
||||||
BSoundPlayer* player;
|
BSoundPlayer* player;
|
||||||
|
@ -45,7 +45,7 @@ class AudioDriverMediaKit : public AudioDriverSW {
|
||||||
static void PlayBuffer(void* cookie, void* buffer, size_t size, const media_raw_audio_format& format);
|
static void PlayBuffer(void* cookie, void* buffer, size_t size, const media_raw_audio_format& format);
|
||||||
|
|
||||||
unsigned int mix_rate;
|
unsigned int mix_rate;
|
||||||
OutputFormat output_format;
|
SpeakerMode speaker_mode;
|
||||||
unsigned int buffer_size;
|
unsigned int buffer_size;
|
||||||
int channels;
|
int channels;
|
||||||
|
|
||||||
|
@ -60,7 +60,7 @@ public:
|
||||||
virtual Error init();
|
virtual Error init();
|
||||||
virtual void start();
|
virtual void start();
|
||||||
virtual int get_mix_rate() const;
|
virtual int get_mix_rate() const;
|
||||||
virtual OutputFormat get_output_format() const;
|
virtual SpeakerMode get_speaker_mode() const;
|
||||||
virtual void lock();
|
virtual void lock();
|
||||||
virtual void unlock();
|
virtual void unlock();
|
||||||
virtual void finish();
|
virtual void finish();
|
||||||
|
|
|
@ -40,7 +40,7 @@
|
||||||
|
|
||||||
OS_Haiku::OS_Haiku() {
|
OS_Haiku::OS_Haiku() {
|
||||||
#ifdef MEDIA_KIT_ENABLED
|
#ifdef MEDIA_KIT_ENABLED
|
||||||
AudioDriverManagerSW::add_driver(&driver_media_kit);
|
AudioDriverManager::add_driver(&driver_media_kit);
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -143,15 +143,6 @@ void OS_Haiku::initialize(const VideoMode& p_desired, int p_video_driver, int p_
|
||||||
if (AudioDriverManager::get_driver(p_audio_driver)->init() != OK) {
|
if (AudioDriverManager::get_driver(p_audio_driver)->init() != OK) {
|
||||||
ERR_PRINT("Initializing audio failed.");
|
ERR_PRINT("Initializing audio failed.");
|
||||||
}
|
}
|
||||||
|
|
||||||
sample_manager = memnew(SampleManagerMallocSW);
|
|
||||||
audio_server = memnew(AudioServerSW(sample_manager));
|
|
||||||
audio_server->init();
|
|
||||||
|
|
||||||
spatial_sound_server = memnew(SpatialSoundServerSW);
|
|
||||||
spatial_sound_server->init();
|
|
||||||
spatial_sound_2d_server = memnew(SpatialSound2DServerSW);
|
|
||||||
spatial_sound_2d_server->init();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void OS_Haiku::finalize() {
|
void OS_Haiku::finalize() {
|
||||||
|
@ -161,17 +152,6 @@ void OS_Haiku::finalize() {
|
||||||
|
|
||||||
main_loop = NULL;
|
main_loop = NULL;
|
||||||
|
|
||||||
spatial_sound_server->finish();
|
|
||||||
memdelete(spatial_sound_server);
|
|
||||||
|
|
||||||
spatial_sound_2d_server->finish();
|
|
||||||
memdelete(spatial_sound_2d_server);
|
|
||||||
|
|
||||||
memdelete(sample_manager);
|
|
||||||
|
|
||||||
audio_server->finish();
|
|
||||||
memdelete(audio_server);
|
|
||||||
|
|
||||||
visual_server->finish();
|
visual_server->finish();
|
||||||
memdelete(visual_server);
|
memdelete(visual_server);
|
||||||
memdelete(rasterizer);
|
memdelete(rasterizer);
|
||||||
|
|
|
@ -34,12 +34,8 @@
|
||||||
#include "servers/visual/rasterizer.h"
|
#include "servers/visual/rasterizer.h"
|
||||||
#include "servers/physics_server.h"
|
#include "servers/physics_server.h"
|
||||||
#include "servers/physics_2d/physics_2d_server_sw.h"
|
#include "servers/physics_2d/physics_2d_server_sw.h"
|
||||||
#include "servers/audio/audio_server_sw.h"
|
#include "servers/audio_server.h"
|
||||||
#include "servers/audio/sample_manager_sw.h"
|
|
||||||
#include "servers/spatial_sound/spatial_sound_server_sw.h"
|
|
||||||
#include "servers/spatial_sound_2d/spatial_sound_2d_server_sw.h"
|
|
||||||
#include "main/input_default.h"
|
#include "main/input_default.h"
|
||||||
|
|
||||||
#include "audio_driver_media_kit.h"
|
#include "audio_driver_media_kit.h"
|
||||||
#include "context_gl_haiku.h"
|
#include "context_gl_haiku.h"
|
||||||
#include "haiku_application.h"
|
#include "haiku_application.h"
|
||||||
|
@ -57,10 +53,6 @@ private:
|
||||||
VideoMode current_video_mode;
|
VideoMode current_video_mode;
|
||||||
PhysicsServer* physics_server;
|
PhysicsServer* physics_server;
|
||||||
Physics2DServer* physics_2d_server;
|
Physics2DServer* physics_2d_server;
|
||||||
AudioServerSW* audio_server;
|
|
||||||
SampleManagerMallocSW* sample_manager;
|
|
||||||
SpatialSoundServerSW* spatial_sound_server;
|
|
||||||
SpatialSound2DServerSW* spatial_sound_2d_server;
|
|
||||||
|
|
||||||
#ifdef MEDIA_KIT_ENABLED
|
#ifdef MEDIA_KIT_ENABLED
|
||||||
AudioDriverMediaKit driver_media_kit;
|
AudioDriverMediaKit driver_media_kit;
|
||||||
|
|
|
@ -27,20 +27,14 @@
|
||||||
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
#include "audio_driver_javascript.h"
|
#include "audio_driver_javascript.h"
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#define MAX_NUMBER_INTERFACES 3
|
#define MAX_NUMBER_INTERFACES 3
|
||||||
#define MAX_NUMBER_OUTPUT_DEVICES 6
|
#define MAX_NUMBER_OUTPUT_DEVICES 6
|
||||||
|
|
||||||
/* Structure for passing information to callback function */
|
/* Structure for passing information to callback function */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//AudioDriverJavaScript* AudioDriverJavaScript::s_ad=NULL;
|
//AudioDriverJavaScript* AudioDriverJavaScript::s_ad=NULL;
|
||||||
|
|
||||||
const char* AudioDriverJavaScript::get_name() const {
|
const char* AudioDriverJavaScript::get_name() const {
|
||||||
|
@ -53,19 +47,23 @@ Error AudioDriverJavaScript::init(){
|
||||||
return OK;
|
return OK;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void AudioDriverJavaScript::start(){
|
void AudioDriverJavaScript::start(){
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int AudioDriverJavaScript::get_mix_rate() const {
|
int AudioDriverJavaScript::get_mix_rate() const {
|
||||||
|
|
||||||
return 44100;
|
return 44100;
|
||||||
}
|
}
|
||||||
AudioDriver::OutputFormat AudioDriverJavaScript::get_output_format() const{
|
|
||||||
|
|
||||||
return OUTPUT_STEREO;
|
AudioDriver::SpeakerMode AudioDriverJavaScript::get_speaker_mode() const{
|
||||||
|
|
||||||
|
return SPEAKER_MODE_STEREO;
|
||||||
}
|
}
|
||||||
|
|
||||||
void AudioDriverJavaScript::lock(){
|
void AudioDriverJavaScript::lock(){
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -74,6 +72,7 @@ void AudioDriverJavaScript::lock(){
|
||||||
*/
|
*/
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void AudioDriverJavaScript::unlock() {
|
void AudioDriverJavaScript::unlock() {
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -82,11 +81,11 @@ void AudioDriverJavaScript::unlock() {
|
||||||
*/
|
*/
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void AudioDriverJavaScript::finish(){
|
void AudioDriverJavaScript::finish(){
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
AudioDriverJavaScript::AudioDriverJavaScript()
|
AudioDriverJavaScript::AudioDriverJavaScript()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,8 +29,8 @@
|
||||||
#ifndef AUDIO_DRIVER_JAVASCRIPT_H
|
#ifndef AUDIO_DRIVER_JAVASCRIPT_H
|
||||||
#define AUDIO_DRIVER_JAVASCRIPT_H
|
#define AUDIO_DRIVER_JAVASCRIPT_H
|
||||||
|
|
||||||
|
#include "servers/audio_server.h"
|
||||||
|
|
||||||
#include "servers/audio/audio_server_sw.h"
|
|
||||||
#include "os/mutex.h"
|
#include "os/mutex.h"
|
||||||
|
|
||||||
class AudioDriverJavaScript : public AudioDriver {
|
class AudioDriverJavaScript : public AudioDriver {
|
||||||
|
@ -43,7 +43,7 @@ public:
|
||||||
virtual Error init();
|
virtual Error init();
|
||||||
virtual void start();
|
virtual void start();
|
||||||
virtual int get_mix_rate() const ;
|
virtual int get_mix_rate() const ;
|
||||||
virtual OutputFormat get_output_format() const;
|
virtual SpeakerMode get_speaker_mode() const;
|
||||||
virtual void lock();
|
virtual void lock();
|
||||||
virtual void unlock();
|
virtual void unlock();
|
||||||
virtual void finish();
|
virtual void finish();
|
||||||
|
|
|
@ -29,7 +29,6 @@
|
||||||
#ifndef AUDIO_SERVER_JAVASCRIPT_H
|
#ifndef AUDIO_SERVER_JAVASCRIPT_H
|
||||||
#define AUDIO_SERVER_JAVASCRIPT_H
|
#define AUDIO_SERVER_JAVASCRIPT_H
|
||||||
|
|
||||||
|
|
||||||
#include "servers/audio_server.h"
|
#include "servers/audio_server.h"
|
||||||
|
|
||||||
class AudioServerJavascript : public AudioServer {
|
class AudioServerJavascript : public AudioServer {
|
||||||
|
|
|
@ -27,24 +27,24 @@
|
||||||
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
#include "os_javascript.h"
|
#include "os_javascript.h"
|
||||||
|
|
||||||
#include "drivers/gles2/rasterizer_gles2.h"
|
#include "drivers/gles2/rasterizer_gles2.h"
|
||||||
#include "core/io/file_access_buffered_fa.h"
|
#include "core/io/file_access_buffered_fa.h"
|
||||||
#include "drivers/unix/file_access_unix.h"
|
#include "drivers/unix/file_access_unix.h"
|
||||||
#include "drivers/unix/dir_access_unix.h"
|
#include "drivers/unix/dir_access_unix.h"
|
||||||
|
|
||||||
#include "servers/visual/visual_server_raster.h"
|
#include "servers/visual/visual_server_raster.h"
|
||||||
|
|
||||||
#include "main/main.h"
|
#include "main/main.h"
|
||||||
|
|
||||||
#include "core/globals.h"
|
#include "core/globals.h"
|
||||||
#include "stdlib.h"
|
|
||||||
#include "emscripten.h"
|
|
||||||
#include "dom_keys.h"
|
#include "dom_keys.h"
|
||||||
|
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <emscripten.h>
|
||||||
|
|
||||||
int OS_JavaScript::get_video_driver_count() const {
|
int OS_JavaScript::get_video_driver_count() const {
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
const char * OS_JavaScript::get_video_driver_name(int p_driver) const {
|
const char * OS_JavaScript::get_video_driver_name(int p_driver) const {
|
||||||
|
|
||||||
return "GLES2";
|
return "GLES2";
|
||||||
|
@ -261,27 +261,6 @@ void OS_JavaScript::initialize(const VideoMode& p_desired,int p_video_driver,int
|
||||||
ERR_PRINT("Initializing audio failed.");
|
ERR_PRINT("Initializing audio failed.");
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
print_line("Init SM");
|
|
||||||
|
|
||||||
//sample_manager = memnew( SampleManagerMallocSW );
|
|
||||||
audio_server = memnew( AudioServerJavascript );
|
|
||||||
|
|
||||||
print_line("Init Mixer");
|
|
||||||
|
|
||||||
//audio_server->set_mixer_params(AudioMixerSW::INTERPOLATION_LINEAR,false);
|
|
||||||
audio_server->init();
|
|
||||||
|
|
||||||
print_line("Init SoundServer");
|
|
||||||
|
|
||||||
spatial_sound_server = memnew( SpatialSoundServerSW );
|
|
||||||
spatial_sound_server->init();
|
|
||||||
|
|
||||||
print_line("Init SpatialSoundServer");
|
|
||||||
|
|
||||||
spatial_sound_2d_server = memnew( SpatialSound2DServerSW );
|
|
||||||
spatial_sound_2d_server->init();
|
|
||||||
|
|
||||||
//
|
|
||||||
print_line("Init Physicsserver");
|
print_line("Init Physicsserver");
|
||||||
|
|
||||||
physics_server = memnew( PhysicsServerSW );
|
physics_server = memnew( PhysicsServerSW );
|
||||||
|
|
|
@ -35,15 +35,16 @@
|
||||||
#include "servers/physics/physics_server_sw.h"
|
#include "servers/physics/physics_server_sw.h"
|
||||||
#include "servers/spatial_sound/spatial_sound_server_sw.h"
|
#include "servers/spatial_sound/spatial_sound_server_sw.h"
|
||||||
#include "servers/spatial_sound_2d/spatial_sound_2d_server_sw.h"
|
#include "servers/spatial_sound_2d/spatial_sound_2d_server_sw.h"
|
||||||
#include "servers/audio/audio_server_sw.h"
|
#include "servers/audio_server.h"
|
||||||
#include "servers/physics_2d/physics_2d_server_sw.h"
|
#include "servers/physics_2d/physics_2d_server_sw.h"
|
||||||
#include "servers/visual/rasterizer.h"
|
#include "servers/visual/rasterizer.h"
|
||||||
#include "audio_server_javascript.h"
|
#include "audio_server_javascript.h"
|
||||||
#include "audio_driver_javascript.h"
|
#include "audio_driver_javascript.h"
|
||||||
#include "main/input_default.h"
|
#include "main/input_default.h"
|
||||||
#include "emscripten/html5.h"
|
|
||||||
#include "javascript_eval.h"
|
#include "javascript_eval.h"
|
||||||
|
|
||||||
|
#include <emscripten/html5.h>
|
||||||
|
|
||||||
typedef void (*GFXInitFunc)(void *ud,bool gl2,int w, int h, bool fs);
|
typedef void (*GFXInitFunc)(void *ud,bool gl2,int w, int h, bool fs);
|
||||||
typedef String (*GetDataDirFunc)();
|
typedef String (*GetDataDirFunc)();
|
||||||
|
|
||||||
|
@ -71,10 +72,6 @@ private:
|
||||||
|
|
||||||
Rasterizer *rasterizer;
|
Rasterizer *rasterizer;
|
||||||
VisualServer *visual_server;
|
VisualServer *visual_server;
|
||||||
AudioServerJavascript *audio_server;
|
|
||||||
//SampleManagerMallocSW *sample_manager;
|
|
||||||
SpatialSoundServerSW *spatial_sound_server;
|
|
||||||
SpatialSound2DServerSW *spatial_sound_2d_server;
|
|
||||||
PhysicsServer *physics_server;
|
PhysicsServer *physics_server;
|
||||||
Physics2DServer *physics_2d_server;
|
Physics2DServer *physics_2d_server;
|
||||||
AudioDriverJavaScript audio_driver_javascript;
|
AudioDriverJavaScript audio_driver_javascript;
|
||||||
|
|
|
@ -29,17 +29,13 @@
|
||||||
#ifndef OS_SERVER_H
|
#ifndef OS_SERVER_H
|
||||||
#define OS_SERVER_H
|
#define OS_SERVER_H
|
||||||
|
|
||||||
|
|
||||||
#include "main/input_default.h"
|
#include "main/input_default.h"
|
||||||
#include "drivers/unix/os_unix.h"
|
#include "drivers/unix/os_unix.h"
|
||||||
#include "servers/visual_server.h"
|
#include "servers/visual_server.h"
|
||||||
#include "servers/visual/rasterizer.h"
|
#include "servers/visual/rasterizer.h"
|
||||||
#include "servers/audio/audio_driver_dummy.h"
|
#include "servers/audio/audio_driver_dummy.h"
|
||||||
#include "servers/physics_server.h"
|
#include "servers/physics_server.h"
|
||||||
#include "servers/audio/audio_server_sw.h"
|
#include "servers/audio_server.h"
|
||||||
#include "servers/audio/sample_manager_sw.h"
|
|
||||||
#include "servers/spatial_sound/spatial_sound_server_sw.h"
|
|
||||||
#include "servers/spatial_sound_2d/spatial_sound_2d_server_sw.h"
|
|
||||||
#include "drivers/rtaudio/audio_driver_rtaudio.h"
|
#include "drivers/rtaudio/audio_driver_rtaudio.h"
|
||||||
#include "servers/physics_2d/physics_2d_server_sw.h"
|
#include "servers/physics_2d/physics_2d_server_sw.h"
|
||||||
|
|
||||||
|
@ -66,11 +62,6 @@ class OS_Server : public OS_Unix {
|
||||||
virtual void delete_main_loop();
|
virtual void delete_main_loop();
|
||||||
IP_Unix *ip_unix;
|
IP_Unix *ip_unix;
|
||||||
|
|
||||||
AudioServerSW *audio_server;
|
|
||||||
SampleManagerMallocSW *sample_manager;
|
|
||||||
SpatialSoundServerSW *spatial_sound_server;
|
|
||||||
SpatialSound2DServerSW *spatial_sound_2d_server;
|
|
||||||
|
|
||||||
bool force_quit;
|
bool force_quit;
|
||||||
|
|
||||||
InputDefault *input;
|
InputDefault *input;
|
||||||
|
|
|
@ -36,16 +36,12 @@
|
||||||
#include "main/main.h"
|
#include "main/main.h"
|
||||||
#include "drivers/windows/file_access_windows.h"
|
#include "drivers/windows/file_access_windows.h"
|
||||||
#include "drivers/windows/dir_access_windows.h"
|
#include "drivers/windows/dir_access_windows.h"
|
||||||
|
|
||||||
|
|
||||||
#include "servers/visual/visual_server_raster.h"
|
#include "servers/visual/visual_server_raster.h"
|
||||||
#include "servers/audio/audio_server_sw.h"
|
#include "servers/audio_server.h"
|
||||||
#include "servers/visual/visual_server_wrap_mt.h"
|
//#include "servers/visual/visual_server_wrap_mt.h"
|
||||||
|
|
||||||
#include "os/memory_pool_dynamic_prealloc.h"
|
#include "os/memory_pool_dynamic_prealloc.h"
|
||||||
#include "globals.h"
|
#include "globals.h"
|
||||||
#include "io/marshalls.h"
|
#include "io/marshalls.h"
|
||||||
|
|
||||||
#include "platform/windows/packet_peer_udp_winsock.h"
|
#include "platform/windows/packet_peer_udp_winsock.h"
|
||||||
#include "platform/windows/stream_peer_winsock.h"
|
#include "platform/windows/stream_peer_winsock.h"
|
||||||
#include "platform/windows/tcp_server_winsock.h"
|
#include "platform/windows/tcp_server_winsock.h"
|
||||||
|
@ -147,6 +143,7 @@ int OSUWP::get_audio_driver_count() const {
|
||||||
|
|
||||||
return AudioDriverManager::get_driver_count();
|
return AudioDriverManager::get_driver_count();
|
||||||
}
|
}
|
||||||
|
|
||||||
const char * OSUWP::get_audio_driver_name(int p_driver) const {
|
const char * OSUWP::get_audio_driver_name(int p_driver) const {
|
||||||
|
|
||||||
AudioDriver* driver = AudioDriverManager::get_driver(p_driver);
|
AudioDriver* driver = AudioDriverManager::get_driver(p_driver);
|
||||||
|
@ -295,16 +292,6 @@ void OSUWP::initialize(const VideoMode& p_desired,int p_video_driver,int p_audio
|
||||||
ERR_PRINT("Initializing audio failed.");
|
ERR_PRINT("Initializing audio failed.");
|
||||||
}
|
}
|
||||||
|
|
||||||
sample_manager = memnew( SampleManagerMallocSW );
|
|
||||||
audio_server = memnew( AudioServerSW(sample_manager) );
|
|
||||||
|
|
||||||
audio_server->init();
|
|
||||||
|
|
||||||
spatial_sound_server = memnew( SpatialSoundServerSW );
|
|
||||||
spatial_sound_server->init();
|
|
||||||
spatial_sound_2d_server = memnew( SpatialSound2DServerSW );
|
|
||||||
spatial_sound_2d_server->init();
|
|
||||||
|
|
||||||
managed_object->update_clipboard();
|
managed_object->update_clipboard();
|
||||||
|
|
||||||
Clipboard::ContentChanged += ref new EventHandler<Platform::Object^>(managed_object, &ManagedType::on_clipboard_changed);
|
Clipboard::ContentChanged += ref new EventHandler<Platform::Object^>(managed_object, &ManagedType::on_clipboard_changed);
|
||||||
|
@ -407,22 +394,12 @@ void OSUWP::finalize() {
|
||||||
if (rasterizer)
|
if (rasterizer)
|
||||||
memdelete(rasterizer);
|
memdelete(rasterizer);
|
||||||
|
|
||||||
spatial_sound_server->finish();
|
|
||||||
memdelete(spatial_sound_server);
|
|
||||||
spatial_sound_2d_server->finish();
|
|
||||||
memdelete(spatial_sound_2d_server);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
if (debugger_connection_console) {
|
if (debugger_connection_console) {
|
||||||
memdelete(debugger_connection_console);
|
memdelete(debugger_connection_console);
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
memdelete(sample_manager);
|
|
||||||
|
|
||||||
audio_server->finish();
|
|
||||||
memdelete(audio_server);
|
|
||||||
|
|
||||||
memdelete(input);
|
memdelete(input);
|
||||||
|
|
||||||
physics_server->finish();
|
physics_server->finish();
|
||||||
|
|
|
@ -34,28 +34,19 @@
|
||||||
#include "servers/visual_server.h"
|
#include "servers/visual_server.h"
|
||||||
#include "servers/visual/rasterizer.h"
|
#include "servers/visual/rasterizer.h"
|
||||||
#include "servers/physics/physics_server_sw.h"
|
#include "servers/physics/physics_server_sw.h"
|
||||||
|
#include "servers/audio_server.h"
|
||||||
#include "servers/audio/audio_server_sw.h"
|
|
||||||
#include "servers/audio/sample_manager_sw.h"
|
|
||||||
#include "servers/spatial_sound/spatial_sound_server_sw.h"
|
|
||||||
#include "servers/spatial_sound_2d/spatial_sound_2d_server_sw.h"
|
|
||||||
#include "servers/physics_2d/physics_2d_server_sw.h"
|
#include "servers/physics_2d/physics_2d_server_sw.h"
|
||||||
#include "drivers/xaudio2/audio_driver_xaudio2.h"
|
#include "drivers/xaudio2/audio_driver_xaudio2.h"
|
||||||
|
|
||||||
#include "gl_context_egl.h"
|
#include "gl_context_egl.h"
|
||||||
|
|
||||||
#include "core/math/math_2d.h"
|
#include "core/math/math_2d.h"
|
||||||
#include "core/ustring.h"
|
#include "core/ustring.h"
|
||||||
|
#include "main/input_default.h"
|
||||||
|
#include "joypad_uwp.h"
|
||||||
|
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
|
||||||
#include <io.h>
|
#include <io.h>
|
||||||
|
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include "main/input_default.h"
|
|
||||||
|
|
||||||
#include "joypad_uwp.h"
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@author Juan Linietsky <reduzio@gmail.com>
|
@author Juan Linietsky <reduzio@gmail.com>
|
||||||
|
@ -119,10 +110,6 @@ private:
|
||||||
MainLoop *main_loop;
|
MainLoop *main_loop;
|
||||||
|
|
||||||
AudioDriverXAudio2 audio_driver;
|
AudioDriverXAudio2 audio_driver;
|
||||||
AudioServerSW *audio_server;
|
|
||||||
SampleManagerMallocSW *sample_manager;
|
|
||||||
SpatialSoundServerSW *spatial_sound_server;
|
|
||||||
SpatialSound2DServerSW *spatial_sound_2d_server;
|
|
||||||
|
|
||||||
MouseMode mouse_mode;
|
MouseMode mouse_mode;
|
||||||
bool alt_mem;
|
bool alt_mem;
|
||||||
|
|
|
@ -30,30 +30,25 @@
|
||||||
#include "os_windows.h"
|
#include "os_windows.h"
|
||||||
|
|
||||||
#include "drivers/gles3/rasterizer_gles3.h"
|
#include "drivers/gles3/rasterizer_gles3.h"
|
||||||
|
|
||||||
#include "drivers/windows/thread_windows.h"
|
#include "drivers/windows/thread_windows.h"
|
||||||
#include "drivers/windows/semaphore_windows.h"
|
#include "drivers/windows/semaphore_windows.h"
|
||||||
#include "drivers/windows/mutex_windows.h"
|
#include "drivers/windows/mutex_windows.h"
|
||||||
#include "drivers/windows/rw_lock_windows.h"
|
#include "drivers/windows/rw_lock_windows.h"
|
||||||
#include "main/main.h"
|
|
||||||
#include "drivers/windows/file_access_windows.h"
|
#include "drivers/windows/file_access_windows.h"
|
||||||
#include "drivers/windows/dir_access_windows.h"
|
#include "drivers/windows/dir_access_windows.h"
|
||||||
|
|
||||||
|
|
||||||
#include "servers/visual/visual_server_raster.h"
|
#include "servers/visual/visual_server_raster.h"
|
||||||
#include "servers/audio/audio_server_sw.h"
|
#include "servers/audio_server.h"
|
||||||
//#include "servers/visual/visual_server_wrap_mt.h"
|
//#include "servers/visual/visual_server_wrap_mt.h"
|
||||||
|
#include "main/main.h"
|
||||||
#include "tcp_server_winsock.h"
|
#include "tcp_server_winsock.h"
|
||||||
#include "packet_peer_udp_winsock.h"
|
#include "packet_peer_udp_winsock.h"
|
||||||
#include "stream_peer_winsock.h"
|
#include "stream_peer_winsock.h"
|
||||||
#include "lang_table.h"
|
#include "lang_table.h"
|
||||||
|
|
||||||
#include "globals.h"
|
#include "globals.h"
|
||||||
#include "io/marshalls.h"
|
#include "io/marshalls.h"
|
||||||
#include "joypad.h"
|
#include "joypad.h"
|
||||||
|
|
||||||
#include "shlobj.h"
|
#include <shlobj.h>
|
||||||
#include <regstr.h>
|
#include <regstr.h>
|
||||||
#include <process.h>
|
#include <process.h>
|
||||||
|
|
||||||
|
@ -1131,16 +1126,6 @@ void OS_Windows::initialize(const VideoMode& p_desired,int p_video_driver,int p_
|
||||||
ERR_PRINT("Initializing audio failed.");
|
ERR_PRINT("Initializing audio failed.");
|
||||||
}
|
}
|
||||||
|
|
||||||
sample_manager = memnew( SampleManagerMallocSW );
|
|
||||||
audio_server = memnew( AudioServerSW(sample_manager) );
|
|
||||||
|
|
||||||
audio_server->init();
|
|
||||||
|
|
||||||
spatial_sound_server = memnew( SpatialSoundServerSW );
|
|
||||||
spatial_sound_server->init();
|
|
||||||
spatial_sound_2d_server = memnew( SpatialSound2DServerSW );
|
|
||||||
spatial_sound_2d_server->init();
|
|
||||||
|
|
||||||
TRACKMOUSEEVENT tme;
|
TRACKMOUSEEVENT tme;
|
||||||
tme.cbSize=sizeof(TRACKMOUSEEVENT);
|
tme.cbSize=sizeof(TRACKMOUSEEVENT);
|
||||||
tme.dwFlags=TME_LEAVE;
|
tme.dwFlags=TME_LEAVE;
|
||||||
|
@ -1271,22 +1256,12 @@ void OS_Windows::finalize() {
|
||||||
SetWindowLongPtr(hWnd, GWLP_WNDPROC, (LONG_PTR)user_proc);
|
SetWindowLongPtr(hWnd, GWLP_WNDPROC, (LONG_PTR)user_proc);
|
||||||
};
|
};
|
||||||
|
|
||||||
spatial_sound_server->finish();
|
|
||||||
memdelete(spatial_sound_server);
|
|
||||||
spatial_sound_2d_server->finish();
|
|
||||||
memdelete(spatial_sound_2d_server);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
if (debugger_connection_console) {
|
if (debugger_connection_console) {
|
||||||
memdelete(debugger_connection_console);
|
memdelete(debugger_connection_console);
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
memdelete(sample_manager);
|
|
||||||
|
|
||||||
audio_server->finish();
|
|
||||||
memdelete(audio_server);
|
|
||||||
|
|
||||||
physics_server->finish();
|
physics_server->finish();
|
||||||
memdelete(physics_server);
|
memdelete(physics_server);
|
||||||
|
|
||||||
|
@ -2432,10 +2407,10 @@ OS_Windows::OS_Windows(HINSTANCE _hInstance) {
|
||||||
user_proc = NULL;
|
user_proc = NULL;
|
||||||
|
|
||||||
#ifdef RTAUDIO_ENABLED
|
#ifdef RTAUDIO_ENABLED
|
||||||
AudioDriverManagerSW::add_driver(&driver_rtaudio);
|
AudioDriverManager::add_driver(&driver_rtaudio);
|
||||||
#endif
|
#endif
|
||||||
#ifdef XAUDIO2_ENABLED
|
#ifdef XAUDIO2_ENABLED
|
||||||
AudioDriverManagerSW::add_driver(&driver_xaudio2);
|
AudioDriverManager::add_driver(&driver_xaudio2);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,29 +35,24 @@
|
||||||
#include "servers/visual_server.h"
|
#include "servers/visual_server.h"
|
||||||
#include "servers/visual/rasterizer.h"
|
#include "servers/visual/rasterizer.h"
|
||||||
#include "servers/physics/physics_server_sw.h"
|
#include "servers/physics/physics_server_sw.h"
|
||||||
|
#include "servers/audio_server.h"
|
||||||
#include "servers/audio/audio_server_sw.h"
|
|
||||||
#include "servers/audio/sample_manager_sw.h"
|
|
||||||
#include "drivers/rtaudio/audio_driver_rtaudio.h"
|
#include "drivers/rtaudio/audio_driver_rtaudio.h"
|
||||||
#ifdef XAUDIO2_ENABLED
|
#ifdef XAUDIO2_ENABLED
|
||||||
#include "drivers/xaudio2/audio_driver_xaudio2.h"
|
#include "drivers/xaudio2/audio_driver_xaudio2.h"
|
||||||
#endif
|
#endif
|
||||||
#include "servers/spatial_sound/spatial_sound_server_sw.h"
|
|
||||||
#include "servers/spatial_sound_2d/spatial_sound_2d_server_sw.h"
|
|
||||||
#include "drivers/unix/ip_unix.h"
|
#include "drivers/unix/ip_unix.h"
|
||||||
#include "servers/physics_2d/physics_2d_server_sw.h"
|
#include "servers/physics_2d/physics_2d_server_sw.h"
|
||||||
#include "servers/physics_2d/physics_2d_server_wrap_mt.h"
|
#include "servers/physics_2d/physics_2d_server_wrap_mt.h"
|
||||||
|
|
||||||
#include "main/input_default.h"
|
#include "main/input_default.h"
|
||||||
|
#include "key_mapping_win.h"
|
||||||
|
|
||||||
|
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
|
||||||
#include "key_mapping_win.h"
|
|
||||||
#include <windowsx.h>
|
#include <windowsx.h>
|
||||||
#include <io.h>
|
#include <io.h>
|
||||||
|
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@author Juan Linietsky <reduzio@gmail.com>
|
@author Juan Linietsky <reduzio@gmail.com>
|
||||||
*/
|
*/
|
||||||
|
@ -116,11 +111,6 @@ class OS_Windows : public OS {
|
||||||
|
|
||||||
WNDPROC user_proc;
|
WNDPROC user_proc;
|
||||||
|
|
||||||
AudioServerSW *audio_server;
|
|
||||||
SampleManagerMallocSW *sample_manager;
|
|
||||||
SpatialSoundServerSW *spatial_sound_server;
|
|
||||||
SpatialSound2DServerSW *spatial_sound_2d_server;
|
|
||||||
|
|
||||||
MouseMode mouse_mode;
|
MouseMode mouse_mode;
|
||||||
bool alt_mem;
|
bool alt_mem;
|
||||||
bool gr_mem;
|
bool gr_mem;
|
||||||
|
|
|
@ -43,7 +43,7 @@ Error AudioDriverDummy::init() {
|
||||||
|
|
||||||
|
|
||||||
mix_rate = 44100;
|
mix_rate = 44100;
|
||||||
output_format = SPEAKER_MODE_STEREO;
|
speaker_mode = SPEAKER_MODE_STEREO;
|
||||||
channels = 2;
|
channels = 2;
|
||||||
|
|
||||||
int latency = GLOBAL_DEF("audio/output_latency",25);
|
int latency = GLOBAL_DEF("audio/output_latency",25);
|
||||||
|
@ -99,14 +99,16 @@ int AudioDriverDummy::get_mix_rate() const {
|
||||||
|
|
||||||
AudioDriver::SpeakerMode AudioDriverDummy::get_speaker_mode() const {
|
AudioDriver::SpeakerMode AudioDriverDummy::get_speaker_mode() const {
|
||||||
|
|
||||||
return output_format;
|
return speaker_mode;
|
||||||
};
|
};
|
||||||
|
|
||||||
void AudioDriverDummy::lock() {
|
void AudioDriverDummy::lock() {
|
||||||
|
|
||||||
if (!thread || !mutex)
|
if (!thread || !mutex)
|
||||||
return;
|
return;
|
||||||
mutex->lock();
|
mutex->lock();
|
||||||
};
|
};
|
||||||
|
|
||||||
void AudioDriverDummy::unlock() {
|
void AudioDriverDummy::unlock() {
|
||||||
|
|
||||||
if (!thread || !mutex)
|
if (!thread || !mutex)
|
||||||
|
|
|
@ -46,7 +46,7 @@ class AudioDriverDummy : public AudioDriver {
|
||||||
int buffer_size;
|
int buffer_size;
|
||||||
|
|
||||||
unsigned int mix_rate;
|
unsigned int mix_rate;
|
||||||
SpeakerMode output_format;
|
SpeakerMode speaker_mode;
|
||||||
|
|
||||||
int channels;
|
int channels;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue