XBMC(全稱是XBOX Media Center)是一個開源的媒體中心軟體。XBMC最初為Xbox而開發,可以運行在Linux、OSX、Windows、Android4.0系統。我自己下載了一個然後體驗了一下,感覺確實不錯,和Windows內建的媒體中心差不多。
XBMC項目首頁:http://xbmc.org/
XBMC差不多是我接觸到的開源多媒體項目中體積最大的了。但是它的編譯方法卻出乎意料的簡單。我按照它的Wiki上面說的步驟去做,非常順利的完成了編譯,沒有遇到任何錯誤,贊一個。
下面簡述一下它的編譯方法。
前提條件:
1.Visual C++ 2010
2.Microsoft DirectX SDK (August 2009 或更晚的版本)
3.Git
4.JRE
編譯:
注意:需要下載很多東西,所以需要連網
1.使用Git下載原始碼。Git地址:git://github.com/xbmc/xbmc.git
2.運行DownloadBuildDeps.bat (所在目錄 project\BuildDependencies):下載編譯項目所需要的依賴項
3.運行DownloadMingwBuildEnv.bat (所在目錄 project\BuildDependencies) :下載編譯ffmpeg庫所需要的依賴項
4.運行buildmingwlibs.bat (所在目錄 project\Win32BuildSetup): 編譯ffmpeg庫
5.以下二選一。一般情況下選第二個就可以了。
(1)BuildSetup.bat (所在目錄 project\Win32BuildSetup):只有需要直接編譯一個打包檔案的時候,才推薦使用該批處理。
(2)extract_git_rev.bat : 如果是為了調試,並且使用 VC++ 2010 進行編譯,推薦使用該批處理。
6.開啟project\VS2010Express\XBMC for Windows.sln,就可以編譯了。
下面對XBMC原始碼進行一個整體分析:
原始碼的目錄結構如所示。我把其中比較主要的檔案夾下面標記了一條紅線。
這幾個主要檔案夾的作用如下(其他檔案夾就不再細說了):
XBMC項目解決方案的目錄如所示。可以看出項目工程數量是極其巨大的。
其中名字為“XBMC”的工程是主程式。
ImageLib_XXX是圖片處理的工程。
libXBMC_XXX是完成XBMC各種功能的工程。
visXXX是各種視覺效果的工程。
我們來看一下“XBMC”工程的目錄。該工程下源檔案的數量也是十分龐大的。不同功能的類被放到了不同的檔案夾中,顯得還是比較井然有續的:
其中“core”檔案夾中存放核心的類
“addon”檔案夾中存放和addon相關的類
“music”檔案夾中存放和音樂功能相關的類
“video”檔案夾中存放和影視功能相關的類
“settings”檔案夾中存放和設定功能相關的類
此處不一一例舉