Woodland Hills Posted October 20, 2020 Share Posted October 20, 2020 My Buffer Size is set to 128 and Process Buffer Range set to Small. Compared to the Buffer Size, what exactly does the Buffer Range do? Thanks Quote Link to comment Share on other sites More sharing options...
triplets Posted October 20, 2020 Share Posted October 20, 2020 Process Buffer Range applies to Logic's mixing engine. Medium is default, and if you go to Large you'll increase latency as well. Quote Link to comment Share on other sites More sharing options...
Woodland Hills Posted October 20, 2020 Author Share Posted October 20, 2020 Sorry I'm not getting it. If it's set to Large, are we increasing the latency when playing live keyboards, etc...? Quote Link to comment Share on other sites More sharing options...
triplets Posted October 20, 2020 Share Posted October 20, 2020 Yup. Buffer size applies to recording Process buffer range applies to mixing There is latency on both. Quote Link to comment Share on other sites More sharing options...
Woodland Hills Posted October 20, 2020 Author Share Posted October 20, 2020 ok thanks triplets. Quote Link to comment Share on other sites More sharing options...
triplets Posted October 20, 2020 Share Posted October 20, 2020 You're welcome. Quote Link to comment Share on other sites More sharing options...
Dewdman42 Posted October 20, 2020 Share Posted October 20, 2020 There is very little clear information about exactly what the Process Buffer Range is to be honest. You can find numerous discussions about it in this forum and mentions about it various articles on the web are all kind of vague and in my opinion, speculative. Supposedly it could be adding more latency, but there is no indicator anywhere in LogicPro; that would show you how much more latency it is allegedly creating if you use say, the large setting.. Change that value in preferences and the reported latency does not change at all. That doesn't mean its not there, you would need to do some loopback tests to find out, but its not indicated as any kind of value anywhere in LogicPro. My own experience is that I don't notice any additional latency when I use the large setting and pretty much leave it on large all the time. There are some old discussions from a decade ago where people talk about some subtle midi timing problems unless they use a small setting. No idea if those discussions had merit or were speculative also. Its quite possible that the environment itself could have a bit more latency when using the large setting...but that playback from tracks to instruments would not have that problem at all. etc.. Basically I am speculating too now, hehe. The truth is there is hardly any real information about this setting. The environment processes midi outside of the normal plugin process block...so this setting MIGHT be related to that environment processing and perhaps you will not notice any difference whatsoever unless you are doing tricky things in the environment? Speculation. The docs are vague. We don't know. I have noticed that with certain extreme tasks with lots of midi traffic and lots of stuff in the environment, a SMALL setting resulted in dropped notes sometimes and when I changed it to large, then all the notes went through. So I just leave it on LARGE all the time now. Bottom line, I wouldn't worry about it. SMALL is probably the one to use, but if you start having weird problems, then bump it to medium or large to see if the problems go away. the other buffer, the I/O buffer, has to do with the size of audio buffer that is passed to the sound card. A larger buffer has exactly that much latency added, calculated precisely based on the size (in samples) and the sample rate. That's why the audio preferences actually displays that value to you so that you know. We get no such indicator for the Process Buffer Range. Apple does say in their own docs that it can increase latency somehow, but no more information then that is provided. Quote Link to comment Share on other sites More sharing options...
Woodland Hills Posted October 20, 2020 Author Share Posted October 20, 2020 Dewdman42, I agree with you. I Googled it and really couldn't find anything pertaining to what the latency is actually doing. For instance if we change the Buffer Size from 128 (my current setting) to 512, when you play your keyboard, there's noticeable latency, which is why I keep it at 128. I tried changing the Buffer Range from Small to Medium, and the Resulting Latency still reads 10.7 ms Roundtrip (5.3 ms Output), so clearly there's no difference there, so I'll leave it set to Medium. Quote Link to comment Share on other sites More sharing options...
Dewdman42 Posted October 20, 2020 Share Posted October 20, 2020 it doesn't necessarily mean there isn't some latency happening, its just not represented on that dialog box in the number you see. The latency would be most likely in the midi...and it would be hard to test because it would be a factor of how much latency is there between when you press a key on your keyboard and hear a sound. There is some inherent latency in the midi connection over USB already, that latency is also not reported in the audio preferences value you see. But you'll feel it if its large enough. Fortunately midi latency is less than 1ms...the main problem with midi latency is that its not consistent, so you will hear people talk about jitter. That variable amount of latency is not reported at all in that 10.7ms number you see. That 10.7ms number is the amount of latency required to process your audio, in addition to midi. I suspect that the Process Buffer has to do with the way midi is processed in real time as it comes into LogicPro, before it actually goes into the channel strip. There is some real time processing, which will create latency of its own...but this latency is probably very very small compared to the IO Buffer. But anyway, even though you don't see it in that number doesn't mean its not happening. But the only way to find out for sure is to do some loopback tests. You could do a loopback test and include a microphone sitting next to your midi controller to actually record the sound of your finger hitting the key, in order to figure out how much latency midi is introducing, etc. . Kind of a hassle to test really, but that is the only way to know for sure how much latency your system has. Quote Link to comment Share on other sites More sharing options...
Woodland Hills Posted October 20, 2020 Author Share Posted October 20, 2020 Good points. I know someone at Apple who might be able to shed some light on this issue. Stay tuned. Quote Link to comment Share on other sites More sharing options...
des99 Posted October 20, 2020 Share Posted October 20, 2020 The mixer has to process all audio - sending buffers to plugins, returning the results, copying audio streams to sends, mixing all the various streams together, and so on. All audio processing is based on processing buffers for efficiency - the computer has to calculate every sample, but by chunking it into blocks, the engine can work ahead of itself, then leave time in between for other tasks - updating graphics, and so on. The smaller the buffers, in general, the more work the computer has to do as it's having to fetch and calculate smaller blocks but much faster, rather than bigger blocks slower - this is true for the input buffers too. So - the larger the process buffer, the larger blocks you're calculating, so the processor is a bit more efficient. I can't remember what mine's set to offhand, but I *rarely* if ever change it, unless I'm struggling for resources in which case I often increase the audio buffers and sometimes the processor range to get a more favourable result. That's what I understand about that setting. And from the LP7 manual: "Process Buffer Range This parameter determines the size of the native buffer used to compute mixes and effects. Choose between Small, Medium, and Large buffer sizes. Note: Larger buffer sizes will increase latency. Dependent on CPU speed, buffer sizes that are too small might compromise real time audio processing." Quote Link to comment Share on other sites More sharing options...
Dewdman42 Posted October 20, 2020 Share Posted October 20, 2020 The CPU does not add latency to the audio. That is fundamentally wrong. the IO buffer adds latency. It does not ever matter how slow your CPU is, it will never add latency to the audio. If it can't keep up it will add drop outs. Quote Link to comment Share on other sites More sharing options...
des99 Posted October 20, 2020 Share Posted October 20, 2020 As I said - that was the wording from the LP7 manual. It's entirely possible the behaviour is different now compared to then - it's just the older manuals often provide more info for context. Quote Link to comment Share on other sites More sharing options...
Dewdman42 Posted October 20, 2020 Share Posted October 20, 2020 It can be easily verified and measured with loopback audio test. Run a loop back test with all three settings of process buffer range and see if there is any difference. The loopback should match the reported latency in all three cases. Loopback test is the only way to know if and when this process buffer range setting is somehow adding more latency beyond the hat is reported in audio prefs for the soundcard buffer Quote Link to comment Share on other sites More sharing options...
Dewdman42 Posted October 20, 2020 Share Posted October 20, 2020 It’s also possible, that the process buffer range amplifies the latency created by some plugins, more speculation but there you go. The information in all manuals past and present is vague in this topic, so we cannot assume anything more then take whatever was written at face value which might mean that in certain situations some latency could be added by this buffer but you can only notice it except for that situation and we don’t know how MUCH latency they are talking about. so really it’s vague and useless information unless quantified through measurement in some way. My actual experience has been that I do t notice any additional delay in the system when using a large setting and this minimizes the prospect for problems due to not having a big enough buffer, but as I said I have seen reports that a large setting caused some people in years past to have some midi timing problems but I saw no specific information about how or when it was a problem for them. Quote Link to comment Share on other sites More sharing options...
des99 Posted October 20, 2020 Share Posted October 20, 2020 As far as I understood it, the process buffer range doesn't change latency at all, but I haven't investigated into this behaviour for well over a decade, so it's always useful to update the knowledgebase where it's necessary from time to time. Quote Link to comment Share on other sites More sharing options...
Dewdman42 Posted October 20, 2020 Share Posted October 20, 2020 I’m away from my computer at the moment but there is definitely an Apple doc out there that mentions the possibility of more latency but still totally vague. Quote Link to comment Share on other sites More sharing options...
des99 Posted October 20, 2020 Share Posted October 20, 2020 (edited) https://support.apple.com/en-gb/HT203930 "Process Buffer Range: Set this option to Large. As with the I/O buffers, higher settings increase latency." https://www.soundonsound.com/techniques/looking-after-logic "The Process Buffer Range is used to allocate the buffer size for Logic's mixing engine. Medium is the default, but it can be increased to Large to reduce the likelihood of overloads. However, you need to be aware that latency will increase in this case. It follows that latency will be decreased if you set it to Small, and this setting may be usable on very fast modern CPUs, so it pays to experiment if you're trying to achieve the lowest possible latency." Edited October 20, 2020 by des99 Quote Link to comment Share on other sites More sharing options...
Dewdman42 Posted October 20, 2020 Share Posted October 20, 2020 https://support.apple.com/en-us/HT203930 There is a live doc mentioning it but no details about how or when and I’m willing to bet audio loopback test will not see any Quote Link to comment Share on other sites More sharing options...
Dewdman42 Posted October 20, 2020 Share Posted October 20, 2020 Hahah yea Quote Link to comment Share on other sites More sharing options...
Dewdman42 Posted October 20, 2020 Share Posted October 20, 2020 Like I said: “measure it”, otherwise means nothing to me Quote Link to comment Share on other sites More sharing options...
des99 Posted October 20, 2020 Share Posted October 20, 2020 if you want to investigate, then yes, measure it - but make sure you measure it in all possible circumstances it can have an effect - otherwise you could measure it in one good config where it doesn't add latency and come to erroneous conclusions... It will require a bit of effort to really investigate the behaviour, if it does vary, and if it's related to I/O buffer at all, and MIDI timing, and audio drivers, and plugins etc... Quote Link to comment Share on other sites More sharing options...
Dewdman42 Posted October 20, 2020 Share Posted October 20, 2020 (edited) Exactly my point! We don’t know what exactly that is because the information provided is too vague. The only way to find out when you would need to use a small process buffer range is to run tests and find out how and when to set that setting small medium or large. Apple provides no information and personally I haven’t been able to hear any difference in latency Edited October 20, 2020 by Dewdman42 Quote Link to comment Share on other sites More sharing options...
Dewdman42 Posted October 20, 2020 Share Posted October 20, 2020 But I have definitely ran into a situation where a small and medium size was dropping some midi notes Quote Link to comment Share on other sites More sharing options...
Woodland Hills Posted October 20, 2020 Author Share Posted October 20, 2020 But I have definitely ran into a situation where a small and medium size was dropping some midi notes Is this with 10.5.1? Quote Link to comment Share on other sites More sharing options...
Dewdman42 Posted October 20, 2020 Share Posted October 20, 2020 No it was with before 10.4.5 when using the vepro multiport macro which funneled many tracks of midi through a single environment circuit. But setting large size helped. I no longer use that template. Quote Link to comment Share on other sites More sharing options...
Woodland Hills Posted October 20, 2020 Author Share Posted October 20, 2020 Make sense. I was also using VEPro with PT for many years until I rediscovered Logic again. Quote Link to comment Share on other sites More sharing options...
blinkofani Posted October 21, 2020 Share Posted October 21, 2020 Logic has been one of the first, if not the first, to have a hybrid sound engine where the playback tracks run on a larger buffer and the live tracks(armed tracks) can run on a smaller buffer. Aren’t those two settings exactly that? If you have a large project going, raising a low I/O buffer won’t change anything if there’s no armed tracks. And if your project grew up and arm a track, you’ll still record with a low latency because the armed track will use the I/O buffer setting and your project won’t struggle playing loads of tracks because it’s on the Process Buffer setting. Before Pro Tools and Cubase got a similar hybrid engine(ASIO Guard in the case of Cubase), it was hell doing an overdub late in a busy project because you then needed to lower the buffer size to record with small latency and big project would then struggle to play back at the new low buffer setting. A Cubase friend of mine was at a loss when I told him that I was always staying at 128 samples buffer settings throughout a project and was able to record at any time with low latency without my project giving me crackles and pops. At the time, Cubase didn’t have that 2 buffers paradigm and it was hell working with big projects because if you had to lower your buffer for an overdub, the project would then be unable to play back correctly. Same for Pro Tools. Blink Quote Link to comment Share on other sites More sharing options...
Dewdman42 Posted October 21, 2020 Share Posted October 21, 2020 no. the I/O buffer setting in the audio preferences is the buffer size used for live tracks, in order to get low latency on the live track while recording. The playback tracks will be using some internal very large buffer size which we have no control over and don't need to. There would be no reason to ever make that internal playback track buffer anything smaller then as big as Logic Feels like making it. The Process Buffer Range is something else entirely specifically related to the size of each process block most likely, but we're not really sure, the information is scarce. Its a lower level thing related to feeding the CPU. The I/O buffer size is related to filling the sound card. Quote Link to comment Share on other sites More sharing options...
blinkofani Posted October 21, 2020 Share Posted October 21, 2020 Sure of that?(well nobody is...) Cubase ASIO Guard also has a small, medium and large thingie for it... Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.