前几天参加tech-ed大会,其实更多的是认识了一些志同道合的朋友,ms的课程往往是蜻蜓点水,因此听起课来也没有什么意思。不过,有幸认识了园子里面的一些朋友,深感欣慰。技术人员真的非常容易接触,我们能很快的切入主题,然后进行探讨。这也许正是技术人员单纯的一面吧。这两天,又换了新单位,感觉换来换去,实在没有意思。记得刚开始工作的时候,老板对我说不要换来换去的,当时我还和别人说这个,没想到自己却沦落到这一步。一直想寻找一个好的团队,好的东家,但一直没有如愿。不知道现下的会如何,但目前看来并不乐观,我期望中的团队是一个互助,团结,激情,灵活,互相尊重,互为补充的团队,可能很抽象,但我所有的憧憬都源自于敏捷软件开发,我不太愿意看到团队僵硬,传统,死沉。也不太喜欢个人主义的团队,“软件开发是人与人的游戏”,没错,我所想要的就是这样一个以人为本的团队,要求并不高,但很难实现。最少现在迷茫中。。。
不废话了,我们经常为图片生成缩略图,在windows中视频在察看缩略图的时候也显示出图片来,如果作一个视频系统,那么用户上传上来的视频,如何为其生成缩略图呢?要想操作视频文件,通常所用的方法就是DirectX里面的DriectShow,用它就可以实现抓屏,抓图,抓视频的功能,想到这,又惊奇于ms演示的vista下的app那绚的3d效果.
要想在.net中使用DirectShow,所做的第一件事情是需要一个程序集,这个程序集可以帮你完成.net对directshow的调用,而且您不需要用com,省却注册过程,这个assembly的名字为:Interop.DexterLib.dll, 它象其他dll,只需添加引用即可。
利用这个dll,封装了一个类,利用这个类您就可以方便的生成video的缩略图了,而且适用于winform,也适用于 asp.net,酷吧!
源码在这,用兴趣的,下过去看看吧
link/Files/jillzhang/extractframe_source.rar
参考文章:
http://www.yafla.com/dennisforbes/Extracting-Video-Frames-with-NET/Extracting-Video-Frames-with-NET.html
http://www.cnblogs.com/jillzhang/archive/2006/09/26/515680.html