<div dir="ltr">I stumbled across some old mailing list discussions on the use of Buf Size parameters; but I was unable to figure out what the final resolution to some the issues raised were.<br><div><br></div><div>The issues raised affect both an LV2 Host (PiPedal), and a convolution reverb plugin (TooB Convolution Reverb).</div><div><br></div><div>The particular issue is that of determining what the fixed buffer size will be when process() is called. </div><div><br></div><div>Pipedal as a host takes the safe approach and tears down and recreates all plugins if the buffer size changes.</div><div><br></div><div>I'm just about to make a change to Toob Convolution Reverb that exploits fixed buffer sizes. There was a suggestion in the mailing list that Carla was going to notify plugins of a buffer size change using an LV2_Options_Interface::set.</div><div><br></div><div>The specific questions:</div><div><br></div><div><ul><li>At instantiation time, can I reasonably having declared that my plugin requires  the LV2_Block_Size__fixedSize feature (lv2:requiresFeature bufsize:fixedSize) , that the nominalBlockSize I receive at instantiation time will be the maximum block size used when process() is called?<br><br></li><li>Can I prevent Carla and similar plugins from using LV2_Options_Interface::set. to notify of a buffer size change, instead of recreating the plugin from scratch? The prospects of tearing down and recreating very elaborate buffer and threading schemes while the realtime thread is running are not appealing. </li></ul></div><div><br></div></div>