You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-20 14:45:44 +00:00
Fix AudioEffectRecord not working without thread support
This commit is contained in:
@@ -1004,6 +1004,11 @@ void AudioServer::update() {
|
||||
AudioDriver::get_singleton()->reset_profiling_time();
|
||||
prof_time = 0;
|
||||
#endif
|
||||
|
||||
for (Set<CallbackItem>::Element *E = update_callbacks.front(); E; E = E->next()) {
|
||||
|
||||
E->get().callback(E->get().userdata);
|
||||
}
|
||||
}
|
||||
|
||||
void AudioServer::load_default_bus_layout() {
|
||||
@@ -1129,6 +1134,25 @@ void AudioServer::remove_callback(AudioCallback p_callback, void *p_userdata) {
|
||||
unlock();
|
||||
}
|
||||
|
||||
void AudioServer::add_update_callback(AudioCallback p_callback, void *p_userdata) {
|
||||
lock();
|
||||
CallbackItem ci;
|
||||
ci.callback = p_callback;
|
||||
ci.userdata = p_userdata;
|
||||
update_callbacks.insert(ci);
|
||||
unlock();
|
||||
}
|
||||
|
||||
void AudioServer::remove_update_callback(AudioCallback p_callback, void *p_userdata) {
|
||||
|
||||
lock();
|
||||
CallbackItem ci;
|
||||
ci.callback = p_callback;
|
||||
ci.userdata = p_userdata;
|
||||
update_callbacks.erase(ci);
|
||||
unlock();
|
||||
}
|
||||
|
||||
void AudioServer::set_bus_layout(const Ref<AudioBusLayout> &p_bus_layout) {
|
||||
|
||||
ERR_FAIL_COND(p_bus_layout.is_null() || p_bus_layout->buses.size() == 0);
|
||||
|
||||
Reference in New Issue
Block a user