15bd8deadSopenharmony_ciName 25bd8deadSopenharmony_ci 35bd8deadSopenharmony_ci WGL_I3D_digital_video_control 45bd8deadSopenharmony_ci 55bd8deadSopenharmony_ciName Strings 65bd8deadSopenharmony_ci 75bd8deadSopenharmony_ci WGL_I3D_digital_video_control 85bd8deadSopenharmony_ci 95bd8deadSopenharmony_ciContact 105bd8deadSopenharmony_ci 115bd8deadSopenharmony_ci Dale Kirkland, Intense3D (dlkirkla 'at' intense3d.com) 125bd8deadSopenharmony_ci 135bd8deadSopenharmony_ciStatus 145bd8deadSopenharmony_ci 155bd8deadSopenharmony_ci Complete 165bd8deadSopenharmony_ci 175bd8deadSopenharmony_ciVersion 185bd8deadSopenharmony_ci 195bd8deadSopenharmony_ci Date: 04/17/2000 Revision 1.0 205bd8deadSopenharmony_ci 215bd8deadSopenharmony_ciNumber 225bd8deadSopenharmony_ci 235bd8deadSopenharmony_ci 250 245bd8deadSopenharmony_ci 255bd8deadSopenharmony_ciDependencies 265bd8deadSopenharmony_ci 275bd8deadSopenharmony_ci The extension is written against the OpenGL 1.2.1 Specification 285bd8deadSopenharmony_ci although it should work on any previous OpenGL specification. 295bd8deadSopenharmony_ci 305bd8deadSopenharmony_ci The WGL_EXT_extensions_string extension is required. 315bd8deadSopenharmony_ci 325bd8deadSopenharmony_ci WGL_I3D_gamma affects the definition of this extension. 335bd8deadSopenharmony_ci 345bd8deadSopenharmony_ciOverview 355bd8deadSopenharmony_ci 365bd8deadSopenharmony_ci The digital video control extension controls digital video data, 375bd8deadSopenharmony_ci such as whether it is gamma corrected or the cursor is injected 385bd8deadSopenharmony_ci into the video stream. 395bd8deadSopenharmony_ci 405bd8deadSopenharmony_ciIP Status 415bd8deadSopenharmony_ci 425bd8deadSopenharmony_ci None 435bd8deadSopenharmony_ci 445bd8deadSopenharmony_ciIssues 455bd8deadSopenharmony_ci 465bd8deadSopenharmony_ci None 475bd8deadSopenharmony_ci 485bd8deadSopenharmony_ciNew Procedures and Functions 495bd8deadSopenharmony_ci 505bd8deadSopenharmony_ci BOOL wglGetDigitalVideoParametersI3D(HDC hDC, 515bd8deadSopenharmony_ci int iAttribute, 525bd8deadSopenharmony_ci int *piValue) 535bd8deadSopenharmony_ci 545bd8deadSopenharmony_ci BOOL wglSetDigitalVideoParametersI3D(HDC hDC, 555bd8deadSopenharmony_ci int iAttribute, 565bd8deadSopenharmony_ci const int *piValue) 575bd8deadSopenharmony_ci 585bd8deadSopenharmony_ciNew Tokens 595bd8deadSopenharmony_ci 605bd8deadSopenharmony_ci Accepted by the <iAttribute> parameter of wglGetDigitalVideoParametersI3D 615bd8deadSopenharmony_ci and wglSetDigitalVideoParametersI3D: 625bd8deadSopenharmony_ci 635bd8deadSopenharmony_ci WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050 645bd8deadSopenharmony_ci WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051 655bd8deadSopenharmony_ci WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052 665bd8deadSopenharmony_ci WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053 675bd8deadSopenharmony_ci 685bd8deadSopenharmony_ciAdditions to Chapter 2 of the OpenGL 1.2.1 Specification (OpenGL Operation) 695bd8deadSopenharmony_ci 705bd8deadSopenharmony_ci None 715bd8deadSopenharmony_ci 725bd8deadSopenharmony_ciAdditions to Chapter 3 of the OpenGL 1.2.1 Specification (Rasterization) 735bd8deadSopenharmony_ci 745bd8deadSopenharmony_ci None 755bd8deadSopenharmony_ci 765bd8deadSopenharmony_ciAdditions to Chapter 4 of the OpenGL 1.2.1 Specification (Per-Fragment 775bd8deadSopenharmony_ciOperations and the Frame Buffer) 785bd8deadSopenharmony_ci 795bd8deadSopenharmony_ci None 805bd8deadSopenharmony_ci 815bd8deadSopenharmony_ciAdditions to Chapter 5 of the OpenGL 1.2.1 Specification (Special Functions) 825bd8deadSopenharmony_ci 835bd8deadSopenharmony_ci None 845bd8deadSopenharmony_ci 855bd8deadSopenharmony_ciAdditions to Chapter 6 of the OpenGL 1.2.1 Specification (State and 865bd8deadSopenharmony_ciState Requests) 875bd8deadSopenharmony_ci 885bd8deadSopenharmony_ci None 895bd8deadSopenharmony_ci 905bd8deadSopenharmony_ciAdditions to Appendix A of the OpenGL 1.2.1 Specification (Invariance) 915bd8deadSopenharmony_ci 925bd8deadSopenharmony_ci None 935bd8deadSopenharmony_ci 945bd8deadSopenharmony_ciAdditions to the WGL Specification 955bd8deadSopenharmony_ci 965bd8deadSopenharmony_ci Digital video data is controlled by parameters that are set with 975bd8deadSopenharmony_ci the function wglSetDigitalVideoParametersI3D: 985bd8deadSopenharmony_ci 995bd8deadSopenharmony_ci BOOL wglSetDigitalVideoParametersI3D(HDC hDC, 1005bd8deadSopenharmony_ci int iAttribute, 1015bd8deadSopenharmony_ci const int *piValue) 1025bd8deadSopenharmony_ci 1035bd8deadSopenharmony_ci <hDC> is a device context for a graphics adapter or a window 1045bd8deadSopenharmony_ci residing on a device that supports digital video. For multiple 1055bd8deadSopenharmony_ci monitor systems, only the digital video mode associated with <hDC> 1065bd8deadSopenharmony_ci is set. 1075bd8deadSopenharmony_ci 1085bd8deadSopenharmony_ci <iAttribute> must be one of the following values: 1095bd8deadSopenharmony_ci 1105bd8deadSopenharmony_ci WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 1115bd8deadSopenharmony_ci Specifies the source of the cursor data's alpha component. 1125bd8deadSopenharmony_ci If the value pointed to by <piValue> is non-zero, the 1135bd8deadSopenharmony_ci alpha component of the cursor data comes from the 1145bd8deadSopenharmony_ci framebuffer. If the value pointed to by <piValue> is 1155bd8deadSopenharmony_ci zero the alpha component of the cursor is specified by 1165bd8deadSopenharmony_ci WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D. The default 1175bd8deadSopenharmony_ci value is zero. 1185bd8deadSopenharmony_ci 1195bd8deadSopenharmony_ci WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 1205bd8deadSopenharmony_ci Determines the alpha component of the cursor. The value 1215bd8deadSopenharmony_ci pointed to by <piValue> is converted by the following 1225bd8deadSopenharmony_ci equation: 1235bd8deadSopenharmony_ci 1245bd8deadSopenharmony_ci ((2 * <*piValue>) + 1) 1255bd8deadSopenharmony_ci ---------------------- 1265bd8deadSopenharmony_ci (2^32 - 1) 1275bd8deadSopenharmony_ci 1285bd8deadSopenharmony_ci and the result is clamped to [0, 1]. The clamped result is 1295bd8deadSopenharmony_ci multiplied by 2^n - 1, where 'n' is the number of bits in the 1305bd8deadSopenharmony_ci alpha buffer. The digital video data will have the result as 1315bd8deadSopenharmony_ci the cursor data's alpha component. The default alpha value 1325bd8deadSopenharmony_ci is 2^31 - 1. 1335bd8deadSopenharmony_ci 1345bd8deadSopenharmony_ci WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 1355bd8deadSopenharmony_ci Specifies whether cursor data is included in the digital 1365bd8deadSopenharmony_ci video data. If the value pointed to by <piValue> is 1375bd8deadSopenharmony_ci non-zero, the digital video data contains cursor data. 1385bd8deadSopenharmony_ci Otherwise the digital video data does not contain cursor 1395bd8deadSopenharmony_ci data. This value defaults to zero. 1405bd8deadSopenharmony_ci 1415bd8deadSopenharmony_ci WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 1425bd8deadSopenharmony_ci Specifies whether the digital video data is gamma 1435bd8deadSopenharmony_ci corrected. If the value pointed to by <piValue> is non-zero, 1445bd8deadSopenharmony_ci the digital video data is gamma corrected. Otherwise, the 1455bd8deadSopenharmony_ci digital video data is not gamma corrected. This value 1465bd8deadSopenharmony_ci defaults to zero. 1475bd8deadSopenharmony_ci 1485bd8deadSopenharmony_ci Digital video parameters can be queried with the function 1495bd8deadSopenharmony_ci wglGetDigitalVideoParametersI3D: 1505bd8deadSopenharmony_ci 1515bd8deadSopenharmony_ci BOOL wglGetDigitalVideoParametersI3D(HDC hDC, 1525bd8deadSopenharmony_ci int iAttribute, 1535bd8deadSopenharmony_ci int *piValue) 1545bd8deadSopenharmony_ci 1555bd8deadSopenharmony_ci <hDC> is a device context for a graphics adapter or a window 1565bd8deadSopenharmony_ci residing on a device that supports digital video. For multiple 1575bd8deadSopenharmony_ci monitor systems, only the digital video mode parameters associated 1585bd8deadSopenharmony_ci with <hDC> are returned. 1595bd8deadSopenharmony_ci 1605bd8deadSopenharmony_ci <iAttribute> must be one of the following values: 1615bd8deadSopenharmony_ci 1625bd8deadSopenharmony_ci WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 1635bd8deadSopenharmony_ci <piValue> returns one value indicating the source of the cursor 1645bd8deadSopenharmony_ci data's alpha component. If the value is non-zero then the 1655bd8deadSopenharmony_ci alpha component of the cursor data comes from the framebuffer. 1665bd8deadSopenharmony_ci Otherwise, the value of the cursor's alpha data is determined 1675bd8deadSopenharmony_ci by the value specified by 1685bd8deadSopenharmony_ci WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D. 1695bd8deadSopenharmony_ci 1705bd8deadSopenharmony_ci WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 1715bd8deadSopenharmony_ci <piValue> returns the user-specified alpha component of 1725bd8deadSopenharmony_ci the cursor's data. 1735bd8deadSopenharmony_ci 1745bd8deadSopenharmony_ci WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 1755bd8deadSopenharmony_ci <piValue> returns one value indicating whether cursor data is 1765bd8deadSopenharmony_ci present in the digital video data. If the value is non-zero 1775bd8deadSopenharmony_ci then cursor data is present in the digital video data. 1785bd8deadSopenharmony_ci 1795bd8deadSopenharmony_ci WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 1805bd8deadSopenharmony_ci <piValue> returns one value indicating whether the digital 1815bd8deadSopenharmony_ci video data is gamma corrected. If the value is non-zero then 1825bd8deadSopenharmony_ci the digital video data is gamma corrected. 1835bd8deadSopenharmony_ci 1845bd8deadSopenharmony_ciDependencies on WGL_EXT_extensions_string 1855bd8deadSopenharmony_ci 1865bd8deadSopenharmony_ci Because there is no way to extend wgl, these calls are defined in 1875bd8deadSopenharmony_ci the ICD and can be called by obtaining the address with 1885bd8deadSopenharmony_ci wglGetProcAddress. Because this extension is a WGL extension, it 1895bd8deadSopenharmony_ci is not included in the GL_EXTENSIONS string. Its existence can be 1905bd8deadSopenharmony_ci determined with the WGL_EXT_extensions_string extension. 1915bd8deadSopenharmony_ci 1925bd8deadSopenharmony_ciDependencies on WGL_I3D_gamma 1935bd8deadSopenharmony_ci 1945bd8deadSopenharmony_ci If WGL_I3D_gamma is supported, the <iAttribute> parameter of 1955bd8deadSopenharmony_ci WGLGetDigitalVideoParametersI3D and WGLSetDigitalVideoParametersI3D 1965bd8deadSopenharmony_ci accepts WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D. Otherwise it does 1975bd8deadSopenharmony_ci not. 1985bd8deadSopenharmony_ci 1995bd8deadSopenharmony_ciErrors 2005bd8deadSopenharmony_ci 2015bd8deadSopenharmony_ci If the function succeeds, a value of TRUE is returned. If the 2025bd8deadSopenharmony_ci function fails, a value of FALSE is returned. To get extended 2035bd8deadSopenharmony_ci error information, call GetLastError. 2045bd8deadSopenharmony_ci 2055bd8deadSopenharmony_ci ERROR_DC_NOT_FOUND The <hDC> was not valid. 2065bd8deadSopenharmony_ci 2075bd8deadSopenharmony_ci ERROR_NO_SYSTEM_RESOURCES There is no support for digital video 2085bd8deadSopenharmony_ci for the device specified by <hDC>. 2095bd8deadSopenharmony_ci 2105bd8deadSopenharmony_ci ERROR_INVALID_DATA <iAttribute> is not a valid value. 2115bd8deadSopenharmony_ci 2125bd8deadSopenharmony_ciNew State 2135bd8deadSopenharmony_ci 2145bd8deadSopenharmony_ci None 2155bd8deadSopenharmony_ci 2165bd8deadSopenharmony_ciNew Implementation Dependent State 2175bd8deadSopenharmony_ci 2185bd8deadSopenharmony_ci None 2195bd8deadSopenharmony_ci 2205bd8deadSopenharmony_ciRevision History 2215bd8deadSopenharmony_ci 2225bd8deadSopenharmony_ci 12/03/1999 0.1 First draft. 2235bd8deadSopenharmony_ci 01/05/2000 0.2 Enumerants assigned 2245bd8deadSopenharmony_ci 04/17/2000 1.0 Driver released to ISVs. 225