diff options
| author | Dan Fandrich <dan@coneharvesters.com> | 2022-11-18 23:59:41 -0800 |
|---|---|---|
| committer | Dan Fandrich <dan@coneharvesters.com> | 2022-11-19 00:02:15 -0800 |
| commit | 1067f8004f96d709098a9c33b4c7885842cec29f (patch) | |
| tree | 9ccd825bbeb040c971205f095031aa8d48bd49a5 /sokol_audio.h | |
| parent | 05f3e82e27a2afb6fccb32461ebba9daedcb1a87 (diff) | |
sokol_audio.h: check more OpenSLES calls during Android audio init
Diffstat (limited to 'sokol_audio.h')
| -rw-r--r-- | sokol_audio.h | 25 |
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 */ |