Zed2i frame drop when initialized at 1080p30

It seems that every time I start my Zed2i camera at 1080p30, the camera would run at 1080p15 instead. This applies to both my Python code and Zed tools like Zed Explorer.

When I start Zed Explorer, even though the drop down menus on the top left of the screen is HD1080 and 30, the “Framerate” would be 15 and “Frame drop” keeps increasing. This can be temporary fixed by switching to other resolution or framerate then change back to HD1080 and 30 then the camera will work correctly at 30 FPS. This only happens with 1080p30 as other modes run correctly at start. Also, quitting Zed Explorer and starting it again at 1080p30 will make the issue happen again.

When I test on Python, it seems that the issue also happens as well. Here is the code I used to test:

import pyzed.sl as sl


if __name__ == "__main__":
    # Create a ZED camera object
    zed = sl.Camera()

    # Set config params
    init_params = sl.InitParameters()
    init_params.camera_resolution = sl.RESOLUTION.HD1080
    init_params.camera_fps = 30

    # Open the camera
    err = zed.open(init_params)
    if err != sl.ERROR_CODE.SUCCESS:
        print("Cannot open the camera. Replug it.")
        exit(-1)

    # Grab an image
    i = 0
    image = sl.Mat()
    runtime_parameters = sl.RuntimeParameters()
    prev_timestamp = zed.get_timestamp(sl.TIME_REFERENCE.CURRENT).get_milliseconds()
    while i < 50:
        if zed.grab(runtime_parameters) == sl.ERROR_CODE.SUCCESS:
            zed.retrieve_image(image, sl.VIEW.LEFT)
            timestamp = zed.get_timestamp(sl.TIME_REFERENCE.CURRENT)
            width = image.get_width()
            height = image.get_height()
            timestamp_ms = timestamp.get_milliseconds()
            print(f"Image resolution: {width} x {height} || Image timestamp: {timestamp_ms}")
            print(f"Delta: {timestamp_ms - prev_timestamp}")
            i = i + 1
            prev_timestamp = timestamp_ms


    # Close the camera
    zed.close()

With this code, the correct timedelta for 1080p30 should be around 33 but when I run it, the delta is around 66 instead, confirming that there is an issue when the camera is initialized with 1080p30 mode. I also checked using other resolutions and framerates and they are all correct, only 1080p30 has this issue.

Could you investigate this? Thank you.
Here is my diagnostic file: link

Hi @vinhtq115,

Thank you for the details and the diagnostic file, we are currently investigating the issue and attempting to reproduce it on our end.

In the meantime, have you tried plugging the camera into another USB 3.0 port on your PC to ensure this isn’t a USB bandwidth issue?

This happened when I was plugging in the rear USB 3.2 Gen 2 port of my motherboard. Diagnostic tool said that the bandwith is ok.

My motherboard is Asrock B650M PG Riptide.

It appears that the issue does not happen in Windows 11. After choosing 1080p30 in ZED Explorer, closing and then opening it again, the frame rate stays at 30, not 15 like Ubuntu.

Hi @vinhtq115,

Thank you for reporting this, I’ve been able to reproduce it as well on Ubuntu 22.
We’ve noted the bug and will provide a fix in a future release of the ZED SDK if validated.

1 Like

This problem still exists in SDK 4.1.1 (checked with Zed Explorer).

It appears that the problem was fixed. As of v4.1.4, 1080p@30FPS works right after the camera is initialized (tested in Zed Explorer).