Nvidia 2 manual Writing a Frame Lock Client for NV-CONTROL 1.9 and later

Page 58

NVIDIA Frame Synchronization Under Linux

During operation, you can also query any of these on each X screen:

‰NV_CTRL_FRAMELOCK_PORT0_STATUS

‰NV_CTRL_FRAMELOCK_PORT1_STATUS

‰NV_CTRL_FRAMELOCK_HOUSE_STATUS

‰NV_CTRL_FRAMELOCK_SYNC_READY

‰NV_CTRL_FRAMELOCK_STEREO_SYNC

‰NV_CTRL_FRAMELOCK_ETHERNET_DETECTED

‰NV_CTRL_FRAMELOCK_SYNC_RATE

‰NV_CTRL_FRAMELOCK_TIMING

nvidia-settingsregisters a gtk+ timeout function and queries the state of these on each X screen every few seconds.

Writing a Frame Lock Client for NV-CONTROL 1.9 (and later)

These are the two major changes to frame lock configuration in NV- CONTROL 1.9:

‰Display devices (instead of X Screens) are now selected as the clients and slaves of a frame lock group.

‰Frame lock attributes should now be set/queried on Quadros

(NV_CTRL_TARGET_TYPE_GPU) and Quadro G-Sync II (frame lock) devices (NV_CTRL_TARGET_TYPE_FRAMELOCK) using the new NV- CONTROL targeting API.

See the sample NV-CONTROLclients in the samples directory for basic examples of how to use the new targeting API (nv-control-targets. c) and a basic frame lock client (nv-control-framelock.c). See the file ctkframelock.c for a much more involved example of how the nvidia- settings utility programs the frame lock attributes.

The constants referenced below are defined in NVCtrl.h.. See the comments in that file for an explanation of each attribute. It may also be useful to search the ctkframelock.c file using a grep utility to see how each attribute is used.

51

Image 58
Contents 176-0002-000 Page Page Nvidia Quadro G-Sync Page Table of Contents References and Resources Introduction to Nvidia Quadro G-Sync About This GuideNvidia Quadro G-Sync II User Guide System Requirements Implementing SLI TechnologyNvidia Frame Synchronization UnpackingNvidia Quadro G-Sync II Equipment Two 2 Ribbon CablesSafety Instructions Installing Nvidia Quadro G-Sync II Card Quadro G-Sync Nvidia Frame Synchronization Under Windows XP How To Set Up Genlock Set Up the HardwareVID IA Q uadro G-Sync Onnector Bracket Sync Source Server Set Up the Software Basic Genlock SetupDetecting the House Sync Signal Click OK to save the settingsUsing the House Sync Signal Under The synchronization pulses are based on, clickOu tgo in g Sync trigg ered from lead in g and falling ed ge Restoring an Unstable Display How To Set Up Frame LockViewing the Connection Status Er ver Basic Server Setup Set Up the Server SoftwareClick Apply Changing the Timing Signal Frequency Click Edit Settings to open the Server Settings dialog boxSet Up the Client Software Basic Client SetupIntroducing a Timing Delay at Client Systems Yn c D elay SkewSwap Sync Setup Setting Up Genlock + Frame Lock Checking the Connection Status Swap Sync Nvidia Quadro G-Sync II User Guide Nvidia Frame Synchronization Under Linux Using the nvidia-settings Utility Nvidia Q uadro G-Sync Connector Bracket Syn c Sou rce Go to the nvidia-settingsframe lock panel An X Server is typically specified in the format systemmSynchronizing to the External House Signal Ou tgo in g Sync trigg ered from lead in g and falling ed ge Understanding the Status Indicators Sync and Connection Status for the Genlock Server Four frame locked systems An X Server is typically specified in the format systemm Test the Connections Sync and Connection Status for the Server Check the Use House Sync if Present check box Leveraging Frame Lock Genlock in OpenGL Frame Lock RestrictionsSupported Frame Lock Configurations ‰ Frame Lock + SLI SFR, AFR, or Sliaa Two Quadros, SingleGeneral Steps Sample ConfigurationsGenlock Example Make sure frame lock sync is disabledQuery the enabled displays on the Quadro Check that the refresh rate is the one we wantEnable framelocking Enable use of the house sync signalConfigure the house sync signal video mode Toggle the test signalFrame Lock Example Disable frame lock‰ First display from system Enable frame lock on server Query the enabled displays on the QuadrosDisable the house sync signal on the master device Check the refresh rate is the same for all displaysEnable frame lock on slave devices Make sure frame lock is disabled for all Quadros Verify that the refresh rate is the same for all displays Writing a Frame Lock NV-CONTROL Client Enable frame lock on the slave devicesWriting a Frame Lock Client for NV-CONTROL 1.8 and earlier Framelocksyncdisable on each X screen to disable frame lock Are using a house sync. Most likely, you wantNode Most likely, you want Writing a Frame Lock Client for NV-CONTROL 1.9 and later Query the number of Quadro G-Sync II devices on Querying the Frame Lock Capabilities of a SystemConfiguring the Frame Lock Group Quadro G-Sync II device Most likely, you wantEnable frame lock on each Quadro by setting Nvctrlframelock Using a house sync. Most likely, you wantEnabling/Disabling Frame Lock Nvidia Quadro G-Sync II User Guide Using the OpenGL Extensions About Buffer Swaps Frame Synchronization Using the OpenGL ExtensionsKey Points and Definitions Buffer Swap Criteria Window Buffer SwapsFrame Counter Configuring for Swap SyncConfiguring Swap Groups Configuring Swap Barriers OpenGL Extensions‰ To bind a group to a barrier, call WglBindSwapBarrierNV GlxBindSwapBarrierNV WglJoinSwapGroupNV, glxJoinSwapGroupNVThis call binds a swap group to a barrier WglQuerySwapGroupNV GlxQuerySwapGroupNV WglQueryMaxSwapGroupsNV GlxQueryMaxSwapGroupsNVWglResetFrameCountNV,glxResetFrameCount WglQueryFrameCountNV,glxQueryFrameCountGetting Driver Updates Nvidia Quadro G-Sync II User Guide Registration, Support Warranty Registering Your Quadro SyncWarranty and Support Compliance and Certifications Copyright