
Data Transfer
Quadro SDI Output PG-03776-001_v06 | 26
Code Listing 22: Sending Two Video Fill Channels
glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, fbo1Id);
drawPattern1();
glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, fbo2Id);
drawPattern2();
glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
glPresentFrameDualFillNV(1, 0, 0, 0, GL_FRAME_NV,
GL_RENDERBUFFER_EXT, renderbuffer1Id,
GL_NONE, 0,
GL_RENDERBUFFER_EXT, renderbuffer2Id,
GL_NONE,0);
5.6 SENDING PBUFFER DATA
On Windows, an application sends graphics data to the video device by rendering
frames or fields into a pbuffer and then calling
wglSendPbufferToVideoNV() to
indicate that OpenGL rendering is complete and that the pbuffer is ready to be scanned
out by the video device. The call to this function should typically be placed at the end of
the application draw loop.
BOOL wglSendPbufferToVideoNV (HPBUFFERARB hPbuffer,
int iBufferType,
unsigned long *pulCounterPbuffer,
BOOL bBlock);
The parameter hPbuffer is the handle of the pbuffer. Both frames and fields can be sent
to the video device as indicated by the value of
iBufferType and the relative size of the
pbuffer as outlined in Table 5-1 and Table 5-2.
Table 5-1. Pbuffer Size = Field
iBufferType Pbuffer Size = Field
WGL_VIDEO_OUT_FIELD_1 Field 0
WGL_VIDEO_OUT_FIELD_2 Field 1
WGL_VIDEO_OUT_FRAME Half height frame
WGL_VIDEO_OUT_STACKED_FIELDS_1_2 Half height frame
WGL_VIDEO_OUT_STACKED_FIELDS_2_1 Half height frame
Comentários a estes Manuais