Aaron Liu的部落格,紀錄我的生活點點滴滴

尋找.Net影片播放方法的心路歷程

| 2008年12月29日 星期一
我是個C#的慣用者,最近在寫XDHome的過程中,發現用C#播放影片是件挺麻煩的事情。

首先,.Net雖然都出到3.5了,但是VB6就有的Multi Media Control卻從.Net 1.x就不見到現在,不知道微軟什麼時候才會把這個控制項找回來。至於Windows Media Play的嵌入式控制項,雖然還滿方便的,但我個人就是不喜歡WMP才要自己寫,所以就免了吧!

其次,微軟在DirectX 9時代有出過Managed DirectX,在該版本的Microsoft.DirectX.AudioVideoPlayback下面有個Vedio物件,這個東西可以說是有史以來我用過最好用的Vedio播放元件,不但介面簡單,而且看有str外掛字幕檔的影片時,還會自動叫vobsub,實在太讚了!不過很可惜,微軟的Manage DirectX只此一版,而且是.Net 1.1作的,用Visual Studio 2005或2008開發時,會有Loader Lock Exception,雖然可以用一些技巧去避免,但是在部署時一定會比較麻煩。至於Managed DirectX後面衍生出來的XNA則是完完全全地把Vedio物件拿掉了,天知道微軟什麼時候會再放回去。

最後我動腦筋到SourceForge上面的「DirectShowNet Library」,這個專案很忠實地把DirectShow包裝成.Net 2.0的物件,因此操作起來就跟直接用DirectShow一樣麻煩,而且裡面夾雜了很多C++式的例外語法,讓C#整個變得有點怪。但是沒魚蝦也好,湊合著用吧,有空再來寫範例碼。

0 意見:

張貼留言