我有一个 OpenGL 应用程序,它通过 HDMI 将立体 3D 视频输出到现成的电视,但它目前需要显示器支持手动选择正确格式的 pre-1.4a 方法(并排,上下ETC)。但是,现在我有一个我需要支持的设备,它只支持 HDMI 1.4a 3D 信号,据我所知,它是某种发送到显示器的数据包,告诉它 3D 视频的格式。我正在使用NVIDIA Quadro 4000,我想知道是否可以以标准 3DTV 看到正确格式的方式输出我的视频(或告诉视频卡如何),类似于 3D 蓝光或其他 1.4a - 兼容设备,无需手动选择某种 3D 模式。这可能吗?
问问题
6696 次
3 回答
3
我没有看到这个问题的直接答案。
HDMI 1.4a 定义了描述 3D 格式的元数据。video_format 010 表示 3D 3d_structure 0000 帧打包,0110 上下,1000 并排
但是,如果驱动程序没有相应的 api,则需要更改其代码(假设它已打开或您有权访问)
于 2012-06-24T05:30:17.680 回答
1
如果您的驱动程序允许,您可以创建一个四缓冲区立体渲染上下文。此上下文有两个后缓冲区和两个前缓冲区,一对用于左眼,一对用于右眼。您渲染到一个后台缓冲区 (GL_BACK_LEFT),然后是另一个 (GL_BACK_RIGHT),然后使用标准交换函数交换它们。
创建 QBS 上下文需要特定于平台的编码。如果您使用的是 Windows,则需要选择带有四缓冲区的像素格式。
这只有在您的驱动程序允许的情况下才有可能。他们可能不会。如果他们不这样做,您将无能为力。
于 2011-08-11T21:35:16.080 回答