平民程序 - linghuye's blog

天下风云出我辈,一入江湖岁月催。皇图霸业谈笑中,不胜人生一场醉。提剑跨骑挥鬼雨,白骨如山鸟惊飞。尘事如潮人如水,只笑江湖几人回。

随笔 - 221, 文章 - 0, 评论 - 680, 引用 - 0
数据加载中……

Opengl中播放Divx格式的AVI

1.基本思路: 解码取得Divx avi影像的每一帧图像数据,加载到纹理或Pixel Buffer上,而后作为纹理单元渲染出来.
2.Divx解码格式是开源的,拥有大量基于linux下的各播放器所携带的程序库,最优秀的是FFmpeg开源项目携带的libavcodec.
3.魔兽世界使用DivxDecoder.dll播放divx片头动画,估计也是使用libavcodec..
4.该死的垃圾sscanf函数,永远不要用这个函数.

1.从http://www.mingw.org/的download页面,选择current大类里的Mingw,MSYS的exe安装版本,下载.
2.先安装Mingw,在安装过程中它还会下载大约50M的程序包到安装程序所在的目录,一并安装,接着安装MSYS,安装后它会询问Mingw的安装位置,不用理他,直接修改\etc\fstab.sample文件里的c:\mingw为实际的安装目录.
3.Mingw是开发程序包,MSYS是模拟linux下的运行编译环境.
3.从http://ffmpeg.sourceforge.net/index.php下载FFmpeg的源代码包,推荐CVS,解压到MSYS的\home\your username\下.
4.启动msys.bat,进入后起始位置在\home\youruser name,使用cd命令进入ffmpeg目录,键入下列指令:
  ./configure --enable-shared --enable-memalign-hack
  make
5.编译后FFmpeg生成整个工程的执行文件,取其中的avcodec.dll,avcodec.lib,avformat.dll,avformat.lib,加上源代码中的.h,就是一个SDK了.

其时很讨厌linux项目的结构,繁琐,

使用opengl播放示例代码
http://www.cnitblog.com/Files/linghuye/TestAVIEx.rar

References: http://ffmpeg.sourceforge.net/index.php
http://www.inb.uni-luebeck.de/~boehme/using_libavcodec.html
http://comments.gmane.org/gmane.comp.video.ffmpeg.devel/24601

posted on 2005-09-11 10:03 linghuye 阅读(1476) 评论(3)  编辑 收藏 引用 所属分类: 3D图形学研究

评论

# re: Opengl中播放Divx格式的AVI  回复  更多评论   

你的例子下载不了啊!?
2006-01-12 11:58 | 路人甲

# re: Opengl中播放Divx格式的AVI  回复  更多评论   

File link fixed.
2006-01-13 19:53 | 平民程序

# RealtimeRender.dll  回复  更多评论   

压缩包缺少RealtimeRender.dll,编译后无法启动
2006-08-15 12:08 | 路过
只有注册用户登录后才能发表评论。