Jetson-tx2 mulitmedia api has high latency of capture and display

We test video latency on jetson-tx2 use multimedia api, it turns out the latency of the video is about 70ms. The data stream is called NVARGUS API for video capture(1080p@30fps) and called EGL for display on the LCD screen.

CameraStream* pCamStream = (CameraStream*)data;
Ins_OsalMsgHndl msgHndl = NULL;
IBufferOutputStream* stream = NULL;
int64_t delta = pCamStream->parent->getDeltaTime();

LOGDBG(TAG, "capture task%d crated, waiting startup msg.", pCamStream->streamId);
Ins_OsalTaskWaitMsg(&pCamStream->task, &msgHndl);

stream = interface_cast<IBufferOutputStream>(pCamStream->outputStream.get());
if (!stream) {
    LOGERR(TAG, "capture task%d got stream failed, quit");
    return NULL;
Buffer* buffer = stream->acquireBuffer();

DmaBuffer *dmabuf =  DmaBuffer::fromArgusBuffer(buffer);
int dmabuf_fd = dmabuf->getFd();


have any suggestions?

We have checked glass-to -glass latency and see 2-3 frame latency:
CSI latency is over 80 milliseconds...? - #4 by DaneLLL

You run in 30fps and 70ms looks close to 2-3 frame latency. The result looks expected.

Hi DaneLLL,
I want to known this latency caused by ISP or the underlying capture driver?

Please check

It is from ISP block to libargus.

Is there a way to reduce the latency (such as 1 frame) ??


We are not able to do further reduction in camera capture. You may execute sudo nvpmodel -m 0 and sudo jetson_clocks to run system at max performance. See if this brings some improvement.

run jetson_clocks has no effect

We may not be able to give further improvement on this. Your result is expected.