惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
J
Java Code Geeks
博客园 - 聂微东
量子位
C
Check Point Blog
T
The Blog of Author Tim Ferriss
T
Tailwind CSS Blog
G
Google Developers Blog
Google DeepMind News
Google DeepMind News
B
Blog
罗磊的独立博客
腾讯CDC
GbyAI
GbyAI
博客园 - 【当耐特】
A
About on SuperTechFans
M
MIT News - Artificial intelligence
U
Unit 42
D
Docker
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Y
Y Combinator Blog
大猫的无限游戏
大猫的无限游戏
小众软件
小众软件
S
SegmentFault 最新的问题
有赞技术团队
有赞技术团队

博客园 - Jrong

SIM卡卡号(ICCID)的含义 堪比Kinect的视频追踪算法 [转]软件项目的核心风险 [转]Android Google Calendar 日曆同步舊資料 .NET开源代码 .NET CF如何使Form全螢幕不顯示上方工作列(TaskBar) ManagedOpenGLES iPhoneBrowser 制表板式 [转]隐藏窗口右上角按钮 [转]解决VS2008 开发Windows Mobile 项目生成速度慢的问题 [转]在安装IIS时如果老提示无法复制convlog.exe、iisadmin.mfl等文件 [转]反射 [转]语音合成与识别技术在C#中的应用 [转]Creating Managed Today Screen Items 开源代码搜索利器Koders [转]在.NET CF2.0中调用DirectShow来处理视音频数据 [转]控件的设置模式行为ControlDesigner VS2005里自定义控件设计时语法
DirectShow.NET笔记
Jrong · 2009-02-02 · via 博客园 - Jrong

使用 Windows Mobile 5.0 中的图片、视频和照相机

http://msdn.microsoft.com/zh-cn/library/aa454909.aspx#EEAA

v 2.0 - Upgrade with breaking changes (2007-07-15)

http://directshownet.sourceforge.net/

In this release, we added the new interfaces introduced into DirectShow in Vista. Obviously these interfaces will only work on Vista.

  • 432 Defined
  • 283 Tested

See interfaces.txt for the current list of tested interfaces.

Not all of the Vista interfaces can be tested, but we have tested the ones for which we have hardware. The others are included as untested.

We have added the System.Security.SuppressUnmanagedCodeSecurity attribute to the interfaces as well. This tends to improve performance in interfaces that are called frequently (ie many times a second). No code change should be required.

We have also corrected problems related 64 bit support. Primarily fixing "pack" problems on structures, but a few interfaces have been changed to support 64 bit. Primarily changing parameters from int to IntPtr. This will require code changes where you are using them, but the changes are relatively obvious, and are easily located with a re-compile.

  • IMediaEventSink
  • IMediaEvent
  • IDVDInfo2
  • IVideoWindow
  • IMediaEvent
  • IMediaEventEx

We have also changed all the IEnumXXX interfaces so that param 3 is an IntPtr rather than an "out int." This is consistent with Microsoft's implementations, and absolutely essential for cases where someone needs to *implement* the method, rather than just call it. The places we have made changes are easily located with a re-compile. If you are using any of these methods, here's what you'll need to change:

- If you are *not* using the value returned by the 3rd parameter, simply replace it with IntPtr.Zero.
- If you *are* using the value returned by the 3rd parameter, you'll need something like this:

    IntPtr p = Marshal.AllocCoTaskMem(4);
try
{
hr = em.Next(monikers.Length, monikers, p);
DsError.ThrowExceptionForHR(hr);
x = Marshal.ReadInt32(p);
}
finally
{
Marshal.FreeCoTaskMem(p);
}

We have also removed a few duplicate definitions. If you were using one of these and we deleted the one you were using, you'll need to use the other one. The compiler will complain about the missing definition in your next re-compile.

  • AtscFilterOptions & ATSCFilterOptions
  • DsmccFilterOptions & DSMCCFilterOptions
  • MpegPacketList & MPEGPacketList
  • MpegRequestType & MPEGRequestType
  • Mpeg2Filter & MPEG2Filter
  • MpegWinsock & MPEGWinsock
  • MpegBcsDemux & BCSDeMux
  • MpegContext & MPEGContext
  • MpegStreamBuffer & MPEGStreamBuffer

We have also dropped support for VS2003. Since VS2005 has been out for 2 years now (and is available for free!), it doesn't seem worth the effort to put time into keeping the vs2003 stuff active. We haven't (to our knowledge) done anything to the library that will prevent it from working with 2003, but since none of the dev team still has it installed, we haven't tried it. If you are still using vs2003, you can check the cvs tree at sourceforge for the old .csproj and .sln files.

And that's about it. Now that MS has stopped development on DirectShow, we may call this library done. Barring bug fixes, of course.