nn::camera::CTR::SetReceiving Function
void SetReceiving(
nn::os::Event * pEvent,
void * pDst,
Port port,
size_t imageSize,
s16 transferUnit
);
| Name | Description | |
|---|---|---|
| out | pEvent | Event caused upon completion of a transfer. |
| out | pDst | Image data transfer destination. |
| in | port | Specifies the port that loads image data. |
| in | imageSize | Specifies the total size (frame size) to transfer. This must be an integer multiple of transferUnit. |
| in | transferUnit | Specifies the size (width × number of lines) to transfer per cycle. |
Configures loading of image data. Only a single frame is received, so this must be set once per each camera frame.
The image size specified in imageSize is twice the number of pixels in the image. If you have used the nn::camera::CTR::SetTransferLines function to specify the number of lines to transfer, set the transferUnit argument equal to that number times twice the image width. The doubling is because two bytes are used for each pixel. If you use the nn::camera::CTR::SetTrimming function to enable trimming, note that the image's pixel count and width are the trimmed values. If you have used the nn::camera::CTR::SetTransferBytes function to specify the number of bytes to transfer, use that value as the transferUnit argument to this function.
The output data formats are as follows.
YUV4:2:2(YCbCr)
| Bits 31-24 | Bits 23-16 | Bits 15-8 | Bits 7-0 |
| V (n) | Y (n+1) | U (n) | Y (n) |
The pEvent value obtained by this function is in the signaled state when transmission is complete. The only way to clear this state is to call Finalize on pEvent or pass pEvent to the nn::camera::CTR::SetReceiving function again.
After the application approves and the camera transitions to the sleep state, non-signaled dummy events are returned to pEvent regardless of the load settings.
Make sure that pEvent, obtained by this function, is not finalized during capture.
CONFIDENTIAL