XSGIvc(3)                                               XSGIvc(3)


     NAME
          XSGIvc - Control video operation


     SYNOPSIS
          The XSGIvc extension permits user control of video operation
          on Silicon GraphicsTM base graphics hardware.


     DESCRIPTION
          This X extension provides a range of services to permit
          programmatic user control of video operations on the base
          graphics hardware.  This extension does not provide a means
          to control optional video hardware such as
          SiriusVideo(Reg.); optional video is controlled via
          VideoLibrary(3).

          Examples of control include loading video formats, setting
          video output gain, setting pedestal, and changing H-phase.


        Channel
          The optional notion of channel adds a tangential dimension
          to the existing X hierarchy of display and Screen.  Put
          briefly, a single Screen's managed area may be subdivided
          into channels, each a physical output which displays some or
          all of the Screen.  Typically, a channel's output is to a
          physical connection on the server.

          Some graphics hardware has only one channel; other kinds of
          graphics hardware implement many channels.

          Neither the OpenGL(Reg.) nor standard X drawing contain the
          notion of channel, and images are simply rendered to a
          single managed area, or Screen.  The portions of the managed
          area produced on the physical outputs are specified by the
          video format or video format combination (see description of
          Combination below).

          Most XSGIvc functions require you specify a channel number
          which specifies on which physical channel the operation
          should be performed.  The channel number can be specified
          directly; client applications may determine the number of
          channels on a server via the XSGIvcQueryVideoScreenInfo
          function.  Channel numbers range 0 to (numChannels - 1).

          For most functions, you must also specify the screen on
          which the channel is located.  The macros ScreenCount and
          DefaultScreen may be of some value in determining the screen
          number.

          A server may offer channels with varying capabilities and


          attributes, so it will not do to presume a uniform
          arrangment if only one channel is queried.  For each
          channel, query the capabilities before performing
          operations.


        Controls
          The video output of a graphics pipe may have a number of
          alterations, or controls, that can be made to change its
          operation.  Different graphics hardware may support
          different controls, and different channels on a single
          graphics hardware may support different controls.  The
          calling program should query the capabilities and
          characteristics of a control for a channel via the function
          XSGIvcQueryChannelInfo.  The documentation accompanying
          graphics hardware may also contain information on which
          channels controls are available.

          Each control has a XSGIvcSet<control>, and a
          XSGIvcQuery<control>, function associated with it.  The Set
          function allows you to change the setting or state of
          operation.  The Query function returns to you the extant
          settings.  The <control> is the name of the control to be
          changed or queried; for example, XSGIvcSetOutputGain and
          XSGIvcQueryOutputGain both deal with output gain.

          The Query function returns to you information about the
          capabilities or range of values permitted by the server (as
          different servers may have different ranges of legal
          values).  The query function returns True if the server
          supports the function, False if the server does not support
          it.  On servers with more than one output channel, you will
          need to query the characteristics for each channel, since
          different channels may have different capabilities.


        Events unique to XSGIvc
          XSGIvc offers a unique event type which has several sub-
          types.  One large use of these events permits the client
          program to monitor changes made to the different channel's
          parameters by other client programs.

          Another use of events communicates asynchronous hardware
          state changes (e.g., external lock status) to the client
          program.


        Combination
          Some servers with multiple channels permit independent
          alteration of video format resolution and timing.  Other
          servers may require that only a compatible ensemble of
          formats, a combination, may be loaded.  The combination may


          either reference or include other video formats; it may
          additionally include frame buffer configuration information
          and default control settings for both Screen and channel.

          Combinations are prepared independently


     FILES
          The system administrator may specify configuration
          information to the server extension via database files.


        moninfo
          Describes characteristics of different monitor models.


        chantab
          Describes which monitor is connected to which channel and
          gives instructions regarding automatic monitor queries.


     FUNCTIONS
          The following are major functions available for use.


        Administrative
          XSGIvcQueryChannelInfo - Query channel information for a
          specific channel

          XSGIvcQueryVideoScreenInfo - Query video information for the
          screen


        Control
          XSGIvcSet<control> - Set the value for a particular control
          on an output channel

          XSGIvcQuery<control> - Get the extant value for a particular
          control on an output channel

          XSGIvcLoadVideoFormat - Changes the video format of a
          channel


     SEE ALSO
          X, XSGIvcSetOutputPhaseSCH, XSGIvcSetOutputGain,
          XSGIvcSetOutputPhaseV, XSGIvcSetOutputPedestal,
          XSGIvcSetOutputPhaseH, XSGIvcSetOutputSync,
          XSGIvcStoreGammaColors8, moninfo, chantab


     Page 3                                          (printed 7/20/06)