How to Increase Frame Rate?

I want to output a video from the Jetson-TX2 to a display/monitor. How do I increase the frame rate? Is there a config file or command that I can use to make this possible? Would I have to overclock the Jetson-TX2 to increase the frame rate? If so, how do I go about doing this?

Hi hsaurora,

Which frame rate is your target?? The source or the sink(display)?

“sudo ./” may help

Hi WayneWWW,

Thanks for your response! The source is my target. The display I am using is a LCOS module. I am connecting the Jetson-TX2 to the display through a HDMI cable. The display can change it’s frame rate according to the input frame rate from the CPU of the display driver. How do I go about changing the frame rate from the source?

What is the source? Could you describe your goal?

When you say “frame rate,” it sounds like you mean “display refresh rate.”

Do you want to use a custom display format, with a frame rate that is not exposed by the EDID in the display?
Or does the display not support an EDID at all?
Have you checked the Monitors control panel, if the output display mode you want is already available to select?
If you want to select it from config files instead of GUI, the file is /etc/X11/Xorg.conf.

In general, you’d tell the X windows system to tell the graphics driver to set another display format with a higher refresh rate.
Unfortunately, the nvidia graphics driver does not seem to accept these kinds of requests (I have another thread going about this.)
The way to work around that would be to create a new 128-byte data blob in EDID format, with the correct EDID checksum, and then tell the X windows system to tell the nvidia display driver to assume that those are the capabilities of the monitor.
Once you’ve done that, the Monitors control panel should let you set the appropriate output mode.

If you are referring to refresh rate this is usually a case of choosing the compatible display mode with the faster refresh modeline. In the old days this was done entirely in the “/etc/X11/xorg.conf” file…some settings are there already. Using modern cable types (basically anything except 15-pin D-sub VGA connectors) the monitor is queried by DDC/EDID and lines in that file are temporarily filled in automatically (it never goes to a file). If it is refresh rate you are interested in, what is the output of:

sudo cat /sys/kernel/debug/tegradc.1/edid

…this can be pasted into to tell you what the monitor is capable of.

Similar information (based on EDID) can be given from the local Jetson if you install packages “read-edid” and “edid-decode”:

sudo get-edid | parse-edid
sudo get-edid | edid-decode

These latter commands can offer some formatting directly compatible with xorg.conf for a monitor section; then the screen section can be used to pick the monitor modeline you are interested in (and thus the refresh rate). xrandr can be used live to change things (but it won’t stick after reboot…you can use xrandr for testing, and when satisfied, use the mode within xorg.conf…you might need to tell xorg.conf to ignore EDID).

If you already have the refresh rate you are interested in and the Jetson is not keeping up, then it is a different set of questions. Is it the refresh rate you want to change, or is the current refresh rate adequate and the GPU is falling behind?

I was just informed in the other thread that the Jetson driver just doesn’t support formats that are not in the EDID.

Thus, if your monitor does expose the format you need with the refresh rate you need, select it in the Monitors control panel (may be called Displays? Can’t check right now.)
If the mode you want is not supported in the EDID of the monitor, apparently we’re currently out of luck.

Hi WayneWWW, snarky and Linuxdev,

The source would be a video output but not specific to a specific video. For now I would like to output just the Ubuntu desktop to the Sydiant LCOS display module. I’m targeting 90-120 frames per second, as input to the LCOS driver IC. For the EDID file I would have to talk to Syndiant to see if they may have one for this specific display.

I want to be able to upgrade the overall display driver, so that if I was going to output for example the Ubuntu desktop, I would be able to output it at a higher frame rate. I suppose this would require to change the system setting more permanently or change a setting in the display driver setup. Any help would be appreciated.

Did you set the desired resolution and frame rate in the Monitors control panel?
If so, does that setting “stick” after reboot, or not?

If you cannot find the correct setting in the Monitors control panel, you must make the display that you’re using provide the format you want as an allowable mode in EDID information.
The Jetson TX2 display driver only allows you to choose between the modes the display actually says is “OK.”
If your display doesn’t have any EDID information at all, it seems a very limited display mode will be available.