Merge remote-tracking branch 'upstream/main'
CI / build-test (warp-macos-15-arm64-6x) (push) Canceled after 0s
CI / build-test (warp-ubuntu-latest-x64-8x) (push) Canceled after 0s
CI / build-test (warp-windows-latest-x64-16x) (push) Canceled after 0s

This commit is contained in:
2026-08-05 14:57:23 +08:00
2 changed files with 21 additions and 1 deletions
+1 -1
View File
@@ -207,7 +207,7 @@ extern "C" {
/* AudioManager family (handle: oakengine_audio_manager_handle(), see /* AudioManager family (handle: oakengine_audio_manager_handle(), see
* oakengine/audio.h). Fired when the output device or format changes. */ * oakengine/audio.h). Fired when the output device or format changes. */
#define OAKENGINE_EVENT_AUDIO_MANAGER_OUTPUT_PARAMS_CHANGED 140 /**< no payload. */ #define OAKENGINE_EVENT_AUDIO_MANAGER_OUTPUT_PARAMS_CHANGED 140 /**< no payload. */
#define OAKENGINE_EVENT_AUDIO_MANAGER_OUTPUT_NOTIFY 141 /**< no payload; emitted after each notify interval of audio has been consumed. */ #define OAKENGINE_EVENT_AUDIO_MANAGER_OUTPUT_NOTIFY 144 /**< no payload; emitted after each notify interval of audio has been consumed. */
/* ---- Playback cache / frame cache (B9c) ----------------------------------- */ /* ---- Playback cache / frame cache (B9c) ----------------------------------- */
#define OAKENGINE_EVENT_PLAYBACK_CACHE_INVALIDATED 141 #define OAKENGINE_EVENT_PLAYBACK_CACHE_INVALIDATED 141
+20
View File
@@ -1111,6 +1111,26 @@ QVector<QMetaObject::Connection> connect_event(
Qt::DirectConnection)); Qt::DirectConnection));
break; break;
} }
case OAKENGINE_EVENT_AUDIO_MANAGER_OUTPUT_NOTIFY: {
auto *audio_manager = dynamic_cast<AudioManager *>(obj);
if (!audio_manager) {
break;
}
conns.append(QObject::connect(
audio_manager, &AudioManager::output_notify, audio_manager,
[fn, userdata, audio_manager]() {
invoke(fn, userdata,
OAKENGINE_EVENT_AUDIO_MANAGER_OUTPUT_NOTIFY,
audio_manager, 0, 0, nullptr);
},
Qt::DirectConnection));
break;
}
case OAKENGINE_EVENT_PLAYBACK_CACHE_INVALIDATED: case OAKENGINE_EVENT_PLAYBACK_CACHE_INVALIDATED:
case OAKENGINE_EVENT_PLAYBACK_CACHE_VALIDATED: { case OAKENGINE_EVENT_PLAYBACK_CACHE_VALIDATED: {
auto *cache = dynamic_cast<PlaybackCache *>(obj); auto *cache = dynamic_cast<PlaybackCache *>(obj);