Hacker News new | ask | show | jobs
by GregoryPerry 2522 days ago
Jitter is always introduced by non-RTOS operating systems that don't have a guarantee for preemptive realtime scheduling. The kernel scheduler introduces jitter, supervisory processes introduce jitter, etc. And an easy test to see the effects of this is to try to control a servo motor with a GPIO pin without RT_PREEMPT or comparable RTOS.

Simple fix would be an RT_PREEMPT-linked Linux sound player.

1 comments

Scheduling jitter does not cause jitter in audio, because audio is buffered and the buffer is consumed by audio device using it's own clock. Yet OS has to fill the buffer in time or underrun will happen, which will be audible as crackling and stutter. For some applications input and output audio buffers need to be very small to avoid introducing noticeable delay in audio processing, and in this case real-time capabilities are required to prevent buffer overruns and underruns.