游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2970|回复: 9

请教3D物体上视频播放的实现~

[复制链接]

10

主题

56

帖子

56

积分

注册会员

Rank: 2

积分
56
发表于 2009-9-23 21:44:00 | 显示全部楼层 |阅读模式
如题,我想在3d物体的一个面上实现视频播放功能,请问用什么方法实现呢?

52

主题

155

帖子

160

积分

注册会员

Rank: 2

积分
160
发表于 2009-9-24 09:02:00 | 显示全部楼层

Re:请教3D物体上视频播放的实现~

directshow VMR9 有例子

4

主题

137

帖子

311

积分

中级会员

Rank: 3Rank: 3

积分
311
发表于 2009-9-25 14:58:00 | 显示全部楼层

Re:请教3D物体上视频播放的实现~

theora  + ogg
有例子 不过我实现的不好
我师父用的就很好

227

主题

1793

帖子

1866

积分

金牌会员

Rank: 6Rank: 6

积分
1866
发表于 2009-9-26 18:24:00 | 显示全部楼层

Re:请教3D物体上视频播放的实现~

opengl+ffmpeg

10

主题

56

帖子

56

积分

注册会员

Rank: 2

积分
56
 楼主| 发表于 2009-9-28 20:53:00 | 显示全部楼层

Re:请教3D物体上视频播放的实现~

感谢楼上各位!!
我在用DirectX做,基本思路借鉴了以前一位前辈的思路:利用AVIFile系列的函数分离视频、音频流,然后解出视频流中每一帧的图像,然后利用它创建一张纹理,贴到物体表面上...但现在有一个问题...用这种实时更新的方法,比如本来的视频是每秒24帧,但我没找到方法控制1秒内轮流贴24帧到物体表面...就是说时间控制上不知道如何解决...我是个新手,不知道是不是基本思路错了呢?望各位高手指点~~~

32

主题

235

帖子

235

积分

中级会员

Rank: 3Rank: 3

积分
235
发表于 2009-9-29 02:00:00 | 显示全部楼层

Re:请教3D物体上视频播放的实现~

间隔如果大于1000毫秒除以视频帧率画面就递增。

32

主题

235

帖子

235

积分

中级会员

Rank: 3Rank: 3

积分
235
发表于 2009-9-29 02:04:00 | 显示全部楼层

Re:请教3D物体上视频播放的实现~

或者当前播放时间除以1000毫秒除以视频帧率的商就是当前画面帧。

10

主题

56

帖子

56

积分

注册会员

Rank: 2

积分
56
 楼主| 发表于 2009-9-29 15:43:00 | 显示全部楼层

Re: Re:请教3D物体上视频播放的实现~

流川枫: Re:请教3D物体上视频播放的实现~

间隔如果大于1000毫秒除以视频帧率画面就递增。

那如何计时呢?我现在是用sdk里面的渲染方法,就是如果没有windows消息,就渲染,然后每次用timeGetTime()函数计算从上一祯到当前祯所经过的时间,但这样的话,很容易使间隔时间超过标准的视频祯时间间隔,造成视频播放延迟...不知道该怎么控制...应该用WM_TIMER处理时间吗?

10

主题

56

帖子

56

积分

注册会员

Rank: 2

积分
56
 楼主| 发表于 2009-9-29 15:48:00 | 显示全部楼层

Re:请教3D物体上视频播放的实现~

暑假刚学了学DIRECTX,开学后突然有了在3D物体上播放视频这个想法,但做到现在发现到处都是难题...甚至都开始怀疑这东西能不能实现了...唉...

10

主题

56

帖子

56

积分

注册会员

Rank: 2

积分
56
 楼主| 发表于 2009-9-30 19:40:00 | 显示全部楼层

Re:请教3D物体上视频播放的实现~

用WM_TIMER也不行...每次提取每帧图像的信息,再贴图渲染的时间大于视频本身每帧的时间间隔,视频还是有延后问题...哪位高手能指点一下?要用多线程吗?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-20 08:43

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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