Hi, I have a Dm368 EVM rev G and I was wondering if anyone has tips or suggestions on reducing the latency of the encodedecode demo supplied with the board.
The majority of delay seems to come as a result of frame buffering between the capture driver and encoder, which we've calculated to be about 6 frames. Has anyone else verified that this is where the majority of latency is coming from? I've tried adjusting the following constants to reduce the amount of buffering:
NUM_CAPTURE_BUFS in capture.c, set to 3 by default.
CAPTURE_PIPE_SIZE in video.c, set to 4 by default.
DISPLAY_PIPE_SIZE in video.c, set to 7 by default.
NUM_DISPLAY_BUFS in display.c, set to 4 by default.
I can reduce CAPTURE_PIPE_SIZE to 3, DISPLAY_PIPE_SIZE to 6 and NUM_DISPLAY_BUFS to 3 and it seems to work fine, however, the latency is still noticeable, as I believe these changes are only reducing the amount of buffering by a frame or so.
Besides a slice level implementation, which we are considering implementing, are there any other recommendations on reducing the latency. Ideally, we would like ~15-20ms of latency from capture through to display, if that's even achievable with the DM368 and it's software libraries.
Thank you in advance
Derek