Stopping capture on the USB host side after ~30 minutes seems to reset the "freeze timer". The next capture session can live the same 35-40 minutes. So constantly restarting at 30 min mark could be a workaround.
I also ran a libcamera session without JPEG encoder and uvc-gadget parts. It did not trigger the freeze, rather expectedly.
Currently the most likely culprit is the JPEG encoder:
- sensor and isp parts should have been fairly tested and debugged
- uvc-gadget would likely produce a readable kernel panic, not weird visual glitches
- JPEG encoder is getting abused in this project. I assume it's been designed to encode/decode individual images rather sparsely, not 160-200k consecutive images 60..120 frames per second.
I will try to stress-test it in isolation and see where it goes.
I also ran a libcamera session without JPEG encoder and uvc-gadget parts. It did not trigger the freeze, rather expectedly.
Currently the most likely culprit is the JPEG encoder:
- sensor and isp parts should have been fairly tested and debugged
- uvc-gadget would likely produce a readable kernel panic, not weird visual glitches
- JPEG encoder is getting abused in this project. I assume it's been designed to encode/decode individual images rather sparsely, not 160-200k consecutive images 60..120 frames per second.
I will try to stress-test it in isolation and see where it goes.
Statistics: Posted by provod — Mon Apr 15, 2024 10:17 pm