游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4857|回复: 12

如何用DirectX9.0 播放视频呢

[复制链接]

3

主题

38

帖子

38

积分

注册会员

Rank: 2

积分
38
发表于 2007-9-6 02:52:00 | 显示全部楼层 |阅读模式
我的意思是说比如在3D空间中有一个平面
然后用这个平面播放视频
如何实现这个功能呢?
谢谢谢谢

29

主题

405

帖子

405

积分

中级会员

Rank: 3Rank: 3

积分
405
发表于 2007-9-6 03:41:00 | 显示全部楼层

Re:如何用DirectX9.0 播放视频呢

以前用DShow可以实现
现在的dx版本,我就不知道了,已经用不了DShow了,估计要用windows Media player了.
我前段时间也想过这个,不过我还不会用Windows Media player.

3

主题

38

帖子

38

积分

注册会员

Rank: 2

积分
38
 楼主| 发表于 2007-9-6 07:23:00 | 显示全部楼层

Re:如何用DirectX9.0 播放视频呢

我知道可以用DirectShow播放,不过我是想实现在一个3D物体上播放,
而不是普通播放
我现在能想到的办法是用某些函数把每一桢截下来,然后当作贴图更新在几何体上
不知道有什么更直接的方法么?
另外DirectShow有相关的函数可以直接在几何体上播放么?

3

主题

38

帖子

38

积分

注册会员

Rank: 2

积分
38
 楼主| 发表于 2007-9-6 07:24:00 | 显示全部楼层

Re:如何用DirectX9.0 播放视频呢

Direct9.0不支持DirectShow么?

2

主题

12

帖子

12

积分

新手上路

Rank: 1

积分
12
发表于 2007-9-6 09:27:00 | 显示全部楼层

Re:如何用DirectX9.0 播放视频呢

???不是??
C:\DXSDK\Samples\C++\DirectShow\Players\PlayWnd

3

主题

38

帖子

38

积分

注册会员

Rank: 2

积分
38
 楼主| 发表于 2007-9-6 09:33:00 | 显示全部楼层

Re:如何用DirectX9.0 播放视频呢

我的机器里没有DirectShow这个目录
不知道是不是因为9.0的原因
另外我猜想这个应该也是在普通窗口下播放的例子吧

11

主题

190

帖子

255

积分

中级会员

Rank: 3Rank: 3

积分
255
发表于 2007-9-6 16:08:00 | 显示全部楼层

Re:如何用DirectX9.0 播放视频呢

1. 使用SDK里的AVIFile系列函数读取avi文件,从中分解出视频流和音频流
2. 根据视频流的压缩格式找特定的的解码库,比如xvid,把视频流解压成RGB流
3. 在内存中创建一张纹理,每帧渲染前把解压后的图像blit到纹理上,然后再渲染该纹理
4. 如果还想播放声音的话需要把音频流解压缩,不过也要考虑音频流的压缩格式,比如mp3或者AC3,调用相应的解压库解压缩,然后送入dxsound的播放设备中
5. 视频播放时需要自己考虑速度控制,音画同步等问题,比较麻烦哦。

89

主题

4036

帖子

4132

积分

论坛元老

Rank: 8Rank: 8

积分
4132
发表于 2007-9-6 16:49:00 | 显示全部楼层

Re:如何用DirectX9.0 播放视频呢

DSHOW移到windows sdk里了....用它就可以了.

3

主题

38

帖子

38

积分

注册会员

Rank: 2

积分
38
 楼主| 发表于 2007-9-7 07:43:00 | 显示全部楼层

Re:如何用DirectX9.0 播放视频呢

能不能不用DirectShow呢
据说DirectShow问题多多而且超级复杂啊
7楼说的AviFile系列的读取函数指的是什么库呢

8

主题

91

帖子

93

积分

注册会员

Rank: 2

积分
93
发表于 2007-9-7 09:54:00 | 显示全部楼层

Re:如何用DirectX9.0 播放视频呢

thejinchao正解,基本步骤就是读取后分离视频和音频,然后分别处理,至于如何读取,可以用dshow或其它,如何处理,可以用dx显示视频,ds播放声音,也可以用其它的。思路和过程就是如此,具体方法可以多种多样。没有统一的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-21 22:04

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表