如何在C#中播放AVI短片並使背景透明

來源:互聯網
上載者:User

在C#編程的時候,由於一個功能需要播放一小段的AVI格式的短片,結果找了半天也沒有搞定如何來進行播放。於是本人在網上查呀查呀!找了半天終於找到了一個方法播放檔案。

他的方式是首先用下面的命令為媒體播放器控制項:msdxm.ocx 產生 MediaPlayer.dll 和 AxMediaPlayer.dll。命令為:aximp c:\winnt\system32\msdxm.ocx 而通常msdxm.ocx中的ActiveX控制項都未註冊! 再運行regsvr32 msdxm.ocx手動註冊便產生需要的動態串連庫檔案。

但是我發現他所用的MediaPlayer控制項是可以播放許多的媒體檔案.但是並不能滿足我所需要的情況。我的情況是用C#播放一小段AVI檔案,並且背景要透明,而不是黑色,或其他顏色,我找了半天也不能找到什麼方法可以使MediaPlayer播放的檔案為透明的狀態,十分鬱悶!

但是隨後我發現其他用VB的程式中可以實現這個功能,讓我十分的高興,於是我又開啟了VB的代碼進行了詳細的查看,發現在VB中有一個控制項為Animation可以播放AVI檔案,而且其有一個屬性選項是使背景透明。正好能夠滿足我的需要.可是這也是一個OCX的控制項,於是,我先把該控制項找到,位置是:C:\WINDOWS\SYSTEM32\COMCT32.ocx,然後我運行regsvr32進行手動註冊,註冊完畢以後我就在環境中進行引用,如:

(但是,後來本人發現原來這個根本不用regsvr32註冊,因為.NET早已經註冊了,鬱悶中~~~~~~~~~~~~~~)

然後把控制項拖入到表單中,布好了局,將其屬性AutoPlay設定為true,然後在代碼中寫入下邊一句話即可:

private void Form1_Load(object sender, System.EventArgs e)

{

this.axAnimation1.Open(Application.StartupPath + @"\FILECOPY.AVI");

}

這樣當表單載入的時候就會自動的播放這一小段AVI檔案了.

其實,這個問題並不是很難,主要是本人對COM組件並不是特別熟悉的過.只要熟悉這些組件的功能,以及啟動並執行原理,勢必會大大的提高我們的編程的效率。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.