Do you know what happens ?
How i can test it before running compress ?
How can i avoid it (OMV_RAW_BUF_SIZE, JPEG_QUALITY_THRESH, JPEG_QUALTIY_LOW, JPEG_QUALITY_HIGH) ?
Hi, this happens because the in place compress uses the frame buffer stack which is smaller than the image size at VGA resolution. So, sometimes you get a huge JPG which doesn’t fit in the frame buffer stack. On the H7 this won’t be a problem but it is on the M7. Um, the fixes are to either lower the quality or surround the compress method with python’s try: expect: logic. This will allow you to ignore failures when the jpg image comes out too big.
At start the compression works on static subject (ceiling): the red led is flashing.
If i put my hand in front of the camera, the compression dont works : the blue led is flashing.
But if i take off my hand, the compression still doesnt work…
Do i have to reinit something before re-use the compression ?
Okay, there’s definitely some type of memory corruption going on here. It’s kinda hard to track given the way things are written. However, I’m guessing the jpeg buffer is overflowing and corrupting the frame buffer stack pointers causing the frame buffer fast ram stack to break.
Um, please create a bug about this on the OpenMV GitHub. The fix is most likely just to make jpeg.c stop writing out JPEG data earlier than at the last bytes of the data buffer.
Hi, yes the FB stops working when the VGA image is compressed at high quality (when there’s no exception), I think this normal because the memory is full and the compression for the IDE preview fails, but the camera doesn’t disconnect. That’s what I saw in my testing. Is there any other problem ? Also note all the dev firmware version is 3.3.0 so you could still be on an old firmware, you have to make sure to upload the firmware you just compiled (openmv/firmware/OPENMV3/firmware.bin)
If you are always compressing the image at high quality and it can’t fit in our JPEG frame buffer to be sent to the PC then it will never be sent. This is normal behavior. The H7 has a lot more RAM making this not a problem but we’re pretty tight on the M7.
You are right the connexion is not lost but it is not possible to disconnect without unplugging the usb cable.
It is like the camera is too busy to answer.
Limited the quality at 90 maximum will solve the problem…