Exemplo n.º 1
0
void TApplication::paintEvent(QPaintEvent*) {
    RenderToFBO();
    Q_ASSERT(Fbo && "FBO not initialized");
    QPainter p(this);
    QImage img = Fbo->toImage();
    p.drawImage(0, 0, img);
}
Exemplo n.º 2
0
bool CRendererVDPAU::RenderHook(int idx)
{
  UpdateVideoFilter();

  if (m_format == RENDER_FMT_VDPAU_420)
  {
    switch(m_renderQuality)
    {
    case RQ_LOW:
    case RQ_SINGLEPASS:
      if (m_currentField == FIELD_FULL)
        RenderProgressiveWeave(idx, m_currentField);
      else
        RenderSinglePass(idx, m_currentField);
      VerifyGLState();
      break;

    case RQ_MULTIPASS:
      if (m_currentField == FIELD_FULL)
        RenderProgressiveWeave(idx, m_currentField);
      else
      {
        RenderToFBO(idx, m_currentField);
        RenderFromFBO();
      }
      VerifyGLState();
      break;
    }
  }
  else
  {
    RenderRGB(idx, m_currentField);
  }

  YUVBUFFER &buf = m_buffers[idx];
  if (buf.hwDec)
  {
    ((VDPAU::CVdpauRenderPicture*)buf.hwDec)->Sync();
  }
  return true;
}