Machine Vision Camera SDK (C) Developer Guide
{
printf("Get PayloadSize failed! nRet [%x]\n", nRet);
return;
}
int nBufSize = stIntvalue.nCurValue + 2048; //One frame data size +
reserved bytes (for SDK internal processing)
unsigned int nTestFrameSize = 0;
unsigned char* g_pFrameBuf = NULL;
g_pFrameBuf = (unsigned char*)malloc(MAX_BUF_SIZE);
MV_FRAME_OUT_INFO stInfo;
memset(&stInfo, 0, sizeof(MV_FRAME_OUT_INFO));
//The frequency of calling this interface should be controlled by upper
layer application according to frame rate.
//The codes are for reference only. In practical application, it is
recommended to create a new thread for image acquisition and processing.
while(1)
{
if (nTestFrameSize > 99)
{
break;
}
nRet = MV_CC_GetOneFrame(m_handle,g_pFrameBuf, nBufSize, &stInfo);
if (MV_OK != nRet)
{
Sleep(10);
}
else
{
//Picture data input and output parameters
MV_SAVE_IMAGE_PARAM stParam;
//Source data
stParam.pData
data
stParam.nDataLen
data length
stParam.enPixelType
data pixel format
stParam.nWidth
stParam.nHeight
= g_pFrameBuf;
//Original image
= stFrameInfo.nFrameLen; //Original image
= stFrameInfo.enPixelType; //Original image
= stFrameInfo.nWidth;
= stFrameInfo.nHeight;
//Image width
//Image height
//Target data
stParam.enImageType = MV_Image_Jpeg;
//Image type to
be saved, converting to JPEG format
stParam.nBufferSize = MAX_BUF_SIZE;
//Storage node
size
unsigned char* pImage = (unsigned char*)malloc(MAX_BUF_SIZE);
stParam.pImageBuffer = pImage;
//Output data
buffer, saving converted picture data
163
    "