Hi,
Le jeudi 24 août 2023 à 19:03 +0200, Takashi Iwai a écrit :
- How to handle the xrun issue. pause or resume. which are brought by ALSA.
Doesn't V4L2 handle the overrun/underrun at all? Also, no resume support?
just a 2 cents comment. All our video m2m are job based. When there is no job available they stop and resume when there is more work in queues. As there is no time constraints coming from the hardware, there is also no API to know that there has been a period of time without anything being executed (under utilization). Only overrun can be detected by application, each chunk of work is in its own v4l2_buffer and the application will run out of buffer in that case, and will have to wait for free space in the queue. Understand though that the larger the queue, the large the latency. There is currently no way to submit job ahead of the data (unlike DRM subsystem).
I have slight impression that all this seems rather inefficient for high rate / small buffer. I'd suggest creating a dummy benchmark driver to verify that the overhead isn't just too much for an audio use case.
Nicolas