Hello to everybody.
I recently started a project with EVM6472, which connects with a camera through TCP/IP. I modified the hpdspua example, and I'm using MCSDK 1.00.00.08, CCSV5, BIOS 6.33.04.39, NDK 2.21.01.38.
There is a web-interface in the EVM, through which I control the EVM. So I use this interface to make the EVM send a command to the camera. The camera answers the command with a image in JPG format, that is the image it captures in the moment that it receives the command. I can select the image quality. I use the recv function with a buffer enough to receive any image.
What happens is that, when the image is small (low quality), I receive it. When it is larger, I can't receive everything... I discovered that changing the receive buffer (with setsockopt), I can receive all kinds of images. So I use a receive buffer size enough for all...
So I have some doubts about the NDK... I thought that when the receive buffer is full, the EVM would send something to the camera telling that it is full. But as I saw, the EVM is receiving only the amount of data defined by the buffer size. I used the same camera with a microcontroller (from other company) with a buffer with 40 bytes, and I was able to handle any size of image.
I looked in the documentation, and I didn't find anything specific about the socket receive buffer... Does anyone knows something about it?
Thanks...