Projector calibration with Nvidia GeForce GTX 980 in Linux

Hello everyone,

I am working on a vehicle simulator which is using a Linux PC to run a simulation related to Autonomous driving. In this Linux PC, 3 BenQ DLP projectors are connected with 1 Nvidia card (GeForce GTX 980). These projectors are overlapped are projecting on a curved cylindrical screen. These projectors are projecting overlapped images which needs necessary warping and blending to get 1 seamless image.

I want to ask if this could be done somehow within Nvidia GPU? Or i would be needing some warping & blending software to do that? Actually i tried finding some free, open-source Linux compatible software but unable to find one.

If warping & blending is not possible within this Nvidia GPU, can someone please recommend Linux compatible warping and blending software for cylindrical screen? I am stuck in this problem since last week but unable to find a proper solution.

Any help, suggestions are welcomed.


This can be done using metamodes. Unfortunately, I don’t know of a gui application to set this up in a comfortable way so you’ll have to fiddle with it by hand. See this for an explanation, ignore the Mosaic config (that’s for multi gpu) and just look at the metamodes for bezel correction and overlap:

Oh, I overlooked blending. Afaik, edge blending is only supported on Quadros.

Thanks for your reply. What exactly do i need to do with the code (nv-control-warpblend.c) you just referred?

Can you please clarify a little more, how this would be implemented for warping and blending in Linux?

Warp/Blend is a subject that only comes up once every two years. While the driver in general supports it and can be controlled through the nvctrl library, nobody was interested enough in this to actually implement it in a user controllable form (still, afaik). So the code sample which demonstrates the general usage with some hardcoded transformation matrix and data is the sad state-of-the-art concerning warp/blend in linux.
Compile and play with it, maybe you can make use of it in any form.