使用OpenGL / CL进行数据处理和视频生成

时间:2014-12-04 11:17:59

标签: opengl opencl gpu

目标:补偿并可视化14位数据流(2D视频)。

现有解决方案:每个样本都需要补偿增益和偏移量,因此需要一次乘法和一次加法。然后我通过查找表为样本分配颜色并输出"颜色"直接到显示器。一切都在CPU上完成。

要求:我需要能够动态设置查找表(调色板)。

使用GPU进行此类操作似乎很明显,但我无法找到有关如何使用OpenGL从数据域移动到图片域的任何信息。我已经考虑过使用OpenCL进行数据补偿和图像生成,然后转移到OpenGL进行显示(或者一般来说:用于操作图片)。

你能为我推荐一个好方法吗?只需使用OpenGL,这一切都能有效实现吗?怎么样?

1 个答案:

答案 0 :(得分:1)

是的,只能使用OpenGL完成。

我建议使用以下工作流程:

对于每一帧:

  1. 将帧从流上传到纹理内存
  2. 绘制全屏四边形,纹理坐标为0,0到1,1
  3. 在片段着色器中为每个像素应用适当的变换。查找表也可以存储在纹理中,因此您只需要在适当的位置执行查找。
  4. 总的来说:这个问题目前有点过于宽泛,无法更详细地回答。例如,一个14位数据流可能是很多东西。我假设这个答案你的意思是(2D)视频流。