if (elapsed.tv_sec == 0 && elapsed.tv_nsec < NSEC_PER_SEC / stats->fps) {
struct timespec remaining = {0, 0};
/* remaining delay, _relative_ to time_end */
remaining.tv_nsec = (NSEC_PER_SEC / stats->fps) - elapsed.tv_nsec;
if (elapsed.tv_sec == 0 && elapsed.tv_nsec < NSEC_PER_SEC / stats->fps) {
struct timespec remaining = {0, 0};
/* remaining delay, _relative_ to time_end */
remaining.tv_nsec = (NSEC_PER_SEC / stats->fps) - elapsed.tv_nsec;