您的位置:首页 > 编程语言

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

2014-01-02 13:07 253 查看
前文分析了XBMC的整体结构以及皮肤部分:

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

XBMC源代码分析 2:Addons(皮肤Skin)

本文以及以后的文章主要分析XBMC的VC工程中的源代码。XBMC源代码体积庞大,想要完全分析所有代码是比较困难的。在这里我们选择它和音视频编解码有关的部分进行分析。在本文里,我们主要分析其核心部分(core)代码。

核心部分(core)源代码结构如图所示:



我目前理解的有以下3个,其他的有时间研究后再补上:


AudioEngine:音频引擎。其封装了所有不同的媒体类型的混音、采样率转换、格式转换、编码、上混、缩混等。

dvdplayer:视频播放器。其中封装了FFMPEG等一些库,是我们分析的重点。

paplayer:XBMC自行开发出来的音频播放器。


本系列文章将会重点分析dvdplayer这个播放器。

下面我们先来看看dvdplayer的代码结构:



先不说一大堆cpp文件。dvdplayer包含以下5个文件夹,我们分析以下3个文件夹中的内容


DVDCodecs:封装各种解码器

DVDDemuxers:封装各种解复用器

DVDHeaders:封装各种Dll的头文件



DVDCodecs里面包含各种解码器的封装,下图列出了封装视频解码器的文件。



DVDDemuxers里面包含了各种解复用器(视音频分离器)的封装,如下图所示。



DVDHeaders里面包含了封装各种Dll的头文件,如下图所示。



详细的分析会在后续文章中完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: