文件名称:videotexture
介绍说明--下载内容均来自于网络,请自行研究使用
视频纹理的演示首先我在这里说明一点事情:那就是OpenGL是可以和DShow协同工作的。我在这个程序里的主要做法就是把 DShow 渲染出来的画面作为一个纹理数据给贴到OpenGL的图元上去。关于如何使用DShow播放视频不是我们要关心的问题。而且我也不懂 DShow。我在DX的 SDK里找到一个例子该例子实现了这样的一个Filter。它能把从DShow播放出来的画面渲染成一个数组。我把这段代码给摘出来了。然后包装了一下。做成了一个dll。该dll能支持视频纹理的播放。而在我给出的代码里则是把把它景泰连接进去了。所以你必须要有DXSDK,而且编译DShow的 BaseClass(在DXSDK的Sample里)。
技术上基本没有什么好说的。唯一一个需要注意的是。每次你更新纹理的时候,一定要用glTexSubImage函数,因为视频的尺寸是无法满足GL纹理的要求的。你必须创建一个大的文理。比如说是1024X512的纹理。然后替换一部分纹理数据。不要用glScaleImage,不然我保证慢死你:)
下面给出我的代码 这里是可执行文件。注意可执行文件用到了动态库。而代码包里的版本是不需要动态库的。-err
技术上基本没有什么好说的。唯一一个需要注意的是。每次你更新纹理的时候,一定要用glTexSubImage函数,因为视频的尺寸是无法满足GL纹理的要求的。你必须创建一个大的文理。比如说是1024X512的纹理。然后替换一部分纹理数据。不要用glScaleImage,不然我保证慢死你:)
下面给出我的代码 这里是可执行文件。注意可执行文件用到了动态库。而代码包里的版本是不需要动态库的。-err
(系统自动生成,下载前可以参看下载内容)
下载文件列表
projectv.htm
pvideo.rar
videoplayer.rar
pvideo.rar
videoplayer.rar