Documente Academic
Documente Profesional
Documente Cultură
Users Guide
TABLE OF CONTENTS
2 NVIDIA Graphics-to-SDI............................................................. 3
Feature Overview ................................................................... 3
Graphics and BNC Connections ................................................ 3
Supported SDI Signal Formats.................................................. 3
Supported SDI Color Formats................................................... 4
Supported Output Modes ....................................................... 4
Desktop Region Adjustment Capability ....................................... 4
Genlock and Frame Lock Capability .......................................... 4
Installing and Preparing the NVIDIA Quadro SDI ................................ 5
About Your NVIDIA Quadro SDI ................................................. 5
Installing the NVIDIA Quadro SDI .............................................. 6
Operating NVIDIA SDI ............................................................... 9
Understanding the Connections ............................................... 9
About the Software............................................................. 11
Recommended Operating Practices .......................................... 12
DU-05337-001_v01
NVIDIA CONFIDENTIAL
Quadro 4000/5000/6000 SDI DU-05337-001_v01 | 1
01 ABOUT NVIDIA GRAPHICS TO SDI
SerialDigitalInterface(SDI)isadigital,uncompressedhighqualityvideoformatused
forfilmandvideopostproductionandbroadcastapplications.The
NVIDIA Quadro 4000SDI,NVIDIA Quadro 5000SDIandNVIDIA Quadro 6000
SDI1convertcompositedvideoandgraphicstouncompressed8bit,10bit,or12bitSDI
output.
Forinstructionsoninstallingthegraphicscardanddrivers,refertothedocumentation
thataccompaniesyourNVIDIAQuadroSDIgraphicscard.
Other Documents
FordetailsonusingtheNVIDIAControlPanel,seetheNVIDIA Control Panel Quick Start
Guide.
1. In the rest of this document, NVIDIA Quadro SDI refers to the Quadro 4000 SDI, Quadro 5000 SDI, and
Quadro 6000 SDI products.
System Requirements
Thefollowingoperatingsystemsaresupported:
WindowsXP.
Linux
NVIDIAQuadro4000SDI,NVIDIAQuadro5000SDI,orNVIDIAQuadro6000SDI
GraphicsCard
PCIExpressMotherboard
NVIDIAProfessionalGraphicsDriver,Release256orlater
ThischapterprovidesanoverviewoftheNVIDIAgraphicstoSDIfunctionality,
describedinthefollowingsections:
FeatureOverviewonpage 3liststhehardwareconnections,supportedSDIformats,
andadditionalSDIsupportfeaturesoftheNVIDIAQuadroSDIgraphicscard.
InstallingandPreparingtheNVIDIAQuadroSDIonpage 5describeshowtoinstall
theNVIDIAQuadroSDIcardandprepareitforuse.
OperatingNVIDIASDIonpage 9providesanoverviewofSDIoperation.
Feature Overview
1080PsF@24.00Hz,23.976Hz
1080PsF@25.00Hz,29.97Hz,30Hz(SMPTE274)
1080p@23.976Hz,24.00Hz,25.00Hz,29.97Hz,30.00Hz(SMPTE274)
2048x1080p@23.976Hz,24.00Hz,25.00Hz,29.97Hz,30.00Hz,47.96Hz,48Hz,
60Hz(SMPTE272)
Cards
TheNVIDIAQuadroSDIconsistsofthefollowingtwocards:
NVIDIAQuadro4000,Quadro5000,orQuadro6000graphicscard
NVIDIASDIOutputCard
Cables
Inaddition,youneedthefollowingcables,whichshouldbeprovidedwithyourNVIDIA
QuadroSDIpackage:
(Qty1ea.)14PinRibbonCable
ThiscableconnectstheNVIDIAQuadro4000/5000/6000cardtotheSDIOutputcard
forgenlockandframelockfunctionality.
(Qty1ea.)DVItoDVICable
ThiscableconnectsthevideooutputfromthegraphicscardtotheSDIoutputcard.
5 Closethechassiscover.
Quadro 5000/6000
DVI Connector
SDI-Output Card
DVI Connector
2 Connectyourdisplaytooneoftheavailabledigitalconnectorsonthegraphicscardas
showninFigure2.3.YoumayneedaVGADPorDVIDPdisplaydongle.
Quadro 4000
Available Digital Connectors
Quadro 5000/6000
Available Digital Connectors
IfyouwillbeinstallingnewgraphicsdriversfortheNVIDIAQuadroSDIcard,itis
highlyrecommendedthatyouuninstallanypreviousversionoftheNVIDIAgraphics
driversoftwarebeforeinstallingupdatedgraphicsdrivers.
1 FollowtheinstructionsontheNVIDIA.comWebsitedriverdownloadpagetolocate
theappropriatedrivertodownload,basedonyourhardwareandoperatingsystem.
2 Clickthedriverdownloadlink.
Thelicenseagreementdialogboxappears.
3 ClickAcceptifyouacceptthetermsoftheagreement,theneitheropenthefileorsave
thefiletoyourPCandopenitlater.
OpeningtheEXEfilelaunchestheNVIDIAInstallShieldWizard.
4 FollowtheinstructionsintheNVIDIAInstallShieldWizardtocompletethe
installation.
- or -
RefertoFigure2.4.
4:4:4/4:2:2:4/4:4:4:4duallinksignalsaresenttotheFILLandKEYconnectors.
4:2:2singlelinksignalsaresenttotheFILLconnectoronly.
Inapplicationcontrolmode,usingtheAPIs,anadditional4:2:2signalcanbesentto
theKEYconnector.
GraphicstoSDIfunctionalitycanbesetupandcontrolledintwobasicwaysusingthe
NVIDIAControlPanelfor8bitSDIoutputfromthedesktop,orusingtheNVIDIASDI
APIfor8,10,or12bitSDIoutputfromanapplication.
TheSDIapplicationprogramminginterfaceallowsOpenGLapplicationstohavefulland
exclusivecontroloftheSDIoutput.
WhentheSDIoutputisunderapplicationcontrol,youcanviewtheSDIhardwarestatus
usingtheNVIDIAControlPanelSendgraphicstoSDIouputpage.
SeethechapterAPIControlonpage 42foradescriptionofthegraphicstovideo
outAPIcalls.
Also,refertothedocumentProgramming NVIDIA Quadro SDIforinstructionsonusing
theAPIs.
WhentheSDIoutputisnotbeingcontrolledbyanapplication,theSDIsoftwareworks
ontopofexistingapplications,andtheactiveworkstationdesktoporfullscreen
applicationdisplayisautomaticallyforwardedtotheSDIvideooutputs.Thisis
accomplishedundereitherCloneorDualviewmode.
Inthismode,youcanusetheNVIDIAGraphicstoSDIpropertypageto
Configuretheexternalsynchronizationsignalifneeded.
SpecifytheSDIsignalformat,outputformat,andthenenabletheSDIoutput.
FordetailedinstructionsunderWindows,seethechapterWindowsUsingthe
GraphicstoSDIControlPanelonpage 14.
FordetailedinstructionsunderLinux,seethechapterLinuxUsingtheGraphicsto
VideoOutControlPanelonpage 28.
WhenstartingalivebroadcastofSDIvideo,followthesequencebelowtoensureproper
allocationofsystemresourcesandtopreventvisualdisturbancesintheonairbroadcast.
1 SetuptheSDIformatsettingsandstarttheSDIoutput
2 Starttheapplicationtobebroadcast
3 Verifythevideoquality
4 ClosetheGraphicstoSDIcontrolpanel
5 Goonair
Toavoidvisualdisturbanceswhilebroadcastinglive,DONOT
Startorstopthegraphicsorvideoapplication
TurnonorofftheSDIoutput
MakechangestotheSDIsignalformat
Changing Applications
Toavoidvisualdisturbanceswhileswitchingapplications,observethefollowing
sequence:
1 Stopthelivebroadcast(gooffair)
2 Stoptheapplication
3 Startthenewapplication
4 Verifyvideoquality
5 Resumethelivebroadcast
WhenchanginganyoftheSDIsettings,visualdisturbancesmightoccurasthevideo
resetstothenewsettings.Topreventsuchdisturbancesfrombeingvisibletothepublic
orfrombeingrecorded,observethefollowingsequencewhenmakingchangestoany
SDIsetting:
1 Stopthelivebroadcast(gooffair)
2 ChangevideoformatorSDIsettings
3 Verifyvideoquality
4 Resumethelivebroadcast
NVIDIArecommendsthefollowing
SetthedesktoptothesameorhigherresolutionthantheSDIoutputforbetterimage
quality.
Closeallbackgroundapplicationssuchasvirusscan,backup,andarchiving
applicationsbeforestartingtheSDIoutputandgoingonair.
ClosetheDisplayPropertiespanelbeforegoingonair.
WhenrunningmultipleOpenGLapplications,tearingmayoccuriftheapplications
arenotsynchronized.
Ingeneral,NVIDIAdoesnotrecommendrunningmultipleOpenGLapplications
whenstartingtheSDIoutputorwhengoinglive.
Tomaximizethesystemresourcesandbandwidthavailableforconvertinggraphicsto
SDIoutput,NVIDIArecommendsbroadcastingonlyoneOpenGLapplicationatatime.
ThischapterexplainshowtosetuptheNVIDIAQuadroSDIgraphicscardforWindows
underCloneorDualviewmodeusingtheNVIDIAControlPanelSendGraphicsto
SDIoutputpage.Itcontainsthefollowingsections:
HowtoSetUptheGraphicstoSDIOutputonpage 15providesstepbystep
instructionsforusingthecontrolpaneltosetuptheSDIoutput.
AdvancedAdjustmentsonpage 20explainsadditionaladjustmentsyoucanmake
totheSDIoutput.
AboutDualviewModeonpage 23
EnablingMultipleSDICardsonpage 24
AllowingApplicationControloftheSDIOutputonpage 25
1 FromtheNVIDIAControlPanelnavigationtreepane,underWorkstation,clickSend
graphicstoSDIoutput.
2 IfyouareusingmorethanoneNVIDIAQuadroSDIcard,underSelectadisplayto
configureSDIoutputclickthedisplayiconcorrespondingtothedisplayyouwant
toconfigure,thenfollowtheremaininginstructionsforthatdisplay.
ThisoptiondoesnotappearifyoursystemcontainsonlyoneNVIDIAQuadroSDI
card.
IfthisoptiondoesnotappearandyoursystemdoescontainmorethanoneNVIDIA
QuadroSDIcard,seeEnablingMultipleSDICardsonpage 24forinstructionson
enablingthecards.
3 UnderSendSDIoutputusing,selecttheSDIoutputmodethatyouwanttouse.
Clonemode:InClonemode,theSDIoutputisacloneofthedisplayoutput.
Dualviewmode:InDualviewmode,youcandefineonelargedesktopthat
extendsfromthedisplaytotheSDIoutput.Thisletsyoumovewindowsbetween
theSDIoutputandthegraphics(DVI)displaypartoftheextendeddesktop.
DonotsendSDIoutput:Withthisoption,nosignalissenttotheSDIoutput.The
remainingcontrolsonthepagearedisabled.Choosethisoptionifyouwantan
applicationtocontroltheSDIoutput.Oncetheapplicationisrunning,thispage
doesnotletyouchangethesettings,butonlyshowsthesettingsestablishedbythe
application.
4 ClicktheSDISettingsbartoopentheSDISignalSettingsdialogbox.
5 ChooseamethodfordeterminingtheformatoftheSDIoutputeitherusinginternal
timingorsynchronizedtoanexternalsignalsource.
Touseinternaltiming,selectFreerunning(internaltiming),thenclickthelist
arrowandchoosefromthelistofavailableSDIsignalformats.
Tosynchronizetoanexternalsignalsource,makesurethehousesyncisconnectedto
theINPUTBNCconnectoronthegraphicscard,thenselecttheSynchronizedtoa
housesyncsignalradiobuttionandsetupthesynchronizationandsignalformats
asfollows:
SelecttheHousesynctyperadiobutton(SDIorComposite)thatcorrespondsto
thesyncsignaltypeyouareusing.
TosynchronizethepixelscanningoftheSDIoutputtotheexternalsignalusing
genlock,selectPixelaccuratesynchronization.
TosynchronizetheframerateoftheSDIoutputtotheexternalsignalusingframe
lock,selectFrameaccuratesynchronizationusingthisformat,thenclickthe
listarrowandchoosefromthelistofavailableSDIsignalformats.
TointroduceadelayintheSDIoutput,enterthepixelorlinedelayvaluesinthe
appropriateHSYNCorVSYNCdelayboxes.
SeeSynchronizingtheSDIOutputtoanExternalSourceonpage 18foradditional
information.
6 ChecktheTerminatetheanalogsignalatthisconnectorcheckboxif
thesystemisastandalonesystemsynchronizedtoahousesyncsignal,or
thesystemisthelastinachainofsystemsconnectedtothesamehousesyncsignal.
7 ChoosetheSDIoutputdataformatbyclickingtheSDIoutputformatlistarrowand
thenselectingfromthelistofavailablecolorformats.
8 ClickOKwhendonetoclosethedialogbox.
9 ClickApply.
TheGraphicstoSDIpageprovidestwomethodsforsynchronizingtheSDIoutputtoa
commonsyncsourcepixelaccurateorframeaccuratesynchronization.
PixelaccuratesynchronizationsynchronizesthepixelscanningoftheSDIoutput
tothehousesyncsignal.Whenusingpixelaccuratesynchronization,theSDIrefresh
rateisdeterminedbythesyncsignal.
FrameaccuratesynchronizationsynchronizestheframerateoftheSDIoutputto
thehousesyncsignal.ThesyncsignaldeterminestheavailableSDIsignalformats.
TheNVIDIAdriversupportsthefollowingexternalsynchronizationsignaltypes:
SDI
CompositeBilevel(NTSCorPALsourcesusebilevelcompositesignals.)
CompositeTrilevel(HDTVsourcescommonlyusetrilevelcompositesignals.)
Touseanexternalsyncsource:
1 ConnectthesyncsignaltotheINPUTBNCconnector.
Youcanconnectmultiplesystemstothesamehousesyncbydaisychainingthehouse
synccabletoeachcardusingBNCTconnectors.
2 FollowtheinstructionsinBasicSDISetupforsettingupyourSDIsystemtousethe
externalsyncsignal.
Thedriverwillnotdetectavalidsyncsignaluntilthecorrectsignaltypeisconfigured
intheNVIDIAControlPanel.
TheactivityoftheLEDsindicatesthesignalstatusasfollows:
FILLorKEYOut
Status Meaning
Off (gray) SDI output is not in use
Steady Green SDI output has power.
Blinking Green SDI output is active.
Input
Status Meaning
Off (gray) SDI input synchronization is disabled.
Blinking Green Valid SDI synchronization signal is detected.
Advanced Adjustments
Thissectiondescribesthefollowingadditionalsettingsthatyoucancontrolusingthe
GraphicstoSDIOutputpage:
AdjustingtheDesktopAreaonpage 20
ApplyingGammaCorrectiononpage 21
SettingUptheColorSpaceConversiononpage 22
SynchronizingtheSDIOutputtoanExternalSourceonpage 18
Insteadofusingtheentiredesktop,youcanspecifyaregionofthedesktoptoconvertto
SDIoutputasfollows:
1 FromtheNVIDIAControlPanelnavigationtreepane,underWorkstation,clickSend
graphicstoSDIoutput.
2 ClicktheChangeDesktopRegionbar.
TheNVIDIAControlPanelminimizesandtheSDIOutputdialogboxappears.
Superimposedoverthedesktopisarectangularoutlinethatshowstheregionthatwill
beusedfortheSDIoutput.
3 ClicktheSelectRegiontouseoption.
4 Adjusttheregionsize.
Clickanddragwithintherectangularoutlinetoadjustitspositiononthedesktop.
Clickanddragtheappropriatecornerorsidehandlestoresizetheoutline.
YoucanalsoadjusttheregionsizebyspecifyingtheX,Y,Width,andHeight
valuesintheSDIOutputdialogbox.
Eitherenterpixelvaluesdirectlyintothecorrespondingtextboxesorclicktheup
anddownarrowsbytheappropriatebox.
TheXandYvaluesindicatethedistance,inpixels,betweentheupperleftcornerof
thedesktopandtheupperleftcorneroftheoutputbox.
5 ClickOKwhenfinished.
Thedesktopgraphicimageshowsathumbnailpreviewofthedesktopregionthatyou
havesetupforSDIoutput.
3 SpecifytheRGBGammavaluesusingoneormoreofthefollowingmethods,then
clickOKwhenfinished:
ClickanddrageachR,G,orBslidertotheappropriatevalue.
EntertheR,G,orBvalueintherespectiveboxesorusetheupanddownarrows.
Tokeepallgammachannelsatthesamevaluewhileyouadjustthemsimultaneously,
clicktheLockallchannelscheckbox.
4 CheckOverridethedefaultcolorspaceconversion.
5 ClicktheInitializethecolorspaceconversionmatrixwithlistarrowandthenclickone
ofthepredefinedcolorspacestandardstouseasastartingpoint.
6 Ineachcolorspacetextbox,eitherentervaluesdirectlyorusethecorrespondingup
anddownarrowstochangethevalues.
7 ClickOKwhenfinished.
UnderDualviewmode,youcandefineonelargedesktopthatextendsfromthedisplay
totheSDIoutput.ThisletsyoumovewindowsbetweentheSDIoutputandthegraphics
(DVI)displaypartoftheextendeddesktop.
WithapplicationsthatusevideooverlayorMicrosoftVMR,youcanalsodisplaythe
videofullscreenontheSDIoutput.
Areadisplayedonprimarydisplay AreadisplayedontheSDIoutput
UseFullScreenVideoMirrortopresent
avideooverlayorMicrosoftVMRvideo
fullscreenontheSDIoutput.
Applicationwindowscanbedragged
fromonedisplaytotheother.
ThedisplayandtheSDIoutputdonotneedtobethesameresolutionandrefreshrate.
ToenablemultipleSDIcards
1 MakesureadisplayisconnectedtoeachSDIcardthatyouwanttoenable.
2 OpentheWindowsDisplayPropertiespage.
a Rightclickthedesktop,thenclickPropertiesfromthepopupmenu.
b ClicktheSettingstab.
3 Determinewhichmonitoriconcorrespondstothegraphicscardthatyouwantto
enable.
Thereshouldbetwomonitoriconsforeachgraphicscardinthesystem.Typically,
monitors1and3areconnectedtoonegraphicscardandmonitors2and4are
connectedtotheother.Forexample,ifmonitor1isalreadyattached,thenmonitor2
wouldbegrayedout,indicatingthatitisconnectedtothegraphicscardthatisnotyet
enabled.
4 Rightclickthegrayedoutmonitoriconcorrespondingtothegraphicscardyouwant
toenable,thenclickAttachedfromthepopupmenu.
or
Clickthemonitoricon,thenclicktheExtendmyWindowsdesktopontothismonitor
checkbox.
5 ClickOK.
YoucannowconfiguretheSDIoutputforeachSDIcardasdescribedinBasicSDISetup.
OpentheViewSystemTopologypage(seeViewingtheSDIConnectionStatusUsing
theTopologyVieweronpage 27)toverifyyourdisplaytographicscardconnections.
ToallowapplicationstocontroltheSDIoutput
ToviewtheSDIstatus,opentheNVIDIAControlPanelandclickSendgraphicstoSDI
outputfromtheSelectaTaskpane.
TheViewSystemTopologypageprovidesSDIstatusinformationforeachdisplay,the
graphicscardtoSDIcardpairing,andtheconnectionstatusinformationforthe
NVIDIAQuadroSDIcards.Inadditiontoviewingstatusinformation,youcanalso
changevarioussettingsusingtheViewSystemTopologypage.
ToviewthesystemtopologyforyourgraphicstoSDIsetup,
1 FromtheNVIDIAControlPanelSelectaTaskpane,underWorkstation,clickView
systemtopology.
2 Clickanyoftheiconstoviewconnectionandsignalstatusdetails.
3 YoucanalsorightclicktheSDIoutputcardicontoaccessthecontextmenuwhere
youcanopentheSDIsignalsettingsorcolorsettingsdialogboxes.
ThischapterexplainshowtosetuptheNVIDIAQuadroSDIgraphicscardsunderLinux
usingtheNVIDIAGraphicstoVideoOutpropertiespage1.
Itcontainsthefollowingsections:
HowtoSetUptheSDIOutputonpage 28providesstepbystepinstructionsfor
usingthecontrolpaneltosetuptheSDIoutput.
AdvancedSetupsonpage 36explainsothercontrolsthatareavailablebesidesthe
basicsetupcontrols.
1. This method of controlling the SDI output is also known as transparent mode.
OpenGLapplicationcontrol:TheSDIapplicationprogramminginterfaceallows
OpenGLapplicationstohavefullandexclusivecontroloftheSDIoutput.
Tousethismode,runanapplicationthatuseseitherSDIAPIstomakeuseoftheSDI
device.
TheGraphicstoVideoOutpageappears.
2 FromtheSyncOptionsgroupbox,clicktheSyncModelistarrowandthenclickthe
methodyouwanttousetosynchronizetheSDIoutput:
FreeRunning:TheSDIoutputwillbesynchronizedwiththetimingchosenfrom
theSDIsignalformatlist.
Genlock:TheSDIoutputwillbesynchronizedwiththeexternalsyncsignal.
FrameLock:TheSDIoutputwillbesynchronizedwiththetimingchosenfrom
theSDIsignalformatlist.
Thislistislimitedtotimingsthatcanbesynchronizedwiththedetectedexternalsync
signal.
3 ChecktheEnableCompositeTerminationcheckboxif
thesystemisastandalonesystemsynchronizedtoahousesyncsignal,or
thesystemisthelastinachainofsystemsconnectedtothesamehousesyncsignal.
Formoreinformationregardinggenlockandframelock,seethesectionSynchronizing
theSDIOutputtoanExternalSourceonpage 39.
2 Specifythevideoformat.
ClicktheVideoFormatarrowandthenclickthesignalformatyouwanttouse.
VideoFormatcontrolsthevideoresolution,fieldrate,andSMPTEsignalling
standardfortheoutgoingvideostream.
Note:OnlythoseresolutionsthatyourmonitorsupportsappearintheVideoFormatlist.
YouroptionsforthissettingalsodependonwhichSyncoptionyouchoseinthe
previousstep.
Ifyouchosegenlock synchronization,thesyncsourcecontrolstheoutputvideo
format.Thelistboxwillbegrayedout,preventingyoufromchoosinganother
format.
Ifyouchoseframe lock synchronization,onlythosemodesthatarecompatiblewith
thedetectedsyncsignalwillappearintheOutputVideoFormatlist.
3 SpecifytheDataFormat
ClicktheOutputDataFormatarrowandthenclickthecolorformatyouwanttouse.
DataFormatcontrolsthecolormodel,datapacking,andalphaorzcomponentsin
theoutgoingvideostream.
ClickEnableCloneMode.
2 ClickXServerDisplayConfigurationfromthesideviewmenutreeandthen
configurethedisplayforDualviewmode.
orxscreenmode
TheSyncOptionspageappears.
2 FromtheSyncOptionsgroupbox,clicktheSyncModelistarrowandthenclickthe
methodyouwanttousetosynchronizetheSDIoutput:
FreeRunning:TheSDIoutputwillbesynchronizedwiththetimingchosenfrom
theSDIsignalformatlist.
Genlock:TheSDIoutputwillbesynchronizedwiththeexternalsyncsignal.
FrameLock:TheSDIoutputwillbesynchronizedwiththetimingchosenfrom
theSDIsignalformatlist.
Thislistislimitedtotimingsthatcanbesynchronizedwiththedetectedexternalsync
signal.
Formoreinformationregardinggenlockandframelock,seethesectionSynchronizing
theSDIOutputtoanExternalSourceonpage 39.
2 SpecifytheDataFormat
ClicktheOutputDataFormatarrowandthenclickthecolorformatyouwanttouse.
DataFormatcontrolsthecolormodel,datapacking,andalphaorzcomponentsin
theoutgoingvideostream.
Note:Thevideoformatshouldalreadyhavebeensetupfromthedisplayconfigurationscreen.
Advanced Setups
ThissectiondescribesthefollowingSDIcontrolsandsupplementalinformation:
UnderstandingtheStatusIndicatorsonpage 37
AdjustingtheDesktopAreaonpage 38
CustomizingtheColorSpaceConversiononpage 38
SynchronizingtheSDIOutputtoanExternalSourceonpage 39
TheactivityoftheLEDgraphicsindicatesthesignalstatusasfollows:
Vid.1OutorVid.2Out
Status Meaning
Off (gray) SDI output is not in use
Steady Green SDI output has power.
Blinking Green SDI output is active.
Input
Status Meaning
Off (gray) SDI input synchronization is disabled.
Blinking Green Valid SDI synchronization signal is detected.
OnthemainGraphicstoVideoOutpage,adjusttheregionsizebyspecifyingtheX
OffsetandYOffsetvalues.TheXandYvaluesindicatethepixeldistanceoftheupper
leftcorneroftheoutputboxfromtheupperleftcornerofthedesktop.
TheColorSpaceConversionpageappears.
2 CheckOverridedefaultColorSpaceConversion.
3 ClicktheInitializeColorSpaceConversionwithlistarrowandthenclickoneof
thestandardstouseasastartingpoint:ITU601,709,177,orIdentity.
4 Eitherentervaluesdirectlyinthetextboxesorusethecorrespondingupanddown
arrowstochangeanyofthesettings.
5 ClickApplytoapplythesettings.
Toapplythesettingsasyouchangethem,checkApplyChangesImmediately.
TheGraphicstoSDIpageprovidestwomethodsforsynchronizingtheSDIoutputtoa
commonsyncsourceGenlockandFramelock.
Using Genlock
GenlocksynchronizesthepixelscanningoftheSDIoutputtoanexternal
synchronizationsource.
Whenusinggenlock,theSDIrefreshrateisdeterminedbythesyncsource,soany
refreshratesthatyoumayhavechosenintheOutputVideoFormatlistdonotapply.
FramelocksynchronizestheframerateoftheSDIoutputtoanexternalsynchronization
source.
Whenusingframelock,onlymodesthatarevalidfortheframerateofthesyncsource
canbeusedfortheSDIoutput.ThevalidmodeswillappearintheOutputVideo
Formatlist.
NVIDIAGenlocksupportsthefollowingexternalsynchronizationsignaltypes:
SDI
CompositeBilevel(NTSCorPALsourcesusebilevelcompositesignals.)
CompositeTrilevel(HDTVsourcescommonlyusetrilevelcompositesignals.)
Synchronization Instructions
Basic Setup
ThefollowingarethebasicstepstosynchronizetheSDIoutput.
1 ConnecttheexternalsyncsourcetotheappropriateBNCconnectoronthegraphics
card.
SeeUnderstandingtheConnectionsonpage 9forinstructionsonconnectingthe
externalsyncsignaltothegraphicscard.
2 Configurethesyncsource.
a OpentheGraphicstoVideoOut:SynchronizationOptionspage.
c ClicktheSyncFormatlistarrowandthenclicktheformatthatmatchesexternal
syncsourcethatyouconnectedSDISyncorComposite.
Thesoftwareshouldautomaticallydetecttheexternalsyncsignal.Whenitdoes,
thesyncformatinformationappearsintheInputVideoFormattextbox.
Ifthesoftwarelosestheexternalsyncsignalordoesnotdetectit
automatically,clickDetecttoforcedetectionofthesyncsignal.
d Ifyouchoseframelocksynchronization,selectthesignalformatyouwanttouseas
describedunderStep3:ChoosetheVideoandDataFormats.
Onlythosemodesthatarecompatiblewiththedetectedsyncsignalwillappearin
theSDIsignalformatlist.
YoucanintroduceaslightdelayinthegenlockedorframelockedSDIoutput.For
example,ifdeliveryofvideofromotherequipmentisdelayedbecauseofgreatercable
length,youcanintroduceadelayintheSDIoutputfromthiscardsothatbothdeliveries
areinsync.Tointroduceasynchronizationdelay:
1 OpentheGraphicstoVideoOutpageandclickSynchronizationOptions.
2 IntheSynchronizationDelaygroupbox,introducedelaysintheHSYNCandVSYNC
signalsasneededbyclickingtheappropriateupanddownarrows.
Youcanalsoentervaluesdirectlyintothetextboxes.
TheSDIapplicationprogramminginterfaceallowsOpenGLorDirect3Dapplicationsto
havefullandexclusivecontroloftheSDIoutput.ThismethodofcontrollingtheSDI
outputisalsoknownasextendedmode.
ThischaptergivesabriefintroductiontothismethodofimplementinggraphicstoSDI,
andincludesthefollowingsections:
SDIApplicationProgrammingOverviewonpage 43
WindowsXPNvGvoAPIDescriptiononpage 44
LinuxCONTROLXExtensionAPIonpage 72
RefertothefollowingdocumentsforadditionalinformationonusingtheAPIs:
Programming NVIDA Quadro SDI
The NVGVOSDK,whichcanbeobtainedfromNVIDIA.
UnderWindowsXP
DevicecontrolishandledbytheNvGvoAPI,describedinthischapter.
DatatransferoperationsareperformedbytheOpenGLextension
WGL_NV_video_out.
UnderLinux
DevicecontrolishandledbytheNVCONTROLXextension,describedinthis
chapter.
DatatransferoperationsareperformedbytheOpenGLextension
GLX_NV_video_output.
NvGvoCaps()
//---------------------------------------------------------------------
// Function: NvGvoCaps
//---------------------------------------------------------------------
NvGvoOpen()
//---------------------------------------------------------------------
// Function: NvGvoOpen
//---------------------------------------------------------------------
NvGvoClose()
//---------------------------------------------------------------------
// Function: NvGvoClose
//---------------------------------------------------------------------
NvGvoDesktopOpen()
//---------------------------------------------------------------------
// Function: NvGvoDesktopOpen
//---------------------------------------------------------------------
NVGVOHANDLE* phGvoHandle
OUT);
NvGvoDesktopClose()
//---------------------------------------------------------------------
// Function: NvGvoDesktopClose
// NvGvoDesktopClose)
//---------------------------------------------------------------------
NvGvoStatus()
//---------------------------------------------------------------------
// Function: NvGvoStatus
//---------------------------------------------------------------------
NvGvoSyncFormatDetect()
//---------------------------------------------------------------------
// Function: NvGvoSyncFormatDetect
// syncFormat.
//---------------------------------------------------------------------
NvGvoConfigGet()
//---------------------------------------------------------------------
// Function: NvGvoConfigGet
//---------------------------------------------------------------------
NvGvoConfigSet()
//---------------------------------------------------------------------
// Function: NvGvoConfigSet
//---------------------------------------------------------------------
NvGvoIsRunning()
//---------------------------------------------------------------------
// Function: NvGvoIsRunning
//---------------------------------------------------------------------
NvGvoStart()
//---------------------------------------------------------------------
// Function: NvGvoStart
//---------------------------------------------------------------------
NvGvoStop()
//---------------------------------------------------------------------
// Function: NvGvoStop
//---------------------------------------------------------------------
NvGvoEnumSignalFormats()
//---------------------------------------------------------------------
// Function: NvGvoEnumSignalFormats
//---------------------------------------------------------------------
NvGvoIsFrameLockModeCompatible()
//---------------------------------------------------------------------
// Function: NvGvoIsFrameLockModeCompatible
//---------------------------------------------------------------------
NvGvoEnumDataFormats()
//---------------------------------------------------------------------
// Function: NvGvoEnumDataFormats
//---------------------------------------------------------------------
Miscellaneous Defines
// NVGVOOWNERID_NONE)
};
enum NVGVOSIGNALFORMAT
// NTSC
// PAL
};
enum NVVIDEOSTANDARD
NVVIDEOSTANDARD_SMPTE259 , // SMPTE259
NVVIDEOSTANDARD_SMPTE260 , // SMPTE260
NVVIDEOSTANDARD_SMPTE274 , // SMPTE274
NVVIDEOSTANDARD_SMPTE295 , // SMPTE295
NVVIDEOSTANDARD_SMPTE296 , // SMPTE296
NVVIDEOSTANDARD_SMPTE372 , // SMPTE372
};
enum NVVIDEOTYPE
};
enum NVINTERLACEMODE
NVINTERLACEMODE_PROGRESSIVE , // Progressive
(p)
NVINTERLACEMODE_INTERLACE , // Interlace
(i)
};
enum NVGVODATAFORMAT
NVGVODATAFORMAT_UNKNOWN = -1 ,
NVGVODATAFORMAT_R8G8B8Z10_TO_YCRCBZ4444 , // R8:G8:B8:Z10
NVGVODATAFORMAT_R8G8B8Z10_TO_YCRCBZ4224 , // R8:G8:B8:Z10
NVGVODATAFORMAT_Y10CR10CB10_TO_YCRCB444 , // Y10:CR10:CB10
NVGVODATAFORMAT_Y10CR8CB8A10_TO_YCRCBA4444 , // Y10:CR8:CB8:A10
NVGVODATAFORMAT_Y10CR8CB8Z10_TO_YCRCBZ4444 , // Y10:CR8:CB8:Z10
NVGVODATAFORMAT_DUAL_R8G8B8_TO_DUAL_YCRCB422 , // R8:G8:B8 +
R8:G8:B8
NVGVODATAFORMAT_DUAL_Y8CR8CB8_TO_DUAL_YCRCB422 , // Y8:CR8:CB8 +
Y8:CR8:CB8
NVGVODATAFORMAT_Y12CR12CB12_TO_YCRCB444 , // Y12:CR12:CB12
NVGVODATAFORMAT_Y12CR12CB12_TO_YCRCB422 , // Y12:CR12:CB12
NVGVODATAFORMAT_Y10CR10CB10_TO_YCRCB422 , // Y10:CR10:CB10
NVGVODATAFORMAT_Y8CR8CB8_TO_YCRCB422 , // Y8:CR8:CB8
NVGVODATAFORMAT_Y10CR8CB8A10_TO_YCRCBA4224 , // Y10:CR8:CB8:A10
};
enum NVGVOOUTPUTAREA
(full size)
(safe action)
(safe title)
};
enum NVGVOSYNCSOURCE
};
enum NVGVOCOMPSYNCTYPE
NVGVOCOMPSYNCTYPE_AUTO , // Auto-detect
};
enum NVGVOOUTPUTSTATUS
};
enum NVGVOSYNCSTATUS
};
(SDI) output
synchronization input
transparent mode
application mode
struct NVGVODRIVER
{ // Driver version
};
struct NVGVOFIRMWARE
{ // Firmware version
};
struct NVGVOCAPS
char szAdapterName[NVADAPTERNAME_MAXLEN];
// (NGVOCLASS_* mask)
// (NVGVOCAPS_* mask)
DWORD dwDipSwitchReserved;
};
struct NVGVOSTATUS
};
struct NVGVOOUTPUTREGION
};
} NVGAMMARAMP8;
} NVGAMMARAMP10;
} NVGVOSYNCDELAY;
};
struct NVGVOSIGNALFORMATDETAIL
sizeof(NVGVOSIGNALFORMATDETAIL)
char szValueName[NVVALUENAME_MAXLEN];
// <name>\t<rate>\tHz\t(<standard>)[\
t<description>]
// "480i\t59.94\tHz\t(SMPTE259)\tNTSC"
// "1080i\t50.00\tHz\t(SMPTE274)"
char szAlternateName[NVVALUENAME_MAXLEN];
// "1080PsF\t25.00\tHz\t(SMPTE274)"
};
// R16FP:G16FP:B16FP:Z24
// R16FP:G16FP:B16FP:A16FP
//
R16FP:G16FP:B16FP:A16FP:Z24
struct NVGVODATAFORMATDETAIL
sizeof(NVGVODATAFORMATDETAIL)
(NVGVOCAPS_* mask)
struct
(NVGVOPBUFFERFORMAT_* mask)
char szValueName[NVVALUENAME_MAXLEN];
// <name>
// "R8:G8:B8:A8"
} in;
struct
char szValueName[NVVALUENAME_MAXLEN];
// <name>\t<format>
// "YCrCbA\t(4:2:2:4)"
} out;
};
ThesearedwFieldsmasksindicatingNVGVOCONFIGfieldstouseforNvGvoGet/Set/
Test/CreateDefaultConfig().
NVGVOCONFIG_DATAFORMAT | \
NVGVOCONFIG_OUTPUTREGION | \
NVGVOCONFIG_OUTPUTAREA | \
NVGVOCONFIG_COLORCONVERSION | \
NVGVOCONFIG_GAMMACORRECTION | \
NVGVOCONFIG_SYNCSOURCEENABLE | \
NVGVOCONFIG_SYNCDELAY | \
NVGVOCONFIG_COMPOSITESYNCTYPE | \
NVGVOCONFIG_FRAMELOCKENABLE | \
NVGVOCONFIG_422FILTER | \
NVGVOCONFIG_COMPOSITETERMINATE | \
NVGVOCONFIG_DATAINTEGRITYCHECK | \
NVGVOCONFIG_CSCOVERRIDE | \
NVGVOCONFIG_FLIPQUEUELENGTH | \
NVGVOCONFIG_ANCTIMECODEGENERATION | \
NVGVOCONFIG_COMPOSITE | \
NVGVOCONFIG_ALPHAKEYCOMPOSITE | \
NVGVOCONFIG_COMPOSITE_Y | \
NVGVOCONFIG_COMPOSITE_CR | \
NVGVOCONFIG_COMPOSITE_CB)
{ //
// Input[2] * colorMatrix[n][2] +
// OutputRange * colorOffset[n]
};
DWORD dwRange;
BOOL bEnabled;
DWORD dwMin;
DWORD dwMax;
} NVGVOCOMPOSITERANGE;
} gammaCorrection;
} NVGVOCONFIG;
NV-Control X Functions
XNVCTRLQueryExtension()
Bool XNVCTRLQueryExtension (
Display *dpy,
int *event_basep,
int *error_basep
);
ThisfunctionreturnsTrueiftheextensionexists,Falseotherwise.event_basepand
error_baseparetheextensioneventanderrorbases.Currently,noextensionspecific
errorsoreventsaredefined.
XNVCTRLQueryVersion()
Bool XNVCTRLQueryVersion (
Display *dpy,
int *major,
int *minor
);
ThisfunctionreturnsTrueiftheextensionexists,Falseotherwise.majorandminor
aretheextensionsmajorandminorversionnumbers.
XNVCTRLIsNvScreen()
Bool XNVCTRLIsNvScreen (
Display *dpy,
int screen
);
ThisfunctionreturnsTrueisthespecifiedscreeniscontrolledbytheNVIDIAdriver,
otherwiseFalse.
XNVCTRLSetAttribute()
void XNVCTRLSetAttribute (
Display *dpy,
int screen,
unsigned int display_mask,
unsigned int attribute,
int value
);
Thisfunctionsetstheattributetothegivenvalue.Notallattributesrequirethe
display_maskparameter.SeeNV_CTRL_GVOAttributesonpage 79fordetails.
Possibleerrors:
BadValueThescreenorattributedoesntexist.
BadMatchTheNVIDIAdriverisnotpresentonthatscreen.
XNVCTRLSetAttributeAndGetStatus()
Bool XNVCTRLSetAttributeAndGetStatus (
Display *dpy,
int screen,
unsigned int display_mask,
unsigned int attribute,
int value
);
ThisfunctionisthesameasXNVCTRLSetAttribute(),andreturnsTrueiftheoperation
succeeds,otherwiseFalse.
XNVCTRLQueryAttribute()
Bool XNVCTRLQueryAttribute (
Display *dpy,
int screen,
unsigned int display_mask,
unsigned int attribute,
int *value
);
ThisfunctionreturnsTrueiftheattributeexists,otherwiseFalse.
IfXNVCTRLQueryAttributereturnsTrue,valuewillcontainthevalueofthespecified
attribute.Notallattributesrequirethedisplay_maskparameter.SeeNV_CTRL_GVO
Attributesonpage 79fordetails.
Possibleerrors:
BadValueThescreendoesntexist.
BadMatchTheNVIDIAdriverisnotpresentonthatscreen.
XNVCTRLQueryStringAttribute()
Bool XNVCTRLQueryStringAttribute (
Display *dpy,
int screen,
unsigned int display_mask,
unsigned int attribute,
char **ptr
);
ThisfunctionreturnsTrueiftheattributeexists,otherwiseFalse.
IfXNVCTRLQueryStringAttributereturnsTrue,*ptrwillpointtoanallocatedstring
containingthestringattributerequested.Itisthecallersresponsibilitytofreethestring
whendone.
Possibleerrors:
BadValueThescreendoesntexist.
BadMatchTheNVIDIAdriverisnotpresentonthatscreen.
BadAllocInsufficientresourcestofulfilltherequest.
XNVCTRLSetStringAttribute()
Bool XNVCTRLSetStringAttribute (
Display *dpy,
int screen,
unsigned int display_mask,
unsigned int attribute,
char *ptr
);
ReturnsTrueiftheoperationsucceeded,otherwiseFalse.
PossibleXerrors:
BadValueThescreendoesntexist.
BadMatchTheNVIDIAdriverisnotpresentonthatscreen.
BadAllocInsufficientresourcestofulfilltherequest.
XNVCTRLQueryValidAttributeValues()
Bool XNVCTRLQueryValidAttributeValues (
Display *dpy,
int screen,
unsigned int display_mask,
unsigned int attribute,
NVCTRLAttributeValidValuesRec *values
);
ThisfunctionreturnsTrueiftheattributeexists.otherwiseFalse.If
XNVCTRLQueryValidAttributeValuesreturnsTrue,valueswillindicatethevalidvalues
forthespecifiedattribute.
SeethedescriptionofNVCTRLAttributeValidValuesinNVCtrl.h.
XNVCTRLSetGvoColorConversion()
void XNVCTRLSetGvoColorConversion (
Display *dpy,
int screen,
float colorMatrix[3][3],
float colorOffset[3],
float colorScale[3]
);
Thisfunctionsetsthecolorconversionmatrix,offset,andscalethatshouldbeusedfor
GVO(GraphictoVideoOut).
TheColorSpaceConversiondataisorderedasfollows:
colorMatrix[0][0]//r.Y
colorMatrix[0][1]//g.Y
colorMatrix[0][2]//b.Y
colorMatrix[1][0]//r.Cr
colorMatrix[1][1]//g.Cr
colorMatrix[1][2]//b.Cr
colorMatrix[2][0]//r.Cb
colorMatrix[2][1]//g.Cb
colorMatrix[2][2]//b.Cb
colorOffset[0]//Y
colorOffset[1]//Cr
colorOffset[2]//Cb
colorScale[0]//Y
colorScale[1]//Cr
colorScale[2]//Cb
wherethedataisusedaccordingtothefollowingformulae:
Y=colorOffset[0]+colorScale[0]*
(R*colorMatrix[0][0]+G*colorMatrix[0][1]+B*colorMatrix[0][2]);
Cr=colorOffset[1]+colorScale[1]*
(R*colorMatrix[1][0]+G*colorMatrix[1][1]+B*colorMatrix[1][2]);
Cb=colorOffset[2]+colorScale[2]*
(R*colorMatrix[2][0]+G*colorMatrix[2][1]+B*colorMatrix[2][2]);
Possibleerrors:
BadMatchTheNVIDIAdriverisnotpresentonthatscreen.
BadImplementationGVOisnotavailableonthatscreen.
XNVCTRLQueryGvoColorConversion()
Bool XNVCTRLQueryGvoColorConversion (
Display *dpy,
int screen,
float colorMatrix[3][3],
float colorOffset[3],
float colorScale[3]
);
Thisfunctionretrievesthecolorconversionmatrixandcoloroffsetthatarecurrently
beingusedforGVO(GraphictoVideoOut).Thevaluesareorderedwithinthearrays
accordingtothecommentsforXNVCTRLSetGvoColorConversion().
Possibleerrors:
BadMatchTheNVIDIAdriverisnotpresentonthatscreen.
BadImplementationGVOisnotavailableonthatscreen.
NV_CTRL_GVO Attributes
TheNV_CTRL_GVO*integerattributesareusedtoconfigureGVO(graphicstovideo
out)functionalityontheQuadroFX4800/5800SDIgraphicsboard.
ThefollowingisatypicalusagepatternfortheGVOattributes:
QueryNV_CTRL_GVO_SUPPORTEDtodetermineiftheXscreensupportsGV0.
SpecifyNV_CTRL_GVO_SYNC_MODE(eitherFREE_RUNNING,GENLOCK,or
FRAMELOCK).
IfyouspecifyGENLOCKorFRAMELOCK,youshouldalsospecify
NV_CTRL_GVO_SYNC_SOURCE.
UseNV_CTRL_GVO_SYNC_INPUT_DETECTEDand
NV_CTRL_GVO_SDI_SYNC_INPUT_DETECTEDtodetectwhatinputsyncsare
present.
Ifnoanalogsyncisdetectedbutitisknownthatavalidbilevelortrilevelsyncis
connected,setNV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECT_MODE
appropriatelyandretestwith
NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECTED.
Ifsyncingtoinputsync,querytheNV_CTRL_GVO_INPUT_VIDEO_FORMAT
attribute.
TheinputvideoformatcanonlybequeriedafterSYNC_SOURCEisspecified.
SpecifytheNV_CTRL_GVO_OUTPUT_VIDEO_FORMAT.
SpecifytheNV_CTRL_GVO_DATA_FORMAT.
SpecifyanycustomColorSpaceConversion(CSC)matrix,offset,andscalewith
XNVCTRLSetGvoColorConversion().
IfusingtheGLX_NV_video_outextensiontodisplayoneormorepbuffers,call
glXGetVideoDeviceNV()tolocktheGVOoutputforusebytheGLXclient,then
bindthepbuffer(s)totheGVOoutputwithglXBindVideoImageNV()andsend
pbufferstotheGVOoutputwithglXSendPbufferToVideoNV().
SeetheGLX_NV_video_outspecformoredetails.
If,ratherthanusingtheGLX_NV_video_outextensiontodisplayGLXpbufferson
theGVOoutput,youwishdisplaytheXscreenontheGVOoutput,set
NV_CTRL_GVO_DISPLAY_X_SCREENto
NV_CTRL_GVO_DISPLAY_X_SCREEN_ENABLE.
SettingmostGVOattributesonlycausesthevaluetobecachedintheXserver.
Thevalueswillbeflushedtothehardwareeitherwhen
NV_CTRL_GVO_DISPLAY_X_SCREENisenabled,orwhenaGLXpbufferisbound
totheGVOoutput(withglXBindVideoImageNV()).
GLX_NV_video_outandNV_CTRL_GVO_DISPLAY_X_SCREENaremutually
exclusive.
IfNV_CTRL_GVO_DISPLAY_X_SCREENisenabled,thenglXGetVideoDeviceNV
willfail.Similarly,ifaGLXclienthaslockedtheGVOoutput(via
glXGetVideoDeviceNV),thenNV_CTRL_GVO_DISPLAY_X_SCREENwillfail.The
NV_CTRL_GVO_GLX_LOCKEDeventwillbesentwhenaGLXclientlockstheGVO
output.
NV_CTRL_GVO_SUPPORTED
/*
* if this screen does not support GVO output, then all other GVO
*/
#define NV_CTRL_GVO_SUPPORTED 67 /* R-
- */
#define NV_CTRL_GVO_SUPPORTED_FALSE 0
#define NV_CTRL_GVO_SUPPORTED_TRUE 1
NV_CTRL_GVO_SYNC_MODE
/*
* are:
* video format have the same refresh rate as the incoming sync video
* format.
*/
#define NV_CTRL_GVO_SYNC_MODE 68 /*
RW- */
#define NV_CTRL_GVO_SYNC_MODE_FREE_RUNNING 0
#define NV_CTRL_GVO_SYNC_MODE_GENLOCK 1
#define NV_CTRL_GVO_SYNC_MODE_FRAMELOCK 2
NV_CTRL_GVO_SYNC_SOURCE
/*
* effect.
*/
#define NV_CTRL_GVO_SYNC_SOURCE 69 /*
RW- */
#define NV_CTRL_GVO_SYNC_SOURCE_COMPOSITE 0
#define NV_CTRL_GVO_SYNC_SOURCE_SDI 1
NV_CTRL_GVO_OUTPUT_VIDEO_FORMAT
/*
* format. Note that the valid video formats will vary depending on
* Note that when querying the ValidValues for this data type, the
* value bits than will fit in a single 32-bit value. To solve this,
*/
#define NV_CTRL_GVO_VIDEO_FORMAT_NONE 0
#define NV_CTRL_GVO_VIDEO_FORMAT_480I_59_94_SMPTE259_NTSC 1
#define NV_CTRL_GVO_VIDEO_FORMAT_576I_50_00_SMPTE259_PAL 2
#define NV_CTRL_GVO_VIDEO_FORMAT_720P_59_94_SMPTE296 3
#define NV_CTRL_GVO_VIDEO_FORMAT_720P_60_00_SMPTE296 4
#define NV_CTRL_GVO_VIDEO_FORMAT_1035I_59_94_SMPTE260 5
#define NV_CTRL_GVO_VIDEO_FORMAT_1035I_60_00_SMPTE260 6
#define NV_CTRL_GVO_VIDEO_FORMAT_1080I_50_00_SMPTE295 7
#define NV_CTRL_GVO_VIDEO_FORMAT_1080I_50_00_SMPTE274 8
#define NV_CTRL_GVO_VIDEO_FORMAT_1080I_59_94_SMPTE274 9
#define NV_CTRL_GVO_VIDEO_FORMAT_1080I_60_00_SMPTE274 10
#define NV_CTRL_GVO_VIDEO_FORMAT_1080P_23_976_SMPTE274 11
#define NV_CTRL_GVO_VIDEO_FORMAT_1080P_24_00_SMPTE274 12
#define NV_CTRL_GVO_VIDEO_FORMAT_1080P_25_00_SMPTE274 13
#define NV_CTRL_GVO_VIDEO_FORMAT_1080P_29_97_SMPTE274 14
#define NV_CTRL_GVO_VIDEO_FORMAT_1080P_30_00_SMPTE274 15
#define NV_CTRL_GVO_VIDEO_FORMAT_720P_50_00_SMPTE296 16
#define NV_CTRL_GVO_VIDEO_FORMAT_1080I_24_00_SMPTE274 17 //
deprecated
#define NV_CTRL_GVO_VIDEO_FORMAT_1080I_48_00_SMPTE274 17
#define NV_CTRL_GVO_VIDEO_FORMAT_1080I_23_98_SMPTE274 18 //
deprecated
#define NV_CTRL_GVO_VIDEO_FORMAT_1080I_47_96_SMPTE274 18
#define NV_CTRL_GVO_VIDEO_FORMAT_720P_30_00_SMPTE296 19
#define NV_CTRL_GVO_VIDEO_FORMAT_720P_29_97_SMPTE296 20
#define NV_CTRL_GVO_VIDEO_FORMAT_720P_25_00_SMPTE296 21
#define NV_CTRL_GVO_VIDEO_FORMAT_720P_24_00_SMPTE296 22
#define NV_CTRL_GVO_VIDEO_FORMAT_720P_23_98_SMPTE296 23
#define NV_CTRL_GVO_VIDEO_FORMAT_1080PSF_25_00_SMPTE274 24
#define NV_CTRL_GVO_VIDEO_FORMAT_1080PSF_29_97_SMPTE274 25
#define NV_CTRL_GVO_VIDEO_FORMAT_1080PSF_30_00_SMPTE274 26
#define NV_CTRL_GVO_VIDEO_FORMAT_1080PSF_24_00_SMPTE274 27
#define NV_CTRL_GVO_VIDEO_FORMAT_1080PSF_23_98_SMPTE274 28
#define NV_CTRL_GVO_VIDEO_FORMAT_1080P_30_00_SMPTE372 29
#define NV_CTRL_GVO_VIDEO_FORMAT_1080P_29_97_SMPTE372 30
#define NV_CTRL_GVO_VIDEO_FORMAT_1080I_30_00_SMPTE372 31
#define NV_CTRL_GVO_VIDEO_FORMAT_1080I_29_97_SMPTE372 32
#define NV_CTRL_GVO_VIDEO_FORMAT_1080P_25_00_SMPTE372 33
#define NV_CTRL_GVO_VIDEO_FORMAT_1080I_25_00_SMPTE372 34
#define NV_CTRL_GVO_VIDEO_FORMAT_1080P_24_00_SMPTE372 35
#define NV_CTRL_GVO_VIDEO_FORMAT_1080P_23_98_SMPTE372 36
#define NV_CTRL_GVO_VIDEO_FORMAT_1080I_24_00_SMPTE372 37
#define NV_CTRL_GVO_VIDEO_FORMAT_1080I_23_98_SMPTE372 38
NV_CTRL_GVO_INPUT_VIDEO_FORMAT
/*
* constants.
*/
#define NV_CTRL_GVO_INPUT_VIDEO_FORMAT 71 /* R-
- */
NV_CTRL_GVO_DATA_FORMAT
/*
* displayed.
*/
#define NV_CTRL_GVO_DATA_FORMAT_R8G8B8_TO_YCRCB444 0
#define NV_CTRL_GVO_DATA_FORMAT_R8G8B8A8_TO_YCRCBA4444 1
#define NV_CTRL_GVO_DATA_FORMAT_R8G8B8Z10_TO_YCRCBZ4444 2
#define NV_CTRL_GVO_DATA_FORMAT_R8G8B8_TO_YCRCB422 3
#define NV_CTRL_GVO_DATA_FORMAT_R8G8B8A8_TO_YCRCBA4224 4
#define NV_CTRL_GVO_DATA_FORMAT_R8G8B8Z10_TO_YCRCBZ4224 5
#define NV_CTRL_GVO_DATA_FORMAT_R8G8B8_TO_RGB444 6
#define NV_CTRL_GVO_DATA_FORMAT_R8G8B8A8_TO_RGBA4444 7
#define NV_CTRL_GVO_DATA_FORMAT_R8G8B8Z10_TO_RGBZ4444 8
#define NV_CTRL_GVO_DATA_FORMAT_Y10CR10CB10_TO_YCRCB444 9
#define NV_CTRL_GVO_DATA_FORMAT_Y10CR8CB8_TO_YCRCB444 10
#define NV_CTRL_GVO_DATA_FORMAT_Y10CR8CB8A10_TO_YCRCBA4444 11
#define NV_CTRL_GVO_DATA_FORMAT_Y10CR8CB8Z10_TO_YCRCBZ4444 12
#define NV_CTRL_GVO_DATA_FORMAT_DUAL_R8G8B8_TO_DUAL_YCRCB422 13
#define NV_CTRL_GVO_DATA_FORMAT_DUAL_Y8CR8CB8_TO_DUAL_YCRCB422 14
#define NV_CTRL_GVO_DATA_FORMAT_R10G10B10_TO_YCRCB422 15
#define NV_CTRL_GVO_DATA_FORMAT_R10G10B10_TO_YCRCB444 16
#define NV_CTRL_GVO_DATA_FORMAT_Y12CR12CB12_TO_YCRCB444 17
#define NV_CTRL_GVO_DATA_FORMAT_R12G12B12_TO_YCRCB444 18
NV_CTRL_GVO_DISPLAY_X_SCREEN
/*
* screen. At this point, all the GVO attributes that have been
*/
#define NV_CTRL_GVO_DISPLAY_X_SCREEN 73 /*
RW- */
#define NV_CTRL_GVO_DISPLAY_X_SCREEN_ENABLE 1
#define NV_CTRL_GVO_DISPLAY_X_SCREEN_DISABLE 0
NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECTED
/*
*/
#define NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECTED 74 /* R-
- */
#define NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECTED_FALSE 0
#define NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECTED_TRUE 1
NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECT_MODE
/*
*/
#define NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECT_MODE 75 /*
RW- */
#define NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECT_MODE_AUTO 0
#define NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECT_MODE_BI_LEVEL 1
#define NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECT_MODE_TRI_LEVEL 2
NV_CTRL_GVO_SYNC_INPUT_DETECTED
/*
*/
#define NV_CTRL_GVO_SDI_SYNC_INPUT_DETECTED 76 /* R-
- */
#define NV_CTRL_GVO_SDI_SYNC_INPUT_DETECTED_NONE 0
#define NV_CTRL_GVO_SDI_SYNC_INPUT_DETECTED_HD 1
#define NV_CTRL_GVO_SDI_SYNC_INPUT_DETECTED_SD 2
NV_CTRL_GVO_VIDEO_OUTPUTS
/*
*/
#define NV_CTRL_GVO_VIDEO_OUTPUTS 77 /* R-
- */
#define NV_CTRL_GVO_VIDEO_OUTPUTS_NONE 0
#define NV_CTRL_GVO_VIDEO_OUTPUTS_VIDEO1 1
#define NV_CTRL_GVO_VIDEO_OUTPUTS_VIDEO2 2
#define NV_CTRL_GVO_VIDEO_OUTPUTS_VIDEO_BOTH 3
NV_CTRL_GVO_FPGA_VERSION
/*
*/
#define NV_CTRL_GVO_FIRMWARE_VERSION 78 /* R-
- */
NV_CTRL_GVO_SYNC_DELAY_PIXELS
/*
* input sync and the output sync in numbers of pixels from hsync;
*/
NV_CTRL_GVO_SYNC_DELAY_LINES
/*
* sync and the output sync in numbers of lines from vsync; this is a
* 12 bit value.
*/
NV_CTRL_GVO_INPUT_VIDEO_FORMAT_REACQUIRE
/*
* "detect" button. This value can be written, but always reads back
* _FALSE.
*/
#define NV_CTRL_GVO_INPUT_VIDEO_FORMAT_REACQUIRE 81 /* -
W- */
#define NV_CTRL_GVO_INPUT_VIDEO_FORMAT_REACQUIRE_FALSE 0
#define NV_CTRL_GVO_INPUT_VIDEO_FORMAT_REACQUIRE_TRUE 1
NV_CTRL_GVO_GLX_LOCKED
/*
* not happen immediately and will instead be cached. The GVO resource
will
* NV_CTRL_GVO_OUTPUT_VIDEO_FORMAT
* NV_CTRL_GVO_DATA_FORMAT
* NV_CTRL_GVO_FLIP_QUEUE_SIZE
*/
#define NV_CTRL_GVO_GLX_LOCKED 82 /* R-
- */
#define NV_CTRL_GVO_GLX_LOCKED_FALSE 0
#define NV_CTRL_GVO_GLX_LOCKED_TRUE 1
NV_CTRL_GVO_VIDEO_FORMAT_{WIDTH,HEIGHT,REFRESH_RATE}
/*
* XNVCTRLQueryAttribute (dpy,
* screen,
*
NV_CTRL_GVO_VIDEO_FORMAT_480I_59_94_SMPTE259_NTSC
* NV_CTRL_GVO_VIDEO_FORMAT_WIDTH,
* &value);
*/
#define NV_CTRL_GVO_VIDEO_FORMAT_WIDTH 83 /* R-
- */
#define NV_CTRL_GVO_VIDEO_FORMAT_HEIGHT 84 /* R-
- */
#define NV_CTRL_GVO_VIDEO_FORMAT_REFRESH_RATE 85 /* R-
- */
NV_CTRL_GVO_X_SCREEN_PAN_[XY]
/*
* values will be clamped so that GVO output is not panned beyond the
*/
TheQuadroSDIgraphicscardhasanonboarddipswitch,locatedontheSDIoutput
card,thatdeterminesthedefaultSDIoperatingmode.Subsequentsoftwarechanges
overridethesesettings.
Inthefollowingtables,a0valuecorrespondstotheONswitchposition,anda1
valuecorrespondstotheOFFswitchposition.