A
arcore
Unregistered / Unconfirmed
GUEST, unregistred user!
为了大家都能清楚明了的表达自己的观点及编程思想,我先把我的应用程序中有关
视频开发部分的功能需求说一说吧。
简单的说,应用程序中的视频部分的功能需求主要是“视频采集”- “压缩存储”
(分为单帧图像的存储和视频流的存储) - “解压回放”(是指对视频数据流而言,在回
放过程中要保存单帧图像)这三个小块。
小弟目前的进度:我的开发环境为Win98 + Delphi5 + MS SQL Server 7。电脑上面
装有一块视频采集卡。此卡在VFW下支持的分辨率有192 X 144、384 X 288 及 768 X 576
三种。由于小弟是在Win98下面做开发,所以就用VFW模式。用VFW模式实现时,在三种分
辨率下保存单帧图像都没有问题。保存视频流时,在192 X 144与384 X 288下基本不丢帧,
可以很流畅的实现,在768 X 576分辨率下采集时,丢帧很厉害,而且显示器上的采集窗
口不能同步显示视频。举例说,我用一台VCD作为视频输入,在768 X 576分辨率下,视频
采集窗口上的图像静止不动。
基于上述现像,不难看出我现在的问题:怎样在768 X 576分辨率下实现流畅的视频流
采集?如果我要实现在全屏模式下(即分辨率达到显示器的当前分辨率)采集,能否办到?
由于VFW有其局限性,所以,我打算采用DShow现实。由于以前没有接触过DX开发,只
好自己看相关资料,逐步探索。当然,做DX开发,用VC++做OCX是较好的选择,但小弟以
前从未接触过VC++,如果现在去啃,老BOSS不会给我充余的时间的。所以,我打算仍然用
Delphi来做。这段时间,小弟在网上查了些资料,也找到了Delphi下的DShow接口单元,
并对DShow有了一定的了解,但所知有限。在所有的DSow资料中,小弟觉得
在http://www.progdigy.com/里面下的DSPack2.3相比而言要好一些,因为在DSPack2.3里
面提供了很多对象,这些对象很好的封装了DShow里面的接口对象,易于开发,并且还有
源码。感兴趣的朋友可以到http://www.progdigy.com/上去下载。
现在,我想让大家讨论的是:当采集卡以768 X 576分辨率下工作时,用DShow实现
768 X 576分辨率和全屏模式下(即分辨率达到显示器的当前分辨率)下视频流的采集、压
缩存储以及解压回放等技术。当然,Win2000的驱动模式为WDM,如果采用DShow,是否必
须到Win2000下开发?如果不,在VFW与WDM二者之间要注意哪些问题?
问题可能有点难度(至少对于小弟是如此),所以,占用大家一些宝贵的时间,请大
家认真的把我上述的问题看清楚,并给出观点看法,小弟感激不尽。鉴于职业道德,小弟
也不想被老BOSS骂,因此请大家不要问我在做什么项目,也不要问我采集卡是什么牌子,
这其中为难之处,请大家谅解!当然,我也不想让大家给出源代码什么的,我只是想大家
都来讨论一下DShow技术,以及它在Delphi下的实现,这对大家都有好处吧。
小弟QQ:26965829,欢迎加入在线交流。
视频开发部分的功能需求说一说吧。
简单的说,应用程序中的视频部分的功能需求主要是“视频采集”- “压缩存储”
(分为单帧图像的存储和视频流的存储) - “解压回放”(是指对视频数据流而言,在回
放过程中要保存单帧图像)这三个小块。
小弟目前的进度:我的开发环境为Win98 + Delphi5 + MS SQL Server 7。电脑上面
装有一块视频采集卡。此卡在VFW下支持的分辨率有192 X 144、384 X 288 及 768 X 576
三种。由于小弟是在Win98下面做开发,所以就用VFW模式。用VFW模式实现时,在三种分
辨率下保存单帧图像都没有问题。保存视频流时,在192 X 144与384 X 288下基本不丢帧,
可以很流畅的实现,在768 X 576分辨率下采集时,丢帧很厉害,而且显示器上的采集窗
口不能同步显示视频。举例说,我用一台VCD作为视频输入,在768 X 576分辨率下,视频
采集窗口上的图像静止不动。
基于上述现像,不难看出我现在的问题:怎样在768 X 576分辨率下实现流畅的视频流
采集?如果我要实现在全屏模式下(即分辨率达到显示器的当前分辨率)采集,能否办到?
由于VFW有其局限性,所以,我打算采用DShow现实。由于以前没有接触过DX开发,只
好自己看相关资料,逐步探索。当然,做DX开发,用VC++做OCX是较好的选择,但小弟以
前从未接触过VC++,如果现在去啃,老BOSS不会给我充余的时间的。所以,我打算仍然用
Delphi来做。这段时间,小弟在网上查了些资料,也找到了Delphi下的DShow接口单元,
并对DShow有了一定的了解,但所知有限。在所有的DSow资料中,小弟觉得
在http://www.progdigy.com/里面下的DSPack2.3相比而言要好一些,因为在DSPack2.3里
面提供了很多对象,这些对象很好的封装了DShow里面的接口对象,易于开发,并且还有
源码。感兴趣的朋友可以到http://www.progdigy.com/上去下载。
现在,我想让大家讨论的是:当采集卡以768 X 576分辨率下工作时,用DShow实现
768 X 576分辨率和全屏模式下(即分辨率达到显示器的当前分辨率)下视频流的采集、压
缩存储以及解压回放等技术。当然,Win2000的驱动模式为WDM,如果采用DShow,是否必
须到Win2000下开发?如果不,在VFW与WDM二者之间要注意哪些问题?
问题可能有点难度(至少对于小弟是如此),所以,占用大家一些宝贵的时间,请大
家认真的把我上述的问题看清楚,并给出观点看法,小弟感激不尽。鉴于职业道德,小弟
也不想被老BOSS骂,因此请大家不要问我在做什么项目,也不要问我采集卡是什么牌子,
这其中为难之处,请大家谅解!当然,我也不想让大家给出源代码什么的,我只是想大家
都来讨论一下DShow技术,以及它在Delphi下的实现,这对大家都有好处吧。
小弟QQ:26965829,欢迎加入在线交流。