Decided to have a look at the source code of the ASIO plugin I'm using, to see how the setting "Buffer Size" is actually used, to get the size of the buffer (in samples). On UI, the setting is exposed as a value from 0 to 63.
Here's what I discovered in the code:
ASIOGetBufferSize(&MinSize, &MaxSize, &_PreferredSize, &Granularity);
PreferredSize = _PreferredSize;
BuffPreferredSize = PreferredSize * BUFFER_SIZE * (cfg_buffer_size + 1);
First line is an ASIO SDK call to the hardware driver, populating values for Min, Max, and Preferred buffer sizes. Third line calculates the size of the buffer, where:
- PreferredSize is returned by the driver;
- BUFFER_SIZE is a constant, which is set by developer to 4;
- cfg_buffer_size is the config value set in UI, in my case 0.
So, if let's say PreferredSize=512 (I've no idea what it is in reality, and would have to run the code in debug mode on a machine with W4S XMOS driver installed), then actual buffer size in samples is
512*4*1 = 2048
When I feel like it next time, the obvious things to try are:
- Use MinSize instead of PreferredSize;
- Set BUFFER_SIZE constant to 2 or 1 - not sure how arbitrary is the value 4.
This post is made possible by the generous support of people like you and our sponsors:
Topic - Revisiting buffer sizes (somewhat technical). - carcass93 14:13:40 04/14/14 (57)
- RE: Revisiting buffer sizes (somewhat technical). - SBGK 15:14:48 04/17/14 (3)
- I'm glad you're of such a high opinion of the software you developed, but... - carcass93 08:48:55 04/18/14 (1)
- RE: I'm glad you're of such a high opinion of the software you developed, but... - SBGK 10:42:49 04/18/14 (0)
- Digital Edge??? - fmak 22:14:09 04/17/14 (0)
- Corrections, after a little bit of investigation: - carcass93 08:53:12 04/15/14 (0)
- RE: Revisiting buffer sizes (somewhat technical). - fmak 22:10:25 04/14/14 (51)
- You're wrong - Goober58 10:54:15 04/15/14 (0)
- RE: Revisiting buffer sizes (somewhat technical). - Scrith 10:12:28 04/15/14 (19)
- You are a USER of computer audio, correct? Don't remember you claiming being developer... - carcass93 12:37:49 04/15/14 (0)
- on the side of the users - fmak 10:58:47 04/15/14 (16)
- RE: on the side of the users - Scrith 14:22:38 04/15/14 (15)
- In addition to what Tony said about compiler settings - .... - carcass93 08:41:37 04/16/14 (0)
- because information like that is, generally, not particularly useful to software users - fmak 02:13:48 04/16/14 (1)
- RE: because information like that is, generally, not particularly useful to software users - Tony Lauck 14:12:32 04/16/14 (0)
- RE: on the side of the users - Tony Lauck 19:11:26 04/15/14 (11)
- no evidence that the two versions should sound the same - fmak 00:49:51 04/16/14 (8)
- RE: no evidence that the two versions should sound the same - Tony Lauck 11:17:34 04/16/14 (7)
- RE: no evidence that the two versions should sound the same - Bob_C 13:30:24 04/17/14 (4)
- RE: no evidence that the two versions should sound the same - Tony Lauck 13:51:00 04/17/14 (3)
- RE: no evidence that the two versions should sound the same - Bob_C 14:09:14 04/17/14 (2)
- RE: no evidence that the two versions should sound the same - Tony Lauck 17:18:48 04/17/14 (1)
- RE: no evidence that the two versions should sound the same - Bob_C 17:27:17 04/17/14 (0)
- This supports my argument that we will never get consistently good sound by tweaking software - fmak 05:58:26 04/17/14 (1)
- Then why do you think the programmer can do it? - Goober58 08:44:28 04/17/14 (0)
- RE: on the side of the users - Bob_C 20:17:42 04/15/14 (1)
- RE: on the side of the users - Scrith 10:27:40 04/16/14 (0)
- What's sad is people come hear to learn. - Goober58 10:57:30 04/15/14 (0)
- RE: Revisiting buffer sizes (somewhat technical). - Tony Lauck 22:48:12 04/14/14 (29)
- RE: Revisiting buffer sizes (somewhat technical). - Bob_C 17:26:23 04/15/14 (9)
- "then you shouldn't be using a computer, you should be using a purpose built transport." - fmak 05:57:23 04/16/14 (6)
- RE: "then you shouldn't be using a computer, you should be using a purpose built transport." - Bob_C 09:01:20 04/16/14 (5)
- No - fmak 09:14:12 04/16/14 (4)
- RE: No - Bob_C 10:11:57 04/16/14 (3)
- RE: No-Versions - fmak 06:00:46 04/17/14 (2)
- RE: No-Versions - Bob_C 16:50:44 04/17/14 (0)
- RE: No-Versions - Bob_C 08:54:20 04/17/14 (0)
- RE: Revisiting buffer sizes (somewhat technical). - Tony Lauck 18:23:18 04/15/14 (1)
- RE: Revisiting buffer sizes (somewhat technical). - Bob_C 18:36:28 04/15/14 (0)
- RE: Revisiting buffer sizes (somewhat technical). - Bob_C 12:21:37 04/15/14 (2)
- Question for Bob - fmak 23:39:04 04/15/14 (1)
- RE: Question for Bob - Bob_C 00:23:57 04/16/14 (0)
- Nice post Tony. nt - Goober58 10:58:12 04/15/14 (0)
- RE: Revisiting buffer sizes (somewhat technical). - AbeCollins 09:02:40 04/15/14 (1)
- Abe, see above and take the week off... - Chris Garrett 12:18:01 04/15/14 (0)
- RE: Revisiting buffer sizes (somewhat technical). - Sprezza Tura 08:33:09 04/15/14 (0)
- RE: Revisiting buffer sizes (somewhat technical). - fmak 04:45:19 04/15/14 (11)
- RE: Revisiting buffer sizes (somewhat technical). - Goober58 10:47:51 04/15/14 (10)
- ideal settings - fmak 11:00:26 04/15/14 (9)
- "ideal" settings? Come on give me a break - Goober58 11:05:01 04/15/14 (8)
- Since every audio player - fmak 11:31:05 04/15/14 (7)
- That's why final/ideal settings are up to the end user not the programmer - Goober58 11:52:55 04/15/14 (6)
- That's why final/ideal settings are up to the end user not the programmer - fmak 23:43:06 04/15/14 (5)
- Please keep focus on what we are discussing - Goober58 00:12:40 04/16/14 (4)
- focus on what you are asserting and not what I said - fmak 02:19:13 04/16/14 (3)
- Engineering tools and doctors equipment are calibrated on a regular. - Goober58 11:12:38 04/16/14 (2)
- I thought you wanted to stay focussed - fmak 11:15:38 04/16/14 (1)
- If you are an engineer you wouldn't be disagreeing with me. - Goober58 11:22:19 04/16/14 (0)