XBMC源代码分析 1:整体结构以及编译方法

原创 2013年12月31日 00:17:37

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源代码进行一个整体分析:

源代码的目录结构如下图所示。我把其中比较主要的文件夹下面标记了一条红线。


这几个主要文件夹的作用如下(其他文件夹就不再细说了):

addons:附加元件。比如说XBMC的皮肤文件,屏幕保护文件,可视化效果文件等等。

docs:文档。

language:语言文件。

project:项目工程文件。

xbmc:源代码

lib:调用的各个库。比如说libavcodec。


XBMC项目解决方案的目录如下图所示。可以看出项目工程数量是极其巨大的。

其中名字为“XBMC”的工程是主程序。

ImageLib_XXX是图片处理的工程。

libXBMC_XXX是完成XBMC各种功能的工程。

visXXX是各种可视化效果的工程。



我们来看一下“XBMC”工程的目录。该工程下源文件的数量也是十分庞大的。不同功能的类被放到了不同的文件夹中,显得还是比较井然有续的:

其中“core”文件夹中存放核心的类

“addon”文件夹中存放和addon相关的类

“music”文件夹中存放和音乐功能相关的类

“video”文件夹中存放和影视功能相关的类

“settings”文件夹中存放和设置功能相关的类

此处不一一例举




版权声明:本文为博主原创文章,未经博主允许不得转载。

Kodi 开源源码定制化开发(原XBMC)

Kodi 是一个开源的媒体播放中心。可以定制化皮肤,定制化第三方插件、播放器在Kodi里面。当然,Kodi也内置切支持了很多的优质的播放插件在软件里面。   Kodi 有各个不同的系统及版本。支持MA...
  • capeng
  • capeng
  • 2016年05月24日 16:51
  • 4186

kodi 开源播放器的编译移植

参考官方网站:https://github.com/xbmc/xbmc/blob/master/docs/README.android  1. 编译主机系统 Ubuntu (12.04) 64Bit ...

KODI16.1编译:

一、工具准备       1、Ubuntu 12.04.04 LTS版本,可以去release.ubuntu.com直接下载desktop 64位版本       2、下载Android SDK24....
  • BENKG
  • BENKG
  • 2016年08月29日 20:22
  • 1669

android xbmc编译

1、安装jdk6 sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install or...
  • zangcf
  • zangcf
  • 2014年01月09日 20:33
  • 3231

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

XBMC源代码分析 3:核心部分(core)-综述

前文分析了XBMC的整体结构以及皮肤部分: XBMC源代码分析 1:整体结构以及编译方法 XBMC 源代码分析 2:Addons(皮肤Skin) 本文以及以后的文章主要分析XBMC的VC工程中的源代码...

XBMC皮肤开发入门篇

XBMC皮肤开发入门篇 XBMC皮肤开发入门篇 XBMC具有非常灵活和强大的图形用户界面系统,使得制作主题皮肤和个人定制都十分便利。用户可以创建自己的个性化皮肤(或修改现有的皮肤)并与他人...
  • zangcf
  • zangcf
  • 2014年01月23日 21:59
  • 2881

媒体中心软件 XBMC

苦于linux下看影音困难 看到大家用的都是xbmc就试试看 我的电脑ubuntu12.04 这个软件用起来大概分这几步 1,安装 2,启动软件并设置语言 3,下载节目插件放在插件文件夹...

xbmc 从android_main启动时的部分步骤记录

xbmc/android/Android_main.cpp */ extern void android_main(struct android_app* state) { { app_d...
  • fofu33
  • fofu33
  • 2015年06月01日 09:05
  • 554
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:XBMC源代码分析 1:整体结构以及编译方法
举报原因:
原因补充:

(最多只允许输入30个字)