diff options
| author | Juan Linietsky | 2018-04-07 16:40:47 -0300 |
|---|---|---|
| committer | GitHub | 2018-04-07 16:40:47 -0300 |
| commit | 1570a72eee4bc0efb46cc2185c44a12a0aa57943 (patch) | |
| tree | c9ad90a73e85c9974da74784b6884d5fe46d0284 /servers | |
| parent | 51f689de3cbe167e117a042f9acb19c0cf4571ae (diff) | |
| parent | ecc1b34cbc2375a57afad822218324d8b88fa721 (diff) | |
| download | godot-1570a72eee4bc0efb46cc2185c44a12a0aa57943.tar.gz godot-1570a72eee4bc0efb46cc2185c44a12a0aa57943.tar.zst godot-1570a72eee4bc0efb46cc2185c44a12a0aa57943.zip | |
Diffstat (limited to 'servers')
| -rw-r--r-- | servers/audio_server.cpp | 30 | ||||
| -rw-r--r-- | servers/audio_server.h | 7 |
2 files changed, 37 insertions, 0 deletions
diff --git a/servers/audio_server.cpp b/servers/audio_server.cpp index c3b0de6d9..b08e41301 100644 --- a/servers/audio_server.cpp +++ b/servers/audio_server.cpp @@ -101,6 +101,18 @@ int AudioDriver::get_total_channels_by_speaker_mode(AudioDriver::SpeakerMode p_m ERR_FAIL_V(2); } +Array AudioDriver::get_device_list() { + Array list; + + list.push_back("Default"); + + return list; +} + +String AudioDriver::get_device() { + return "Default"; +} + AudioDriver::AudioDriver() { _last_mix_time = 0; @@ -1108,6 +1120,21 @@ Ref<AudioBusLayout> AudioServer::generate_bus_layout() const { return state; } +Array AudioServer::get_device_list() { + + return AudioDriver::get_singleton()->get_device_list(); +} + +String AudioServer::get_device() { + + return AudioDriver::get_singleton()->get_device(); +} + +void AudioServer::set_device(String device) { + + AudioDriver::get_singleton()->set_device(device); +} + void AudioServer::_bind_methods() { ClassDB::bind_method(D_METHOD("set_bus_count", "amount"), &AudioServer::set_bus_count); @@ -1154,6 +1181,9 @@ void AudioServer::_bind_methods() { ClassDB::bind_method(D_METHOD("get_speaker_mode"), &AudioServer::get_speaker_mode); ClassDB::bind_method(D_METHOD("get_mix_rate"), &AudioServer::get_mix_rate); + ClassDB::bind_method(D_METHOD("get_device_list"), &AudioServer::get_device_list); + ClassDB::bind_method(D_METHOD("get_device"), &AudioServer::get_device); + ClassDB::bind_method(D_METHOD("set_device"), &AudioServer::set_device); ClassDB::bind_method(D_METHOD("set_bus_layout", "bus_layout"), &AudioServer::set_bus_layout); ClassDB::bind_method(D_METHOD("generate_bus_layout"), &AudioServer::generate_bus_layout); diff --git a/servers/audio_server.h b/servers/audio_server.h index a8be48b4c..af2668b69 100644 --- a/servers/audio_server.h +++ b/servers/audio_server.h @@ -70,6 +70,9 @@ public: virtual void start() = 0; virtual int get_mix_rate() const = 0; virtual SpeakerMode get_speaker_mode() const = 0; + virtual Array get_device_list(); + virtual String get_device(); + virtual void set_device(String device) {} virtual void lock() = 0; virtual void unlock() = 0; virtual void finish() = 0; @@ -300,6 +303,10 @@ public: void set_bus_layout(const Ref<AudioBusLayout> &p_bus_layout); Ref<AudioBusLayout> generate_bus_layout() const; + Array get_device_list(); + String get_device(); + void set_device(String device); + AudioServer(); virtual ~AudioServer(); }; |
