|
Audio Asylum Thread Printer Get a view of an entire thread on one page |
For Sale Ads |
31.153.15.128
In Reply to: RE: Snap Crackle and Pop posted by Tony Lauck on April 11, 2014 at 08:02:36
the culprit for me has been wireless, networks and useless software in the background casing high latency spikes that are very high. Soemtimes it is a driver issue even with nominally the correct one.
Follow Ups:
Wireless can have huge latency, since sometimes packets are lost completely and have to be retransmitted. This can happen due to noise if the reception isn't so great, but it can also happen due to two stations transmitting simultaneously. I have some computers off in a distant part of my home and these are behind a wireless bridge. Pinging this bridge or the computers behind it usually shows low latency, but sometimes there will be a large spike, over 1 second, which I attribute to retransmission. On extreme cases I've seen packets dropped.
The latency tests show operating system latency handling upcalls to applications. Even if this latency is good there can still be problems if the system is starved for CPU time at peak instants. To some extent this problem can be alleviated by raising the priority of the audio application threads, but if another application running at lower priority gets a lock on a critical system resource there can be "priority inversion" whereby the higher priority audio program ends up waiting anyway.
Real time operating systems are designed to deal with these problems, not so much as to banish the problem of running out of CPU time but rather to allow the system to be designed and configured that overloaded configurations can be eliminated when the system is designed and configured. Unfortunately, existing operating systems are not built this way. They can be used for real-time operation provided the load is kept low enough. Unfortunately, general purpose operating systems aren't built on top of a real-time kernal and don't provide the necessary configuration tools and enforcement thereof. Example: a good real-time operating system would not allow a driver to exceed a budgeted time or receive an excessive rate of interrupts, so that the miscreant driver would get nailed rather than the correctly operating audio driver.
Tony Lauck
"Diversity is the law of nature; no two entities in this universe are uniform." - P.R. Sarkar
"useless software in the background casing high latency spikes that are very high."
Always a bad thing.
I was just hoping that more people might realize the detriment of program/OS activity in general. The lower we can go, and the closer to a direct stream the better IMO. I think this idea might be lost on some though.
Post a Followup:
FAQ |
Post a Message! |
Forgot Password? |
|
||||||||||||||
|
This post is made possible by the generous support of people like you and our sponsors: