• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1
2XXX - Not complete yet!!!
3
4Name
5
6    SGIX_video_source
7
8Name Strings
9
10    GLX_SGIX_video_source
11
12Version
13
14    $Date: 1995/02/18 22:25:03 $ $Revision: 1.2 $
15
16Number
17
18    43
19
20Dependencies
21
22    SGI_make_current_read is required.
23
24Overview
25
26    This extension provides the capability to source pixel data from a
27    video stream.  A new type of GLXDrawable (GLXVideoSourceSGIX) is
28    introduced which represents the drain node of a Video Library (VL)
29    path.  A GLXVideoSourceSGIX may be specified as the <read> parameter
30    to glXMakeCurrentReadSGI to indicate that pixel data should be read
31    from the specified video source instead of from the framebuffer.  A
32    GLXVideoSourceSGIX may only be specified as a <read> drawable.
33
34Issues
35
36    * Should there be a way to query the configuration
37      of a GLXVideoSourceSGIX?
38
39New Procedures and Functions
40
41    typedef XID GLXVideoSourceSGIX;
42
43    GLXVideoSourceSGIX glXCreateGLXVideoSourceSGIX(Display *display,
44						   int screen,
45						   VLServer server,
46						   VLPath path,
47						   int nodeClass,
48						   VLNode drainNode);
49
50    void glXDestroyGLXVideoSourceSGIX(Display *dpy,
51				      GLXVideoSourceSGIX glxvideosource);
52
53New Tokens
54
55Additions to Chapter 2 of the 1.0 Specification (OpenGL Operation)
56
57    None.
58
59Additions to Chapter 3 of the 1.0 Specification (Rasterization)
60
61    None.
62
63Additions to Chapter 4 of the 1.0 Specification (Per-Fragment Operations
64and the Frame Buffer)
65
66    None.
67
68Additions to Chapter 5 of the 1.0 Specification (Special Functions)
69
70    None.
71
72Additions to Chapter 6 of the 1.0 Specification (State and State Requests)
73
74    None.
75
76Additions to the GLX Specification
77
78    XXX - not complete yet
79
80    A GLXVideoSourceSGIX is created using the glXCreateGLXVideoSourceSGIX
81    command.  The parameter <display> specifies a connection to an X server.
82    The parameter <screen> specifies the screen on which the GLXVideoSourceSGIX
83    should be created.  The parameter <server> specifies a connection to a
84    video server.  The parameter <path> specifies a video transfer path.
85    The parameter <drainNode> specifies a VLNode which must be a VL_DRAIN
86    node on the video transfer path specified by <path>.  The parameter
87    <nodeClass> specifies the class of the VLNode specified by <drainNode>.
88
89    A GLXVideoSourceSGIX may only be used with GLXContexts created on the
90    same same screen.
91
92    The configuration of a GLXVideoSourceSGIX is static, and is fixed at
93    the time that the GLXVideoSourceSGIX is created.  If any of the controls
94    which affect the transfer of video data to the GL are changed on the video
95    transfer path for which a particular GLXVideoSourceSGIX was created, the
96    GLXVideoSourceSGIX should be destroyed and a new GLXVideoSourceSGIX
97    should be created.  Otherwise, the data read from the GLXVideoSourceSGIX
98    will be undefined.
99
100    A GLXVideoSourceSGIX is destroyed by calling glXDestroyGLXVideoSourceSGIX
101
102Dependencies on SGI_make_current_read
103
104    XXX - not complete yet
105
106Errors
107
108    XXX - not complete yet
109
110    BadMatch is generated if glXMakeCurrent parameter <drawable> is a
111    GLXVideoSourceSGIX.
112
113    BadMatch is generated if glXMakeCurrentReadSGI parameter <draw> is a
114    GLXVideoSourceSGIX.
115
116    BadMatch is generated if glXMakeCurrentReadSGI parameter <read> is a
117    GLXVideoSourceSGIX which was created for a different screen than the
118    GLXContext specified by the parameter <ctx>.
119
120    GLXBadDrawable is generated if glXDestroyGLXVideoSourceSGIX parameter
121    <glxvideosource> is not a valid GLXVideoSourceSGIX.
122
123    BadAlloc is generated if glXCreateGLXVideoSourceSGIX is unable to allocate
124    the resources needed to create a GLXVideoSourceSGIX.
125
126New State
127
128    None.
129
130New Implementation Dependent State
131
132    None.
133