皓月云天

紧张中保持一份松弛

松弛中保持一份紧张

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2011年8月2日

摘要: 今自己编程做一个多媒体播放工具是一件很令人开心愉悦的事情,但如果使用MediaPlay控件开发则会受到很多限制,自己的很多好的创意想法都无法或者很难实现,如果利用微软的DirectX接口开发则可以充分的将作者的独特想法付诸于实现,何乐而不为呢!!不过关于DirectShow接口的开发说明文档实在是少之又少,仅有的一些不是英文的就是一些关于理论方面的,真正关于接口实战编程而且是用Delphi开发工具实现的更是凤毛麟角,使很多人都望而却步。在这里,我把我应用Directshow开发的心得以及我搜集到一些资料重新整理编辑出来公布,希望对所有由此兴趣的同仁有所帮助,就算达到了我的目的。废话少说,进入正 阅读全文

posted @ 2011-08-02 05:45 皓月云天 阅读(936) 评论(0) 推荐(0) 编辑

摘要: 第一部分:背景知识DirectShow是微软公司提供的一套在Windows平台上进行流媒体处理的开发包,与DirectX开发包一起发布。它经过DirectX 6.0中的DirectX Media发展而来,集成了DirectX家族中的其他成员(DirectDraw、DirectSound等),可以说是一位“集大成者”。DirectShow能做些什么? DirectShow为多媒体流的捕捉和回放提供了强有力的支持。运用DirectShow,可以很方便地从支持WDM驱动模型的采集卡上捕获数据,并且进行相应的后期处理乃至存储到文件中。它广泛地支持各种媒体格式,包括Asf、Mpeg、Avi、Dv、Mp3 阅读全文

posted @ 2011-08-02 05:44 皓月云天 阅读(4613) 评论(0) 推荐(0) 编辑

摘要: 一、 如何实现IUnknown Microsoft DirectShow基于组件对象模型(COM)。如果你编写自定义filter,你必须把它作为一个COM对象来实现。DirectShow基类提供一个实现此对象的框架。不过使用基类不是必须的,但它能简化开发进度。这篇文章描述一些COM对象的内部实现细节和它们在DirectShow基类的实现。本文假定你知道如何编程COM客户端程序—换句话说,你理解在IUnknown中的方法—但是假定先前没有任何开发COM对象的经验。DirectShow处理开发一个COM对象的许多细节。如果你有开发COM对象的经验,你应该阅读using CUnknown章节,它描述 阅读全文

posted @ 2011-08-02 05:39 皓月云天 阅读(1623) 评论(0) 推荐(0) 编辑

摘要: 本节描述如何编写一个transform filter,这种filter一般要有一个输入PIN和一个输出PIN。为了演示这些步骤,本节描述一个假定的transform filter,它输出run-length编码(RLE)视频。并不描述RLE-编码算法本身。(DirectShow已经通过avi compressor filter提供一个RLE codec。)本章假定你将使用DirectShow基类库来建立filter。虽然你可以写一个不用它的filter,但强烈推荐使用基库。注意 在写一个transform filter之前,认为是否一个DirectX Media Object(DMO)可以满足 阅读全文

posted @ 2011-08-02 05:36 皓月云天 阅读(1910) 评论(0) 推荐(0) 编辑

摘要: [install]1. Put the filtername.ax file in the windows/system32 directory2. Register the file from commandline: regsvr32 filtername.ax[uninstall]regsvr32 /u filtername.ax 阅读全文

posted @ 2011-08-02 05:34 皓月云天 阅读(705) 评论(0) 推荐(0) 编辑

摘要: http://hi.baidu.com/hanyuejun2006/blog/item/17459b2b3b8101fce6cd408e.html 阅读全文

posted @ 2011-08-02 05:32 皓月云天 阅读(341) 评论(0) 推荐(0) 编辑

摘要: DirectX 9.0 Complete Software Development Kit (SDK) :(2002-12-19) 点击下载DirectX 9.0 SDK Update - (Summer 2004) 点击下载DirectX 9.0 SDK Update - (August 2005) 点击下载DirectX 9.0 SDK Update - (February 2005) 点击下载DirectX 9.0C SDK 的第一个版本是DirectX SDK Summer 2004也是整合有DirectShow SDK 的最后一个版本,这之后面向DirectX 9.0C用C++开发应 阅读全文

posted @ 2011-08-02 05:31 皓月云天 阅读(1225) 评论(0) 推荐(0) 编辑

摘要: 转载自http://blog.csdn.net/pepper6681747/article/details/4075008本文描述了Directshow SDK ,Windows SDK,DirectX SDK ,VS200?之间的关系 VS2002中包含有Windows SDK 2002版(支持Windows XP及其以前的Windows 并包含有DirctX 8.1 SDK(包括DirectShow SDK)),这之后DirectX9 SDK不被包含在Windows SDK中. VS2003中包含有Windows SDK 2003版(支持Windows Server 2003及其以前的Wi 阅读全文

posted @ 2011-08-02 05:30 皓月云天 阅读(1222) 评论(0) 推荐(0) 编辑

摘要: 微软MSDNhttp://msdn.microsoft.com/en-us/library/dd375454(v=VS.85).aspx该网站提供有关的DirectShow(用于dshow)时,Windows Media(WM)和多媒体信息。在Microsoft Windows,用于dshow提供多媒体服务。这是一个Windows平台SDK的组件。以前,它的DirectX(DX)SDK的一部分。 Windows媒体有它自己的软件开发工具包(格式,编码器,播放器,数字版权管理),并使用一些用于dshow部件和结构。http://tmhare.mvps.org/DirectShow SPY;Dir 阅读全文

posted @ 2011-08-02 05:28 皓月云天 阅读(479) 评论(0) 推荐(0) 编辑

摘要: Win7下 directshow 窗口模式退出全屏后黑屏,使用的方法是put_FullScreenMode,据说是因为win7的桌面组合效果导致的。解决方法:改为无窗口或仿真全屏。HRESULT PlayVideo::PutFullScreen(HWND ghApp){ HRESULT hr=S_OK; if (!bFullscreen) { // Save current message drain pVidWin->get_MessageDrain((OAHWND)NULL); // Set message drain to application main window pVidW 阅读全文

posted @ 2011-08-02 04:51 皓月云天 阅读(2082) 评论(0) 推荐(0) 编辑