| Name |
| |
| WGL_I3D_digital_video_control |
| |
| Name Strings |
| |
| WGL_I3D_digital_video_control |
| |
| Contact |
| |
| Dale Kirkland, Intense3D (dlkirkla 'at' intense3d.com) |
| |
| Status |
| |
| Complete |
| |
| Version |
| |
| Date: 04/17/2000 Revision 1.0 |
| |
| Number |
| |
| 250 |
| |
| Dependencies |
| |
| The extension is written against the OpenGL 1.2.1 Specification |
| although it should work on any previous OpenGL specification. |
| |
| The WGL_EXT_extensions_string extension is required. |
| |
| WGL_I3D_gamma affects the definition of this extension. |
| |
| Overview |
| |
| The digital video control extension controls digital video data, |
| such as whether it is gamma corrected or the cursor is injected |
| into the video stream. |
| |
| IP Status |
| |
| None |
| |
| Issues |
| |
| None |
| |
| New Procedures and Functions |
| |
| BOOL wglGetDigitalVideoParametersI3D(HDC hDC, |
| int iAttribute, |
| int *piValue) |
| |
| BOOL wglSetDigitalVideoParametersI3D(HDC hDC, |
| int iAttribute, |
| const int *piValue) |
| |
| New Tokens |
| |
| Accepted by the <iAttribute> parameter of wglGetDigitalVideoParametersI3D |
| and wglSetDigitalVideoParametersI3D: |
| |
| WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050 |
| WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051 |
| WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052 |
| WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053 |
| |
| Additions to Chapter 2 of the OpenGL 1.2.1 Specification (OpenGL Operation) |
| |
| None |
| |
| Additions to Chapter 3 of the OpenGL 1.2.1 Specification (Rasterization) |
| |
| None |
| |
| Additions to Chapter 4 of the OpenGL 1.2.1 Specification (Per-Fragment |
| Operations and the Frame Buffer) |
| |
| None |
| |
| Additions to Chapter 5 of the OpenGL 1.2.1 Specification (Special Functions) |
| |
| None |
| |
| Additions to Chapter 6 of the OpenGL 1.2.1 Specification (State and |
| State Requests) |
| |
| None |
| |
| Additions to Appendix A of the OpenGL 1.2.1 Specification (Invariance) |
| |
| None |
| |
| Additions to the WGL Specification |
| |
| Digital video data is controlled by parameters that are set with |
| the function wglSetDigitalVideoParametersI3D: |
| |
| BOOL wglSetDigitalVideoParametersI3D(HDC hDC, |
| int iAttribute, |
| const int *piValue) |
| |
| <hDC> is a device context for a graphics adapter or a window |
| residing on a device that supports digital video. For multiple |
| monitor systems, only the digital video mode associated with <hDC> |
| is set. |
| |
| <iAttribute> must be one of the following values: |
| |
| WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D |
| Specifies the source of the cursor data's alpha component. |
| If the value pointed to by <piValue> is non-zero, the |
| alpha component of the cursor data comes from the |
| framebuffer. If the value pointed to by <piValue> is |
| zero the alpha component of the cursor is specified by |
| WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D. The default |
| value is zero. |
| |
| WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D |
| Determines the alpha component of the cursor. The value |
| pointed to by <piValue> is converted by the following |
| equation: |
| |
| ((2 * <*piValue>) + 1) |
| ---------------------- |
| (2^32 - 1) |
| |
| and the result is clamped to [0, 1]. The clamped result is |
| multiplied by 2^n - 1, where 'n' is the number of bits in the |
| alpha buffer. The digital video data will have the result as |
| the cursor data's alpha component. The default alpha value |
| is 2^31 - 1. |
| |
| WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D |
| Specifies whether cursor data is included in the digital |
| video data. If the value pointed to by <piValue> is |
| non-zero, the digital video data contains cursor data. |
| Otherwise the digital video data does not contain cursor |
| data. This value defaults to zero. |
| |
| WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D |
| Specifies whether the digital video data is gamma |
| corrected. If the value pointed to by <piValue> is non-zero, |
| the digital video data is gamma corrected. Otherwise, the |
| digital video data is not gamma corrected. This value |
| defaults to zero. |
| |
| Digital video parameters can be queried with the function |
| wglGetDigitalVideoParametersI3D: |
| |
| BOOL wglGetDigitalVideoParametersI3D(HDC hDC, |
| int iAttribute, |
| int *piValue) |
| |
| <hDC> is a device context for a graphics adapter or a window |
| residing on a device that supports digital video. For multiple |
| monitor systems, only the digital video mode parameters associated |
| with <hDC> are returned. |
| |
| <iAttribute> must be one of the following values: |
| |
| WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D |
| <piValue> returns one value indicating the source of the cursor |
| data's alpha component. If the value is non-zero then the |
| alpha component of the cursor data comes from the framebuffer. |
| Otherwise, the value of the cursor's alpha data is determined |
| by the value specified by |
| WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D. |
| |
| WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D |
| <piValue> returns the user-specified alpha component of |
| the cursor's data. |
| |
| WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D |
| <piValue> returns one value indicating whether cursor data is |
| present in the digital video data. If the value is non-zero |
| then cursor data is present in the digital video data. |
| |
| WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D |
| <piValue> returns one value indicating whether the digital |
| video data is gamma corrected. If the value is non-zero then |
| the digital video data is gamma corrected. |
| |
| Dependencies on WGL_EXT_extensions_string |
| |
| Because there is no way to extend wgl, these calls are defined in |
| the ICD and can be called by obtaining the address with |
| wglGetProcAddress. Because this extension is a WGL extension, it |
| is not included in the GL_EXTENSIONS string. Its existence can be |
| determined with the WGL_EXT_extensions_string extension. |
| |
| Dependencies on WGL_I3D_gamma |
| |
| If WGL_I3D_gamma is supported, the <iAttribute> parameter of |
| WGLGetDigitalVideoParametersI3D and WGLSetDigitalVideoParametersI3D |
| accepts WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D. Otherwise it does |
| not. |
| |
| Errors |
| |
| If the function succeeds, a value of TRUE is returned. If the |
| function fails, a value of FALSE is returned. To get extended |
| error information, call GetLastError. |
| |
| ERROR_DC_NOT_FOUND The <hDC> was not valid. |
| |
| ERROR_NO_SYSTEM_RESOURCES There is no support for digital video |
| for the device specified by <hDC>. |
| |
| ERROR_INVALID_DATA <iAttribute> is not a valid value. |
| |
| New State |
| |
| None |
| |
| New Implementation Dependent State |
| |
| None |
| |
| Revision History |
| |
| 12/03/1999 0.1 First draft. |
| 01/05/2000 0.2 Enumerants assigned |
| 04/17/2000 1.0 Driver released to ISVs. |