int get_texture(cv::ogl::Texture2D& texture) { if (!m_cap.read(m_frame_bgr)) return -1; cv::cvtColor(m_frame_bgr, m_frame_rgba, CV_RGB2RGBA); texture.copyFrom(m_frame_rgba); return 0; }
int get_frame(cv::ogl::Texture2D& texture, cv::ogl::Buffer& buffer, bool do_buffer) { if (!m_cap.read(m_frame_bgr)) return -1; cv::cvtColor(m_frame_bgr, m_frame_rgba, COLOR_RGB2RGBA); if (do_buffer) buffer.copyFrom(m_frame_rgba, cv::ogl::Buffer::PIXEL_UNPACK_BUFFER, true); else texture.copyFrom(m_frame_rgba, true); return 0; }