aboutsummaryrefslogtreecommitdiff
path: root/sokol_audio.h
diff options
context:
space:
mode:
authorDan Fandrich <dan@coneharvesters.com>2022-11-18 23:59:41 -0800
committerDan Fandrich <dan@coneharvesters.com>2022-11-19 00:02:15 -0800
commit1067f8004f96d709098a9c33b4c7885842cec29f (patch)
tree9ccd825bbeb040c971205f095031aa8d48bd49a5 /sokol_audio.h
parent05f3e82e27a2afb6fccb32461ebba9daedcb1a87 (diff)
sokol_audio.h: check more OpenSLES calls during Android audio init
Diffstat (limited to 'sokol_audio.h')
-rw-r--r--sokol_audio.h25
1 files changed, 19 insertions, 6 deletions
diff --git a/sokol_audio.h b/sokol_audio.h
index 5e487f37..9ec402f0 100644
--- a/sokol_audio.h
+++ b/sokol_audio.h
@@ -2183,14 +2183,27 @@ _SOKOL_PRIVATE bool _saudio_backend_init(void) {
const SLInterfaceID ids[] = { SL_IID_VOLUME, SL_IID_ANDROIDSIMPLEBUFFERQUEUE };
const SLboolean req[] = { SL_BOOLEAN_FALSE, SL_BOOLEAN_TRUE };
- (*_saudio.backend.engine)->CreateAudioPlayer(_saudio.backend.engine, &_saudio.backend.player_obj, &src, &_saudio.backend.dst_data_sink, sizeof(ids) / sizeof(ids[0]), ids, req);
-
+ if( (*_saudio.backend.engine)->CreateAudioPlayer(_saudio.backend.engine, &_saudio.backend.player_obj, &src, &_saudio.backend.dst_data_sink, sizeof(ids) / sizeof(ids[0]), ids, req) != SL_RESULT_SUCCESS)
+ {
+ SOKOL_LOG("sokol_audio opensles: CreateAudioPlayer failed");
+ _saudio_backend_shutdown();
+ return false;
+ }
(*_saudio.backend.player_obj)->Realize(_saudio.backend.player_obj, SL_BOOLEAN_FALSE);
- (*_saudio.backend.player_obj)->GetInterface(_saudio.backend.player_obj, SL_IID_PLAY, &_saudio.backend.player);
- (*_saudio.backend.player_obj)->GetInterface(_saudio.backend.player_obj, SL_IID_VOLUME, &_saudio.backend.player_vol);
-
- (*_saudio.backend.player_obj)->GetInterface(_saudio.backend.player_obj, SL_IID_ANDROIDSIMPLEBUFFERQUEUE, &_saudio.backend.player_buffer_queue);
+ if((*_saudio.backend.player_obj)->GetInterface(_saudio.backend.player_obj, SL_IID_PLAY, &_saudio.backend.player) != SL_RESULT_SUCCESS) {
+ SOKOL_LOG("sokol_audio opensles: GetInterface->Play failed");
+ _saudio_backend_shutdown();
+ return false;
+ }
+ if((*_saudio.backend.player_obj)->GetInterface(_saudio.backend.player_obj, SL_IID_VOLUME, &_saudio.backend.player_vol) != SL_RESULT_SUCCESS) {
+ SOKOL_LOG("sokol_audio opensles: GetInterface->PlayerVol failed");
+ }
+ if((*_saudio.backend.player_obj)->GetInterface(_saudio.backend.player_obj, SL_IID_ANDROIDSIMPLEBUFFERQUEUE, &_saudio.backend.player_buffer_queue) != SL_RESULT_SUCCESS) {
+ SOKOL_LOG("sokol_audio opensles: GetInterface->BufferQ failed");
+ _saudio_backend_shutdown();
+ return false;
+ }
}
/* begin */