Result audinWaitCaptureFinish(AudioInBuffer **released, u32* released_count, u64 timeout) { // Wait on the buffer event handle Result rc = svcWaitSynchronizationSingle(g_audinBufferEventHandle, timeout); if (R_SUCCEEDED(rc)) { // Signal the buffer event handle right away svcResetSignal(g_audinBufferEventHandle); // Grab the released buffer rc = audinGetReleasedAudioInBuffer(released, released_count); } return rc; }
static void switch_wait_vsync(switch_video_t *sw) { uint32_t handle_idx; svcWaitSynchronization(&handle_idx, &sw->vsync_h, 1, 33333333); svcResetSignal(sw->vsync_h); }