It is in the docs - https://github.com/raspberrypi/firmware ... s/isp.html
(I'll make another request to get that lot hosted on raspberrypi.org. http://www.jvcref.com/files/PI/document ... omponents/
is a hosted version but quite out of date).
This component wraps the ISP (Image Sensor Processor) hardware block to offer hardware accelerated format conversion and resizing. It has one input port taking Bayer, YUV or RGB images in numerous different formats. It has two output ports: Port 361 supports various RGB and YUV formats. Port 362 is off the low res resizer which can only downscale. Due to this port 362 must be at a lower resolution to port 361. If set to a higher resolution then the port will effectively be disabled and no ouput produced. It also doesn't have the colour conversion block, and so only supports YUV formats.
Port 361 is treated as the main output - the pipeline will stall until an output buffer is available on that port. That includes if port 361 is disabled then no processing will occur. If no output buffer is available on port 362 when both an input buffer and port 361 output buffer are available, the frame will be processed with the low resolution output disabled.
Please note that this component has been developed for use under MMAL. It has not been tested at all under IL, so there may be unexpected behaviour under IL. It is also not considered to be production quality code yet - please use with caution.
In pictographic format, the back end of the ISP looks like:
Code: Select all
--> resize -+-> colour conversion -> output formatter
+-> resize -> output formatter
Top path goes to output 0, bottom path to output 1.
So yes you can get two different resizes out of the component simultaneously, just watch your buffer management if you wish to avoid frame drops on output 1.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.