|
| Notices |
DriverHeaven is currently recruiting for the AWOMO Beta Test / Elite Op Team. AWOMO is a digital download service for games, and we're looking to expand the beta team. If you're interested. Sign up as a member here at DriverHeaven and then head HERE to submit your details. Thanks
For more info on AWOMO visit their site HERE
Welcome to the DriverHeaven.net forums. You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please, join our community today! If you have any problems with the registration process or your account login, please contact contact us. |
 |
Jun 14, 2004, 12:31 PM
|
#1
|
|
DriverHeaven Newbie
Join Date: May 2004
Location: NYC
Posts: 9
Rep Power: 0
|
ASIO buffer size help
Sorry if this is answered elsewhere but I have not come across it in the documents yet, and I searched the forum but did not find what I am looking for.
what's the advantage / disadvantage of bigger / smaller buffers for the ASIO, or any driver?
bigger buffer = delay but less chance of crackle?
Thanks!
Lucas

|
|
|
Jun 14, 2004, 05:12 PM
|
#2
|
|
DriverHeaven Lover
Join Date: Aug 2003
Posts: 209
Rep Power: 0
|
exactly, also the smaller buffers cause higher CPU load
|
|
|
Jun 19, 2004, 09:10 PM
|
#3
|
|
DriverHeaven Newbie
Join Date: May 2004
Location: NYC
Posts: 9
Rep Power: 0
|
Quote:
Originally posted by miguel
exactly, also the smaller buffers cause higher CPU load
|
are there any docs on this subject?
|
|
|
Jun 20, 2004, 12:11 AM
|
#4
|
|
DH's Latest Mac Convert
Join Date: Jun 2003
Location: Basement of the first floor
Posts: 15,749
|
not kX related… but it means the CPU has to work harder to keep the buffers full
|
|
|
Jun 20, 2004, 08:34 AM
|
#5
|
|
DriverHeaven Lover
Join Date: Aug 2003
Posts: 209
Rep Power: 0
|
I guess the smaller the buffers the more often they need to be refilled
|
|
|
Jun 20, 2004, 09:39 AM
|
#6
|
|
DriverHeaven Newbie
Join Date: May 2004
Location: NYC
Posts: 9
Rep Power: 0
|
yeah I noticed that --- if I had a small buffer then whenever i opened a webpage or something the sound would crackle.
i am curious what each buffer correlates to. thats really what i dont get
thanks for the help everyone
|
|
|
Jun 20, 2004, 04:56 PM
|
#7
|
|
DriverHeaven Lover
Join Date: Aug 2003
Posts: 209
Rep Power: 0
|
You might notice less cracling if you set priority to background services in the system's properties. With this setting you should be able to cause high enough system load to lock the screen refresh but audio will keep playing in time.
|
|
|
Jun 20, 2004, 08:12 PM
|
#8
|
|
DriverHeaven Newbie
Join Date: May 2004
Location: NYC
Posts: 9
Rep Power: 0
|
good call
thanks
|
|
|
Jun 21, 2004, 03:52 AM
|
#9
|
|
kX Project DSP Engineer
Join Date: Dec 2002
Location: Denmark
Posts: 94
Rep Power: 0
|
Audio processing is done in buffers in your audio programs (and also inside VST effects).
The buffer size is a number of samples, and depending on the sample rate it represents the latency (the same number of samples at a _higher_ sample rate results in a _lower_ latency, but also a higher CPU load, since it has to process more samples within a given time).
Why buffers?
Usually the programs initializes a lot of stuff before you process the buffer, and keep as little code as possible inside the buffer process loop. Stuff ouside the loop could/should be "heavy" computation, such as calculating coefficients for a sweeping filter etc., while the buffer loop would contain only the simple multiplication and addition operations required to do the actual filtering. By doing this we save _a_lot_ of CPU time, which we can use for processing even more buffer loops.
When the buffer loop is complete, the program probably also has to set some variables and perform some copy/mix operations. The buffer is then handed over to the next process in the chain.
All this is done for each process you add to your sound(s). Each plugin you add will add yet another buffer loop to the pool.
When you decrease the buffer size you _increase_ the number of "outside loop" operations, and thus you increase the load on the CPU. When you computer gets too busy it may not complete the buffer loop in time to deliver its samples to the mixing bus, which, in turn, has to deliver to the driver/soundcard. The result will be unpleasant cackling noise or what's worse (crash?).
/Soeren
|
|
|
Jun 21, 2004, 08:34 AM
|
#10
|
|
DriverHeaven Newbie
Join Date: May 2004
Location: NYC
Posts: 9
Rep Power: 0
|
Thank you everyone for the detailed information,
it has been very insightful.
I am still curious, however, what each buffer is used for (there exists about 6 I believe on the KX buffer setup menu - I am at work so I can not see).
again thanks for your time
Lucas
|
|
|
Jun 21, 2004, 08:38 AM
|
#11
|
|
DH's Latest Mac Convert
Join Date: Jun 2003
Location: Basement of the first floor
Posts: 15,749
|
very detailed soeren… and lucasvickers, i think that each buffer may be for a seperate channel
|
|
|
Jun 21, 2004, 09:11 AM
|
#12
|
|
DriverHeaven Lover
Join Date: Feb 2004
Location: Latvia
Posts: 154
Rep Power: 0
|
It tells you if you place your cursor over them.
|
|
|
|
|
|