天天看點

基于VLC的播放器開發

vlc的c++封裝  

  vlc是在linux下用c語言開發的,如果想用其接口,可以将c的接口用c++封裝一下,這樣使用友善的很多,在codeproject上搜到一個c++的封裝,在他的基礎上加了點函數,使用了最新的vlc版本(2.1.0),用mfc做成了如下的樣子:

基于VLC的播放器開發

  主要實作功能:

  1、打開:加載音視訊檔案(同時開始播放)。

  2、播放/暫停:播放暫停檔案播放。

  3、停止:停止播放。

  4、快進:快進5秒。

  5、快退:後退5秒。

  6、音量:音量調節(0--100)。

  7、播放進度控制:使用進度條控制。

  主要問題:運作時需要依賴的vlc的plugins目錄裡的dll(66m大小)太多,有一些dll是用不到的,如果封裝成activex給web下調用,打包的cab的會比較大,需要裁剪。。。

  主要參考文章:

vlc的c#封裝

  如果播放器用戶端使用的是.net開發的,如何使用vlc?可以有以下幾種方法:

  1、activex控件:可以将上述mfc的播放器封裝成activex控件提供給c#調用。鑒于業餘時間有限,現在這部分工作還沒做。

  2、使用.net的pinvoke技術将vlc的c接口封裝成c#接口,這方面網上的文章也很多,具體可參考以下文章:

  libvlc media player in c# (part 1)

<a href="http://www.helyar.net/2009/libvlc-media-player-in-c/">http://www.helyar.net/2009/libvlc-media-player-in-c/</a>

  libvlc media player in c# (part 2)

<a href="http://www.helyar.net/2009/libvlc-media-player-in-c-part-2/">http://www.helyar.net/2009/libvlc-media-player-in-c-part-2/</a>

  videolan dotnet for winform, wpf &amp; silverlight 5

<a href="https://vlcdotnet.codeplex.com/">https://vlcdotnet.codeplex.com/</a>

  nvlc

<a href="http://www.codeproject.com/articles/109639/nvlc">http://www.codeproject.com/articles/109639/nvlc</a>

  c#萬能視訊播放器

<a href="http://www.cnblogs.com/haibindev/archive/2011/12/21/2296173.html">http://www.cnblogs.com/haibindev/archive/2011/12/21/2296173.html</a>

  這裡還有一個android下的vlc播放器開發:

源碼下載下傳

本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接,否則保留追究法律責任的權利。

http://www.cnblogs.com/luxiaoxun/p/3462153.html