Edgelib provides a cross-platform interface to individual camera frames, many of which have a different architecture than Edgelib's event-based model. This conversion step makes it generally impossible to safely mix Edgelib interfaces with native interfaces. If you require native iOS functions, you should implement your own AV stream as well. The alternative is to do the post-processing modifications in software, without iOS calls.
The OnCameraFrame callback provides the actual pixel data
to your application. Any form of postprocessing can be performed in the same function. FrameToSurface is basically the "common" implementation of that postprocessing by converting and rescaling the input data to fit a Surface object with a pixel format matching the display. It's use is not limited to camera frames - you can indeed provide your own pixel data and have Edgelib do the conversion.
We unfortunately do not have benchmarks available.