diff options
Diffstat (limited to '')
| -rw-r--r-- | platform/iphone/audio_driver_iphone.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/platform/iphone/audio_driver_iphone.cpp b/platform/iphone/audio_driver_iphone.cpp index 611f57dea..c3ba0e694 100644 --- a/platform/iphone/audio_driver_iphone.cpp +++ b/platform/iphone/audio_driver_iphone.cpp @@ -101,10 +101,10 @@ OSStatus AudioDriverIphone::output_callback(void *inRefCon, bool mix = true; - if (!ad_active) + if (!ad->active) mix = false; - else { - mix = mutex->try_lock() == OK; + else if (ad->mutex) { + mix = ad->mutex->try_lock() == OK; }; @@ -127,9 +127,9 @@ OSStatus AudioDriverIphone::output_callback(void *inRefCon, while (frames_left) { int frames = MIN(frames_left, ad->buffer_frames); - ad->lock(); + //ad->lock(); ad->audio_server_process(frames, ad->samples_in); - ad->unlock(); + //ad->unlock(); for(int i = 0; i < frames * ad->channels; i++) { @@ -141,6 +141,9 @@ OSStatus AudioDriverIphone::output_callback(void *inRefCon, }; }; + if (ad->mutex) + ad->mutex->unlock(); + return 0; }; |
